mirror of
https://git.sb/baoshuo/OI-codes.git
synced 2024-12-26 15:32:01 +00:00
4 lines
1.9 MiB (Stored with Git LFS)
4 lines
1.9 MiB (Stored with Git LFS)
100000
|
|
273933200 760413081 627574104 529984107 375350169 957808829 924750727 283121326 775005448 340477872 401609818 995393771 927414974 278736451 804946098 343302689 39672029 588778512 839250436 962615104 90723121 672006505 28770325 898753222 216216371 39602498 97430501 909613653 97977484 601225477 565883043 5574758 969790895 631767435 209196501 216003221 964225525 115850064 974055469 498167614 719212391 777753577 293648798 878493141 27179089 830084510 883385024 754487067 213541581 56723882 259793064 652399006 519455280 417650506 954126332 782517838 698306994 728790320 886026176 96152242 406715843 956592654 744184348 435188084 31034541 72578114 809399243 415617449 933114054 919478814 337924168 501527932 225871315 829989698 446417687 199206180 673875430 394264593 197985116 140410004 6194325 740875183 632852190 973864055 818272147 226031879 652843511 953802309 84536830 492053243 950629185 702042191 810673258 825357272 416351476 682969484 890561621 938190822 103085570 298223681 446048101 607959813 538311281 866709597 328306294 414374114 986166896 14044061 672043342 651379737 892395357 502052018 40333048 808613543 190384780 442127955 873825570 821592088 623722473 641512088 807423777 235997649 913774681 974734947 49445354 865277538 475756289 703709884 635302486 827087704 653360896 845781890 284053628 564194012 578280933 83482678 630921503 859212525 641472980 441559531 632897650 62365564 951866986 47617274 200071910 141601947 793905320 861105207 6989592 240079395 183602756 405959396 290375374 166973971 823031279 737452468 424113239 248107699 830429977 282949960 827659202 386809493 891413819 489460191 676389154 532185828 755150911 147258650 71310482 515550084 790361424 481318352 904704948 252987505 124690925 653948050 37528087 584657297 322211476 175447340 688436118 136266805 465848792 351792364 446038874 135583754 992371696 27175252 154336455 549917945 125279870 958821136 939122345 803813028 589495231 973852912 716834505 173581012 745437360 229478655 965911162 447052022 39612709 914948036 621728750 848284516 65310430 934218648 765061698 555268355 319665096 286183853 404948662 207393168 111712097 4018097 36631177 141764001 500580486 152552278 108841632 383440192 94293480 667101253 29299978 268403346 795354367 409031134 718277688 803167653 108704425 304517398 532904080 829554183 895153408 114002036 470973007 87019190 631186729 44162950 322874547 68834540 800336615 587320690 217115489 258970007 759143493 33904025 526921064 161880113 641593616 973887295 493021534 908854480 262846353 158153541 812513409 169764775 203572777 134031675 595358199 576536691 254560315 53065285 310242068 817284962 32612960 123776219 65274887 517481318 266508555 835646263 370866157 705488400 377773018 963548968 790494774 828965172 139807690 632580239 480763189 599267802 113112021 253104856 781802017 359173474 806466882 879668882 586310922 17016204 821233180 455668893 850825962 766156175 326742979 448531684 941165848 519776860 587618266 589756467 154837875 428748093 568957043 391784904 79019872 128976129 810372341 870909332 139685544 822299834 117426789 22444605 68268516 900814071 617504077 461395774 155995028 519483782 960469684 981276979 478781602 817634112 977256105 560384193 757386355 246224893 657048126 100485925 644792160 963917762 133887132 516202323 939994351 548560299 856826923 988175371 757320514 210916077 250460929 548941875 846483750 932118888 982729604 807837489 92443837 490640429 891014478 206894628 920873024 859749852 122588855 599704191 506730229 27200948 460426896 856386821 141626453 676464684 58001972 102618218 93033962 829000706 430073579 324989485 666712423 109646829 692767936 275508009 131203881 712884883 307093082 255666234 501536941 379839288 805740313 463243633 463156501 930298831 385365415 658635181 911441040 874238628 383677260 986494187 58328728 406593413 719039884 702273084 804468631 964883889 589596093 862457946 140296892 626999303 394737934 386896842 341639688 388340617 35249772 521729682 498540674 873050336 747819973 335792955 642028687 784497800 92591330 398051335 20266452 456818870 412068658 705830467 823555841 326554777 327164730 792772423 711836936 711191112 329858996 620619845 669157699 179304615 94104805 97391992 121817253 23455046 953818883 39721995 398770300 790694388 909293500 658126732 759948916 138928936 877772648 597029537 40521351 39732050 813438907 924301198 25148453 705675949 991882531 434988936 920664060 234086907 7372689 483938480 39103378 264622132 509903240 9667393 895477334 57344959 543036665 721574722 584035552 206680747 504328148 125189075 689917747 997567957 358684652 57327109 197313197 569800038 74814356 415261110 459975649 154617646 815521954 307767770 792191151 23134429 349265373 750514518 275583329 57606136 946175284 409298776 914059902 724425508 481545749 720150450 279917072 33346908 94319141 115534602 999970726 588412566 933230302 637977553 704580855 532371548 969747036 199588474 532258425 820962129 488142274 82940119 33227853 613149869 638661372 209951506 350188459 450049839 96888184 798822315 712071437 934945797 868788808 595298341 614241241 965195112 603099729 526026407 380511771 170013606 249677882 577381691 19139348 590163867 906254659 640359213 494332677 578681466 73775004 244825531 19324251 676544150 696966786 202034224 547501737 661777424 894418778 123555368 339282962 867525497 197547939 388866080 496121794 816586631 873081456 835108788 138012734 468698717 741039297 46405274 947395394 516035661 999219471 77070660 38583806 69821234 307754223 662512713 450875844 550492434 62486862 875417743 317872037 485055679 80359428 417639438 821569380 142563105 208507427 541083650 651391571 248544883 344901222 309697593 91922251 475873588 231924050 610483471 588350697 563104353 870894555 195406656 412931739 644740855 28209746 65231984 584653111 366892516 720112987 309932099 566643302 273766628 277393640 997152593 65002124 690401511 484465665 347730086 980007483 70158850 240563326 307711470 941071868 414687190 34363967 858987307 432790804 359703999 139265593 796061430 533810510 596170771 55577992 743995561 505510576 802660593 428662106 969006588 931398674 337301623 895103903 813141542 752088106 821679252 754382221 544785373 908356528 594587057 485952241 70669099 303987691 114154808 146512900 828721790 614101354 710624024 889530788 675715839 218133167 920222808 925500220 143705307 964222389 934973086 307041513 448289623 155752568 337683930 585026966 528237708 317160708 544312723 204057766 259093405 678097386 138218963 73246061 938166095 131862384 729321492 255980973 256649957 2266714 818572806 535015785 290853788 606460851 455606877 949312611 272152227 68638142 615335549 519960047 485098535 173891760 987689457 686075575 878056013 998589314 998032273 103664359 992919011 96707645 324982298 680283887 900381355 510644751 591659224 247171888 613668256 273297936 1997998 469632642 553713376 602998093 724388905 374127517 662678217 136830376 625748010 821381259 883369099 706889938 168738257 133962290 637465301 723858909 465486628 590778251 877283036 431130536 79816657 610435143 453558098 194072972 132328315 763207231 304168056 24957601 741425933 323491897 138636319 496058982 458762085 977293065 973241340 35259231 583315282 31058853 475964709 938629176 364715321 465042020 506960704 569040991 69984520 367980515 237670897 518020313 519190530 866986931 912182796 218564901 308638630 778555512 921251082 876199615 214813740 871627210 298056357 120662794 686414804 443514858 501206364 881715665 274004435 851630427 589535805 924763106 98366721 536031895 646131775 396465496 154966530 113747768 849417275 548766138 452880685 602794558 850693374 358235389 988078642 734573228 473675523 6176892 676240534 705284932 248580192 26686536 689585155 591450214 356928305 24758181 468322953 697520051 489561648 397212144 893712680 123109611 980228251 56121777 632657465 909637505 81147374 220395645 592186393 368688137 497526985 931443453 295491865 375894741 320353116 742001310 228861613 653424069 522313942 875120542 696752012 32540599 728215969 258971964 911806873 142308132 12637611 601551765 727991722 679744832 131277905 643084379 826728252 668099379 45112657 89416239 577816087 615156452 157772886 483664491 694610196 190000103 833341530 508770308 256752238 489901253 905086843 757547305 10879351 673507563 333899084 845248779 908912033 976084036 770440843 415240043 830217961 720525115 717851943 201354471 360145469 3988986 539681455 848900437 803697250 354092504 182661958 744503000 75882438 429952847 51960149 326589538 784676264 228814715 371204809 160109407 60930847 734972617 253136426 417605874 486811049 953860505 454781856 741146887 326985689 356481746 337847278 665780413 267009691 161653800 108123918 28992371 318836459 334510449 457953074 640702546 511396025 412186169 970029226 897842208 865956342 986714041 954110404 518022907 22391631 262684373 651104159 407290699 663112787 682865105 828255864 839920483 86148397 165787524 943058888 353185157 673057932 608278412 277516086 777561002 785271387 705202982 733102410 128130174 794499376 57122682 144902831 38547848 151540493 545667548 883738164 30488662 232005705 270652683 672842247 233703020 829383926 672239163 523829730 547449922 520639365 806847685 692015043 134908916 33221127 866203912 205849191 219089863 280098911 71577358 712625369 769405614 486694090 284131607 840821631 351511009 371559855 257746524 587779152 426706483 361462399 403139703 866348999 260433719 947440524 552566486 586751121 171876761 312203797 890452447 949997752 111058249 991248108 733409203 419607437 493776579 927519665 559226533 280996313 702819699 898831753 75446225 901399390 176506760 137769134 688859503 237724914 813047325 585801646 460882361 764593177 739615364 690381714 121776211 594812723 527019035 372010425 863992883 865237694 183144705 937063722 116638317 424042028 601787102 533758714 214590663 48761623 626168073 458462253 273663910 172185471 722816166 399975512 516969203 118979356 485253208 473833121 207613128 846765501 607752059 859834982 70182733 773648783 779775418 387015622 597435209 681760191 227004673 376000883 291600990 727680268 853952666 782164831 85978652 650468360 104541515 851446217 636486993 14248146 200580171 637055371 132220640 575226063 220758104 319595150 479642636 55603592 703873604 35078592 325668956 499038009 546889183 521566097 354499026 33422503 127679186 956809605 7577790 71262141 3100149 663161576 492832574 861217040 650965907 307852496 861398652 889398074 610209717 611541522 454436859 16382615 707032303 671127454 831488857 476395797 78225334 614244685 166492314 69030990 939449196 973057374 234610896 609100517 277923902 197514599 425681506 140054319 949325028 295485677 495182580 868178046 730772949 418647002 939325229 468123278 356546176 237486645 82207186 469389872 567757448 9211409 791833574 621037794 115032779 863002959 364957136 627776163 750742976 926311999 468725851 662381848 782630783 747252696 121546577 970383104 921401220 10160424 796674484 592773017 401890715 385493689 214112612 611620123 818283757 132431622 7782815 198654522 308197221 818071337 622346823 682680540 324730348 15924191 363915748 93400300 597887226 300602892 77666463 529850519 233522081 188153317 484749827 445534324 198401675 771050650 815313341 571307069 864608080 459426816 328918064 265332420 598377983 978871965 699741815 632275536 88188595 696276798 977448918 288404824 176656214 461648322 376447263 739073587 644026582 725490814 862321334 775295847 553521670 821997140 846225513 218788192 629749313 794528305 259935295 231944375 460598990 323894838 299701151 845247429 686020727 187201683 799349873 945665618 642555179 126234360 615257310 930038754 690680620 852811658 648024752 43717837 401049278 88907166 778193332 575469233 948274024 524297334 949462238 234975906 101670909 564368600 765658326 560134473 152317089 846297299 485195774 157088001 849622504 804188821 74807475 552352148 132675234 890550206 348834340 312226459 515389770 529683659 381802654 616778091 476752836 521273143 709710193 484182018 450268754 730906324 250964491 801652135 341935379 688293810 72384024 862999506 302005605 457111774 939571473 19800525 89939700 194698043 572559140 481001214 612485825 105956612 285782858 134361780 527183805 295668080 965233888 376960752 267701139 462427643 54629786 845991295 669555083 250362103 768580059 991370012 961827469 697774543 647127218 514525392 589916699 925768870 276789342 522315483 263117598 819640495 627007126 229039593 981569752 865445442 367186806 565302594 210067504 92317453 227099950 674070881 375196896 523253660 242724316 521010724 951331543 55758791 531926745 10641981 149470001 863567741 89914102 362887486 487855900 677787979 420242902 825118518 83393111 346243679 585417352 74102070 922188928 740873751 514078028 929192806 915348252 306368912 310484888 361656980 142396247 454531036 582191035 742216382 955120072 855998657 839677377 609706862 492222819 740550804 295293522 599737176 161654638 616850716 106735706 697403828 649028824 653357775 190220711 995336003 200315537 168617697 991266231 66019809 811958296 849730259 273593937 672781306 276102790 216383925 62649703 41092978 278240904 407147269 342476788 409146810 666442134 669081815 612150902 484043659 619455612 738438237 562125957 394755341 641376474 775158618 990123352 692701180 320090713 276104985 454268228 294013512 656049772 219366691 326643463 262448796 636766127 558310887 927415063 342002470 144837934 407062906 987747940 46335989 937191375 650307600 230080727 846757145 457884734 248193877 457579282 417614651 438851999 332995107 488351077 220412366 945065578 900492358 696216786 177009036 566711514 144775548 534511432 34173419 394604506 740733324 833013612 502621537 225010199 863169074 455293878 763087733 886566770 823185661 431207793 688641274 63126326 854628994 144859086 61741523 756190716 351437252 224968456 305122265 726686150 433871570 745750155 716276202 983907042 819010390 476398827 983104537 244924977 337694150 695760591 874854319 844615688 738861174 431092413 512190650 358145719 762879140 845977215 71565286 754661422 9585863 783280007 220282364 666904857 167376491 311243032 777022833 809053837 156776516 693154859 432555019 842762771 46892321 401554968 490847826 382581070 319407747 278747938 526296984 59959644 570762979 787772596 356442334 182574491 546917093 125797610 288742833 762522333 64049797 483080911 290840198 272314759 162037259 666187192 899981888 461960062 820676449 443362116 246400391 670822687 435365334 813242439 841142227 145804441 762347030 610344906 974067948 252155198 707579608 15135348 915055255 108056865 784233766 259658712 606791127 530013868 207162390 946620559 216637426 450588395 558393889 468855291 616794293 999637632 616567421 464276221 203065826 660081974 788338194 99672560 384630951 886658592 73119808 16487668 535720492 141952355 594894635 161200860 101038216 192424779 111506816 822831021 728373999 440293687 326861475 294129194 389649433 188521705 469677292 800326091 650327682 584585587 644843661 208509627 11312987 827544302 9675291 529493809 708851446 798957721 280605474 182481911 594524572 99884273 412465528 938442248 948969686 333657256 341610957 235709574 942711713 103505459 846404325 585651516 478543576 31791860 349236173 213878099 380933265 189987323 449170963 679136582 562514795 58360604 188999868 281312758 179385903 799048589 87337047 238814746 172677363 380345298 938875505 407720326 385999895 628182720 881726560 384419858 289906012 927416011 403070470 172735640 777360357 990194538 495123556 474942343 269712173 13805608 181727583 803743071 722432520 177413154 858722635 275402913 299222484 175341507 662050488 890591220 345589415 799900998 404282981 297911880 729233287 109296122 351092354 80846932 222520198 816888303 796553297 90336535 900783808 70394619 654185550 569642897 678103280 152069396 630926358 797419780 99634340 594130709 457560584 108794984 544482835 232355447 845874023 27358038 387550109 332014075 604862110 527854535 310722262 488939959 318845983 60159231 319946233 391143520 572131576 708046700 414262697 520921431 170081473 17807047 527248098 377074861 190097500 217421443 747692012 399479330 584438318 763235314 469533731 493220707 521371594 724962796 22225808 959181855 210257765 842458400 613585437 870322799 522923289 295391415 847199318 809453254 324048458 475266413 558671002 722384013 674061476 811146054 719855090 710479264 751842542 940279404 16777265 634494854 438926770 141252714 22210141 508952640 264762134 523791897 760746764 414414894 759241127 286770438 23026190 357639373 245960807 867949150 50930657 595506322 7376222 673639259 121111780 964455164 930502436 426326415 356114171 869866577 100651022 531858174 152046113 477782282 782954239 10986164 59263547 60503076 909660630 602740413 150127696 647669206 85722259 572679856 40633577 257019751 184522776 562286862 593310060 458144719 534500011 626206341 664055325 942361809 590591159 336445510 540022535 146765754 453222627 474493718 302571852 560479635 404614827 629959245 479307936 702080555 143825315 917723156 156769707 175888361 918208943 726560226 10799463 560688865 151991822 823933172 948608572 339368018 258689496 692007251 611602483 243986189 792179043 288141748 486831892 788905814 960116328 321649078 395765245 707145236 880533636 170686607 478734563 758420160 762663825 536923597 98265853 171728064 342639643 996027410 558113488 481830205 502085792 344029659 146307377 281786878 795956941 492613622 540249259 365634793 555796257 763466784 965109473 201483906 231888150 691116123 307876833 220492754 892073019 864242788 813161319 556760552 722277037 568400507 423916455 13656009 489078484 881432638 125913380 800490135 594739056 955805018 922558876 223555000 262230005 190416383 227107141 573093885 752791935 841766301 805681263 608197737 123249623 254658157 249578830 50062776 334343283 81849236 998828827 230717646 836439001 40667151 82491756 626135080 27501650 993893012 817655882 873802446 658858661 274230440 229761610 893676960 103833427 181130827 251214936 742048451 637904236 620780593 729699439 569661561 390081905 415372580 983375237 697388018 379534791 13950773 634312968 797407827 398681141 742464827 701551589 158016077 874822741 976091497 456888652 685697016 864774959 185958827 830124926 611305006 44822357 268589851 761011039 672024878 595153718 515068039 963570453 961845059 610325459 959246810 550645992 231289230 844707848 145049392 601700899 402915708 113431192 323434261 595163871 938217635 882427605 158802190 894224407 824953500 364197861 802219118 125933962 146413737 43740196 363388054 953381546 483688380 435859836 181445509 85047125 950446277 797779450 226741835 553456089 919081618 140325535 680831767 988057582 203527449 763201524 51250347 942518412 773915644 228195583 308367706 489100917 662966987 228835226 576492784 753925658 922752142 578710126 874418456 740139514 729212741 450876381 520315284 444506812 229763023 714684840 202116795 100390164 116639763 594261615 3920017 27060618 988515431 722003810 198612180 208942087 402204066 299926749 288494591 336630616 780498516 422164184 896127552 30171690 469530702 747569800 794010184 534260362 179878410 832188830 309189136 883230217 328398644 279262751 555343902 56331827 8462345 894840820 434538724 388938960 437147433 713467919 987828156 16259359 362035638 777312334 355221861 764003556 158120020 907335138 181447786 459675780 913098453 632229123 197293929 46388087 130030879 893761465 177134937 604505178 57675913 698989530 263880470 493687252 637650688 689948324 92052383 965709542 910174458 860915047 266853578 949500597 104856499 782367512 776361359 448607565 447018943 215361575 63942278 452592846 435404769 552051487 589033086 620648772 573519867 311112238 719357128 228092567 9198688 767166651 471846305 150633927 579389460 278119278 395859991 73964389 967420233 319397717 736701511 424487957 786424808 190643415 723727201 757258463 22056068 166788592 944613072 929961752 630814715 427612420 509515654 563599473 660316078 544925664 692304518 881200199 536911064 856074823 410791054 568862964 657017064 688561818 824314163 564435058 142253827 490445545 653837582 8723251 741483533 465165410 926450872 811151089 425657836 926556891 433436415 192279553 683477140 402130923 485878775 536420931 954547592 97284568 71978672 121654839 736295610 679224118 813554280 294969515 220302231 432236683 839031281 788773893 668450445 894675317 787017511 539667032 283921504 80330348 519964121 523220295 598090324 881872379 411346364 224878891 469985210 419005485 90419115 247497347 935451938 828742357 410336877 440443830 855050683 377002297 438040244 86994988 312477998 483837651 910010157 535574748 257022400 790989255 312669718 393816156 677259041 984739362 349684975 513826650 968946688 82377980 414762572 318083124 744596250 712972638 662213588 797259544 957436721 981834098 230628484 450205899 308705939 246929933 970838041 220933602 615891321 443927609 712949888 868065342 436308261 83424968 483371273 619441800 822342678 286381400 515549108 141706281 38501088 49779325 325588843 751650906 983482393 917447788 339959794 347153492 362805617 128349845 649713486 813561239 846463455 956477146 324795288 218623311 140159974 639468975 292079120 473958345 493890323 591460314 592343969 2263292 603007466 106031011 739271376 248555936 575923580 254082807 919203219 450418749 945663025 105726528 825295233 925404495 951844373 614108309 212887467 61457484 138099612 144840921 671910755 261294738 758087141 855122396 379739082 328761988 538318989 679615269 465734991 832972871 305160059 666719384 172946027 774593463 574458706 23703834 464349674 399557764 415669355 71995501 71528437 592109270 591235862 129113415 219367499 793939061 639446987 387780161 468508709 916331061 541575076 150911004 92864308 456337968 584198914 483987188 831157031 247522866 658323508 63179469 50472725 42323177 191509033 838726367 844237956 482890624 628877194 760166812 78806359 770928185 651494285 482483880 134839289 515690092 288364105 851086070 591289137 828711247 534266007 611002025 425468013 518185813 157335737 255702326 298863584 218333946 292005488 680676311 755231052 654069145 591056134 696383925 128662959 145463598 487061588 154604578 583303411 55214341 685445449 264753308 394044640 851534089 168338738 143514612 220595779 715897646 38007061 641414893 976437955 814716181 738752345 579323516 586922154 712676635 421967740 610153802 988704156 10558951 949641537 133044418 670867019 102698388 862605072 243704416 378990931 120750757 426148443 355122021 927834141 417216246 423655144 287382036 832108652 840143960 429801428 250838536 23195377 914537927 592936587 2299264 707787694 646071096 288001311 23643060 347747145 735198014 864153017 91649391 455347481 765526010 609025884 724874261 76203089 342631497 512475146 580565700 754204996 482380486 54624218 122979748 492084783 606933783 258342809 526122639 424425190 489121573 766194959 905027611 492599709 577801888 734605023 680462705 716450741 789206399 240217104 130821724 130308888 735337937 720673513 129118235 298875259 948232323 373741293 52627869 636537024 347015111 684751287 37075713 843701229 548140176 907632664 97157124 160504387 361101098 169654040 636933121 135744024 239001345 436934118 12861893 742730089 811377095 299445574 664255072 846687569 960915146 918260436 561772738 144712277 847532569 715170540 181476907 97106458 551315349 651455517 418257330 753435019 734558935 989335993 288282043 308496244 355790496 722406590 815151474 728228900 367326313 381878223 70815222 406368563 716733009 308872555 828895544 169357131 281321832 500520582 703152381 898485795 523004747 13146901 904358899 272738911 290087627 547849410 555932106 203274835 496663488 70077127 406554722 432736188 589190833 416640825 113412553 540568467 372061977 431489843 72144261 239718072 879439040 973070274 77625389 222521926 495945473 111389306 790023337 853621750 971629363 738592774 398599586 729790120 803142835 927180342 99165740 997090494 419725133 852577501 625117299 61809315 366558292 117398066 914000822 559548697 352723003 787749252 684612694 641449452 322514727 806032199 239030417 13058380 465573522 936231894 416815105 542962847 448317070 116048503 856499291 618647059 971513117 798105426 752862480 526031282 337108240 211265683 162751326 40835186 39891408 157345395 915666871 940735470 638140557 280968754 645652398 314759369 122176954 720201862 328492710 326975266 872609332 155895342 903790110 23351602 779015603 485322001 21181596 960014079 369340647 343701600 911774980 373126253 921248753 152230215 979090642 759037960 485586334 644828346 848970898 592169124 704698211 168858501 467284339 844933260 263179993 774132442 290930011 567172859 71179989 453983915 855761351 854806488 549608268 60030115 564853918 883563377 888796415 864260436 544872239 781869400 699314052 56966254 118119080 15023316 490905038 676065715 64546622 597006087 695250491 445022955 256266504 833097396 793536458 186563470 776323095 917793874 496732016 955321730 607706760 867982436 688191635 523595969 739594514 185009760 988144607 529603555 54581855 331807988 346315241 255978240 462824349 627335008 71041204 500297551 821970578 457245859 217342639 874652159 113264771 332163259 856748237 918316361 867331641 702092179 849911802 467315579 986624026 695651953 710336265 546194211 118308583 770450125 230454016 806656307 658812206 198409832 311410251 398274557 204870563 960661088 304746899 194260281 650740883 344192530 920488280 697096084 787537512 644563703 16676375 713073411 976001580 326440149 510250367 525575655 543157346 346842677 821940991 406208507 432419758 293537915 633272664 315894432 825554713 877618331 883492802 195113661 368089063 972507365 686477553 131035084 584852228 247380922 158810890 550851004 512013593 583635821 448989446 832499269 274568083 866720262 321177668 344649194 770000860 990002246 256736542 706984127 840131012 275603194 101085739 103479489 254976618 131203137 555571772 309006168 552489670 638790706 315513662 537707032 403731371 986453530 875384214 139639542 492840804 419721616 531195729 195818631 132351366 728905245 564556961 569928968 710562176 92038793 858215368 501877487 574015489 158066594 456129995 346333851 304790447 879965397 949991506 967307983 568990743 347245628 203582153 928356997 986363399 641084605 282641262 559697456 911063358 694606854 241490548 351155498 966878889 491043125 361234414 103308415 622311061 391271633 898235810 377329824 5048843 29040273 158181513 876448874 343948670 628133475 239116838 846085523 198050150 405352345 528555900 476965991 779938420 287341394 357043976 495931345 960122321 123331335 662790588 358745638 820579785 902765734 601959309 481538025 742969549 542509755 484561959 535243048 768584591 661317172 492419696 181175104 544009898 321543251 287972609 995964445 555147044 938640034 151849898 203861746 437927938 223992486 654564542 647898772 270057060 615614503 511430818 495465648 926563743 265753931 888151355 38990641 990103456 684557178 246878028 129532665 812601897 277360375 433415539 364961837 621478523 484907616 937176694 334190181 71452221 110619787 475330500 761999954 814154291 915726968 940140035 813653211 278765641 72759425 723699347 918174537 193645766 224790399 498165639 744019381 275663814 91517049 81033380 590107923 736971171 929605170 707319222 155538849 591003586 517482633 908137615 930189126 710576379 495429179 197008361 631708996 264608161 561152781 122290768 554706306 580187992 419424434 99152321 789978019 627544854 598767743 159311333 277529680 176395114 614791506 186296666 449964156 242029388 411780612 475640067 783753929 355879668 702252549 824346529 314455669 79565356 652358729 194118903 414331415 398846063 628971636 819453661 484360788 139680715 381009320 737816525 390186349 694801921 613617844 894146744 370896664 386783193 114771914 949466692 132660769 743740264 917876702 559610334 990652490 126312945 397004819 98383 874186256 35933573 373120870 440231984 238778371 623984733 73702532 659918124 335590787 864740402 656013751 356586333 668346919 42173729 809495936 284034271 656937718 553830709 472798682 53793670 695150629 372464500 578965192 369213855 575852271 810499781 505150765 151686587 642091322 380805801 589736808 640725769 211717315 526372371 446540377 568502774 426443063 679730222 121590069 203508701 622248633 565460633 364384094 315888058 448018661 408795351 24574981 197613106 660114917 430297259 153516920 780425669 100254492 362712058 485808340 928737122 131745581 692318680 551806440 736105581 258140225 7152938 528177014 164066080 249688851 548690554 886361725 432200798 377784012 779471202 592425522 600680077 531539986 378572250 629239913 851956847 177767887 140857588 670843008 255389040 790297845 455366340 179543431 34443712 298904266 199877772 305380833 625894926 1890154 208411730 784979623 414687976 327706442 783325853 940716512 51247333 526751504 294244752 744237170 731057820 597371660 482528090 98552197 188104576 173679657 980991858 32039544 568025559 46149779 583072735 469324252 632324481 447619790 500831005 907195032 822137820 870157527 823139742 827379100 796308427 74976149 817193850 906908938 304967111 903294659 508318653 609489300 183249049 570422640 302704019 315566026 941363517 661886325 563534954 543383146 122551315 295208067 442996981 832994699 227677806 974548300 584143972 176566152 211139695 251997504 898677590 293070117 436217638 995650005 28663286 101823944 603319315 102440057 846384518 452016979 64529787 219620951 93910811 531104810 250879252 494828955 329215272 142933317 769475953 516057441 162458450 204745763 611125732 183862956 889435688 367431326 914187478 827277132 30195719 929922260 171996263 59339044 173278139 439582706 486194108 764045041 195696029 835891429 454285825 363231398 903881732 640590145 943038212 573461298 949062132 969517448 646934600 861846892 546774541 659854108 104210266 869459572 37180013 712087430 611632738 581404586 14440260 407040039 968354517 394360363 227696509 471101471 86240815 756137568 45040783 181679236 514527956 910521276 279584460 305519271 297982601 506622752 556600454 511317155 444155032 321949845 755835051 281678341 164887061 997885749 494823362 459892614 725571110 816282638 25199536 881728151 61098310 925397943 514870379 513268149 388305316 863510693 161189506 164079183 891479775 732490270 377142569 18311681 580981449 83648715 459301435 786028946 881105594 556364826 504614125 747418001 182361281 876198606 828430680 5089693 479162570 968435942 558228262 904256839 577777205 72820185 684894528 365557019 477233145 470365077 861178387 847827875 331272318 463899716 470435716 294989821 586626191 626004823 925417790 477040139 184769156 972973974 741946370 847835462 274081796 30912052 186549546 894606412 414125563 901562515 116320317 107188324 269737348 746454624 512454988 273973472 398832406 599599000 20423887 714914105 546197120 644485717 304224260 878686778 192694168 36582103 945708187 239735483 294902806 223508266 42122683 259064724 598985224 510445690 554164690 126511272 35863200 795361365 768543455 107404899 832550947 781134390 477940047 257121605 37035994 941524902 138929499 377306753 954845744 23373115 322533223 509024077 619804110 256483534 155186640 302276039 663260497 211256184 861023924 808154619 663093506 702379886 680554710 468691429 454179839 272346173 766324360 940526193 379231499 255032735 855138613 132412957 475064166 265423871 283685473 43772766 396980091 97789031 963085854 287165673 923165185 8602583 865030878 291961224 952221374 522490716 489269191 785708808 343654725 185894428 185817846 28628813 253092370 468445330 271579930 419845171 717459776 354318456 691379325 109644204 615809365 698222932 774973027 776736931 652064016 593078043 16153202 67589272 713074084 140196595 88386325 308634077 612138041 774454374 715874549 449334379 570380617 288743261 555841064 443662804 885172351 62782249 610626493 602827958 583389573 112944031 729131593 707478264 147404806 894690299 244177013 565291694 709241959 945558569 464291006 754442807 467378602 992455385 116905876 667624489 972246443 532327907 516013022 793634979 352906057 794591556 552384205 818427777 36239206 291364579 608398292 967347986 964317687 763683383 944733486 238647565 139481985 849281223 723453924 634023951 664045062 316973167 457489686 528889312 736383384 266526033 406146007 656280184 168175236 298850487 585665496 108722632 116884464 591112878 278674229 405535363 644100432 596024503 438406985 799207743 827742970 74054572 109599449 68556995 682365259 617960361 649958052 613990334 551337498 879784195 514083603 426565077 14692614 945750509 864261965 688074067 405236399 367233488 629569301 482760255 666475607 357732372 338807987 383049526 890928646 534801929 334094805 915267775 785311292 929893022 954957140 99658035 80810435 193149734 540806351 838792861 487041029 871251516 523726377 479480666 171000731 527173431 802879594 702945881 579336800 820866280 346043197 654849981 955685664 772079186 576080277 782322773 129950597 629142371 956648844 156025901 654332815 22583170 325938740 481971692 717123805 19904997 66662359 143825936 272888475 769059968 860717566 950663338 686428849 167846816 198316286 746801198 651757539 142247195 91808623 289016268 436805827 984058186 501351661 34802892 542668771 319775483 357761295 734976704 508137514 903392966 669278880 244284377 345674072 303514652 519916126 238834926 168261510 328052970 55082381 531080761 786755581 751284375 863821983 112331541 537455975 377403243 86413748 823432612 146504942 230395414 509116653 20119026 719134743 293926272 896016640 3708518 356659671 25080947 323845941 837542001 789054794 956938811 66431646 321901090 847217152 141731208 574425834 525459478 911111207 694069547 705210104 615571178 925461370 777725965 207801136 465593500 420060812 454132546 558732187 910643570 286106462 227382434 89435036 568340224 170680885 444226571 422649181 486436489 132893926 198684491 515920985 72147702 327506672 309509521 910222786 338051811 77629794 959022839 43698365 27753003 583181910 696680757 936610251 384761067 312167162 127929427 914906526 212894718 66686795 829208295 962982844 286101422 621312215 223899246 793160099 951185420 848740312 785828138 856642025 69215400 256633699 707460683 671320105 26515090 937012535 610817324 978881127 325331266 80465380 468290914 661624394 11558277 620379164 718435539 221342118 905798015 528904056 600433820 624640727 314644098 958920302 235341893 214637731 251346377 889362583 797166914 508093045 742409692 649560520 164684098 638337969 216657801 158048449 36494938 895406535 880629340 520667383 163785229 944741790 419576325 898269835 690794145 227628509 962144373 3236608 805566116 403819882 934247438 937835457 110579038 799924447 128665785 931113001 650555128 441935738 763528493 652688680 185225058 745599724 493772074 762965533 266662613 151394845 96282884 953680943 400205920 22643511 330332041 343057200 836637616 358453943 801447804 556358151 23887607 608809648 260071510 250851778 903548564 827390138 487186047 995022058 985462857 340387034 338888614 505849395 474463662 234461596 829336733 250482563 999890713 230504003 566172087 931967811 201983368 167804175 555336239 599364776 557739126 769624841 834946671 580899227 338376832 531952251 914639340 801659 333879935 407646899 761720713 926292903 472159150 709731110 356075183 368175214 536879336 734388761 842588617 297862301 764448899 260359045 301602323 706759172 764473647 65829095 259993758 124891510 936666181 407265337 767550974 867243796 240536352 11231353 893375629 449623153 687407055 499389795 919643365 752045858 851979705 356876705 149005413 251580447 120515159 678387469 75315152 126303655 783460339 999877151 441934877 707921109 762403159 471611118 364930506 595419199 397694172 408622187 695842591 139979319 199336377 514911572 237421711 223726858 699962441 736902802 359070654 408647627 817958345 801390637 259801877 366494622 658324289 835355063 504344349 488729168 725742631 702669186 219042076 386955360 381822338 835208145 535410387 138417720 898394286 770974519 519315583 634620001 690855361 636748046 433966583 547119446 699213274 308396228 573864474 131683101 435346013 783326398 221145418 662920640 723411476 454608335 896928963 566510615 176611471 470118634 881106051 870627821 141047330 940994669 210739901 731385945 752700821 219930833 723827016 229960351 232810412 722463715 592630346 97824812 735413435 470721392 171252518 105820743 312667352 611962720 98143460 386074564 116043649 499088371 321324552 570894889 396965394 294300723 573152549 876845640 6014549 844641320 328749705 440033595 580137038 889420825 491305992 513141695 739008842 654140961 759489135 83387593 739788010 708541054 427253247 129917907 144137519 447100165 970531219 329101894 529019488 563975396 272774347 50526541 829674545 756667808 835938415 17542647 179472249 432486941 585191730 230867254 323736763 480927623 935192689 217999000 80012738 764888892 245955660 704751316 199177765 236424989 558762425 922716393 360246424 302947715 47353656 125182042 149062426 585219851 215931362 223904168 338029050 400063765 347260216 970648495 558798018 621241671 644591542 350952037 987635866 271672590 731048683 955880925 814022494 574071309 700649730 46885475 319821240 333151850 286172218 794248549 523475241 392448490 265484129 687361568 885404202 21093815 68264334 712089341 900260950 882007492 55347734 54646102 590960123 795209643 525321793 277875900 623848186 568476803 603304164 163345324 570985484 428638749 515519581 709197636 145794972 678969868 474621262 724927685 903796435 246820549 590061458 775359416 869424363 181661964 357798665 846706500 714300898 338486061 618206572 419439284 824416171 862947560 931936676 570141151 101483266 277183141 452268169 266462234 521032954 545451939 279456580 674762262 41134984 38319167 905513955 14582638 613122792 294288294 661648028 542386955 603185440 841580455 217325738 939044161 8584713 958076445 103502065 932122999 906450327 395389939 365422982 545698214 937020595 287564321 482834752 436883340 725595381 575572591 137615692 121313102 763402375 858353014 854305585 107200509 506052678 604302355 784132787 407482622 119972797 743620432 617407611 456161521 997294407 119583193 944021436 900368198 817644808 881818231 667465641 830932181 276861212 385814565 482389261 737657695 130654447 208209321 986468428 647606954 773661562 498241545 511720145 736495473 119988692 908471090 751316132 427310691 356031797 81008548 623437334 955701624 731939804 661307085 467450619 452565152 50301132 725456929 573566274 352885682 629137497 368519271 28289387 111525243 315894209 3036534 722361394 321942908 888320764 251691823 671812759 398678431 124751876 299340027 956821825 228961559 95072321 431000044 827781666 856996957 565865015 644009608 932988001 643784216 887127118 810159010 764901989 738149398 733813490 506101860 220954704 402834242 198783459 965901787 102966742 450504785 777961741 219558875 381698828 208230718 804545347 165740972 585418089 475669773 29587820 336779747 853459929 20210426 122745065 463344195 511975903 293340927 206432939 862753155 566194326 343309816 934728580 691709492 990093541 957044500 243688915 95984689 869486674 210961823 678121978 888076068 242989789 62089310 37459850 884397010 834202289 901287262 281428594 69220971 905567700 566137963 860063580 465213558 277693117 261148399 27065904 368019165 647302639 925920694 431426423 782316004 970716571 224581640 813781020 798776936 55388149 486442896 297599861 86035020 245394049 696322240 967822149 208449527 835873184 886568872 695429623 902202531 103487027 872368084 524632319 428637469 312923209 457263850 10290635 112794653 136248093 910581542 574594640 7876976 699139922 131290362 398869271 121753686 251338952 81422885 979054990 862910391 106572958 629009611 48933637 601388316 903448522 843892501 749352913 825035848 876449158 556668901 353967527 23999553 101825074 704507956 813506088 826716506 610973274 118087681 990843897 12263919 181640949 701969823 736117660 206188048 919705165 350589469 792527645 869991708 473943117 293598841 770056787 684710849 359706218 123403254 203753291 442572222 518860986 31954124 395822833 21971346 119168834 217353762 926211553 282066263 622058048 738520105 836943828 18501538 204628462 403674585 752455022 594566335 596218799 605196907 810987776 382538868 543793019 846056242 140473747 713429508 669027539 306958267 344370930 888295423 917319529 948015512 339610649 83607939 811308348 671079473 802089279 174127720 226740142 647093126 618878430 602238118 108492898 832353972 429804842 918381583 162427788 724004853 734391182 507765552 298675612 53211509 588931487 690561647 997627019 981609983 378417717 129755758 161594583 553169196 764861033 512941083 350436031 325470559 869779077 958498282 33035279 385321335 781846120 888273016 991483248 366086995 302291530 778035979 782204862 137244132 670488891 534266975 286696557 755453188 561095598 334598464 101662318 474376809 969470972 633005465 348853900 852119675 619007049 90950609 75887937 900761891 615102096 16236632 131211528 846926498 932790752 823338369 567212617 237095367 409960937 443161991 327416622 861728474 665177249 978805744 741037603 287349625 212376407 470331941 859803217 92603164 863743598 556993607 98799970 790796400 458116940 152687591 666881051 887887206 135756114 842523228 130493071 563589583 804789492 251382924 904910124 743214090 428251881 925408580 14134246 537362555 948164959 398897919 345852036 839759523 858136269 654179329 278040541 40856870 969108632 53620878 269802574 59013434 724612356 793307242 403741349 791968025 84824366 908957850 738351552 541486057 314367219 174556758 676240414 212655833 376290097 337177857 618838058 898114767 833366129 16254783 282351143 788696385 225424422 700541770 221374217 605117911 446879415 617206864 417787244 950537621 852908267 471363508 548524594 922797229 763118459 445444835 433454322 534340120 401336400 139169591 968166965 68304813 348088006 315753793 694429377 272249577 321009628 571588171 859666328 315749005 255695158 681691721 789875938 577103969 103215466 545571653 476648292 2394095 472849791 668769682 55734171 164155781 97635357 620081922 993467172 417183155 416632251 375327906 764530659 475280912 616391374 779687128 496518450 474158909 717685997 130331826 500874386 296522429 258033421 426829980 393454553 118247276 262324593 711837085 389873141 278199851 558468217 749535295 374040507 431250971 902425134 869366939 151634707 583741464 891684456 522520070 224988373 214051601 223393350 982607931 28027957 758220377 709711918 946595802 725256138 746851650 593359163 529084281 907272418 429758275 709340910 573792049 346799712 300811749 247168837 640450443 110925692 425025947 993433881 525271085 204104719 197635267 80278244 581878914 369254108 646748322 82919859 168178453 973781375 728533180 803574070 411017837 535261704 249128925 993439921 558188419 818810612 580140946 686806763 513859 689319420 250317279 870661556 710401561 470405845 959367209 159466134 592267037 624809415 422920832 121029517 409137626 979801427 252741121 827640650 845965981 946201590 335250502 693961782 345362839 500580653 429169353 566893279 295958114 466808894 33078521 631453623 661979369 816635183 50350463 800521121 31063420 108374706 320150158 465932429 901281857 94425335 783587389 839964540 744578306 977636609 680589295 12671496 726142445 744323812 383852958 464192277 440421073 44352331 417191300 725758483 515480280 983543185 448269817 996791687 946401518 269364347 492121241 939597942 696287023 582261073 870102926 328856336 590146865 981413934 313487733 292898763 875457067 289043754 242675722 525976753 124199973 444406344 293827999 183165417 454399146 52042567 743335023 146619126 295920500 293823431 507150999 432554117 909736394 961456935 878083621 211766815 246910072 212171427 100709119 966728296 491723863 319308694 575276416 521728748 725705848 524462156 838179634 312845467 14151154 869330089 843443212 905918841 405941319 914362306 196378987 636061219 228604927 866106639 482931145 299446335 465887562 584909390 533924413 210438633 773138728 65577855 927417570 481142441 570750775 167473347 534782345 515269166 197259756 923096844 54574829 831669854 542040250 978091746 483924317 338122355 19649213 43277820 250071527 857154718 318284461 930675475 857086265 29788432 949250270 901401173 590701150 188599916 122668176 982643581 239736698 882826186 420773950 712252967 89824377 244825835 845748970 610057048 641730697 1763400 46934098 374883749 749530512 77107394 352468560 808314588 100320842 696608725 414138589 234501895 911447938 32336021 525225743 214894573 866938465 666513237 249577785 392423864 54282174 981391745 266729259 830519354 379577987 120351954 626864914 19060106 183651763 65389067 292732240 470925779 800263696 428276505 978825978 644076357 247279011 396905109 782061794 711540692 886481991 798217165 449162209 624983707 601155173 899446501 786634125 763308502 454633782 868004222 39168955 8000697 673813655 820393884 883863347 421267211 215376914 950253685 247598417 812583252 165749472 785102747 163217742 845906081 829387933 815384679 615105379 374238361 231422185 445111288 115454415 447607825 913528285 789669435 643255323 715366745 262174534 37950653 300832940 813481595 89891730 249743187 720115960 170575257 599894442 430565762 652854235 670904870 645736909 965750424 321314678 232334865 704123391 336925961 117049797 522298813 384184922 902122545 666567399 686049108 632504585 583881993 984334198 528838372 913020189 297929037 115483864 16296954 182144939 783923246 844340744 193883511 517180932 388492750 781527409 182581122 406542223 77278860 759989989 654283432 398638117 111573909 893097130 634166386 839359153 181567132 566194605 715315427 154344965 349087699 983984510 847767845 213606208 686980348 486993313 63272417 112125479 856729074 232533093 662640010 662899076 811465449 221550456 899943107 418919430 232411652 121416585 11239696 669049658 179860738 62043812 798557715 571951804 17357107 586683086 134398272 767483146 554635019 935395094 854285760 637374916 817437365 866188603 112044507 807623780 380672722 306593826 406521446 596364518 434484508 538563892 862648837 60497518 660677928 390164650 560694857 725794582 733779664 261222075 164891754 585213443 663756743 348905235 893778110 848126075 387509622 217504863 640847226 776269643 29228705 522418136 691380571 461694173 152810946 473273412 784745198 828204782 353918124 226159942 772745452 271804512 881869741 884775245 56947943 645063700 202327187 71217769 618163502 771724050 533092635 887762576 117685427 760349409 853341871 267018681 364892839 624917336 595016588 950850726 85872140 139537449 846126461 471276932 358819504 351923646 218148418 775717314 746139583 142459081 423002924 859601410 871172405 680174592 514858588 608029567 915854143 463953739 310754566 228553749 244891322 793006962 219761350 590078498 750339499 673455452 952499205 750738311 217715310 85865987 459822143 974957568 988179046 174213472 449702182 230713116 397064311 9054963 976846498 517401063 553880987 48246460 45468696 119115293 488835055 611736938 746199340 801058222 862920114 103387434 651025812 922671029 263716889 355060696 624900651 894259321 963183580 333380641 469565288 765542152 287207922 638990350 263029156 217306161 17351019 517972352 919634242 486951065 459674724 789993095 865442428 598234453 547153801 484768874 874782220 280494920 902498630 810028203 652435712 146406166 115020043 938724389 632272378 666980423 317828938 491020892 803205642 190380908 238071635 347243825 990413419 988580008 537466556 570193359 689520375 62629684 484046979 854111514 757460836 750904408 472092379 260881910 560868349 669791259 699393708 542622148 406568870 899046921 430361225 91739422 506455025 39581225 105457301 678470820 222243669 171290677 416676286 533904646 160372915 82182714 967491908 56843477 899738512 6031473 995674310 133863620 519297602 623738887 628882434 250070906 912297881 975123530 642692419 610950173 184737931 683979904 54955144 83381427 353525112 301650034 33699043 738388276 106617367 456835272 508290492 768461059 160546003 985880004 805735141 721457273 931771237 699123970 184453851 341982303 530203725 377715128 938491439 922770774 509793051 128557219 484435095 645949686 538830691 180270380 517290274 653059195 300273380 426121424 832735590 285796894 314260971 244887886 747824519 86621051 585097037 869958953 640112715 842818009 723700150 860760432 501936656 312617904 859016937 947213221 702871872 670540336 114625161 933352533 568182706 411251714 48775573 852972311 567130023 248860242 193156749 253058660 942837529 441359700 123439868 546679358 956739374 587145673 422575599 874565627 767521563 221014778 929074413 551247659 125722985 938654077 471938239 241396544 201444715 564956217 772176456 669248566 530012999 564640609 165993378 675638031 150163949 102032419 569642584 257048436 491483752 726002764 558429860 970447306 758328352 542501103 659452951 569251734 112754882 874505843 904650263 634402704 112387785 554565118 860623852 317324737 764371069 137688981 866157812 390451370 693071981 632231453 772835228 829015178 530150861 881723235 471414839 785611801 315890990 822859964 483718394 694780726 994105360 829296219 827469294 636829492 15904519 89332012 945547003 625938090 128577056 586320657 643164307 610236956 331256647 29471718 333133399 471142899 994560575 948635563 442597760 579975557 161484310 104101396 789525901 334781169 282018508 860977849 826264783 593981750 275935441 951317198 589954748 5029550 412972582 198446425 282309882 909846837 251958579 285905555 881853644 226202912 329599509 822257426 34132011 697470497 889257267 203314871 558561121 656807295 250225985 229562042 229400030 515217620 158730225 512361279 805663695 362218150 128007666 799396817 675227755 412953221 64380210 453009502 651284130 874754200 538427479 102332663 409256045 102374778 707705081 699861054 799054315 646637826 125583812 20465606 211923999 806882685 837829169 487141564 668683528 11921334 973517445 144393120 562721797 251885055 660592272 42022319 747078247 305330672 732398769 945802636 938131868 964879881 102019278 877759341 397923740 296673563 567222377 962675199 427470930 617796741 651060754 373949450 207501194 81769739 627142672 311263112 430959800 668777229 88872327 668881411 198073277 869034590 553020201 932554791 600940527 705384303 959276054 926291598 640212113 520082048 156225232 476712586 844779568 385871364 518758144 27611998 108179445 373571613 933643946 815011950 362282532 710807479 543120586 785976661 449475252 251569182 221553720 699564610 329599658 4970491 324487724 940856477 757850694 336349155 674971826 42145678 962549479 809985052 198646107 970143219 266571963 818201007 639284591 354248126 423627698 22654586 109592733 78228314 160836619 841728835 851752226 503509722 147200580 74429021 826283223 370790917 543627736 564569854 548042297 796296130 499418514 631033182 580735002 197975337 961199983 223294617 264232363 137887927 874368794 618551453 829526855 765540615 194438219 85488440 162552702 772783422 539054216 96552253 54684173 949870505 940958122 473231002 667969457 432004970 768810263 338770629 251209893 588136356 624574439 55895675 711897062 617786656 198552745 890439578 728828382 120425679 288435543 701746802 339801838 79427796 731009591 207138788 917499561 818574664 762919472 810989055 616751288 753487145 307115332 824255853 185089300 614532020 519143981 861196433 515950769 766790492 260229170 878208203 488860668 386521416 855560611 394168581 256389150 268659215 638795416 184054225 563537615 178637610 528387179 262333818 316570815 882557860 832352563 674524128 942719722 810564804 449142578 767484913 78060340 644416608 536005862 85760922 871324080 482885819 935746137 318188109 850354196 285517436 292595634 450424508 325416442 590979129 537848990 177534109 373149289 772128056 137064628 718387733 727325452 212802515 768463141 282266539 859898570 53861894 379483642 540702691 51090179 607464329 677114426 973027833 803379072 822473869 403166211 311269062 69323870 15185824 946963876 511257515 411085178 340422118 520340739 945727822 781107049 593606747 303322842 433402558 548035264 900579965 398258530 709110021 691541772 10512717 457391440 473424351 427973516 860142237 643502830 691214447 556442459 129511849 758322920 560878106 614778695 993693401 487139780 921245798 812091267 111939153 473974371 697340116 401081398 799883336 269117025 891393375 24353457 893654936 731096805 150806130 985350955 349847340 723642057 832362103 158688234 448215455 291116511 728283190 427766588 687850491 594981484 716826533 532948811 541291109 695173087 678724506 387544039 862509457 943636308 395337463 791415452 582392276 330622049 783844877 133341832 352985459 881214101 79829411 446159093 997824231 688308264 499704056 734829982 337132424 256622442 962309601 527983030 358834278 197298747 382519846 746408552 957080376 611818680 976409634 532825114 78027753 184559000 734622786 119540958 6521884 488593812 661427488 37518756 311682610 322199666 609983647 358196234 961265240 137922188 181753760 700544254 467746810 497294240 57171549 726765468 411769682 371330817 597910862 6385470 396785777 409600368 472416574 376416979 886544137 754914690 56801727 996375610 812958072 919207777 429972235 431526139 519185175 21594641 720399525 884250625 360669063 257751909 47312393 29768909 546986287 313833921 772934903 242816578 419398931 655265641 328752792 296269194 201488184 82176745 154827203 954189408 188110046 417931253 455044448 420889746 430762724 27083421 19976610 66783449 989527821 567912376 31269846 468829995 561143344 325277497 770563738 640594492 723304468 758404432 28858159 501805797 207551504 423490084 131610099 757407994 560072751 721782786 953954763 868885491 80130213 893255754 207097263 873269274 52288494 38762216 537468133 238523991 623380189 107484275 547332166 931304582 244284511 51469731 941707098 813762485 958363612 46043646 861778740 260006484 337822283 732389400 944964463 462440872 747961124 214509543 200911974 386217195 922661594 359725319 152869542 641026813 936259707 747977626 516975184 428491607 660059545 220897472 206773702 814486740 609473094 514804550 283690232 949395034 754161468 53080295 215291883 399659670 913340237 422785813 208964866 75144101 423752618 738292185 206815352 63484760 878938452 241072919 142751344 916429685 163448600 288621980 601695675 458454485 214332982 877357890 226532239 326758347 858080293 722284582 617319588 649551501 889636751 80801565 444251671 367088485 74144421 281461658 366436722 968347732 54517091 963631001 229880772 69999562 140029732 952492103 334581270 824818116 369188972 979506488 726031118 843500705 741171 202445404 395188084 423508951 456702482 514148059 940685834 610945367 435704255 758464745 951027296 453608080 714172137 345587585 841840418 842474458 211361954 319730979 213627056 522968758 778572569 908093400 795471503 416012110 772182145 577282604 614205489 144560287 895162043 857219483 161154909 269406573 759054830 383073128 130458334 514433800 533468311 149673822 372687521 619591912 891215668 960019930 28507190 585724387 396515249 881384217 584143408 65163710 962136997 925731241 906542206 966891148 241650250 546213023 467870380 744920320 924360520 917755257 836995665 400701893 956260653 894654591 272771798 365548102 171306314 138190708 770793673 5851802 267948654 569947814 549898481 577044117 277705796 236933862 202569595 123691649 328873865 382323984 74887659 392038482 180504853 102507928 113875003 902399922 252519655 302935260 182995111 282286525 673242665 419208610 860021539 118822939 688433355 147341268 51994006 885052554 818593702 916525979 213111906 57653267 962765569 978446918 608465222 900827917 393928486 152222422 873750084 302330670 877204362 506920754 38212441 175182687 291063491 271417864 401118360 294220919 427421778 466912153 375416809 56137261 137880782 440076640 437334234 364876755 594444151 670071623 194878181 867970401 467545338 954661675 47648446 594449706 850280255 200686778 853950638 342921654 297145123 763224619 407474245 717610849 813392006 531721061 974923852 701160673 75864202 803866600 536912189 774969903 980612395 108333791 216103802 62854684 18850609 344925942 787919860 67158478 279497393 390439907 441531482 756942670 324809507 936384232 669231466 745443543 923311222 217058827 537412245 422017163 10381373 988043096 97581252 569143515 47610726 749934634 887852401 839950223 963390185 604228327 746541704 944898907 291232565 958972608 906130596 177805577 65144782 927937272 518676429 144965250 349543482 710758772 223788918 212906808 315031051 355516233 534240631 659275246 593960363 926506225 900031436 724422193 573961389 675825890 473457227 721745083 524949742 799862046 310373437 850098981 652920831 120259396 847898005 515684300 245173248 314924459 357132995 266596723 913403508 587270692 40790435 811360145 484671830 69666730 670615268 697959787 785200667 38222332 489705464 877126210 8162776 653425264 69913748 288740188 251496630 945425348 850658155 351752196 184636168 641023504 252208484 384054128 480457871 368264480 349773044 916621848 665920835 353600288 518438036 626492634 41066278 425908602 518421865 325024452 986968509 140377754 279583773 569563978 183294858 397482206 303364556 461561684 387972719 995291757 897811704 833186702 123352721 890529117 384390457 216730657 818540240 184287573 3620819 541831781 707195232 455788097 303107180 298737990 969704946 380386116 269888587 640258433 160153231 255313166 651526421 513331894 389842341 668075160 598339881 155667034 664925506 534442956 224092718 856016228 2088545 306775716 116597272 947006139 388940991 214236080 955201324 779840604 995615797 773788943 722711662 140379418 793262468 982933912 993543279 445212890 654429634 284636324 729053746 826111286 653691820 733988032 664860406 67634817 823197284 67556949 519646076 127993692 982854245 803051294 163761068 870339600 206698199 998674601 952947957 436537644 120805102 611573836 188978745 771538040 701379937 630821715 142037652 333615703 268005491 917912541 496539222 536193154 905283807 263032399 422775169 588814928 605317036 336841348 470393814 687112454 714065955 180348487 780298966 264942745 73252767 690617177 112396248 82291678 80903257 346637431 24570310 927308527 154118820 990052086 903720097 985690913 553305778 509701565 299356890 783226484 516586247 947186009 711003821 612933718 942785009 32605640 844826173 661846490 320916526 878545387 648289620 348651614 631574496 225444751 711807688 397162285 311687389 86869646 54265456 627655437 403660189 530595842 16714745 82737582 792303006 148392274 213539934 967700522 238875024 156020487 278952522 13274287 527696371 399619755 663840885 580905265 902992249 856180060 458587260 882290341 897494771 32833176 575972622 988635973 152137558 292286936 263601759 100894414 213760650 11956052 14966630 124812711 544964196 262538336 69537818 576185067 809337538 959546703 232753969 709734956 61667611 391447991 490531845 579471927 581161562 313351235 988504124 699778325 848760797 674652053 454557187 931560077 676173876 78446313 969389668 646636294 7465306 969350873 199855638 567810077 144382097 830405182 940671436 636494849 963920793 962947107 219224032 198942533 14543873 448680011 664198328 610534997 497591976 839227159 164492916 429087466 504648335 266302085 744404259 37173123 701571257 120575003 434897026 498797919 482617875 332232438 174182034 39964478 999452838 108817130 480671530 608371320 451905870 748120443 259531799 408998734 555066880 434196897 663269961 957957423 542882858 793832767 792068182 457350893 767166942 696826808 237380144 588770329 938756459 982817684 631441460 199514990 830642932 793151666 476636817 554624780 665256840 29805798 734108506 696641427 504188650 605816399 799943989 792558707 308170328 920121048 815147651 578847509 690478269 616698435 59687605 385542907 363784001 965755458 377781639 67357014 190927231 995103629 459175479 980922378 64215824 719312890 198478857 358997663 961147702 629845168 410014212 446755021 505816026 290006231 124199618 58796234 848722983 785132880 36581998 841060741 34082480 212744917 803764752 796188110 79897423 872456883 774672824 577292469 113264592 833874879 967086002 15256759 808922633 904113701 560504896 820047424 89972194 144779477 507289363 170486716 970815386 940090611 805768629 7379658 269708119 742460089 468938378 712418598 573318814 283840336 947564828 234256304 284389955 532012829 864909717 294778269 469504452 91007921 762496176 10241915 313119869 83370366 16266819 118871325 887051748 19398020 201962204 566254223 284730836 747586776 258185786 105472500 314842317 246085805 419136589 356537405 669088667 132643862 950618816 599848116 342505430 480638304 988862149 992779067 205632957 694092249 22118909 203557824 862196018 286668730 255969907 15059129 300737501 410444150 66576442 151231778 776057420 16422787 751503192 704225062 4902253 320662380 192383628 569134756 254904423 965600101 375158483 825216700 962635483 16612368 119351253 428295756 622338883 904102330 902567292 387249229 856809807 21117347 494148791 699152808 971541086 635302969 99896628 724624126 698644834 285671516 739090905 832872933 250307390 798177372 359075395 203951458 468877521 236107310 561187284 271388258 553126943 481195455 117199118 178456632 618293174 215592868 608272950 94325471 478437294 381848452 550388183 76659608 85172305 464320552 486376507 393049657 222856001 558088964 313650272 763336480 32994118 326930421 832814232 662614805 282055464 717770439 930123613 187550242 536648843 198018654 496960701 449185369 639214500 97433303 315704989 551677602 125586782 895264402 916553570 821604109 717051757 33930188 878432760 750625872 7029363 943325812 939938548 356074693 244787892 551595756 963490608 365540912 780001471 170090008 919344662 96638483 232987121 754713675 437201241 179533466 99382474 538383690 600009647 382950409 75847934 477043527 192961853 86499959 942273871 501523486 435688557 572194811 140428723 547386951 120395735 30923114 963278358 713355526 12952507 86092901 745329009 943371875 402843685 347374704 291087317 519398083 828737392 975115458 630013828 316466974 243343370 214085043 92139294 364727538 903936008 53902433 581608041 280651632 262212251 574690727 978506835 773339801 555566791 916133513 517305409 265624181 33952874 325516196 810859737 806350357 928453466 983800603 807363887 491010655 126466837 467755294 352364773 78973094 534350493 350513792 234712379 129674242 222941786 543193625 941949908 894907539 907003726 873778837 107868683 564419203 281227860 157810732 10078471 886504752 854185996 975370233 571787054 706501276 697203866 53031082 147708828 376937019 497118716 983566963 604566115 556507766 184826031 903495327 912649838 515922082 523556200 740179733 656900471 469450891 373059320 779748750 931410008 394196422 527840387 641374776 151208859 990671729 474039883 176042267 361432559 951373628 392331486 759215735 173264329 842030476 506906770 863903696 868608052 417164010 104053985 17703278 61876582 212613173 705035589 557413021 311433044 764168640 867614387 260378339 162308042 433850856 506144088 380837631 557547009 810211447 427652369 957717983 318707247 425182032 280315508 99053098 768148671 867703656 368870801 750265578 643414751 806299513 881687925 208945532 984378433 207137078 482473476 852379728 663287015 733002938 643185639 744203887 274584133 547467746 196988420 155054750 204177125 268672684 494607963 666564394 103057033 154965267 718580923 103757761 824042673 711441705 358075326 945145418 713861343 162250281 266073525 253125034 463159458 580770810 75369926 929937256 894135458 222125190 283531667 831044057 278227265 968929062 497656093 330768645 336321512 125147495 253873493 442994564 726153188 244266062 106726457 883494345 799591436 955267345 13855582 239971544 783631013 465543172 474603670 110568518 399066438 693531059 898238969 348862488 759713588 741472155 29494847 789893763 154076125 164297789 691491718 842849088 756765361 307701000 752278447 486447239 462376131 505755036 51443940 690929774 358015740 708389739 709282839 213752871 146604008 210781815 441017501 834541206 152695153 768985564 697957985 509059014 470595937 120863938 27627306 784164145 630366218 891189983 452268691 127536695 160505715 497322332 548097896 929523819 424584152 263851834 831098519 528104556 802340800 218119845 85084506 538731290 585383285 116879270 182900941 84978131 104678505 531771480 715579038 543256980 711070280 564397995 141250959 234043238 111567402 937611645 770186027 992928886 574396052 220319674 121574762 51602208 521949009 404292934 202990188 577297880 132960178 616045068 52003185 235916166 417325975 638467344 906253610 341781018 154863236 880591690 390375157 511187446 534274953 720016512 63349118 545112528 967292871 89612025 842596551 31284662 228433740 325740067 735150508 209826517 686977508 460221420 673744231 137606674 576760878 415293114 570209216 267573900 380603980 967890943 43739154 53622642 282749113 531356955 962409195 29407653 622166094 922339400 611182423 7706186 668974938 143201861 845691728 425731849 461656376 650256217 492728444 31652294 517047337 207028290 702747260 755730453 528966123 688276809 333750533 197893925 413400402 313719562 953226700 305364762 238104604 595510159 580345106 570457517 454748262 983500993 798186256 838463364 708423158 91110108 592154724 557674576 966157047 19021757 976962576 401312327 866249878 586872313 521918338 493270026 769125980 632480739 157899811 847183465 787031492 480977314 817064467 77837558 895815834 750492223 913668766 334425296 590423640 90740026 559304016 513320148 252358583 871478593 378012925 92025049 471282567 916074536 273471722 571441793 101575712 956451096 71610193 838897661 858062921 73805729 89241812 718583609 677954470 134494975 592073015 92640796 38405448 728790522 241194594 375913043 576626731 514368689 332270932 513679689 827385588 805343499 23921236 791355422 517922919 848426726 182052428 260850340 750526843 440663771 939675828 611379946 932464611 734543511 809294185 994493587 777977548 324518761 632135436 847985372 141054798 779753273 525260545 280589692 620084274 295163255 672417019 369121758 125935665 864438159 719795212 615109753 964829895 720732826 257041119 207074529 783770621 190304939 199584357 348279783 405172505 413537325 646072352 190053115 965282070 986061376 621307383 255635809 662128590 624575967 274441080 477389583 753102510 624003477 862509557 511704740 748387203 498452640 207891410 365349602 901540527 576172909 791466660 661465390 924958989 609226822 564262848 302024465 251436291 731196150 17110601 610615570 520816990 701652023 735484474 963217965 922374686 916049476 553884798 571860914 616679666 439304798 524538457 17032921 228221953 563264907 571082561 439199553 678797481 367518483 228136606 235266442 34910829 447836630 465236783 833833848 566289728 460152965 354290065 613977099 956210544 297850543 593393954 742638294 468857245 194979090 285857596 650579967 872752079 405099573 257921084 783453984 667752251 255199799 741382624 950702651 850398449 43724951 451562486 58868609 966927715 77495660 823437097 636765345 695115988 524960450 374117705 967282090 10694320 274655920 136196377 665774706 317834772 996262414 317137480 246942241 856931136 620073153 243308980 903384976 786649273 924047819 816868861 856760400 999746568 442850626 557672972 467167271 768239328 973870666 470799685 183118604 971324566 218217302 493424715 790678916 688379955 653175282 458284952 269744103 412633680 137924825 543167294 534168732 746494294 387119125 146370663 820800606 458001479 370329130 408640034 459742173 177647783 322709356 968162681 615332898 790005967 97901857 969825312 603121409 308392302 899861808 291294822 474716135 466677775 878248748 794367348 670222951 397192649 745608135 754964598 194595217 432594785 273741272 904417666 402882710 344647527 883365650 580025361 858062616 894205428 409738593 336079752 847534870 847456942 861028374 765346658 148022665 846976350 932407865 834024735 577986896 104018901 294063268 147689693 956421617 240259436 328436256 118931071 265769593 832681777 579349582 353217057 177693192 541996409 140327380 384635769 77864343 39401942 852025412 637814 96314184 685559929 522124061 76599827 160811888 527542034 180048010 717226926 864380509 934216352 753688240 467850178 488171751 353335385 461315494 680343062 121571765 607223058 865948965 509815624 668191050 768886815 213550903 669165509 591162715 53224200 913880473 857249359 490734424 544289333 75135263 75007722 723349451 257972622 690925539 144174476 567194918 384984865 886360134 182464305 74703955 148682973 246872019 648505557 710293484 881079696 350616072 841632267 720207393 323286295 608159878 188697469 649289120 437230063 522868961 657194566 74078092 805371037 979485831 748283781 228925968 998625081 94948889 663746893 75725095 569111453 779911500 602496476 511116797 939964663 935459538 189611026 166126305 823761714 29302886 86999038 116970135 423862615 324525497 353433818 426285962 333258304 539142143 791552033 983742694 648477862 695888165 334224525 102550195 15799070 158798930 452392102 864448582 872690756 967712174 919322076 98357214 833868127 902011465 257451186 968034319 607684160 460808584 208527222 716662965 165801650 964498670 443510662 125887249 603343210 518823151 224899933 434759802 997825960 972825687 422721531 166795650 298271458 702879462 160187959 540554389 581881513 79080128 200242477 383758674 579902440 833265750 507611210 916644246 477509492 833803769 163833447 476912824 137380594 351793710 412375876 464993222 425212226 183069828 871641416 296508898 310534250 558169863 682525274 557524481 212307015 657662315 525037172 602131424 972105924 533335336 34082634 248085175 391483959 536073246 738511566 80954372 454645163 395483098 560108819 464660856 45000310 293057022 876090639 800888268 877565270 187351663 244111817 28991611 845886621 30805555 769545760 251834742 456272715 907385756 103897119 627036716 380108208 84544236 146441325 570351476 507884443 491092517 578422972 1145300 937989430 582375870 475453356 837197558 751472751 871843304 292979438 348369256 274127109 816423172 451084842 269916237 305648259 300226853 17663187 788981292 591032637 918379009 539888554 816267066 945828453 194756182 547888388 674577444 789388576 200908846 209644370 94364294 549495932 635804783 679560366 936044264 216744871 348116445 685782004 408208788 645125131 605663065 93459184 634722855 973305161 648129812 455343413 590054168 666566377 997289830 902242514 844069053 99217005 155955677 444512471 16475476 2979468 489026893 145000602 592562814 796507178 82519878 627164029 545379624 615970458 269394587 748515254 152752316 930847289 555508679 293819500 297048308 199730720 112528898 52025089 791350125 233292327 562633076 825518734 64135684 72193894 364258064 610293195 365769308 57368056 364447766 393625993 824368361 170195385 173109189 391586237 654624080 21115978 937357390 180108611 487406374 567539541 948393569 5104104 81165186 847366405 436294160 623097386 6098949 610018011 696994406 597518431 30051023 991001027 824995463 248073888 661094129 770011504 967249488 107981937 739033099 380532034 924870919 120499799 459195811 518031991 353884268 396300197 941611332 263140736 710900032 276043839 79979222 89081848 459977281 752328086 673947544 863090490 202405008 125254726 884637391 85623983 242299464 928830309 381598243 977860421 401372045 214218389 248769302 262457794 201035785 428177116 914434708 397420487 676655071 818381433 810894438 875046877 504506966 199017114 605961606 313230940 968520667 27775980 493449147 567033725 230417733 674904847 903868735 720025940 91820348 853497274 438223391 392601104 985292098 702337254 734092818 272697793 595372701 364081104 752678824 298623326 190426138 803829942 176463001 535087264 420332632 603237213 650101878 624273290 520327433 161941597 768057513 119205870 207054182 233266447 514246734 469480134 385500750 607590437 319376468 727608857 981538053 741215195 497582917 494263433 423056491 20352440 940429885 761763217 468794853 563842285 99816009 234937443 89970625 620132932 592354477 503965147 250737383 139211906 763912685 796694533 587927147 948795556 159472313 224468674 828536853 767933277 811652212 396927166 780758813 668997645 675171409 74008165 191962255 365158279 791518325 741548828 95613015 672647027 345775107 777031409 25542415 690055260 955483436 690291175 569043341 146454277 835201049 749799666 793488753 325305806 449602931 585650013 70941649 689794140 750367473 590661243 472388842 818141110 18123813 933582314 92217482 799096009 234833870 946884656 852833210 933224693 194093213 293657854 441321671 672988471 326436338 850232786 108553321 102401642 69492146 175999182 87329439 623553973 422696441 993980361 615854606 217804303 484213288 222273862 331116435 787496519 634661310 350320716 339998246 91944581 390067996 790638298 300394834 739501191 501125375 68757345 136333098 336046446 8614208 983228665 218110340 863172834 429774451 441116210 378374643 901527477 694029762 607146575 742367344 475226608 505584996 677123945 136934789 175030500 820444271 39016536 235448782 739178991 259668627 201710229 28567235 790543617 913051069 468093794 956443064 641374067 968318401 554225229 285948423 792940522 136897343 113651362 516070815 461906477 480719985 716018183 375622623 893670822 521469018 821906849 819504840 397858018 442242133 55113139 65135759 454787160 295318607 389052868 527908973 484747061 97403814 437223789 855587846 287710753 617156906 457662487 87492832 84202268 24852714 315487142 575687137 95792766 431327624 6957760 468697124 280825596 105626442 99180953 718330646 774278489 214811634 619500352 848726295 859962821 544945080 135254624 300539017 236698160 694555552 804515323 850812964 594118407 329562044 922550798 953751716 996319461 625334037 724607053 918869657 961840664 588862259 750464408 460354929 853235497 668597308 601946425 821391668 831374272 385780303 906590585 682791560 394899870 171084718 25666107 276968333 531161455 719025837 408008704 829992327 387078444 695895134 671898564 855179873 294750450 565947838 338743224 370792756 276570380 514705584 281654274 326504860 282591926 208430392 958157238 405530583 583804694 84411128 529454700 748450323 173967516 756095076 700814316 595595966 277862430 354530155 171590824 862534717 603877128 860578773 805567015 476321251 666860881 129365094 660803168 372286267 407854068 456403970 953620423 523965854 51983193 166641972 97261389 256394799 995725972 931823215 286237840 10041919 164225208 911532346 105160994 510944138 497343318 64822425 535797913 207228729 269497551 711839929 144086679 503010331 273776134 304044001 534132861 551767498 516554386 842015049 168818412 964248975 357267009 844363497 154408965 933654673 647259372 545669360 797724347 113589767 753649216 112441732 921886834 653789781 609864531 685521122 678733988 31002159 369372329 456353895 334891613 142222592 248046442 428058157 630460517 41992222 155199368 724334249 826684477 94666047 99263104 873398297 129910401 448759770 227164331 258259897 503473738 847984817 906771581 326022398 357418366 552046395 399434939 952605428 195001436 433642689 412727859 375526042 933415380 37183087 355721143 485155276 520735397 567518766 51133242 688816753 258212710 508008286 864792499 263928180 303436563 788116772 675013173 103946382 457585489 392218724 891706648 308894994 668731480 798092058 356404719 51979267 879696293 260457525 58534876 892309575 365348366 746839761 948339117 991532846 167115843 318406556 520637013 997295450 741341233 706753938 523746723 32409076 556901179 943849265 174381323 758039656 177111008 677599990 331222636 677722741 287307873 795196620 590183236 154600061 201141023 998828347 257698486 902571652 214432005 854358598 726822022 157665681 811907207 772134059 413101591 380229150 12553456 35088046 891352352 815458495 598145576 238002870 736922930 351475832 300659623 533019905 348203895 930250273 179047770 339207692 547730359 472954292 458284515 491334200 584840836 487617557 51183967 995096513 417639388 433615319 805690914 85456019 562305907 837374273 593703378 647010050 867189811 987628203 932575225 483270842 555274957 49450238 6580453 132153545 925358478 13318755 904857482 487861782 245904376 758606033 577423603 436789952 268519521 346883551 406972525 559043975 507634259 732468740 910359697 297353641 323512423 227557590 852163501 57594720 492561023 801257208 485780352 575035510 887467207 882066176 157176605 572273276 999142844 970106700 301812683 112807102 214889605 72958649 43710953 645658234 523908617 955571167 959118246 693761859 335561626 678509505 41066078 372794201 390695699 140645964 483432929 980512114 708846358 254801603 463337963 618522744 899938710 657591869 672796576 709912509 871256305 273954502 135549391 348694329 76470374 316519729 359647890 487108889 317403858 242689925 52494265 82824803 431689146 713640932 232461316 204723794 820424234 764951917 367745192 580214770 468908503 190453205 669944219 929066657 30296228 225228699 462293787 102644749 469351810 237662967 225479772 94484682 942335160 99225685 906438850 114054226 396328314 627230702 125055910 188777754 216731767 896989381 982430799 618422542 26757565 177713900 690720934 128859400 783364691 386036242 366971060 352979892 104461581 712287645 817805604 583749625 86818987 382779667 510099874 306449179 801082452 344132676 458574914 866834275 615602809 360483074 49926693 36705635 263785331 460591012 525052406 731948860 399627032 831093607 307017570 557801707 252695489 314476766 223918501 894265110 903713997 82603010 43891907 762508087 498431605 371164759 436316884 872964435 814646522 935895590 9760266 391904860 711767202 149392139 2791544 680272514 782974745 85688639 479055321 143316294 570461111 388145956 847395451 694253576 192186177 583798831 963511531 606974211 327716667 965334382 637040692 681816192 515984560 126067188 959663412 306026982 251866200 766541283 388503182 135642468 242423921 984168061 945134658 666054276 951901241 368588503 509608653 77163985 833136306 956903937 29983908 989844969 434635633 872098987 324384252 225362117 741239425 577387138 801450832 693938682 835569862 586715009 402084355 465102877 757602430 777467439 183982898 909367339 844823087 122353346 742417724 54664281 250973905 827641001 174428965 459053264 977791373 946557516 835527874 525078902 714301548 477576119 422974975 474350843 108859849 619441794 120322664 811428146 647440231 636008780 735720678 547206898 454135738 107065883 873419913 175854777 804573038 382526691 91199402 439107116 533602491 846365060 22810115 66247096 864843381 78269772 700800846 295130553 113083603 103257018 476678479 464698464 773101324 867194332 191395904 14669708 949912690 645152368 700311816 776484326 87323840 656688169 96385829 81883253 482632426 631484345 545173660 302799025 579232726 496105770 486579559 169894158 237398028 111637336 199526964 132843884 429662371 630206519 435834788 520447479 200485696 896953796 68667543 660394211 93637436 599641457 289645824 62429938 29858053 814422654 488597335 332957540 468129861 184659025 75098627 720937869 575644633 458774480 86371786 668174270 516680797 101581968 41362661 271838116 608927086 944783306 965769368 120565176 207241085 960460855 70106452 878717667 582265089 614957075 599762898 379629338 319943217 217783240 27768152 788986323 465348924 283607378 172874155 911409426 374432201 916182011 907613717 290990841 273122930 626934928 477170240 936641585 723160366 141183131 560152157 226982629 457778091 757872180 328065842 492471864 934041497 563087820 847327382 50537450 531884209 523298756 972945476 620493458 313260645 269549215 761074016 344317737 978916047 72582767 301720770 204649751 985841998 640911281 712144288 742007673 374761902 339237398 78864257 154255355 357887902 899895159 604627043 109331898 27015892 505060756 120615204 890594773 499491075 610953995 978853416 665180945 115383831 385252975 333298670 388937124 658870671 853706147 741999963 521529437 36648124 135195400 193379471 143137787 409304024 234557087 588577669 769985085 71670108 358766450 358296513 68794548 477147768 820792830 539935553 217091222 665059635 730476698 674557233 87321997 535417733 970109875 222367483 201178208 478558935 243133789 111025474 677533709 375048730 490075469 123255068 489498105 521811429 763810218 158581146 60042895 175671442 591284668 69423435 253045031 578669839 493087055 999415854 392793720 627413282 969245598 709885632 824679078 128034235 665032275 793383228 166778951 712403930 975882016 197193534 821356404 762943548 170205161 928693884 527965532 244881707 417593666 927310028 198127694 628819824 770546180 468385973 433585980 248093293 231489720 505642914 661933751 258645204 330975434 793021283 977433623 150554413 366811862 215500996 769696456 574464236 690432014 388453582 431855043 629298078 427593890 472672439 991882521 531631419 164625477 376981223 490773250 898409957 648201405 510696396 57995364 853164675 917115791 781580380 486626048 452234489 974012978 194084862 789517434 940852971 745990385 99857813 738449083 123064863 544991187 801251337 12181932 488314918 166627765 235451536 809210017 81087175 473787315 186725950 963453837 582539212 291749731 917312435 440285324 770440000 720315713 646026384 322690809 30548653 287509681 314730358 833067559 519333890 20149353 829363039 186285573 861067369 618072507 298950508 749451560 528348377 431501961 58229992 437036781 732798867 648755173 671329896 787462340 963397939 516652864 184714004 135170863 14816850 849951884 14552665 941472702 954140923 435909136 593179113 648768075 904503439 210791295 882172647 251007562 806490776 671792979 747461101 558086864 686637795 847387862 180841169 356085472 938101606 30031874 955679785 989059339 65263461 916676761 237336994 853620437 124441283 633099366 294567486 78073313 443594504 320024613 72647501 96953156 143347215 413606789 406638452 136513300 836683353 539629386 986341167 19812609 570453574 930340243 531897781 519197527 633911908 933513002 671597713 736835138 817960825 872952383 715426422 607616873 378389701 129530818 999537627 267866854 245077578 43880470 300618496 336709370 283217524 752654156 493519601 848512068 432113274 555007986 893009144 81214454 270794361 173206927 266017038 900577285 948400703 427799332 746805087 660325717 499304435 736846581 298439479 51138470 388796108 248472640 397670476 936553639 290690924 592167635 789756624 479168430 383234785 597424274 455797196 30321213 754694508 531065552 389091635 774072038 825661900 480485423 166211876 352365545 596683871 732173954 601600824 693146177 266980884 190742705 140544477 564408583 504150622 401046528 328683685 45952526 874721850 508792792 206432156 498596491 121361991 55058799 321286748 388937974 510371229 581561505 281331403 215955500 175256504 841610516 146316466 775424258 630395949 411280862 228490568 716584773 834855628 155213026 261115261 949307192 89461657 462540649 779033858 751478105 149336862 36512663 4432482 729779303 982904955 3460269 223856045 374222012 704202022 595776158 537772762 216310655 261058507 68458193 741209144 360953229 713495978 838170778 654811491 707358623 966940734 386629229 607591854 673595800 673172415 862485565 810066286 176569863 769699761 163575092 374505543 798213019 257623248 890061265 952580465 790299111 211398792 237909236 289794165 928212546 257729326 166502640 784314026 671958329 948449781 806622410 629539355 481918890 687815260 16519843 787199298 453295160 114470663 422121950 132613732 715799617 199953978 393324431 738825570 823379343 995983771 446931028 812634757 406444201 345020489 207405319 327110969 858175812 199908362 810848016 201898029 637617538 26871190 443932686 468701865 975264560 41317886 37330896 978709369 858502156 775786618 981670876 217846091 343498567 895711531 369869601 339768944 966372737 75810662 262552534 250276305 278685606 653041111 432311087 200512489 395377819 843615354 125698626 501658603 354638799 711337145 279219570 976359625 940734447 533623870 201162083 872231564 219287953 273843844 128755303 771642049 256417254 433086004 10730615 813727258 620108730 893908883 460679125 885050798 187754968 686205974 108435252 750223700 34690923 264841337 590485909 466797373 408603971 212901869 901237055 448109219 801085440 907118075 17259359 33100146 183636975 119017 814047627 729464226 962689903 719918586 80204450 374869882 165829025 479755128 624517622 703675107 145203613 536469214 735811582 25302668 787272087 38027326 817484854 368845583 858880315 608554460 912751408 359072475 327583039 60482861 208223399 869075583 540022949 111758296 612464349 305545799 892628534 183221647 448563601 275006321 100362982 93880132 183446448 716336690 362189732 884948637 963121104 54604138 213157713 789635046 892531518 734093088 405053605 169037705 153295083 693483502 11281487 356333379 605317832 733112517 641281172 4170734 277396509 998902786 532031643 542440153 268072915 100065898 210768267 334971615 868441631 227094655 528445692 479203782 865643432 756498093 713518279 51204195 56076752 527320625 10765263 351394240 327642771 296782438 463316579 729474341 49012339 388002381 340860534 668233221 78552342 36032909 64379448 308968764 952123329 469417565 375887578 633507341 268018544 629135400 664589922 450478770 903569668 503258244 747291836 742113317 242493161 25077586 425865414 58341386 987687108 223676544 17143103 407989115 247262839 941322421 728051642 426568740 215283090 626189216 551447139 47079372 291942504 627154374 935142741 234971924 57392941 192925510 538527285 973631170 554178795 379046088 125915884 566106766 476173452 54387931 839983824 154102825 866433690 285140984 870153422 428566720 520870396 12982045 132306591 292570529 837670164 84261447 578582012 607714170 414052596 729577537 867612366 38130766 710885009 4974202 781609705 235892413 911190535 745300225 744374685 717173971 684396136 219544593 265135936 406241572 751296543 980530862 117784100 679502164 295742560 119953028 122967333 689328842 401800100 387677794 92694317 910092782 608293827 658113119 440788425 187446228 859570669 834432924 571705646 350095877 174184855 568449873 344141014 497100370 318690313 127896416 91251538 540283255 475506221 975800780 443005791 33813716 772798905 45809956 464080246 990135919 872466607 753322198 697827816 517707707 62101260 934640582 534334472 49322611 256349178 959682250 590574746 351272115 265964213 39810773 708274306 760152688 530194999 263930267 296634389 607564792 333974115 615254491 274583904 352316354 222952337 525636268 978680651 47781382 540872066 538705425 961222267 684761069 54116981 766330384 642732911 793920832 251141059 353252109 91611105 608921552 504972814 884491970 223153739 78354615 313001120 361272192 352314756 181144141 250652451 641965340 718204144 988189820 850435580 836404365 866395361 229198224 976513086 274002927 634474522 909432841 896735012 21261328 186527975 139249894 799084618 774754455 227912165 616246651 779392021 889376295 5934226 505246477 70502319 63473680 165216944 912100671 756039900 755821564 457516223 755433092 982769510 194041937 88770242 634743149 382223041 88678689 345106315 303476779 94542498 494449892 799854421 832323957 522115497 233114339 216745822 101365543 456280077 826693752 565399621 697082353 326122993 110379322 550317132 16597704 778595792 311580995 831814959 818954791 35090734 761497306 586183564 559695253 749174232 797729325 20879952 932113337 657824398 912798087 482490766 109781765 961170431 791036131 867738756 318270265 661418236 293539687 858405669 520513937 945868864 415860435 423882467 718391968 64520747 991795652 505798680 567161690 890520316 151318555 474138260 252279982 79797854 552969992 678463899 846798148 960405919 47626880 56053893 116340900 727139816 732963612 282168109 744123382 92587200 466730873 70141204 296829716 765246139 643720891 557090915 458564260 700418772 591503475 281673198 345974646 427896494 993628744 717698392 928833536 56084967 901580485 498337551 377625279 668478449 987201472 961930835 826556948 702628482 319359382 616828430 833415219 39681048 755731273 34272633 933522468 166505581 314408599 251320295 613041290 411909147 970651627 943401226 108127548 844499216 798459561 343670283 424703491 784133773 496161827 131353499 214057509 797008551 582097376 271098334 740873477 837464423 776546895 720311719 505213222 432570846 510822797 448970242 191139235 977795665 784130755 803467571 157988354 879968500 528441332 168800856 625184291 919477171 265940008 764922367 328927114 338684116 948027002 466607760 871711800 517292157 325793588 162390319 718379370 722046280 294973154 899114010 14780447 428333552 405344717 164040668 176492872 996467665 758145492 795600626 253569259 143767931 334797926 519904274 918963048 1524909 147044774 761406160 877608589 182062913 764286378 139398782 991484185 898031131 786460932 966439243 445423114 122170445 361853645 744879991 941531630 484908630 198914512 54173739 640744702 622760540 117699036 165504420 496568945 328544508 277923805 522536344 264920939 193444330 926454480 579991695 447312540 965865163 837166394 785635436 17526692 947255182 843019782 186281327 559960983 90632477 963168377 173719587 720226368 152580686 668595625 863364859 272267676 591529889 746963054 562477741 151616490 414904380 364492514 275426690 906811585 101837250 955318077 628237576 616730959 259445295 614018185 493893423 571009032 464212035 963270373 459036679 796389900 561957481 677298893 989723258 494329600 997881643 539532987 71759245 308219635 246471032 795131892 724504695 951864019 205943398 349719978 120994954 538274805 38480262 337740946 327653369 645491853 343092276 78202940 914104883 915386804 418268731 19091416 539737617 211481450 831313026 837469723 296935541 364267478 828852908 640202583 53814893 328644083 743679381 15865728 47921129 854947218 883704850 374661198 117096855 114672388 134982542 780610568 727234541 155646331 510872100 454497022 202846660 881582731 760572107 866048988 608629122 354496865 844735371 847421494 944400031 937573972 420309855 823316832 635656309 381490243 748784112 153356679 284320175 516358688 257414153 327503758 658152427 882293810 930802116 229907403 637478315 702304782 86343759 261499197 755599325 738458215 868961853 527238112 825774767 647134000 556674509 19210136 794975348 141981240 392452834 255246199 120532670 266523741 34896935 347114448 624417129 22822784 622781742 667281452 788624780 536317613 525964342 175758907 355561186 476144691 311166496 658593951 767763340 379949772 812699824 321018645 850537606 157866486 993221181 917819429 66028547 307493792 196939010 752924819 393388554 534576487 203067079 769746559 554106994 246073013 659440567 588932001 514588301 243713951 82456892 853414254 887603712 811703807 986225069 188385911 954699971 393223213 185987987 616544710 397456058 745392401 105621402 102975883 735734809 10456278 285835773 310161399 367810540 954973714 176697554 846931557 297892935 625822093 501054894 4188515 462010820 241155454 495412966 620485003 460129482 912494103 272963840 25903100 940765466 197879239 692426781 626400442 523447924 460844113 786673680 215458213 851674701 179926755 543322207 250219707 368345192 544841527 306213555 407270549 43631455 706510221 557951301 145597044 900530882 14009344 542793013 476173225 588220178 119919731 163246231 104348700 282829329 40341503 119641449 728993897 759692275 304035571 797937226 16139850 823168043 639534547 783001173 522609260 59681585 809471155 7545996 128544388 956361479 732475816 775449743 424542723 43130491 838113143 554601076 863868171 724910269 346609691 485176566 302354194 209600319 584330013 643443805 700801499 335091062 837081491 451635718 416300983 680513472 58486662 55482627 489542205 363043028 745575457 915337399 170560994 621741094 765510411 140720309 283855665 514176223 605697170 410067914 225772279 394694807 885442270 438116314 388979847 435337407 653949641 958278239 186441935 656754453 913018767 664001100 249410766 653226703 347346515 344167054 589094815 17491178 606216022 406114272 16718347 265511218 976516577 637863845 91154672 777658292 83679545 177164132 353825236 701594873 212880118 60987959 834335066 828787280 57577652 449429404 574228953 155296470 106827557 56505860 824484851 782839284 739444993 790673340 692133717 93771291 662052255 993696785 387970326 157824339 694347831 738479810 617085824 512715533 330659059 205296226 488446666 781552422 290714569 292131972 100702797 263343212 317852016 948734180 113344478 5473093 172329104 991913623 549803312 187406839 248720282 689284984 804426452 48408219 623087694 402357188 627542594 339871890 515463937 523354806 458972798 780911261 834493200 417121118 108274856 779640917 398049046 271656024 283210071 46671117 991695243 705563824 921428042 827930634 600917984 418991864 268576698 132902414 759184693 109234897 604097404 795503191 353182185 741673882 422941850 402099102 926608936 751888260 371133884 701168458 420150939 292660979 245910664 708187259 402716156 466649042 571111796 839072963 759159725 628110491 314729338 990737365 501988821 850889503 127506180 745750147 431660048 529453689 939135380 744723277 675416732 482958557 647741028 523788779 910425253 334315830 30092529 580337741 308029696 817432023 528729388 156051988 797531244 951285682 854089272 421589333 615817216 320380921 338620117 396202478 503992347 211684829 516888081 318172704 353394822 826052844 971964883 692020160 52557617 726185126 689681272 844835953 977309429 875270105 263181280 254823388 138016363 641193372 39962629 509716575 827371114 370234203 325635298 209127445 487267517 206580371 694302192 737472500 165510198 675541298 33848773 127984981 991877371 998859999 419035522 210913888 812860836 501945847 216370828 663488087 378423828 984677259 806465511 611967498 201543004 278384750 160414489 987725952 224035156 980807589 942470401 738182811 696256016 40802532 658993529 780240006 209404005 850336056 484094540 494042946 902717184 201526772 812554875 372870711 917712993 489472815 240552143 878607537 33847567 585268391 91876187 51578253 645216436 874744045 532425193 246642257 371554630 130993802 493471816 68796796 797088843 205711424 709997320 967273538 713652448 9724582 68771277 393153973 952985860 583713083 81653893 678197509 486100661 172075261 942429607 780223198 345997229 762963573 455863871 534756626 339022617 670503508 483321685 698254612 331396018 44147893 185202863 298668017 263752442 5169880 395338752 616816181 45264618 317388221 110709013 435662970 204359741 99017505 613072592 803948099 65438493 81545233 148349625 863713156 840135186 362133900 720427521 571471187 472719690 925170 624385669 48790990 98160238 672219022 51378793 431165445 37429276 244626439 95644823 586502403 423807124 333399500 403164573 303975823 322618381 431091837 190154522 390028429 677320597 185086304 854480927 136177459 201883650 905480418 310236997 644989753 407709485 232048369 450182797 363535021 301791200 852098881 806682616 966028737 480943841 313280555 365692936 341204474 651017944 708723824 287884949 556124623 155793708 327035789 671199997 135906717 422321364 226465689 434223282 696060353 216047197 495901027 404876058 670733321 759509456 607096141 17693794 574022672 10528188 332165415 417711831 7211928 350867466 917659759 885487866 186866542 69227196 803938787 836314097 716244815 434386929 993521200 143694026 313082421 87669442 323795168 188735348 703292536 843218625 828684404 612466529 899698520 926717113 825076767 221289838 798425396 927841250 678460014 859388360 27960499 231039699 560620197 127347459 816700655 776466008 794400657 689963984 293948451 797049055 757302776 396135262 837067443 938324887 473044753 617428477 194605356 11927773 450474970 495017085 107610514 124194722 381502947 489797621 387232223 905978859 182364844 830634352 710200449 762107371 983876364 180009992 923411761 445771600 268196634 147434021 590978101 77611161 940543549 24353285 736105950 798443951 225296560 703912891 70839085 551431236 949327758 829409864 706402082 59165549 966624757 955171729 695346958 9426855 432205982 737441642 281359578 287716839 330635509 207053075 17855246 225611334 927805169 666997089 250103421 652354537 917255797 136412698 718612568 818765062 535927328 743381375 706375445 177248256 990692131 477832112 441776249 906620118 867336517 136008820 87599201 155793202 319945700 424691611 621839720 758941290 801495578 806366238 8849900 723481317 628941556 734626676 491464513 853343002 134580141 623971743 256308212 795258433 474787910 431998963 278061505 429820600 605769207 556005325 38050803 152125214 210700535 63735401 101998037 318259575 603409615 442811625 251688000 315638404 559584260 945582236 952732585 624034026 415641211 218014770 385157223 333006627 964729148 70349752 410627860 486321773 787601319 207338253 908796495 854539280 494373424 399401474 82935053 353287861 459636093 598451259 556925281 340484718 278899854 896655941 725522401 920538660 262907819 334199284 558884655 748593283 576561972 671436075 124019048 64490498 340466123 704546675 515920348 450099873 914464019 569960518 850891520 243665344 536183696 214986435 194995081 887357001 940431440 854372532 565368182 454564103 593256555 9788557 728407851 575988444 752931063 454790787 267320527 226837883 769161079 102505664 369361745 473826757 100192714 630829271 50737475 902075471 512236293 1741403 892202800 667781763 749338358 393437942 845623131 831737001 550189099 452178281 726506261 122636591 395361678 307712342 912471250 471333734 948179749 142812197 869277300 494652819 448131626 379670430 56930974 848657971 223063114 677515715 730944305 544730053 736188519 909083981 3568476 99626229 606085247 829094176 455585956 341705624 702574391 183017210 133193163 826046129 382486782 969948005 121957002 635517165 658581218 133983790 727062845 177083335 204575848 820211465 731455463 277750728 221383321 582513089 478880248 691856030 881412814 910775651 939742774 999037257 427129478 130300096 223221031 193203550 271276473 365626678 505715607 431677725 706245222 371007599 81569968 845203467 773465455 210846681 62159332 551251855 108856483 912204460 844803755 601656136 658258653 641756921 329809240 571538913 820152803 975154635 152725525 798236014 734651880 905692167 577035454 938695920 869501542 874664423 171402624 174838547 182921248 225995140 86759149 194576525 765241967 948634721 788661929 823142433 314368398 566878062 613449274 352820894 97113249 240309924 863912135 334296591 780961081 492226892 383785702 323277104 643667701 103676782 89881939 253741765 114399189 7076681 961726835 364428311 524759728 413865454 638542563 913917396 516555022 595650728 844599590 382305050 716705987 762587557 921661791 861718437 567234156 120804212 235087759 704655904 346396466 261676559 86588268 18945173 78190061 359373898 415238563 558683527 428884569 437836183 558078696 304459843 208071646 20322770 98704715 148639345 391220801 910233323 778858868 894460622 627806618 948812599 191441626 840154471 414862203 329146445 191164190 572333637 370135905 285239979 26319406 217323332 217407862 201778762 235497474 76265632 133426251 443771768 646187601 107278245 522152483 165811337 920884733 812422611 679023079 376943898 719854270 531817285 823939018 41116862 7794234 567640105 827703366 401246467 648639208 824474567 22635313 262575041 708716146 355171620 266673399 752204465 189504419 494143786 282249197 48872650 423646195 697586091 935037600 52204400 409026969 351765458 935398453 463320428 564618424 208839733 469323912 507990619 903245622 276990232 573583329 45058043 684465974 180510858 450652578 161911703 891563138 329424068 853878147 524266041 41958819 477497585 172555122 283369 667307285 443265169 286455168 574532667 76900381 540116989 215569536 602912673 1318650 186850755 927110099 761972574 770713155 197240854 717930502 320377702 501516525 662738945 960394102 204551922 193474380 304611908 922870441 233844310 662368650 61250258 842883178 115716799 366277132 430165661 202813554 349511651 992287379 770722759 974889751 405539138 792398136 358779653 557858224 995438620 94420346 196323038 358290048 517847763 539267840 106432109 948267719 522792243 505276234 696226890 213567552 387304122 787317097 505794150 637722993 222561383 850345582 816178204 5189108 224120489 545745453 656423294 428125084 544191895 850581838 251146566 849857171 639845789 893912903 620765008 483705256 173419126 844939532 859331763 493736227 169069290 713384761 312176647 77924056 699659407 160769025 769540182 81141178 103492473 355750340 763445190 867590476 857723499 941112333 123451978 965858867 651928344 754128879 192094788 330901758 479973625 623805541 858282077 457199628 751692162 118185529 901220631 546129251 811887815 786151490 188430879 687378776 160724407 115710473 391242962 83925275 291195406 613524669 447220361 381588177 429090338 336014267 269102554 197063257 462168447 237939281 109531239 827994226 385193507 410642284 116513371 165842912 806532427 81352603 704305897 899586454 701665545 518539881 337481989 306500469 497821904 562841877 764647924 779676467 240246114 18538349 411361513 8121416 968420261 590008557 571555063 595209808 755399338 338355370 549605714 671198592 616523865 933895311 877752343 400623320 296348241 198463707 614622692 605054314 116254655 896244234 251352592 750829368 678936250 459897035 352093636 514087450 281828243 417115680 919239206 652198836 154973282 992711590 317486247 501125302 844251521 692602876 530889464 557449371 604632 576978064 25871785 87179495 202063205 538582993 961149956 432829235 69629979 611147638 626462083 389408228 800751506 575304514 731784838 302451141 920453585 153837392 614872285 861447354 640050114 708513009 625584087 831296145 619832138 725561700 448639427 965852492 852211058 324875409 524974219 658351762 596481471 932724778 930856245 721958165 258508660 673193069 288604608 474008113 473540848 722140519 114707151 556245587 74629672 881139175 386149701 738828352 838155494 79325530 304432731 324803084 773050809 681952594 404593001 536713030 134348943 271853654 564764797 221518126 822367027 783665542 939066425 87853655 494615468 81951816 289607053 735804962 168041257 51621499 397652253 906682464 837345638 713374340 774519959 520264792 959283802 282872014 503398535 732712437 704499406 661014765 604795076 30508068 44756174 125866433 721903562 6881223 909442274 346056665 409655014 168045965 395910709 28617459 804297831 366575427 413111990 911213843 964442117 627114067 277932064 110674515 91184688 491989124 517756340 480714674 916563190 195463954 496059259 614909872 855102082 144315083 616129824 661966757 542484179 514130103 271823724 812730083 234756725 973303375 722240514 618986457 961469829 718046284 144995344 751192057 263578028 915674389 35010222 532706083 798350310 241925935 331787932 637567362 391154380 426985974 346143749 761298612 142786364 560664394 529742920 275263451 691595579 953807515 132989945 69160892 178913779 446946747 839611566 770543739 813180384 679512542 816221112 98281301 707523346 477904892 766838478 480327531 607214117 496658007 263870184 166256712 639214069 284877236 224979832 530532297 766889264 425289730 184923679 515148337 698044127 710197997 255446075 826805568 329635112 550739331 611231583 906732390 118504153 287583813 364337792 128700473 952106041 749728038 985886066 346888635 89368107 525872259 868697627 308722758 268582323 426451571 977922187 86688314 266881501 796101221 472720456 892448091 500115322 209077047 862420156 89612633 923373361 399806244 861311128 203201675 167042189 663723528 304467093 950749179 442669209 472241587 216139939 987206347 739458490 5755211 884569151 128007779 567754086 927150080 800505064 208948505 167399258 500170085 212228630 264646059 63734041 830508240 892608498 94755371 451232194 334421358 935072618 610139302 73021306 759303004 483442719 500713864 256009939 966106344 613811683 946611687 782813810 879076441 187654673 397510428 942601519 418123287 492974541 857621912 488700046 61859607 784513889 666330639 900906996 250906526 209587568 602985988 418039237 357129508 801086075 76327491 159213247 57795503 306572302 143537043 336781000 815115201 573864002 539950731 576659358 622065133 278842177 124909821 523694691 447431119 179377787 228529436 312295800 522244917 651613670 16958724 819151064 544300260 363526742 510875367 921236514 685519749 286335683 625506369 341600040 848338160 993779093 7825900 122815059 703762495 2692130 715378831 518150815 808694078 347835491 950801902 693175504 953909869 17192191 955395411 940962936 998431940 785309246 762366339 644526408 9181553 972939103 594999187 748475761 115954795 668275927 926265032 775150588 540235907 471593156 182822098 2168428 621101916 955524059 333737681 399014266 267424671 432038098 672486732 555158426 338063766 872501203 421541348 552712988 587427166 192541107 971842791 658822056 253548240 557176760 590287680 483398004 50615847 517216811 772774714 317185690 330471055 223066179 168051084 380522850 12712553 168353346 505611811 342614091 955434833 707689807 251860244 655850594 490543597 197480259 277805682 583923958 151423516 48258459 463468834 946953515 808597390 684088123 667952393 758734241 750353185 426942487 79590321 984367074 214704842 537559801 601559152 3797353 14749238 441568764 895855291 243299157 309235109 538341022 973146409 84211511 787406234 399219270 82867017 263848842 841941020 967497089 961226748 614757246 982659352 74291348 535260694 484199432 531995093 270565892 147677893 123877702 907050509 31744594 509935290 954949515 181046166 333568177 33871030 19272225 899315724 762936142 273137493 712366361 235047423 328519355 676269964 264738611 71749927 263864210 395116207 669377677 171303290 516461043 466354460 648445897 869928696 27627575 464512655 291976931 157959551 895673831 542828320 212099396 345130508 27022595 708650537 390351324 261304194 237406426 656485386 911056549 859904681 966125570 188317201 559868285 483503982 989195859 229743846 408868434 6480178 951414283 37650488 525367848 38784982 798618445 667229390 929550396 303965847 361646923 932217499 486394417 863844684 238924874 891160741 555797437 904707451 7345549 586888488 44891112 548936763 285987964 87138152 543160460 978503339 123701186 143314680 698314450 714101358 893845812 910261619 486012133 784787160 907644714 833266887 784005472 129125854 301531729 389811378 22783393 972255606 211755772 208703221 844246418 408410421 9321967 496348064 460195263 514903309 49464960 600744324 886012444 48886107 676957593 3975427 888926866 561679283 457477264 49370621 731928854 39003157 27576902 643902167 310463955 671624530 940688796 25792902 771921581 221731722 127435357 329104493 838407102 969490534 30774025 204120835 758837691 685402290 892495898 955817821 909575969 802064589 329550280 201124460 332939958 110992810 285362905 242215714 811570754 759834679 10272249 422610527 587769735 385583306 782508646 552573668 315503814 822056902 281013849 913743916 885609732 105415870 401017054 595932823 215027197 933402780 978643276 791893160 85621909 151032111 305065149 340603296 838916364 340450947 125260317 820987460 553475554 378084131 638987203 163031489 144565238 384381148 922025482 823623977 536317620 33895149 461616174 482699393 736265312 597540651 771689788 935913207 145885229 407850740 664128027 132821067 633641241 230020388 863451951 111399995 969299200 546666049 687040256 985185691 392131803 678125787 767126859 733591865 7384633 632282362 777449616 382289325 33719394 400022884 378185052 281595937 772952916 732245627 180901743 67622020 204984181 509494022 628330152 648863665 619133647 386823235 598950111 985168557 743594185 79505121 165167198 880933685 40361173 929349737 674000231 247437870 997222292 838484238 51252877 127643112 959075356 429734660 176295122 774470666 381486549 621883314 201069948 323961356 452319269 137042036 637239901 352338895 891643744 580176613 837332842 621728506 502671635 263845247 188663647 571556622 578305086 995477395 579394083 420654161 877175031 180550770 366772417 558946421 948600903 971752899 562887171 624351638 23045086 521453243 7917342 604967807 640385514 198635183 504286089 365631749 149028612 688264456 979759656 641972401 418800594 564232368 719399196 250569768 510653596 732704459 19174207 504896054 878320873 674223011 167204292 421481350 26654216 781037601 191376358 232195005 200924442 246852638 119850652 311626387 11507736 42622887 672094933 896147898 981813731 698771759 418423191 279560552 472389870 540690350 427993744 419161851 345460658 328468859 86734346 391264980 698951074 798022466 39966329 857083761 536542354 150664397 125457265 903104766 15799967 938866734 211758630 51175776 812987863 805979548 433129580 811743129 260600304 954270318 594446694 591609103 162375014 251860919 426868994 239037609 490718895 579733896 209431779 377250483 5105083 368142704 358305111 597564543 888638628 937024686 366370823 81262907 265942030 721340067 39157441 418279538 721152248 633417134 710752149 181810040 974400685 690055517 1032250 984194724 190349609 250681992 622387735 260315721 717112639 667362179 358246604 33214817 158660990 809362653 295344913 912458321 9073239 709595994 851079662 941870624 272845263 322380990 501914760 168647688 416642358 543952739 775568403 669909162 222642248 750079275 90539947 915011281 28644073 128629868 953062214 923756275 208744848 431061912 471097549 40163881 532582033 450888447 944330242 265789868 63163090 502712277 667152576 51542835 137188885 942818666 547202675 774506292 751268043 352122444 646558200 848210909 965627587 725160849 364617619 839728982 881044976 996670751 159553977 306885848 738574405 437615109 422802092 776519237 26445985 818280993 17904311 910885316 99843491 590673393 743610005 801111871 582621387 970541112 678353059 469263747 200259171 656346572 455658366 649342467 234763221 484888480 59885196 828754 15791293 181086909 308577768 714177578 34305209 62764555 893800965 740845157 887539082 950750444 520686314 241404776 674638074 881943620 274706019 895633089 604524569 538194260 140524035 446170518 959792699 904218735 106487693 910116774 537600592 35503645 624907242 542468423 926791809 863765707 158673082 500139120 210072202 291971553 213510362 543211096 435836939 791062988 726200173 13436486 155975768 491167642 952145249 933600640 828203791 213414796 663315671 26683379 154319479 354095258 163799056 662557030 49363852 543619356 443264988 361744160 258986760 186074043 546864368 939545888 677400835 385632660 742673851 844254667 951519324 92343035 237987304 77412472 264714238 860800072 600818127 435271072 667549559 589837864 970476286 60070631 83704381 189152673 444288089 792913105 955260536 253336896 87034588 986267079 155961894 517581737 450125270 985954068 372165602 23701147 292105505 515719732 216722094 327697109 106216739 242434103 646980283 509931714 751421009 256506217 124059774 14510440 379989546 478103876 931536594 577662515 322011065 290747074 285371896 440534417 467801449 925495631 683616846 471019703 667010710 35378444 305303852 124346707 109921159 125218283 742594769 52299762 925066586 337539425 224756756 562738515 883840649 805140371 41218528 487028076 140272602 685060676 743195605 279714053 553385954 806738760 704419932 515402651 138369456 423868476 112001313 257474880 197823938 561731797 412414590 116632707 153670129 381036995 329671673 465460946 98552164 410188032 315536594 763690893 233436123 486290596 309464271 989350978 202162146 210230027 693164141 150394888 728857857 998764538 640186408 524818362 411806312 20843746 126749021 871853921 831904914 342180719 809309829 358910263 820398933 18750350 31331687 166491911 987537858 565245856 260808703 926958678 875855851 990550984 460834745 422794040 159475464 855944353 877447311 655691532 874442992 681120381 870510539 190148441 995996384 808593644 587977973 168324667 539475214 55793161 736319376 168788638 366107257 666868830 333296222 352498957 868670421 129656209 676284083 146819320 219610551 732776827 889200713 732262850 619140866 976314594 431176369 164476933 231364536 324802957 748712479 408052035 723771592 410396768 173959487 402697585 783502400 765229664 809796800 624443916 64141206 948912895 589374932 295882131 399203542 669875367 548817941 676842406 145330716 33764604 778490912 929196119 273011646 98021687 724971555 650031356 594154779 30828672 584397450 287248451 296763881 702517708 475443570 658085516 581461924 661215794 663485313 938545924 103985806 757592034 228952989 193075975 146484428 909341197 82838175 785997627 176334011 468147356 784543543 407133695 19909529 965967994 633615368 750990374 179641962 572722041 847473826 645572857 980394401 44236090 212562801 427728987 105314168 106958879 573281926 109799285 39834393 143881552 110870381 614987350 348853358 228667865 248204874 860195978 116857538 706065409 36664118 711838156 846528022 437736991 150035860 797112873 189971997 881571324 465206876 803191035 883791653 781122508 169434285 73417350 389963709 209272029 746021268 532970364 935474283 176825401 328425851 547539918 298970191 891362289 191926171 725023990 471924049 47375969 657045229 385471782 449665560 96018644 374413368 146578723 646016724 513969562 187852289 155332632 723875064 61419014 761709963 494275660 413572664 147571553 137155837 913352185 359535505 48895649 620295847 131544059 878611388 25565499 751083417 780833945 82202687 459483075 849052641 179184076 246075231 33325899 683854099 502504295 317381481 72101479 2411677 34412744 681556368 807561416 249751982 755618492 18795977 242685201 771449192 484619256 138255641 469347390 148876972 257945009 110534149 849334283 263521571 352818805 64566361 754821937 153697362 447051220 6312317 708742995 560755037 725562356 545152251 273806996 210788903 440473609 559201227 634550810 538762516 470261471 2304360 902796872 953456405 370337441 862539726 600338532 572874204 347800765 427901547 941283970 983167443 583281950 140722846 664448173 787119528 887483636 821314159 743862571 751937435 254516985 538936174 501930569 935194927 461113559 118869563 427578335 609880875 191975173 920548406 847659687 625071312 997944678 623907360 185911711 209669593 981839183 803277099 167457035 710706076 293155214 966534388 25854139 726920003 35137137 121293139 546057204 124642423 314339753 838300101 338843433 298285706 262366033 556287150 640333998 246693281 749731131 368427018 927043348 250321130 383200711 278152884 704617146 517863910 939056303 501530330 38956928 206909007 53302424 729771145 670489712 692348340 503090272 885094162 875167268 215515993 317027998 651287737 295276643 197877732 109525280 57929724 690023415 242629633 857721209 961093419 462745264 517837552 617942436 107356343 125223762 680109014 878471856 924138777 368802950 604619998 226495987 794281584 505026428 326498887 451715955 30965517 670743337 419414903 472606426 831608876 555585732 243596857 600397167 768542829 857675142 882045800 993919925 117201424 108323856 894132756 639602876 27629646 327330517 78132022 895021745 445290452 535684247 632995237 702637656 126215872 729401541 625889278 233854146 418790510 892532865 500084723 333059174 386089046 123182661 710131529 855971068 152330495 490306894 943707481 533410429 900757719 726976103 195194396 334192424 169302068 557970144 740708011 80076772 707194398 621410717 465082993 243077304 237924830 602772002 383149902 441987114 323224572 714342711 597328070 64956406 820555613 584462608 171963483 890825007 441118194 648964131 542662558 995314712 150838121 602443903 668189065 755212889 184342185 559001474 746200112 80455829 375365158 55803788 501527713 85052427 320283260 310805861 898356517 429231280 716214551 207666591 226352848 931182548 630014014 649993471 304034260 658959452 501803835 458689079 661697527 355509240 756808251 256373344 627785141 15198534 734004629 672967149 163681103 290813055 209017418 504517529 26642681 978423178 443490767 650833254 565193683 81868634 743725805 659667841 327280278 526983301 123323492 916897320 49634564 468009614 774850682 245529982 551063480 918120869 382065924 746023381 257777134 448886371 947031471 259449551 686282268 176859882 403151215 284076841 309228190 129382408 229958283 16896558 126352411 900061836 718263565 449055068 267162393 336416819 67801502 748885921 515835720 419486627 649656829 389589418 952761777 525110210 794677246 428244242 108435671 729564934 748743816 844519078 292705800 947387953 775675428 876975293 230696589 116844783 658418456 971870655 162827361 605990729 451754887 946021402 904540852 822198251 123146620 984185560 223520201 150852105 531834214 492893241 660865013 646614057 215406194 956203678 807142955 749005898 620482419 968185513 309269292 219311102 441854832 725211893 213606056 846967135 466620323 938267203 686081831 654314765 144127981 846496828 543898293 501889544 165632384 121335823 92236788 283644394 979670095 180911668 493041438 233227346 827935542 947746394 273579487 487630129 236828692 779862188 719126646 595214340 619109960 838906663 262351229 828499578 788045404 648111204 849572906 70452580 460538667 376438091 858733468 115330309 869164243 431695804 196042821 134250312 750104337 157204555 217414063 345012575 346594287 546765776 118868377 956763339 198656274 168674345 173859771 48090237 186467476 119925022 700547246 477979802 726143277 167379073 423531972 93537667 750743733 736984810 426558767 940341780 756813414 879521724 132954432 82268087 302284291 573960286 848245245 758682243 553853812 343288660 470592357 409599163 400562617 850592970 448398882 672684057 163892515 262028495 121162382 956283482 975613691 93571718 729351866 937247655 261034453 770196737 268262338 774173899 871602327 28423743 418083058 974732328 576084788 44914343 424112580 638682212 613406957 621028204 656786607 290384032 777978040 193587721 831897436 788201209 72221097 665312097 65400050 898959830 514981636 897015689 674292718 609106284 821834803 521578171 726113395 327719993 801527397 377410410 947553441 84324957 787477807 483889511 440574584 645044345 261157284 369531124 955031941 96191210 373702803 342918033 890374493 103459234 285179171 598393290 127232309 713810917 204356015 533820204 697656863 317841070 447088353 786620263 121246323 437795047 311419130 903753885 893006290 926605054 964879140 677776770 929193446 948811942 635683299 722448839 295818662 98974433 256275112 588700662 870654497 800754920 969039432 32475612 395422963 591098265 617089214 898144269 209579803 830828357 546507054 596992530 341489919 556620657 363892455 951860382 934679692 408025614 271647197 384410845 828944532 728976901 961525278 450600289 83692840 274242696 641100338 854786456 664452975 510890633 848497685 508133205 587825259 453354232 27799046 726224071 108822960 712414811 528749143 818628459 500812005 372122166 69886460 810590263 872333721 152617776 487119858 773101917 730246108 713749762 465961662 137129086 3170957 884269636 916254203 59592918 890938064 808362177 28465037 625166554 338007511 893832623 121792549 818959502 96547828 774727506 526456640 721046030 416550962 207011853 841606972 142435605 306911911 437517354 696926786 701449898 636198928 579840558 120237227 555814853 314648172 682788030 634038643 720983777 658320408 177944121 144640372 133160977 918133798 424315171 106567939 542977088 807935528 934927970 885911813 883122636 430771386 443772313 866050611 258990688 979876557 887939099 558140943 321520634 757755473 336972208 915409534 474064911 677506868 481775374 622068546 446392255 97280402 376644611 502206345 739494569 798595736 122345668 772037061 348903564 423271049 569026287 789093854 424775364 625463721 886553897 871377574 144512110 533195056 691651338 135738627 811486842 295050652 789678098 783777750 763286146 779093822 21134284 956951792 790234689 404763206 837730304 398147929 521692362 545438208 277906722 352642201 981217368 981487778 529888572 849298380 320811703 106697346 390248639 832985551 809183211 388972775 617764130 481344796 101099011 932347225 42479356 215327086 955608284 616351975 349549503 476239493 899260369 608868704 406766472 505941005 323877692 139480828 86119046 830367752 486095497 578964697 799401256 622379137 935008593 85108225 192598797 222446313 147892014 967920676 499176139 550177982 532321191 621913744 381298956 987441859 709139867 350903927 664580853 604926148 997168330 250412057 383229017 757529452 520700171 264100413 656616251 156854350 143153566 937318232 975980910 129383795 210994885 575116968 218350556 349819310 954033944 113960950 891551201 455003065 619782152 15536757 205805702 647821393 961509719 982779251 518676494 623391330 183578992 159609870 483021537 201531527 433521762 999909678 214880966 862853771 96188494 876610489 984201026 997600280 535309805 183601604 895392158 399523382 899448704 163194127 589179546 290809593 745999192 979680951 704619947 359018767 826800359 39187793 394907324 905672566 696585713 128930021 828473116 786461808 504870705 997875984 765682246 339074237 745975515 821534679 622165102 256341608 492787059 160326062 28881713 311132041 267969590 679961247 472936606 550700947 81321079 340160521 569712146 445306642 234624352 148463793 433831812 574937654 605623015 975049238 94292971 184056008 704635477 705488638 239260823 750452886 282366578 162920594 142327266 342040730 888339507 656680870 225083245 425783069 532014407 774405806 134133578 552976169 867217001 959268379 7359602 470811410 723497038 359300366 636714812 381533426 232578202 858826596 563462463 945530826 88666372 397740162 242169339 669325785 554339066 124522911 42168689 873929184 327720706 849333112 978740213 313361290 207179813 422001876 962116611 985344130 996215081 8374190 843695932 211311043 365082392 879797151 704693753 861593607 128291806 249053794 274999463 356725801 339357696 688783771 607951602 741116651 621465829 555122495 263148365 13216141 181428646 375169531 76608734 954716595 735585020 371114861 513886006 315336419 634321307 141375870 395986574 568007847 759265987 607290725 139829541 658784803 775776026 925760762 102096797 923334882 665005723 141908756 898970354 192531996 323066440 779171164 236170284 693064660 621568055 903015602 10008640 115408699 563869513 708385382 290363811 262098791 749409640 727216154 104514248 259868024 230496359 445815019 696822281 420765170 121143836 653572498 188773641 363422383 698111350 172481659 169955040 981654322 89945794 480338349 403577984 220987392 193697493 640909310 724643309 407334535 701979911 438501941 987585776 993739004 439278107 867330432 730579108 965079825 991338360 469725607 285847460 63890817 332028181 72207710 163444209 412767831 710430078 677619918 356447376 706387017 708464586 242860204 763521083 121293876 862643943 29810813 623886369 26175452 673899079 882647515 81941579 253437774 247966343 953148426 486487711 616879757 533119104 500999065 855514895 195965996 880594284 467972431 685844583 295208840 899719904 740499224 625676042 700116219 421537550 925238099 584794892 445726924 197329214 949604756 547144071 406024039 12500959 273403737 230193802 598602499 144606071 758737642 206466448 972211496 415512495 788833667 271313345 484956099 251089977 435800792 981439493 954720849 754074843 754728318 806279287 653397376 564059249 53697679 483651954 466345733 696511300 533672437 970482156 861128909 175083591 47403754 916852782 277406488 249772029 486701938 909554211 283799829 625507167 519648649 631970059 807017378 796152229 386872444 566229627 766989900 803551106 728726242 334088070 549336681 820632801 739872421 333902868 173120801 293920686 121574968 267751119 568601124 879964908 49618141 278321440 845274230 958077738 4679705 7535263 922788633 322071623 417820386 783805710 385658749 709995567 715466728 552168113 248177702 261765427 759841967 697953559 966582353 257734267 227539890 860600307 532585363 413268898 32209265 499639581 374189628 822320296 680254938 952101342 964597314 403941860 351061238 111852715 761240097 963079453 696084513 838667204 32804306 390437230 294424324 500122121 383758723 139094106 974019735 850124988 157829944 59087578 389407311 149224400 295280986 107714781 638630648 790030800 355341630 511296307 807577079 63445103 435547466 316205780 385268776 198962099 800828875 800215850 114221660 79298347 594886706 663692701 791281139 560336120 846152471 942624058 178474915 406595537 888804415 483761295 475168195 759283716 958773176 417579246 479984601 182330945 948972132 652308770 535498002 949114116 933734068 174170590 368687558 740816004 184966509 494599575 515598659 61731710 255447020 389668736 503561864 791931022 374309508 767147393 698836580 933134159 166985842 351499425 118561399 288585274 535679602 25391008 398311946 390018441 230140270 30786214 116661685 294323008 565401682 737614743 376268427 879071462 80583666 559224522 602416005 241363730 106923616 18186247 606098571 352622545 254237313 429726562 426627236 372524016 890995202 199777617 644964648 147382700 822633572 873413119 18168149 174599212 537957347 195870594 396148346 842978429 128741715 44104255 978046865 299622280 880232273 35196869 656817022 211768 553942854 252288086 482016042 139086867 16866799 337744469 495488989 79881726 524310183 186419435 355602872 451008131 956620448 419373112 525735269 496670864 686893376 253009568 937396370 526933319 64908974 229201374 910571492 111331764 148303017 44901819 345860364 555721947 352680173 366168047 72585653 60765852 925521498 542363853 998608147 926119790 827776691 139030921 735568627 458037682 814890564 682380347 212696146 794627495 624256396 672911847 530911393 376692150 135300655 65558749 210177765 708151848 213341803 95680694 14490494 695533662 962747469 29329823 778156787 292520197 537225698 745954938 201426811 513366747 706752223 59998850 338719915 262897699 855647326 695675294 142785922 824922874 925966757 314702593 81638008 239051145 391055405 809650938 278885561 127802540 732189375 212064899 187884546 465705289 101013853 163989959 656357772 65593357 630619671 233440160 522070436 406287721 959865211 347782655 556951062 480574121 34936511 203803383 775963533 830889680 439794852 468323721 479101411 390958954 90848733 122736722 480585500 972291683 418758807 348567649 512385138 88861030 419643835 97333818 301778412 484626632 272779610 653565153 663560918 653849071 196496455 600526630 447170718 468670349 261951492 840588920 205944883 779357356 160454197 639657700 956091744 89481745 237152684 495641295 706104147 984736981 200472282 134238827 455061494 799261434 419603716 474576660 547235921 384855037 18678013 793560196 87312239 837048227 290852873 720386154 599505710 284982796 412686047 278596924 811982019 820387390 591626222 320539151 936828996 615539261 583839062 715120001 84677689 547301154 158182827 261822280 545042399 146230050 555423478 482637909 593988531 853074963 701862998 809973130 865860831 129508870 708474088 789967487 762839687 446199055 323838814 215952110 827139841 181887454 922901587 517978109 600552304 363698286 99351531 775258404 80561754 793737342 492797637 641884542 513805867 99139673 262892068 842771533 949950308 355243661 677015538 744808825 810852873 918433766 689831646 241099786 814378622 893690849 793079970 358142831 703459122 806502679 340904591 860083891 149119736 968184818 16559721 483440509 144093479 838464919 27495593 401598535 182316401 694532234 149567 967160382 472283260 897329043 612302656 534855413 584797174 412665181 601166133 146628007 50733337 876747130 917822370 733373691 108750388 98548793 247906852 721998504 14681323 837849359 708913042 384615446 110410715 293989867 373145546 144863549 688791199 788584115 332132214 865117595 687419683 518372708 173857184 481309403 948797755 398540210 100109541 32448922 241740829 709054354 947950818 625606241 638518380 74554852 828185105 141478219 125304351 722167614 708487455 674814719 5041295 56714067 764146629 232355139 58623799 71571386 502452265 754555360 771071286 333962589 907975193 541054267 523696221 215621750 919521752 318290784 209304615 450402644 92872857 982151292 221090323 625636156 177733751 891471646 351682349 876596144 546630420 41129961 260960561 810502016 65068255 803257255 709600748 541500388 190508648 974760144 518626285 733292795 570454574 113369040 750662967 262900328 595807505 528651313 972531328 274039233 85130947 33400216 723907352 420907047 882347026 555410949 664667283 376081013 92121980 706391717 313958977 752246582 395860389 364152220 904406827 923926065 990087727 14546530 270395421 770718138 53117123 363558424 825313891 368790784 271691463 525997943 503502417 114844090 886240403 484114905 447249975 875055783 164814770 276847642 881336725 844671065 273798187 226626868 223512804 600174234 76908546 867065867 887340720 301191448 559650252 747997152 47311510 512451487 719007927 90113993 8730893 915734804 799323368 875137971 225132504 135146067 336149751 683794152 931744576 920383687 488032334 705767239 900480625 77860520 359980599 265106523 773496423 657465596 483882399 233791042 609167045 480609102 190493678 795542214 760426588 109433994 918180862 717991522 133277815 562379674 65550517 295647651 657016541 236987676 938135360 771371563 835849210 389151896 990558777 689192971 949296267 483785292 944304558 759772349 777731903 106063364 652415949 118886199 328088696 298281832 944642825 994503129 163670 466564018 560062456 65704024 314057109 352287988 552919328 592427688 544006811 519209370 270477060 720572455 756713682 661515775 645184204 955870541 714503937 482484740 795952774 860647331 928461985 728461750 780958443 561513244 995536401 201786817 731401625 884136177 303946473 687216991 52459241 745315278 772598071 31574695 261584263 418065953 89686636 447626633 908543895 759187007 809118574 253620460 94827538 836584575 643758860 424531621 885791790 470055623 126486652 783188467 6139533 809665039 244146322 331277318 573849157 705769330 959649877 349061912 740861169 282242189 915862367 786347862 340900872 877140331 840226690 631194282 568328112 819365709 544992834 871109837 427232030 286539161 588260392 844866340 401786952 974275328 409279803 291720762 718625483 393135632 220444741 56926736 305511224 238339195 599952575 67049430 701577144 628437769 751168823 652652264 744365437 138884356 166019732 782065974 459461179 755940822 8077054 967163866 460687681 995643159 447036936 232026378 653578902 975056067 532473743 234356145 219856145 59946696 536748236 307299777 553549341 249473372 675581972 132318942 905754969 742182011 433987902 122617891 248732766 94531319 805839018 160463007 738761697 203807601 728335220 728073478 261743722 990239520 621517302 898845950 648131368 11536362 495385631 304938563 305396416 222304726 577972366 82978079 364704095 963763731 810193139 416603039 702134651 339896178 808826238 187213176 526282129 572303462 436978662 94149395 87161303 959541641 121882436 460764733 305339685 206221539 468423204 251364957 449475706 259272133 800807800 604654980 205930607 693669193 126594205 765512582 713835823 21884374 742315427 19532578 861907235 58732881 471198588 815383119 288736813 505205465 384190277 522787192 627684612 184023296 408578903 655097798 153907602 229744712 50866365 255007980 598223132 65523710 670141939 171083691 702402623 905621120 776411267 454921292 506863387 495953674 331570283 433715369 617786553 668785379 764407251 883805608 230160682 911620083 494319286 473074114 921941987 474862010 581717976 985644553 162847146 899803866 268448224 94163891 448156276 558559386 774220440 390595071 848788803 631301504 129003112 305419743 129999207 390089475 874406631 493714194 399235584 141655879 192770468 551521286 453275420 256085728 902051724 517927734 137408841 217722940 574737457 439663740 48975672 34495496 67185620 875065916 938805449 706086811 128707188 169273545 37041206 474509147 762848035 602006219 713540860 952560434 265360983 566504584 810498307 14498483 932844404 936955717 715559423 270164042 853427685 241139074 744227808 253122848 659436637 68004207 426657489 657736961 796867701 740363997 638111150 278088430 609971712 569664000 123004504 264677040 952834981 656433451 831824069 216553942 461874653 473391611 820839091 49067586 522968884 261146018 729914640 856493020 457876104 894313488 963425506 394938119 281006967 503871252 539225541 682990265 526544885 478506667 320429662 931028916 456252295 256452829 959073621 567575769 917270691 54694158 632377725 364107512 42626604 867711367 278424728 326808400 455709648 876106140 761776100 78105208 273140067 308722280 232108417 438411894 190294416 215823107 617874979 74389814 750422872 930561172 435214059 685415883 373790403 185028742 900253138 413407111 483154685 349397354 521492504 399545874 476649621 906116728 308739095 360051393 57938327 759211789 857586750 522081828 902907170 869096843 16403432 905515786 678908475 923448533 279930913 9336292 438125487 288357509 375536778 274400776 563166882 560067580 678742827 394288154 598345949 775701736 181070937 305682872 33533655 326830087 308932202 408345320 552947309 80874843 991995361 5374740 499068780 353082538 748848991 608988428 809461979 598881499 39664429 787889071 713004612 78549973 658547449 444113316 105615097 111620494 355781898 383586656 27833757 913291477 675608501 691459521 54771504 720182329 718318036 919267807 735383819 835016829 14363902 548558977 637602442 676351367 722392311 907960240 324447783 919480454 467013614 665028414 623464585 282133005 73099467 203689953 838599453 271551086 435041632 221877958 906527245 110793203 941866077 145654118 706079572 173280076 772034223 273626276 383458393 256097922 799260937 773956860 857972884 516723107 690785155 458083215 337726456 980110736 172180563 43660443 465552351 699032978 538690660 39433081 798504303 226629887 384762449 957074730 368335872 561669003 600744498 537232809 998338709 893151917 119212263 861446901 23980807 130279273 488159211 47085674 383350564 873973962 502193892 159211466 681820324 763488482 252722772 440656574 684004056 194946373 838082376 731315768 282329200 842088632 23550897 612833482 541377622 318986670 84878253 99800329 522646750 935732816 690591717 907526643 557788544 530980742 16918756 678610524 328931 361878655 53038206 496651560 856483044 826135343 568135395 220421224 150117931 782702119 395633513 784442403 430778371 605201868 999787431 74508239 957704417 651594317 754160822 575047878 560164358 676927246 199722123 417564941 42705919 135162377 370307544 108080763 367055012 950922398 282183867 658267446 942746309 790306731 318848167 717990387 898092833 485992906 952119057 219617856 915820254 383511518 174237217 481750638 272731664 129327230 581871492 257030386 351215094 970523359 128843701 917155280 72710376 690727913 119960029 349728016 156227063 266488483 366089379 890971077 25625307 654708366 437386427 554530766 363517470 771311478 707559695 543423027 462150731 632141869 236265042 163108711 420739489 210706970 361253986 702265018 689608180 17615551 267044710 278756892 669180105 842894346 227180710 92033205 293574616 148713891 923732653 574599611 26833527 825180386 869624099 932149908 349507961 802759459 913598274 255879946 172733722 784799467 960233717 676578964 363087837 309036317 568746496 930087817 450205732 266584866 317982320 603334402 160681548 956326695 987146535 778168526 19219926 533705408 53136982 20593853 988037548 160773263 215718526 183919572 365856048 302178500 550722653 998779665 690047158 645349981 489693141 771517973 144331722 199926527 352079577 949389048 612575184 324108782 186991438 542911199 824435521 157258434 49661337 785039367 17834692 815000388 868087721 310097179 596610640 676960565 288109610 828858083 624122501 707861031 17985353 862719564 222139233 968595861 545412881 515158578 344155205 779389701 481519141 513524717 58515446 59406759 986921376 647962448 579844361 466066431 808336828 776606996 202871059 201924039 759839513 402429065 847617277 975524688 121464373 693594957 668765360 620262628 686250454 611227101 991656235 985004891 788944881 73466430 908983765 896511468 374989237 469918675 88612975 338018157 357237989 2595877 566759814 414778284 405050035 52964513 750072634 593044412 344396293 637219719 536611053 180389243 415190989 555831363 747113964 467416347 363656600 582411907 364457601 417154060 62833408 67202497 639684629 206232762 878643903 11817670 671198566 313066928 59731656 95539209 157098581 69331570 979981455 848923981 842239134 920132051 79337539 675634337 170953922 183597018 122515972 942704274 116855738 990758161 956560566 618003750 453815657 571556340 773627125 635881595 777118307 262380691 721199293 958327644 766419161 613865786 706635308 975227590 565968492 465224016 619100883 789504495 294490079 349858000 790465359 964019056 152274947 304503436 515115957 318108589 996893943 779166882 864141196 599953115 520623994 692102303 623309494 459977316 924037031 561502810 180395148 840337757 580619536 132507114 754769868 296929352 483770194 904996187 440778289 823540810 924933830 494588883 439483230 577863085 996656093 457016833 337516649 812778084 447287912 747026239 160764571 739365879 419014194 462218894 188450235 714644137 713743945 289038804 874389470 764534673 106706842 512552529 185646931 420562749 976092003 519132537 610030165 36842439 929663385 724011949 6364273 535038425 777268309 72971432 515027089 993347252 106770175 954825851 106605071 784935697 822715424 752147001 676959781 139548360 179629990 630816012 709843899 136078603 398109734 475998301 171533262 469517697 820533980 820070665 403705607 208669612 847158041 188664362 660367389 303566053 257004118 115554545 981659157 631252844 803603761 760247084 676656528 572537250 160171949 27767194 485625251 122930010 487589485 49480907 659696975 928303929 891394772 16578735 486245389 366378161 43669819 435964526 798304962 435186871 994314965 51204843 251807635 52786037 984644275 743341177 744662329 704534347 610041720 728324024 731809356 780846333 464713236 849695423 865358537 167081945 805671888 519459934 488067682 188458603 627609578 440750194 717865905 923995398 177845018 30312869 269303082 767822493 158533595 752721759 275958505 58804705 707454022 14741136 889469584 362242450 91541716 624613354 338094892 256117789 21723542 67810090 623466829 170544781 583734595 114315651 153327069 527092206 41086143 378381435 368540017 788906712 558514317 100144238 703340499 724002205 250377648 392694742 901294558 180728748 391130793 165108521 986006035 215418636 568280496 179675292 248647526 686676277 782199532 392066986 751960136 962194195 832121481 705026631 327355319 969322511 930274972 82684046 338403250 456707571 56403965 618524990 285719984 680726203 647116514 345464541 272219655 527529151 80821199 988466350 772369783 813204796 793237030 904589838 324472962 133880938 180728359 429799445 760847716 994731483 952140390 857960164 222745237 849656124 705371419 262243089 308444508 824334598 13225088 919552077 649519899 490982944 102812370 142646234 996311215 417249745 44586992 815843794 260674380 650109755 623361650 13710600 281952464 341264591 590287232 653382122 29828493 208812573 236042936 822985810 33626789 74860676 598229884 366568585 28606081 935785796 975389670 126320604 309639573 955223678 67504617 925166829 287804416 320273468 603451879 59626246 390470037 883885713 632571605 819962995 411630537 247607194 886265360 764825518 998724692 892881902 445984258 536146984 767138774 702952916 26137619 425445346 386403903 59652296 643836831 533766468 917859056 211262340 499654377 861810800 629782378 896504720 957829560 330443122 277407720 101248257 711860446 157155843 348380919 274761634 317053359 301438355 790088298 966129225 194200005 59778187 38714480 808403421 734715995 75045821 937299545 450799997 191078775 902937953 544697679 808047640 113025903 435718889 687418253 447738246 446156235 774361039 882819960 265091172 871125703 481667758 593415700 945136470 257758929 678447461 798138003 539440202 439586074 578266057 89006164 532737344 897325011 473908723 911947669 831516522 652319018 777981322 562693542 595210600 106108627 737633418 436865877 280294991 997996625 854499425 893883047 331435734 146363515 690680850 447847650 69523348 742366974 984346661 305639669 714432973 928314071 69968669 818282565 748729745 337683378 875060185 843211917 788932310 531771573 884222352 413820044 998397500 246069405 543560081 333273629 945867648 248234736 251982637 137900922 440032523 828385830 204776952 618089917 155516309 372105031 464379360 8039719 221616596 278623743 210217117 597379288 97849381 634347223 162559462 719918912 517174895 457985840 681130090 341608405 556954609 876347754 517913942 197132582 742111568 345947092 276168105 603181546 118356394 728550273 341404716 341166209 358895533 343308921 386655046 533879120 25831249 841397346 325386616 739207892 566073063 367178685 463350128 483515976 435084591 877939673 907528781 229259834 983001330 15906776 169768709 341532807 551615725 417366634 40768115 867379872 719031960 811753197 742099277 991749181 766325583 493309224 422346580 287284302 436686361 425669794 550004675 630164803 325777157 137706484 147835138 485907846 960634203 974690116 620898134 662163215 1998291 552329707 996326054 808903041 783115364 329580804 53562194 383820453 535475681 156250975 46140813 168572002 750863505 596978010 573547763 446640810 227566397 928146060 984027014 67675293 540998389 742041982 758341164 519470422 807978064 370374874 820574630 969673055 283415397 367146673 955571157 813237875 536668453 32211885 818791230 968842098 361735972 379758333 398308241 981962352 844756284 668409004 144126912 557690544 542716549 993048527 278885306 767483803 489705373 552538728 431557962 226936896 83432164 387800694 135084968 443441644 656988011 8081535 877050067 320251324 226948098 924059383 647381650 802966453 449224126 564487984 39896219 280373345 375229792 139453189 202800866 995458492 87356102 412312020 616290123 836246660 271748177 806892688 139215031 429299526 664012769 508781719 461644454 772241879 37610364 337663624 445636061 363816434 718577679 635629078 242427204 847342321 186905495 78742655 126764968 748844236 467070796 692287370 260305305 624396505 952361296 219146908 249356211 908847796 792259898 358903377 727584791 929878077 812894488 317773816 271181816 390528346 447387445 863733102 346999646 983269772 743046946 45575007 425750267 902115578 14547645 68558116 938462293 175972965 355163254 264025704 625795471 116965380 808002594 132513230 731746285 31317796 285989524 787325059 619797782 315942403 804219918 516567578 61274561 631836178 750615386 326918786 177491082 166831628 899028163 743426565 970098999 162993344 97575634 899293342 483506121 874467295 461294209 357270541 728584334 266453350 280075437 263771639 491852046 917378919 992106624 95903064 191860672 603223773 354946163 532672255 318930587 870119464 637901535 793342879 551261427 444862290 781763968 391215482 567794226 646450891 578980996 553023761 671530583 295255446 94819136 533305323 435547408 160344582 545538800 915949532 464809328 258531581 59923018 299409114 429494740 54712326 948483222 699122866 337560523 751612900 859244289 873408260 531399795 239135148 614721570 141252990 755539523 409955777 726882342 482763517 104215105 55976378 886373490 630754725 925575849 21837156 387824399 615393660 158009034 947485092 531161235 481448380 570049620 466000746 5439322 449358165 447014096 444615974 933169145 933717623 37799653 906457675 76148673 19807079 389933299 179096528 603100612 176503298 734635881 317725304 671282716 698371262 652825112 600986398 210974567 441774432 383696020 596315624 704815328 880146713 81808586 256648706 146166490 312303094 922489050 915767607 780337306 555012531 160138947 510238054 930609502 297780125 106911482 913305865 485817321 542942617 291769753 586732766 498680253 257093224 769196652 354610593 910385595 442781449 746775498 71527884 964524620 276808747 518567728 473430375 688284510 860940852 876056003 275031803 502190740 489909960 55815151 727087556 959878472 980331961 587232430 867834544 228895059 117532867 120276041 36629019 598621083 299006716 726864673 517611915 413942279 854357466 951858724 930443032 892290566 4099899 412667745 451017133 753959151 531076464 898222731 243947945 505797454 815480440 448248989 309660017 477149033 445822018 461943592 434883709 589515309 98512827 708124671 785456288 762491027 979380484 464728496 984661333 2475839 923472290 532749243 899002997 305526529 119581589 287169286 634138400 520333656 674906085 805701949 843287715 800630392 655635824 657456350 606067787 754894354 167403733 972262248 666762231 498983323 411229670 327692872 363239868 618989724 644417359 995071633 932179015 122943361 552672990 903972043 827066271 182084377 87524812 458035334 886561366 569043580 197858237 805795426 272007314 318732790 498699797 903731736 815390166 917098413 561233834 946722666 859931432 369814934 919304129 932170837 408128155 432537629 7446400 392187952 966545014 24647632 839960589 445819221 712764962 303912413 36524465 142437628 526248564 280309681 545166606 151681307 665220318 134979923 111145470 808453666 5077719 271316115 778946650 398573656 660204789 739861153 159176707 7567343 517233782 593078382 180231057 383696578 700927077 248498809 622066963 701837819 544959476 617965633 250877 98238226 12042983 164147101 477668142 283031118 921130042 855578841 342199081 195628644 394152342 114144960 156976578 431400805 836768375 511681417 661504965 807332238 241743898 483096281 612380652 915357646 685411746 774785323 928748995 711592264 991265684 195904491 411721158 197522088 296386077 859832098 493352545 803663962 589519662 879010240 783583235 110955255 299836281 970579985 272222336 53732891 341613654 412582687 719806846 978631088 323690633 667404106 39522645 799393684 512499612 853375701 177582048 718277862 533095017 728483159 74585633 774307109 397004067 474435981 772516051 139679780 803635076 248257065 938206500 501342396 490597033 91589168 491632641 326630463 812786311 736000627 306522612 771634227 431814901 536187873 333698655 56693942 78635444 401017861 424698368 150285353 220584433 862215338 366224994 664179789 582598010 69912733 453985167 575798413 885444271 429000152 123990141 628983261 420640201 686751923 158311814 730682394 999211648 159625756 327038703 20394328 768730292 227868348 655301061 147834145 607358723 56508769 993453243 116672083 110034503 124804883 434774916 376971171 576359999 359425210 68154115 781085294 848266875 772539115 445622117 937968782 532098251 433165339 216053904 39940940 10808079 819293364 14310925 438048841 108024886 605568338 807702855 578389301 312477933 961332580 94124654 921867757 623034898 525125452 969282440 943124283 409613738 47467030 893958999 569228611 931039722 110177668 13798842 868601414 742274115 214573830 292655546 448871309 416473552 169452576 63546972 7320146 140213605 764936405 229508250 36773787 761264269 261894377 299997009 841276072 847221112 504776822 369213758 629280740 840686216 492008571 775929638 884138603 672269737 556450708 47229262 472473454 677178142 538002819 770522626 86755532 882879423 219708700 447296652 431851385 41360843 48408941 680769138 685129159 204605462 960314555 815838908 171954890 384372424 960021074 354993744 783081978 353692830 362161257 939633098 967937502 606707365 409926482 475752331 482246166 776469244 406663359 694729892 562290952 179508825 513089173 697035157 877269036 349855799 623140881 253517526 172709876 241463053 413974952 215623000 592639847 838875752 468327696 674403326 765039772 297071391 787975652 503517017 111481529 679810447 362390838 422054322 901299255 265431836 543169722 729415331 959784861 21894552 628579697 43874687 891036266 646721187 273013862 586422575 451472442 85263164 795364273 150616133 398771802 14911898 884049521 20578925 217664810 124354048 826109752 137330544 352777161 524691574 83972678 98279713 327084581 147079941 933849027 973500026 980117092 229598522 212611783 260842827 744151515 763779860 263563704 214963742 764692966 239359472 593066713 39818956 747172024 302895536 159362025 67889187 775810277 300512977 479915480 240677941 518973638 90756769 659234667 204708370 214399643 131797795 513452360 531096142 209545685 309135625 67879935 32833563 832669860 885684020 187787220 190108743 295579534 662672216 866951634 470674511 543837566 942331336 651358921 12600286 525104471 14993554 645024205 341955897 325125675 186012437 350671205 387778180 958356536 543467066 546972241 308442839 587384469 197111012 277928641 359116949 774444497 409711523 245369532 240893001 178841564 627763538 143483564 747418771 603819536 257380568 463246206 373537723 234585346 353544552 433289625 736309082 678587949 800572596 514214443 375441683 517378791 77703625 304416608 450708733 597361654 550854684 426734426 238333084 802497589 183465985 4622297 987603979 220010632 229310427 244498693 451065201 250101497 485343867 433458754 7753059 445460122 543250941 309278284 249730984 433435827 415066666 939931699 878935584 693172858 397379475 327437258 230686371 680705925 560604333 402195296 898974304 511783241 871328914 896258170 211894421 910377004 936867666 829873260 524038273 771403701 15508385 246561178 888476522 391978970 165807253 162265317 529717816 355963493 901504592 589909301 826229627 962401062 572025781 926911354 505189077 780295245 909616521 270727048 395762494 851196205 89297502 52646093 118334274 574257855 41920471 785497872 810922849 224850947 460497896 141756275 419850154 442277054 916303936 139643457 270143365 49147628 134355596 987729805 755685231 560135079 975652152 784358580 827228771 56400793 692270767 893754466 240828457 438014346 102907298 941150820 539666867 629079374 712596369 705015675 988056846 410809405 533985946 925948394 520535288 843059312 387017474 713403773 151672285 580603863 913544029 609226660 912760466 85249665 284389876 874674975 724922939 602906967 943978875 616367430 989170448 567411332 698801397 661136268 455657056 51586108 376820171 973331567 557039461 83079295 431296416 894431628 13110845 886761712 571989660 647578782 564087129 593659749 617469654 170195927 834322456 292568010 398668492 85539768 294229047 801387367 239327316 973677702 245990657 464974015 746756766 971467657 599296020 740471284 438328494 563307488 876561090 615049534 432354576 380029064 584010098 1908293 145399744 281378163 147860802 486667999 72060287 761746288 497442226 556951476 524007082 32317182 190666535 413288869 100698293 745124249 453165841 624712080 982736270 562407052 62120774 902707804 898610531 536140058 305298834 737175856 805523896 797923592 288185507 149490426 700097923 710512549 592069029 185337152 775264280 256148664 638958638 527771120 205236699 293008517 807033988 281944055 524292206 177395264 614382336 24900441 100891810 544146546 425725610 740417258 45980691 326250690 640515043 341736028 443534222 970487003 529779143 974557895 93868827 783151287 488254947 387827066 422612098 832312844 403550405 630334201 628999437 830612368 701558966 830804466 240316073 202024425 262391504 902119357 761364656 173589095 140366382 123982904 567061947 782835818 736054974 536727568 825875890 224515087 729191511 464110857 645898325 352956433 720232885 654896294 695846349 700173857 463269107 325391229 13746074 244677382 969103763 860796100 246063018 400151110 758872115 246077759 603278945 657789101 504716578 521415542 477356978 378411074 914832416 401346592 426071932 9309024 993576181 680535159 7601252 774267641 385095348 527493295 37929190 475835455 759261375 690928606 456570000 549995442 551888781 630109654 825029455 113647654 987606942 163914153 879628053 7529413 766081737 952465665 181594904 580064286 600146721 145180889 45998324 619598369 517655796 761029599 634652201 950949362 622300052 276554464 852334447 304727045 178477332 337496424 551188606 625202346 943633805 772870778 465401587 255128254 18044716 412648127 666002186 968494355 554833235 12759777 176224378 250551146 874839470 755701518 393508357 759161637 77608713 366065053 754289113 818969389 769217802 290247362 589253428 755683844 610524020 802215351 63096024 758853669 64859106 802128826 446905866 738695446 780636509 210245665 340548511 661863855 831851001 763908860 32663640 593737291 232316288 902284918 741713369 409946302 196894841 336741049 553233922 830931204 631598217 800657104 760501146 378786394 177427798 524468673 585206111 467734200 968969443 551169022 757022955 298162710 358748271 920199704 446745568 813011217 293400898 119497822 484680558 48399043 348003719 139623018 688717923 583388618 386407922 423605347 567687490 290709119 243940853 500879492 939302161 985996735 413482008 239860862 405262882 977731531 279600508 734492896 84861677 69924048 363608551 333275708 721181610 718570823 732281410 851636748 575258150 364990651 553256486 361086108 549769535 226743737 279464756 610725608 713896121 839785509 816612605 882211059 309734643 941413871 190398365 964850155 497110976 747761009 587645435 281736172 539551477 512690740 417548768 602637536 968373977 273030720 412077552 349795910 484494774 469578862 229923202 738746570 419283213 329776648 938561521 680180839 314203887 328443779 942264363 681621415 721616834 940530124 655449853 415520012 87214516 343820137 638176811 95838373 924974242 557771447 92159494 987004299 171413289 909289382 478449043 521584224 288200277 331146794 348711165 409790957 189332257 576496986 447700987 570799154 83023029 852375148 302442189 410906034 701017301 234520288 838109678 909333435 732814156 515559116 224658334 922168464 442878378 838825803 332339880 429237800 477824586 605634289 611573726 579170676 410672753 965715646 914824822 723949375 97871962 344061934 229429753 297076781 956021955 640110216 450098578 623039961 489606008 331256560 996655694 356160298 91998791 741450219 783233056 580478072 417120483 338295182 809933164 399750251 63156726 499116750 264254414 435503928 387583055 736898725 625732216 52227096 473205763 391534682 276460298 800469793 532322549 778334916 120800811 33217800 83661917 652506762 782586316 300618455 621749304 90945511 785029455 71398927 868679918 473430124 688967175 864050600 30742159 456361114 527017089 288162054 15361259 408313048 756754922 360413282 612810056 916665489 29020592 713637806 315037588 673234077 272833854 593282626 866990347 846621965 319750146 834886763 36613896 597652053 997008696 235835133 330920183 664253981 693956731 43387196 87760052 691914460 427047992 616840628 261545367 218778191 88503103 71595407 909857881 70203819 323589687 782999017 966844400 187228901 14588205 461597620 182511430 878463498 69068124 221955380 327128743 572313511 249204794 748940310 137253622 197968219 56467858 333230596 826817329 525037686 223748849 198224671 345851063 359661087 434540782 467224449 366005939 461591902 64642474 633737299 638678728 123632620 426063415 617633357 907119116 3950975 21460107 637674428 95177439 536126989 362533844 109407228 602192525 222385681 120629977 688859524 750542275 917493920 678686296 94311194 169489945 443068977 190300134 587465303 893456555 695663191 128359923 498087245 746912306 198150194 337321096 62958692 97128743 186344770 272556064 196315611 778256221 772790749 379164586 153374132 137544727 528892717 559137011 554136500 453192287 163472323 7496854 234441237 495910653 521057414 860930725 666857567 357083985 104431860 135374162 937312208 941085113 558295312 770427179 807200231 163297920 46535947 685708663 739070171 465953652 205359148 210441354 933839603 847671925 655870861 899079287 185705414 540578068 783165141 828812630 756006321 786677466 19369396 189698676 66690698 552740265 321862441 624323219 184796075 472604988 614543891 329036362 473254166 710373802 497156521 287469385 471690335 277531143 844764523 245044144 237280805 319358323 321196880 410285775 185589823 743357246 550082697 161135964 951241670 983501197 510098613 715085440 651055233 630656112 172290448 836119130 753179525 884860915 929451602 722519690 381297327 409050820 134682091 873709453 856330333 611523978 497016782 330407305 724005231 962488514 724432984 396887847 568139439 474975847 68114232 784966186 252329587 322936048 548421723 911526854 399039182 710668301 679609892 359961200 627820445 238821325 754606310 406570786 671856123 623263752 934995390 430254768 663663996 724423839 563152881 82485846 873920125 508793084 142973707 955358566 507590566 481262104 38111829 77835317 821336710 178487880 257361232 89885140 110837810 266056099 874366461 107680293 936639477 870960154 690382671 249633050 81344060 326249017 734096603 593938763 802326713 841109072 741189442 729988986 618846575 888712623 187736881 296283949 442951163 590600101 971518103 221012213 778391941 808711995 839971946 676475373 906499816 526320268 219863562 362605438 369734254 642441906 579968668 707809773 376983057 888524232 261333495 916058690 542596871 159911748 571616174 92049755 153113409 704457855 653874140 92365770 167691270 131715148 420383686 155015790 60056627 338373733 72580474 236807031 582629982 853066962 981752865 161127543 784223469 340123488 635948168 978089686 142466767 162728621 754466330 268578528 266177971 740807623 376865244 885442783 108605104 126526712 971244833 169566103 324270300 629849139 146199038 935767834 110051629 923143701 385703583 214373841 504364550 267618161 478356798 772738982 503272368 765148319 570155829 231307905 516420344 490797715 204353600 402645184 443466463 981894682 255542276 748698575 555176494 450223680 603051151 984337966 126609109 674470364 468489125 281261400 698281140 883131925 371077024 714619169 690164188 103723170 496377688 833972527 435028564 845618973 134082464 233536170 177750303 898964387 32467914 333733124 498968124 699006535 519174381 691753240 617097214 1628785 698267853 47327947 164839194 693766285 511468825 598663169 926156993 719797045 920603213 246853751 917520561 153912524 177670111 190786496 59408625 292421627 509487095 850999380 934750106 230404687 6884145 594445117 773537208 762234571 731990287 479927116 611105759 443083821 356669842 200424707 976781979 127841939 166962953 703350503 128554690 39386112 91511723 69950409 207477925 638211394 943602413 249441829 64643123 123618689 51919185 378967410 56861849 173269397 193473723 969189962 896934096 433534785 96268536 800322142 626089733 773975194 403518731 660178689 636731167 203677832 595406357 697299609 938629462 261246437 249994788 96422857 22165244 133520600 763161247 261246938 980687985 265981317 177180731 960521714 711415677 963162849 764196422 319494863 881217506 756032680 164755360 29877368 374957465 43857869 137864639 625634460 180113950 618296788 186104997 33440963 218513048 12664960 131105398 601995977 223612340 833352370 931833637 965414516 569687959 945572529 741237010 762714672 897079656 231033356 348241373 277190033 235958460 109912616 319185873 12794307 674342208 375350202 133034957 975976335 244568481 134677528 55419933 186502595 830599941 134191370 804814565 317097780 584344178 851382955 353167074 4923931 467250658 828126095 541613717 11649716 466801321 57237901 765116217 714220613 213403900 790383424 417675168 570426430 210245355 461547594 160270251 573918470 725186337 121240591 190499480 545722488 823891319 524468665 957669225 938986060 97734577 925555637 840430364 732896476 83537172 770156374 827081767 56720625 7499077 16477855 243154611 912050389 288232384 932842974 992724244 142361200 77850049 791738181 408416599 689135468 511020899 981473165 254899728 556144340 4331011 265708016 151394831 642365736 162548738 105035263 148739596 302476751 37331149 616658378 510428438 386566470 378799660 507203278 731910681 921486359 589786104 81734507 468177922 329810818 316843803 118069671 532227694 480366470 539724775 834203645 464389902 132450115 414178176 134807518 586146326 895460287 341959852 623623859 526602269 923681510 569554215 513684433 572318195 709038654 488934832 569963582 453238783 19939764 264318942 383713262 295084317 805888952 521883068 821163597 594195930 213180508 739386175 487083993 844535367 692710909 869082462 947050387 399858979 123032800 773412793 229307700 569062093 982891747 519752937 347290688 312631978 980088677 646368957 207951028 808839231 1607753 103924016 667890129 991390027 443571525 225361771 711533658 277091134 103771789 924024154 476675303 454397403 64135462 567794715 785253736 990218370 574426734 878412093 805402443 210900940 185365067 938127397 473969552 49291869 555122817 524787886 528438405 536968312 713633302 708892491 239920978 675353238 657922252 56729380 650545632 708134536 289643016 2465396 496330181 77141072 288249131 400612506 531865014 386830609 196787937 47452596 457675735 726578223 334573695 680739400 4024091 746339845 710995826 792052382 278813962 453880411 935891201 66930880 657007144 939445691 528586625 601430274 501272848 135026666 113907132 57137612 731457523 369028185 706423703 294681502 793336797 368452156 871928580 188563944 181574424 885928881 278280008 229563893 492426771 50197632 932822496 649978970 770399528 34020106 183669363 111428678 148226854 234339337 847807196 959834556 528599763 730283473 530828064 678243555 804778163 424435017 71886294 826524634 630403648 472464520 567796464 56754488 919476082 69950424 399596326 821414 230735095 234428969 425268655 816597344 352467507 675018144 772505471 238079537 346642541 361015179 664794215 952203470 393822071 168881497 44700011 907288209 787575472 978934399 482466020 354907914 836925485 493974046 200561349 168914352 730804686 639594521 811334985 238726131 22735851 767882840 530941610 756553247 126057489 447811810 252242845 691704001 629448277 132257855 142020936 299560804 627623233 802059064 276228827 379021111 747006290 33284045 290918870 34299835 180731141 379821916 627799973 616070597 116824107 240536438 951666199 890338315 925619100 299816626 286612323 446636995 595915875 681131671 956129952 378937356 429733685 852469115 500765475 956248641 64851537 379570448 202312133 591558218 214432798 297179540 466111445 957045582 840253522 243543802 601939844 654164570 628997064 494399035 378564778 256086790 689573835 439577842 818650184 199908641 474383856 619917199 908288700 345676704 288570196 942353503 359153860 742155077 974205961 565780864 282503730 967863268 12288891 442170536 262929216 328893992 558440028 247990627 758893593 756829649 191657520 102521154 734252230 722233008 958086231 321545911 754648792 375975056 321096471 805168335 278736109 977934294 41103736 991905193 116971561 914721752 202717696 354788459 180595895 870313441 150622699 785855534 935508369 410347174 105851076 832690943 191623257 255560604 774958893 271691248 63692465 297024149 106093555 191719220 908965506 355594415 327183074 250690040 293479185 83854114 292451945 806440216 346963888 467708890 688831636 901071710 678257242 110510629 481191519 61794354 731725245 89359232 71705991 856066244 371076331 47539459 675160444 821393428 882605704 32816028 271544658 809852778 314167412 30786622 678321314 681176762 169259436 673703946 102981384 259141622 497439649 562093043 524834140 62474553 171118499 582205322 27222732 406994285 95186333 566403866 628590517 146686638 70485651 142840812 407812057 946416082 321851991 140373568 199681786 640491328 34052265 220314239 356716313 46103483 54028520 603168973 684984881 904370953 50765368 92347893 753617886 146100007 262603308 121598057 862185167 735987812 116005780 333355484 442350327 950174573 479857955 679623788 737025430 363107148 995536284 574469283 14691216 764188227 78225920 143797665 902485758 136568148 337259356 274452169 56299777 910992627 916481270 884075640 245561802 203099082 207956142 719425425 858090228 91640896 62163234 155837356 989666781 686042508 905218301 689782507 464934299 97523784 736000614 629996738 319102618 613401514 121244709 496936069 198061105 672794101 534367034 32641297 619430967 197862821 82294320 688068442 162975747 394831418 157191872 75737120 101673014 206496082 276513593 523901277 269120542 683230778 875837037 551306928 267697391 10791777 209766585 331050682 644142938 138011819 910239564 212169498 950173981 796291216 867764314 486693242 605393021 246603613 842939752 545866315 462596341 770016454 963702595 691415838 345499183 857132816 684814833 267382098 549437999 762106964 732048231 259283424 523833221 176979917 232749863 168245601 680466818 254691135 68039365 786894914 31822923 246733295 206329995 754943045 991524098 232006345 246716309 946497954 123646225 135155859 896691135 119311954 993246546 474732942 40050405 560654380 128551830 362580833 491763305 507585699 127523466 427739520 252880571 75949127 465361693 592405598 151247351 399338023 284162832 367749767 272003180 784167902 994689249 921412052 960671659 72959560 106385872 39749675 236567056 173567027 816726315 357740593 350881030 749732101 421758412 285007582 105193417 679260165 564871963 133990688 750766565 260825026 716767381 867854411 201359272 798264656 722544402 690600087 545156131 886517937 963298562 747095278 937740499 334753766 234976265 921508755 206918155 103566062 882099445 610463784 242577433 681489602 283446150 624524261 806848867 716597765 64506806 418990497 816106070 837671178 235349190 642473977 994322425 180172535 884752350 709138542 542772141 980384634 217839905 517899301 945680523 885387169 963427226 139518898 61426727 992497939 251859258 381131440 630530438 914916090 563645999 198666241 424705626 635062280 10765101 828218484 408852775 882105206 763718551 216595422 4435200 206566289 286997428 241481261 261837290 214421133 996806546 481650670 825191962 977474486 119932826 530646888 832360932 297626451 708102815 438884200 434627656 807389899 706530726 770978999 666354763 93357912 989651557 936745467 557389904 210600238 978093889 301450709 2427524 107308404 897401537 122132515 700563171 467046354 190591164 418791092 170177824 522822756 526038388 26333275 109150526 532793323 707627831 198808557 249496248 947668592 732919393 129379039 248165226 251600984 435112820 887654931 152943927 847934715 571229324 739829590 902371983 486513187 107996848 915701162 896844344 410915541 319187395 877629063 782609701 4138880 217794196 276248586 588618841 249393414 565332843 5007150 752156581 531930178 725621491 87686227 681993170 35338819 566924121 429761422 695734289 36593776 332329828 755414093 726515965 12500791 375228653 87383157 759139168 513779277 304194750 118248159 648494936 396816460 506756603 497078100 73854758 747173680 191536226 378845610 643599703 257712556 420415159 486613832 412085467 439512387 714739287 914067047 164776266 629989046 820877047 781113664 66641195 141427112 600165746 749263863 808916389 116681672 10188656 811994427 562375564 834345260 396793616 371491402 743033794 297711379 449812086 137118891 215058544 596767065 945485947 144648019 499262601 470873426 128279189 65329348 909230788 302752468 828080890 41635094 787848511 411893990 464539520 32052639 25364130 952512380 188218343 334675053 360089568 75635167 384059338 287677558 931076677 907914341 281834298 127769239 764162515 965783685 539376898 680845852 653352463 259681364 157452474 631216200 295214938 195118400 102898816 228674226 514874239 349502981 66490934 379844556 289267953 653292785 832469953 639926051 195348798 157612258 431587799 406568657 437137875 228335404 653858768 948805964 747070557 235075116 13237246 367526943 426558300 75694050 974924262 886317629 536923562 261459932 2742162 363481494 952249551 410022862 559476485 398443381 981364195 477297780 927030588 397680635 221137998 720008027 135865955 600579751 98897534 211696649 70367296 868152778 978033094 435724307 238282676 421396170 426201833 664485982 451888766 760334079 977551253 906174702 602389477 336129895 458726935 340743084 796706680 445838887 757733483 721304736 875973860 340158414 740392406 240751978 841143605 877046091 747421011 428333071 923269002 887290571 742006584 397225813 741180499 71118516 853330466 103305056 584290576 41513947 710158887 451469690 649751617 927644147 562332107 734707241 731822194 527112589 491260073 248024321 425313080 574507148 705264734 184353995 293756718 684191882 774442743 887489520 490843332 331029732 432055049 384243929 202828213 122228455 291315409 715176289 231726146 116788713 132610992 961478970 527515517 912784073 732742090 661362209 989010905 319018327 845289540 916717689 126946959 556337734 87683693 402303727 161450686 357897140 52150955 374923630 562667394 141531949 528440031 206416573 991438486 331654112 140812717 592180130 887453909 98775910 9990953 65435383 743368921 347071031 137994886 831916634 422002665 774407192 18277531 211439943 393528141 350470350 809942628 400985301 692681651 32194645 866680792 182686158 320964453 796827728 492827395 668732632 405573140 588950377 411031534 870716272 277362830 71402746 748270247 242712933 587658084 330935732 528611537 315882069 647613507 837282626 869998908 315684654 135600457 438360308 461257286 531306716 566913459 173073065 623542151 543478286 714266831 748208411 411414059 641149778 627490177 209741861 483157933 243799044 465760431 55332930 638819292 712914196 969897040 571776895 50917755 931494500 408871636 112693324 281709608 94543454 51448889 695370762 423844164 660605078 457703994 93017450 687064668 111412476 301929900 638621742 742269477 157373146 883030940 500571549 416878177 37690149 301613262 143149250 957968021 693986301 817964501 4299241 687093345 205943926 357022113 863380719 108642292 921965851 406371098 715559171 851114009 265265567 161459167 936714458 86070899 849915263 532523314 163170948 97323062 623361541 85923901 421580737 552614067 866955895 402556746 533819103 970417871 91328877 646385085 557093118 72570667 351067252 929969424 833438132 1505099 50263333 178163693 872646205 297028619 843673649 871857275 94992340 857346437 233136609 476981262 613419954 270388174 140980377 525311728 9465219 933179986 395970568 469740971 444479876 414285582 826919867 320596016 240892227 988060258 809705299 396481671 895614104 718903562 892203743 471124113 179378257 828073527 71010265 599291358 516327726 920118863 966002046 748607070 584258342 8386801 406468261 738065448 609479761 977512481 328242010 331277221 327274636 730945493 487199293 561928941 911690005 200928946 466429765 969432306 186659891 920152509 970435254 167040566 112923635 487975055 74778583 202757549 949070836 240541377 576538416 551042927 930624899 223977632 294058940 813821392 680912159 193672777 179898929 521009977 901552755 419905257 845572995 304562322 157297204 726268562 576430590 464776219 328049650 778793089 864663159 7842760 7797744 671993116 791574807 928299380 417516737 741790177 308111479 867528074 646190336 126031597 702935465 483434826 149875857 592516761 756919288 31651342 462370136 238639410 55895952 984340129 662930207 915336560 658548511 714029559 63725620 595170748 58509845 391092968 435160028 99705361 122943776 178431029 192051145 827440256 412626470 313648201 349589952 154742998 738994207 757540556 611753725 308915930 558717790 93325372 920562036 459403141 100407589 984402933 156965963 313671386 472308252 274915041 785986831 510479116 414474366 562982123 247798431 849623919 19400829 219291459 519872162 907192223 160771362 472604223 384106493 243656588 410523550 252906440 685908902 486230029 46249353 148664187 406432713 375208950 910850696 648776244 821247588 758360639 612863520 566314186 285727515 543993897 772008584 125183619 241010755 158555333 697540919 206587775 254949029 857021823 149010556 568044999 166565087 226287856 25910321 427605145 800754621 768549710 874470208 56762353 755580032 146503967 693266511 686235818 91835532 609894897 460780115 949018563 13914514 783339853 947603056 659740231 580158730 928093091 865007001 27323949 161222689 269464956 724412771 717120363 141358238 722231277 520209965 308589473 926169500 518976126 485179571 235349803 530770131 959291986 575553196 244870587 542603017 885929855 752088627 159020384 218992612 897345830 111505424 386240711 410172094 497365124 356204376 265328694 24507236 426959003 271980679 650477513 406832323 453530909 980145836 38320107 387459507 125136195 454585035 535092579 476478783 321430673 723216763 756153800 375538103 494957007 150577439 235320673 664488304 803008834 914642494 759029490 190070782 738083653 799708538 461160659 422501441 772766942 327890265 144880005 471989722 224732070 218117053 431118617 602110857 943882831 731930131 405247506 445830682 394085443 560265183 579217186 67731018 903624562 561817762 225565708 785651684 374741020 206004004 864857211 700607231 240358825 814132915 432546988 740375182 302267926 889701102 878326998 163443477 877081843 559211136 615478809 653769285 675588838 623168617 605641023 485826930 763280743 393890719 464722292 246904097 869194965 722934090 513934586 203817732 36579130 486098757 124916949 977047861 872067913 592348374 48971733 112841844 39856713 642665913 425362714 217681514 642879481 759402834 744738727 613873900 334669415 95198363 114409649 830589683 646921201 743961197 486065103 75418545 417615300 387203922 579991757 790380656 487525734 926637013 384974552 503741226 333194940 738693846 481823020 962778167 585451663 942760157 470723632 548539503 614234351 345046718 137629413 290714769 936609951 378504019 846638855 63096678 222915961 168520192 79707342 898889603 92506621 925320650 950271608 86502214 430652048 436817239 392645536 542489889 898050916 794907674 195424989 332290899 405480105 135850887 838427359 295646846 735078395 446516187 16250730 900503415 88236607 562527068 452520060 908500392 67441822 983733218 632400847 97320756 400514539 418457111 142901705 777618970 622035482 702143188 201671768 262358865 419507933 572018490 604420006 738536456 290291398 928660029 696655175 333747111 807805193 791329765 569299926 569629934 241611319 919607366 937627234 55884528 149168601 72173299 726188570 315963894 182356591 523960586 733792294 694808875 712096283 843123914 479224231 159216167 285595858 364796483 679748940 247919942 996297468 43290332 229018421 581046913 876559903 482645673 983412332 996520382 916665041 911548028 943977580 252312200 683401158 918066684 769423391 588104437 313715383 2699397 382731558 189595072 552087036 442090434 566307617 924476308 251366020 60480482 320285052 832235057 830044053 898850124 541467129 20712027 272436495 463303637 552974266 252002909 461696963 120864360 30474700 931494247 930626641 793362407 959923606 503288080 592651215 248777621 176673221 421021093 919567746 107911460 49429399 584013709 918884964 118447349 539413569 842841407 308624051 38021506 990040788 221231230 937111633 949972906 386407106 568170169 45146744 201277869 616336907 73353424 215199283 838501101 254430160 697082524 809507176 478520525 180743478 255533800 521513517 669640175 483612087 924046023 534353389 898895718 126720631 33105801 869579263 742458275 355915750 986482415 794687781 191009842 632580059 428552379 174729849 859935567 322399180 951910111 708495487 881466950 21293617 623144928 915205787 109492654 23644384 222567332 450273344 76755423 940388553 753551626 441575827 342314739 375926758 344753897 591475859 437048313 863912895 959700903 798053607 435869410 745743458 327966451 865061340 103766841 882110162 547061971 698856588 752087996 486600255 136048294 504079259 217405323 657232504 724690870 901082676 572808835 531697277 275067817 520806369 380674864 394620319 289257115 501734261 65184035 653518795 782952500 65207540 696071918 464429691 82451291 738176984 797211407 271861657 170041129 799464536 28040815 889106413 408188401 675971689 734731988 19964819 720617792 511833310 594627956 97657624 66260396 602024377 785706853 366659232 465073479 788030310 817072651 733147377 152126981 802539114 767860391 514142851 703380524 419188333 129041084 907888238 273307141 311786023 994583427 72283702 581252614 884093389 149107914 394140612 975405650 290374847 549004759 478821611 826085067 234267167 556136150 422441068 914219240 578643440 814843282 37428351 294510576 635059327 164363304 771439285 734255424 393833240 488285882 633695732 155145659 607427477 647513974 771467922 673280900 92895249 908848240 541591518 670331537 789543000 25313327 68560529 686649441 459522947 766081358 303857017 219815351 820909918 387913457 743265472 11890510 484048372 564059810 156225044 500276895 915491724 791636169 262002839 689081475 137869858 499949277 71299181 667215062 346950502 434449651 379395546 784474638 577302657 602141237 400731037 739917062 546940604 864271594 630039069 109797778 873228518 535716129 660497596 4905207 374819280 851000723 701721561 217659814 568389942 247775142 124327150 47205763 993480769 206705903 592196889 23116457 874284825 91121295 288315079 324045557 974269621 381113124 112377808 949357334 465556616 890602672 344914749 742058397 216135293 869602406 100852488 405160361 199645099 781182788 728664126 505015545 499808043 340225657 604506044 94201460 936319032 192126376 127491525 361112114 961058407 524825816 737954707 732033814 876550221 924315690 471774673 129606772 706124036 546080880 709079817 492232090 947902461 163065573 341820651 356198351 633951468 988070978 442741629 614778361 331482651 520715253 146306828 346265858 959467845 780270990 522137531 354006230 218646084 730180616 515846118 191843099 613311404 272317065 156575411 662707598 303552026 133618090 561604172 625643757 996568742 619871821 652868840 618633005 504314128 384363998 313843334 87925872 980257577 822995991 301762494 737040725 889913583 428261122 564618791 527342690 537732981 576121168 557315668 932456595 301473691 952403091 475552446 226965632 46617863 52790255 891200654 971715388 555783372 609831452 993886832 159873183 739175972 27673637 717257881 43206548 361182555 714399275 163961655 605815483 382860606 728121787 410498140 552434588 93564687 647571195 716844720 587821527 53680080 610310350 449202197 452086720 101827813 104546401 432717448 772467756 141375847 631355327 224753794 693657605 524994473 814023033 58123664 265719091 568177281 61967130 145821925 599150357 924295070 200730899 557525741 404210481 704954117 694114663 721483474 759675855 643221639 128682647 324194818 936433092 588519302 778945069 738522665 882944175 187559942 803351734 962570107 310090880 398397271 313634635 440233050 817775599 398612930 796412869 487277110 5916203 182974184 990739860 323887401 758126005 63802853 829995803 878395918 837129311 370409237 923791248 81273304 42741191 560498753 700137867 245112812 63709047 833456204 30656629 193740210 255523120 488541411 192495750 736120674 972627035 837331104 469425547 861729817 472223425 73303156 125138192 568568297 811055807 356684930 549164433 287582425 790247556 221923809 668486315 176701661 56394127 497425409 581796738 35486818 326351176 604134530 954823882 94804782 927587335 848852244 276277001 546357807 46379833 836639635 908006111 383649561 911766911 725940166 374527743 57886310 773549509 520782658 200106141 129673356 769681310 282423810 772365399 860571973 484508111 167152097 779375939 252967960 410547028 274582368 632915759 873744237 647051431 935379774 663084248 712771866 470414640 580762190 141240702 242967694 561671486 143826099 97637573 19655441 771164291 185050090 964648139 281076949 358649863 81360690 580674790 34726426 465932114 942026198 78380461 287354395 820542004 466805334 664881278 972938329 541535991 391067947 673909805 963214137 17343103 899594699 978243284 17045090 175509386 79550802 980731427 334062659 890136989 116656522 761088311 453895909 934378002 379219088 661716134 593939738 543541866 90184789 415527620 137440160 2046050 126233803 560300547 384602047 913655119 565304568 452803052 513748758 343033672 626135687 451438925 979420446 538414424 337427136 187331038 373497477 80198948 23146754 992725864 364358153 340693499 295563014 947123351 874539654 15857064 628275440 731982667 814180686 732554352 465134593 607343667 875819594 42171637 432567585 159475101 842148482 83584474 84437318 587875927 913362050 277923218 238924858 116412794 660704638 567574372 680563232 522971416 969507979 479134183 614449599 335863642 638784148 347232492 208282789 124491093 582532283 802950253 344481082 603701996 152782616 825105342 400445899 310471529 333508535 156473755 223246044 840417143 929591996 845353777 392313260 332840532 954600205 648259867 442821645 289210031 235225204 505558709 819261225 340362874 171031638 661121671 263511262 774750423 117198049 1254777 562218030 127824976 287097861 44769004 970831632 48022777 280028658 712541377 754948074 411917294 935580981 475535568 858182392 931345705 243566549 595739769 141632955 557102056 23282994 391135054 510392368 588799306 193831629 633604445 335217534 177803769 565131839 322477702 649112521 592537274 942770525 432186720 253582754 845613062 580810057 899850022 41383973 615433586 439184530 640902181 590991551 625140092 782707058 238972312 159320240 944541173 861194743 181194236 297963567 968464371 634170454 758511692 142869929 68488664 189127649 221854481 357173065 176807789 834697942 733615603 958858560 215285260 862529287 83949034 673581308 357333985 40853459 70708706 133795270 445467486 338849697 794654269 605687790 223555294 431552496 585788064 874862840 540475775 482487880 239295478 275684010 472925478 267537355 339582257 420523595 558430175 159546955 457621576 345341425 957409606 910939239 410139677 366103839 53804866 867071038 701626973 956727188 619631088 247104376 556097348 842980610 124079361 716651006 51580547 130799946 529871511 882911663 78193978 276503336 527687749 932458727 997479955 228700877 688045105 189100666 822516127 10158058 737757032 784219249 684300712 180620782 566669170 659097911 28944962 935420511 297575111 738244365 499167239 449943242 972284519 168977428 834949050 197803300 350558461 433412052 928582725 179049886 945889638 972986408 766899598 940639739 863481666 212319126 28830414 445435532 436289502 39014011 117753214 150738116 650248215 557256103 370528825 779847446 10164422 688679239 47360045 131058453 26559995 443666099 127913250 113178420 20641572 300023498 889983297 508257332 943998818 410860036 26120026 539969073 330887254 198339828 522611084 650057708 123033559 57801505 351855767 981868467 451988854 544529849 800884606 321200099 638127562 407358328 15987314 754116870 319412896 81727258 365867471 551658149 144307177 211340321 251360867 567483336 151804211 708146104 944212923 544656430 85385430 765242022 325031119 482613432 380106159 321412265 576379379 736433721 940573891 887952131 164383357 522275527 253198725 239708658 481797015 475648389 794279682 156251196 378964055 564419457 308144538 939356117 18496155 311122167 343071523 718319643 13928188 544748068 542592816 886830563 901748999 451633596 485361570 572813025 749331795 135876467 258803540 226938483 450004948 866642016 171929322 833819423 59852296 947226327 260274086 419297174 112314859 143674196 711993918 760232300 377189160 868595651 475383191 156741067 108444594 802707349 418676975 951615101 245015671 48608413 81133324 441761148 438494617 256169613 739683551 926573382 930880762 151710520 719138723 485456696 480808732 834612948 39754559 275917706 23746438 675008689 589137657 654396734 662050787 313296332 507589145 660315403 121720273 553381014 725124959 715940906 111264375 609342076 441625472 841018136 948778136 482995196 571812840 945773761 296510087 504879715 773050526 37579882 863235945 820616043 438885418 535783298 103972803 133733761 427391390 578442752 770841932 881801860 948816556 915387969 688141758 393681492 242686980 247550019 488291951 831030780 635283853 173133746 212113558 842998519 238448950 836289999 208101288 853931077 66432350 123261254 707345040 160568210 885372268 426676772 994850310 473000955 403468223 324841071 148784666 708944336 693500440 249204938 277751157 198837667 358591326 148869020 714610219 380706695 936041904 606165229 565327267 277559552 727031054 373564399 187939634 419497084 175736970 371027396 462793254 355878029 611438312 780021260 697272902 181164352 42130213 236728009 775560837 212025658 688247341 745880763 363370775 893445664 372420482 44469508 815520354 612812176 74697949 931783104 441205406 519979758 839696934 583029011 584802803 898129749 32876992 434035952 951979427 228049809 776772713 195440546 451820070 837471138 816744139 116302186 971891787 989534804 29232802 120635511 929119320 463948664 550833231 905388609 512825107 640875793 594201952 172392026 768693026 890753306 308278651 249497258 614341127 637581838 74959638 570438534 670989053 116511894 908467570 379409098 145325805 299359126 638177859 446726398 74936278 550472556 774680060 66922457 254526822 542886784 475466962 977639751 807925415 579306348 394311508 3507847 641074568 895892340 234258202 342576537 63609385 430635167 102038595 985871477 373885164 638789344 458675484 262624856 907499127 860099802 758019236 81000117 264876068 273091238 38094065 874008001 352544196 135243300 404505830 838537243 553913149 93891549 325213702 39216148 167477464 960939017 705231086 710957615 281508905 779990755 108804849 594844585 646097908 44435042 376242485 425820598 860935332 218981068 98609133 344567074 106631506 823698157 5497075 844888807 603125048 216191928 972951567 357315166 616420104 193788387 457464017 623607631 626340613 345550171 551088788 400722943 784062894 852452007 551336258 601655591 537898713 948829173 6064338 406475987 837615815 435232843 944683053 930558251 761340256 922554920 730364662 970782367 454260502 371254564 538183292 947890406 947644775 85245472 810411209 289082408 780365017 514952347 20334240 363199080 392315233 684855607 708958501 412426709 372754156 115545391 250183952 296733388 19647406 908031420 95868427 465490155 797766084 191412367 125450156 671685217 644688125 883963997 428770836 650814176 992502442 370578891 484299508 421454278 461555864 435971936 373925001 74065506 912088202 223247126 28733712 814395007 118295309 631421435 125420508 544349251 198240453 79729816 466123508 512223012 938233774 651793367 208800287 733685705 172234844 347918264 632052047 133908490 689210721 618126819 240080107 356258460 735567099 704404270 42448028 635685381 462645249 524453205 217466665 603382996 680283528 349999608 163637374 613750856 592980463 905832398 885897291 320675839 566889649 833807560 184871312 748016010 460137620 627491374 980063913 827436974 889505416 786682962 969120795 380703328 281779668 298355851 69668407 430919035 328167787 105042545 499315263 792643734 901892549 419835637 96888563 547299294 789630857 698346202 924111383 194112598 342112631 331600900 206787361 706336427 182882125 613980358 656687761 850899405 796948171 8230124 36269385 201284422 294422959 177028530 503135241 899885522 678543385 736282891 705120273 512825164 630161294 628710780 272134208 363649315 524383515 728276368 323127347 58134352 445569762 17328688 689641278 986712142 167560710 353171541 867197559 990311893 265468345 395480669 658029219 995088064 101484303 876614300 547846378 995974145 622745949 478487253 274330556 462191377 705237492 234753842 56399662 546637538 121668740 436968159 977048355 531946038 947763209 433833 200007596 512192318 131102366 671367933 159997912 679395403 229138075 819634052 266606419 820761165 638552775 372271676 613691622 429880203 852809542 775626023 987306003 534734869 467641077 363830634 570641915 126413371 347109223 333108453 57210062 46393481 488869876 567400139 716696809 766228477 190404182 206186965 224245404 337507275 366482720 899846830 141057336 444390000 593172430 419992374 904719998 516133825 896632735 191414750 763581282 183392723 282796885 112703169 535738485 56501165 801211475 744089540 922437451 470365556 670038422 474808444 723146081 35856957 708758887 855556086 2977646 942964228 69684341 298595948 773478626 107455569 832152361 637830437 969196327 745177366 706309581 550284779 881021622 951772739 841347748 898529446 411340259 992902354 836308291 732817922 217762797 821489791 392380546 371941825 666658848 571831489 253075056 535973878 768954526 89172056 987194521 660160748 109853679 186048305 653865721 602133802 181203542 113937708 712428462 563738614 141498878 947503080 328662955 911900482 595684902 565421533 331828690 13166877 190283808 291738664 592722564 754605010 480822061 448113551 685225662 51546982 780478569 628326876 587172954 654855714 416984470 204434727 388442458 716992635 230601529 546905887 97855972 777879401 670746443 44184571 704327576 198234800 143261735 886265216 582426900 599837908 435817079 100980547 706057870 824623640 931246963 451404295 996286193 682129870 474238121 673608967 770146179 147171580 556352652 477766036 335907649 833656937 743190522 381505378 333082683 110867596 122850870 295643724 84292799 45565375 232485373 389444862 734603799 198079691 892450144 747179831 39616915 423463138 735877791 327338802 563169686 800228863 505184779 696573358 921362648 116414731 145458361 884439777 874995968 181339495 501555911 963519459 96962659 696363703 556420673 778249450 634616613 799042023 812128639 215338099 542628185 144180129 641873771 884716306 17446464 95618281 319040606 572939224 678270716 761912510 807128148 191145159 722738029 66716037 570138488 182885273 912419315 399452235 907869845 946384048 981976064 792718317 335885760 157746683 48090224 418317407 469202375 158073797 883910051 299906308 626956318 503005334 940862958 18199564 482332571 242062825 714630953 843897625 819576881 166162621 889963568 453100755 938359969 422375578 312703996 289052509 44604311 483801974 215999593 302234141 607091228 79179216 867763858 142258939 864806315 819515599 374678104 952124052 307893637 449426177 914223231 588208999 422006507 962040274 469962672 535483040 601327344 563187321 554980660 797425999 935428323 72985097 155952384 285170715 659420023 824579441 736215050 633851727 616847883 57951301 884485096 679855980 800118646 226132888 415150196 418084219 200887079 520859036 607994039 251391106 958233080 669208105 908003802 308469779 606161838 570266387 369577145 695596836 218015851 675417424 280599438 950933085 71918291 338399904 580206421 309358830 727747214 534772708 330275904 385603785 838537782 382168555 9240732 799289385 863185126 377455863 628457650 956357732 838751744 78217182 941297808 653784029 450061893 6488564 709953300 599087492 513792222 815633546 527018255 769468684 346690367 393859885 601157701 936326745 969680205 286168642 841551034 286246077 229591472 444332547 743737616 26291932 402109328 955027211 497810582 230090150 353530078 288280694 371615842 333625958 348543823 100831645 109045010 311809855 990011047 93789596 723250819 380635527 959491196 903523728 835914482 389800968 634983006 772425799 809593888 324507474 316716891 718499846 690910491 588758216 116149545 646109334 567044625 666356596 63010594 948269666 898274286 917601074 218413363 841730097 88385807 339190858 980693004 193256340 940912339 41076622 592143688 265084721 167786406 622536772 625502715 307277714 237309071 613282721 854431554 242012516 829940023 914647391 174651757 757142214 992007772 814766477 453020960 292226499 296623149 317440949 592271254 246549122 955671898 668476009 155215918 586076118 95780428 730363154 612207234 625002547 502356199 777764295 406717530 740432189 276078885 941826256 283818015 576884534 842114268 669201229 623961087 664496761 255594466 526985257 981696887 650586792 58737031 346570079 66204962 184485150 530101561 261327364 877561638 828891630 559509778 959294500 551387696 237447930 920331306 227130028 508566204 417340283 479917195 29305729 991749930 456435582 710531048 705343765 966239861 627398203 968286995 167906472 498252967 590200248 854848030 375227360 104197327 599603572 785346818 792395000 638476236 900192231 564624815 586251821 603646281 83501412 266554122 433111042 76335114 240977564 206405363 864165195 479827590 237970606 200246257 593413540 856578435 595546314 940184790 729307659 56758070 729338904 536760633 27086091 582080764 596318084 714902686 94162676 559469864 465846837 401286286 167490930 670001309 581106930 931494781 768083635 181053065 968688136 699237474 667225237 656904251 426354751 231123746 266763725 822893818 790513868 333127453 35747060 631639017 139539456 842632716 603761719 100758346 171515999 488798091 409689637 86856028 361531791 122060826 654926600 380012432 316977264 642414885 851131111 146251764 382239029 953129728 902073877 554454210 506353922 77912911 591121209 402122045 63398776 812091908 837937485 971273371 382872198 662831304 717867628 588497432 817076539 428003142 755753625 882297578 768378825 672658960 664769363 789098551 387532920 369828789 369556952 405778511 15748684 368663301 203005776 484262032 390382009 895881394 702865802 620181531 308366206 27377380 176473020 421120864 603982958 121715769 894531469 795879862 818287900 197395830 222331000 348026259 698157495 80062484 978167078 670581366 644236892 975395796 477580594 200586808 20860807 260201731 895524372 111562625 965537386 926673901 96301490 152820163 440209333 759247180 823712059 344305328 756808986 91768310 202827590 271584928 298807552 880389319 321447022 517790480 406167352 166821564 741266347 247575754 760722117 856716359 874099041 960371146 497904469 481393550 753079445 257918186 669378215 125138309 158870190 798805238 739764752 792940329 85644244 475633400 454481326 332617415 260319405 909388684 116059733 931016848 353175150 975022013 79558040 492211888 95898206 289138660 914779572 517024621 93851357 405126350 215373514 981681603 762249222 122146648 779932262 782608102 53537780 969770218 435330710 890589986 863108784 928175868 489306518 611740999 269601101 177843746 933994762 103446261 338671962 60729522 801710026 702321049 45095133 188133067 79582654 396832119 755340423 919569337 402394918 699907427 591493545 290317684 491211859 390870981 508501106 992610378 710864759 580278888 74958189 383379478 678860435 876635269 699263530 799874870 125552623 247141443 183854736 577266744 407169072 522520533 921232002 318691285 386461163 469222900 460430252 654005798 902342977 630839407 59117690 461947113 538385706 327133770 225021956 793649033 395644089 205049983 726247336 954820373 185677111 274881358 218992150 184108332 70722285 263247045 794878267 771311857 142160636 985870238 559487777 20820137 350007799 364700042 14121359 932617422 877294994 254841654 129057960 621547882 173722987 263268624 78901072 810231202 230098272 268714448 771053562 930848652 131292598 291784852 514016863 675763551 541289361 691167470 114279606 325424758 526526519 787060605 623597814 126504587 507135016 280475044 197444039 287192486 712634052 961974895 844619123 945533316 743942119 208253423 307688911 350361809 60415537 353287701 924709144 626557522 953531340 93924579 78910930 285213858 796151398 166336984 144995263 162073763 810942004 818531407 65285765 201123739 573319584 206033977 449073253 270444923 530731950 116452300 833318679 992151149 350580491 672494742 303129508 111508637 471513566 947528314 234627898 431179489 174479091 644727961 218434757 926769323 943254476 478873202 713232520 947146336 48704719 574107284 777274659 139651704 69918987 743596712 703214201 72469393 269692860 937687689 752188478 371776379 928886986 518629873 530463609 828982734 682624625 771813858 637737761 892342220 722095519 888758791 126390145 308477560 363571790 492033841 847126808 559198233 872080069 302685880 846983729 210139801 880294720 520113404 71840882 609628419 780428173 184395648 623578272 555653775 306220011 586611176 35598847 670432064 849058710 252890515 732593942 318128610 704081289 294809329 520738138 608686925 40583910 852054258 309954105 887976246 990254102 551462884 314463962 16810307 702921571 415214680 709065689 532589164 193306429 929120684 341787912 833106957 879300947 453931200 11589317 657901279 115012281 236384385 706299070 42778653 416654290 335880164 587127045 130920822 620175795 958042402 747374899 255880598 936081616 770022943 198916304 701851400 562112639 386960755 268561008 1919259 849889067 995508727 468012717 698755417 986281560 26428989 500605587 920888527 211193640 718421305 91859402 846795293 953308758 831834602 866668648 394793113 116644242 264099358 962032477 728866263 16316420 368493565 443048847 112881869 776094206 120698040 395378648 884938082 529228629 257103957 895860249 653176965 777123711 803365911 818953613 610623036 580927819 784912852 623106551 992888260 244603785 392234172 785730888 593231531 507330356 116799777 384017839 682673094 486934646 923704867 167347064 795351021 490983808 534669608 536468285 988556957 80345580 591728848 829160480 70821449 713657141 58943537 531896618 510527881 75365996 11353919 137570274 640477175 58710159 870836365 917537223 915351640 390009672 113952337 954717894 777339390 337767286 139773939 199480804 550931169 45700423 381468482 674728256 361589926 525431696 11664800 115422094 117687770 612977929 282229718 282206462 621477136 857180148 133947781 518827047 286248584 193210128 437563841 925931845 494981423 56734766 852459932 79907861 796335177 422015619 293546995 844418707 453371873 501317124 162816143 320221875 437378324 33129677 143546603 202853843 379322475 133194342 382388429 597342624 487266587 471539235 716761011 584716340 884777987 810105617 831313462 615738090 247864215 299203851 342066438 916768519 469554056 402971293 495921310 325147047 403595612 464955518 839333828 722959970 985648759 611362838 998876231 731091024 855467972 173353675 599446034 834011378 382550234 943554524 684073613 564450866 364458643 716975808 724532362 817900890 708612977 670091159 338036823 373863253 183898325 511962972 308755527 338092749 680735116 679738187 57480222 344672760 375700713 354972478 284961941 233936664 531833950 934665541 272141332 763044064 638112573 847370057 38423303 385579783 277699211 224722724 410425122 555343317 708990905 993347785 813503824 670330243 43395543 57654834 578382039 588190267 76396194 934796185 132192850 14881331 981661747 559035527 307278669 508170574 604764738 376937235 767665217 748924684 24944261 578460057 398175442 780087585 934999603 878668141 242157975 517747658 831161121 562144265 762973572 748526581 866860731 976069273 487499026 72517796 175404202 238061533 918307358 268302228 164936406 311850245 474482375 202129958 579036707 50117904 872018331 431553498 899908894 594778089 986679374 823179915 130950770 716279246 163612895 984563793 751101673 431780929 223514316 723218185 445599476 722811443 872091799 197652798 885814991 344373353 675218071 435167318 220151437 845797692 572075181 94792766 310008419 26965959 467466419 702339323 835320649 688389048 266798473 60783209 34419553 397571232 406196696 973444267 777373803 82650553 336585371 489718474 972749484 814047668 612485271 268307140 718809828 289529658 352484133 150935463 347058557 173459343 241855748 520827042 796313728 174771382 327776577 65446990 495302201 232604684 399095541 849258160 972773011 551546182 171157012 593073729 402821161 83290875 114063178 877399651 514257515 661168169 946322048 138316756 645901417 90624852 510180987 34961558 237282943 888264271 775675292 996177028 105804318 79363734 23707265 566104780 970787843 472335091 630786438 22570039 642708205 966301706 277372883 413389700 584716317 92716217 124667971 564801646 313909778 535659431 616218831 933754790 429184979 40010563 783647977 551463299 851814061 870613856 474071960 220428936 259663803 851950330 926893526 919339988 975873943 783165396 485976686 847908503 829096127 378449489 754174317 185834062 302145884 799077471 298426669 404949459 839633143 946031237 377565489 719459264 116439051 506423633 465786597 462270032 704246561 636036810 489647524 795399885 753415745 617932107 608744981 7411022 156694802 483914324 377774403 447240549 844038959 785076499 393620554 416057984 76878643 498957668 104711152 606350615 922460694 893433280 646065525 271479690 240159233 302793061 624650936 578527080 666209167 98196126 592715500 185455130 941229354 562146430 238744979 594705744 46700884 344246524 371545262 439640369 738031642 14137555 554641595 767005502 915959120 317371530 891939568 470196245 681815095 762570217 232162770 649486951 607109292 102377086 169960164 386941670 218966211 375493266 662648274 994880200 756057221 125771724 127116128 209810927 745226670 164345573 439016886 953440778 297936058 440458991 966429490 681802760 173515824 409413198 149015140 803840587 270882489 89908023 323809309 976983548 871563390 681450792 5199564 880555421 789952720 270744015 16809708 316371429 591604793 378890706 677537889 308030981 851794169 122409893 175832859 605511560 336884815 594740270 798304237 391103057 170711955 276843619 860442616 298231642 788578642 733291060 466327860 604044261 636077358 698666227 602475491 852424522 734786847 1028530 496017889 485084768 326755708 139530644 917977074 46369480 150015551 679653989 259672002 460592407 318255364 299383600 486644950 332302183 124561603 599820812 768677126 177935195 241028966 48564135 707572045 368473922 61680313 595112404 658043899 310911309 698468314 926304920 113202965 20873688 848978947 747491632 225415540 159921847 338833518 40067372 80155508 668686462 671198527 157987755 228872928 860001566 737276404 708015748 875796323 755269633 51272825 402902534 229190131 745894264 269344971 95126068 25774406 682459290 841215615 346590697 56959880 553352173 460312463 531879830 70189070 292102434 693773045 198947120 338717419 25864613 336486451 814841003 619550508 440342917 867062324 383210170 211889338 71993325 140529107 718738268 115068452 69936200 110876503 530518641 906928716 67213916 722086163 739749267 451436820 281014708 196477682 792113755 146735729 688795052 298831645 956934359 955493988 888375261 166845135 641442152 844660952 202845994 219545623 643790039 808931891 763034701 620290520 377697457 592931113 155197680 775788522 985761435 720016420 2696090 889495243 82000136 269159244 654825854 416215785 729557856 771193363 639504312 522545343 183177999 446327448 700588830 431442707 464041058 707147996 518814268 947907003 264054735 860330347 636847006 85567174 45535165 497707525 853472682 355591306 349723316 176163291 667450259 989825460 145460225 302815227 15753743 262123814 478581442 248593289 610214939 11997515 496822958 547951771 356818462 34516411 703265633 771744647 118861462 854196012 604844407 31197595 380879073 784022068 717294916 540984845 521754991 600801648 224976625 475385212 369835101 656456807 412191420 919693762 239367141 981487773 29789214 354898218 791632223 468325937 348400969 430736805 261727532 808243061 944018707 960346587 857501297 84999997 878801105 729207947 825738124 826173813 88962319 683531220 405012533 421187038 974826820 925181608 474346568 42011130 867240161 168015347 189511411 762114589 485536087 110092702 157010954 540871241 117234336 250475349 643910944 356567435 280969267 355018852 81049657 33460079 848726893 58274592 749361045 993262225 254271409 825575813 172063374 487999860 915999138 927266334 860731888 517253715 752799445 361942454 363369493 89629391 703449977 227859160 444667923 354210074 578054632 342429306 485498682 754281892 421524618 424109291 568995137 110003559 343615895 931338447 939603035 674264135 852839141 934478862 983839147 976675800 439208781 737775625 308911204 747159153 708391905 2675008 791393130 725690199 131945680 29326511 393457263 628724876 906148680 64478460 977242337 731763031 153957146 679063340 823715333 467787847 793715091 510505972 521118439 359562167 104931640 511261434 841281226 295175795 520421379 575216134 178038823 950243078 386223212 483348302 854576125 268973582 900931776 998598206 267118712 507819771 699967070 454417509 130383819 976288252 728539075 50914288 467645016 852900947 152578014 697496099 596617414 804703962 271727506 727752249 759968785 5393535 303475810 939952465 710389380 893024519 180554857 451327329 812364783 325464906 205414929 21291154 770650681 908725454 885225570 642721471 759288768 982351579 195506362 872972528 662160458 985158246 191603116 841852365 472816322 179528443 675626299 78007617 787905607 334823901 293056309 266217106 155053194 325954767 485520565 713814893 180232026 579716688 839676030 176881783 689705564 350851870 707433560 119150888 489231719 661116908 920055427 322327691 850673548 797393250 695274985 619291820 470815711 708564248 28568774 614367227 618389930 3017942 128211738 591754189 313218909 964241373 784578659 59157457 485855603 992389375 197104262 416004583 688562690 329587751 921341949 84147734 586051335 671286973 359406390 292947512 500401814 808316043 794220288 362012940 840972734 207440713 808369101 981355103 788424821 106163258 250782201 379230879 565979948 745788645 27317562 90296512 932018307 938818385 53127962 158615470 72111376 678335446 321730837 256539003 53991532 242463871 406697743 240179668 236386306 944954371 559011508 45247689 191385586 730291975 865044546 69097597 589874945 514303820 337473113 747608767 510278220 13245070 37488259 691676112 572668413 948616543 755619947 508834469 456481504 233474337 941167519 852291112 547753655 205258502 180125326 612251154 964146595 710950833 864900479 269408498 706315191 199873908 539528517 763954330 658305747 422679284 785504905 690640150 937827772 277730264 800760192 63380928 943524584 133890939 545918950 464394012 751135003 769486032 531333851 76193341 767631900 2143933 527652846 777718976 999056017 381554370 255694829 326692229 228196179 496770665 542935605 169597739 997240314 368179571 771756451 167481636 18436583 448295699 296260092 754864846 628237547 651023167 471120599 278826459 309737913 924063395 126771866 633719523 823330597 180070284 550473415 184682894 902184520 3466608 980985419 400000067 391619476 684283489 813015381 418857452 588953903 291279439 482147921 542360828 644784907 75184715 309195823 188842247 150348469 482606532 62451816 929687589 694181264 770001626 797776897 428837985 721495760 683199741 650497530 132303136 747480308 752478583 628487222 54641603 683551356 32440450 547873670 103341240 683956293 703155205 689160206 363937030 268568845 115166117 66207880 448594559 180723072 588287893 308911020 482546973 17450607 374937080 33076014 34782171 412169213 742935171 451881568 562602779 859986574 116642844 57962774 375126582 841780093 84800256 995831389 80237181 966836101 227311300 653354584 118879813 103965471 569912133 994173713 826331866 542107213 340987704 396219465 433367308 104564326 978440818 580516817 446628926 142948904 120558593 360733416 501266128 285857706 773319555 259509791 813924233 720837106 285874891 612939827 462228023 914861426 205238364 915495066 7106380 206294775 575048628 600902953 82949025 765828397 270055684 374354404 351995904 641845918 651422892 854352416 119527771 353571709 751563178 240705465 264789264 309197909 521740518 650106952 314075578 2955358 682047335 2325881 765494249 804230119 702838596 557135023 552321119 666122946 993646484 440773555 763258051 728606882 832477382 670621628 784474323 881386138 45384936 93377810 181722173 41564254 212654413 332056462 933449024 151792861 378507759 932616037 903194710 168677548 182778194 477784874 327363643 146667465 19782470 806218476 680480552 504162199 384753605 774126275 188509415 907698271 365942721 346869608 61247183 610946602 264648796 984765769 505119574 332060292 147019389 203387657 789961369 464456949 638986309 624016665 539330824 996266577 984477745 986695017 782242600 644519754 273871458 923332139 535047152 41865828 115442182 154957428 921010599 363602079 945314391 420746662 443313557 260174831 827437636 299128356 261645952 55866606 570706366 303756495 834380638 520104166 989736963 82814757 331816815 896151431 151280975 242389527 404894740 215283243 607123427 202309318 631514733 784188914 591442641 471865881 342367932 798367051 240065950 263383017 305517298 968072510 659183452 524947082 811989473 984649690 821848147 662821983 439702563 688722318 809702322 431502629 541115578 546918588 288419043 275685287 877560949 747082590 252934381 541192057 899487756 360824828 448153354 801451517 737809090 187995238 877198304 238428242 632680401 507481461 874695816 618079832 442596906 421769419 841542433 844335756 464890518 398035496 175912174 870341986 458334010 862016578 431804484 356417629 379943329 50411112 399408687 912636715 305511891 526539902 749876212 354593688 177089796 785523404 328199780 504878188 633578151 757689215 844590057 843310367 243506598 27973628 704024439 556094872 297559513 955414377 654652977 724823708 585474235 388423270 56488881 472608822 625842432 129379907 504539712 923130471 245772690 701837976 491604730 346147526 448140823 60313515 980557814 126241292 645725112 89287181 388942214 382448381 945974626 166921456 621709291 402251441 907702472 765688784 933807568 201455863 491589919 5709558 232071801 407930915 593862747 341977599 659589435 764772955 834916331 172689297 998649478 36849860 43590736 379654904 508161279 656787030 912411986 274626919 139466875 603729532 553939785 98705761 732511933 853778308 108014144 106551905 995296090 897742913 594908135 648108400 974763883 126925209 473459516 633975931 802849275 303714670 390182215 990498608 734721912 957545102 839821722 618443172 853901313 137944296 649693931 374864826 864032926 553076587 228731502 733443996 302459093 898185542 118099733 901480076 786186289 317149090 813115075 909791669 131039681 303589588 106189462 91399935 261045436 654495840 76637214 208570261 126989044 853137160 611303317 463450720 16564650 39333707 792038047 862675807 311209612 899740174 861677063 582015308 953963690 326210183 741958577 686751272 637488664 758117949 47242281 129645837 323854238 535826713 828991959 255749848 117995003 827126371 248299580 384587340 955851639 506745167 36376591 221516693 239361018 503896516 95884792 211283543 848084147 88781975 280568626 398875810 194069384 931558058 602068596 71228677 342315698 348409690 154390841 300947440 832845270 244290246 596291007 226848296 994141504 674995412 92526069 233779836 116925005 239695903 279085491 38603857 482525604 230552793 645061347 664472338 79159788 590312833 520254329 565067371 450765952 349637783 309681167 619611290 865178102 127058130 878010087 998554920 707874539 594671166 734843226 116870005 214323346 15445391 345389134 704914516 255146500 362180648 880639233 989119735 592742858 293129875 636777126 149448078 66014638 176632882 820614997 934137940 208854192 883576025 366111926 438607088 19163086 733578405 85016435 367216313 560498758 393050350 831268268 820085698 818772617 904719897 413248008 919349034 910929117 2848847 476676035 530314216 155126543 819497434 778884077 890688472 666303729 977473119 738018099 538106243 390898726 425675945 911440155 155239531 201006686 601795146 431512349 852021326 486114777 757121745 888977236 545058083 74673083 10788637 147698774 218917995 188793903 939518882 843015201 272041000 394942238 455887015 918822400 979675764 943472714 820998385 318839669 458902238 257933929 675210626 590866442 601245636 47035009 11377219 535835076 109559284 985528235 537012184 104434212 893690569 747987470 557679843 30262368 246705702 840440311 911997218 452850625 86405426 411481169 335697546 656034605 957355418 572884681 827098563 830891286 801991941 824113411 967024223 175839161 660760584 399861144 831631038 570729926 495620315 14776869 6725776 68851230 40094917 554307497 430385395 200666784 400553046 486141519 363190388 68908149 997005315 933486777 660468615 106524500 811253108 330184508 480406069 671970026 882538953 527354055 894462224 317492446 30208184 743805413 372376384 346405835 937257173 643809083 571932947 163896027 547328744 395612025 431709896 924905926 668170700 569421299 733367993 680287248 989815248 246664126 758451982 480074217 873774614 592394635 463793521 709586292 872594374 257595878 514605459 543266661 672188258 916738845 680366867 239037264 670331420 743327148 125574847 535999151 697346162 830266110 514335298 601285405 876800237 787066660 70900548 325374585 383435863 251435482 574989809 51623054 422521053 601827651 962504160 72848472 920096279 746896539 442224208 800072915 307724778 634015813 253140397 54518084 785302032 73822298 138666118 706330576 289393700 83854789 51434021 109500779 975385397 280055596 642671120 534479471 91977036 626027246 902036440 829881925 109980513 275273847 438279486 482606484 237738966 997098835 984966366 991052199 998248644 444543259 325450175 990469997 766713649 389134124 999283821 339783149 310053985 351951479 608793825 193220730 7279193 878033016 48584958 904480895 329478951 83280598 649702538 94079374 734446313 26747813 685431071 257662049 90253760 156083575 280056082 419760403 147985089 990633775 917799230 527572272 565894279 810284670 44213396 897958489 663298116 968577325 182481157 380007001 364358051 132198384 977573779 850056123 538344739 197574564 468489868 681672872 834432825 595921526 658798277 232041884 593077578 580113281 194017133 741518732 108791541 841729032 867458717 3614228 719379186 688808811 947793985 877719988 88298556 168774264 471460533 712561729 450469627 661820552 829714430 63013782 675174716 583304364 453978216 530862777 813371067 684724753 176781492 317545330 132514693 987773016 699554438 897367043 243947327 370036954 263158936 732068604 21295222 216528836 592515549 325960501 667209441 703298142 79792211 852172885 677520977 525545325 576075120 679394601 552203555 273824055 322114674 881099772 384504650 864952530 170886770 572004099 493782262 982739920 877716405 878461247 138907580 946472700 281233157 405788476 295530539 559455114 3489572 373079219 638729399 163125094 155160715 41201878 891011237 505029783 930662321 466948379 351719955 681673186 345719109 240125138 743273688 844764964 943334195 331728220 265732709 692467944 688141930 459950940 660632255 725602551 781159368 410405210 46514909 657180331 889777967 861056204 547567850 697724598 757383627 527515622 126491940 927939367 146531771 571390602 920355624 282109599 659574540 771602651 595629688 165466145 118767676 774782504 666979528 411165585 984202916 95822065 261310924 101348861 271684120 268166247 348645277 666418499 245776596 125412267 512880076 365029444 684144646 469135046 814360369 306850297 415035417 982335830 501674598 755987536 634157055 574173136 986437561 339167751 436012441 245923057 213240331 711328670 897726467 105571747 920654679 69354239 933322322 387744208 550631888 815533435 402715958 388852800 379029378 496408327 169751926 106477835 668771808 431344420 758051367 509582146 914394808 461982771 600906928 901542110 195554510 292692156 551229625 241947136 1893446 667050434 240515609 628684402 913467060 588366179 84406230 3099824 57736187 344964265 612254866 24342372 758477827 399492443 942384569 348722014 542045952 487629052 494794145 125095894 231178646 817399900 805998211 497757462 431887127 359073450 814564430 95519937 759130039 683294282 679005471 395346977 460652543 835413844 363830720 484609267 237706455 29443895 869640694 724816153 91757735 915648076 773386332 447707763 371113311 902095467 715769826 922828917 781134623 5840178 418425626 842362480 938507525 429550456 992048880 140931472 721122097 985852954 662702419 364653042 455788974 143917405 70125257 798793403 826856328 610817879 187235807 364061341 196103134 224754683 4648553 120552348 99119338 520289106 241688970 818120994 42404654 673598513 824012354 112118026 481711319 828045028 796660276 506043808 163696342 798745615 42965721 936505836 933044416 516824753 74206648 843927394 408172151 551001415 376704259 436684381 39272906 332648749 623868344 666857126 313443121 922046255 921771069 576763062 766341193 700504978 917951475 928970959 19957330 990703092 951936705 406765215 9280015 123128589 25127457 120193603 524787326 831159951 359756616 188455961 265084228 688900002 98215037 888696162 223557306 86663782 940494553 654356495 148377568 69802063 717716833 488652910 634144684 208186753 220772421 724232095 565109651 621968473 482963131 245594595 120045510 644853743 913255342 952025166 56417987 285997541 9121860 443186630 589391981 885278737 867448058 183093876 270896111 216732012 506091820 661118057 585078602 28257757 857845097 48051477 598181818 546101427 831562679 571409960 737358302 98145334 282563031 204160755 302461845 43211498 819210997 784200092 506871743 849017138 988870016 143331342 707012031 988054507 955344622 656164694 16315292 298392361 294355258 603209212 516755263 288705630 863095982 778610035 707763265 581694275 352744541 830163967 94652015 952555530 929315307 793164895 15485860 747242383 417804765 338904001 627114679 150023228 897310944 304277074 636984430 212284559 439913268 814534124 169093263 393768171 848263153 284921522 541635201 696196208 685987909 371705821 294287976 247003677 69245778 93758896 744916911 672537235 705790554 663457862 460328740 177522557 89452632 288015676 740111923 484179329 237532451 879394117 89872580 705329722 732109624 907700490 503883669 218723502 981309597 413246036 432868172 65060247 351870241 415705932 730497611 194455167 372949179 481571744 905874393 701666390 810488129 286339495 814545379 701536225 675754203 322292626 793168198 866013075 486767861 949957307 413825836 291808534 735885788 798627206 689220182 219959941 16655116 762988897 575476778 437239605 663102231 889522964 65312627 999836034 706406456 388118843 667177327 361778883 57207837 399528840 812677601 153686179 331531721 331036640 673349689 368855188 653942050 880795815 851916286 524900950 996530726 926169471 953096873 700619809 637627535 565548739 534592446 652519951 845534903 301227551 123890650 252918620 123316320 590428955 42374748 846907523 93027909 383341453 986831704 944091879 976799150 825386187 34466300 841560528 544449154 858819585 889099653 985626222 911833011 353133266 367517035 552389064 536218456 188434160 997884598 797643235 520106605 332197900 593613572 593263655 202431987 781244466 688469299 397315049 585704340 43481345 293076119 286977533 95702893 182526456 805595692 957322245 741264187 523542081 758996937 177158706 881653430 527682198 854318808 307890689 285219900 240296815 827809859 81623516 815331553 653892948 47646035 215450099 949275698 134667001 563143523 527345450 257035387 627615170 553827090 825248491 535248814 613460206 654769012 88266369 916083483 493085842 171064686 203433164 600702611 558200193 226749141 151918716 852547440 306595187 960617482 86162782 479578755 488188881 126049544 497023639 643407220 244136971 677618073 429512099 722134026 26491918 182491277 483550296 378485405 280275736 527225602 50207103 901851274 688965261 275587913 569763751 288480719 76387112 913913443 507534692 765090145 83271299 396883332 919626976 753220686 462174557 123410776 590470279 30935061 520811872 128708472 668713137 184950882 480620300 121999493 414568848 486271090 56622266 174858380 340473585 874221731 449599655 563396816 449150071 588264971 510396757 607741086 349426796 869393905 715437194 770330538 422550798 822638652 499050731 971542510 160876377 752344918 503536540 84550932 468727716 188115012 44281127 784897201 840231258 919598794 731826679 219281188 746535730 795703878 317156023 276469751 494751836 912775278 507254032 38522280 701862779 611889135 37168889 978878917 844195132 60693384 501016366 729614991 906622940 132029033 326316468 123095804 159312409 217765736 357404599 563672052 998270034 661372085 205142511 269077084 184203966 938036786 563685910 619109711 126999009 154348605 327380588 812932795 313914291 206643495 839190241 991637378 236478288 567324827 498009740 873387661 85480026 488571703 607806713 532141955 261472790 17627784 423875555 443703247 759283619 207638916 256945811 389484976 826725763 336857152 613974164 265898506 679311427 236094744 787046534 763982630 289194308 259964218 145158165 55108160 535161292 633220014 160797950 485312950 912300585 121045428 813630256 861192433 266647973 570524372 615809270 633285850 411593135 274502382 864800446 621674523 738479407 42416191 711033765 826962484 314866313 43631052 39088587 739483249 374184428 711616108 879808607 409490496 249908024 596940508 122804529 808670500 336777464 414086473 776681392 291315217 282427759 323657123 663298746 531890551 104651146 420868648 976339522 856554648 17108661 936288870 240496800 832583564 657875874 455142703 317569861 531607757 734239293 645472397 84129661 836829936 591675394 732852485 957016474 94906455 844361983 100249594 709053911 481579973 552205310 932953113 630546378 320859273 106625979 146935371 571599318 862773229 358550541 107637393 534910121 790496643 778069545 930663089 103484419 734783303 392523858 627310488 58903029 98034332 247009210 556800814 488445771 299130537 453938822 744378935 797432061 972275405 75360032 722282636 610269746 864496926 838180418 703200415 50498837 156483948 553199166 740214320 502940314 614367978 137994324 531446809 895590591 176813894 96590141 767890832 831113961 352135171 497853953 45351774 864859966 971767958 340747614 273392982 795512215 844947982 554336816 611263713 656912546 965911182 834339613 958365379 16218561 826864482 120481775 114791039 772088117 620569596 686601287 690495855 170890319 394313209 803752023 919624489 821908203 432567738 578856950 792247015 291059539 560622832 742678599 430031924 714852594 711702211 519430190 621925218 320061840 968577009 240531634 205702466 753621444 931886288 612906829 592448060 810635803 723414604 149373651 135526116 13681536 36291095 802703388 733481301 77579583 247686202 405469499 571342315 972415865 200334341 171947007 273815703 939347748 908798784 730852312 857492524 959864474 859084016 356014167 607782416 772368106 355693492 854197018 150906381 871778631 753012470 729859958 551082007 915607561 737054900 581978977 325415849 893711695 185190555 621928183 994874050 311618555 45377529 582289017 280521089 793122895 881417635 581655305 185492596 583326880 976776607 321651581 248099359 40949304 211090056 643857590 961901412 672130427 891383347 150053006 521809567 311048742 440764280 394930861 681518451 973635029 16856687 447140124 661638734 959858221 489889658 885573953 550174994 862583068 806840322 45759174 761430346 298094235 399593966 679608090 643960422 731138528 434394131 537753740 471809 731249872 835208157 789546932 176783959 445671245 375447389 423467173 881987330 719763223 939918243 217801609 665935514 1442997 199257232 707954885 918477058 347434989 357925688 449760176 203118006 32135938 522993118 305826504 198626184 828076725 883988276 942601085 629283918 997828153 465331682 118052923 930684796 535804614 218540339 104127754 233228779 13458542 332604456 688933966 638587185 664687614 914068931 551865324 867955977 677616013 692696372 916556345 569220825 754929157 869984727 365129734 456001850 528024331 46726803 301459763 89614915 628570228 603101785 50668820 603558646 240927678 570603397 187116549 393939898 547881015 141935845 731594169 266728850 202732205 330367802 285071296 832720851 31199143 75148665 627782281 685937370 563787875 89783770 610996995 981914310 648661548 614594727 813621801 865083674 839292580 87692320 654465465 379996626 559794014 658739437 498981573 767701357 277567656 368591779 575884350 437656699 75530772 615270179 998031140 42712919 112553351 94351509 473390332 571024382 755801974 452652271 975416132 671151331 514154848 73925464 712213399 473909652 923727695 947598495 73843788 71055247 619499834 737257266 549913318 918221143 330315740 509048444 190720879 369739387 349322465 855861408 433476856 427239307 917031217 113183992 25091404 840804923 896436866 359873916 266815824 589158829 650513644 956342592 608046528 25210896 50377680 252955055 532242334 916811648 118883267 774133674 925465680 875887279 613993082 469429818 121987453 325117839 15184858 497958639 556201057 897069211 853830707 746119642 327350148 7551842 562299714 360310411 68305760 311916526 886862313 542387058 968150925 110599084 11158737 469303126 908769587 162731628 221705572 921316289 469869806 418860463 536235233 41014863 144839272 722106906 796187567 341958048 647993319 715074315 567356081 880510340 910879637 600069906 409211979 838630021 977198374 414951054 655731368 462440308 696683683 904311421 249632097 807534459 894227493 9675674 619240412 255235186 599136183 35577849 873997186 66863166 820717240 41003595 758646966 492526581 106034783 92382815 182754703 330898284 651720800 477351011 622935597 708023602 611634061 91845583 103313830 330946473 830645288 505424589 27040344 824120386 790774418 531839570 266726521 625107959 736206867 779966206 449003622 711430328 813008897 596343386 963170592 890164771 49003059 948072998 787233630 638687117 561462523 801687879 736611566 255389167 642109461 470815816 740930099 153071461 861268609 332250270 612427333 437258742 65428968 400697461 276409651 971582610 607980349 921285724 322682209 934321587 586312831 977523474 331659907 326652517 421853177 395178158 852101117 259835937 861981738 460434234 791450722 789503093 632366567 566781025 184499117 37413285 744505337 36079069 876392623 412403470 620810176 792292810 830830331 905665500 370391150 96308084 900867243 395787906 464765607 175870136 31770276 729154021 314835216 114371044 262909996 64017837 771351417 112419547 964826956 905012221 726222483 676930936 512427425 827508817 76012202 558554602 413660499 840847146 679621299 321279145 582247155 862180904 62397822 977713927 451854990 402128241 471641595 256503885 305362039 28501994 773644580 283680073 703236461 930547345 741934698 381355040 78380981 850907644 79974342 494052451 747584915 85043836 623574916 564922950 682584228 647059726 259790796 693471817 650980435 81417704 86782035 213242584 94077332 254942983 556196056 912186949 812656488 57811840 480595986 128597732 706844884 938788402 219312 419684534 556612507 216502311 992077547 439866165 943632114 944500934 467740619 122905260 129628194 379426720 440843048 190429027 297915014 758221790 455889226 190980784 961722048 551600891 164629250 363307118 313110332 743228843 502933382 96063036 593088501 588694910 53077016 995345271 840600991 597543949 320472786 827603332 757479982 252227619 669128398 996656448 265082197 751264594 201666209 836222619 160650643 577466366 664864044 713617567 247436739 152068458 881384619 438116134 38488634 888769472 535448721 740217961 948218785 657149657 673730100 817872587 817771012 745750059 816067786 931760221 242314263 239527709 549302375 723611961 344261033 916914364 337368671 721892645 164774128 120274721 356284736 408125261 947540854 384370136 418649862 532870676 572758690 313585577 684296198 732991476 616270076 915671649 59517525 321073072 98404783 919275272 125637779 453922132 812954777 858083973 482535799 731975123 596211999 779847884 996348691 635082479 466606419 725783346 910115730 459796370 165914434 792901038 191504647 579689121 463778516 634276987 478945730 309104321 760980557 745114932 494292642 60926184 395659571 382967602 550887692 407509142 474631433 891292519 74837647 45724333 790845543 306334235 210262012 518484060 693710532 343502834 83589012 650109878 47753313 115751876 766757586 181151296 487083692 209833827 974646714 29414087 861949077 405065354 603727036 102196671 597809450 388891721 224446708 566833741 601454174 176436113 553997864 523084262 954727691 48672542 876728268 902166099 263839304 330158688 624195986 479027396 581784152 625394170 769348658 734797173 108946578 145954821 585956941 638404102 659891817 145719326 642859648 376622624 389860406 578977391 578407104 350834986 457990295 132789511 811996548 240233291 307511948 352383715 826805743 374660104 821861309 615645290 590908384 298907324 552137803 391472239 3442098 295017772 33594571 87054921 97108378 408983677 410119016 680164663 91323274 8835198 478397794 785014464 925526674 235273589 510301097 201984467 997419838 750248576 714888238 436404304 6754687 300606878 859445636 506956581 594167494 70181363 793947965 860032382 717127826 956335706 397970881 122225904 585950107 201264950 752840692 194888934 692347084 602949717 398164405 383645145 422728735 300983107 884276571 804808846 339401554 195440101 964634613 758976536 609674556 556128306 190299909 693129428 104013642 217701392 598464585 825712713 716024837 154732844 62888636 970821261 24487111 528368817 140179145 326835082 137807438 263432439 833721625 198433235 212909476 138201073 861738460 40727158 212713671 457939882 852230063 894931401 871946186 91219464 977762881 480515123 334738810 661197956 329984976 744487318 580330757 605075408 623154299 811766102 998461556 877242888 138972776 471850730 963983446 826552196 106101199 583600911 82727371 877226490 991081423 415856378 919732449 949087589 719554771 490678107 756143634 384641975 586869733 620696524 212278079 925035059 622534189 340570984 571376745 152115784 85715523 778757940 311419079 964414168 228900821 887419170 503271286 795162645 820593493 340277719 496693754 761326751 476256835 694456441 283122315 38663579 930460609 492477591 677065152 657479961 999371997 27588986 138132970 85813096 353241316 520425953 952353463 838146094 300974416 280769466 190897082 844640250 499170962 163000646 771236866 841788317 312065605 590632891 392161961 475808395 145755729 593238217 63329926 725864687 651229299 866012660 500360480 624458192 405564891 912916768 726212289 544149571 653949958 567802223 687286659 699628730 440478946 508878647 605248367 316953701 827267139 289643015 168593263 902356796 761815400 176119962 311541044 140828601 97095809 95839956 36982722 620289079 31924587 933121717 756169203 783889114 787122052 506723159 352204011 165288031 473830304 566969149 159598363 124504780 287256935 128672470 450767494 548619630 688085525 756262307 986277477 529806414 952491263 865120242 224658658 22505080 761968059 809362256 129184585 234356380 196028597 292878109 419006859 181637467 248126546 77651481 233595253 199108151 694942489 689600317 266856478 959783724 275444360 996152277 734378193 764735332 981735731 661717122 227844390 649032549 928002499 311663873 134063662 734270990 374919898 424469399 886598133 406538568 589169498 787256199 770105620 780288401 760961530 465340328 126073031 629233772 754864919 627422583 41040973 956931693 166720537 753302643 428877468 888893680 996157430 990187109 594961492 393207167 779991902 64514007 497093920 170189145 229583289 630656148 963023256 282516517 55311372 761173738 677989889 291037370 387947816 599162953 186273630 869120537 479519929 551675019 71179235 732830979 745342979 772924142 605057335 947876269 902309341 910920482 510170619 597996950 245428950 813929472 954288593 331311458 46866223 389469352 382852480 562804314 600885212 810074416 50067273 746715725 210407429 465341953 432174472 171602430 673098944 205915311 560561344 688612010 738087307 755466253 106463872 73877011 541998269 835410427 78341802 446162706 655726378 562528768 266604722 703494283 106887711 759726691 244590929 740877652 523728266 494438538 694179518 632511578 429081306 590994324 332140584 95888780 92768178 789893077 261521436 926904614 803790784 901171294 765319919 890328118 794006554 384837783 635642278 848254824 730251787 294165610 360816090 828219413 631657339 683898695 325142277 807834019 756391731 398798634 184795197 744020370 561280005 311816957 588938553 66497420 219254379 882698705 941745363 745115899 148084287 318088205 698013246 235356116 416829597 212393378 983672698 742341666 16130167 883345133 254002625 679082915 956181464 365464299 100254149 431453672 954796569 246530636 313651940 509404649 933383932 462687577 593564267 484455606 828772093 543700688 686491254 117481839 379282498 940352763 97592478 459866955 268383870 583552233 725004570 186047205 480472737 969191121 159134583 182726682 996788362 54440903 692229778 58707937 612548404 628238420 510797528 468242856 115633127 131609252 330645306 995692126 764938252 902052465 462211733 548192014 574742646 949931392 574331955 758246201 422216276 763893178 998168940 169853316 813294928 522536147 85118155 636091034 901975362 979007489 689247305 773387297 721627979 703912817 451368488 441205664 643186026 703955269 608627553 786695737 543532327 948374435 807733186 599808442 591845409 475917485 932320852 456890669 958114390 685961020 316612439 753829949 373964067 777591452 706526910 89662026 366974762 188721228 322733353 107190520 67051647 816459473 318321142 796132681 337380209 162967150 349796219 818331945 812792437 505082423 236404244 161381220 612716768 257423801 529565876 745100180 564114452 262745686 103256891 668807538 689208753 226451147 336961149 208547612 771595261 495499877 31128712 359547238 281189762 779495170 988698740 49506051 682946736 291754403 62364666 820372402 8795315 761168816 360692251 933439548 156322364 651835492 511976078 537643745 820351665 832960744 81599481 891445806 122162707 801751752 946851642 254627363 489072013 701178802 405930053 958141655 81393155 846358635 995450630 103783928 851033941 823167590 765523881 531049052 70542747 925203004 871423770 350148234 655850681 391586079 645977147 616701036 624901888 99426565 997248533 856931799 610423236 544119298 283997042 698469704 799006285 154036186 124482260 120629267 734378723 66737194 137028925 674447623 708194708 595895219 307068240 346159448 425446126 310410510 38230002 428534655 614315752 964553354 917556900 784369896 505148671 699115019 596883217 383087551 249703534 171363093 548887852 508466373 594646621 11248160 423732229 496481459 905240188 94857275 2743046 463645183 913055780 388224107 668865849 698318495 521812886 875575562 605000007 950758186 672014508 976728110 321458692 930305521 31511743 432650881 112168368 359066130 767307794 15180708 732051133 985201815 989234000 925386007 548958193 830280800 798518700 749960471 122239359 190175280 151332604 730826441 340390294 935996793 147483324 952309236 322101030 471616305 603510145 790103735 123195044 501743652 410723049 300942731 594707546 903753815 692245273 435491710 208778505 879664962 631030854 446910490 25775413 546137648 779737117 13042428 957334576 393203893 266695235 486677505 284864357 939341999 925596617 877624670 310872699 752774856 659404365 933179645 900365199 195448432 332032299 247267270 856780649 924139207 1459109 509182535 150083303 97953605 171894295 315621736 998810597 155643578 241804504 150378152 537541527 962586769 66893465 269157216 857662601 580833071 234120473 807088776 944506546 96823813 131171928 311715615 227507398 776662703 692132051 942241132 731651749 233318802 818420488 454856728 982407178 57789835 830810531 586094142 929659925 988715449 813820823 276332245 76351802 64927285 297270962 754551418 660375609 853108543 242743315 725256231 710360590 817645830 286215716 268513651 27715986 93288710 727140609 528640887 852676004 76879026 805234491 43901517 962756793 675015009 815914791 49328503 668120217 271262764 787131868 305046078 503099313 899672282 205685174 191291845 599985642 734117222 284437012 437154290 818229152 647855147 765521314 274221615 456110470 336945585 293954690 533574554 232718361 325843918 805728483 71414041 267227736 781120315 798262953 848103240 803863645 635787624 824205142 796978361 172168933 1759725 883289313 825566473 371571734 239807006 586402846 322893239 549798018 880234901 406240563 377650938 110362808 903656003 856073878 22070652 891245369 671484757 310459393 19746932 458354333 322363642 565109445 211247291 155522126 541665171 934390221 95875171 73789847 916238564 523242069 757327401 417855227 33395085 712667661 690738245 168113199 956448940 310800662 196060578 382505689 44306611 256088224 57717965 838366499 300112564 491636374 776679734 412152970 800512766 382636643 961629311 370950769 979733953 998520431 594189549 287718719 723678816 272146101 888786436 242742245 722317378 378484824 619897465 974677881 954330461 711478111 286591482 165815487 742659751 47560051 320124573 826127827 5824279 377934155 631525813 123889125 197536818 761106388 501110937 977700688 210563199 434148742 261383275 381715838 278458169 310355487 463265847 722492226 304175293 296433531 204271875 32563167 39998513 105381746 443819975 858903783 36994779 454423533 985033321 814644699 667481135 298491736 513979430 504886851 81132834 179687053 328835696 866576391 92343666 140564352 875926602 204028014 523585767 625016676 441533754 719984607 465319629 301628674 903909529 989963315 657840745 744013185 217550625 508828241 675791936 786163535 834061703 707679784 870282780 442984842 627390721 980834184 73133413 271417734 93293968 119472378 151420522 596198674 414524065 506124712 34017033 806280468 257530390 516639781 555310961 235290373 587988325 399656872 404213809 700744910 991329643 423746798 462278541 588246377 436486458 513976053 286231214 211919102 725963780 657413238 44479344 139787514 246012873 578785820 112514002 258627941 524279684 632834155 210077320 8286106 493008097 539546808 479612021 695041089 803108099 472321449 468965250 19346008 710357887 203158955 648906330 522610648 323655380 126912404 684725996 567480046 569084602 355208707 757808348 427060308 120873378 216334289 123431425 491907183 820772699 398285470 665344680 530173681 812877194 929508069 692209498 79818327 523403466 597637064 930195021 525436906 162413047 887252574 30948680 829909399 363857273 50708416 367812666 161273882 696317993 146059748 308306146 650976535 505497197 709005062 353803463 930180417 936220760 630567223 182650418 417176542 318366856 651416552 499767207 588798717 521144347 147172722 798430642 176342673 757171706 626084561 950927252 392261449 158362034 428194715 609985906 171576112 656683380 207459831 518924086 176032231 572298562 462049209 140026893 287934237 548458089 201741587 248868656 993627684 115899072 864694628 721177621 769444222 724140902 56520895 45322541 118122800 146531399 953707212 138471350 99789913 690035754 842266879 701291544 966872425 696377681 873560423 627936918 310249299 378873772 182091557 69646907 55380242 857210852 596035377 421299350 629164352 774512877 241967136 172702644 515021451 814395170 638423784 470592880 307264987 997956432 948757667 913926384 738050695 891595138 523240086 356119718 27725278 920850457 582951131 430875703 109342713 53941249 198665580 84478496 386290750 284011834 376977907 503599870 557838231 538655005 839288576 780967491 372917074 151820436 107634679 83729042 370769859 181843030 216225466 603859148 360080002 294209415 858439646 960698934 66050387 481771703 536279066 225058834 299697759 943296245 652667040 26021045 832892941 667081975 390267469 345907203 111073669 835718669 225511370 747803879 643191771 39276296 783328868 911615882 605880961 503462588 187616987 265590998 768267417 874732163 842726204 603523127 388345499 992749694 784083280 14715329 238555938 819133105 701116970 787677297 112526663 260907687 289140344 995186657 253900341 517279751 384010039 929835977 224472454 664238076 958747233 554538520 732045365 544896929 889473449 496317938 411611071 691524715 781963744 793696871 959045481 671922347 22600024 653109691 129997854 66288937 833715105 139136459 398586524 496893060 770400357 975938533 935135373 404775636 399546731 361824437 659553487 538405973 466789142 490015674 946492858 707745904 193983911 597318439 658831639 17852302 849806040 698668455 75888063 135996567 165704409 197782814 493183045 674395261 187539887 942655437 570226238 762297935 284578481 751230265 819159957 507487417 395379173 639177716 395913276 330011539 215896504 31386443 813620405 131103129 727686563 498005851 438443573 237620379 978250844 429216424 342836139 849207284 507265841 450553901 996098026 144466156 181939151 290368057 462254349 288782031 836973219 477133917 352328483 9620362 808225173 786057989 697793446 79718754 882121293 779429270 131656900 357363132 685354858 146676659 901390348 686158250 755460365 520515944 824315076 844793152 742943063 412713723 264466103 143916081 207900119 751351850 613595174 92676896 334829720 545075552 711418771 745633080 157715774 571509208 48170107 973732592 537854004 717939094 412731341 189348651 43458388 355986067 124966178 666988836 875411441 821449128 798598354 924331034 983686436 584843245 595111731 339714814 834642596 591009223 953765347 421797082 906751669 30804178 107752940 395495344 726457191 102569207 178309283 548114769 368522209 40907666 79860961 928652932 142876495 304595473 581403405 766419317 450545260 275768858 855904388 834736454 497126868 119412116 340112492 858370850 628512540 227349986 291338374 370795524 350330040 818156965 825467177 278649713 160400900 897710563 285629071 27292316 704266763 991672906 570855306 770280915 984299003 591261542 273773031 55896196 221630255 384014147 974472598 907124120 384471594 900565704 276138799 502939901 431784850 337803031 422175363 171512600 917282389 258290181 336323941 622739613 518609932 868489233 88861202 881753395 694699053 722146764 594588906 481648170 58361397 723981606 254042052 483120339 960253844 737452671 846722792 49766587 211960565 363260482 275182594 658734523 792645378 227509093 747445624 837706490 262233544 906515069 615671882 766426830 608268504 409279334 457940586 655866572 9659997 527816980 717393963 641952700 231234210 10684000 349340402 103291495 433556339 91657464 533364241 869771841 841731185 309887845 278500072 251139795 357537032 729027278 281936810 924794795 824934740 798329997 899528350 114515793 355006300 916421820 190117656 940804426 417093432 922792641 389322963 41480369 646455447 140564612 548122726 852086915 14064798 976956373 643802998 727990157 984132571 741620103 547247972 817660567 547293114 984081823 875134272 926451931 855294955 930970376 951403117 620741559 743627523 703649870 130139838 37524186 160521710 731402514 95788725 718375512 566649435 220688531 184443800 378694035 841480506 801372794 151734083 940589574 12401487 896149113 486737609 806354783 148642000 928447247 967834818 109655798 58546753 34074827 331943768 225675918 473641625 910043674 779500931 644353580 56618150 69138899 928530259 239604280 447949047 741726797 322270124 866192848 815305702 800669276 26421031 838580893 223856125 841248483 8485431 54088348 943968900 135485506 400300184 130301582 40539545 915959808 868790602 670251673 70736969 424673640 337643305 635006667 579962246 23390389 886013981 607768774 285258180 357125067 994535721 491449716 402144222 338087483 355492472 929485006 943316457 537405556 160143214 739968195 282378397 538070713 875916566 428899646 679798938 65646984 950811871 988656732 541570061 782493745 782205115 963801070 724955267 987618246 632147454 908698892 198442616 913046915 844092464 855170134 903102054 300660185 327650484 500323117 506971048 931229776 611969412 805088466 696794567 329165666 521001461 657335842 11754297 525935415 687002030 690154854 896623834 579891684 32205699 551133534 605526990 58329366 33356407 787009685 318301464 524878253 520771331 872799883 869970413 890172822 451474564 262427687 547800727 883919852 308694466 336442254 804317507 54525073 91758165 724740046 797011172 792510506 42966907 313113884 573762470 532120028 963686937 908364209 768707359 12555419 865927591 835321515 840659943 463741158 496656264 359370959 800832305 663100054 907029016 542462385 80348662 102208267 2275053 689413184 731977975 712000343 344830792 509149575 113647040 50889741 847823259 866148330 891756056 190869407 949253763 528455921 553542766 282946435 193362014 205189697 373942796 827453120 119319669 172751854 169463353 652625630 884006612 130535655 582323205 342767079 276682957 207706985 441446342 696999718 14777485 107424296 44525432 345034180 910546848 223502092 345733887 270669674 809067052 754892980 912395961 172119835 590016682 836726023 666691977 531676469 270955238 783744593 750356630 385011826 499348351 561172565 507592878 704680442 400128333 15865319 50904108 313071970 676724016 671536849 893626173 337850344 991254119 433330642 183620102 511036527 663354383 810248950 637961585 54252009 34324990 119098231 107072670 651917957 25820583 933960577 789438222 951776177 654778410 163117452 18501584 54397467 278896488 476237949 4162587 775061859 673172673 60338891 376409334 279681547 477114210 152431713 63037762 306707223 586782404 861433223 168558399 878212782 993806147 170455521 902949367 209902024 128385115 574247263 895645407 510140805 280276280 424821234 297380298 542493972 852220140 828842766 889906222 278311260 692140604 861188549 737135129 434255819 815640292 461914934 176612404 713302255 605217825 591435655 382790085 97915700 530908358 817409240 892846421 269171180 78919014 486080609 289711058 224948992 632093145 499113373 588682770 968122406 43170586 410539439 629801235 915288131 959446087 238852080 98514466 890310739 522429169 26300251 753001868 686081524 710461056 182453510 398694806 857242320 965943038 79086811 781352000 300646409 665943723 702716121 435034901 282741162 368029808 373011492 650741242 4744419 935139662 138984522 274155200 853479936 871929063 99295083 823552604 151286210 629968098 411153011 411612170 880510022 634229696 925688929 704659153 3553433 651753266 717941114 6788417 841660469 107757705 281014643 17618797 61556198 547559445 129060949 741383678 206182121 586276821 113526128 857521834 723223300 106034417 45654291 838319673 595158518 938458590 886109898 976254957 646050539 654843613 802174741 925946539 334200647 208575208 280734161 144682566 430511741 657263223 317260016 908760686 823077405 419766949 10757691 439847175 462200707 710769858 119943914 760572088 574569872 97817907 901279459 476324400 44145964 772678476 910310259 954473324 263224521 429084252 702240118 327421585 862838301 420589765 442365402 129524559 549949184 893145744 187967490 485390120 713167720 561862284 568961909 100036206 281040833 996600106 406412302 709546320 245796556 376164082 970383182 280816627 415310043 501576477 125268031 838872240 783055541 720484717 851911070 960813719 744979671 236314338 280602057 885153148 610579152 889965651 690215818 44062763 248893878 485875596 543749296 404224397 727660901 929934705 362396835 904905815 171348409 879494856 282283373 75606694 855517981 768928137 173435414 185746083 178696514 783715988 870926230 272787440 116886571 618485072 955064305 195516110 617819763 714856017 906774966 87821105 352255586 941605927 360654989 502922959 210573141 503170142 826417400 681145597 720149027 942484925 214257322 276544395 35784230 130647316 565265820 922354896 726522650 729473856 438347742 965657229 649754730 637152896 755978310 724973205 133453692 482324145 968258988 941414075 874796855 996871612 245695713 40738173 435710226 305296857 296126201 691459349 500050439 170523402 513174480 478834484 867454547 72543459 643336284 964155761 706947628 379053575 791204576 293967947 888024453 972930436 69478834 592990090 926172045 989987039 640863250 410083242 279983 789508225 910791653 808521128 196471421 744807972 74093916 217404850 150436058 344674359 397594472 608240007 811586735 715720292 438270930 756306182 417729022 915991722 792384899 324279075 812273560 214766224 342036876 356662950 848989623 588999523 608803529 519282965 166179691 138372590 923458252 286888153 750555541 415790620 232083410 292587963 344163144 376256417 111386325 681964283 958072926 98719818 17662901 49622213 409114881 504337070 855685077 998324735 510235886 626785280 649880898 212181131 372252323 604688876 850796706 206722884 757177744 472393143 899833084 84424292 317465854 2149897 149987011 968182681 22651638 373423566 185068214 388456365 348958614 550789840 445773578 743479845 773824315 704136093 673552743 848021382 856186239 234847364 625358280 22443519 439668540 989663958 205301232 999896112 640506251 829398782 702403573 714203459 164200384 449022612 294393781 922248851 172624192 389182765 349568275 229220296 870456894 242601540 715949972 963323420 866091087 799506644 365843954 244725012 966355135 243654026 652732369 853111600 836972885 903482875 598699544 781757675 75541558 384333578 610338989 310503049 957853312 31692601 12832074 721161236 495310492 81219553 136578553 11994741 594006091 91370466 941127753 21404248 8082655 854185787 743207847 968961047 652735321 606874009 473869551 795785892 70519948 288821064 127259205 675862715 682873218 239897063 327991842 956740676 902775081 858790128 206339605 342806335 186729784 909083594 475341941 641733850 503626967 352926421 157160379 822818491 825020460 57458689 61323413 517364846 707130419 698617079 869162061 214236092 715010429 410121225 84305382 952330673 74394888 107851372 762192644 155541775 620850064 590902030 678059316 496426725 496974674 871850566 207550274 67486369 451053857 289629867 661848420 237055072 166814360 586382946 646119555 233710030 104908790 312441425 911340600 952220427 402097316 50899466 589760277 334566500 393047339 104942291 557362845 78407210 128500823 42583856 710830375 952454992 575383250 750263246 238163326 877911551 721722685 73719375 235690775 175209324 672308859 573137330 209947997 11751663 477927183 438412825 578200411 243395830 359515355 813666297 618403560 539242219 584751552 165868094 603653976 544094913 879857690 263473658 355592348 223852819 282752590 619249051 167512428 415419280 191044151 872477950 587968331 963394436 194393301 89134453 552224191 761570646 746065070 773096141 306087108 210781333 632245264 538510663 905155924 111397461 762173147 226015632 836618844 648560142 561630042 854476980 588620817 247372701 758663211 622583885 630139625 622062962 527210658 344091672 186800375 130175164 626126 826788147 364931375 118659467 599105718 317657325 563663479 515692746 113295021 906694545 872455607 412145206 331249576 446924243 523622218 811822114 76290253 898933916 387630319 62787370 430124163 748198288 929338880 243628832 811882329 428803440 875521133 258306426 76702064 342914617 644631596 420896480 725566004 311218055 345205501 494010825 860385503 288375682 929941803 880539785 80256788 617514803 322921085 566479972 486244721 710848390 546676009 241109124 147297291 187433166 433412683 254513944 45884322 899450760 994203694 812038990 475921529 966240702 581512968 445860183 723069042 337940478 586092653 469131757 92064837 389062248 829306602 965450837 67730202 570862839 127538098 878487905 922355361 46841309 931937910 257221392 761425068 200552291 197434485 750662428 904892794 474261513 846711726 140162480 218280503 20577947 631969309 21804585 345924607 753686934 864978798 616957771 299515623 367173495 989330461 53587992 663361861 30819101 329429722 466533813 401087638 872239569 667096771 550400102 371310424 8455125 39116893 674121804 564909758 13685378 401183586 21807064 795817186 290291905 594400534 308032278 308297838 556078973 584519767 960500846 718158940 779308156 125243236 201141956 390895866 249661788 677569389 691819800 355589388 174987992 867586017 939916894 560661666 982104929 120554515 241484157 620030528 798610913 31537803 214839788 822287882 244582326 507794753 92438608 941203614 552693416 130941765 626241389 946699226 495572861 539414591 492356337 171981487 426240541 888990740 139430646 595080677 201379356 866602306 570372272 944290450 431644366 462008454 678725946 921074304 464918191 757597854 64939461 818931707 997515015 967690974 487614698 744359916 974848293 52823860 43039566 473957617 262762060 981073684 841885641 586106867 457427292 47771739 540382723 750831822 657510671 617394968 504855884 67165163 926005737 868637198 585901888 539345106 669815915 938179979 831401739 751300259 119761496 981464084 564351211 100571400 37381685 275048880 718045635 191009106 649008889 104756424 358867192 415998763 127752774 677677390 555802939 439412039 892953008 607139238 106284003 505532069 7726864 507299756 57791713 545512904 134137453 339874377 514842342 59780034 276577986 353933923 815029051 639864514 555531241 782072688 17093314 473340356 666593373 848328300 92031790 400881027 320265443 37669891 544725460 926852284 151608522 304311320 904845370 598180793 521648608 448147025 625328209 807759333 684651946 829284720 953570111 100915284 920675045 976107297 783308014 20265742 37828230 79421170 636017239 889168062 604931220 408615263 311010223 610448541 657227964 732325085 645961411 750308563 863340053 882410119 302955416 613693880 207296008 363043353 611913750 704348391 534256577 100787431 117303197 43294486 303281571 486421556 25410349 285179143 55263974 304978463 626899394 133593205 92731341 874338097 749617374 484523167 262841883 984679144 302110387 434911106 621696383 39685180 607425236 510290176 537745460 559190354 153321308 625069521 581744241 768623442 461512074 234236236 678629171 575122240 303962224 220336971 782070700 104759858 59236129 382339371 979661312 742445767 59710878 347028299 849167799 938438236 538520399 620907820 513832162 511378528 293594834 196476592 943123496 239894124 301307385 222102519 59915587 274204177 238468755 331959508 36235755 346348993 147955709 934669876 995040042 737139331 415009942 480764795 686840590 241369936 437907445 216323168 408157942 826871234 42510430 420597443 355349212 871231103 969862911 215936392 808020375 258021620 301278070 938755674 126783680 499012227 309957281 486577580 897871644 404148966 433878349 274423394 724991635 464193280 553230195 510320551 6010908 227179478 598300658 714979862 550379293 378371404 652560518 57089774 550408900 621418944 220537373 114264719 518168544 394761376 421836839 353180459 923485634 693904485 950571742 375588029 502587676 726946427 508346896 323417306 440864159 99332028 329367267 128303472 487955523 998660310 809733051 984885399 949691131 585286421 342019710 342364155 922400622 92109506 199940842 255353096 564015784 383902769 751486679 369704593 986333452 945553913 911310626 982599018 602564442 783195853 176510290 440786736 56414902 545789525 154020386 987876392 775838084 51205535 305813003 370313598 342183367 733564921 235632176 406537733 853300268 763295557 77008214 268646754 121732499 410718425 954310293 934607989 825367611 212990540 990653996 591932138 608122242 604306184 254281052 431579678 759979944 208730115 461330026 831289450 352822433 352948277 229885411 951469954 583971069 158384544 673200529 565148357 100148574 897955667 413083366 667154605 603402231 134547445 935143328 187210954 465098576 187985498 704624681 592826254 506029856 974304679 990810949 110698989 169488515 779056828 61047374 479909851 831044265 963371846 806849589 244129432 597978738 506459561 282789667 262683257 507760402 966865331 797270377 863847151 326621701 42182383 820956119 215214639 41831905 109506120 982036788 772152458 142066195 233416637 780365013 925069984 543584298 178287075 93491469 709651315 153512919 415311524 851652251 365836599 305734198 980772244 797633675 405481993 233935114 633704729 744385718 104263782 741299543 506044929 805735593 328732403 171508179 207520992 210805215 253694055 346376054 465231872 692984941 911147867 828136642 343602454 677404533 453508690 666985274 255141004 53450767 564951904 218963250 332749717 473896028 711356418 488041396 445057198 869842907 350239621 987697832 509639334 163386776 692353980 557745304 291291966 457482330 247132461 816283290 55492400 41033943 992575770 537773242 608214094 726129918 325448033 705041094 631410693 310444246 252052593 779502458 595856621 749025855 888250830 102328501 777886761 280980951 755001000 326069771 346909210 462227680 389760113 44419083 375631670 663089580 162678440 720533066 877964258 452392315 654693315 416538435 223191489 798222980 973772384 841747734 828836663 761880311 77106936 64894240 44798600 880585895 14282854 789578104 215803789 897833500 102150183 16366475 308265685 991702284 424121051 457385781 674422364 11155700 73211988 826697876 512865329 370412318 260484735 250572820 814495887 416014824 708555649 273462213 699190744 731951703 146743001 550029698 397608052 511150704 106889103 812204232 834870812 857203414 845075845 695203396 872369864 83217106 242733849 8216228 472000279 524523865 829419278 544053178 161182300 834704952 194208972 474396269 329605944 798270022 575299464 820164277 524274832 347029504 899781786 943971137 103253181 544308284 189528276 605074036 997234259 57689566 348983712 167372157 116890112 865217243 851397518 691515354 112207429 529553647 1170189 856409211 833881912 478679712 644622297 59871386 296552802 976389903 485268805 296521607 18122271 685432719 20495082 41363107 257490324 839069017 972200878 997871614 980886303 672360928 491209015 818554942 960389225 730889061 648608614 736655670 871879079 817106915 575219561 404417451 599463853 329943636 275760144 946835296 35902914 182120085 203575565 399996937 226352554 514552057 11244283 251850281 5182363 521354025 318625424 905844607 471834579 239491894 828109073 238821217 724028199 280031656 322346778 166482229 328438096 232228352 457237572 642854804 714906436 283798110 595586928 412523768 148053365 987488061 508324009 29794472 525704016 344058813 253027887 425257097 552387428 599035426 553391772 820094590 939468647 340395620 912616653 623778808 33955768 905828967 257013058 244716577 531945593 518531586 987196875 795372606 825571364 745321876 148304343 223048601 241273691 767343239 100182795 988797328 850492320 194227073 29431151 3491145 233926515 879303259 880193685 870217618 240524080 165538098 295584104 182600323 926601834 752435416 381521297 539263724 850207659 284314593 314361274 19290270 311649134 319827777 472899099 219479226 241229817 320783832 12324931 87537634 403206576 955897376 183897556 531658530 756402071 981212462 979764155 51705742 55682502 180227338 274553753 854617281 504114116 501706129 562106195 599064218 173461273 24876400 344551770 684674380 679934676 695458314 689495940 932725777 289035808 99109007 920882794 86125709 715171963 942887850 700187838 795990658 317203663 458137941 450735347 674226968 59846901 367658672 37168812 522875031 746496639 69114655 143793217 807581348 133102014 800707199 901123024 153376119 339405156 596367106 45093181 410456479 893487055 588797056 927480236 6528964 832885150 409271154 667051190 590565595 943029988 636932761 600677729 261453923 691644554 968579258 449574052 837964680 231540752 404935426 94297594 863900907 60746463 461664433 268539911 238459982 983715876 626542890 501898883 660382911 265732028 459931295 805853336 825826493 948888076 382740831 666912062 408228432 670616303 471271008 711772158 990864934 76781102 406262678 224870855 842415250 774998817 652490122 625112335 237951722 8920818 954050846 862100095 418779910 595550917 835993815 332038650 529445212 103249021 399178564 182348707 654058702 222118829 85198158 288976383 147438299 540302110 73384650 449650734 232673946 480220457 881680136 433095690 261550320 345024317 42322261 303103506 549987870 366781609 892339563 778611214 173956434 832820947 208138404 195376887 481955445 810524090 677950928 326948793 37554913 601592422 313810568 58909441 222145351 557414814 856375013 276194003 501665711 294265096 313575096 331733976 479080469 244194969 347000698 829808551 110672491 595403118 413632202 917760432 733164202 509837753 319494581 547331838 458431071 778360384 247385880 373779577 273779797 593773370 578906506 753391001 400278686 338110037 890936017 756480990 528584814 725951533 17028984 597470190 971329189 156195145 866248230 272064406 871228821 612545182 116614938 834561990 465288125 781117659 965935781 704066372 445260984 545750486 880528248 963636504 13142060 712420044 917920824 879142503 256837259 929149355 406378137 982794894 18368591 95449967 698909513 588015870 979577020 172865706 916235227 558239946 580653486 731907552 807210427 646534225 799216338 31192139 958346592 718088028 110607389 592060119 549094765 298654013 639567451 177196910 911084883 462312183 926097551 567993475 858370956 548104401 23759951 912506437 325157010 374497822 11342374 654410875 710320084 205131663 24734931 830609917 72502150 750850821 896774267 856141076 774114128 755103214 154851700 685549015 156663156 215874001 716552562 146412667 925027784 921864900 82483445 921762503 181012676 310078456 8308462 572216084 249091085 869042339 278552208 941104566 879320970 756008773 575589222 483502525 473392923 73385665 720855615 311164160 702147529 265037958 45556673 704280147 320863198 506398338 467278270 804982143 621775019 615571248 801243211 927239359 76648501 45135293 790769533 767439971 368176141 574252283 889349124 711856739 937469199 396823935 596388876 675688317 810009685 62019055 337136763 473486621 709028608 849271948 705065783 309407090 63996230 340363590 366614774 336734248 659691709 647654958 526464897 498332645 241580763 607706976 464018750 903766309 692016232 991287353 992248791 189058269 422118313 446250909 332912713 394290756 306223540 512645267 220649599 798849691 721237587 57882976 558455145 989769497 390944815 426374568 519368842 740387289 440860544 625935111 480507835 816904611 21585879 732645299 824868108 409813140 208889118 337765603 823766565 83359120 435785392 265658911 262459403 568913104 670351564 308088326 987395415 280967180 312598197 975743601 612393204 263311117 517049178 235067184 47206417 594799638 375285642 737895662 934229322 641135441 662047558 576122729 668332074 128101735 169227789 969994686 596516185 452610363 99550067 5377680 983036944 366497100 979577087 287367780 778239515 532057070 241962121 885049828 576894449 96810779 56703261 551022434 478530299 911735834 33586779 173884630 49736609 541623361 721761017 786053054 387745326 280946940 559716655 143610946 620964506 561272807 578535893 273311233 972763116 264212222 314185914 656560888 233993770 88056556 23717337 368338419 130167899 453532037 211259703 27921170 822771370 573752142 719345627 520735018 973459119 288152982 389039114 540431075 461990504 516841753 966174871 797285795 552317694 360367805 686853391 3356908 345204303 304634550 307230173 754947960 57943762 467463924 333782168 376976360 918239605 156335040 529462257 43124482 215718687 627559594 293228693 829432967 660986776 25341274 405108118 993600978 327881908 492032706 396670346 127918085 939345715 601371665 9833826 715910835 475611669 477298897 601318189 738966491 954445354 628005171 966314125 484150355 838363402 586513254 648995707 52713942 1731970 407951193 401049217 607159122 545155117 30186666 744885868 251008176 826289590 542885454 176706628 869949703 428471162 733116989 778938996 510411896 412968132 308130861 746939183 737510780 79327246 202495159 160825130 133772946 725458420 879801811 396272503 746492487 961793553 273384881 421150360 217657442 341748488 945119030 256086705 76094340 63313167 194482987 449785249 711748435 315146094 930499870 726997237 837947251 144027062 342280541 354768977 571391503 608039010 643101412 836599891 504809843 86108679 232746905 975602213 961683411 44693835 156433717 839814795 139509358 454525410 49626413 448768072 902226743 207931634 70920880 462896769 761635717 626129831 81960141 858795405 272569022 738808895 856409487 47155475 463230612 274253895 267461590 625674557 447194987 463620929 566024892 299960026 851344589 68144927 480852590 242897063 124888582 905104768 766081418 271206391 965230630 804485091 596478981 330090803 94988439 73188312 407756498 270918542 655321343 422560907 97909553 266630340 233928411 203720668 584540706 572173590 806011405 130308064 734164267 372522622 296796715 384580194 105440950 623524328 747178879 289218173 401589977 722811539 145301421 586911721 813278491 505369043 614936224 434426289 171864752 727311597 33306658 830416037 365836598 726054179 641982378 155222662 397081475 873443518 273153211 412641216 595010180 364664438 402981041 694028619 878010053 694381686 776443460 592781582 861623539 201589846 623743340 310429248 325328966 924066941 982818339 293859770 960835425 376614209 350420398 153566483 113010781 694770569 401329411 831289703 832406857 102672973 559899612 900421816 821183198 621041771 722827781 50915375 306304691 760013409 367919438 884793327 709682520 882156974 249485835 722210747 60934171 274955960 685228303 776882024 955737921 360690788 640466934 611689343 407300317 376237332 836097427 819708673 717271566 291750583 272504687 495525644 397733092 82690982 128356483 111991980 588337545 861504870 259408306 640750726 450957584 854162686 15753512 765471236 847584564 809895607 683284196 27107036 997325080 301320434 198416138 531743498 916354989 974979820 292942046 109718395 684090220 887060472 665939789 954804401 741791937 891236613 135019594 8483012 888320686 822425247 848880050 809620594 429635148 516780701 61417795 659846664 390248398 457956974 623729800 513848184 430825286 170921486 814454050 674735132 606700308 806492443 447909852 724263639 895488122 316022155 496802152 154974733 457385499 574999303 527976757 811079381 822162761 958479322 909386705 714484904 457309871 924068556 256719593 288098765 730920106 570706408 284183911 699670707 877900858 815498016 460929028 118988659 270662681 750239617 370602217 28819983 45444985 414772078 730994143 229173112 114284148 457109473 968770151 750729820 386904121 599248902 777213244 783073206 995235109 126299937 24503369 818455623 204005069 880171084 551752515 808794864 782138231 225357531 450524624 964500357 535165071 18033556 45067278 543728239 197768587 57157330 111823072 257306235 727690625 635126226 244109792 129552547 984534800 547543136 250882672 57287546 33880849 197970751 197009362 948957844 93358612 411627955 518370217 904412334 273824526 108187521 715832015 685278020 580888921 574778729 364948178 250436274 158343656 822509163 520080743 252382754 242124700 666374443 393057509 989886872 248879016 167390542 452420311 7809993 793664461 439620999 384558829 953133114 907718162 539497768 525759168 386694773 92784174 927179092 128432546 400562023 439677477 684648129 989631383 674592656 841040166 71442286 392260538 284099547 321673579 31368158 947759079 880472446 523337299 112508029 968057160 955010452 598951926 3782399 585516375 650778474 1512997 804566136 155724089 517161941 154461286 155621022 199637778 446513589 800607464 971026207 916105450 179645154 132393954 842808077 296145594 426840314 493807892 486362025 607175107 396898569 951194441 488005469 316222276 560517336 120963223 753342064 509744813 837946609 558371590 612550810 356318463 350877490 414169053 460191905 248851216 280964020 395315925 419323081 859714202 121961653 785676039 143051530 204309369 92345607 60804260 70438423 647375216 72692983 366682736 731821161 442376040 243343419 392181644 582315234 86982119 724439695 728874999 485868996 17315156 351826736 419923600 453235869 50164680 70755767 96545125 212191997 32967861 878963117 326924457 42307044 752094416 443604852 266856242 906231273 598545123 279254800 248117524 351239358 953677163 563403939 820184001 10611947 115815720 308490335 447747029 940736790 382852134 184897808 552704561 926629425 460388045 773093232 545082519 714215008 592040457 311130114 777602851 354773409 984962985 232010595 175935217 3097334 551660378 220500382 309663170 31740854 407083994 321956255 941633688 895459093 868585191 400296782 814468089 546956690 966879187 809874225 211549898 406546219 115181589 63118957 846420315 92030680 982488824 145297603 417150452 458766447 292254591 19361767 169394100 527673477 715582534 258094777 514515322 334080336 103529354 460524006 269632229 167887427 350120943 701938482 622220539 840121925 983134739 781859736 21684880 37715960 129315926 374964804 721064794 55513507 985305142 579602915 555874326 381917423 705383931 673135961 549317628 768392759 565155388 224541898 197878529 919869323 881025260 114757551 888110334 852773790 625384099 689695617 145908971 831136190 14998360 719679379 445639182 36081023 274801179 736189378 421775357 274323318 197092870 190410726 392386631 216366429 385616 899658992 834533491 364620337 893693926 963920226 478086846 356073732 103508258 771667686 914714740 965963683 571934832 142357739 424765928 883123605 64839144 170415257 322564346 910558952 990485811 66637291 966301757 813859658 649856345 3782010 24627733 479593165 804064771 463195670 204952124 607330490 858222812 916485034 913212240 202375802 292081150 925087422 555263243 640610353 217409002 725794620 658466490 936689992 15684840 314620568 475187721 339141977 991722683 894615788 142734261 376739902 894882594 19116427 102344173 515537339 878127175 460176565 971599991 766246313 252195679 682857220 788229113 111776549 666017969 951462075 987066093 446065958 684110723 644138421 93855889 863849255 140897708 429194000 817791077 314373449 945337438 727223431 905655583 894368249 961434338 573568832 784845331 497135913 403965269 842629766 2839115 377379595 664645481 979138371 771219550 763989165 84909667 823395295 68048392 506358998 130391528 240538910 444314856 264243442 604388503 72225549 528834841 4589321 929620536 426308894 553628206 107930110 903950806 781362964 286166216 642121937 12883704 242727059 493194775 295303814 512137316 854296330 388993537 387190659 801669075 293103185 990540791 588069710 511752769 198460428 654647895 409884285 209656345 658452315 109898050 480879108 689243410 256625469 674979193 718306276 553908566 69147934 75075338 663203895 233481052 476526406 504031370 570074889 462521531 469072514 387789950 104898738 469342537 274643392 549796642 382082379 832045669 752422194 321956154 109832416 931949846 245445686 254041205 735347769 831644146 675558215 14757604 507150114 204375626 71131720 774616091 657753832 369367528 288547441 240399163 809123352 992975820 202141428 659642949 792807245 532398152 322690450 630469507 294026894 398258502 683752915 86659440 487535875 517063981 148116266 260413418 949929478 61089637 199028171 386788361 850014273 519051803 828229776 370949059 943270526 172069154 941602698 5895936 571049084 79856555 191343467 972960370 444586867 463350893 173134598 574375327 409429743 474425386 729580217 335223623 416763515 206204895 233690731 674520196 584773585 641779806 484539123 568436505 789624042 801806992 655820096 470541009 455023785 443792226 703915902 448184398 159991909 546670432 446616028 464627036 956295271 980814462 74144738 755626790 317229925 429489427 836492396 729536008 406833292 17779411 721281868 482354525 46743072 577705689 689079784 121470142 314469803 792708303 80930547 832859801 154364057 927747574 210243671 933981482 32894071 271214827 691090011 461669571 526900774 701843781 708775380 164608911 253414196 300872686 758082777 296228166 122046510 366562167 787674240 135552305 878947484 792754794 525433310 37481618 137339255 162423190 327958635 458973842 702963232 841078700 86896167 816178554 883880543 17657111 265798970 598461256 619225573 619719202 323793248 691425395 251296978 558827710 949763687 514395213 124269018 987316205 44455359 471317825 548255991 292790510 720392495 245952315 774975904 610494650 239724605 72361849 486660548 115949010 738180534 383398501 750057487 305713990 869089920 967821225 643417205 989812516 808470312 319842724 843917777 573241200 115059727 780636910 45352466 738276812 274036839 994849313 726593045 930538750 54033443 164766711 507441462 824362053 276635543 7651457 135217059 733148944 761548125 491881578 126331801 247910416 298842648 604612078 838145029 245503928 78271919 706060362 293902623 380641280 34666716 63971345 581762984 986116907 550832373 931646886 688429818 238824633 858162012 828407605 970494456 734463961 95325306 622072317 390252885 8503822 17506726 532170201 806432578 226434025 463761152 93056364 445614952 813010538 60102584 623075145 492446239 610775063 366465568 20056269 84948300 586629817 822461449 593688495 276159838 842947144 807152927 709646862 966632461 480992976 646654686 125377870 811729392 412646043 400369586 924791926 550808073 217688999 768566129 388785484 537253153 468232978 736934175 786438368 996202540 755619533 774005075 527243368 331447549 636358255 897057672 937210228 533552108 789855299 219298542 117243944 480056412 489757000 647136346 525423935 900316196 324873147 576917221 196412881 778532160 673791180 324916646 639280964 580167196 483780934 816825572 238497994 952993313 833389170 448208596 619860328 925142787 490505798 269568895 5829714 734105329 913536910 165954195 202789144 872092425 877540320 820712650 297781941 338075964 57207775 225052341 397953975 771611650 832662158 592003673 499762176 886101155 922320788 818751304 744465397 525645724 508265636 643353021 427770123 842229147 575753733 841350777 352610491 601344735 163629043 726512952 926933636 788990944 818111301 33528563 683516275 24577921 377338239 467439655 143766301 116176694 289496105 353637630 541005982 451938794 365396877 503316054 229008118 268902506 91150540 598970723 988007906 639448880 673498569 600365358 519199056 257215908 833062705 258658764 506510762 29071119 208774975 451467708 547966650 457199087 86169420 303888967 410406904 626562847 33100299 469483600 635327952 579931980 199749254 672618084 145137699 653575316 129493051 215876567 263846693 841337133 654878081 934821648 344460452 38851982 15405511 377199123 588676263 161285041 416410305 70362393 960342483 93811357 541470708 927621988 722717926 980760170 700960979 259490561 957633459 374567464 984797095 436851561 252290279 749239207 680311410 603655849 387305326 300489432 182958685 105621118 370462740 182930412 181833000 185999713 436543569 205725752 742584265 177249137 897089386 251397224 686397602 895978773 583221645 45448136 981925727 807131529 101523155 457958062 670022442 644362974 39304515 832320899 635623409 141269379 573095695 629849412 751466546 700464448 931253457 1372044 693232165 528982760 121898155 260739811 337472411 289493402 218123809 551916788 922135064 329718893 730117660 448717097 178751911 696342245 653812461 161752224 398968470 410626072 325471560 514332125 683194231 523844642 216714459 58533169 341877436 226188371 53504707 702319016 164285555 139177768 523608482 200832794 421224217 100495514 510057112 864333112 91631146 613099499 816082128 715729292 896446361 668665016 168541293 344199278 377428213 361174335 789514720 876364790 842944494 53772937 269061521 464105514 501767868 167999790 610175623 450641354 658953817 232972505 406983408 448604598 262577093 522870627 331913712 920657550 427655357 322419614 262085763 591491778 944508609 666947118 887291610 470011449 90816097 457012372 857212312 344340394 159432991 647903276 982837106 342904 354122244 666427417 823614985 895581579 649974330 398667519 768994474 488192994 254189881 116214580 483016161 773470782 850622148 99806655 535987471 374165488 378903814 708186420 61319294 125099293 478765835 746665456 731546303 400790129 804864044 32309689 473375995 412836712 238753236 908858012 896980159 310104681 192449109 377353056 921255633 277818104 934527405 63080020 61872168 59691914 461130726 136705650 390177055 235090460 598972621 242917617 557655457 561991179 476484242 816021018 917357778 660390580 409283989 748581116 280707255 256436460 735960124 33572614 503587691 441973654 946115215 666805992 812624505 76261136 779935461 644725656 459280188 369246039 505936360 684034332 319914450 710386296 197012969 4418233 76111912 209029000 8507065 400021067 400492575 850257122 966893802 729498918 674239566 611976633 838473513 901523316 522985043 968790070 458422151 848562725 869133128 330383440 643905801 610078006 883888372 639446966 686708501 281761753 595065098 719909310 38107211 779260745 936521303 122730304 178677374 375373878 310583492 578228413 672078293 768763018 335237683 454439512 90255849 250590852 713891254 765884338 26884326 546636487 934539001 634789997 641126030 4139085 264341906 863239462 735208389 392836310 47584484 754024952 68152156 986533779 184094789 713451986 542196258 433728752 824049794 627047619 917602169 917787452 428785531 697631507 171323554 431053345 565540965 764908988 961380820 980629247 824868799 470138069 537123400 615030096 715674351 311887346 821329871 666447574 97416680 299281852 971264367 578458389 222594782 430310934 503283915 194704993 213308410 406423879 345970723 38644391 604582163 530673554 675362562 628857587 416935643 50619961 446814013 818433047 197566470 540939265 213099027 370779135 418210149 502190105 286169712 499669181 168514636 885004209 696034247 548454342 280602767 718283560 221681193 125169923 753154811 422688191 937457173 67878730 985975633 324699148 117425388 541650108 294260887 546628578 869247723 429783247 590931937 534811842 294749244 771911798 981890378 248051175 774243696 997232235 996465698 223588281 892036259 791641024 735033972 513586119 56458337 83347964 841986564 664701650 432211720 268926020 805287469 336211507 740848662 545479608 853502422 797716284 112190850 490730394 514744512 796211789 661951903 457160650 443077502 32359533 493248308 619744863 662294647 367884733 700231218 343814227 466120194 902336687 249182774 88324510 451341417 723212761 483327497 950776264 852566137 919903382 554738016 689863878 291682345 659901583 103741720 272687228 770546798 151681134 216252800 953865830 120804752 354431677 332482577 907726594 175745088 323862144 796522777 775304555 28350395 977466611 320025081 259396928 255543725 283178104 22452194 700600710 982896648 994868468 192639044 515047534 363465189 503031712 593154151 141110781 515664420 363080030 971939151 513281623 388352657 497381795 79913936 291573241 889274528 268121774 778014438 709493784 270639712 300473175 13000467 102683323 405473513 324073187 142204821 522161143 139579195 913504994 530262499 219427651 863499521 370039409 981326096 944920415 921377952 239157464 839791240 787646112 664461069 430981037 517880048 364582936 305252987 153634351 579199785 227009164 719853500 590525001 151844111 86648730 719470611 949343180 225230913 578574090 120325335 281607185 457126399 438326006 369527277 945027103 449799504 938550846 719647174 189566938 500195470 656208261 375056658 990176918 72608959 343873507 497206855 1966080 223416639 529833034 19422666 758915238 964524402 428919552 954397067 188551416 554415842 712417520 809734022 592722452 949998229 382914892 150906492 399677567 49664180 970266453 405325421 157359345 952397642 170481674 93826893 209943263 723639652 786669577 915240045 624743675 467130687 342779048 477381697 146953440 937420920 672623963 125187914 436733334 403809437 893151749 725317479 923778671 288290482 25380458 556178555 45088848 101046355 736802587 727313398 932313120 554627920 105693823 267828104 805204062 221051813 841829208 714705918 654642493 552058739 464325172 285694458 377350207 995462244 101937193 771080246 331324148 919113104 505577742 464935866 319120741 736348932 503547583 802296385 914010355 981162128 31947455 99904617 551673816 895088999 64739615 672035262 860038579 141083644 574548573 988974545 118913379 993532065 472503571 218630804 411568135 917200484 268326717 225560534 604463489 725618690 612064369 996912510 939581745 866536165 175879454 361879460 467621334 196418028 325054081 12145851 999265214 573231410 55287288 919683805 208120206 894508442 901920127 277823156 991497542 857325093 557704011 847792161 844992553 293276778 865478912 651918310 92263446 72776519 946531405 154707000 144714477 873970451 646288860 629689994 73678010 808937011 662987638 894065642 62242396 900496780 598372727 594870921 803661466 779059046 101810151 911904258 384633317 525585301 579764124 977303771 622177075 412485127 366039956 712269915 653566573 513203352 432191992 585031904 689481415 896051570 992096488 112697772 387503313 831444119 970306465 183311593 553176648 53181416 307901220 187248738 172599960 54285175 917564982 393914230 807689893 582925330 814147731 814842464 438056637 295501720 30007840 962037450 198720786 228124221 318306997 470162863 210744348 106858164 373386324 663359949 168031521 970114238 167580224 890573343 303576020 286085806 900939116 965783417 442393552 703945908 895550373 367151346 304687102 610045802 142537649 948118915 74225432 945302533 672521760 910904384 48719988 866352596 353029678 758824893 197421141 939756340 559324674 317807036 919438476 610446305 581718092 784619505 58159144 878204864 368825957 689793076 887956395 211447419 134842068 919481250 2175789 771570472 247032760 15638392 53296593 956558498 791482915 393129069 556463376 302163834 445610187 720206205 5625367 331488504 788873824 616133771 861451736 499157714 472071377 751941445 804481294 247564581 615920647 217839616 178476876 815253237 201398669 514265367 196062758 780385165 228447454 516196639 703887403 194424237 205504229 958108038 6890348 780438234 169631517 506693807 150406180 999148786 700290335 240419237 342695295 891674166 420880185 104325380 598227776 87644638 827964812 939734437 398681334 20554980 511987574 812347712 644348033 405196955 407592324 12294624 144064931 619364091 815888061 367662105 596764022 199410835 51381092 154173322 682571293 934783105 273070760 224591848 529170398 359171927 601720894 900024738 979072950 6434308 663225772 314482692 839143632 514361642 748474724 995293337 97128298 424967964 742347938 154477563 773153126 860087367 598182089 706688596 16051824 802258319 449527137 629876676 466510322 169554530 705886395 783945681 500160888 350198044 894697520 599103957 335261963 25439058 170968918 178403854 516043896 457397081 569605715 743600335 219164646 522973899 712485854 556857353 426033334 986489975 952816369 724923305 823116652 325845145 89130164 161453830 631576413 273010148 166141429 631003959 707593558 246856893 320898884 227746149 926126600 505402529 561766670 705377612 333181857 256318466 269439793 841198682 13235811 520744746 741185583 850116915 212373988 698202928 604862170 535161834 556420583 163950560 551736971 443739596 303954199 594706467 967373094 977307170 126779550 579558828 392472756 556619960 228106961 902818950 791921953 617754692 27925950 570772033 80857885 761823197 937507312 669961301 824746697 50990025 17107338 719208950 131762008 144101880 231091986 290164556 577779844 108250292 124699033 935204522 908582649 459897313 410697954 294640780 184813227 482196577 229040521 174713181 893403181 768030031 142258576 956022855 201435422 299325487 176168481 953022232 215830626 85070412 738613088 647472597 117290476 909306694 202314851 258814118 630847060 543930902 391366241 510012570 176750057 832128438 240236721 58456125 130999215 508562320 470546061 199424532 923915863 782039657 661924195 597694328 618632550 974767170 99354601 714730406 658207783 289533315 160046490 296371782 442615608 101356977 869896439 77790334 446448242 240283470 746848934 672058562 127548899 586531643 320968996 683972281 143975381 721187545 207685822 871226606 320121268 749836607 404305960 973336981 513303786 860260579 505115822 846152804 347885533 412276729 538606547 529835166 756135304 379195071 632585542 559915845 704947263 272296966 558982869 201660669 382085974 491447108 808529768 823054647 125459218 969374414 557741172 331688788 376717593 735522330 576800935 236000355 261864370 323196802 460306275 963398349 61568747 947740808 637989541 904772293 692149855 774440289 707278095 889033388 972183677 665671183 935611742 193079281 527679678 343241398 499910877 852240725 8046947 552457810 451618576 673010433 436776114 355934462 81592067 877448617 128515964 613691996 2123000 704273950 25459327 456755582 259997704 431345293 289958405 545476137 427232932 780709635 34761425 505027110 943617272 444198916 297852625 348830382 138479348 722440506 755654211 308849097 395057543 392131869 576148163 755330894 422713896 177785487 737257005 795369516 994293751 390154115 778758431 827866418 256140634 867219482 146849069 215881859 713175010 438049637 417219157 736650214 758583436 69116418 698555050 242761510 539228246 377824793 602910479 747586715 658255522 164174401 169265907 357843337 13900835 587730592 907878564 763216696 341669928 384821388 528138940 323189172 113384149 348263774 404081967 217471526 816428362 427073641 718870139 151459912 34446917 420334175 375680598 456967480 805874124 548743042 147390367 101362448 954917547 655710544 833023718 197457936 35351525 295741886 649825614 169340768 106095431 791220215 737051053 939081613 829613809 864568820 34117507 291849550 218238601 60459222 207390711 479079929 880804019 85491316 391686238 61019363 824023871 240168843 302371051 468685069 357852657 29890656 636483899 326156638 207699189 114354053 633659147 887835812 595502397 817248331 74554283 311597962 742044012 845253355 353647429 166952641 759017615 206034050 166975404 557016837 603324588 45664533 838624065 875261955 168271417 477009718 415063858 659135760 215123092 258096752 389486594 774245800 161757412 384793947 76617590 550405034 365660364 298190976 958516154 278223643 881149616 808600282 267059127 871984687 681017338 741098669 226493527 227242905 162059774 692435579 493644222 524784096 10626256 136239353 7820241 289043911 59398251 693358242 582629440 93213779 880200459 443425189 106044722 78253163 191548059 97939189 252615916 258419626 845834683 929845538 564599076 406937406 201422066 545622973 480401735 209073476 370416118 816131793 746742220 344447734 851511627 76400615 541191067 901917869 975629576 720394956 106357360 92726223 180292556 942406599 651448203 787033780 144821916 302704216 805960735 524306649 223781780 784796508 215376447 860196438 620702725 449607616 236202645 762021281 864039459 917305738 139224073 557393322 386415045 877950642 666524513 252698072 619438072 42532390 235050925 674613646 712549150 716136203 436670980 683657250 618493810 135117163 101757949 103477838 693892515 327246750 533939359 329176016 481393612 183955959 859973101 879901063 312989993 456565095 987366880 833730079 759528674 314979963 541519418 928575499 348038655 416213698 429806937 558112830 510987711 147544117 993813302 252509897 288817627 157636246 106077517 426717526 135435699 517769379 390263901 806573303 917741570 213739550 219558657 958830751 284265740 939350060 622432822 653869358 497549753 294764098 14484278 317585786 30228691 770293081 794575004 690997607 948227805 136154141 515404500 164675686 788188213 789111688 417524316 969960822 378366226 569466338 136748400 357867656 664607577 962424003 858454732 541432128 223731527 980080269 486645725 355310872 707380058 930635169 458399345 683424945 531033708 162322212 29269651 711910777 312456315 795678640 702840934 411055858 157889534 629073793 491397321 9040624 580432239 797425947 954267778 467265579 97192514 894418326 681602126 481656969 912711377 360563629 373870567 165265267 703290762 214806963 435120557 547699236 832452978 724550321 180433580 548101829 505915913 699790757 622678586 155287744 204794347 888064627 97937909 864666555 270292535 492043267 741124694 404082477 195943284 851892774 781973761 888910848 752619103 862227690 294192992 338443704 652995544 25287678 266995172 986834889 393152383 757587262 451980840 557636783 539565727 503317862 354501976 924647498 406830849 138446837 586501769 223103310 4518752 500017438 409000332 238886631 886906889 875549212 355625605 961920227 311318783 547850423 435165491 870501712 610918009 754903214 338372421 941919068 288485364 549173544 945859637 748263680 919019788 876087360 172431164 162449664 230474423 616652425 322189721 247976147 480341663 947783741 968257397 329132493 2422129 672138216 92707763 355819582 545032885 659226369 281543569 843099135 23315420 451170626 12576377 877028854 118003375 711124873 243316311 539693488 379037547 618415666 355967520 973050585 889703868 524811715 65765118 642359079 84308049 413889980 477766840 491658573 179859669 506917805 445232068 612776943 212003431 845156183 112218158 690154320 258910063 26586657 289100246 358716104 812601975 2468893 531451690 746394074 768098834 713712952 968032633 713735904 142513720 664865781 670615909 882139165 663105175 305109188 939196888 311331218 69244516 198783272 679216714 198582477 524026569 138756189 139465139 908060796 125716323 272315667 148070728 14615951 532466510 333309697 756062172 634132240 719853627 566336131 296367542 810413605 673091809 743698304 937423145 209531027 800771112 205852397 511793329 605634267 789588101 319911991 315011733 569980133 200372458 960064105 409857646 945540855 182376966 110226276 644941382 640919843 124730459 138486271 738259397 586446902 271787607 960404420 897141388 460613396 766310948 681942993 204757133 77950083 112317495 299038189 685681070 415342218 211939958 287035321 754468148 677572201 21443126 560109217 105031803 115336009 886813371 693727354 102848964 330867278 270207113 244316507 202230311 913668928 162587940 292743962 770528057 973952461 281218124 508955389 367735361 447359479 18793402 565530290 961478553 909481331 347431638 361290650 580924057 162013033 715167975 945265113 989732840 206781932 126552930 653480482 777443028 324158179 21678549 207925731 587757740 915427236 964615960 59572859 958774466 870274180 324728609 583585813 812580078 904602268 214385398 637765214 174075227 47608534 607493823 233698104 522444106 110616984 625858688 136310983 521622838 20949749 231266126 977870396 410420644 648023888 683196966 876821848 967666809 92898270 159200777 166575869 651694172 823241623 949515461 62110078 760757952 439787079 966020809 266694571 510426622 67713244 896686299 399999869 639976233 355673540 496574012 864205203 63337982 371741832 788965112 110319469 535387562 34590870 137641837 223367207 348839664 47196762 526308672 750663075 329075430 378380323 78646098 240469828 77248919 805701630 575086356 620700950 315388756 452433995 564710870 19755856 591278892 395446468 154629533 193171442 18627842 535198414 272112241 848590528 313452432 65667790 430014309 650954254 749038164 258451860 989168338 792830272 486833667 73270808 678094550 736309484 555282133 873985479 99782495 195996279 616958156 754623910 275093401 468451589 791970859 389464516 915507422 300960735 653217690 939847700 93353438 827804310 618152399 884847371 749956305 406578328 796504359 748927743 157762792 413418780 257374120 949463779 893549345 243682688 316930043 533821016 921313625 967108961 434652489 524169665 359649091 389344660 435470349 189970486 687805811 805419528 408216115 700593161 515899751 754629388 68037750 804095388 758746568 629369866 968955728 897102597 441062158 582191950 169533715 761959107 225753689 959360613 784778490 421871427 650940604 230299287 995775285 563931713 255057522 95640169 963642320 977442991 377735387 590522134 742079161 51604928 386022568 393661589 828235609 127914504 434759790 567928177 235179271 8707462 73032989 5803197 503757750 378259907 658263344 484445606 713624436 135592112 350155505 135450455 990069309 548412258 941454805 650840128 594873574 910184633 828600248 668062273 437391406 232589487 761045106 839985715 217927368 503130601 780222009 535738744 284398828 990822250 985494050 572813075 338460271 317625992 825471023 565386626 792881187 795036911 459754795 84461053 258904813 565395910 180226879 388972052 86727149 831147069 794771285 210113720 560205282 178850975 893104992 315301873 55568658 142700628 41082132 147179823 403398947 687420687 180509834 308199983 573215124 927418016 310525789 102908444 696511669 75454576 967100382 640236384 134476506 432203007 7692787 660009960 98345079 978288703 98731180 603155145 304479066 948018016 694611524 828076404 622037876 501252161 29484290 835296802 959697946 708419693 938016095 379832404 153252540 239608787 69024768 217543109 303812540 800320782 605340189 411941453 879489088 116350762 250044189 222884701 904911907 156464453 252575918 795121342 237110319 402082541 562536260 703405903 3657660 952186367 195695680 138491751 407390142 696025753 523151973 44203144 44678425 773090717 26752513 4251371 376382903 539469454 810439175 985038337 46626963 857773326 494133286 368232217 499531789 655500262 273756641 361396497 790322410 607347293 598210552 586776504 86258011 715554808 821662125 859971438 574447928 393250096 390969250 655990908 523417240 47521450 931737503 343366325 905877489 134337776 419641788 793341256 621335492 478835535 534161094 550616568 537603456 993378301 258975011 997233879 279219254 37192814 633362697 918134483 199032193 280879182 542570123 576385024 189344307 864761560 854869431 64417218 96835900 85362060 301626524 680519976 61322697 639760700 504159057 441669435 464104722 23695737 859956002 758140464 856036073 337809509 370754540 68431139 844622316 156010517 610878947 700535256 530102874 705480848 978503547 172791395 469605050 695083142 550310024 174944606 861432985 109158514 828858275 96879848 47015747 649490915 332870568 460190774 149506822 136065751 468273982 37413836 309206587 184164376 723003290 998716454 408192014 644057133 75625590 996354379 16192134 657299672 463134795 259032957 443464489 217682169 233867587 926469847 334093570 336730952 935957721 969133225 816073761 158860654 46868567 676988688 428874067 876925514 190207317 888604416 364750139 465385869 932442797 693751889 284825949 479696644 938097574 107604125 178099261 205696205 879438284 865302843 233607515 862279968 340271409 378468132 796889638 228030059 623730003 490728372 57207606 605959644 257944274 970942530 851162147 558787479 904639345 322891953 245292535 386302315 820503158 859139993 375894590 108379266 100427380 374459840 345004826 539393049 330561287 47413981 802507220 360995462 468900185 294360085 531153898 74934506 220516185 733590772 960394606 424088487 326465928 82883966 186855138 437671925 998035664 687637514 627763534 475291713 297683351 88057845 315706791 317885543 747650661 783826997 180868641 313969463 42561966 73273512 363787617 74464998 274856905 548165521 975770995 694557521 384650648 661316681 825967081 571163332 826616810 914779035 184850682 61937216 419326037 504875679 846433633 557546826 466772416 881748426 557906181 244455500 500882943 510949323 340099497 379771813 713189177 98660448 32647611 885681393 154570768 926491106 265795620 781944227 68673005 398114263 332519496 456648252 701509864 920102492 439099008 588989109 126202301 389335733 565977616 285779794 340940518 138583535 671477121 743868680 659562854 543675308 252608403 844063707 447063009 32107651 262311421 945331343 744624302 444113232 376627897 975581324 182550286 106361001 809503377 902525086 713605843 252833913 325938933 57345790 410059463 218692329 59085519 39452789 35353624 995828350 115983109 470867851 250245183 128348640 31348088 3942746 691842501 131601210 888637939 869038491 696872798 880344249 194190090 617487921 296074060 214426271 188228319 891766618 672757990 944133527 779066918 762759542 467846639 152729900 721183416 239114697 815547647 266880262 148851378 154983821 533011733 23684133 118886858 210938778 58652837 501713225 754237505 389063349 818828504 212215040 170627141 920380156 834722552 361064285 826057866 202319004 742423817 247825641 561079713 189490624 11376119 127534828 153689985 826154207 410015507 953352209 834452888 805455962 922772554 547211963 70077710 215192907 218403027 145237799 171015404 33646899 734269155 58005236 194684800 294000808 261237237 687271443 392461116 847664870 399344571 348510182 2930499 105655482 698407930 502218828 428855176 423638380 655788454 794893330 866934921 562573719 934303359 420295078 157334386 757913353 139268944 690596317 555166465 981440199 321671696 769644696 450578880 394918941 927057728 958396462 732390957 333254816 870557811 330259145 591663480 218131007 506316077 466243864 336120785 801715264 289387688 278099488 817649333 176027100 97318623 345881590 405864552 118113364 284918614 513905387 703520684 777060405 715516699 777214076 243970875 397154061 934684438 610378556 191534976 296158133 736803359 536954512 283707620 789697908 333222599 847054507 52728762 758589492 160300493 458851001 250812831 805222115 365701187 496241708 950893957 973712714 592757890 118277705 962185826 934950959 831588399 695514630 643440709 487064401 143308549 761428415 74604597 938706724 757542395 549101619 532629741 356238744 589968228 822852220 260010919 94779007 505279326 156968886 989666947 218800460 630784915 913865119 345610709 190133446 380287341 313148167 415634493 155782115 87801797 371402654 892753823 602190687 182291574 517025756 73235633 629104421 745880698 228365523 683856656 350559291 624285009 843466187 293521386 584308005 924579816 736439857 292621955 167404262 944198498 307621331 826440072 815718813 397313120 639590558 788773020 92843711 129986538 317569898 98115788 112835010 83095226 631258314 402583806 712084351 315348855 749208606 836621755 127125961 656980366 717289188 127958048 637116542 515438298 777620137 948967908 460493010 847015362 978746238 461306313 258714607 193355789 562217973 76332524 774821739 622378921 842081388 269117477 731035787 968253984 310075785 737719893 162612780 822637693 627530354 981802626 529755520 77108465 962476576 144697175 732890029 721907248 389026041 370493803 877825168 478205552 729888817 761546552 64390822 500171233 617156741 692785884 494825228 913559980 869853687 353673428 259996257 802063883 987348916 611693196 471612666 293649422 77659557 453073006 625006525 432235467 774733990 656560198 654014435 855364113 718086448 884710303 425110344 614638846 235531449 386961592 423525794 309201803 15592454 411499327 351634562 153784742 662616296 404586993 214598062 844709757 222230601 966932844 507887457 191687977 892340964 703439093 64644448 234420770 217360286 581513149 569015163 676147039 883344317 714853164 265506296 129980152 73827624 576710833 121631517 446546665 148532067 961764438 439588967 6566685 50526522 100101644 331420720 762841146 77490792 214301278 339983891 567333639 657106541 634591843 821030512 795602488 238283440 115498249 500234143 803114253 837392957 84319587 146103942 745216034 810384843 929267002 972652732 927948012 524795325 547196861 619515785 934717641 586996755 995065552 517876428 493961156 780206539 167518707 545484240 722828393 264029493 9050444 947014062 233909703 860848292 336318134 909764510 930259892 604012861 950727366 165258533 779058100 238362774 781414705 978009392 821088315 195609225 502202323 408162393 311785573 650377081 68392949 535721650 565442249 221861395 417025585 630267766 83143422 305834525 37741467 763688085 602088390 751342666 283782367 960528106 823959459 971271809 559554085 61500190 413068020 680049809 279513740 625320921 709397248 341887146 182260513 621486219 657549930 473698169 657464089 760217742 703131224 176595262 159125417 408788864 760679183 65167640 722410039 179540598 92201931 736353290 460764739 302733821 397255839 152536839 709068220 353262689 680631496 448001792 903473906 204959327 83769036 145621388 979688707 545185997 304980378 879507057 642379808 349441838 834597185 802321058 273499055 860762728 554418150 542917189 513038220 311002196 521144308 977873145 254483527 748184381 781003563 506455832 434282643 877838057 135764257 91308523 200527030 92317553 839048598 224648254 178270015 39691377 796224092 303472165 341137562 75221732 566660177 996163086 353477980 940798176 571141368 191804023 151725079 21786778 389526675 999039797 679907648 973969055 6641108 459193213 681130784 962343775 711145935 606848910 919031585 800734318 578608254 592103513 108139461 845050238 217772237 267921136 858118433 403895738 349118129 932196882 112741675 289685649 565293553 507648526 43002124 250145142 83511696 802896950 726410438 315038422 430867704 85052060 985415745 752092941 730111646 473212040 647009517 530835632 738784019 298365013 273675780 623967995 439127281 996470098 479748008 67432529 811660485 151574533 279436057 383131378 272337482 663702486 659922067 790243616 361581654 858862702 871736612 34504110 850871953 630875982 292497491 297201307 271833104 274742818 100803733 556160448 514237677 734868939 716910300 490215766 523725272 898519609 17242538 551149445 298824434 724004150 165182683 537539445 442234912 708013072 445686122 144953573 392956828 683234628 701544954 527785037 196333910 391377654 478819471 662506651 732196690 189425351 803665916 199638138 902360064 448371137 807673273 235904959 760546175 331451560 516029019 31262576 549342162 310433401 780774592 657229915 124193022 78489630 356664711 795942518 633280592 872758979 689718647 269946450 414042154 189822846 468987509 348826118 987345383 475068553 599321970 185176368 241772145 613334039 844490767 486764139 565806639 42991077 333015515 367000635 381522993 751005377 409415377 615982165 902286858 272963326 34609008 2896951 484446952 598173973 839511710 660860708 628664089 704700013 992638462 258791513 633179152 272625853 913959770 441079247 62625986 882639081 334891281 357750535 644690884 789442480 105956672 410109871 903085317 163928971 985620960 30513133 477028140 253973181 488080617 487460155 613978341 34343773 495381562 299560905 527337509 666764999 280736706 252682219 708252734 916908458 329871924 783003183 40415526 535662518 430527921 744653368 267683248 60833425 427104166 467646914 671203544 516742312 598603328 34902521 84647684 298913255 4842105 192191899 612675700 413918521 420877978 440635332 872546519 929762474 832862112 567309167 227136530 72985210 129176311 89651109 819185043 558387333 512537816 919026148 804462 985783887 557030895 670034766 335243141 819887734 716831110 870311785 130775667 98929070 482499126 686426144 385128683 687752889 286141613 741429212 222358665 561298645 993862746 863258821 137577868 152700827 242665481 938590408 900575802 628515515 669787512 41139432 606861059 248840842 834708309 291974517 202149490 665558063 298331209 264954155 577271964 657020850 502294262 55415920 411984244 187375336 250320924 521781384 788969314 774670167 453694189 24195058 802239112 191745320 604225524 979996710 702450393 758110412 495663190 593753224 784602733 473627796 992602754 810601529 103716988 679057543 159806884 396455821 147972503 916030876 82902248 176660996 555339802 460908043 388951487 457227637 545861350 790540532 728213247 421237727 481361084 113562003 615148923 40411964 233160490 870475035 217571286 606625458 423562954 91219059 143014148 731331501 645985146 864646504 412979825 269642570 227120379 81576294 999139052 423869619 106845574 522781683 319601659 513779858 429216214 698653228 825999800 465940424 915797033 427049096 802796830 793898853 406869898 858745675 81886703 802923973 949333386 645717207 581072004 693500122 94712918 790284632 242560162 456483611 404094622 192834725 959581908 479842006 272073160 141908261 993975314 352384100 445146415 276838488 794667498 984720733 640566876 633799038 740424807 273024597 449052431 411270326 595394027 416751273 649246531 343445909 404039396 276630111 506384076 811960593 782318352 870083456 868086874 821187462 277548316 8801033 156876044 778686844 490090788 226886895 856648682 187848795 550530499 43324351 963320112 813361786 42089067 448337181 310568288 817788916 530725173 572510529 990223546 351608743 858418826 91874139 575003228 236611233 265610573 921295240 803854118 903079186 828450503 508035214 526029985 371467279 872886689 624478599 273339524 431777211 870348084 312118528 605740068 854331111 562233813 651800863 616202990 161727446 823506344 617225982 375339228 871127739 453506582 519008593 393460106 888237200 979705549 140815003 855692205 213653150 248008023 678424662 880335271 186233801 399023809 318454561 133117226 192567730 513563364 527032704 157068668 954601684 505781621 355312393 486713504 676237737 468243140 853969321 377594232 897804600 759656229 68729711 260538292 99149238 815447911 887054695 232197826 24720361 101633670 119874547 579920214 425370111 320424713 822126648 234616640 742322660 824276456 938070094 145917250 38239398 551316739 668459182 44318891 792941844 971797411 748149026 175223164 525923745 101976297 375970110 315136148 945775207 285983723 249600184 756296255 314778395 836657913 141902823 917587318 455602887 666974081 365786723 56876218 96372493 451703950 12944814 183906829 389807997 912079280 140726861 25071624 273348525 349457652 238777769 974332422 277014414 877140114 23790199 980434813 210743453 47663895 82702812 707438747 357394694 895596194 873437194 570720470 260123974 535468143 365002750 199593025 611615389 923102953 430071589 244131979 187823268 637337171 617987031 523099049 583111402 203879244 993487085 584951711 28749027 535552824 694622713 410217241 32877152 798747883 50746810 155731960 824466143 389429556 286541085 849959777 952590404 249068892 257228040 36052152 127249782 928844856 741113708 17337076 551990645 660755998 449122483 592456663 56138235 184817984 155243575 471491149 964661213 58667119 690074194 877625806 60905613 402333009 42512996 978753248 403362083 486474839 143494510 856622960 534148031 13839927 640945132 434279570 187135098 989471705 766498067 592753607 285407714 417940834 648966741 918813329 752656150 390601901 568578501 836018895 389150969 866874175 151830082 27980840 754871484 786864280 600271121 736902022 271277786 980853025 922211557 650642709 234215900 321134145 570359124 892417126 775787427 826309825 100368262 136277418 424554509 123622521 642533243 27393020 557023610 197549544 497798951 398069593 779423963 977653256 41159705 360110473 928794317 999074079 848006208 20837939 274462901 504312397 720490517 223290385 734221385 358160823 638208493 547548138 294627911 929483938 569922133 907123377 709402641 883437899 718476424 521457586 581098318 761749041 459156461 788992123 266589898 825588941 198809785 991974712 361157070 204712834 528518303 74195652 538840062 980872394 870406944 731906926 736514553 724133134 253170457 754473363 599106123 773646895 272267438 545324863 459354983 427940105 523113547 252587745 365697133 425179897 371396712 203442766 283758185 399878486 302698760 919493487 206660820 179789012 402360834 539756137 33244531 995551097 508830136 331311527 265675950 191919464 541112242 437814905 238366231 445165223 823197069 720708085 202857182 73900846 150772059 9517813 42132730 569088704 243073071 380571055 8329770 601226929 888500984 538329030 749066943 500966295 715914897 462884518 928703407 679611257 603967966 605946812 644638755 772936101 725364498 907845882 199280829 845643564 661950134 284813393 714713925 948955633 399396609 492888279 922615502 805357333 982369954 979833797 733204988 498690860 804636524 407971323 736669168 499051913 426104941 616403347 959643821 611063116 286581357 794364712 73911774 168311910 273778827 307130621 413222348 531654964 824266140 730190219 96075797 751969633 662362850 613371345 458044531 467535733 197453039 835680481 693712129 262431168 959216414 598179623 983604590 468258269 246612878 592188506 132521971 648328881 340242677 974756290 264746819 26817787 766438642 954728978 833228341 988608932 256745416 254522747 625651681 23884116 724955623 49654279 679116239 172217365 427831716 224557587 440558044 368614376 159915377 371651526 691253686 375409971 814075446 85348985 103686711 763912460 589387937 522371303 419110146 757475380 285610703 96865867 184454195 210227041 500018657 333722900 856076388 263696570 838627675 333818616 846130095 226403018 627727576 634915661 447078599 723572777 715134306 207272708 81866755 555916294 566030094 52840839 507600900 253754474 859007986 40713648 158668866 410310543 286676700 672460207 726367862 647450072 793384141 187347256 760637973 744726787 768888726 520922924 601949642 493680029 74544742 254031420 311111204 263258030 236221286 703345340 661991440 815245843 394299010 957140815 798527228 429470416 219406734 404618602 345134501 775864011 718257685 948203703 245904496 173524672 820407042 529733191 349731080 744509237 40144319 606434551 964627229 360838298 237136047 823101294 556819041 680170746 87186167 647245239 95062870 334443592 112295558 376863045 815859949 454913150 963073547 750430510 226947506 371932297 165496664 248297080 785863132 502291306 170865125 474190088 929376598 469873919 717066394 345369080 814856475 476993654 838696273 128146078 885607615 884251894 787831650 7265352 520240378 403890407 463647408 786909677 418382365 789951260 979180783 390318094 781316028 934450648 522418105 699487753 639751393 27317987 807067449 659167811 171663260 306060568 401175630 207814806 518613043 31612156 120542246 985749655 766113368 600475346 554786623 688548619 283819129 699016618 657137918 661228082 692305638 700130079 58882836 126748277 491698368 87131535 44550186 405425836 727943712 286289609 475732994 335886207 879046360 446724928 500278018 86525925 924248649 967248422 338379139 256198875 615719770 388183703 38325287 326950451 51219399 840432965 804353755 507765657 485897024 703546946 810243458 542436607 826352698 201855007 388385198 546972054 40650336 250883732 531604739 175060228 271096003 216693484 588435044 418877631 72745990 297209416 781054297 86848363 555600535 689447948 849971807 836592346 112278234 165794248 29631828 911794903 674591706 863840021 864230740 784918985 164265817 107722012 685276649 869457756 317503498 688754035 706485656 456381808 661655092 745065795 748253747 122260813 910400451 664166757 846896345 424624329 457601462 378158289 525677176 33205534 432787763 344841 830282035 634558583 482135992 342204804 374271735 194890508 436442428 943345363 656518144 491104003 445623371 799373123 672157447 564537867 671067913 917300086 405460654 340450317 821698326 529320587 51149548 105073768 369342047 77909349 914578187 106042613 320958965 185281668 727568297 844808804 836688175 92236316 664755160 651735297 135284146 190560083 18175972 485792413 192286518 176862100 357134127 336704544 396014167 101270383 928459886 559223433 818756998 894366181 48535830 428890384 596420563 840389498 29188948 920888415 32298344 160682890 203469817 90714630 166459143 308272306 668808917 650695858 13228392 494898431 697102659 716215842 340748175 584509222 577294940 652858610 610909647 717228305 518377027 903711616 622902779 264073037 261434658 432840998 180583478 193630838 221691512 303657000 108677722 1914763 122045757 497566962 674964638 801600333 502678310 339810263 312737135 453804923 473681129 131629979 239240547 871678759 644166829 326861024 727578618 430011153 111848783 224746194 516460548 737970218 454887633 287370891 610960856 267912663 126241464 743902844 750697838 341731751 870302831 622703803 703743268 304701978 147724493 424484106 120551567 160953703 478454238 164414811 335856939 40684802 33886484 26805110 909322327 321093786 361085860 205855187 494855066 498370901 243574426 674871549 318585441 923746465 644045636 33403457 502010543 941932302 838735899 833055144 396929242 359191497 866388374 300589485 760435607 312792906 464650032 471243518 715631261 273801662 746384630 273224818 326525864 788379936 784244684 879858803 803092810 259030877 583405486 602118685 26343623 134862458 641816955 630418521 563230478 75377552 880354834 571464773 794874707 656036224 338520513 109264740 116958196 262124587 767103382 523739754 900329749 44744697 259009636 977222639 898761351 280185392 475708450 661381373 627564782 32387756 979172551 771761197 108254247 438433639 566471596 305224482 214908766 936130606 917239460 82758164 815406738 939574584 787514667 617456819 778617946 760358376 421581479 460818430 622020074 697762439 144298997 92968786 518597651 421410386 577438983 849322975 478611252 649130104 607312792 852063161 878141437 442105242 933455074 994844169 928456662 181585672 461069290 630567169 610950532 690463871 841903249 614276655 174431655 139846103 665732436 525776426 807369412 278881987 501897344 865617624 443099053 657826542 251701715 956263579 860851996 981796227 423780248 727304035 955619301 293721715 992493990 726628545 433574928 651706536 883655569 121693964 419545982 822350462 90770781 874269394 880652622 231749222 35149942 751384256 352800737 320749927 715125160 896353978 209730203 745462658 901866071 597097633 719844782 311308011 351131041 926886447 15034554 958689385 271417219 528337487 428642256 434327092 129683455 629847681 878713226 142732655 182670596 592122834 704077373 197125545 302652984 564602673 187631609 770346225 440182799 486097861 665899852 900243341 878631468 954636862 183659160 369436789 286569508 290709130 96676996 839882026 170929575 76868324 77247486 462671960 489460448 40946624 641544661 190524388 711187131 896528420 637987514 852882902 774611020 681048325 793826820 454159560 323255794 754352309 554676489 576152968 897572663 930419727 231764021 373843559 244362506 716032715 551180781 125370041 769376498 657482528 598864066 916535479 403755265 803245590 436946940 260947337 584624623 823293595 641366312 598697293 554267622 167978323 703141534 739329971 647908784 656718082 862542772 461413779 95529578 698795816 49855053 263594370 317750556 896303647 20191258 835566714 655810638 490847173 610993408 857619760 715288729 140458449 664840240 845295279 298175196 515566541 944034224 833651131 990625537 413275329 484136561 541474185 191152996 219506541 145648568 570266882 127260222 816536824 138760120 696904824 562385443 449634995 757914775 365999302 562903728 672508732 643429035 514936535 841282890 16712105 74934080 496913300 787109075 676874379 919751443 84184867 971596084 256372330 360813843 512187373 859728167 516933517 664677339 237335972 494775582 792606936 703995584 412448718 118214138 200745506 819179022 49307539 675454337 7892426 460717006 199285054 439010635 634775662 416669035 439135594 923199372 483140781 495169887 194829766 946719963 961262933 690010221 527218686 408478528 7159492 561027538 417453666 409106901 524185088 413441336 635993612 437300803 367315666 240092886 245337592 512530246 78374400 124863546 9077987 223909696 51838608 681874069 14142500 249587339 735445276 339161502 642591216 60747118 883796759 441608873 616923689 151425581 972570139 689597680 12012288 423560884 102174309 157401232 62669388 653823727 681728630 794657767 164241283 89863467 967337161 128765992 603423742 106520884 66160465 932874991 745490051 796807618 330140506 465673369 741453695 81210378 344785210 581076854 583978806 550650090 105544201 415112290 37030267 378792566 614170381 446127048 400820554 597676866 693937653 866558327 334595857 613027422 503207355 101804832 776943779 440055418 141082800 238812244 721172095 658341937 377772524 100508061 550824406 78005754 665108840 80839911 331899536 914600305 516060603 836930634 822849441 603209433 446645120 571286585 410601644 401371822 454902240 604417990 291773624 565099888 694270493 20510052 809849435 134371498 992961863 533567786 875894918 970307761 887880431 377926453 61948947 669387576 170379753 422880764 18246137 318953481 679085057 975053338 823563303 421088623 926990850 239665803 334855658 910932259 746839855 626157484 341404521 19714108 192384677 613578550 387694835 487841612 613336520 527297044 671976626 205016206 961338223 855753347 896865015 466905247 153152811 471535044 522237126 929538060 26078475 186625199 600951808 776636478 34748916 383801278 255270401 962385765 163522255 508384101 291760511 698461170 198654956 667081066 409974480 502695417 810297148 441758525 27479732 692877669 240484259 69025052 797918377 266797170 838757042 494005589 440869771 195913573 182032595 797739230 178511975 335534365 140099437 49918221 555220519 549194237 986828786 811203429 843989423 357887473 320531950 245708769 192988398 116709196 318145497 282689431 925772859 382269842 178253099 704592000 547341486 794325395 763518647 877546855 93740328 835334889 359306803 653423613 721221305 326527815 953271209 264226208 2530293 762921787 868065021 342627299 326400652 533777861 989799438 733844965 485566137 908473635 777367744 270973894 828705216 291421983 494145111 611235469 212804537 393575856 441338507 62836485 489798957 655944854 953591170 787185449 631671323 234157690 271331208 515900130 371080864 697381220 555607398 378219155 367227765 513175745 574460127 813556794 599923611 86923757 850125440 379025397 160756683 890278416 878516144 618847139 246780123 807588257 485107482 908287975 805154647 966149858 869293670 502994599 539239467 636046771 126125073 60716654 316055100 561369306 556748745 585435427 650721212 982974101 185426982 212639090 70667524 698475900 353444690 169472008 61786065 656727948 944089629 901884927 966800789 532578375 45824983 701607970 306603150 390091214 996902408 921113095 137587956 579571937 415331240 549758772 948958679 202782451 791555802 685680924 555821941 404449492 50016795 865684681 988446448 895836041 672404192 300166893 395472791 339643070 846630620 95339752 534181327 800389544 874149096 556926608 436052872 426318482 822440454 318102226 477505941 873064582 594951597 258061328 496651610 869998991 579563569 194934480 969956716 789216409 993551789 236154638 46111902 830863684 225171987 152757999 573832608 613091366 534058015 920718916 892429188 837215594 575895080 485607344 361345939 857878560 261554154 849685024 803385326 333521355 139821525 910445216 64640298 782058733 938409676 816118044 237183605 778686767 414683988 161896681 177351323 267930230 186187468 781602720 94941130 41231007 323945017 672235522 322704191 563398110 264077878 38139539 27458085 763549885 378586568 265036849 289704516 50233788 498533981 742164577 243437356 856784943 200236873 968780477 311892486 741500709 408323642 429803526 858539339 56555388 343645382 425358524 191549821 449034463 426429122 198332652 876261534 733865818 256145645 173329590 810517886 49098431 465145888 844751079 67601960 669430959 235862435 940601793 269526954 591173316 839284108 656918074 876384535 420611368 903196413 892965865 56299659 550518897 930007283 530471463 735631462 189268839 875705684 244437426 280829853 147822889 445947419 113028746 581343742 719980262 489650799 94281816 348186890 185117450 180503183 518082668 711057499 832848306 469504411 704606830 71622591 713609409 500030029 827887097 155198497 303632642 899082194 114433470 363467659 772153580 833384841 266569362 665488305 431835260 653375492 153886602 376303635 89730909 297677812 112325768 187879230 124090862 95177005 753549717 281177006 543622888 593504007 880749550 734178146 82084504 955908872 722485256 21671390 777541053 4862684 805542759 44409644 616760857 932956909 624414908 960859972 609543238 332465884 285771505 234909721 676957218 881449431 596183575 342780555 502493220 82304609 379290964 166760831 440466021 798876207 366347215 485587630 809545359 241692794 500558813 908471817 180565511 870713616 143546321 466305512 208058242 563431774 132022671 624348443 194897629 536744883 984726652 488786782 204395662 64730118 101445071 802149188 605782708 745154195 774749866 54020510 799958356 893641594 480167534 690953387 234662505 971199836 631118429 240584829 687395092 842670547 229218365 507956461 297260520 642590163 343507403 286696055 650074690 75455014 449913041 388807265 253974234 284770716 499522364 275349566 282740604 994361659 442397895 771576457 31967123 220326487 666710691 324883756 375853406 898975055 177421345 312318564 821187227 101142525 618941272 295674114 659818331 281722549 702722722 941790674 688090109 10118185 306103198 212326985 557383684 313737788 657598710 365025581 963347033 998008479 661290146 531558251 639162475 259838892 457576443 131566670 883798644 67719344 908216874 537795190 533077801 615023886 491703067 259639011 623242776 362901449 889625311 789923794 925371047 381361306 302241024 838561001 486659824 494789412 610888143 643494090 833895265 231310266 916228785 542973636 163526999 875917678 167879644 506264833 318966850 785734282 182533492 427702212 196401455 298961908 41049541 7081931 123252255 457347487 302133478 635464603 407101795 96754001 433545616 964528731 424428679 51469815 749072329 924041830 56181621 112383110 665938991 832868500 507297449 597549698 135121805 141712282 428604451 392100166 302125645 546723869 277381594 882973782 35944432 249950367 601317722 221195322 217677978 691976704 655414153 671600479 544902271 785837168 229473230 441466198 923879603 177788716 724357417 17938505 611056875 256917923 150715167 166251875 550533699 387211448 508347894 873862222 472834557 577992931 604691965 663416642 484930834 178217317 270884031 220371036 150917346 181493821 665912118 437932875 639768819 215612911 515807702 547869523 564400475 59638689 801720426 389762670 332307412 714520292 178705149 217395194 347639281 530357687 665371543 139949532 184319917 534952590 810886901 859753505 294825106 546150740 329410273 42733916 210802185 15770815 348332665 797958679 552045104 515668497 161541143 857342155 244421455 427785934 187742196 395699663 968127307 902989173 424802410 876085197 265867001 868469273 288075343 247197380 381889296 719347853 407863633 922725832 719278518 382526608 313056989 862711897 531567939 241916374 835132757 150101644 110350986 897461129 826154308 244241946 749068202 476659903 72549456 447755484 50408281 212219370 548113007 61906004 272305471 562106772 316559552 335744880 889783276 674307963 609507786 34294852 814920058 133928777 820716127 140015536 2224789 379540014 77261304 519333671 5848463 731903549 922273690 832152233 181842338 541017516 991605104 418356483 515590814 778662554 193188568 533880724 694990010 536048568 883641915 81652673 981470318 534361222 458342840 948400770 379498995 942159272 976630941 561925269 418267280 435380086 846185501 171966737 89107250 926866593 25750128 672832725 636544308 502232889 321460588 249581761 850321404 656085411 271221370 457563661 819561073 956579443 663826160 450558630 212343250 341054501 447417423 394346445 852726996 914483233 416266870 271152206 936653998 284282935 332139140 633093431 227593143 168605008 340906256 482828635 168990683 922529002 548102711 692225310 797379622 55420812 591313833 394056690 859997949 270369064 600162243 907162535 258340943 258197061 118793843 894060133 149073545 543888290 577788937 844952937 933992850 568530191 945529486 34918798 156666297 42196601 877748091 92656868 546175599 460339682 377975179 987110231 942258993 486810217 362299740 661724191 78370530 315952036 436560766 944240181 942478435 565558117 921313234 476445035 63747835 655026350 280617797 425955416 539042274 89024817 871817137 923976703 521010 607551758 641878381 136152787 21917402 964678907 476080958 9123874 414835800 963781581 716712013 909898572 529556421 855819650 888866763 635049531 273744868 436694799 34975500 193859559 262592044 87815905 762759805 412721497 739722799 750434820 136586067 427770218 87552606 594094448 51819497 463246600 229925308 468474187 302633503 347914006 156584232 423082349 783951465 399609058 680321270 244781829 954490013 155246771 201938545 74156012 78401964 858709252 48700892 242238604 933442561 964064870 239760816 532924645 108063556 759434352 565080072 997319336 537379130 973792670 643004622 488478754 67727307 535320433 721831548 349856000 752007800 220185589 442242172 894936108 254445698 317076100 276499100 6201465 528803696 426621635 905507691 198009865 194559098 560970994 67819951 397779776 15476696 46406267 516131322 784560455 161084293 156426261 502330537 718410161 858014631 592678126 464902654 416851509 129531293 895335892 74004235 66270818 605472677 203871320 493769825 620198483 363151785 419960887 366884495 876012401 165800606 697639242 949782026 787078023 869523556 943938255 450295517 217205161 958518626 34330933 803890712 36310274 712977150 126083230 516933968 805570148 700457602 797468689 784847697 964390606 692367661 505692044 999688501 522344839 642036995 471384935 357489830 349905713 773173294 761486215 145756283 469339583 26949370 376768664 343124885 742937058 422802816 90728177 813319874 851132564 104508854 641416477 773224965 617366779 867400532 835335664 722673047 933811588 27633240 640021115 614859287 332317260 183510230 399258908 999123651 577727697 693992762 241775768 892095104 445010392 219053252 380845571 152641423 884789949 554523716 33194046 273514985 395738122 893132574 628908825 881745958 658642148 149262967 947525810 47880992 990520957 536317800 206510405 343125376 69857504 35423895 997233513 972495805 861474137 188097611 960821320 2233544 228690075 888502765 379778166 955095698 92331866 72727688 888813409 223597344 399122672 944374313 227840836 927178191 603882046 437402681 967236798 440850164 119427487 150680541 524871358 525473793 555374141 924226476 483975211 545373916 776952796 901243716 371402317 897556931 481176737 421449558 729164037 906371405 170468589 513624655 223698184 986901218 380176788 637427808 967340482 289124552 552838741 465299129 485563281 397223408 325303434 775525524 987275382 517747534 3938895 151113098 808082852 535548729 624789526 516428825 981507767 595865843 715109830 49310810 387384967 973728300 841142901 451553442 55456423 994523112 864324289 61266714 314301548 19685695 257176345 668820753 118975920 727269347 79455247 561702586 999875064 452506927 218035972 926372269 820601881 951649505 419546534 788306066 976400079 601835214 311291397 483185157 210496467 479404443 988571388 573987260 274176218 560479204 79229490 515523009 340417265 992201656 482199142 62018782 364032138 378526087 495237417 940575423 729245979 840207181 276932690 181100832 698721593 482130831 3071846 645097948 797829292 638672732 513202655 611233131 876438423 462021633 623877127 800972524 208593678 379825456 349711284 483459027 52134366 900019757 684898248 213973158 381160702 972742327 909722810 506907999 308333075 263079051 543967397 404863615 475591391 528431910 16029673 940511060 854646409 922443639 425423421 583431424 664282677 703795871 436605874 753202358 197167004 100825281 198066302 323072534 122410141 352399568 806782397 989116812 600365490 410426109 803460836 271372992 6053995 782539338 82957864 6555239 867175728 543769588 137481052 632773829 747497174 25898574 711874965 286014734 225632726 917168868 486108565 985864531 876431479 564657796 482749655 61709936 356808800 282080138 450273243 32670180 252725137 646332788 715081897 814712117 679667158 227118525 939158905 214776772 540175932 563319436 558789584 259071631 817236649 988147427 3512642 25709337 877341267 63528618 967738288 473274980 825610644 913883876 166270657 124857679 67860998 4693621 732822411 59285948 951630017 896672049 847591788 926123105 200145177 549761390 79446669 309147205 468013800 841254450 968656118 779069374 707983282 41305061 787003839 540064545 509459184 94088241 3141067 208657234 667245375 473120535 418074498 588867816 580921604 282571741 237893450 142093412 542674559 340594145 680129572 37215966 385277685 629092770 404791654 867256090 374357230 591498774 779969664 537052926 336326300 245065400 541641288 789547002 74157297 762185081 233182396 111055600 798502121 99798606 157743202 874543247 99588703 446397343 356719772 424807879 753204518 873307481 965983738 972824959 542402092 156210252 995505535 367733781 724915752 177611627 312444360 835857193 422464012 265033318 731050460 351148302 474492549 210118364 1049443 307634708 550724543 320705731 207236585 49839395 282141794 570281456 394829739 348234676 853129705 825120319 153175576 84027983 567099149 571289494 773277387 743468641 387567196 17753714 421995360 53955866 154754656 843096906 70935946 604794990 580734481 714501742 723792885 911087400 555006764 848846488 13710314 400603283 315560548 452804821 400746300 974497875 998696763 546470671 564441777 719607820 593838049 953331902 749220880 334717956 678682181 704003383 395533670 552812954 349105551 876130689 608166382 535713314 564325625 707568255 331208989 684367258 848803890 85770177 998455936 44873594 178999604 894053069 491708007 863942334 656291773 682061343 163760447 271427620 531405955 461703584 769705934 391843185 450410693 860536928 231172985 804595971 836978731 684235382 412862773 401605680 647089911 12078513 987301862 729816976 506604553 578737414 592326723 434086914 21103886 648690959 947621635 637095832 95547843 495814028 677773796 634929548 789976138 935298165 717132969 263830119 783676323 136905400 219204530 15052682 295393195 322642889 781139136 210822555 392877036 832208141 88375309 596903111 161374279 648334943 890868674 167005164 253110981 822267697 363344859 651251543 277695381 857830829 430922179 861544753 583177589 582501192 28661807 641529363 885112178 889379755 620229663 487368327 123237253 7791304 662889827 256113564 869264447 626475473 31192341 681418056 796300487 660360343 40409645 656473235 146341735 957183698 569525868 449351257 166048203 287421732 325080744 993099686 642474444 828205004 300088912 253367943 652951491 68657745 679501060 164654277 802458040 683161232 702135694 150417691 127912409 947377059 743192805 935575407 865129591 103686914 981391547 32634913 736210347 101326721 23545169 69882730 65202083 858037421 47526775 718366220 364584508 5400425 583504641 67332311 154512072 784891631 580617779 20084107 204784269 64129 149734848 731921297 126451057 293243841 223364394 511674165 324830407 510480990 36015580 300673752 403934860 202156788 356628189 107390009 730627096 27553749 907488993 126399968 70679757 214453940 314732553 703863175 85849528 319581493 119976155 838586975 50253496 384338047 549349999 595460876 373224232 564447494 703501889 336924048 288565173 378623726 924960030 706544950 850096381 30682496 396359379 651595576 31851065 904889283 706294973 198264572 545507984 617444096 980102572 966244829 290026887 301864361 360060763 566553654 885785550 701219318 280737136 973126528 64326325 409142553 260002465 461354376 760532375 400836544 954925643 182289715 160056983 982908072 80256115 466923902 297594020 67073444 263534868 55560228 509692093 69542981 173729286 379995809 481069795 780759111 821897427 79414265 545171716 727863987 110366919 643125583 903610805 245490548 572912154 80403290 728895817 305171992 807081694 781373717 231992181 950207855 569243950 581497042 654577957 998603994 24053350 538363436 528100143 34628954 89450620 109618451 76184110 551384302 414660308 938895283 143221269 959433169 81820018 431875158 249058054 460744137 850647070 427851484 509592590 561356747 635055097 309280273 622763937 482440251 761671521 219587633 628589608 744925143 168030390 616809935 440733990 696922310 545675062 154628721 293748966 562728822 313793959 861060757 858886422 433979397 863424326 610676627 854242520 653155392 996149893 137697507 281198185 641484766 866523924 424779882 455685810 481668911 750248038 174729415 149306709 177219061 482105634 801316775 874481573 285420209 607174597 374266962 668970686 300177558 437225076 443452033 882876230 751678778 708335806 191473964 874875867 256671958 250045721 392494943 980078980 743092252 847993963 300696191 171011843 664048603 267496606 207014090 448254398 802586972 683532319 1652664 576213434 49875435 325313182 52935130 17866099 461852276 249447003 183905251 482640692 598172578 768534206 169721408 489338729 562545567 426089527 525942415 954220772 812526208 102266174 77366073 500138606 295114088 192131562 253829424 728137550 782074534 767258218 443935675 343460323 996031382 556313404 27372503 697042480 902568027 979626844 276208273 543982966 37633467 330114747 177242888 978999561 306900186 407580131 679081025 734645641 362593909 463139314 921994205 324918652 47157605 787593209 457622595 650732441 279005868 54719674 707334374 500437124 138493057 29949309 212580238 27867144 403572151 361060512 421291100 1271145 439528173 155592342 737170573 826763923 231224582 526577390 148926381 94086192 598698574 494258186 906378075 814833772 392835962 996730069 653306978 614193950 22994727 993310917 871422281 858468384 734494544 14388036 912382197 54192097 472584530 791734213 339767667 855304650 483184279 287490091 728135890 46554554 401055071 606460807 60524986 909744334 528867761 767134223 745048442 690634685 597101555 950721431 515875690 647023238 687452020 905735379 286643183 490108777 94519935 673399672 78462758 628175542 529079092 41936089 484742434 22963467 3248832 247682855 121683976 607476781 390642618 867758005 166225185 14186482 166780860 542693709 618106310 452640362 363289709 161193509 115587341 46283445 68922411 112953385 216625063 901070316 46704675 171871210 301377351 547891324 952962162 671318206 256517327 748037473 788962924 767461176 55501792 196475660 225944698 902924011 376805695 947693477 33093219 524154241 162870853 853861971 82636453 934133843 780109754 13035921 960781393 179812471 311149064 773382070 871961540 809193591 597275103 30861080 305260594 667362156 378749615 498075275 585908621 733974425 183015491 345722442 575781838 50980612 940381912 152020968 344694376 116645020 921596098 814075608 958657328 866811222 285641497 162857861 419070810 744114930 245470680 338379312 433691122 484748585 436968519 803052753 589579655 811520266 864353571 741827351 306334368 176287783 385929876 989411427 686814542 484299130 874227307 913552309 685051062 244450370 321898770 434721378 370251172 534044930 749578666 682893001 899920883 60004304 148046243 426072179 303916799 149210265 449648807 206544040 68938498 720608788 511000598 767846119 327868678 903992064 681041126 688738996 39297723 332373755 796417437 912624605 469037349 843304471 963556859 619961163 228031712 368209384 330076687 976987830 824194162 755564627 820399546 344345738 497901888 384089439 595007004 428802310 150967122 745366273 64369098 942161322 31812760 38612289 170198808 23558020 391311622 951653133 671703137 470396031 210900527 781559484 768167737 76124066 749420834 429401837 590494854 791602721 156888025 89687493 522450899 816950196 182314583 45589955 747012787 270631576 384958407 565084955 427849850 472623257 625800687 637372664 318501060 767665130 47104190 982918257 302734358 38212743 158829186 26103052 252689882 542308884 858497705 646130388 472316539 225583669 972734127 277822316 693468262 92972520 447463278 825805754 177864219 235052250 20473666 613395677 373198181 707823994 992290654 862625201 894722418 758082208 438920593 450768326 248095635 741000622 285905645 302824150 620925807 937563905 143850516 953123504 625002478 408329600 88946858 136900743 238319118 937405732 880239646 858932538 762178803 686225598 788783202 497557130 733017364 559618882 901882131 992338599 302865550 763638396 275360587 884336864 864318119 254879809 184980841 761612610 567544686 527679117 699600045 265164551 494015709 820421339 717922106 390819987 28437115 382082808 34751467 503907247 922574997 301578583 369721527 155758989 178523617 890311961 253839459 703827248 69455294 519418447 509809459 367997383 429789288 764507920 507415456 644773481 367679180 647232937 743527555 632202975 58682148 50248947 999098021 493404529 455244162 880207923 596737178 592868669 48045447 72054821 501736471 921241193 787375093 447419022 331194274 190489822 287194802 578055407 796902550 265008657 952695014 575198053 889356002 113388152 958728204 309901825 711123682 311051538 49408640 904912554 654178734 782603167 167537547 772578666 812890596 552533625 490703808 748896294 794002084 570546327 431930220 657156111 801657239 555344804 477679205 501133435 315743104 877270112 252206753 479735789 308276391 390013150 11416292 567915883 622387563 94946584 30998971 41373871 678915866 387735666 156784494 676399048 95860929 927411990 891800860 513256728 124423814 367698419 485867024 271746255 845733464 254737334 513346923 780582459 855003983 904762241 348915246 22212894 705480782 451671818 202368159 791836159 662136422 469821426 302248630 634689254 641636619 689851141 852201245 330064240 569793194 40010944 761320242 666457198 584963409 354765216 360431814 568224444 571862247 220428919 825004437 356559252 135849362 31589579 243836702 673532081 883478501 801852399 672415776 269727816 863360074 49082711 114482648 938409995 181666108 345038172 438420990 386157605 336925356 341711124 803018880 587579645 500991241 203405367 177408088 85311785 414616444 969007907 364397093 456603159 900299953 255934627 878350413 357724734 8073959 477633886 489379307 182814722 437927243 723766921 414948027 523947619 102809300 887558962 805575228 470184844 229951337 928909562 938969274 95731262 159091404 795283115 412958888 378603288 85967121 635847578 102032408 923737533 859499605 481306458 111766456 898453457 625458795 854772280 218773910 531363022 232478044 318047978 51822425 347730602 627402468 300489223 145801882 481731479 424929702 114521164 10298138 200047159 233870879 875034959 506034029 278117443 393691781 10477561 298139876 952860741 541198276 44061066 688246081 670335284 18424649 514861406 177573305 704530875 857573609 912282839 930955433 133160586 861798310 789686113 950220479 743133958 82088299 990471557 232325973 524129813 529457516 762970397 505995753 31613225 81132336 551952760 850791179 764191032 576847843 487203418 490737150 49000712 902539803 677192921 389443610 770951774 207486418 315961937 965578624 649399014 822711864 88135565 458755460 16480080 511042762 255736360 636165237 550179119 882080040 559654074 980109871 504354667 320727461 947163221 727042377 92471955 218451342 987940246 630738859 38103070 227757387 472309132 957889000 746830742 568790715 352164111 421407601 362830185 548553291 547102383 228134031 128899537 261247451 291828974 336859949 201997157 747021929 836265572 492685491 301171361 861168445 768628881 406664074 237445830 256665323 249330248 430305861 46476622 284592451 374235774 979583446 431417842 413204229 653616338 82057260 328590265 503858492 377264806 225107987 72216980 33505290 758524015 805594848 770471473 214367318 839150893 366475142 554410587 494710309 280738395 335096034 861432548 842881141 316159488 227956666 508059130 984104988 796860279 135480426 787066893 111358443 720997448 1514415 125215969 749871687 172266787 809922466 281284416 40378128 672391363 775133480 763414915 452442518 621551068 242052174 749941583 687461865 233803282 390476134 224916306 92530785 860816133 129324593 659998009 660400657 834292603 845089301 560140351 754377623 244181621 864318597 937585827 902063775 492923060 303918767 208242996 5159349 526253025 188929398 819391357 926951303 381054709 527112222 333059604 445559077 978049641 222111017 789370904 346512135 746191828 623758596 587496253 343883619 434387053 268050046 113720644 227034067 784827663 357987795 734327752 710739247 824372541 853647114 171893585 393447080 184823812 363570939 72731802 505178163 722331200 918392811 815243859 37275004 294958661 315464289 935110636 231244659 210327568 295411388 447704513 915689141 91344929 498371012 843673635 570937492 33232420 103220040 178394204 255604758 409235921 495567472 239622107 25038582 711357849 986426328 254653880 268591006 45297678 389453749 377053140 900801546 977609919 438964933 788875735 61822167 358193510 618294434 667355245 746561846 257040333 982123023 4517904 538221033 917636509 131689411 633943145 225290392 162262291 454536352 752530930 255529415 334805158 234675822 571273281 258730783 427642970 249799470 28124059 76434999 779112185 931993106 424083790 878084304 961222168 228964489 562732119 12308352 912619380 981593409 353444552 822094303 225833650 349833361 9289705 765163189 809622302 566953645 393145400 451352201 807057119 541239137 952814967 695260790 327900069 158029063 56330080 856704140 668201334 524815745 271984104 27030893 624345934 780263040 45820016 625668687 687666951 839766671 406716049 567786792 430325749 553865785 825113034 372673 894358589 970944581 432778289 847383204 184414668 471771882 214439835 279172409 709277165 422991209 387078970 234795270 152671830 372737339 479463463 342828990 80978217 605369766 573704897 847458739 43026538 9214375 944293441 868927617 762390522 815763018 499749951 638233056 415683788 246373604 350939329 489148391 770139980 31104855 669286080 54598353 236599716 699694985 213903958 315069477 526035897 255446032 497111648 65181978 433724847 998016163 944926251 687908357 825843968 824579133 13086902 603113374 506737280 601171736 235187849 988137736 946017155 499057456 740320480 792105191 862137830 353998879 198356661 702945239 589710625 655349276 873892443 841895434 883981521 889121147 753788736 889715459 363745016 592262247 329904010 595137191 143222982 847625736 472005762 860205902 577929160 298044700 406791768 547363345 53273506 268508730 705420505 918031309 859455686 965509245 468783778 815956011 679680824 421031377 255946300 949301995 180576032 903796640 639376585 784469244 481068270 386524378 209808493 712106057 71248597 626934084 609834252 598455184 797868475 991282874 788087168 238756908 700537003 718566848 613762489 970713888 898607072 164418302 272790459 298538205 709157737 760272456 594630032 81871306 162655150 796278854 412710920 846271720 418534043 809773295 508785314 442258519 633878467 600625561 269326198 711320147 59321542 514030673 291670612 741117518 899709944 76635954 282042405 499601686 354415817 850887897 431768094 167816451 880159210 811361375 563120906 191350542 702269705 493002993 1556816 630094021 527936289 509197582 603541847 961939586 702015285 590001067 217007565 395745929 794753308 329131046 399215698 245806098 697050673 500865472 914736253 918405949 486863750 176736312 92839510 680977893 135187917 975017659 981907470 938117353 677486156 145028323 104246352 507472412 277759156 616487212 440668427 652474367 938395888 389860817 697079273 722289193 360706287 721804068 786228179 2732043 621282517 986547170 532542408 561114736 848579923 135221416 373454971 976795112 196528365 862098297 370430969 803089278 822195017 109615093 264378009 658569888 970359125 588887951 713171961 213035316 815106239 171098299 173081834 281907273 332006754 729075829 771650597 642648585 786759044 341597732 25505571 649789351 790579123 754372670 981313392 15613021 850239055 806028094 327958696 957205908 89543384 95670803 828574395 148225905 792710308 357396893 760354327 106133214 948787200 508276348 953131763 773613798 648104099 825334879 490146053 26443730 740494091 815527121 515682118 817845593 119550011 191791810 221531449 811168525 400577771 907040062 774693813 66187334 140217734 635970181 304345670 920996408 823985612 183240703 218856925 328480523 140774314 60787677 717957216 114551045 453487977 531439933 881520900 409760716 378092786 812277358 17708597 472632253 595004266 537708903 18189344 813547780 95855255 106445877 597400498 695581739 189942281 524908884 45551051 402051281 963687752 20085151 114059050 249013246 705456109 927225374 552026491 800609582 978487983 805749567 380560192 313897512 840118927 700515319 395848662 766663798 381787737 751545842 67471478 73218786 841295766 234996999 613382010 217826249 657137138 138486579 530364877 660359043 451698379 632757222 838194513 171236758 541717478 319674139 423007977 387865855 846851435 523320813 272834030 948652703 488201874 706726757 361853934 566654794 241191701 953764980 829706155 943911072 55571551 269649814 168485420 444778030 941750339 363168411 419062348 442270393 711240612 664632694 808445756 643653760 854148416 163455678 771042870 179771549 597080521 496658526 766466951 287320981 984532087 264115576 26330419 477504148 668958864 281610236 773353513 505013051 946992772 896657011 380260475 963993014 264996771 310658864 963020828 624638706 979457531 238755211 49208455 808115380 479827698 564665632 158447103 896942464 486838707 577564436 613249009 319640883 855634724 225566145 790895064 140919896 556685246 807247356 284467700 973251274 369021894 942749930 930779963 953225097 323268339 315815495 900892854 4440653 687313299 378689257 996269134 788059055 598090840 885816984 227550495 223305492 185465531 891789801 852158380 290231538 690160141 473539048 489314273 626471184 641858708 254959012 850744912 911981679 247410752 938280450 459940224 633835 991853005 998242964 689544518 34684153 352728764 989811250 36007229 683091899 607743923 293012030 15816421 840808 584113767 299464951 349719041 974712542 141967009 120172750 78870234 386347865 241346106 674769813 316896640 958022851 623750341 417960885 970168340 640920794 863998151 450701853 72440080 238910837 737283760 805749471 795508952 661588240 868247992 246966242 960931564 689466904 30690971 545527411 154467672 191257621 800853448 355919612 39140385 131481721 59087452 825311540 26190936 163875816 415797309 174712691 610872323 640994156 120315180 744575274 123852876 246439511 445310779 996939578 336927405 942492387 514927222 613378039 756930767 166940845 409099371 710432863 902892650 707466443 581480026 314805239 547714340 102332666 173971069 324265208 842220220 193729606 263488410 533308918 689616618 273216793 451332441 96761944 441601088 389023908 360472432 202913030 775653221 944764647 19670083 847924951 27075116 574535428 194414134 936114377 330027615 796934231 807780068 447748223 16096575 553980910 145085257 152694466 169337326 332743068 151730539 616284385 376487905 717920992 577719331 280295901 870849988 369188080 138778202 975087114 721968810 301384015 57267830 727818883 654393049 909995512 737424414 804326936 261462041 260303155 796870080 758423433 622694207 425704180 11672172 781292093 500612498 536702626 153828245 703608485 408191907 915356201 778945032 28921613 563510841 81365612 497044930 365063902 626105329 211186093 79395287 32392678 576295522 397160289 155057499 4931811 941382360 207405993 185336649 1252693 485354831 984191112 657885694 159533851 553233633 897587974 702060167 75880204 351364106 754899840 275289708 48752497 510450967 729558847 345520682 660630761 200334945 319664474 946001589 700797127 902926499 937312435 804033805 537815499 863225695 585705752 937357503 172972655 761707953 328366505 819734748 511130745 715192613 503761264 846033593 282994664 688977181 284062247 128987267 312629504 672553999 840287161 96487412 290852667 532803056 272108978 494228030 257952202 989763449 526472195 338997194 796329661 948082701 832024915 177889446 537544649 107843782 205536135 143193537 853812490 837663285 373215150 948897291 524056860 711223673 433910483 370945974 434126099 777959607 385252610 521570742 208291479 307630371 852127898 484133335 644011813 104225164 758732928 79958877 519355355 498720675 5979685 930271539 323494449 510833200 129753790 502855601 743136693 519537496 655570788 594293070 301794804 254385139 841573964 740274203 633745476 862774831 738309473 441549831 728807045 254075166 688563540 329001885 758240176 591695576 396430814 247492604 738270621 128151666 943514351 453701591 696717371 631945201 856467932 260884405 571034982 10474422 253297273 940345391 167306956 499606700 489283966 95539696 66688261 943825634 498116041 240159883 47839313 198580657 359236142 329920342 134415516 759020516 484416343 36113077 499069011 681744076 568828001 486763069 121334771 875151899 304411049 911811766 631927910 708604145 799634846 309360472 633850557 283383297 519641513 671479874 867336062 61110371 757486294 825380774 83197965 860899569 765187650 236914249 620532417 63224434 905328319 180978369 500112470 832522876 671215838 179859254 566718853 674955172 405360804 319294276 572650790 747889903 289567979 337158966 46576277 611231876 379489941 809599095 527421937 94005017 364653999 783394588 173550903 128487059 611193957 163815681 594698108 543511485 495316543 247257922 315043939 639965716 608105867 765879975 310989712 589508217 43577444 117105643 912915774 134145129 220749954 892406400 615074040 939566412 17625576 429022069 516105451 551437328 163254292 519521409 162964547 939428730 456194343 645763380 466707735 878411640 3335937 539856592 102049099 342183005 293682348 544356552 588311107 733556854 832887720 527684696 478302804 580789520 134018312 708607451 329850801 403689715 869524495 170519479 832786965 667942964 988806176 3044496 789776418 211144354 763349068 690695420 423909223 24625501 712748197 951720472 751090386 187198047 946657161 55646231 646497210 835281923 169818262 711112712 794251789 92062341 152379881 853153086 578902598 788077606 31050467 462948823 243214726 177565723 647621149 269883229 554946533 742019002 692413445 843375560 627436939 687028920 895569226 812034047 949582002 732111893 923458114 293328694 488294339 614963827 243945138 408581508 443553673 150694319 680213196 529169746 59630339 422195131 742595009 185116614 357883057 651719505 504214195 717211607 101759843 551902435 347140319 389218529 880752606 649623163 661787573 741599088 702676713 247205427 201833045 739369273 160519405 120985540 34109936 653193744 631553111 945206374 185286594 31608218 9742722 917449421 122256090 313433405 951158334 335124841 312754589 311009857 763880296 974710162 102136531 825197052 651323075 360014062 504186864 103267009 352308900 15307084 569385659 674391142 814143856 307982505 834356733 984344482 372943617 913474411 66267734 905934853 304488790 815853904 180677101 846227577 464936839 968149233 370210271 556309713 877950410 662506219 100792925 595997591 331594698 448616978 683838461 19247447 6174780 805703518 980870477 97291809 764596438 112082658 949449653 3094513 546774379 453482445 843621553 417171636 13709146 2102313 143659967 376228387 174208857 208998805 780570538 806755565 569430269 474591003 906358518 622791360 160290493 340034056 253642726 830892487 404698147 234237998 922269655 937495748 153078600 302241520 753872970 63010072 922816927 942811919 502082689 375648398 208187863 374022767 728051147 696726388 629430822 635555536 637591640 534373008 610079469 223251721 805218842 371500472 535372106 834067611 232060028 582393018 383325660 153816412 683043310 559930703 5489598 229385070 9976485 657824555 240920334 698938221 93753235 933923850 512877299 320724116 25967318 793241982 551727351 937194991 558597942 570324198 669730862 34182959 890457832 909656652 966006522 899161264 12366093 652381556 567249680 761799622 971652681 465990165 273111022 682406779 331089514 744538979 63090121 991595103 706536873 482157316 748722497 600149642 109666616 391585367 261261403 166439127 668771576 493453987 451286886 902405256 181425661 761209066 184115137 697523646 871784938 669456736 820116347 604914290 280598717 199770211 620494277 302107162 76452349 363688809 782423735 228003868 507817467 818155535 877912803 290307724 428594570 496819397 242049740 614410644 476329194 486387445 328985394 295530494 183679705 577046749 557254073 904778824 371193808 982174569 801833416 80648096 961747030 743069513 507544803 423699545 386963856 429124527 594218777 252038277 665316992 519479675 442009488 149716990 186965862 98425238 637879310 850407262 418965799 270777766 651643756 50376902 644612915 861599537 960344907 875228895 282957512 547442566 990075774 977295338 380152030 737755189 340844817 595311564 658620087 208152875 596811331 853611696 664010994 824889630 810824775 541289610 22305382 979751255 215446559 754053157 547600890 450953941 573580048 334780539 603880578 23684008 353872298 126125538 839361816 800951095 607407982 32301407 469595117 762504548 723121724 17445217 201425909 948873416 894305675 814961463 171622982 767371493 551418887 395625256 853838796 64846352 401675535 156766659 976055436 916001214 137417601 732352563 72677832 336927133 721761622 653972227 176804786 530322159 999810438 246611719 915923934 474782674 737793623 736712291 512989617 927420407 503545775 112224707 504531546 583366321 317194492 289994246 485179396 666020175 55449803 245897436 366924203 122610601 367403078 10828715 643972011 813088538 898951747 202146902 952690647 107687740 420199956 146164190 498263098 613673838 456499558 573877511 91115142 691208048 912997932 418954113 77849920 486706306 839808898 442571577 12520289 839372819 144525126 183282692 527802838 671497743 594762551 585066545 221880626 344695968 795414712 610049224 647101718 523863070 923027964 442754237 212802540 27157626 696016628 641352950 875907788 877214429 510666205 226226456 883171850 252842025 534846776 643392233 97921685 124754407 279325771 648969979 980903578 80972840 295533357 127508996 295273746 651348548 179966405 384004644 379260156 104951358 835349027 607142543 972638400 262599630 697871256 506050662 47369740 592396525 877035259 310491940 570881509 238035832 357780791 176745260 199161183 913897338 335911846 998508973 309101672 333424488 651970754 460811608 962246589 101379023 720719246 417985223 77502090 602514505 443926568 627555448 618952937 437531255 387811419 699450134 670486040 910278405 473329538 179294132 763644307 685620809 518601641 589126461 364195093 672168829 550314544 34628833 705719219 852690779 945264206 486385064 896179208 881148812 968257542 237021206 576097212 311147171 379004662 571885634 756486213 143275674 387086292 68766593 890074236 889218656 758578102 722394470 211998509 763186381 301683818 730799223 463250280 660498158 376853483 163211208 86203132 632832908 544790947 374162915 539529780 980394430 101737358 423777998 306185796 248482777 590071312 319626485 259365424 912661893 700207860 777261893 42695401 261751859 962407013 834110362 431358910 663820942 337747061 961747045 176891839 114078784 225531690 188408932 252601434 654115083 583506450 875397349 381189329 552693750 103809805 840663109 22928237 644246154 229398470 424334219 74312642 191469153 65968458 797044250 491142680 681687456 7656216 498196761 221884164 385620515 43053360 282456008 551799721 653174611 63199012 193953588 84821400 103924499 131960574 39605578 947780082 196613953 803414722 66222125 262597828 631570285 554404817 338322309 210986521 804784880 321967539 113987547 117674568 50849871 895673014 756750024 993881419 899014988 23754734 989285408 30350365 320419192 657228162 128985343 800594343 62289618 70776658 575877286 432926452 42755450 140877954 287183868 480173870 902616711 872728564 31966299 487814100 773387510 911420736 436035076 787856679 942164718 395511289 973573943 326377429 522039532 357123012 511646588 478022630 57337709 595004913 988578866 469399364 199248653 381798251 102774551 323848488 630813057 301263974 743837720 37552585 607207848 971352668 600419535 512419611 324706355 726193363 67193544 119305830 143842865 482517394 395833673 178017710 726161280 226952675 863028665 913045871 721947563 621304941 131606084 596368549 733645561 588370325 427007923 269220973 604665454 211003645 219067588 23179098 367430908 750975299 48225745 808030236 836501250 557127243 390565098 702759992 993407160 633593794 307180324 608529765 870156957 559132657 434437917 529823209 438414035 299814873 103891336 740812171 83841213 655938050 20687474 114164929 44424194 397865353 998559413 828532768 612194115 456765941 773770899 306039443 652633619 284684868 903883072 198823604 926854551 298457271 998503712 888776760 928231527 789932208 686556813 195804903 113772476 392342349 929296587 169546387 149800262 944283436 629512592 557401674 197270018 385820158 678038801 228106024 82189156 208396872 600669341 591394514 529566342 724275851 932926621 274976809 511223815 30214108 463154287 964983488 297861529 655059280 243241754 653352838 35825035 242670044 34998652 707121287 878439051 454424168 243022656 603297516 908162956 309892461 453974205 237569079 398646823 909479010 207214592 489687899 173543130 181571112 746685750 796858784 647890202 94339386 7220915 912576003 813748184 596641184 812713632 372793194 568588050 5468226 120433 295952463 549431580 942137053 941608173 210562363 778911424 603212547 980811654 944939764 197552673 863815981 271090248 495278046 201542407 353814825 144808018 695998018 135045241 611886115 491076704 114014237 67825258 712779744 430697191 110886048 254692963 58869240 557086072 715203260 954146887 600454950 741819981 783581533 990015591 427317806 538469112 716485980 838492786 499496422 344136216 191460008 701517007 611044265 592111001 169857547 241682620 543935686 664535519 199628981 889478996 96167391 233527337 204843272 367206454 804578470 697322180 718686457 839430794 59700972 173566872 943725862 522648693 704516489 207187646 82021862 640160988 223400635 960300639 124762642 192667231 835095308 333900508 54865468 584007094 873465520 308218084 654343951 450415294 694605293 324168528 26739425 107248922 562709806 94738127 858935021 234360093 640440268 234879456 877927951 738971797 100706522 317064642 356245901 503596442 852421691 773401713 664725690 132733248 484135455 926178000 163958953 483218717 201389058 373278270 925132941 32997825 648895336 368265769 942545670 25726100 275283293 970401320 326434242 637185394 290556590 575607391 300165076 336202998 910143612 772090899 466963456 277263253 317478883 630440985 613484312 656572040 778955586 799102611 241153139 762502723 463085192 506683015 543541849 325973636 547199434 853008951 287837259 76038135 889424682 813081235 169824134 883702955 32092885 195791118 256054702 938642963 161672813 867479896 386197382 527009901 548113607 139117519 274042820 278695886 713734333 89282744 514150094 166670367 482941580 188417317 258378138 440155290 47717746 948068564 914452584 874633686 235469651 617200113 124452581 77270404 728113814 1465652 811931631 226998644 562876853 857392995 215493513 930456068 469915906 23561158 320569540 634472556 571137305 26162767 299094819 166916006 227900056 889484730 123724502 489960094 154300864 516509661 876750284 362043291 841959575 328398615 237320827 157774789 351292496 24925290 479695978 146421552 518992422 425588365 104801240 275555846 457793757 993411774 649471973 51906371 787946499 525214356 741432086 960359326 846447009 906244747 218451598 295762470 141783997 54385753 262831944 423618773 784053567 829858541 347509070 282823343 629960495 487563030 895213175 897508032 705803015 11947010 514070630 537360688 544467623 805733151 660279472 714635661 109755732 598967111 254965299 135451052 865070012 191936460 305693205 915624567 614064240 880487492 352082339 852496808 944632428 924736429 80021398 651302375 197504422 866910968 218939224 351373171 805533474 213464159 568212603 379027945 658280099 620509349 566544216 119473648 390672939 927342614 30842837 143473666 247102161 569712185 388962936 85870239 531840291 730270187 353040086 862060562 4951392 757289065 776780001 24739329 597356008 878779099 510988146 262896354 686002908 188351015 151767372 365801268 524736563 60450340 757241850 296998922 256022290 220282357 906766914 75291782 491340536 830720575 755232962 497548640 244206149 616043787 901948822 567369840 810481518 749257465 233264892 483644076 820727868 447471928 859995107 714187873 780662678 67269643 334528761 279211827 268445752 210516407 947540155 564931149 669084829 982713327 388884649 114750363 591233632 319415549 252108996 11296085 956353316 761378242 662257593 861498629 171605449 354120197 664415069 905299367 360687969 808267882 760825398 587848831 143197808 364652917 479976988 592095489 915053502 723232929 727632143 487933470 995780535 337360860 99919486 145618447 661680957 553768330 705126746 339269670 87732085 130849075 668349230 21406977 845209545 427375195 500219541 194581536 232363954 158204392 942934309 339058530 249969717 205431118 70967415 931405056 839738937 736801613 824639421 119506332 288176157 470344699 373891412 774306310 162070277 446107935 877434330 625314388 848041580 159308027 630728439 826944792 189675483 630840471 231265549 378555639 658598801 812235151 153114231 802690481 240117190 488737566 690347333 446508956 686769511 530979397 727437419 647642808 714793697 234947468 485915030 481043497 171617938 600732995 251193605 106374268 630680643 435443992 8575987 301624660 540081802 401934208 264985564 19152385 903037344 524513343 996822906 723960827 637670318 17729532 624559906 122581139 125307269 97450485 346479248 83054648 50283056 690147184 593695180 69272079 932073200 816714030 57069299 493479174 602606723 345928436 594280527 795153874 228777410 463381598 627348739 639980410 80259592 947172795 116650969 749134303 522706885 749519471 595331220 952638805 7944572 789783322 524599393 201191901 865340842 334049453 626005153 548831387 215954315 554934020 471663030 663324621 284477476 982316608 237860320 674735828 691100525 335326806 717521304 176008527 884058874 261458980 983031461 658186797 733744008 827087438 606084907 50638073 499104780 341263777 226169823 923043901 949323089 596481493 523514623 473137644 404125396 467911344 315389189 580584572 74163353 866110124 828116344 163072022 304434647 334162917 340180615 160467222 179922858 360937340 646603981 549057301 275378168 473288263 759907689 48235605 483449378 514900962 191766241 763875791 334024367 987605281 878259565 683867522 87269001 703072476 686249813 998923642 958049255 531838243 450818130 10570416 763394208 791599666 159726858 295513581 116711137 760088494 307619055 295494772 341051100 876148820 508641189 208124351 675315981 869706496 440208881 702705839 918917316 916920232 687159007 776776689 180102289 699827239 323694232 150766885 482864224 596660083 823739712 710891561 803625845 65612895 508995181 452771941 9234950 737199960 686368840 257172578 333830 463439722 941750713 640680749 680839618 819868854 245360048 69468570 120279889 842196112 365327399 697244092 838966819 894122503 646934231 124726494 260079395 564300119 159025145 739193707 698706238 169968179 201301098 509270833 381185984 676320833 349822932 85501801 451120695 705146209 491765876 813149847 946458110 251300404 613127767 86776654 761477218 332632198 672183488 38311255 595320081 56761208 968613360 913952019 238986812 527400532 822118189 558398294 362455310 148275005 349259897 916685134 223420018 308811212 788975506 107399453 546525451 231957948 286647198 230297115 804227391 688406597 128469559 576975925 590126537 360056089 565475511 78139002 378966449 821350949 186969251 69863805 789563332 885879815 998921195 415403159 112779912 54166142 743158065 661427892 662940250 879122397 257607478 938124927 389286457 606930560 538877042 880352373 662099799 108192725 432016159 586825975 656101436 330491720 597761865 276316228 460978527 688511192 371864885 87202109 654274697 22475374 536239532 11607868 294683950 578055511 568475449 594750390 548650352 371065621 793788571 551991383 118053002 323652871 206014191 379501899 805841568 830416935 999367843 99895221 280539869 540917510 286980866 763003340 630504337 170660578 529049211 313371872 265393655 390062804 12801295 587083380 21149449 421080439 554251019 141484141 724159158 267897199 484270765 835882132 873597147 943067053 446567594 322233046 798289025 880623485 53516781 988234551 684826833 524190642 748641025 261060541 470028135 32812167 910433176 600962264 181820907 112810704 388618169 211406967 566510275 189449492 876488771 299386427 98877666 452557970 142245316 170472648 253892702 38341223 22951464 707035796 925468505 509225890 321602071 819340860 922988677 337792750 829181016 374131609 17175460 230111126 61512839 397529047 136015433 215124129 229991357 655944056 764002950 40841495 827139049 187534182 258922427 298178543 858691545 395275855 451755441 701471757 720038652 865830938 214023522 421252973 647426509 596782062 125671422 390634345 156976584 304409299 974319471 666975840 21063761 141091085 214786797 732673891 905552682 833265200 752259292 361575988 923946372 633163211 702218661 269395558 124657754 552351752 55486655 179639618 425245461 419065287 594709138 957458630 854598281 505283199 496769632 980881705 121174859 778133885 489534622 357673284 8202382 178265082 40593181 91613617 703937397 640366111 301149381 617634054 64353921 204640196 738915737 915707990 122541908 228897163 788539467 468672916 569380145 618244426 733084828 889880515 267352461 16511337 185766247 660258447 288127337 297225578 37409765 114470213 546783816 875601912 736037792 659174827 140792451 107604747 438864738 453960140 330385442 80091126 621018199 573622992 532791134 100380233 694124842 459455093 558110082 490774940 207359490 871139565 76879712 139298730 438509876 759935457 405331292 185117630 385687265 356512304 84052795 448091340 899742648 296992281 817282384 823341811 609981623 871524829 310833811 937699812 649048881 660015172 475966538 946889178 406539287 203226076 186676540 300628196 301202580 224753339 857441545 137174433 727075276 730492124 4080090 307442659 776581103 220022150 286575503 703978024 112519197 452439645 654880048 538034238 936363965 4591268 168972793 522062059 33046330 830205551 822704686 242569512 240999245 331532930 697210017 526471798 480939917 780652713 4403276 333325204 975638217 863101931 931759951 615617092 865616059 735499059 991693317 18670994 616804013 181549453 715120651 654271274 153949421 870173182 485403679 69257714 583238614 432891561 989004456 498924727 341749285 767731077 822332832 485140838 985457097 557880004 733030654 227152378 922776261 562761360 645191171 90345162 175968934 250805100 915639579 305993874 176737334 879716999 559684050 979128207 290195728 762456529 381826731 994853592 698838735 588521736 37689818 712953960 55856888 259631021 596464750 945010441 842793323 15750510 754443508 853009470 329563476 175035041 509339907 385501509 904723581 655409128 567756818 546599289 233156921 13901833 559111697 550588422 571862652 46856979 478758032 233544223 563304135 554448205 634253503 8922631 613210142 727969872 267941329 788082130 725443820 747985131 397777705 874127171 6464482 603139447 287669764 67306646 229418126 711811958 26765111 902641045 373259918 173443498 70453633 648282454 466041478 358446563 629441138 884503900 82328766 140101299 669227624 192873761 498793562 980862707 110401746 280496541 296981564 207508090 211234497 132091825 594001405 936807867 974151445 283485441 311172787 804282258 494667743 24525401 508833226 710153592 619785382 717552740 157927666 220913697 800749746 2602583 237004656 367353606 278969599 984264681 993263118 369417718 548535590 259170417 905248369 94910445 262034999 811001342 620153095 29821135 389911366 983682013 705961338 132077344 179211483 909562665 222944979 208625533 589114251 229648704 503661449 232003545 628240095 537598919 353216635 281449914 178338053 715705618 521302881 485829149 404338499 711648042 439535075 375825511 40996369 667158899 878198538 73166178 691003118 306866536 535637779 576880423 723958353 105104439 968912445 565096941 870683528 723203683 480066810 612988726 533987833 427254126 911062569 417243224 329759172 603180633 565225560 320884128 742528733 192805710 809080011 321564949 659525851 125632735 696902671 449842632 894020132 965486154 6500697 181634660 508445455 174406208 676059490 394962809 700202999 583352610 798062563 977408635 251089026 191005855 151727106 410174766 661174583 849018948 995954891 492379090 63444566 240248131 773702778 245730526 838873151 662361971 511647042 317812174 635486598 589171890 111949640 135818401 714779429 36257901 165979035 168781826 280360136 637474988 443774169 363930482 614056581 755869794 840469746 14375990 429605723 596976424 162735607 747275561 694117588 2842940 908222586 108715829 72695220 118952550 617563837 537480689 966981580 999650770 328027434 946341632 138048118 647545832 349303545 457895833 379739684 12841892 925494356 707841912 325722149 969170239 742722801 321750252 468577754 292619611 133690537 880790760 205485110 889611583 911544506 804680225 244202237 828733529 932030403 408695787 50271484 890855497 271215669 397185004 648494574 893041348 699350899 49430850 495411270 947402698 997442987 204168775 34327308 463833322 553766056 749661544 890838833 28949639 282303723 382003297 329460809 210759694 396974872 691067567 408208634 921158804 833142561 942367873 545620834 413233965 934399114 634386247 925961735 383083751 319331750 720961501 7053269 788469763 462298974 452922376 129599151 152983262 281430294 638345010 932106092 795730584 353412177 347219247 789278325 268251763 114046799 192732517 403340290 25311387 280882604 405172924 226876405 307343603 215665296 514066359 37070290 533057042 72880666 245238812 956939255 247539604 936471689 735672736 573198372 442420751 827030081 500930862 66270032 364814792 576244942 114144564 568185202 502782710 510508565 910751624 997826881 487236634 743641337 183540722 299742033 349635076 349269940 553266462 246338310 703411028 739965526 774025935 510964766 89867226 203940100 973141018 542603314 560828286 648339066 950867311 709738910 907374197 494373729 215458772 968910733 242749124 602941255 442810397 61248010 558438583 181662581 418444359 467962773 373109703 335917640 956530182 680104892 667428578 529106594 37041637 961556420 597438380 758307417 820997410 641202590 62509631 533484594 644763474 71943605 264288542 700971771 771435860 91683288 691814896 79178464 448857324 915353364 871275129 920356766 430154880 872595250 265676243 265039608 126727929 439830631 261614439 240178456 678088341 389154482 920660508 866328322 696295476 281120232 49025942 302895015 202314397 227594531 902026013 511598542 690904167 401630974 762192022 454177235 359074445 359631475 917919130 305272028 390746329 123097072 201262223 39681345 754866792 845933778 871179810 921066165 957625790 719007769 906100093 445146526 359960424 355948754 116329623 135059190 927009287 208769639 200742328 92966350 958028909 35792831 728529075 742950907 324754472 526974958 344043925 895239654 497125407 148907965 471892265 437099234 181956600 594476648 316688865 191268314 380168071 67349130 645662302 602882241 362048453 232923711 55436767 737084010 670648449 295104454 170622909 104378140 89457457 494106913 603253355 353923797 531403315 439598002 379883006 339425854 327349567 784990527 248291990 686811368 111244490 354317031 180686986 708180223 993297671 393594555 533330112 32940600 763543079 353043313 772818442 422860873 285548898 504415468 615832724 217531093 83388315 758545753 872089948 524696991 91764275 22078189 944907633 518329731 119684207 420756443 503809902 380915435 171384638 675709220 975555514 637854606 127468170 441014787 484494604 942873620 971721599 786186999 755201715 335617997 73908200 437800202 101275101 475008179 821739612 213684721 890425676 418417134 181502566 237581050 602609621 185037842 67909022 334381739 349951597 860655850 454376549 727511662 865841861 827702977 920248902 138322802 752446497 727261975 750666265 422797463 218263607 59054213 449133474 92882234 107363434 997768679 973835618 605568240 999431527 702140387 907459715 776492148 19493196 628109365 219508079 710955412 796128985 428985702 842429601 87897333 304981803 253449987 538530493 167514168 602821073 664415986 527486296 118195134 54257714 906225031 973035134 824687429 233898378 45893992 43929214 423784997 495533626 625569067 951774384 900060149 833120371 634878172 866838589 240883439 711938212 262800122 599182813 972115133 418531021 520626712 431422723 854721892 261855395 831121230 714339614 927375309 294124190 984826470 712705622 612562191 771826613 90129160 504342906 725379278 558613755 739285754 649085440 102873933 292446453 777490803 858140559 974663112 798860113 768542102 801851201 660685566 318976267 481453438 992854070 733024514 972906582 605759439 909303432 192019146 24477960 437188201 203328113 34167141 174417394 401051717 220372204 826272393 226349107 131841642 375130401 315000740 357035360 175138700 493994749 529259757 100629920 108015821 879637906 273666145 344394079 461166090 654559693 401357631 965536516 846320571 269674924 458361867 857351498 702506561 715011393 137584917 129018190 142770154 110771932 223027721 625022977 356279893 401946580 24241272 657037514 938803419 933998233 174856648 37065782 827145998 81924796 76088873 745086460 925867716 232202472 497048950 645975921 871549956 439268056 471984327 85062188 205099139 715431891 387586151 760058143 868185627 227909491 439561673 434033167 393015114 573912211 963362720 856375805 444111464 190827548 264727392 807819571 396316854 959857257 237841516 963748716 444979929 491602188 417128653 923747519 460188092 44909044 381759862 969269968 545754554 499796613 526393633 546151005 179541177 919082794 504488491 421036592 173818704 627387966 306958338 603399965 663658664 99549583 922608207 544938201 145437965 32938731 237226653 100458309 442920230 200252616 25447243 650435452 772985809 499774523 666359907 342613455 463875675 825689516 800709459 235733800 329745122 248999303 35745434 826904413 225780238 269705982 594531082 675313407 930962903 977044007 973489096 258974141 981357241 7107065 862041649 990424752 207148098 781604914 792473604 183821472 296072547 697409237 326244426 460244198 780101090 121879128 376175841 703911534 96968381 968484377 822265091 855828131 273456365 77855101 372952169 76825384 598946294 183180231 605574011 196794815 271829431 265310236 703192286 922244992 767286118 835051543 820031414 45750150 572460510 608885540 819037295 308701100 90219431 960371448 714654951 448402252 554957180 610492691 689273644 425504277 669077158 595030323 922214873 945854058 392095879 199473401 172636344 428160731 723699691 290340753 219108724 464371540 430007760 352682807 118066535 525283955 986992465 826587344 82878155 689656000 350504136 339826761 784479023 591439283 523924698 846651789 749587935 524068012 270235166 706707789 212660147 732876417 677289726 558186580 694728121 41411050 800889677 184600871 487183303 865924422 9104296 675400548 920200449 422739077 492608867 542033080 188129236 440800750 214868736 653532616 720791337 146573014 731944860 409598857 796802210 292200703 335181114 543546557 259612121 267678746 36557459 354499475 273223064 384199008 126762941 449144735 258790031 346042510 656598068 624345858 861635774 455006374 729349746 807952469 37487668 673716526 124141914 194422153 404884993 622568394 217823420 44220818 348995469 394569697 297945035 910032990 626330662 372790415 174502736 661589619 114385571 729267142 196718234 323129711 550452618 481237653 55448950 398047337 998653636 279975836 790298403 819591671 567722954 465171240 472094901 98532034 975467556 353402755 996351066 718987017 965648893 967741206 262500602 122574380 511212025 450066938 972906821 432854365 420129850 696689513 694168754 456480601 497381869 803204993 22840136 877158667 368391988 681856684 996988255 919280888 63323724 756963143 593986330 650110332 864006441 804793310 224754246 333263251 272168385 472485489 144249286 763988863 316138305 311186825 633968141 587325170 799553296 583568736 391085604 912570295 798120440 601671615 698194305 966749834 936424845 688556804 187139376 904059597 295996188 380308304 610192278 620585538 732336761 351297014 720184866 656996457 199511007 941407679 189001608 965027314 638242892 520101728 181797206 925116072 446326606 736590357 370195646 147771805 869778585 828621685 761278584 111372828 775797755 93343529 517930983 976351013 746798604 101571186 815031533 409861766 102974911 399561378 411488843 140745879 424054488 107827898 261959058 93516511 328540803 471411628 712994843 884246120 884434799 793087397 557297318 663289302 923512165 852848129 335113324 799111773 975141649 587484504 666893775 344411184 334900748 392263465 358567662 728958550 67376046 66188668 705467082 782779522 979372012 265713157 265137890 331657337 570843151 9164913 347500131 408483015 331270256 207233942 500446726 528490631 515449220 315856479 149137347 506072298 735652018 250358356 530670977 940673169 113625513 47351431 584761095 277811853 48068224 573488157 904820153 160158951 593437452 537166605 514506044 293234512 231888821 308396163 798215435 522483138 892227283 997402204 388681664 554436840 570007226 797873289 874507823 675234087 215739646 562052429 3575323 651160209 653472811 276208268 173200566 438563922 58745809 482700956 813623296 780661631 551933203 13585840 773379522 533681183 887912064 101415003 405677680 819543703 119952958 452376540 312553915 220299733 269763910 843264344 945533282 848351973 756530947 692769394 384371099 563116936 694710921 801181134 450297531 818637159 290752973 330717200 893072932 167439616 387527285 23574806 657406043 789025741 951639159 903518854 595372502 556808151 611876729 697122450 563477396 947074484 204877522 122268306 179618947 179763265 265330477 400299564 700283143 305270181 226611645 626939638 635438058 292644291 499436291 881939477 772552647 707744885 687737649 724934915 688157937 985780123 603175089 583955068 435819027 520320500 331518956 526163458 855165872 878325967 795048260 890385375 841926622 851460659 371038001 533994763 147061375 785590605 724644192 744710977 868727907 232012906 157899591 143188996 990136854 289953401 881193605 659680249 300480597 429261466 516979415 170513493 909358768 423996456 46326926 709791270 997340082 749171922 701654890 279679375 276575672 647360895 870870668 219135492 856199999 563362063 648766429 548792802 949110429 101207597 113778657 874975294 635600439 161492844 839916859 288347177 437952735 455236647 904651258 376258346 76694783 692910727 902093396 463608423 380899005 859180638 172829197 969879791 167261868 185285287 890778098 588326702 96354992 499536909 876575883 691270556 313463239 760383831 746072104 12926532 621376783 620366182 568875147 639127601 927561366 178305941 38858529 428651891 685155737 450866183 415894155 694537567 950162589 24207148 183148545 421224649 808252385 862404871 192602856 257747444 748605971 206107830 74107503 814779396 393224210 791590269 131946346 465776910 513348622 704179245 222409574 30814239 301528714 302981369 30517004 669559823 102556395 997269080 693486252 571384598 367453735 273148484 718931205 89769506 46658938 749167165 197530161 358152836 837434541 55520997 14995668 756180202 552846723 795962368 330993927 472025666 438644946 493189770 500609270 778771395 477090843 366982133 796612361 739971688 216595485 695101729 182461418 103183236 110235614 899146788 192194277 133998958 298423224 221397711 892549312 45304935 388844401 311444890 424867450 376179287 731467900 969283668 128419073 322420073 342899967 631537490 390868233 140469175 584924248 848323040 442698677 365223192 141076050 820336670 957144168 778548912 297183986 991400796 265071193 773193485 109289213 914682937 742561586 454403824 480056856 314932217 518517076 30742131 375679662 396294625 485885914 36186463 126191354 512105368 568512674 94723121 826797496 869756216 657872562 874061903 503074695 710749272 654038057 129296108 710780494 179647955 912272315 72190045 181422233 120507125 828881542 57238738 302793298 494969655 138524354 64115415 73377398 405412114 194449730 253419909 78112013 921785940 935612942 733733185 434033186 965360238 614907732 991314194 676119536 149286177 613975797 977258162 776804326 142645537 565363131 433224222 341315060 637403031 245251634 169394793 622958094 853981181 970301205 312463262 530216265 826386255 717469601 540193981 186062832 932672903 567229398 622553925 254013847 469109602 703772894 21001073 30681197 143730314 558108350 946866989 257234589 326898287 628421595 783289185 680335313 976878391 293435238 487584532 697111585 943019587 551837833 932740835 277725259 682622151 861212905 469917169 277600139 479516516 168965591 245017229 355080534 824560747 29986226 547025414 361130214 910841584 390646123 270808108 888335990 67516617 524352561 924983351 330353608 737285675 136047187 473636576 586664592 178309891 58190220 530182706 107986883 207395717 215864318 925086637 73362465 119638225 455221393 745850777 192729949 207171232 918100039 730090327 558703156 407068556 468853552 288340602 666475700 87246135 895501811 740284336 734393913 239331674 467771443 595611302 592516507 298934323 549469250 809965361 608042380 187639509 676653341 619622591 201698854 509787148 578699387 434530048 79724771 916607870 500856570 172963620 577397013 176028450 908561846 551120998 825040546 98196107 32723343 403514567 710324801 460205297 974987239 301373121 175507651 280560222 865113690 306916427 280108959 693064879 716502103 605667744 789415388 388457275 683509841 981953716 657380685 255243434 343902898 51223095 94411300 736893079 851631895 838190843 791875195 549507746 340618768 677457606 965882148 670133550 196912367 80967820 38854164 354673113 3973779 828499889 656101258 819713307 596741241 677676146 402480436 958544623 274020074 636404997 397284616 647962634 399544588 793127408 17819011 831102640 310597263 119900470 921142157 602665717 186803574 573592308 967835892 621055289 402481594 919850972 12269149 388030668 558121416 189421252 191341821 721966755 41350739 253502516 56762602 351587149 109489709 970791761 542851488 144914588 374202120 500075127 509108655 308281813 871339849 818505603 536203443 254807781 34755526 511128794 93465122 469051376 667298594 866981355 598365879 86881983 748863862 161008798 778777365 77166672 615210760 692472773 684581203 101702076 678493860 600448464 189264776 282992678 646837203 387404168 502002042 479778493 106208087 21500917 456886336 812657805 784959409 827304577 866099189 99231314 31196600 674303935 172224528 400953260 153785813 366533114 590808102 554534829 952264374 566578128 864792801 656951569 703454797 424975084 700035885 285360764 418430418 661186258 752411086 70321745 14882693 91596216 9640364 55635583 922662868 816535093 121850102 66086485 224206365 46017869 676424466 277514446 716697414 990639839 127982956 873682692 472697756 538968645 663525693 346144117 831213102 466092824 576706314 210194960 27632811 384622072 365076082 612558041 238549134 626639320 345291806 655346579 338109871 652095975 857473940 593014427 639628778 787205036 536075275 304673945 825763069 245532091 955800300 805408626 316068747 851136490 248574753 807091883 851856620 436394059 824200292 921957027 768018858 278111196 498809204 491339737 352104738 50360155 374643813 127996059 435271787 530314334 212177065 404264992 384071851 540030624 854167566 795124841 464203108 180567450 84163678 273427875 87803215 550330135 353126254 22218611 64801523 236641178 356364372 382407935 737082679 566946556 264977658 596458504 970717393 352492694 490011797 106083297 291101114 786937098 134399618 425445718 681691558 403875241 299448590 199936124 382739583 285626406 177083344 476547772 90868645 530930989 403302214 896089684 277127787 386752010 979283167 691282544 521217239 532806579 380006947 678481994 246520534 849603073 254955352 709060907 589527063 424070915 767288692 725240260 977151062 206652692 989310826 342220848 579322209 283512868 459814652 883218091 678801869 614677399 335766971 101947854 666191617 437889823 963281101 426292089 993549546 196657870 116800768 136801071 341029702 560526237 533497706 882327167 474292961 400031092 535587061 848174555 537475987 161987581 526624638 504311329 896565447 327334399 27347846 267460235 216658560 471462270 391758462 123617481 562477138 449083545 431415732 888951228 675025015 816877782 375209971 205995796 336671992 374328425 217716592 86002475 226050545 742088069 560981306 704849901 819601653 736137645 394498487 672430394 183691291 710269804 965965201 843668357 809089750 50232600 307375579 51959263 958920239 809262763 409246741 30381282 549709599 951740421 695416374 121327077 59864595 450642734 306207911 539042837 687635966 392920907 925223325 506057880 29470061 475264835 150912644 43059924 323346492 564926995 188526386 260740213 85811489 367234602 5749912 50273182 185288182 533256680 782302547 242523537 779489873 662722198 598374229 710956484 977837113 820056971 24006059 657042307 221559569 930024634 607976592 986273134 666756981 546346418 344627256 182313140 690691700 771957376 324259506 382524543 575084876 392138569 277461003 391315354 399553688 831610159 94126421 908950584 570695556 23721096 282296774 457460044 314241943 497078910 695168023 624954469 527111936 841155566 161622832 486209505 535383327 516545617 571215306 950545299 938094847 915077009 58245402 809938560 726353614 838177212 14675615 487063122 358522810 713897479 696259237 548776766 457588729 343626063 275292451 230943788 916417042 11305161 872672649 962471506 570744449 863210690 878089689 17053086 459359277 209451978 15636242 511532780 447304570 799978946 427147782 372634738 395026193 777053795 231133573 391502163 901604926 301277398 436820765 215466354 882131323 395906909 337292590 725160657 596225717 518690075 391562634 985973777 395217404 194799106 533271858 422991301 335536444 180455315 779853917 811485582 300446236 397795918 487539571 785889808 545095580 946375435 363490234 432918329 228392419 872538554 568882086 502835289 106562977 931295753 139240413 216800167 587354839 88261434 989211925 259999832 93045073 835843434 452156200 434795796 228268021 964857900 622163401 726782428 463168796 178127839 570797435 319420712 502883710 925251318 234979169 768521735 116446871 286697968 741633320 384935912 499554828 213354652 98639178 321814261 387333087 465441230 91250965 658453991 27566565 146988658 944699833 176690703 166524448 579359643 900915734 554828183 879312846 566988103 213747105 484378654 954622264 493808363 175418183 254133906 255277662 222547352 249838533 496939941 560700473 843797808 50174345 57883504 442864724 95383364 893758201 291598959 309285657 96462411 35786522 577893693 554532388 604492672 903993828 846755660 107032771 804614267 890737767 524767071 173449660 343094036 549327539 443309013 578910064 987285956 418816487 844364604 377300266 776271530 164863094 901158213 890840896 982303868 491622784 415359367 311334476 784920245 150699711 601939049 46057177 979229952 285378176 556646958 463455804 120866245 362669132 478082750 390379913 44764639 531383856 606453964 197054931 597063892 594045470 549833703 981107731 67693076 577379300 294036552 962469195 181148162 194698812 453134068 35358337 700468716 955105027 91191384 743052085 413215292 972522840 445838227 654954998 691053719 217240543 837654 131923108 771874265 570941783 775741771 371653530 418954108 633382001 646234298 924889541 38700110 809997507 726307650 320629499 755499425 882839378 101998562 102740711 805420084 452596484 661122696 689560013 476623663 97385117 934569491 844285760 816129470 254767093 668817275 40933768 838672123 396464970 204480787 512093533 707952088 762503546 739580045 419775881 641078667 252629180 156416086 787353396 841547160 633851098 91689451 967224610 10813382 637108916 99417172 656903833 365004919 647477274 845963540 554374057 215387777 987539306 516262723 175190601 770514149 852056993 565070444 981122741 990743553 287309143 406266050 754436224 521682171 172487340 811853030 618946877 500445985 708073758 445811293 716408475 325017883 626687763 637395767 472248749 986442628 774454769 134123792 480182954 238718257 498997218 707456026 448898810 487540744 79025828 270072340 868568730 441927857 621417725 896987633 954391155 988565838 446033192 524273848 20643512 102032392 746732360 638848055 471835027 604777030 357859796 578175829 534113037 934309656 456062641 134040298 611236423 594298080 669220974 846963481 64373437 781819139 627770783 569441852 14678243 163165719 125084039 247272749 257656270 741197749 64810266 819320748 766215247 296527389 921213504 916101030 395851367 708614099 691399581 973377190 745556890 606324803 967187914 88080501 288008558 130136356 223617785 786011040 372181104 603377744 929915820 932184512 978460985 557638227 622970676 47946993 429260605 879135696 202404071 352572824 262372837 4682425 464707246 47944490 858413421 292575896 188621933 549134438 474826475 658599951 702162535 829263226 383300765 565618195 890204773 56961601 925725967 277228536 324935353 824609239 445891353 454343097 522039209 577396610 609405808 647102112 763643142 503617575 491314387 159985195 67452993 445146051 919909518 711855378 549854687 311655529 515985929 522830673 792789574 76042483 759172150 909086287 186979589 179879215 73656095 359628262 593761976 315415023 362109989 227207025 277999135 686118637 282990343 228489092 426300173 765674799 137215918 72269724 542590641 171718478 898464134 162979410 252563870 167980577 786626950 271952296 468277620 453865792 339642841 880144966 268266547 740779092 976169719 766190139 322606422 877426124 413392674 52148224 957501228 441475087 194366587 31689612 559793668 418582868 34455218 908520604 780721392 49438939 837403189 231346077 452891491 511340866 732320144 473240629 466637089 291008036 847439191 7587018 695728839 710302506 786751243 200417275 96953758 608171851 508810248 586280878 140231780 545996663 678583190 438556760 860216751 290311367 410238305 429240376 906353559 900018310 463755796 391958079 295273085 516046501 805100749 957174829 565370652 11318512 943296219 334542302 631590929 16207370 243919687 17153443 528246406 792458935 644768054 441899917 745068248 162763943 152319392 255810293 110091147 455331753 507642753 515188924 552926900 343880786 314968940 618207026 789489236 958870827 339456145 730307464 870438056 654258575 584759685 439084793 475491821 602553730 51691454 136468869 357995039 258543358 987051853 556600536 690225757 206606383 152372078 541127998 811725877 153629606 203188193 228744336 34902562 890954309 989346039 675018738 997684805 336066470 452358277 233563639 171987435 900128196 430848414 226944804 453588134 923912082 349824430 942817379 828397939 404589229 424018437 4196204 168245340 133738763 978474849 698333483 184285188 27214382 531359020 898754759 227141227 75861630 621388507 118693182 640277668 313893285 298691058 11517166 552270339 307771114 459803667 792465004 95607074 795219130 431407602 731974467 77851194 112949953 444247758 426969214 278962519 560281757 55936481 62088679 486555042 310099439 58403589 878044843 551792211 183495591 186411459 974881363 782456910 619336156 695295680 671843860 349359938 91170521 280095995 844178110 838191517 486923416 524137757 996891471 696734664 69432093 86636648 211009687 117660904 651619343 939230390 325389110 796531641 837906205 446068041 180089638 309421983 400482745 632968139 880883486 570816737 473887420 263671812 151457309 156697787 379779981 524698059 813736319 658738510 722546751 236570236 460266443 850049736 114023243 123466657 795157229 984331407 837890471 61073494 148981065 994521989 315692886 962612880 807440231 195629129 841192153 620555190 618065605 725495336 481095301 485077141 734206372 348254007 353664628 38644256 84049231 897622528 669376946 900433366 910854629 851313196 595378404 832106565 120824324 313729858 76821391 517476681 194903878 607232635 61150821 820570696 521375216 792010577 227729634 674754464 123906538 198096231 395941773 552473455 819899814 403942332 143037550 243181983 736207822 377948855 424384004 274752046 102850383 219804733 160392973 434346479 131949862 652162925 107268645 102371049 706023077 151625145 530129472 304690551 314136537 138987087 621871442 581719900 49582843 803183588 691064415 390577277 59992367 215636688 759030450 535882791 55292713 31824304 901987422 209560909 899129816 867943313 737973724 415821444 83629792 90578901 769286041 36405269 140235849 25708327 315148233 273759087 434490082 639452568 579899076 21855718 869811071 21563683 748913145 920021387 256552181 79659032 154240121 303612186 497283727 597031282 522645787 418688244 647886659 90080763 742338865 228584992 383932402 340285203 381520909 604586237 634120882 706305595 833843365 133640718 90045688 519546558 381595299 404056212 899812677 356593399 289878305 335939697 28771686 118052493 807152783 307417380 404054217 785304057 611114553 302800953 704096109 78961288 733477325 613149159 748265950 587534600 42405849 433880690 869357989 355030421 758174270 564242525 703048335 639562323 530822404 958726672 936249158 438662063 837951087 932738629 784985210 833813726 144837136 698450196 924471105 769758007 248514758 697251944 404918562 577174103 810005075 335947798 685770175 375900278 239933552 489244102 91984083 527683214 583929068 152363902 613055936 878924057 711656792 965562707 563626636 401095724 187418785 154779042 192914635 421955724 192695024 587372890 749240966 565024021 952538028 534569187 264311457 344828588 625514037 409786074 629621181 347025926 248190 488632472 300193864 257712581 535242363 481545429 203424264 35107181 108710678 697548708 670941232 840821206 779061097 666768983 954422438 46903972 288167074 541479517 276971592 109796553 208294342 792703035 79013227 563616953 499880463 825928911 56397191 281492173 608218102 787152698 638409931 990666174 949450821 477517502 664587495 372802518 16228205 899632811 17329070 829296473 395952778 164219393 849508354 896715413 839029289 453797852 576149295 33122229 697715985 710506806 200328394 763567302 928981035 635428753 769082547 775006020 118698614 443338836 270214172 36444164 379718037 5056847 435916959 35357514 546597844 46403527 526157350 757096011 63182442 320972998 85541056 811007299 930174922 58309261 654667731 129844886 619510112 310074162 640478 3308973 193392329 301115155 36063942 488240916 158480870 968186430 446784951 19585096 934959101 325633567 750811420 664642484 160849079 600071492 624404415 46601201 769523008 172067923 647020013 818632768 848045382 400008679 507458163 42758536 141199007 250560247 468257394 850445892 129205496 500817252 624972414 776734925 253157663 686216068 58234345 548483854 940302857 389122473 319453007 476840409 81808715 475143390 444180432 191702505 59901155 503486739 982037692 256529149 444709504 896530736 294500914 492586926 240026099 97308320 712952011 77044288 257484095 83382666 633661147 147431048 441325125 792674116 244623040 64195541 491835914 110884608 618372949 489799446 838098280 792964942 110053291 131952991 612152106 314734589 478591462 985774445 183697952 774889524 550954599 142733621 833021142 954645338 119080873 585775277 980682358 690150170 941113774 998514116 922466203 740784859 50714148 267992383 99921840 399555134 588505006 613023237 448035756 444351658 480999273 990998199 805377616 881691231 482069198 557785501 305306306 715216778 336977706 380368807 268367963 282632506 982736105 375093617 994610613 809308059 441819163 498731922 228087222 342775318 818368444 203225651 346515754 860649428 919368893 310293680 779793699 509206752 214286185 656371963 894404110 86971566 777975479 782535934 893296884 612319821 335032537 688065598 138987610 247945847 612392476 461964767 962280197 431281753 235597332 338026749 923484735 579806988 834596386 923200398 629152793 838439198 640464377 287171755 986177251 119682921 278276862 313115371 320900490 114241429 546460315 150588914 713040644 642680763 721240905 818848879 57722426 702067881 737005655 660416826 972935290 846516222 485942165 397880181 952243704 978131289 987052877 123209565 107882130 135650961 771476640 748397459 575662978 13975921 962576081 428904246 621211909 645283796 471094633 129913827 115149249 20506780 248114808 461791177 288264830 925475065 988433274 691158082 323110340 876663111 308265661 42853151 497701353 423805700 386898057 715378705 983828803 546900180 66193582 428514022 559857220 475185436 754524680 313303026 513252327 588475859 904882673 367466887 572939701 381424997 345832646 631328393 128457293 643388898 597823005 517059976 291276763 501635995 855165938 56973740 884297385 701752935 850816891 297727081 206212365 131715692 348327011 910769914 117970468 392073992 521736116 310461995 195583399 716887727 778262816 757360737 901488410 172373010 239566296 615597297 908500105 555523731 667035122 239841219 300036946 988485290 233859724 277746350 88954174 643405191 52624385 872986412 177035929 719742036 347936452 646511521 427350659 983861706 626639321 104257652 593176139 3409753 210140326 192325122 746587344 483587842 511271703 529805550 943504217 397538401 193280608 367740692 555803919 792165716 158433841 398664164 343582441 133021593 130820633 193105434 352714102 810272835 423173208 611548578 152556657 527824408 327728588 337788324 428108162 19833747 660346309 639683662 841925836 158196577 122595570 83076241 384083079 194219116 776946877 443007165 551575445 539116129 265767024 509157634 361038460 2862968 22561 529537382 97798337 465979334 566437690 858288166 215223301 457713719 862059804 833847678 57569317 126872588 334545936 690459041 143527340 370944349 430058619 21223167 485568809 317785236 59925465 595588870 845538354 802288117 966565500 736477049 916017211 626436166 129754237 523569295 410173924 361324897 165944029 388125768 649451050 707785841 10154876 191681216 702503583 502093268 958070966 24212926 79733618 159311380 4773534 839567401 92599062 242608790 689402717 79927573 375349321 419345926 320957440 971658053 691646663 558330420 116987490 386940557 784736926 771883250 107850397 909423719 970129236 237097150 62963132 458801126 304678754 738302465 67098673 728288260 66366551 866756404 862751514 539415798 365850871 151830264 839967111 909978775 525279507 954938954 132855815 116906281 342115238 875487299 778299659 449264785 621818849 855441972 342195640 481043130 569737950 387246090 10609609 207197195 895612873 338167137 403107028 574622190 649787580 546356444 771129957 173609403 355233640 636170687 906063065 24526423 179071160 460419789 778503019 710438903 18884551 887098145 192980521 736817571 202725756 479825862 478035194 21247266 170246911 178953432 510568869 436606869 968780369 401693379 956045120 756988774 304214750 768631388 710352487 405035571 658694087 736528629 123887311 71382924 878441905 394172170 926577481 237077482 394845016 546608673 258392861 447316281 721077296 582636138 903095718 293787088 230312862 526121115 742952378 388142677 361418320 830800774 451218 46158125 928296609 587620225 479423376 548235611 516954862 647772017 961178037 48485645 905401064 804152322 425049070 339318768 626164642 198987577 844157939 838947933 259310641 221588797 124114741 866286884 803329741 587352619 351158466 158228536 994339417 735110548 679409075 497239790 470916616 180118061 252250797 944792476 979086503 97392934 262566580 581801084 703094419 610606060 78334075 476227193 616775348 384566495 907849987 639714042 19525013 139385936 176978769 714947102 101048147 437884852 432677279 878808355 716851128 931984685 200719629 455308386 290820985 903086170 291839850 296549156 693194995 361635433 133907832 313239736 598988752 152097406 815354671 494699775 828951572 623315482 787398520 485576209 993450998 666979242 818044553 186493636 480741595 251894342 462146855 251504857 452984405 544314275 487926604 811720851 189998271 648399450 155257307 664008592 701908818 992102271 165907268 965380206 14292335 413075795 984065440 591398832 644110385 232931917 66177277 574790728 669382250 588387715 740876496 903945064 796529911 264669361 349132022 501772126 485729924 159623269 817002680 701333530 226757887 876613776 426889503 313196058 487741214 394612907 778364517 251358360 947005664 278658397 607035037 657665288 963968466 354053636 224858952 323924262 447820759 522086650 75223394 561429272 21380371 312427696 6691324 151340206 356007953 184796205 612523522 774415148 216764171 530104134 425376777 583743587 851120290 643228653 373736140 884798008 721807650 138119153 775238680 445174333 127410797 856451769 284886037 548890878 266505106 582040185 283201215 821512013 306789761 553288103 647961117 193874281 931047203 978965518 618532161 24911214 355097769 291489964 741672162 334175667 990743291 982544130 319261886 929900583 542539519 174205698 594052177 491459237 914237667 16073801 116188253 442256800 787709036 583985257 430636182 685872576 792911422 303188823 809645638 289149655 835957041 440262979 479375104 647298388 653555427 707188926 910071015 395615122 389903935 106535198 961534289 619926235 181226269 646136168 27851395 573535665 768661376 564183788 371187080 477386333 899610349 856193967 72911182 82973713 321658486 137056555 727964010 548544727 247064584 653308611 787131024 618814068 513796865 100599780 617000253 165665020 341129945 37098543 686939529 759755813 123933224 840257381 20917586 308305828 729959506 912428553 321023787 690543817 346275678 497488088 567631225 655090776 892142281 701734376 561601408 234476277 806830036 566846629 975002294 203115534 946743658 443191162 939475586 756293350 818951961 304561321 634852772 103646414 263431536 82345978 632578668 469294687 255373307 893949912 392979894 505704041 570700411 734035106 294311214 690621566 598629322 114440582 208665916 239421864 224827423 198661025 689261042 965398497 478305118 491126327 540068385 335942029 816810438 587621684 30212280 582247276 913882617 593856631 86772409 64342015 394094019 418991991 189690099 621332949 428770322 802727046 173721715 443103483 278394828 908868402 223708384 292572839 922658415 877609261 783217297 76893707 833673617 922412110 306168745 173545490 83212122 372722381 988653635 744340843 253489638 39200182 91421873 251982846 80360343 648836532 127120899 746901529 888038503 669551289 254774736 273327758 265510643 705685017 913814238 37688225 242259799 279127592 40078216 600614683 952185489 575288607 127616201 66885864 772664838 661400037 776310220 742331138 306055623 179449541 366349070 471367610 995547475 440595397 153574135 100467670 362269413 454181436 1559907 877723771 58550482 975399727 433036026 513831257 930614907 408641307 11552838 383554852 305936232 946427950 557082027 198433725 594176447 734730988 20928034 991855230 282791198 898276511 875354412 652338384 537166918 686360720 118257444 659996837 979150150 53147674 513738907 383284126 82704877 624646253 503257272 950804550 28641841 664772072 991441995 439065820 164007084 536117504 712023764 11302236 546238523 138562898 836285777 917950691 739169185 690208402 859325657 2902844 105383555 514824407 693464915 834444317 201384094 138159370 447881263 568302018 887920380 61589186 80716746 879645916 515325786 528257391 56895518 179463343 789893491 704167939 966355925 613340383 266141160 825205529 883460318 575140694 381889556 837930423 746271177 851092215 990752654 811682337 866390044 299784779 765342986 892217275 320623415 421859970 517078839 274609474 480583412 828902953 577630041 606196174 487674806 101167358 826436340 450984906 164064090 340808987 252936285 806844729 714244317 516171085 584093220 126416375 140192329 396013769 521680063 712327278 19608725 505213690 233427376 593392929 621521955 933942183 827874411 591152692 776903389 973098379 109959034 294830558 91654648 675498399 641688378 976726120 589558360 831577887 812673318 660015057 294360308 578374213 885988869 374416638 559083940 631290332 445934660 458423827 977123533 176028282 348724673 41813301 178082385 547077253 15916872 2762184 848856840 447504930 733102233 575840557 6428801 346537165 762289962 258709268 700672352 98075761 78117170 277023190 607500614 336971571 907593000 981117858 384604298 633061366 246013786 258619467 368370433 925937762 99672349 765001273 129394290 442607483 4056419 208374927 632629770 397151975 162305687 264002819 16724985 807420165 831764620 981212099 541932768 183672602 638146817 877777039 596588914 666262467 269375099 458372364 157820814 505299259 911115763 718470697 312763640 867712825 212690988 986706894 333063839 692844261 611775208 876639223 512113956 111706995 769297285 637184304 422799299 333575389 137286878 902185937 869281244 134777454 452986335 529634341 559872641 120418374 376222476 23577087 395981729 22978957 785510496 381798060 565118118 411746214 929644740 763377853 879912741 572201863 30111224 413713178 116834003 794350986 31379738 739991778 75297089 423874268 645903033 611000608 324404158 822644315 158296987 264876954 804906581 257651324 752353219 240042114 562555058 111126702 454977842 73392754 51362283 739924452 525119332 994615715 949281296 131120432 700787688 463368056 453508437 73920090 854720181 143956167 204308844 161408682 831063596 586724933 130261007 391999745 658501263 78173288 508613451 699666613 980466953 173876464 803588422 673870895 461775448 340780126 670883456 860611266 954174082 809469861 412179246 707535122 383589274 393595523 928770963 653640912 307346740 341911034 21108791 949677394 719528988 908974297 40315010 988722723 684804385 461262144 691781027 856294477 799147218 359782588 990355874 241558217 225173580 47487052 327084033 43095394 97232369 32385829 11930542 930095508 975092922 674393692 8994508 926750603 813650248 807464138 750359687 379844330 210242447 581399405 575594098 338809615 907843005 985869653 929770697 742226574 831396639 528334510 939849636 570189303 707479951 152597447 309404790 274979346 403178074 467844011 696866487 781384117 933310440 929827860 97054982 373183659 370902585 800229986 733301672 665012754 233190196 248494984 546528351 556339904 183030480 912853544 258656054 5258452 953987514 451227185 369140449 20743606 281694577 883845852 270083389 421487448 46911039 977597796 357519519 753916981 473339158 147471094 238755842 913106526 222894133 469411010 524926265 90099992 553376906 926205662 689009619 484282683 811721409 623515443 770711639 66480534 78464477 72043823 670193171 774301111 279318466 713166755 891349748 771754527 542658691 512806655 881291439 789210035 266240896 700859742 138800424 101788196 653345579 713709860 719370449 924121934 689581447 301796118 988271018 212087496 720316404 831714083 374223282 488135176 862340149 23416360 127543642 804527842 559286746 703526222 572582776 71294498 858634872 959427187 86947686 516570193 501905143 427627082 223640856 870808609 851457661 463161011 850290222 244245569 71008152 924328649 724718519 928888390 338315187 336455530 996843288 952951985 609572975 148365115 62492678 453367145 145800460 938580259 153142873 977668416 547524744 204295665 681648247 494281815 417827243 703186076 104652929 276914379 201476296 748841288 576762176 129783564 340573099 874407080 291417612 130707106 53432237 777736876 852070010 716577450 302162254 504499047 989439182 890289918 940881717 337290199 655624502 293298824 908968390 168799863 456296156 519833070 866142977 724291702 890414085 562197166 148732327 963396206 458302329 865550618 583775792 415500991 738775230 24176841 532064838 369578583 308555425 296566539 392611273 385312870 221458707 743357359 542729191 248567719 158660589 238060332 963061362 523066739 797900809 535119446 478153519 998143261 965574274 320941952 20656472 911031472 909381210 132208767 400676289 119968064 194175391 846733650 668082804 905399911 249951001 801728953 916183332 706746281 873654267 480266404 558216141 991341492 97917498 628387835 105352141 108208276 261083057 31993369 380424749 112392010 627978128 645621069 411347742 289245661 501244501 95500589 152843614 129922877 4234518 389617447 365958737 724299325 679227322 433904590 247113621 639531324 698849334 363403152 688194527 274042391 867631631 44549951 765814550 200483265 908947557 326978153 884126492 891873162 7020317 87766970 982892941 729739195 344525040 840065962 732880731 89425333 58366065 754790882 383635069 347095338 869700300 563942472 192166768 757375982 155755458 190296965 812919203 638785522 740073782 321571686 646829130 419436649 51445015 862437296 723865145 794403365 784922699 979831330 225502276 821816756 560341263 231603721 715935644 851008501 261606212 50609503 924181815 291732057 836380633 7782846 897183820 708603012 62177195 509127834 816925895 613738005 88818548 720107342 157589697 754573106 469596169 304184919 214831103 964738781 283145562 13492533 771277671 103884213 790444677 635163132 35287346 739400719 33093246 256393359 192775821 272353045 277689629 739648831 816924291 471607897 810185223 358290067 277351943 116679912 922870930 899948417 351815822 700658800 264076396 166717580 326672383 338269267 935885696 992119642 983360026 235168365 713877103 895936553 735198220 982805593 95095428 71069366 698996974 218007165 385363833 312638803 487984337 628598992 638833693 60843454 498169571 473046661 916612673 505201904 891765040 470091254 669921187 324514587 470179525 524794144 987865507 166549676 186738294 254636303 956441835 453495366 122319322 891123652 586228748 428941702 638135519 429314846 68665543 466520685 645515451 899070841 682000388 245856654 803454014 949316757 925345320 350815976 329414900 566875777 737539439 621017481 939276204 177528952 830784515 662775378 283266586 664107385 855694327 68453155 970785644 929504617 183324812 44760081 198200221 314458115 815174635 341757874 725387152 440387388 798386605 444483784 595530152 134237827 288725360 71034296 680078498 323215377 297057121 953940372 730297167 77880476 231258211 101450889 66441115 264145006 204036259 983799204 90875213 165182812 196212169 923819538 715126842 617315410 885320023 438358502 50205555 234056799 504630916 370184929 253737161 579595621 275312210 935971987 131298724 373114794 992138510 972806437 203952362 909967802 3922117 819451568 216797926 98138246 301948443 411036154 197931590 37094441 180434378 640575669 393404682 802741479 72983310 818405829 879919171 667208780 556882362 416793848 12298743 106881240 142237115 85160369 42312490 690443547 350588649 551783301 445347232 964851665 818877863 119009120 966943398 703113160 758650535 988361472 436422337 343676961 96308161 394483541 946266019 968638212 186537094 560960272 69874124 295544633 389125661 649353140 953308078 467642634 941392689 868503566 15542301 386347993 815408814 622505477 331256578 378275810 54208726 909507960 782778483 930167545 191113739 290106937 464866497 366040917 970800925 83970872 416277093 541879180 54180023 228310873 787057286 618576389 590540003 23442733 356253441 759698164 774835890 417005267 785116483 400503243 714211872 748088238 585207715 431371392 261339396 597229284 599773117 42382982 772886084 624739286 823111159 462335573 364798292 688899572 756578143 822128729 730050476 692299418 581846609 70136740 973126058 627899753 796060078 18698279 72690140 388660568 728720525 5935499 596854958 471820213 229894412 71878721 813269914 426838858 670797178 695136106 273874357 649306204 91090568 645725349 37344808 748697315 195811921 127030114 699272791 914204689 294849753 518629829 820191314 364887328 351334466 23122697 302959661 336371150 888028897 787521236 448758711 945718023 928095905 8034186 129191241 373740598 346839840 646003526 131436344 234481969 34789180 311409894 10004428 444878559 548925081 325700359 643608678 578249395 469775257 824342208 644948285 267284913 860429674 945237122 105293959 724370328 117595862 747600044 906079735 21969914 148471953 62697689 664334790 578093216 514264153 496157722 775220403 734906534 304435281 232233196 838635683 806768013 502318359 22515299 420661575 572280939 315085731 297217869 925509556 610936656 539823609 226843278 662980772 901273090 368303710 260692020 194526324 857276792 179737668 934074923 478043029 636580241 75222068 851905101 624109570 953543163 943216585 795668313 283795125 303593703 932303413 692993219 293088780 880004242 688387282 132645415 50378384 937585795 89912812 556413223 17077049 878313134 628995812 529254516 144078739 398539803 748398289 429586453 574096666 975507489 675792227 735401637 699677411 645687039 282458787 926011048 24029438 404029678 693894034 169987193 545689045 422718488 773543744 68524016 190240631 137597301 172151378 747056369 333280402 694483415 661092617 885931575 748478956 802544946 245469836 736632818 219352797 603605713 210250828 847630363 610965554 49910586 687702123 782899224 536117420 995287207 718121482 495673267 406218372 454088331 671297062 650231686 636506215 279584402 347361535 545194254 947937884 778929033 263697048 196251172 828341987 497405663 725185724 226540636 745965167 896856919 191057268 839204347 223383727 700056531 158945440 550157691 142973569 136933756 764256273 660962147 683431711 329568176 658673137 688688385 706866885 934658625 949055210 397740726 86967600 316830940 403588223 396352120 404554415 539185851 30104411 817975164 605999163 463615746 292339950 707025845 744172416 92481917 448663801 67370500 600506180 203476245 801714834 128365049 344408040 172684488 726902456 253184887 350048954 947417876 104319007 897939707 718940494 316026977 316013628 911117946 198198294 916651584 128762484 924546305 167386543 695128857 405111469 279572641 678692611 995534363 288510140 727720641 783130919 630007442 412889240 314326503 613411498 426728956 358443821 678240707 655615323 927462551 784194439 961143888 676255753 139817654 141958267 643575441 200881852 692293418 882698170 285923117 453184 7523338 651696090 232344643 401070086 446176867 738325145 509921889 727886810 498883257 351440003 942434632 655961892 892001750 718257905 439773 226598816 422166040 226874652 599364954 719830154 936429598 819999298 108660135 854675543 800646895 988662944 903486259 540040061 697445520 385224032 956429615 147971904 637415048 74383338 794748803 847766232 911193949 383772119 693280362 530361892 193137456 356638937 393165382 959353829 764319293 168577035 716994545 549440896 463027041 228365151 680977135 563400547 401748994 782159762 825709934 288351073 300209127 60195422 466572617 365757912 708538286 390926566 923744122 18275944 910268162 569193896 748008297 395569722 501138764 849704797 957880664 427160802 679781205 239094449 942963141 352442793 743659082 312411153 604486537 768555735 622290400 121325008 137541206 960639248 327380094 834438768 919386401 193450401 552613182 481961705 184688862 549977981 210067624 550053117 25711630 260670010 537367791 487722112 490574701 834441204 384865191 455712131 622716381 714216419 73688370 896856416 995575523 657813629 482698598 267063991 637140487 368784141 655749770 60783616 882485027 807664716 311788068 274864891 161935363 47116772 123704475 366462885 17880487 258276011 420650487 393632365 161764899 882128671 936307468 249535948 165950233 733976895 845244088 514470076 240243199 901306386 799419756 814951381 18302465 905532409 934601242 18725277 33150209 606278100 536589671 9266642 216819817 1850128 28458124 363462012 617045339 561017288 914176808 203292378 480055752 408810651 529029514 104659376 60163620 20122152 327949192 687634251 328955155 721310469 908799995 596922096 154617110 599724344 866403655 562200318 656521213 615727794 597159118 82010437 203939656 902601631 898512942 700976572 365314930 315634743 743235340 127931385 904690369 430702104 618061444 330387108 991641684 733785098 565228799 760195786 343396111 469752185 143544908 784356591 389683635 172690387 126049694 834869195 396033101 881400011 869865632 358001237 720608615 234278079 401931250 608766957 213289404 230933020 674392479 707613750 620863200 171513679 265120695 216414133 72174809 546640859 645502642 578994029 573015732 267800744 296774135 704699461 353464210 650442254 132329054 161720295 868467919 969149137 193704974 489816682 826725499 640933485 961785020 688724334 846194412 459386699 512717235 652578178 672959284 896113281 828716718 40976362 467535176 205610537 246485958 907501372 879433168 31457488 673825593 678270239 726848411 6546366 822754529 115075942 722628567 386366499 959009401 33075396 325976684 581003036 851104182 432055763 579240063 853088408 49611509 450133813 610878921 330082347 705886180 671029870 407513867 383834065 528002355 566515743 301212410 24390428 333590574 968771153 22967453 541574024 811435391 972037344 851133180 536366525 625372296 75269403 522518760 617953967 987750267 761197454 332198894 139837556 6617985 868381426 175344041 730808985 280736233 127057078 963310005 763534306 431099315 249947710 503893246 907789343 85987955 252957951 78572807 235312739 374247836 310350889 846691949 47619068 673564753 57789404 264343857 603827255 540378645 171349488 397916347 625943054 775336779 563822535 869747144 423377181 746134846 771366876 338197933 982558730 204105787 401278098 857312339 738111305 644439203 182473137 633807039 803903742 773861709 330007214 509271699 242075449 982456557 171976746 60622193 831874057 897326821 690850315 333795249 690335987 263448198 899311676 188298969 987667008 513579325 6876441 242545159 397465484 108542211 914808386 22662191 651579211 591911714 964736308 725316587 690645024 172093512 462241276 944837089 253505635 743584429 743550268 131864829 234380933 952589382 417077114 422847791 908096739 172728549 754759290 888428401 158348682 177870357 25636247 440488497 619646578 987134451 992552707 337119974 947279748 809399903 350675948 95064795 163455702 723470320 50139843 516731566 538712596 983753571 878691468 610849211 324498349 605943978 819414844 566794712 565852794 463051838 373279624 28059093 95298368 839864184 514786527 51833609 520591507 994993781 262290336 2640481 794511499 199928765 971666633 981297470 448724981 563174967 809698872 234111825 422583821 904474744 185554668 642734013 24961371 120087522 671649497 456153228 824472058 398397579 376152824 621015777 347158492 562883381 812784962 42515083 824500457 26842219 995035038 555981035 104472931 666251265 571440881 256964482 709499709 153756809 387361928 887292950 699406620 160196738 53400400 401948852 645833495 388170699 925354519 895556477 270075207 176410095 730899042 460906144 497479631 401125593 33899450 44568362 620168735 549008790 288466577 433235847 778348562 146863297 899205011 75476471 519987073 764746686 143993149 560108873 475335577 199929235 856653912 44298869 262419580 578954654 412578109 953276794 559675716 662884525 864421128 606725017 974252093 407550652 560629685 768518828 156970063 540798956 821805849 453355102 27472823 445970891 768723247 753136475 764171782 305477883 495110453 698683789 266981640 593707525 81643809 784228528 472831265 485751093 112426651 999260157 398872550 470140771 946263673 344672910 867121386 151431996 717274632 986596428 434638956 799220376 458565061 340869467 291385058 948937731 282421366 322568300 492828749 883642849 940953077 737442894 998701440 791449982 333001240 783724218 333718221 232397714 50046204 611491261 757312122 762942149 104322009 779707572 89094137 758056579 117990153 558152450 110915400 552527102 414813560 684067302 856592308 150392256 137682355 813530972 610799227 172774468 849875639 389626179 842170825 311149479 919586394 694645756 573290200 751497511 570362469 407553130 363991192 76636418 355477489 84556155 689918919 772780275 276088926 324077843 304127632 229937179 886860811 294507900 242439859 376341494 463012826 210281949 401503946 386828038 61753352 976488190 734609997 823089151 406409132 417443500 423562249 432714666 733500238 641581632 455829107 550556624 409792601 517373276 494206505 446928625 423120159 464788362 415820527 984517278 211052851 893640324 415682234 915449971 735559074 813845864 377994726 875717650 713745194 210662761 925083956 250529465 928898085 275367222 345005563 714460814 189920904 97077042 307533943 741433958 161005872 743863949 159235973 155405446 803288786 926127394 392111105 325700064 364111530 346053907 5263686 864185832 515396282 92556044 826682180 866097154 804896276 165363806 252311632 591816132 798885142 3777452 820608541 373330143 49510954 989753435 732608435 868064507 938112007 455019918 476014826 274536208 713720829 988687548 184958789 282158247 361835217 882934230 737634144 234848689 473729733 603866506 667624757 710627512 652144707 619359600 918144989 596060820 435496586 169577861 779192228 478469205 47309031 663800594 445907766 604027247 23334831 340068531 796153133 135456845 280284903 800247470 425683783 160997412 837025783 966780160 998609523 932287 24005265 814419458 29660175 192800960 2400243 953156569 989521659 723299170 471302763 345443640 502466144 102361565 303676510 966146720 225378756 12737647 193949292 359615885 708368812 554669209 448801465 546312494 501441524 996336810 737215777 267221469 485106857 304198469 823713728 95503331 91285272 495663715 827442455 318643001 497496556 913430434 820840496 231617145 126102168 247237592 786588770 139100925 927318397 304921478 684002037 608811023 561216755 891067861 715011794 467358724 440502548 68618831 767397480 822080413 621273209 130611818 828431369 378356260 900781947 95282468 971729994 131091263 380191943 331494789 689296443 464785305 79841656 260399787 643045807 719822201 351562470 813871136 721074137 880023115 600204813 704231040 306662749 911825278 108125941 280025283 425544110 782908628 442058301 499512341 706463502 89131740 466899350 192567039 151730502 516331048 38457193 367483483 27905477 153983954 24575067 942968285 794911660 16799140 777100412 973987928 30597068 89110298 118823335 788855541 692727669 725732557 243671852 201410927 563205895 804947120 477254945 69801661 695851220 607483944 166757488 361587374 593211497 50992762 304291360 513801261 239501621 310041524 596372650 285849350 101451581 730881599 991559838 190757429 4815399 158283440 274561331 97297814 688278254 989322832 349844273 964382026 595333134 645002582 570784162 832610658 664554401 789197333 926223790 332794627 703209856 90073288 591117373 766484708 321103320 477961370 518756079 743749786 230923177 114635424 544447356 729617615 723875169 412916395 972918482 707779352 538567926 392422849 877060068 756117951 998597165 892315005 635583973 928987500 421980370 633319874 93771210 658843993 515933566 491433242 549573042 52639633 287590069 973500271 894416017 81642392 490923262 199251318 838696260 285948184 628153421 453014381 125586375 296704259 618918428 974792757 129775122 863472927 643328207 604325067 457320406 697444861 149006931 181312725 28475422 769465183 100420459 81387050 550527548 80726129 905910018 965426414 786591583 319519659 996134444 400370553 339035176 254475340 799505067 466271402 647251619 107703140 563571501 484476099 171895433 634797881 598463944 357427408 815601598 796410125 342036549 130634830 520279655 39477931 491124173 647490039 292523531 777320227 384561569 176841969 807841244 800989111 229445925 740879540 294060496 241179271 624186911 369690389 813869352 794988922 458190894 605985112 92358697 902892094 668530950 115618942 505412883 669666461 890554398 5894909 238442862 778607101 142771483 51030224 92092588 338385150 256566769 493272541 836754889 91947331 761330222 873735622 973949419 83605883 564541737 769547511 993483842 580913242 61873558 762607901 930352910 370935429 281926596 199671225 935290476 483369740 62908386 206513690 665603183 915855309 687259607 571860778 412028959 844100088 477162035 338768007 722121797 183682521 174534107 678611003 822900471 140519940 153432340 271165430 737240701 342092778 63074375 885988286 85117277 508800083 883756853 204482568 919552109 897862555 65959505 138766256 147700063 280484651 134209216 18980754 756677743 756381517 573144041 70743076 556290045 707732086 455197892 450467200 117844496 410876139 440181612 414796604 332476178 947986421 135296717 494702654 884492085 147154095 533405719 998037816 531016639 501060323 267716117 90194559 813621596 666515802 688761880 674880076 945118122 813977612 784418829 999498174 965870776 539329870 313507222 187435139 490487536 596956601 101593583 667365687 181427089 534845683 303115944 867457166 534252998 896163942 62589165 786387879 922698059 164687523 159339380 875905664 572648943 799786641 987381645 375199776 205383168 381376502 46427007 314009791 419822060 229016600 191419991 860179328 796067214 857841960 305726298 265553304 395609463 616391955 281893522 857440042 348343075 763839633 801792469 800590579 166335024 598868473 895143044 350560157 966911301 286750727 317588026 138346337 64833561 701184050 351956565 850191441 780605411 770623723 144284628 975708568 94848910 923696000 936282296 249310826 823221247 81963559 682018030 302110102 253449840 972238982 713477210 410861671 89240143 900648020 517788077 573596107 915393597 48084325 917701540 841288471 459650665 670038252 678790996 401292594 243573253 767880249 417480226 345754601 303787746 131869396 685555593 106358901 502472046 408787692 962374761 954501733 696153700 392728420 368433010 136184306 637708599 296731157 331558054 323805857 881490150 856378027 295810774 816603416 233432500 43751655 424746052 551461848 138528589 3470683 450863250 917973448 792972910 929108491 201196914 669706794 449112334 281698823 762832447 67225816 10892874 354979066 768228982 533009559 863360417 820496666 764131130 546296829 462402387 801453643 196834269 206440841 276750653 20656764 70288274 503750327 498934120 424679195 731104136 97839468 592394911 673591107 533772496 822494415 785087102 547379690 782956003 376841662 621413806 994395633 537696946 685764053 649621068 888114640 884795457 901493362 55905104 741677806 739097012 782504468 170843413 661485643 572376164 335326273 531827997 732014771 652801715 109000963 824418013 855135078 632701598 473621634 973414878 777901493 832181033 677750887 846671248 652028365 491893797 703599611 822743113 763942849 714921276 207084492 187417856 753482779 82271659 257370424 614543951 506420398 70639818 549964215 342886604 854958268 502402260 511862758 731969827 3127560 514764340 143040455 744829445 678630320 398120812 829949386 131928208 802987729 425017176 698362483 294842850 359356716 468626130 267441997 912199893 294010210 919236346 816560220 666246777 532817068 795720737 298344781 768033855 276460132 607282239 536418136 796603923 825594164 327061811 533490972 439466014 434355833 502575615 194775078 184236787 149186538 938130797 692559354 800860981 697955924 902679124 167889118 379460102 26845474 437330255 421430480 603509850 146837438 314904543 678131 199283020 774035834 367920899 534304091 764016905 265708975 404687539 29435152 79932399 84251178 933812084 991324961 865628149 822013915 405788969 784228059 327909366 910398381 332297488 750990734 701898072 421618323 186922961 569247956 426368877 426772705 514365977 276720309 258553167 612117124 594961192 406225758 366179137 883501470 562601756 439561479 35338914 217802580 309203126 78844578 244471170 426236777 469359198 580348640 851878143 807838134 914246630 646101859 918064223 211823121 475252008 654312482 955110255 540330101 508921221 555940784 850893883 427988723 684678615 355984104 132437045 808526344 507680236 80256120 525340553 326903678 236885163 878628146 376458497 295310200 768373288 312193632 897201493 767153046 810888421 359265362 295842099 63842895 385381905 185346207 818229088 559960786 555361526 368835652 740937979 995128341 177775989 723671602 645281020 521531854 633636684 137290016 97854985 808150028 760380082 462496301 830423849 765398879 12152797 845195283 254309109 473088457 206254175 287394378 887097946 142879984 308787083 729682588 689906546 387846494 624638442 653134522 323789689 788575105 907406295 856967474 233689435 409302263 628129463 979400644 953499712 491630263 244096233 778511043 577504081 483176589 899222948 675091737 414113213 589190631 972518722 724944407 813322274 496038794 310428201 952236530 297391363 259474797 166391594 47169908 821525130 353385224 727767602 8934082 436399141 70301445 337037260 931358945 305443582 83272756 584029560 594998678 317431554 682690660 967299278 245864999 83041595 733745465 398915208 34261673 397640152 758949522 14242407 465031715 615333353 103924175 605661717 355042722 505964127 645194671 757405505 747827804 843641522 392989571 22586045 919677523 865023809 656950998 759065474 904566016 482069845 460068430 718795870 615266366 760036672 416381539 524553533 890992528 197342881 29058066 429595631 619964793 820731837 234088112 172840436 960869358 130586316 13737909 348747825 309995692 225628045 587921331 639046727 597536098 578119244 983025259 671041253 683864919 301796918 856378072 695903657 689557216 19061395 977081551 247196910 908634224 256814033 274045856 909669877 440663912 117050480 318846616 72374985 237614004 7009784 251626911 55869497 529342015 553639297 155924517 546110307 522500218 828288599 354269808 92733687 570621889 712121773 121275481 913919096 247632667 616480181 290055074 461229749 668485216 621227725 710577027 391185267 531722367 808837558 341605799 202009710 567136950 270907259 453797741 113911244 374537023 63898543 330868513 233943808 362944593 335797777 531350704 940593467 422634629 264892113 880201809 573692756 254531043 493050975 300208591 580595076 32116695 717521791 108964654 700520700 737518551 961293702 736415360 786779731 750084069 169199875 725519144 957127853 540121961 399228894 503844200 298088442 29103257 677314424 18769588 528234539 195940501 479082886 607485931 73407089 502058144 285736228 383283520 306646595 962745100 744048424 824894114 573814846 898450381 558417575 513901528 402271068 971927932 458745890 642961928 849281580 913977502 409308658 376423807 775124347 394974478 137402853 91715824 11324699 593812690 14384178 238375175 755450643 330351419 244179422 767865857 844586196 295913435 43553491 536483564 223568766 550507102 727314902 644461164 34402304 341299086 410917704 934271225 676370702 80805020 676020862 223717910 728552689 298921239 290238442 98534923 945239358 100436962 763264615 316600904 127999589 69865602 582682233 759611070 989333562 992038187 419993103 811752081 385649470 213688293 732813395 323190034 553005500 562239840 546140708 598830362 564018916 367486607 320842501 871803329 759007998 158426781 253937779 501921390 133418953 234480276 474642217 558802288 475245011 356850973 216680010 426511170 282788405 939395355 891554914 373868284 608641156 606028183 254604944 192941475 1903033 633539921 87457412 167211044 158617524 320597098 897675048 660337945 823246999 48629591 364565990 396706800 430090065 347012354 412246594 253267420 379526885 760827522 207517928 808827860 65462739 855834381 480051893 87973955 584515546 780749835 120305397 506944230 569405670 469418718 6212344 892948923 206382757 788612040 233270668 391532015 296142196 872367657 470323659 130032383 877530552 500063090 228512336 5094795 575785347 157213348 457594135 342101869 473180497 810785054 482057663 366654130 111789102 955269401 387824341 177555102 550152557 728930090 43484131 59105234 213217624 462829005 313207488 688488 592525403 372695237 509050832 10391804 796961668 452518344 372570392 846028641 894016404 943396465 248966566 364322364 803864055 567946401 905620078 702460374 320029968 61907054 477271492 985741574 663003589 568644732 750998103 112133516 684692406 206274393 786869103 945374699 629002117 836157374 926984598 377951629 151595842 712575386 962970485 976986448 32861389 235956928 849207077 426392829 78020407 512327294 84773907 16664334 629108774 706412430 400292848 908320509 712791036 932656147 630545729 751584290 972002927 487983691 371442151 742470474 974068515 359723452 377888974 700708327 993610658 351450104 870010801 68475939 129152587 736285934 70534263 761914435 447589423 841413518 715367835 488381196 222113064 778281157 710159648 41339733 53824064 908763114 120053602 748238227 844388024 630412970 735844915 308739185 894406991 497156166 115352112 437726968 242441792 857435382 356869230 462488698 345728466 982367383 376761137 379347148 876094146 135679437 835177879 452273793 399917178 838166374 291407755 122320918 188061137 711859131 530674923 506986492 519129111 340967094 460656501 681880274 792893121 672882927 501961499 929093783 806327586 546945212 113716842 311899530 242049334 161161323 315502759 863749582 553486757 784565081 901070717 431161821 134789308 853518030 439207310 777578343 50696290 577558087 635529787 966817748 964321337 816346498 665157518 558011110 137247730 799239791 800820676 338354868 50323995 339517590 823684601 684867455 198295140 982414465 31619964 620034765 399668297 377626052 580538894 829317857 811239002 97638864 487990412 340578949 187151200 178572328 24247371 675598958 878396802 180135652 648029361 197450705 627565785 157986788 155612092 944543595 343973461 756144571 199197802 627007144 573347900 358489233 945950373 459038472 591088580 94881620 176352958 81486569 922339150 743414648 827815891 511590826 887669414 427602265 97996726 445150558 174063453 803060748 67714994 838578763 569382925 502058176 119882249 898994642 589726599 934733787 558225985 334782328 616018804 998482369 410703978 348251544 276571062 515300554 175961084 491336222 504137164 534192131 697743923 495538508 90198162 255832727 961062495 470130820 921218022 723497274 451141651 619935668 670708979 971727136 161911106 679813713 346915787 766574856 74188957 138570894 77296041 663038955 784749910 641674180 128010289 146701565 69240141 162832069 749279602 397442573 361371686 785317328 767552688 797595895 289497501 760036517 709531968 407594381 459709968 53317762 285156731 649776566 503307049 691910100 126210712 115212784 216176331 331479784 135121194 124822447 492316530 79657910 323259192 532301303 161951530 750066537 442427673 799659712 557772868 551390376 214337873 675179391 537021758 240294707 501880583 808413656 589292844 330881740 758200590 820089008 577973281 85794805 807723037 217441518 649908906 845318018 742257936 570954162 958082622 701687885 358801318 905868457 262581343 799875317 187660638 434535627 356756236 453556137 479526252 713918858 421428789 315198929 13575589 569904326 739354299 52000961 604781384 864801445 135765957 214546392 82982359 830918971 863313366 668258406 225304364 239039288 501764300 638186666 752623921 890903210 712759760 995804240 643501796 664065068 963133850 784223508 333866340 473511486 649028813 634354591 497111841 426313114 497291007 872255348 265966808 831255073 240236347 679060344 993011698 618944590 245276145 564609706 966934234 174155870 28519094 622719194 132110067 633565154 807745307 692962921 817071667 229751881 963731516 681520317 593700949 54361788 792318095 113695401 51103031 134940423 429600055 368140743 248917512 747436278 80477574 873807216 860209779 182339185 871654987 687552230 948630885 965038976 919499909 622531607 246871223 236922094 7695962 413033113 70349915 865137643 660677663 785520497 558455004 199514490 527530082 250593576 540111821 886107495 403404721 259558547 232005441 882834076 439711262 87541334 50942539 387069283 34038502 748726805 680816147 963998923 325283248 462443758 320843587 842980572 900794298 355144674 100953375 916872007 603432878 877693881 272114727 385660564 696419857 235976539 737243902 286558386 890573666 319919060 853371528 1981121 588848325 831225762 180798673 254718396 342973326 165548965 990070106 523053960 495496170 535194197 81614850 555542134 431908691 346105428 111617416 336521020 199070995 262369703 529652165 908409104 144779448 764466692 323731493 589291586 561544768 564556552 949039587 551734855 367457513 396512476 20136875 678418334 233904344 521180646 104856597 174716664 898992369 886081125 41577773 289139622 702449642 683912199 58387458 114033651 328877558 235729073 866193721 291259927 877777009 36990898 329704625 161064100 262704278 608208295 9455054 759952282 70200580 523647350 773480165 292863634 778023502 516542917 117253948 532400696 997545181 977042496 577469487 348161422 247170459 57660398 427740936 539133293 300816935 671257359 267430206 526347377 165876370 474973386 412183157 977769697 107087158 563248632 894864441 461843712 849335658 993514358 323728515 98110702 192364542 271739704 799139868 73388537 781260623 510820072 3142397 76777727 864685306 720875975 717401060 46667964 41788929 738919953 768429167 877398775 825383372 320558434 843988433 463234083 7525274 995036602 201578689 745725586 819244822 397491603 593799031 943588485 25034277 166498538 482813897 789005322 540294420 408156117 256792369 682090303 338636605 809598109 142512221 110138238 10947693 252017310 476577898 868987938 225122350 810014781 185487303 412018539 86206752 831228161 288803149 946986778 63777340 732355439 530688604 403671309 667995374 638554933 94209215 580041243 682395792 859412279 535079720 927058924 429816547 838672042 775080569 355260303 186476201 843350445 352987981 21981314 45098738 110607089 220912021 501259921 169086171 95320306 213623550 350728459 634102456 600606513 105078639 352229704 503763763 100683661 388070037 403067828 657131041 431054121 140157070 425556590 748184092 138848410 242577263 12738833 614566456 858813827 899712216 977445605 33097990 228437859 391547696 43556513 428409510 942439330 802909715 815088185 57214269 544868364 119736730 514281014 700105632 794157580 767039331 714848110 340201192 98713774 806723156 692751721 875566763 759539419 966973466 810529016 825592053 226731267 875664144 839619803 588815161 2738551 558721277 163717022 854030446 249746425 502748782 814470976 386320159 721074037 651502953 791009017 917701760 947985561 142950638 180665868 895286585 386374404 960838734 9974016 875829070 963659901 134158917 568861239 727125709 902995135 860595346 288366117 290582983 52847829 531845534 406898634 629465912 679786291 725762436 752534261 6143373 416190466 49931707 691693317 775530519 949895985 623778333 116329114 551530227 612137635 565610939 386412658 300964761 161144071 789432795 290746061 920394294 108935854 868989613 849884711 646210711 530517901 165468382 754795927 81824974 768949002 932429639 555509219 324343267 101647829 734628738 238115863 735164797 822072546 589971500 867741644 204153615 412750239 595739716 286573813 812022378 688053909 544748989 296427755 124653324 531940813 47839469 323558745 197909946 395443264 924737773 788943511 8673835 935921579 506550208 98638214 830232671 398314400 994248069 130698271 183073571 716034080 572093501 992430247 275760215 268803047 146417172 24033605 851827959 541013747 804552758 783635919 800068184 147737303 373120597 648893634 189284520 186369887 143109955 966782533 74665626 356507187 82392691 85483619 318125448 785529001 516545436 703331010 968439569 522640975 679207823 720865027 80046008 772462572 393074264 39133145 788080127 501700674 972207762 162631513 139374923 879713181 488426177 745344348 117238788 30389045 418561153 537423443 64049243 380618771 493308721 234133598 704663436 93294944 436917918 348264079 57089656 594717534 33834713 740643251 369290898 231594168 317055174 673970982 322601130 747399893 703583002 869040430 960190996 100118631 95882002 17977064 855092127 223433411 96018057 698331102 614823251 932566919 904458467 557629314 53246630 856913928 688756520 451664090 403493613 170878567 145786487 398470637 992893935 268116458 681741764 658104594 630157461 818719464 883356637 818145638 841775118 39151271 107998246 851991852 707616187 236168290 905296960 422978944 711526621 154572346 166236807 19154601 442695148 221662033 160730164 895169795 444427131 302656424 368040814 310046205 47839311 579234767 634869215 758122239 903317598 491495482 212067958 456625733 507099846 139364559 878752357 908500357 348505546 531109925 590549732 291585248 801306368 91604098 372775394 699701746 982611168 728591079 733842285 618252083 253499363 297816154 785565222 887702422 750135436 562509870 84284368 626853728 958669587 54562391 967291875 905801462 101070823 297024485 736832586 276849252 129499792 637091709 498071707 107243687 390870535 863267065 320326657 143274601 280873504 278296631 932596043 859236702 897302620 719561722 617687751 206780331 162870692 258635803 732550617 390020691 317349734 938106504 458814809 674770160 841451359 718128569 575578055 398016485 266641363 719212678 241053349 260131799 737245098 444830072 534053652 819952371 179876098 755958545 24848469 851218587 77553862 14061353 648677599 741632166 835310591 41389604 467425277 81892044 951286560 832956853 636750613 448513785 797056100 414967893 171747336 560348212 652416190 203304317 628740406 288830253 276660921 958573905 90991086 16022299 554730490 82489019 998533301 799278330 164626601 228891992 634257356 211945631 388755402 500649368 981510496 617176420 908722509 850053372 966245101 643421463 557743495 715966516 263428614 955545976 383234876 357252123 382957005 826355768 941234256 7041555 710749647 131546562 457220831 979796916 87632220 986720340 207884861 428630252 99980854 342097375 42984822 787092573 698298795 841556434 447959768 558072187 600811418 27548853 605228913 273977612 715569978 136469756 644790916 841838560 261330746 847940022 241476180 20098830 235530570 80059957 916801605 895915404 104648749 657355101 943639860 448812146 233829242 365754851 814441010 830914127 725057405 312351269 252551995 474817354 501883808 306912231 648640739 448719308 762913822 879353455 427397643 338162150 918847580 274166476 88684028 798944708 317329619 844035389 833225139 853059620 541317196 54127211 383915113 176668406 232945528 738708757 623072306 365107745 577687189 906133420 852071246 431372865 346972320 46207354 439743781 589672677 754955671 235562215 29757400 413557283 89847223 5560874 398561990 339073784 936009408 461242597 225237007 996214174 863858854 210192815 580604127 602414647 244737626 465797929 767998606 630897102 563813760 849969947 248974699 129548651 593855975 462343081 117668606 686755093 854832591 834324088 725615285 134806427 359469684 125385481 548407621 17735856 590845199 166063536 297882607 325280741 181765760 931986849 80163686 919137899 303467147 583717582 677304064 655688665 976087683 846905850 22364919 468898270 178728701 926552356 349408045 551719969 869087635 268815890 279743232 474671197 192480968 500512440 837495935 158971306 257434616 708010991 341326186 167563084 205572500 40027326 312492662 595255550 826749324 556539684 648080035 276441623 220566534 974123225 568955811 583328503 720708594 103848704 395887447 319292383 262415452 905501939 10918163 343549272 337120185 961258538 742922969 557671925 428402914 318288099 430002071 399753678 364073541 288935123 77606840 824841778 557009504 628710255 255684911 512473355 511373865 104756257 425194021 192458304 38672881 984198788 529583644 637184849 856203132 365375047 89892135 635743898 742117781 367300717 333947424 558463802 900756994 625329715 38073375 24872427 757048735 84308503 571964257 778696117 206420274 346474369 70746706 196602510 981011277 19172204 729827760 671020014 927663763 876130183 226247727 794997967 760456994 777171688 855869520 589004068 814913346 838261493 786665175 406121023 899854185 872968 563015026 155108260 711672776 123452649 118373485 184327215 742815537 490828865 204768815 493654804 988223945 217667943 520160663 521683266 641283137 758000701 614064036 104458279 478877054 619536103 371929727 521572744 110443497 239014665 474590730 422226159 220419492 753815503 221978274 54357689 845438035 308140230 539649635 405665430 959159391 298287624 256660941 176400147 350692630 730340600 852467245 47924321 767917823 59615288 261120815 62374887 626302231 994968571 660179993 239683351 396714931 590713053 845210248 172052090 945343516 79330539 273768995 884469967 921574613 333000892 341406212 535869793 458153844 652012621 962390398 853382123 6378810 468529079 705288290 931834117 561076000 829444992 794506395 616046714 163195350 418084040 608570046 857024182 585318296 900875114 803578036 136299408 627231747 235105425 737966393 84454101 795817142 566500473 752024878 205579164 47769215 892464849 813064883 221002997 836899473 339693732 88078391 505426893 804021998 34858528 780397832 234207400 69000842 803256722 20973602 835724724 672044980 443422915 459283408 174944488 874710365 929778732 503715337 935168314 591808904 513609144 916290230 628994041 804283138 940444526 14665077 135491401 788661750 162731206 320088193 87672214 488617583 848111630 940123531 830397712 324296865 239283233 176143578 147503305 216546891 885381883 971187285 778720435 368155900 402507124 640757186 712544930 661734054 65705602 439715474 165358634 644861670 164452519 391635419 216357824 116084456 434543649 287663760 853168892 527104943 919888962 626275150 41234266 463261227 871219876 597499651 798268803 191883852 748868123 180808220 880207037 784058050 111681697 270801505 212131612 646907129 866392398 701307069 40776201 332972965 172002316 114489564 165781408 384237466 454609304 583179808 66220650 623730788 656233204 694609399 33310593 313416652 425165489 655387170 651162358 434614299 915276542 404352363 951764532 717136554 79745726 430730172 219521995 806475445 41748772 714838451 31538087 997740340 80954121 589428044 775512151 912646685 699492683 739105566 312791501 702293342 297747786 450399866 237630919 477022349 407638050 592821174 862609663 264014053 770636307 883695747 816638417 229678175 682826977 955997402 695374672 990180973 363246056 694754786 175161037 507307 54016902 506637641 754413722 874736804 514024622 531339060 149388762 604849474 572875037 384056474 62760982 298289837 735779756 746100972 269262053 226342266 97883819 628875371 938528334 138168935 210543176 345152664 616381021 909802324 990886635 803559679 109756755 355722415 179597404 841033898 788875888 582732702 779733889 351965940 931911650 905779486 630262856 554808544 802563427 108164182 658457821 970437278 752211911 297269888 399017668 307195134 873678254 880766596 910944127 356208471 502926024 926258963 744410558 423111321 935138471 803763756 683440166 52367326 948443046 324695367 239824059 47475958 483827594 681316664 666434372 36192074 997743242 6652836 468381280 373465939 285366061 778672101 213103461 388717792 717598841 849709480 612599063 207534410 577969686 336263021 79343893 385754557 843807161 746454537 151497906 524714398 883415916 442777519 998255685 130414089 973485767 219547301 192161841 742081706 240913679 444908297 731454467 50663872 573268887 593064094 690584893 205119730 449933955 132168388 427104610 665644737 206059424 644580360 625025885 749715052 573983999 340767434 385646231 119922820 841419398 795801090 233021892 436409728 136038954 678621617 807720532 341120613 958799176 824705905 672529175 388785561 486509135 447329814 577863012 702485687 322269244 631020472 447066088 892661733 209585110 646162312 784508537 985242548 176537809 833309185 571633915 292896479 25489134 327683333 640991966 183059363 880804408 95948224 818316715 22065664 481366397 285498413 645622840 388699466 293511348 757964572 797567900 160934683 176932467 495744931 967498705 257615569 517651140 736188472 29259947 531245301 602310562 278396514 473141529 185038388 850277944 243290782 422321157 720484460 140333153 410215669 939180960 707654457 863602738 569378566 407890182 63131815 933593425 606462461 254528952 37187759 43287825 25813575 147339767 766776844 87317555 986198792 193461734 341000052 141480090 205027845 462728398 253666319 315972945 698467444 414500572 794994906 47664981 785899451 549192907 253345698 236677175 96645918 385827379 52032665 768174613 329643639 805476856 677418482 401336144 826069547 839662084 671672484 437860715 880114339 388768638 724154573 178341998 739563406 331169513 577398011 193632223 54040054 542608767 834636706 324387543 959246285 481181783 547369239 306261882 701372074 265502164 858690005 963254992 723705353 344242288 493817517 617249275 939891619 357688542 105196935 100479315 198976188 973976883 760493753 504020 19071170 12419248 928591075 920599419 165806976 431044999 692889870 621232220 152887220 400174817 996232845 139935362 782388678 648636050 128462122 624027558 887311489 461785298 479087312 345179228 349432250 636425730 348614981 37110789 334584251 245799521 906203838 64033951 301963275 261112614 264843114 706669709 236732847 641850608 325366168 249892990 561659776 542485481 664483681 728008123 554521776 78873616 96766880 971419795 38127828 245890804 988967492 398577300 862593693 695952555 724451363 121074887 679375851 500095064 730021912 156676202 117537803 855333544 769609093 696243707 900542790 656929661 733123851 180094059 947961484 448988923 135744034 675317305 981346150 34824726 813291980 89303631 546259340 943229462 966342746 31900473 425160342 219148489 214412714 217744025 997196260 336104497 93738187 250865668 252227091 717476309 195643790 599056853 993051454 722644904 573424835 3324968 629402405 204502314 99453246 516380496 710072275 287438699 954177735 276083436 249113418 446808288 438576582 158942605 562092617 43788675 27842581 26092840 151745196 973929341 206627831 849425389 215747832 734666728 826682516 95832013 926631721 881552006 136911381 746555419 73279689 216467548 24973550 765403841 179025993 162031530 757423716 620935316 980824635 932221979 722211033 955837519 506285285 719710630 150357993 622928834 861309906 427564032 531822339 628030837 689561892 740515168 323581364 982708510 663127081 874148868 306483187 189867543 301827471 642977913 68371047 236558530 823601873 231494860 961591142 556425739 488266250 937974690 99565180 71889570 522809744 984349958 68916179 911442712 908156089 891684918 880245187 377123191 655991205 977686191 680127132 899070770 659212075 696773877 400154813 425284374 877300277 509330917 199929582 203275982 217383727 865764178 165254857 926446424 247753559 524087295 979496269 255713806 190711409 912642344 492793651 828046122 102853192 614749040 352816056 350065063 457734900 306530085 275925281 570102970 18079855 486267516 734660493 167814198 249920056 911416869 167843371 611303010 838036500 958470213 793675195 728136643 484086233 50336565 51541490 906698438 277173172 107446945 310531241 796952704 395954016 634370592 261288116 900194735 91446951 661094499 949593444 783399122 946788349 455821918 909197536 187506557 677251416 862450326 469499805 266658128 175036281 447238493 308027231 599984616 794880665 633434900 553010050 539731735 30727961 445524381 705250560 444787863 788418167 301529685 860048302 462496108 533221611 304467900 311243227 974571097 556189918 587278287 328390686 491754684 882601722 645471085 171429888 5300754 213526157 444837631 756185651 316852154 101014855 778262864 440821843 288809907 913463391 103592323 92313279 329403921 626577073 145794904 703585231 148650511 790890188 750209098 745964936 759451471 263603098 429224576 209936833 653632101 603086978 618337179 237619959 4720253 430638915 874610711 723377051 957925674 338756332 491270385 813652280 488375485 353685837 563482126 603093637 530307452 44186566 828604579 998139678 569855885 367820046 292490571 251687313 699829020 426544869 244980018 755807793 628569276 462014720 238830959 523995013 535444917 144544957 265359362 972115059 39567386 799061107 850675675 154900721 473769290 256121706 586792703 580228143 982587287 966404467 946216634 12968792 136554909 838503427 441857676 562610424 189078547 325841206 80195052 560331075 849532716 714833535 19688655 804578676 336454948 959737088 886066835 458120231 928971608 801594474 596188634 905712954 431752146 616959301 196886288 334847626 814339660 374949203 902137524 251658945 673168249 996948543 753054888 715147893 578651757 823105874 729875155 284191536 622817061 422648702 221247157 678287217 483968013 298969475 640946767 412508249 301850540 184538352 810152509 625729 383684841 912521284 829122629 979109995 899955099 248994931 986174168 724648086 932926952 652135957 199475434 45000651 933682562 13177884 252085743 391132258 451023160 917477616 232578975 562127094 962834577 387804606 424514998 360521277 256870646 961011670 771422035 638972083 159915183 478270002 700776506 613512191 80411120 944730472 775345752 507284520 368879579 504483316 180885221 677942289 783965003 439320334 549084904 936943351 806245308 860301059 631071288 634081795 388963880 723236642 427497173 147178297 465192968 214927654 209471632 403302980 233080283 982550416 605152451 993877865 193212517 426899355 180593742 475182965 964859380 418859329 170105887 455211897 314732971 200716257 745520583 219661001 163495399 912587597 574248524 128158186 904396468 568457172 718321538 255942132 218708557 923372145 681437152 313397501 230181482 90868137 751960491 40182563 393793747 356460207 664942925 179341113 6086661 23050456 936209276 446594155 66427164 388065818 826846271 942914083 40134309 455550138 41823427 553737825 570011544 946734708 98414019 602917328 379937725 305871150 153979487 512056247 965760929 266397568 155052253 655619989 349639614 715927913 899766012 213209498 390700305 168517645 185819620 36252466 30709491 556778342 238276940 848199318 714303636 922063676 721616147 501733486 657633459 572657512 466229466 494625604 814920362 947038537 358001438 942243479 550150037 219661354 892804260 980250347 22878216 889899602 615389810 380225365 214324653 290411974 838299277 445057260 61907387 638705548 439170104 764410557 792657569 44440453 530947499 857857395 229934918 682056192 416457739 489558054 416094467 229700614 662953461 78006132 53099908 966875491 578750361 845541140 767226380 792025386 182351336 331901358 932303837 535998120 181058635 411659980 682262818 731090953 945466752 210896696 883538393 671754089 631505877 426614836 977626792 298742476 737146242 701208594 89520248 831729709 898886813 625241356 149308090 409142874 396876299 394851613 707017951 539038417 963917300 442370623 228721453 492213700 739364014 769047787 451747490 375557668 573879451 898191423 290067537 295232006 84711176 553039351 555558492 114995819 493212457 800761092 245503394 24157420 806884522 861161242 983327171 187862041 510308617 916258635 772161378 755136114 877833321 2655526 823161553 313100566 406654356 200381736 553957799 363315070 645723020 536566614 511746120 433789502 652763207 79619501 791023747 1373785 452426463 458658710 436006966 773707399 420943999 36798995 25166662 178253737 362253070 269095463 424099894 63479080 973108979 665144521 212036261 730309598 898449410 572993878 670337019 85505351 206507446 586609401 362275927 442760615 143500869 328108605 773431116 755322317 762725998 38195747 334700 728224929 863179119 770596552 381168553 501206605 273836867 556510165 577882082 618618492 558578969 453477588 640878575 849486937 156672487 336190836 258065121 398294033 118267572 158151794 108962371 200891891 290845107 973323334 7497165 966990951 746177413 603207315 437006944 521108477 533912277 943271417 307715459 459748230 942354362 985193147 139074603 721411007 182160693 298712472 207712565 956429862 318579366 874554580 627318030 514961789 514968621 301725663 207413928 258898010 491493456 376422143 902911874 101609193 116426699 154442727 545457998 766644686 306362181 994254349 875805784 868877326 821283964 205489940 233579847 733198278 900580203 568032515 795499694 431903284 453386796 800867798 220782273 848305666 230852306 528090352 39808477 464907726 981287607 44448442 453474992 476209382 528002022 610723259 921965636 475908584 146124582 696627002 665963362 645855100 967082456 979922109 236301661 573642591 687648134 288304904 742473934 25809192 128785275 509742094 670530617 369770581 60578617 656023606 675062036 607006164 379186436 730191407 759615585 856471434 108981588 232595435 87649056 900236434 95936680 600234303 127698547 61503306 843269894 843500735 164724979 114271351 707997227 685705560 937573995 687288047 355591341 922237665 666865739 345466453 855450012 989727832 856021221 530359462 257114546 485486388 107457004 179589801 626725990 548260724 608381061 764959927 819955937 853713325 173380541 486686776 546897015 237820554 646470230 625946528 379484185 507105014 460759555 233925179 623138950 459734855 545150589 199025528 625206585 494362812 566275051 292022135 153390061 443544069 768905915 37146856 292951995 234279134 814525088 990274762 670241731 837077580 897125766 6378066 671693504 133704690 63069556 306552918 714929621 165949005 458644333 356540940 599674097 253654740 955549145 415728764 978281814 28068943 122754027 170637266 47508701 793013136 70154992 648645803 983802226 234084671 755417649 603033645 725781952 513930512 247839168 769990215 276838207 200894417 308129952 221000947 251171435 644409406 617685610 325828515 897128907 897465345 507756009 36539933 106789669 377982860 515913287 355922129 45684636 926239189 279953618 296810778 651485648 321677496 967184807 974789877 203683924 558028213 86073027 464826860 31802924 204851034 712662048 472648530 296465021 73337118 661535469 528783923 431711013 611164118 776047683 926989936 678895864 442645411 369711150 897238313 604147480 883986266 204397037 915450586 576144968 620819166 955574101 380573144 994795922 955554469 57849880 867207363 890599255 86634706 171242624 537042844 590807590 316375298 559371293 698267237 445556757 416054716 359671273 697127739 492616808 415406730 337059836 617668401 616484934 664427061 220141465 273727019 428098881 296413194 55325287 166429124 728425591 962111281 949517291 380077538 263477332 607408684 944977828 316461669 159760430 705239409 58410230 897610713 274298727 569462714 737277733 586105131 404119622 505993269 950508717 297718599 579915062 91267659 351731159 365300692 332220727 835642950 891234993 772912449 775335780 393038006 510337732 558761577 435744989 71945784 555180844 621647776 797660676 600699659 908395906 439077040 412268605 727267358 292559337 166504081 418876889 604510336 932331513 723024989 706831738 210000885 564535753 986199911 122669353 500470141 182221066 549884573 5668560 551948431 231016497 172877731 719204155 233553746 809336618 903641600 362501062 495200898 40732842 763572937 785297498 343414507 885450391 167192889 14021005 776598889 890999303 796482787 126640932 570497779 943038031 548721345 412567498 184135230 127796014 894935031 647195998 850482939 501807741 250017464 305176952 631254236 562850962 618396185 289699657 419035264 181554984 491036556 300638089 920402223 393205464 507054674 480402940 375206494 131621294 401039896 818890484 932333338 244069513 468014601 970615676 707099315 970131127 622949911 68023625 55000719 684416987 604445169 519599060 357956945 103581520 523199411 999611137 359016643 606133249 472255740 621327258 550325931 986555253 354746321 393840212 760198059 674502406 608589742 356842071 128787934 560934101 255825359 570090164 992378714 389227946 250859530 876877709 143746272 551953520 996769544 952346544 782461429 234833827 575241839 385334623 683571809 442157300 992703349 347090972 708000272 489625768 159310164 833272636 518214258 478207399 315929345 214547068 158942349 419351295 332272489 550435104 989402568 731454981 285016348 299898240 276212338 538751616 548685946 311387978 157190295 940183858 805041612 847404377 516515740 383880444 223297123 59737032 593546151 430539197 476803294 376115939 328422020 291344694 850531234 482396932 766779517 194230612 285209217 63268077 36916919 43546879 578135192 311658391 542749131 480011736 776141352 629577804 415219940 434098962 452972211 818214778 349713092 872050385 906593327 775753505 2579533 290597640 650052932 896860256 159217254 212992185 685425347 178256622 727923939 268004123 78391084 835178823 417114221 802721657 843300741 489800036 469641468 457537687 371419098 39153162 260144718 821349255 211508995 67154257 724599670 272579411 480292445 89274724 451848852 389481164 891053558 755032913 157919780 300448326 412289252 2344095 283777730 6347874 339955883 165793921 42343993 106572660 23947592 756357465 965622598 165863893 341647212 895760170 40382175 908082274 960932140 612550644 668348970 594963619 258712972 420013073 897076087 562830931 628875247 300349106 613352952 477407111 89433393 646529108 871484664 276810261 600843500 384055204 161813604 725041596 178482042 870507937 520411741 924181643 735924231 177332749 780438540 933005070 182496118 603351327 391166434 27212650 791889525 326939891 470058960 282822964 523555452 725840343 34620222 859743365 152092096 50663560 607460302 612581671 699231131 876805495 235282630 167920208 605599327 873231580 162335294 351737951 983671460 252254211 274737331 899729591 338987709 518699579 951450657 152304599 578732102 707848224 975668953 676304654 126232191 903018747 917338196 524184991 880778556 859458541 613496604 206293257 845354883 957821673 527721913 43856927 739110499 456301408 251004053 171803570 923661181 403122715 196315445 150483732 312889474 795235936 305799928 728547771 373463955 895523841 613452967 209920434 810094878 576228258 134028076 936178242 509490999 202669142 986013716 236370096 427751119 648057119 130951351 922664056 676753309 144303623 215473174 811296818 883657195 243346612 685831881 383114583 291263333 10679739 180563307 803847136 792520924 652645263 719833228 480690252 841043072 480773365 755172276 300166914 572534137 234096146 945921738 984106089 973140013 599143377 609123179 641842233 316940790 914063470 793917036 836111458 88796871 801747365 75373874 446770250 357276379 254228879 345522089 201387887 948349164 925704473 884272451 718861658 424069488 807538373 667609232 303634033 321929188 292195843 475658170 147034542 288191509 778338844 581023523 717088382 940250267 289103804 436824782 597200144 391376847 268296723 754975819 69193210 298978433 329704504 810614322 651793625 306583743 496909583 629558432 879623250 973864826 259412688 414477829 965623393 156900574 909225829 8824265 821219373 835571248 141103197 373867837 816675686 451113967 210560919 359378899 398948342 519588430 518099204 343216257 602022980 565280598 106229813 68137922 312078117 758753735 516611298 724329787 230579577 95725273 513292562 230285009 896211388 387508616 566547619 806398799 606991888 16460332 888352997 730137758 350302306 265231115 812269966 277561609 51270145 370357765 871763197 473964658 420225279 161330503 823145664 132016388 597051106 265030820 990174774 878727419 713091317 111675100 807736 573373713 582092762 200268870 590454995 101286997 180296300 356032693 464833954 698716346 696637408 329296178 854295686 595567531 486564306 510659289 421818085 966766868 467403379 961496762 54846838 216517040 276422184 440991643 295826093 824799721 590269450 667455144 183495492 993254216 556412989 24578594 60153843 88150638 628210742 283940779 272453062 992830338 643074829 433710158 167617540 823184970 964171046 545473805 214613631 381952999 939489211 781332212 241032675 178141813 650162889 989817106 833260145 741461940 222365064 192233688 639938157 155039890 553782406 146747799 960200766 770729597 562052781 182909263 997729352 606696982 828619072 699958573 592663127 665513904 486439179 646425618 804913668 365373159 847373294 937543625 805300282 367796305 173483951 597104464 828789243 475495116 44850295 231768571 459102349 620375852 938602629 224317642 801929959 178931777 867079275 114713517 169261535 225748128 378001723 698304212 60121416 254937865 867517221 390440386 934219498 777405715 594191471 945258082 210044780 308073292 343104793 18053316 617719999 255624068 750118192 706688880 918970520 138163275 272785576 8130608 260196164 165842766 541065782 942200964 712103892 422847353 451151978 954984693 784180359 161599620 495140658 442929161 253947401 584643648 803406976 526207855 965048785 240480404 925834233 56220311 381028933 971076704 259951931 123386330 91126193 269854498 560567121 858620696 193198262 927298226 153746935 848020418 264144202 733278865 972604639 284029487 924302182 262684087 136545752 606982599 891433862 838521171 784429791 684233473 344282410 91867202 690401191 430576314 186482434 147923820 345796781 987204291 886436144 71971920 713760603 261339580 985219278 615038854 179784632 924360863 367125201 324625038 220687444 404513468 183552708 185276264 50583914 918903708 63831348 745592821 42489561 220772630 697388449 697378222 975086736 327853856 479568949 379511454 350121867 994046813 518492260 862352751 788849056 747432903 964378800 727324586 728550186 898899833 954498674 280690476 796205461 370047248 880166504 193671630 16509171 398222806 358014330 886667576 755611619 758120442 251484573 375858527 315326385 472628861 753605833 56353561 464930038 457754945 526336037 75654050 825615614 144754951 209153478 165938152 401731311 148318186 552276927 818799602 796079243 463688974 481924274 715711243 264553105 319135754 775831230 520452398 554137819 104881532 166579384 828369215 310051383 408578389 702241368 570253882 814799888 418374502 694925137 674366920 763320941 861568278 332792425 246388325 399472102 611980828 166030174 35130962 915764666 185447994 84492157 136634561 239702497 962522886 702405400 637497389 670617580 569981026 729227574 641946339 446003612 350626805 563115783 526400629 425391962 505393887 441166945 862079277 690764250 352799934 161353720 875995940 843270833 971088117 364273116 866456318 891546528 864908440 798895875 586811907 944114699 437465045 475279078 217052897 528743565 647157538 752455347 357465491 904621419 981458367 443733815 71695323 678481870 810473636 197173878 254212451 146113950 421805909 522801443 571589012 507672154 889239255 423520415 256289688 816172633 864986482 883295946 319084963 491591136 971673495 646853613 875190590 239340263 128828069 912827505 943183108 653138035 775276640 840752428 987613843 616015642 933626013 453462014 420713054 538721876 839063189 523453392 686225276 539898889 514897121 88917710 582843103 878495202 260127268 544348240 23526980 716901897 734039048 25788509 533536854 149645660 188652801 303777416 342627376 8172504 888725093 405075099 281294952 267471729 931706829 905504975 811613178 738065036 1662971 233955710 88642677 291155297 160393456 82927950 647644661 471794732 670270394 622415639 826991063 399754077 825241802 214471378 526026923 788051755 332890502 703748418 35758969 659322305 616946323 28119409 889517338 641011410 44501475 994134509 502108557 696257131 683139170 904398919 931275494 116581224 740123349 235494749 619691359 752105533 190441454 20982765 572420005 934983118 227658636 383856840 413235855 47302458 834054038 623250673 898227445 818211326 136794421 244460943 293519304 848294879 108747367 855819835 982501200 964219375 963521025 594208806 569712026 494303360 149452492 535393556 827600375 474675912 960963135 106206603 489367233 32455864 647268968 789541332 211477344 888455730 467903747 30885696 180328388 624399237 335933832 94309218 343437985 707732979 698770422 49908205 141214261 181425107 725631480 794323693 277599497 299045789 69531128 683329894 746430136 13446290 177813864 963727243 825599828 886485716 326275880 562786550 550018763 420893919 581676762 456521694 452069784 761858364 828616177 239563841 626000806 331818679 775675712 147159826 647146970 488587834 455483647 793620334 626810716 628775861 343725661 759330768 589908794 813621032 554417227 974057349 493627936 840135967 762379644 573537221 609576354 597754071 281751665 498928592 775495922 468159210 643689110 117758264 22735463 384228716 15899001 781857974 925934798 138969368 405484690 460455445 943845992 443587588 877823415 252302920 369834915 109143163 454572499 912563666 798134315 816627540 990991204 504527511 572957554 128292331 595936137 358040443 128692505 681336486 570099608 646805497 800039099 545970230 440247811 768846387 151379433 772928484 162525585 124837587 499640648 316808789 685437108 674950922 302495387 787893769 255562287 358520741 683661489 296004618 733915901 836046482 369760208 389630630 582971454 462023683 666450963 774960643 87470296 133069120 92380264 26107507 682322319 265257208 534618321 270275460 581587933 855248898 869652005 779709178 768286941 7503148 330555086 972349915 800676229 1392449 160843917 984817254 814450081 667706632 269615118 122101123 690850056 596644465 963969924 28745575 422818738 473903386 648720302 496865968 641898820 618771034 925349739 754287092 769476368 661893386 598144011 516267828 13035648 43981175 380978072 643144553 128554663 21996596 775154822 65711990 932240075 728446976 805337755 270923436 684493150 399792910 796325922 944328783 493080037 696975675 592037003 57978985 246527778 413713255 245419245 369096224 610135046 598174482 769925268 648247747 487606198 321816199 610986411 48114410 611277227 375984656 211711229 561221416 700827975 635847332 718780465 592932567 863569794 492984282 59705973 583664514 189325663 30859820 891769938 190639424 537314520 338547606 213988940 15308833 55857534 708452017 771823448 408258336 81812413 382275977 979265558 654987707 930914826 90558452 136254916 111248252 541168944 346597228 27350828 874300577 610873047 287822100 480842920 14102533 928522545 565870090 165179258 350047068 70387357 807365915 943098474 364866927 824887882 48880949 361401016 768499410 361975735 2931702 545850375 255727104 970879529 334172565 618795544 321398986 379863631 206938365 329031876 924422156 284945659 999698580 520782449 68314414 325595081 533578031 224147863 5571789 556517545 382891713 123138701 73428893 111220161 838883258 75159839 923015234 98093396 651840733 171768295 936788264 910654545 869011213 583595602 740335586 383293583 120169681 836819971 234592567 681452480 909038865 939358036 232879209 172954318 170196635 702294467 812201575 737733634 574765630 146731413 846169609 824370052 160470618 682614295 133881158 689663251 583373012 304591491 212545571 139563270 610330312 523525474 237514347 571349345 478455683 511517250 573435573 956091105 355068383 595607848 991617940 840483131 785757091 728626256 233768173 609440206 408718957 440675242 408178770 88645783 763230898 904282173 242986103 745804358 195768359 811913987 307749512 31710258 580333832 894538153 993570481 487490386 390346722 591670012 676642862 221956970 670212811 524945825 681565642 337145440 945082331 717286685 108686759 740543255 661946048 648061125 812356253 30486884 754644618 834294465 493276306 794752548 307382839 503995519 860609890 545008976 132016008 891915660 664798573 217937165 269374856 367317067 294295273 256184314 568064509 413974594 987300094 120958174 528863982 523294046 428270023 464949818 270202126 430077051 988152076 797617462 676169012 700074445 825134490 210238186 629289184 266450814 864866286 569346927 758014647 384121796 580974599 988167198 539370612 720410216 88989342 511788937 346258093 321212310 692308238 520902258 229516445 896496372 215479639 617654182 937241250 687398920 858736168 886521850 195287998 557758403 839997896 698411103 273761938 284897367 214462052 886958476 272658450 439196434 945438817 257375873 503112256 69133048 54175876 197315736 323193298 75290274 665071780 517860541 525933496 754626246 794428305 525133911 248937245 140746766 851586858 284416757 479597854 80188918 13800363 38508104 659592174 356874768 74324488 469617841 150093791 586767941 544001927 413507812 501921903 611777362 959853440 912473879 199622377 600585151 800680356 575766646 70654101 447161570 613983549 704197781 317899251 41839689 295270060 339099879 232151358 499505304 583487105 946159245 649952155 77745184 812051906 509119823 713843766 766172350 188376179 761104854 205040846 233941493 525894051 583520566 183434234 252254692 719477594 341344451 362632366 236947999 588855439 474522873 493196655 693184706 199625872 233946875 42005218 407735565 399898443 65441800 395442837 14166680 484626084 443431392 388070087 14654838 433499571 554915189 236759223 857125789 187295977 302991846 18090275 219175747 782500396 28754626 283158399 673376854 281220863 234343912 357481574 339232353 274483701 733055470 293935754 427972661 334093406 391193024 976193978 921656847 426610646 971598550 918138993 346248266 450882335 154405635 345589783 639284567 821824150 372070172 964372529 788700847 855390646 567902114 463528455 659264566 478639476 422026599 160921208 177976674 939251848 93684905 802497770 487359849 157685894 926155107 591045382 617661271 782456657 908908740 623025995 630891642 692617173 862786848 215635716 566102664 494506155 700842383 415566961 346139829 493637550 787602116 140297047 97847420 430915216 824051182 747090199 211912851 730298018 328305422 653303281 885883926 193121863 634443513 171441053 285220455 626440826 504846881 230760528 587890828 630212284 806505739 830603586 42581789 588014162 20117380 473101901 580166486 299234947 825792433 647885406 641783420 20478965 323877297 581337186 610116385 483628799 7910231 324833202 14845569 488105760 97380205 842297096 148534270 696440188 496191360 671180955 749104255 259250886 393572918 291699643 587585330 450181045 352054497 132829848 154944308 223913832 503285462 228350569 589680030 699150336 406359388 362513098 309910868 378185792 167122625 235356707 87115267 23409886 565962592 288707283 903421211 993800821 397196501 606599558 965085610 915583907 412105451 142584043 85617915 146711807 636640570 661299912 885150537 768697037 766890749 296329622 929036716 386019946 837257702 847942734 574914602 565261028 340326263 430975309 809696239 462851490 431781803 123054784 65143916 448675611 728220868 124991021 4195718 379223635 27706148 442673983 599513616 975281676 744132725 815136045 897450460 584498622 267719432 714028132 832070459 605237296 974842235 35328744 887189850 971533475 995202346 908846123 498657686 713257661 234049493 240434845 201101128 363392625 840576032 879189092 699749173 18803468 887422658 356631303 940881116 201514824 586168577 383803325 556177897 229300719 58325680 731172616 195408255 440642827 397331958 552012566 545587054 133461860 932431576 59267163 484817605 903877208 748644265 453831008 761358165 724515596 216404141 986812742 706757673 611768401 945041922 997098985 484425617 365620212 458422465 972359594 284105749 990765183 672368903 758391733 259916609 161735380 983836453 855093401 15792354 878844379 151414414 335687614 33980444 358228255 787983800 123870423 616696644 81505992 870885824 579861630 141601443 14137453 358363591 434787309 343493550 220086081 989565291 264652883 237799914 362634109 30229266 49371663 862520914 761335312 170045605 473673107 900838253 996741230 935462143 17752846 871242440 51337890 956061455 87087090 523949692 334757843 937734319 434094001 887239080 394724175 60235272 44558419 903733141 631936085 652937225 637639736 769554258 98402969 688278990 682749068 524416710 297917166 165497354 902887168 96402566 808179064 937274021 322839566 238392106 859301873 719616550 990253937 454086238 440442158 537333777 345439554 928965793 664054872 438798485 532905546 221592499 128998634 150285807 859915480 715155937 222106825 297732848 730339686 6283360 260486094 900003423 541722077 416595562 361739828 296188486 734026658 124388867 45637137 328269222 614812334 889099085 734842621 152979593 418585849 476599345 659940735 919653194 884458465 642592228 381122808 465422960 469575095 481189417 857220796 918679604 727085102 755047620 496174909 486626946 295280202 138587124 540494145 194035349 343827243 13306102 71115170 340225561 889551899 121934891 247436600 718802409 666738068 286983435 530762683 850165977 972831201 380764490 348477701 317168601 655934412 129565620 523212893 659168142 964553634 425847032 459922891 584293816 709410862 426925871 63413045 539188358 366183315 242688798 517914237 703849175 340652301 965126123 976343034 968508267 267345659 302545594 742362221 498746003 605954354 259597032 108341252 542057321 172886604 343065408 684964657 936945725 641961201 861468668 700906722 379352360 474445256 761628959 801943079 175047819 485748928 38775635 469091493 678576703 433540457 803107698 721389889 435566845 978392030 434126869 71478875 644447298 327725411 182523229 528953615 50937769 696890130 907288040 596728159 177614282 108661426 394168730 131378970 647419184 693928227 379845549 524405771 687011001 171073524 879728027 853402416 849900266 271672519 155425879 534751970 855424179 637187035 598046847 744055472 310411521 308935596 794879552 667407230 138255509 371748057 941826560 231400266 583332453 508270485 729105879 611906297 749937873 950441473 274810815 936262067 510722759 629113587 802105568 296948509 24800527 596919815 431872391 950581891 344250382 182187060 641622384 764366800 160700754 740530170 398062665 549788326 151313827 276414384 27447420 186770914 473424124 66774239 860540344 917273812 17766921 844336976 411599374 238802894 492722508 563567560 674313685 459225191 191557785 881093515 343260306 704596990 941138453 485399239 159026056 931279686 724555353 741738028 181185065 751675491 428024767 632848775 110745571 21265415 804996686 967630391 952513352 735916069 440712748 941558583 334445651 629688517 151636694 440794620 452470308 216531434 328718866 6999163 203338574 380318203 40724957 38841718 353481486 881865103 30316124 79986201 902849209 976890506 254434692 413330247 464887217 260835363 730756972 379381768 777045039 147037177 494113749 31292723 527919734 435417165 572835311 77237939 828240564 643200553 457835925 723984682 942673889 328768580 378666655 27484397 54994687 961987232 730168409 533265929 11527156 527556383 157702778 723425000 908804352 508679337 406117735 110590750 129074746 441473428 483277973 5344874 944566643 328058602 820634873 199893678 982914415 55548027 237912868 365170726 404917016 803862196 600549873 449073504 123114371 550455225 258756854 477825585 209127316 474717937 670025382 798293320 601733429 994846366 459780644 646158387 45989606 817301612 995959187 658634790 394521977 882686120 539553444 249339285 127831579 258289415 470075663 265595537 138531319 138659743 369498775 650646871 353302500 189803405 167143397 364568103 352639300 901742041 317253538 134228353 265104930 384046359 119837580 695542362 892285603 62137869 76866370 453997579 382147465 5423572 75137786 858908457 261975864 779722548 500079445 216103386 333170889 299877602 329912414 977218154 223211711 102049717 586319146 69822577 868212856 263185212 727815231 238829803 496751121 968298014 690948035 625497674 268609260 729994851 510056449 863071574 33216251 491545659 468317046 449099615 673811502 121211704 941711394 908054439 247408015 103415855 604460018 522875967 193317519 295809785 394171784 496875952 486988719 227187234 651576149 511796461 597074907 4717270 171168901 514540200 563072300 103154603 857109390 167750158 300202844 481097696 800558538 437121107 45177077 818529733 351307549 297333964 357555006 577757875 72715755 201816304 237486741 83754532 573905980 580627935 842806020 367231758 675197625 271974638 375844372 908124659 604022427 974909461 45451163 362672083 450565085 734061876 989443206 202348953 450793508 903648888 730176887 25553881 474622988 101850974 490030650 318456994 654210373 892589213 256131405 210550564 888187163 783679260 634564801 738183877 561577571 480736853 768733380 279288861 89953239 192193839 828753894 886327097 613962390 843315923 885693042 294470660 717996888 533944267 368437204 298119625 30296577 752963991 494665533 979331224 749031785 983163961 439314189 334980969 844886996 320210324 72872979 230438135 302246685 599181776 231786419 851984398 726398221 520639344 70630928 15580869 111164142 611357988 473057020 883260284 880143360 293617801 67628309 862828037 806609458 574042870 291369518 678058561 17496981 339439511 847727108 47132967 206148207 892434152 262821601 820207059 282361832 277198644 523805875 111075549 350391759 756114741 5698733 576540237 579408043 84002934 987976637 708938161 401775552 7917234 786891632 943098059 992617364 850923996 359877544 607961322 648436976 519862869 102683520 278797684 126775006 903802341 888022633 289973418 195552488 616355876 113257444 868118095 957329101 861785481 55918933 880543177 361771594 293640031 803268859 197322713 500936004 747344203 269019577 25554008 148882520 547567263 246796537 140945435 205253605 139564140 713348792 894970267 14342901 610276678 836888153 306569843 321330038 521778857 866486739 145087354 302521057 962319378 909401045 815826055 183774050 645500892 440656619 994248737 843785312 878536936 203538147 307747589 134998840 593123509 160226616 583553023 79838849 881369326 908642988 982334599 851592609 655536643 418499546 660764003 450781751 571394643 462699874 798139210 853961439 459332715 131192178 748955019 272030981 741284971 410116523 515181841 872504833 265472367 715730836 646225394 966284255 700900757 818798196 809375832 357908193 979844285 743340002 933204111 587363237 481480717 798082593 291186371 278271618 351203322 544788165 239452667 421714987 182432405 277003513 599618699 944511809 306406026 368160542 608785332 482353826 855673318 229860017 866901939 11346276 821366787 189512211 151635855 452182145 527975606 957173656 515223849 822720183 522199958 518165004 786767667 513885115 332156741 700325099 152354239 154252211 98511182 546657986 181823853 823125522 447163638 503260319 170890459 522884744 548866712 942214011 71265353 348763774 958046337 439889598 550814600 981173701 292232508 661014188 875042538 291973961 722542996 408972108 574256059 89638952 791490245 494263502 934294434 430555305 297916436 662951862 811369407 685848898 319620589 149549658 711176939 299730513 574304794 609066834 657792659 62017598 177233140 281033664 474470892 39724358 934911473 754757679 890980096 467312349 343771047 761474265 599306622 438472389 511443580 178712022 181120475 341173127 493332894 90171375 86877824 370806501 350410647 769210790 652357744 780454713 580312452 336325063 258103097 895880409 231602230 156193595 549578986 852642424 891484450 588166496 828541305 669526661 433891499 123987772 737640453 725534052 182558615 486097395 14572698 270582590 113926919 552102666 181855471 538329142 994980785 924812820 340190216 190942702 933331386 977855405 625586584 229533037 710081502 974335082 653456493 322982676 331616650 724536301 684598215 41413998 967292281 113821841 151163175 224842141 354922613 682828292 557518833 305235006 205093363 161565679 212135750 410466107 225128791 328995476 946137489 711066990 402287844 486485847 497945826 222485494 364855832 441831840 455675698 527080108 498500650 226796718 180310881 283757851 911431204 778682153 211989843 817197276 39703668 923437678 831733542 783109688 919449728 181417722 795673726 618173576 360565181 646374689 550765907 978510569 344634812 353189755 820433657 355839487 367332095 384390869 657800378 176753768 774243744 888249598 817263744 656862649 232735010 205197250 556088208 742104791 348429411 368029044 939720782 777517632 983908780 995908732 813045790 64801096 420988476 403250503 822082907 942661799 652976083 680871890 763133899 768462358 502461740 951636580 80351501 513414052 626011035 184620463 26765060 787688763 112953554 220899008 823290222 31901553 137883310 989399233 95663736 36410366 708728244 997791625 142085556 178217079 449321964 180272034 168411489 230495017 593625970 727353452 863175178 901346346 743862562 435320734 644092681 6321307 420977754 577811819 96763756 159090916 729103867 340096046 533190018 475458887 476676493 712168349 219017171 122267411 781426821 947006076 337281701 139644668 399787968 949183832 479472335 327775979 552512753 885305013 228730157 819413948 285359311 697174323 261867301 439167082 413947607 364213407 385577110 575772905 536289788 329468956 100087533 777895424 859457592 562307919 152405912 868769402 425494264 475063231 346817445 148909494 94838217 147469439 854525353 265330989 798812332 909838191 720183250 640208759 704195984 982417014 588244286 416122021 488266307 989418788 449579044 353768238 27733291 982955869 637162713 825656026 437348029 887275949 788511744 661463110 397599176 310666991 249508074 750544458 692834492 655609901 918452054 326632537 176224954 497256510 759249003 267933527 621789150 341418748 650183539 200698124 272370242 403158352 47952360 515641072 113837314 675013633 717601605 97464017 745630533 437001310 627034968 243371575 770735524 571563639 80837551 250753304 882690182 263014459 119188894 780299433 763096554 114825991 392229910 270582057 146469084 840659351 307064200 189902205 960536490 971526616 709798006 849872119 567229382 492890849 396633284 227875062 22226923 416380080 687529058 243466891 720735828 882236895 589140883 95697659 127072573 346483301 865522347 133333392 501684661 996179602 593030652 371249889 804649056 139172883 288601324 679017347 600608672 77463637 41261768 725840593 628994061 642894480 731691502 908547709 796211367 576997364 346038130 351872042 100220454 923051300 761321391 463542603 46717512 972494168 194702419 934689867 312966200 981201982 856548639 665278409 635594532 9063984 398584934 391461354 721368130 235617925 405117317 830276026 818842472 614139232 897536602 621042223 24946872 192955771 83276847 930651736 328632098 618355444 17489970 58981791 262843175 371457736 397114835 915384729 133141047 143126322 792491667 660068279 781194947 759255343 925749408 457284797 540026413 215242038 647736647 417413879 187158319 836505151 857857506 860627285 495748340 766408287 520004534 496526135 604626656 55505902 206778365 333107338 245800788 373566774 809865823 407841884 514551907 327720205 183151107 380036060 655683142 543998256 23060993 997698696 949596281 339117107 328523238 989013327 295387422 755372899 884633869 614211546 721385354 966004082 46024358 975904079 374406441 922250888 278254942 251653174 179252714 13702814 964438554 87466472 636003656 468487916 359134631 741185165 144216468 76799917 382224817 382528566 542405485 931347788 623211157 260538012 521287002 412862997 993484773 145418344 880751417 612187718 944093818 816082487 824005526 993112128 674625530 670779588 181346973 513057802 24076014 324774478 216628508 676166660 931429979 227904641 99608943 874313386 627102600 852463617 225760856 890620637 846446793 13353017 32011863 126163056 117486261 325021757 698607123 410608998 907895163 224332175 703938958 162881087 123761754 612460124 190111691 724477137 95634730 211838444 700200837 293815953 114114608 623937723 962978648 177040166 187074268 142350166 212206360 930212907 893952371 750037237 19500316 794749680 461130501 581496354 991755744 423300383 704917132 382582530 862611538 553861552 387449561 429848757 731139861 581428819 106234158 73355838 12560173 903303132 251026872 829564354 347180950 391514944 925275812 595418147 157175461 781052361 55723846 753500332 547863916 728397372 232094878 324138336 558491204 307327664 848427393 818402587 922100670 646751059 823242894 55051280 61229194 923456562 507160545 972332629 482667072 938437405 865831691 529707545 88937431 831184655 901654872 259185190 279610208 794388817 374216493 834745385 731503748 532129243 424095729 56246816 328487503 590874168 604093773 205320676 759114041 766550066 231106935 571627483 770684401 466566889 813299454 762889266 848261115 33043406 26119190 849763375 881262570 936284012 377519696 336449106 99836110 68253604 521988822 258016690 38138898 548297117 489620373 297837408 390069437 88317717 707445525 29383474 748409733 86173676 172515341 418988472 485974602 52297764 612516364 864402101 866208792 167983829 519975340 973894908 82358773 104077595 151107337 321951884 338749072 267909783 671206252 444762660 870468410 801375726 851377614 169632174 952290254 255969156 675566251 120465104 843926091 471989980 238266082 395815761 588768811 828352546 474229667 834590579 350282051 78007047 195989984 766540546 913061841 448884778 501573166 930525344 67991032 809729170 935459841 848977691 275216710 867064867 990132362 152972128 203594776 702777445 159533703 22457693 161496660 433767184 126607880 397257790 364249948 668306424 274478783 917047570 381270610 65826214 485865021 531107027 488697461 713920947 672009578 211614674 978045250 983093738 210730513 427722846 340970889 830032855 245529056 438175433 256126447 343747618 68858493 89369804 772419924 727817332 431756021 269735796 85219266 407132583 544560341 440240773 386165555 603002012 42991946 19119066 17144723 939925737 150198031 438581920 588454025 220148529 789567336 64033057 782969856 189572679 255404128 572971167 314854989 828189637 359785059 298571323 396491422 679850053 224417467 946557371 813256185 884932468 717596442 493219232 649303121 220127849 669682190 575034758 469966583 904519139 118298282 700750540 270239850 405065424 684224965 940712275 802130887 805275606 830467278 405284971 979220764 383898478 234948098 320416739 298654738 766864069 139693244 185960651 936515421 810851691 90667583 625437841 475928681 709553361 293069570 565248961 619782161 304737840 171761093 411691781 371496321 651761077 67438706 909656079 994391621 691340454 213554288 30731064 129338729 992065393 884647165 111840926 729964204 813892334 65199419 86767162 153440341 642286166 412348401 829891849 730700158 111133553 637612663 718194279 26627001 787890147 925126761 12659951 930127676 541650438 285846833 485122090 749058354 808203763 673731867 860773157 997194260 537524728 635113186 146882635 706971935 428598381 79394219 784138272 505846923 395584657 267897873 252747280 192806403 875505480 251927372 24442419 725663238 41840428 146568599 361072239 531482206 210287926 823248695 445259760 776218112 297422513 975332589 402923866 278766084 340068734 845937232 234959962 790287296 862463678 951876700 786691427 184954885 357347088 82435734 883394635 636252545 614817310 588083405 725242126 776915387 590074974 509386939 585157725 709274994 160634113 20040860 937646064 279135635 446307044 926467475 233022868 591865738 136060219 93495811 333951309 791266356 365611190 713869082 732306685 944697933 646220417 206189375 528581115 82949915 822034179 228932413 543290022 918720940 141725769 591015041 453824819 690377959 598653937 184012762 412436836 772327228 623032956 296533903 986734451 844017251 568074291 983066905 781531125 735025837 459460065 834654969 70930245 317748310 995628273 71486682 758563038 521406653 484258587 100389234 949506507 827028569 138624942 225567118 682906892 896769428 114315580 676223668 17421663 124737823 746448312 89901494 468469786 608625022 379859743 733031665 557106875 101801376 168960418 90741750 214730721 837711902 168647766 607464328 747856143 517271995 856992918 379126705 555458115 106502380 712404461 834400655 798508845 173040730 236607032 265956880 315036424 537246649 399293533 899783267 804612545 513426519 651444212 692069581 828418552 976700040 751247065 34509913 49326184 392474446 855337668 894393378 255941268 474621231 596527855 552284628 85261930 594803345 302412045 174182266 110262219 392301969 268684539 42915148 588481647 206309985 852422544 180812359 50834433 24710808 340079779 190634175 822270079 988197175 827426048 592810045 451512683 486635952 121445379 189869814 94644093 299926327 236447076 533421709 405132968 406818086 389652950 454808750 617181211 412340778 515790561 171599762 213460873 402221264 928712579 182920687 756210184 810668499 380433283 732891999 467683827 644155367 971427909 952156074 301817619 41247405 759451628 624877086 835327534 534546253 391631180 965318273 462393819 830928655 48869589 775173653 21730287 703430724 91164813 503281001 992598210 330712423 583443145 560102114 658361660 925083906 899404691 579949682 450965526 424991636 169057736 314386010 19855385 868042885 396463248 446209546 742421806 388624579 141722915 451629485 596522322 532748776 821601721 17452955 978452573 645754739 694152481 378991541 810905825 464098748 558625036 353573619 187073234 400318371 731763172 526307268 162778082 705058390 405950797 390206232 601921143 611093817 943044997 331961937 616532786 687216580 898828510 698590977 832065554 863358941 129641994 348176124 259983448 76512967 490999268 852456494 875189340 562678564 863967847 212962979 109151882 412995332 684834758 447477538 169145704 364668233 92685048 488403444 89037340 476729258 273837976 152658536 104628341 510624297 111353549 379164448 961399396 530309910 740760531 293576989 893222993 895814077 456373181 156935241 536469860 531714395 371660588 387527824 779963518 210860543 633041524 844569774 435922826 564234405 551130394 516256534 176013806 838521376 596912244 408518346 923209260 195955574 687114059 38832390 533679597 375290013 360495751 810985975 622263365 334050239 21124638 970096926 463666148 999502239 927716655 645380350 704440444 934244986 281538566 709868872 718042719 490625866 396309435 31358029 914096462 990313865 440988517 81481789 714936832 441047457 330915378 910539811 394936966 296912807 603028827 268934577 67696416 986098972 438959353 151711291 165822622 274562091 289511907 717238354 150244079 863436011 553012240 732031334 154983332 207889518 312803555 896636179 796651345 557978112 109649132 303557186 512038597 97402069 953180992 790879301 277828709 787475275 735622101 965379468 567074808 394025552 371269698 259721085 414368193 334216403 904522609 126919612 603519238 503549498 229720673 794190651 261175720 979175864 655569071 70114994 640138941 729009005 488569768 796319513 523448345 480891339 850462267 776162837 236019599 643962731 604020911 953012194 118009215 666064727 674072930 509999020 866981424 37994504 9147982 96625937 275834617 112905123 91510333 668794749 435280031 97411650 792240262 307165533 668650145 664299989 388887134 215175085 26964853 208467848 657774113 587704373 856318565 907507084 479013385 883757959 403386678 453012670 575874358 151359480 522717618 935073077 191821715 326182324 506646817 181371777 877319879 652855620 63485094 664638448 562853655 554600757 370699718 571425927 735549172 823262215 854128838 173972577 128322434 155902558 203554450 300405216 110879085 8881988 461646886 209968773 850181265 996830015 624787535 400963208 668966431 585526246 631756872 782319701 623746022 230427598 703315622 103808419 538164199 789122163 221722117 914698337 636373624 44494731 483750845 454170475 453918290 68628156 975915179 41473681 620179015 512634187 173170174 858484708 203933472 292446930 435251978 293801817 652928049 4349246 952780906 636668194 628278140 328603885 744544829 441311132 156166346 543052958 703069162 888095354 527295275 700140212 418001824 817144245 635965334 734112641 194818009 952182853 282933402 302630844 573460861 949119327 809332951 12138608 106197480 341940171 407179764 963209886 224335527 828180099 797658409 193566251 743231502 157539078 628347569 44102370 628003309 281394472 19534726 263588005 533737038 704072949 88545305 487644276 286965065 712527882 419473191 722440933 832878257 64859509 846400056 833617025 989320643 173720571 918153366 451149794 120506707 508265888 281542091 547232436 413894535 202870496 350812422 39939039 756716482 391455958 557100400 143734537 338831014 148855918 423005135 228581806 388359640 358017720 290343615 452356394 876778877 664289906 663359045 837261205 559223630 181502378 73753950 949531151 855274250 144109723 380184421 454654668 970521204 302024996 26933309 803517235 197407456 748435809 247921945 232857639 115260658 150056125 45960891 339805586 423166987 456268795 379188766 840831327 550295433 262047141 331814465 434535371 103908943 659938943 775115201 830977749 314017752 686891877 660231764 491010133 844013172 918925144 508898445 118291958 174606378 523008000 914987485 670741922 272088415 139117882 449741589 904165347 694756105 741185254 137485544 417786241 866073808 359452734 781816355 877693462 616521027 77545773 177765437 610159567 639738676 336929233 503060771 809199537 434294489 120415681 156704581 66215911 32643327 68220097 31457688 85455799 613126603 404490500 950704972 830086085 484686343 736875102 413148278 88038912 897015815 739265326 246481116 814534846 321803228 184287204 766554336 750882250 769567735 867508150 876902982 939725065 93794493 935498776 124125532 273262761 992897333 783050967 231948599 356190331 779688972 686145006 596281616 281756889 460986300 691214545 999857286 130098859 913180193 344066090 107619243 14738301 22785309 805865918 792439108 555095217 740023349 353062319 558842922 193828915 552291282 556240096 281444884 628104709 892743851 821861311 629389350 275762781 926268354 229911819 51002831 354314980 180428589 188906317 139087942 882599302 645261852 119930579 58866830 219090501 972800035 46263831 712920326 485005337 236668731 362617824 941135528 545267325 82464467 424541276 430551874 828384545 524683532 607643238 504862408 960880914 534647359 781164611 250877642 721581660 859209101 377158335 856141042 383122781 230305975 122060340 811538757 624396359 708667312 340461828 927138242 358848244 199200998 123280069 714325504 143012701 217208971 323069239 818600695 466419221 917491257 731454452 307925720 400852310 356080681 465162094 94866389 449826158 252422138 732880928 842416380 208228310 448894648 619547778 877595376 131780361 452457735 879876221 372739337 335248859 283550758 98211776 918655283 358114633 729719664 843714444 592556725 952220594 760642568 109944307 462867680 264977796 458360667 101097047 493055831 890654517 214932579 475646061 584618158 683894647 141917166 627966078 308481573 12188324 159100716 809830483 739325379 514829258 535895438 823183200 433203645 781386279 668685257 766048537 535724525 34236008 977193546 288343640 32220721 12858642 960460302 376947718 927255135 955262148 794737101 760942470 267864546 11040839 783472777 877313003 971089810 185345923 981758597 109924160 635980245 146750858 753052331 928395022 890858189 912299316 376402759 109332795 671265152 115157543 327468225 333381624 368521232 516132932 336383283 448443503 628287550 117970888 570452414 276067037 463225039 28372098 837765181 433507263 513055608 58782026 957348020 173705391 987495776 621868708 731906455 179424867 679026253 416715747 944007409 366649665 673287639 76529625 784287551 491750893 442356655 842671594 488707548 397010185 643192855 101178966 572684444 522935791 813404594 778498764 303786298 989532898 579650290 531714534 951087825 328704664 440673454 733973736 135184210 172609317 117464510 451272474 894397618 322631831 397724101 606135684 786531236 937670974 346962302 907235522 436217086 130282378 328434435 393322151 822393219 530968086 291487564 883856089 854518569 924412743 37499488 413260007 983006247 792976598 105560406 710619107 985752485 105273984 373118346 983567040 773647126 418600573 401779953 843235362 791423590 859822150 515500426 343901820 260799925 445714641 84968827 794033641 111839305 846244139 912088476 721553269 833476214 464747991 320482479 187214565 73387859 566392402 17170530 84988312 243050710 773343029 763163302 792956786 956042150 789717773 349373312 875915393 91849285 602624622 996621003 517673568 782040371 576802646 569986744 363172395 79601469 679976047 127625386 470038435 93042144 843567553 372678537 718532254 605517130 406341797 936392156 551474603 752944881 840230873 997032580 83615727 79960587 562532100 51172655 847373564 4099051 72337487 222035605 152990252 262595206 477282487 835461806 236180784 933400126 151976925 128417739 45028832 327343559 234103199 546461598 158451778 99496653 400859046 926852313 89669397 771697507 102502113 100235704 116029392 43579369 635802665 2535435 140145287 792047260 921040571 743027 874710168 293524266 14827831 375964912 289607987 279025787 879160400 846181846 896482169 528163985 185226195 928034033 703624174 766487227 655909816 251363554 22246655 148272710 888557220 38369057 164649098 685628478 954598609 779574606 392121230 564031015 754538925 444590699 560031684 990574834 148438635 741911037 521326474 225634139 992982276 875217908 779473106 970758886 198540970 279256107 597613027 577907799 262743506 48357020 933152139 437815072 780116316 159627701 405290747 890487237 547865970 211239320 956720130 863587720 6913716 30436920 723228900 490546894 55971561 981891217 727378528 880073498 622687147 14047446 973018288 497313274 230097257 234935158 948054706 182562681 147597994 963144471 192457420 344199032 994786629 476814280 129291093 988147604 812999382 432406970 292856257 749979676 391655826 913151040 238183900 876211898 712811455 786130654 695618859 353811382 375430688 109825532 419980747 818985641 239133841 392009394 760466140 927584183 598926766 508456961 917886337 960460608 64806451 530710561 851168552 744764244 989794399 596557970 460950992 787146044 471140892 83472928 101780954 103589810 103347291 159187660 288390987 396512092 970078389 861729478 624738685 827641545 520305108 783741737 43185373 861715016 193989529 828566270 718744500 555449864 728213699 291636534 807264820 378973748 423394947 946557170 530209991 417150477 556938388 867611179 47576409 957145079 571226832 552924489 757607376 173966410 410725821 120792016 262263545 863615457 7345322 787917730 597865250 61054421 488227494 406087377 244203197 814792352 41045339 464471602 642383779 120575645 213987424 99975125 53769040 433816480 82117249 979354933 814163352 546814874 293659088 952665800 195260395 833020649 333897318 628885744 216036416 764156358 516455844 674829468 305803998 937948610 631032990 52063207 661785040 330612882 895793555 873856946 363940431 47081353 759582617 167695141 666798613 235921289 188112000 261320322 376183982 799170423 149656740 61172377 409123947 172937056 197337765 816134178 424353452 438296850 457782163 512641894 901835585 469462252 411347335 422641385 124759057 858433485 335706846 924843428 934804864 961389581 938767884 652003473 397600888 186853240 762714423 562224421 326182307 977174635 929149306 984565701 351502367 354878956 623422496 923161384 364825515 659171028 965353999 18064275 567618324 440979547 613816071 786956326 35034596 854318723 835430374 944597114 844221961 976823879 366885876 773378688 785720235 100376712 195207812 709279401 852878589 25175700 329311226 18596716 854051468 760404635 106340870 260456136 574921351 322724329 393772602 949125765 834515300 471645581 907278507 518325778 332526202 877680046 5636974 684218730 711902605 945520680 580266686 351765425 787456818 252372705 698740592 304229947 723174739 518962236 730814572 57216550 633306761 885383481 788045928 708070685 58713814 541374911 364412900 981843785 48632900 253608215 574459452 792016018 345217211 82449756 730034482 164584886 246469034 471528919 715290273 633942019 731412151 467027850 703659869 200823761 20988313 35875645 62102415 543647293 388334856 884358446 245866952 311788516 161735906 589800255 526410943 48704659 526263395 133952011 709342595 825060402 674871248 88369076 652700181 812185916 354736041 107030554 485878639 862498475 555597235 416363078 815151344 477494950 393065928 424713680 171358811 380390926 992733219 102746231 65630290 687025894 255185080 962277335 675803922 959591061 749393791 113648076 780681410 832171324 126910346 386240033 45297471 742331555 138423569 155348961 963785981 547782828 832238055 741226562 977052449 188663824 284260709 200083800 640229204 576245907 199002550 531985176 232326119 107592632 620813434 424258273 591359685 263219970 640277699 343244500 922304017 998845203 117105350 390522106 417142887 253759954 214498768 882891450 440183296 906893504 673850333 996323245 797943167 721440404 770484322 637685760 485546684 40591438 336806762 422112375 351902257 566769186 716608058 886135590 806715426 209860603 373671251 373787376 691424664 46520825 393315999 242269876 78101133 843714066 488154469 847169615 207920886 998053104 793470966 364707279 213006032 681601305 134434650 928486877 891833041 792605471 872212071 823261932 270831226 936227917 949150855 942824048 365014262 699768532 491716577 883364623 663919598 598067837 959986974 490373204 324015789 746505278 752801056 646675744 162669366 717408314 497988760 421045113 134558996 382153075 196840291 792813878 799239590 530497438 516945728 247287026 263609898 476573069 512602130 657499270 417933149 337052822 248885425 5166175 322338583 903164662 510029682 351000756 993505855 269024315 770908120 282456612 460269482 863393035 920421329 448529962 950478797 272495639 594651007 252223454 918513157 130989896 14068666 110601638 184153693 985659271 377855720 662147719 483419861 217848494 96817789 727405846 464164435 232612436 785342657 470689589 207578574 364670481 851236542 71867105 445209022 996838843 479584452 132000948 172509513 332444668 958779329 335021454 546060821 654798176 443686114 801882697 968564537 423060611 997873261 541394281 495469979 211433098 263715071 860902496 445357105 978401717 321252429 728335027 651163037 158542486 903525454 291493509 453618153 705562235 561030407 951680448 486588257 752431996 423538395 411866887 141594400 952275406 5950209 320460301 791910524 47318788 700809199 573779852 237079410 203857423 122847422 263100301 155424334 439820749 440544145 861973540 275146485 429649794 199727171 729958421 60815984 928276599 401751017 691872911 413795378 917930910 453978941 185424323 656211175 573613794 382681235 694961402 594843475 740657536 83500951 700587248 52839357 180189345 517161095 790745165 983871163 961104972 273390143 604110733 108676107 90132144 148502257 795841339 565875511 511174118 738727553 749218250 873995872 383404306 364061881 475899487 858572899 423072039 508051477 128029872 769474596 325303234 404858134 5052421 69281465 115710779 304630539 698288865 417088991 447965898 985830843 808145682 110736377 823035802 159611108 237394161 685806560 349302189 606554657 811426414 830754123 388755071 281489697 403859289 960731555 241230642 205226120 661802581 729684460 498432951 552535384 817417947 693664337 391944982 187992580 437310249 946257655 205312522 665883833 3570160 418780440 848530829 899068979 176019109 319233380 50901611 689762186 157417417 350258832 974178824 848185974 211776212 536760322 580989726 387617192 835193606 282103751 764693767 941522051 761217865 144773790 666011305 900406548 683072610 274581485 277878215 566244175 681991380 566921848 245316336 909984138 105160951 828504406 526952553 689210398 970573478 514158798 438086430 569860403 357795455 795673544 655548582 135823992 380523894 39391667 165877091 637712506 556879370 336460930 22798011 468176405 564394441 420963701 18461440 156868051 341227764 17034892 462657451 200260527 327214474 725757338 909061790 923237052 863008007 424144955 97254937 658416676 555486256 888076629 222671027 64564617 51102574 300294026 871403465 381948887 490707936 749577884 229484425 162926889 410603158 215411882 645684624 438544647 226471555 989084538 711338960 629103848 673834632 807260223 89291817 343918689 517748916 196420545 352473433 985126050 149697915 898225523 726680376 537396385 209147380 675873252 630741613 912654296 727563377 293012051 708576217 58663698 2725308 225387101 180399140 729148580 759122836 584426582 426737065 482213501 272713278 101722453 109184359 137446596 210543261 291378553 904742610 398390037 396050579 949727369 473014734 945144460 418312403 61412385 934719270 89652912 223317359 741224133 241156678 646600983 629045343 804158124 86786631 180037715 94157072 999318617 812477600 764708679 799913243 734958323 198766781 148629915 254662893 532616506 860516859 50293681 158566406 569818009 38090184 399560154 752085270 786311993 186508974 865306850 7625833 727786654 951245042 257411395 112478928 115025551 92011457 239006391 819132998 476557066 288672188 196330115 99869737 690915505 733317013 935615232 250160156 980850555 755267302 497608721 970393656 844549694 556550120 837114971 614919653 316820799 810024876 321200115 452473295 991584941 523669920 837231098 710122357 799969052 50138263 504478098 79660612 890712744 723808679 76107349 268325778 640811932 888165701 149612717 219898422 773882686 220586385 481930293 734852947 365253874 750580158 41280867 956598945 869960793 53560417 62835078 903676827 891050296 802138875 938856791 429592560 127628587 398326838 390902471 3864105 382052802 293836597 617811834 761785606 290689836 497355040 570109085 511907038 856954797 602093493 109654062 634130226 162396698 296557827 723913496 165054480 719032935 191416649 153106066 522394473 28790698 643403863 140826147 140022052 660845678 290414543 280494956 193921993 836161690 127211789 108607877 723311923 331330526 781092834 538532961 732084957 781075087 831760149 463628638 627308200 887112014 253947540 661041656 710159072 644641023 378394229 275300869 657817706 265879155 46535589 948594695 737678971 306870359 354079561 580635046 258855706 674747448 89484187 171203049 481676247 534445099 130836307 920929601 519807599 478594992 344770839 680488315 487318806 598742658 58621332 89986372 919278032 998754472 299566704 547934027 229544071 496152101 426596552 193245007 814309751 270328466 511120379 980230668 61535307 755800185 52539013 761986536 438493854 39077050 864241279 656041327 620940333 6188895 65700287 213337110 421093533 348116599 886806991 768699415 60117260 378278085 559522176 882335252 953595701 341743836 354098512 457695597 491835541 543977292 251991267 438163705 633270850 105227456 692003436 858809400 96864081 776710289 6956828 395025285 49371499 151663475 81444056 163822859 867862229 34470851 421970750 323318453 826087375 539562438 263286510 629669590 110285831 198495083 795029513 663097479 973315691 354045934 487399392 652617430 442876499 858441803 876674440 107462537 688600528 15197389 30278861 376376898 119517845 811658468 774474559 973223617 408715072 787088014 156301798 950062900 136923666 473239499 784045508 621773298 633220068 143490967 799943927 228581098 3112040 583393384 411440393 921808494 708410368 694886622 605643348 422447360 858637506 792745271 62531952 778377181 155628178 534777739 686342775 369319727 549711147 745056405 681403450 789422196 799418525 197556434 807539425 557125941 426112622 638802072 574254260 602423343 550303254 582526299 737575118 870501070 764051173 648619877 334458231 784858839 194336976 981859722 807119232 549337727 195756590 672919976 502888862 309353227 132264834 923197336 302421876 715762560 925558048 744066142 300238563 265695443 497451724 831222303 271311342 845068023 724647059 671050087 961808697 703842273 316247883 488290216 283290801 165137707 87897706 389398546 540639846 931889039 153443348 132187014 252144036 755894927 999558444 873768101 255199094 302441482 960260252 616979484 366655370 5416140 770595471 438214547 372791352 625258533 880293543 854984913 324803954 194487499 842333661 581982620 51224502 604063716 355867165 251295347 37023684 341727928 187501127 243504350 979083476 298397134 791345421 940545633 369416830 403358492 994889985 123365462 370466138 280309416 692286871 832772728 668039765 863786564 242415841 966593435 95645962 816389900 189489510 189190787 726945621 120115225 701747264 164454713 240708068 938505860 519769266 740644943 482177388 872611316 104882702 537907534 127899340 256836453 150129729 366262087 282962345 603755411 52861569 605795116 231538914 612615580 619888212 978140295 862665225 255965141 264096451 769529085 923323751 767318343 484796692 570242967 949473684 380891280 318244985 52370075 601065102 879365945 473531174 917503204 280885496 70947980 915136523 785150879 843761113 711608572 807516943 265262663 729185337 146394435 983024691 971030125 109993643 352571251 164760235 408042578 14689235 173406181 746906974 558605322 241393952 273594019 384591361 304420914 488915869 188896419 714633836 223440250 969619234 527767197 990255971 68967913 557159690 836224564 278075972 703377480 915259462 520243733 762278481 152253675 61472604 62353250 445770880 550725394 829100873 440279844 728745416 102103774 476574260 119929391 19169627 415695078 699856140 908528505 700616594 13675942 619639422 698592500 129740392 989105255 778722617 577118180 63403771 772743363 132524747 507106110 836296848 1505285 315667393 313679383 985443221 318863799 645517776 907753421 757120205 579730376 811609068 476275949 467863310 515536236 762009072 473546340 449781134 897542741 582364741 120249412 584600583 733548734 384644800 131694853 862154636 87851041 669595499 745232548 756333411 279152429 312656186 495386637 656943947 624518132 295320652 861897531 627128016 11621060 973715840 244195551 746877877 67419877 258723655 736355581 316180988 639946122 286457495 772995934 280626501 641339343 234409049 18611947 729509965 995723323 958237199 315625174 946597237 323285272 21619204 120187647 947658442 196574645 347246802 584485422 404829070 934044747 770396092 56292968 358536828 368849937 549992937 363526922 542844636 169476397 582318534 570150364 673856668 951674282 328413022 472149352 562290914 115192660 167897056 162876625 467843776 677136704 506596130 394564533 315669228 944258243 267218356 350155081 580196621 999242426 357121420 965432196 558077657 802872348 79045127 137054247 77279057 610617170 56772887 969691987 793107396 555229819 626122011 172735061 960072075 267444356 889353383 289465201 709959025 129950420 962910667 675848050 591604813 943273691 524271734 901224701 903654519 511240481 972340939 929890502 889347377 476063455 690688404 956281330 654419368 784740390 500963091 421910767 344977670 174009752 431086919 366850747 123114679 556186088 942131810 236847450 78486090 173735789 64194134 519206926 319195444 792551266 424050764 212140747 543266041 176446028 808674345 991464135 750701540 665422966 848286214 134945517 277430371 735884688 13012595 843075139 297041845 654875847 2020141 87012086 990391 445886656 105840843 354410616 533751699 778681808 297866207 26830612 324189720 255806897 64353094 314205833 633120493 799889435 87554613 966241331 300009937 881355117 45863041 313168427 638500654 793972247 657029889 566947347 962050539 345720475 116201105 293579240 955621757 117589370 109610704 345828451 981392580 222795374 219799625 47947440 207398849 260622210 59701980 728542736 184858371 622845035 963236165 965836011 746652217 315467200 616011879 311344470 672848097 618371783 424272738 152045521 932799477 68715288 581326754 824404398 732933255 850146640 17240837 876277000 477341349 354456007 963241512 793312119 614551808 331426872 528899469 500218413 680997608 699895452 123020377 690859191 845427463 644529131 372884637 435194753 39787045 649771410 543381373 507151739 990587717 160681565 888138285 89463456 993645703 714897523 910190185 721277514 657737729 226949513 541373593 101644054 858691900 996049479 933778075 160371707 522338059 397715022 732987883 184849328 108002937 727099032 638102939 23388089 92236073 993060999 590099547 627175551 923291402 141290504 965570675 408547574 424020728 65403381 314670185 591894978 965452505 728017488 723122010 770598807 296766202 19424469 971756869 681014284 101780600 354493527 725906109 140808409 649437047 40103176 571287216 918281980 403378893 884127293 495879886 186729978 661611727 835022591 485895930 574032065 788652356 324922851 817609856 79488936 126660736 299693053 640214667 724618145 43098378 679810469 478231123 86854005 839359633 579846231 95688109 801350756 42565898 21248709 122253076 197866400 549218698 567815566 580335239 299718440 484242424 210693874 874309536 323380066 921789380 94166940 468827851 960331682 464546230 745379397 307328651 554202887 314786908 419838690 776165174 256066660 273998046 160800620 147640525 651558554 945092071 687333409 750005887 238141726 70934957 614028780 342374571 859436385 343524358 861726652 357670442 577920449 477374049 691962210 506840690 211178746 933943543 471387495 78061143 625277096 936752905 505358446 24540999 819231097 103234077 825041676 54639337 144876683 49531604 37130622 667621387 479732907 217609531 830350211 658008685 406592966 470207359 249253785 314106518 963882327 1551458 677461138 123934531 800145827 760653383 675524551 418793079 716070416 249602248 548616563 513430508 789081169 696324176 311772781 896917660 875996096 332787178 446002110 829853113 5598693 709418057 9308339 111414317 859019864 646991562 55813148 67364721 66510285 642054894 82106864 156895253 621114782 366966540 60086169 576921202 487519066 128689570 116907393 167821006 322973998 776932140 244737663 503984586 834638740 967075140 512643490 606021404 482334634 625759854 745262009 843908926 392314683 286609901 124505559 740763373 762560727 980641215 868751177 502671940 526051682 498975138 157360283 245530192 67807192 350864226 868830881 89178682 384389574 491110081 2701236 767929892 665256772 186027044 672909396 782991969 287184336 841976946 409429460 323937877 378378091 976352419 620581972 455070824 324481453 683579442 768709053 276000879 656344352 687447930 873026008 602620553 861902164 881446846 928995508 539097002 912636 74010204 209296248 248605617 974910662 518379758 23069183 545315215 828057624 271169031 67582711 787075671 151051544 515849838 225880589 664689707 187748789 337168311 820397686 612893787 257205733 814418749 435748604 79033459 972033740 456360896 232504606 53060790 635608485 554964558 667783482 393069447 363371777 922277085 654340392 680957088 836808579 703145967 955759670 100333340 5616467 270041975 196465619 125158047 709256989 26676511 908475960 777228200 125250308 429130883 582266364 152575694 277352705 16565697 906565774 774565989 816611940 929307260 509348814 161473255 367656477 281196327 498557775 721640161 711216158 330023369 917717413 48383755 463765001 462598114 882887611 554730746 442394508 355189039 807194396 847485686 27151342 421512685 635762183 272240112 916931610 774260295 108018564 816121050 417842736 952056014 261554361 14260663 325618876 838077551 940248326 419507887 100160617 766479043 422792221 709138913 682853518 887722023 203068691 627074503 245509738 536327042 361134388 247843798 624666864 337864875 139643483 975454532 310065681 235292250 904328460 853711318 544385245 657978447 745275849 565632390 592830172 148411129 483305540 152363286 312196487 228117129 362458614 485651296 480388016 240191387 333872941 650483051 36844497 210585254 606889280 25755888 936747412 223841740 874787765 127743301 132547901 805608548 683409762 494574540 560101895 58595765 390993162 114025582 765445075 568782432 628793632 999624716 529874772 629364167 341981402 261143433 252807862 724136778 896705865 280595246 696272710 343975053 60942732 443545395 231901769 161082781 119770680 233982104 39833462 935713864 451435273 982154588 733675346 182244799 901517211 239088759 325732521 797162109 880741246 457740511 191439383 674935566 312467771 654903196 934340796 448274717 897224504 76716799 415914768 287790498 625503711 545921366 584417756 561099605 696940573 956795670 140682312 699253091 489849286 121941592 766857939 152262197 283284562 791769761 968334800 481095495 532251118 939670367 81443702 33191351 370006454 409553056 424941721 869895265 281131485 981138282 331466921 38538503 967118249 360821903 470587501 750504683 545043519 619896653 651336446 511318407 200845081 600065160 784034583 550674719 784459212 261078994 844815244 370252328 679833621 274648110 134829647 111067885 492901933 571774526 136660113 563569683 96285456 644753323 568328415 20248892 592657446 805261011 210055311 715558275 799913800 614011292 794024338 82275159 81082842 161032530 869482701 911690154 60108892 234194386 494657017 764104027 717755174 806193206 281580254 620606954 260859061 247509764 490351140 847224089 662772458 147642583 652124687 787115392 797841794 282276368 504014796 577452120 344896466 738446133 501660727 538746699 388944179 150856362 722149430 616020802 804435526 958573780 516670792 724817171 324572254 913378840 814149923 636713440 54696598 79665444 957615242 114699497 265522292 195027676 925622300 731429646 78271752 570836355 495398355 990853065 286925279 761921619 889756432 598194286 96244859 262931604 395743822 993163475 503470925 334119979 251351601 305346635 946045816 450998256 73574870 500710542 333455369 478278226 554848540 585705492 788267347 150034178 12755159 648003166 617601930 759061468 191410774 110600780 710073491 134483577 948029497 487565612 127231379 61317553 23062623 990963947 475968374 370819470 951342613 737383489 805003475 960037196 20841089 909085009 877447433 765461241 83369209 590926733 953192250 231716052 337695171 955498887 152881288 918258320 758899003 363124784 638983167 298590414 942695339 661456258 763133180 666267452 83808435 239252234 72852178 280979560 283500777 512968576 738010967 901746992 154149422 402929253 575905516 711143126 68668213 777545180 253218658 518446781 655333016 219787406 529825013 784091040 137553369 857048048 755089253 664953627 420165160 486514214 617605776 108892972 73579221 904135103 256039263 234644027 329493727 672970587 897335232 998040303 331396590 758979888 264371505 376209777 743698005 818888508 117490980 325895226 567649525 217742369 950824084 921546623 78755221 978777495 422472769 356549244 3364123 288313388 700208596 349514631 409235041 574222240 735436971 907782588 823129472 940450249 112767113 207402517 339514144 448800735 84662405 603739892 359497113 782025612 858173765 706628084 499710514 316804627 576535594 380716406 563148660 863811076 504573172 771659670 299100856 786821588 874727576 940182539 514598087 347078546 192587398 230996350 649580716 198444396 884495705 973197437 895758786 536296345 334197395 896676853 484923801 473972427 669979287 626923730 465809430 199291987 48958443 839374734 463928989 983993019 580332268 210893021 366990464 693899037 19465942 922982997 996071009 844032498 487982270 251905798 720418958 897996440 778942534 701279425 547660183 907487853 46399529 559537345 530620841 599234653 534024772 160544932 673821982 963322866 249538691 28578657 785408379 733739358 465606649 180562655 60124914 846958670 956883224 255648153 557910454 716646906 979704533 372055808 46697777 651057471 711703902 891801880 833984277 766068743 184798280 789291965 148960497 964420977 488028481 16604476 762907500 996994652 453908828 815823926 534099352 185066194 498801311 799064053 993967168 236220357 896281553 665196272 135620929 683381318 283900603 50331990 35120929 856583402 171240492 866028236 236703054 712195985 26752082 160479797 612492394 800297913 453751687 913275350 602729261 852788912 451214484 531345059 18547411 338276306 317862000 874134116 193553654 153693043 632204408 15997919 335301090 515684451 483501187 932480632 526525816 437489737 732243325 723956448 307303817 797795541 912014475 976388189 303814471 776612974 122965036 495758447 634820252 607166176 12280783 72986354 823277027 52469952 665265056 863750380 502521348 92895634 42273434 307585607 713699820 737396572 968869416 179708595 891477080 463781753 563194935 179632473 926820833 221261945 548032536 427613419 452691169 145906282 467928094 229940989 933421987 426611304 927223691 807578312 398403449 374977673 286552587 480455508 293727581 107940363 615253772 957809800 825005479 884924469 635919298 936089757 11850503 420206693 715108725 13272387 186707632 335196175 466908353 832717794 342008958 740226767 82074662 488799452 972950336 450953809 948206775 385497886 462265958 33159539 380331815 61442829 211665583 434106497 662939231 434856101 908826237 371599497 614272516 792784646 676176072 183087386 489400684 386808458 828306403 141857928 402649189 475192997 78102386 289716291 864225820 901552772 493052530 77701850 608153032 563177424 246990320 83318072 546433464 192328816 753275276 175463075 935979944 978207648 185373584 154076593 2810235 676830328 258590363 659394610 147539382 863937441 248011938 881968715 485587590 991958738 595961723 734189512 930524076 311542621 696390498 643794586 468301489 940027905 408649643 780623665 149186233 805585196 228843235 720183573 562366405 796415572 986291306 291063955 681821016 605226215 897203788 50918441 115918054 389498391 291304799 763222130 342628114 1710665 881449207 894852799 486604603 207111114 677158612 297471516 350403689 678335558 678224285 749023887 352857960 448723273 21961111 922900960 60740095 168850958 695420902 860928701 317656938 694936947 89704051 218423021 118691704 919523894 85576269 545449631 494194094 452847382 799981354 614792965 644255362 457718457 721960127 556896148 318850742 383623378 650608240 491073372 985264935 277400311 654771001 886119328 529165737 644791763 967659810 985352408 423204418 512618439 801775735 628173193 734828671 216681831 859171758 271013468 9513283 534749913 65530543 574703160 157111587 551628337 998599917 924429819 579587279 58791946 933681109 279557778 126008106 185783002 884421394 886539070 308197789 799189420 733943155 324179224 239624041 921596610 480904299 816294395 558035804 688526148 643706482 204972841 554031905 817038316 85760350 360908788 418968039 487028300 853731729 602268000 590208585 372834527 548323429 827143477 127688021 500473146 127822446 261665048 607856537 240983965 163946474 378492553 756516198 325967867 290820575 773076309 46744198 861221186 138591391 814787030 809845527 478032847 33148668 952906836 255696460 673681641 11258196 975686070 870583627 820503114 12732720 462941372 473008874 466791304 114958045 689804941 845028205 979519140 112064120 389815655 918245368 772434023 391752229 575328048 637409669 31439564 930497703 158941134 678424908 229224631 207342949 985964344 134373982 334349248 6329050 725601011 62950521 752510248 761540244 196897573 569618382 436462209 558355076 773599720 870498525 85338144 622936632 862776486 897661716 963691211 789816264 206019600 650192772 557289579 884625253 535517980 809530572 308661992 815394220 961896179 488503599 855003357 126720464 828505556 233682925 571276130 701712248 451932316 654895783 108424088 446373453 995271589 190840260 152619544 147524202 77881924 676426070 112038260 77572836 408738191 716680107 107316617 551148187 594143156 661255568 700840006 157179634 413610136 932317680 970387738 530615403 113711490 572244617 989823167 154631646 564504487 322039455 746445946 751801806 508736779 379406912 18846819 101496556 722871977 297137335 860251629 734495357 478999338 533770191 136235397 492866644 783131307 458315113 944490464 91124919 723128795 124501569 628793458 996669416 270287196 136818848 136899938 622584411 175551722 856890696 661566878 440178739 520663555 44092840 347929974 544064183 87030236 450600934 788443449 472479995 124334767 724634305 739714250 148434340 864842544 868567484 607525073 311046174 61536425 755159895 253723740 654997623 161241984 313282749 146029827 138106924 564630124 38300849 326099073 964762500 890556092 14051238 440119405 886401707 364066989 173248040 628561133 326374112 805262546 474942367 39470963 181494578 466632557 525165938 373108460 733307207 288903453 537349478 453534692 100413025 111927672 455040163 16977372 187857097 677101378 262849302 871897590 172361156 806310765 10637751 532867694 75917266 262278470 501074536 118838476 148515980 712987558 380841335 476220257 91901003 486780599 535882478 584188039 630771638 454866862 141725104 89983335 442895399 268780197 193719957 81301534 259574575 581072469 963143788 133804309 247703243 15769596 201877960 460593290 847690357 687903275 919759567 736335068 423423554 61897680 412699757 494673200 517052012 56725013 44466193 397046007 390423126 956249942 290933014 303470833 271452563 931677762 200514016 955712044 874283425 967625070 110523826 519576832 2385890 709960412 981142212 933531840 559747163 719617690 289652638 747936277 356491915 820224075 883808888 567432323 719986915 110896993 807395465 214163691 12953341 760083738 883560615 557033307 630950445 314023873 735850108 675827129 576689889 496652577 703898229 817530815 931514013 281445810 664434016 514445720 196665458 519030395 20897679 110225511 40809086 942000031 709972067 341508500 27334599 941460273 596087584 80751499 196185560 610122607 254381026 56082400 132291195 235360629 676992108 457302541 387849332 23007622 167078474 277808531 503546385 978384542 362379838 602221161 150307841 759100434 284393363 897256018 576963502 538826979 315850317 658088299 258826671 106785604 345934228 948881195 896437826 846206218 700106831 305513444 866605323 508581628 639133121 935962588 367268515 510379557 128093117 993855388 466998899 691458117 352512763 714668537 336449146 923719285 832666369 547013922 915538603 883514562 351215787 903459039 915396202 282881112 469425230 700918584 250924217 738586458 258707953 425053918 815880193 333374843 144696200 456985120 192853960 782079276 616441763 836337521 157220131 563630009 10974718 661780631 868439929 37712804 115768931 841600506 366127931 57267427 12904983 806166669 628851868 848455476 28631965 961191126 69776204 557976485 386058599 441689756 844779710 328722604 551885898 783552594 337696014 317043837 537193750 682850606 896702123 384028360 634930121 28323933 967291911 302522519 667222956 25948069 180411708 660595210 936413004 336155863 695209158 649843903 965416307 675580430 955857689 599452201 179725003 160613625 660409204 581267172 264102115 726943654 246913770 114324013 337892515 494764824 847834822 117453021 970477680 130419434 738713958 692207950 216012320 790745081 605759775 79702686 610799303 884340437 969574064 247037335 344646758 146946154 261589907 971329366 275439331 628314656 633233995 563314921 515463209 410448128 270572291 229184003 330219010 396709498 717831258 539330003 350393759 754425825 910023247 765445534 637022640 60817086 697790455 331069517 59201725 939655871 546209139 100564654 42416412 11987751 391956503 985376847 526091034 211184837 125179453 622682608 17730968 469182451 563378653 649422102 524354688 776031638 447208459 500437326 403558468 651258575 506261417 211947793 185322650 514629315 707659134 299557564 807497026 572139160 469157746 536002397 144946394 7766121 11462813 619753065 66392420 247654619 19700674 885599092 561703991 831846906 257405117 614586459 833160736 392675626 887035329 767381251 144794159 435050838 190061477 996316299 685365644 226149666 639176361 978599306 603930431 111952727 958140077 602537368 896357532 349372199 751424915 54347752 695565035 345462778 712421237 482735078 927356820 216895655 393257783 868277704 448441751 464963223 559423184 849660423 72892902 546804403 126879784 633374527 353998436 293274671 424195072 342780279 464247640 459248735 809902751 216900897 379787751 496231404 644643596 532591501 353421021 18413480 66365507 204185628 856427169 775507864 935160190 377501653 881431453 943600000 589522107 889039121 374119808 249179724 880292736 209788303 182260579 574940534 550936377 452606478 60600259 67178157 86764665 852046933 738657334 588708430 981375127 862903772 308601507 536277876 799168181 502151281 185467982 983025425 143720839 8669693 114531596 234194024 6825149 767908734 615770334 431133647 674938445 739277549 180781888 212464642 979822337 206135284 382788915 573430872 797129960 234073083 10925499 6899315 369884154 506768354 167936725 840327517 38121506 17933100 661465579 306674862 810188908 192156946 870410194 211209374 726839405 445261272 976638924 516182588 804245896 307790462 415818250 832307071 948089849 408166831 848914302 884522570 136083847 69563902 995826026 944831937 916480391 705154004 535224274 343461551 282473506 950093808 844612341 931025709 611486342 883480483 63159221 708850830 773110670 126120704 336024153 88681987 938338338 752769531 515028390 377906168 94945601 28939595 290028692 969189524 907617765 912394446 435825793 560417654 703534106 884843700 835710033 793180614 51656079 70905590 293421717 603862898 870556558 213241570 158509766 266629663 554799695 345376374 888898406 613131844 439099294 883753392 75715044 528615128 341226416 118287382 529122640 978089077 781092506 193453617 301065946 583447660 122695034 167777889 625945911 58424140 89870212 44530235 301565653 358536622 644301062 821326326 629299423 411952971 342404362 26292716 44085105 568969043 678042546 314989878 719815067 255283218 822670679 328677432 685464456 1675760 380973471 340600661 733508936 535006381 125117165 843319084 815251136 915968185 452201856 46114343 194871796 200584713 190251860 384468184 953171067 491309228 914033067 878124304 455024485 109107641 132789092 389499341 465083669 711683535 908363327 742531007 94031739 560172072 782347651 940576341 724715863 537345987 951125456 125311937 750864263 650263502 628382790 381672628 229727703 612955441 935896887 426455410 709648403 508133326 185709388 117008713 723367651 561761943 846137304 97283137 197215477 345349392 678102858 668607581 10845653 668422451 730894546 806924318 684595547 542005026 833989871 88371611 304749778 78048975 722458366 79114171 994188445 574793694 253256717 863433043 545117610 55267901 100524701 87569713 332321446 952143424 535062865 224984391 603622673 379620060 722555944 102578356 285512290 893166500 429712420 370155081 530143584 412485228 314206266 297277847 678245693 69937904 646107195 73573395 831151782 777056132 11647338 631548682 280910609 366010599 2106281 927066936 209689081 789838122 930165688 814246017 731431390 943203791 447852681 621341280 709108614 171688213 704146067 952622611 246980499 910542682 2306176 264702980 500611420 664956045 814202019 916443537 232354181 618906779 257887210 667554746 811077183 48844643 474369530 242873781 399919752 655633643 536177273 100871935 602055083 175804635 326050999 983970636 447391260 518840191 486357899 453630867 647757169 153138448 537356219 189932484 75037699 901460467 345252715 218725743 549392557 702902625 859681663 174212959 888285373 567920306 822564664 962412946 167872937 509221810 306371858 754316819 442809921 313457449 567550082 645374384 661242734 317561852 183474207 652149676 751608817 82790442 290784239 770696242 411163153 93452108 34477659 484966128 770876302 939691170 52552203 717579801 318848895 356046838 923247383 329913987 718569818 525505494 955179396 135865190 290203808 738729881 149588185 755104585 119414054 230341649 92234395 726674368 381761248 6037555 868390147 389449345 56674599 560399135 2406457 204075677 200655922 224798211 776678331 961451162 88967584 593329042 223686144 88367906 543162889 696326100 131109577 484216294 185086589 721093662 659488941 663357437 913212973 338687509 472904279 944313865 706055621 502947670 349297636 139553615 557776927 771162967 30895395 872798858 257925444 266889338 309171293 797806196 448115439 707301955 601674797 870072892 934246683 386212596 287330093 701577839 227659795 678199485 566328966 856093045 14976817 700399028 695242068 828204503 364960257 353447404 120843705 31727099 306533251 157707990 393441542 993451085 158080568 161428208 707954251 458577385 638035049 950724245 863227459 355424305 514909370 828263099 150874634 389313736 331318351 249972951 431515710 734207070 625061309 29361105 41859025 36471058 912258729 320749174 606982771 649366194 144471881 866029779 741047404 765401978 179290768 473899923 228061247 387349032 642129782 617775636 447538900 338533564 740274488 465918402 266520920 906234875 897410005 181488320 889882047 154185567 110276720 765667420 692762185 239721530 282340433 392294172 547898045 766992717 681905442 188196855 277383998 929063938 392653809 929353848 246907819 487217860 16138908 334460199 59325333 618511056 237971237 284308083 625095663 147699395 77895725 486108657 942826463 57328370 14337476 620404776 66985633 386146123 766028881 215875048 497304192 905095033 563733524 740575705 671090697 735341860 51358512 484805146 192939987 343519585 29438517 615858271 125494224 517777159 263726775 937853672 477700294 80419154 172624559 769036001 639283161 493533938 304504555 416809735 111234876 196390373 124626343 595601475 715188307 853336074 715379621 309168352 865727160 297148875 236336913 391841084 943473315 33775488 38536169 892994993 9407271 489412542 133380994 683379347 636913258 921684654 542235328 365075504 74752621 608126911 971618661 88915505 359559141 438846419 455502760 781272388 52250385 205031339 855602240 313133293 636192803 383346379 520259987 805711749 424162110 11363883 440088223 538837676 21370086 922245336 632784978 248550760 830958003 778217825 64493936 169543675 465557908 167697410 954882602 336468653 169921295 691047669 737520616 780015497 782706094 305743227 522916712 345250681 869960415 912268206 939280021 602922118 407147100 730020019 674048603 467221317 960879778 644680999 565610691 434566909 351870441 383140076 188291795 179010272 130379595 123787533 744839154 324251598 941017216 432269011 444204951 527296171 300910750 341448951 66446941 342949293 994422509 384635874 793480917 307630931 550943802 233938032 678314995 654487517 146547077 496605646 429215678 348345821 911582992 274611393 333026893 547698941 64798459 407856825 310057331 718713791 829069916 209762329 540594673 225779252 70867548 236575552 297125352 363755939 738449754 219519492 258612006 498854481 758199858 35827797 669951611 53628021 46008951 376444150 205561499 312594084 162387097 330613892 155065343 196487645 613706698 251468570 402118117 101254867 970077919 251060037 428134500 236839712 809512654 11540869 692427429 548877237 430036866 873881478 628042860 680927802 427251666 923250119 54261821 806900593 788230423 149671257 76215434 603583234 262067529 896491250 932584846 136875402 311151268 293990919 349378138 209231976 133703786 364928010 166357483 140139966 716175971 743874423 27462010 619917445 678155318 974076432 618325753 674430658 491244875 63593355 947528949 42984643 582380961 366982127 290994185 873527298 884304498 50652190 489057894 493310271 55067689 222742251 684269461 404304970 486412931 594437808 963061288 190661992 793853280 904486895 877243778 504572433 351751738 545623673 61756374 851492240 990347099 173112202 670605152 190485335 69359977 774919986 525561737 117893969 416626969 757272471 108750381 31903845 837684097 238599449 440336177 473842804 296091103 208959191 861992696 165926508 547410708 181760820 180052481 762109065 644266218 947064940 843080216 73105278 262762267 107000271 481330355 460647533 608344784 483449940 911488502 295106040 725407570 488450513 110056029 754747073 561229481 469072380 698824561 185653479 604157387 314618534 746747659 188558368 443838904 668947472 369987132 403550979 363301819 824270519 945501467 328159627 227354765 985002516 97166423 764863221 364325323 666673155 64987971 169878249 182484934 968278904 943778948 718954652 691313902 414708809 416501114 703049141 700585605 922090538 508827704 703678393 328550327 646378470 916597421 344990976 567082750 153289335 676313011 975986949 5862739 478710134 514733656 569909888 660258418 379254743 446096906 714089205 268030075 424998322 295792952 236146872 261213771 316625134 911526857 735278417 941664027 153108953 60057019 299598643 375622290 378029537 773600532 40029146 482119786 433682581 866970889 134842539 433185933 167714481 626967385 694207472 690075708 188875005 433133378 793167749 730403514 773989462 883793298 606778123 925557537 66599130 355709922 819533550 693336499 376228230 689572064 524879551 437506906 985375211 839539013 468070712 929894539 471662421 575926916 273831922 926694467 752732343 164953419 136589292 623719919 448314546 54696827 971008991 497897244 576535267 284572273 447987355 18118680 938396056 428142528 937114311 715267039 933732091 483577079 497426521 938291040 795776771 690061612 894928506 342972794 237963572 248792463 333711980 67235509 45478533 173986067 539709936 883631119 469036660 887687514 253399914 635744947 712570707 983431023 705878306 447859142 323516051 170177490 636344617 317757402 132116189 291162425 641860960 338058568 609780831 112179672 80369964 504042533 91198022 469624668 517646060 208302707 505623378 897056690 764989197 631766907 540563688 549725192 181616023 607373559 352864284 7670083 750444007 776350083 594472101 68148447 600605050 695987254 80236564 527047555 95607738 658998334 798356748 919762427 343768625 388154057 803864511 750755828 719891600 670306138 236279049 998723230 640326939 420730077 324678769 869309148 367378162 169645172 341927955 688125392 349864582 783787036 369693637 226586046 970147201 460488267 179696270 46006685 60502281 69027445 573946779 510593646 757561272 131660137 5149333 256846948 972692589 141711549 128465373 601712780 164388217 854971816 373908746 141870364 875099815 487478736 640822406 46566767 913949138 739554245 497238381 212943247 361130692 523364740 228580977 638689337 659214341 528336221 588698666 956369794 826765948 805770391 871471657 687499600 871339596 730059838 857387753 651876997 799468883 270609301 71809371 687996281 992745405 772627850 732824245 911998803 118118878 402217504 892003125 204488173 581673378 987277328 679070675 807473644 862501400 832975293 682424012 945805454 95512378 978379002 377967836 672395461 871074485 119976069 278843908 895035609 298487703 59086010 409757636 792422135 725976728 767870311 184140565 472873327 969980584 901595271 582223782 477483573 317171867 101579798 197381941 559658616 958542138 58546255 695038447 339558589 165524299 498539784 413518340 377444393 918695114 115559236 520091269 632144592 525188109 686464441 255334210 648788499 469814744 504160608 404110565 122637722 626620961 546927758 90348639 780815314 950825156 77065126 639754843 930798547 361968974 216713966 90748271 221939553 486241394 427293529 358549181 399876301 285192440 103666125 891892735 529621560 499761576 180668900 622788701 136428851 245228629 316432074 644492610 983697597 16513721 192083458 696624693 609745851 951126949 732925072 268414082 471644365 643360626 54756736 919155224 249730570 405925762 63712351 944480567 44641882 153308292 331146747 290531453 624826287 635968890 96417012 569956591 538874004 156247589 113943724 430156924 868839534 141436163 432441316 973079011 792137588 633236574 935103455 408129531 391791236 927892332 942358977 707872360 63196865 357940741 473955701 962196367 525065386 197448855 429605441 909320921 538641770 63558260 809323995 192824754 997793257 406985781 953868700 864839868 569835907 986151095 408353 642187251 468533274 782814489 280114213 525312432 478366243 253207962 618434298 44826154 86758610 656718492 38486745 156288522 715464172 903092935 925531343 959168803 781346578 591513353 749839735 139282700 718984369 141552798 505599235 150817621 535722463 813704312 960288224 868389642 351603389 345590598 974794947 117918933 274302972 873000721 60264570 502400714 313176130 852018421 268562977 658629464 561159570 382475760 968599723 845189374 254969497 155378763 731708477 660249570 863141742 717869126 747315509 923061557 752395005 811061711 29573486 851545652 674334462 296966027 278413270 253861062 61891668 386413873 769048998 210004013 752152482 636548641 347676878 722135741 763669225 676925598 279092728 879648768 617690344 252134870 377747366 331555987 66953242 334734112 419056254 741211410 428502344 711309445 474633799 521705390 913897232 475119735 982274715 873981874 704362458 539788870 704431272 495443820 89977217 729604142 203851988 918681210 501007894 611950119 388365710 981346729 814738224 46738384 943562673 163485382 745513124 457371623 760791280 91068831 729416267 447475556 560979368 457941617 513811313 628297440 899002023 709040039 817782734 186951374 119187718 726203605 686670322 983870735 78606097 648544909 223268696 970134071 410931558 994688233 715982966 418839824 791851668 47315838 769903925 71770316 395455260 646115632 946937990 743034580 814750967 819214653 136131238 977795044 532773962 883136752 272737880 587200339 176937124 226321647 99539813 179119674 660071135 817039623 435060882 193301929 158897613 979904053 836117983 195118743 453692230 450243724 972690135 560689240 511477512 382654735 703377464 559608927 271867288 497328643 52627762 41102948 48758205 924922820 906467034 781407897 706063289 150000477 607929728 244943434 275018280 121698527 470123988 507013208 803998372 484780681 827953382 643511186 449026526 419347020 580972153 552977590 750414338 674399636 36710726 217949817 85665187 322252309 32907221 2319444 821333152 285066823 166860540 517058466 30589632 707075336 414399649 621738699 995462699 860237490 975534446 269671031 970123493 413319337 413187796 317365300 823386737 793443481 758195544 422975997 996334117 570438348 800587734 418670169 197551994 866355910 854884224 914239097 28521576 293700 25687351 797400106 492921784 355225826 689914901 217159728 604591913 589684661 311613593 606681730 735455269 512918045 529792896 200181646 102555109 569234875 643720018 841937932 425458986 105826809 866752254 976307103 900107688 40683893 190847997 139755308 467124459 949639972 653207847 711411870 952643116 640556548 751298562 650254189 979265555 40995299 501560407 271059611 621371906 814583284 596277707 887963588 765541936 751161896 610596410 393289553 766140985 654165852 331147119 877115259 139936154 755483996 711290689 246649220 327172872 276736515 708788775 176759744 886141354 74714495 371500264 105284328 107924057 882764719 931393766 6387996 880584346 334348632 570400748 750167001 302903788 431160941 187416512 607261857 435128462 22526064 397363265 164416719 964805606 309584246 476938281 967722494 525925984 344154877 143429846 925731489 71400070 569725196 188503783 363677990 897630601 190052861 970777167 18057386 579921544 605699496 247071596 911943151 669759541 378813367 904703906 125381819 564950625 821057494 91511196 35550778 393388396 294946144 204962886 111491021 729157316 909835705 659125554 115712485 748198209 875511018 727991203 249102801 902260750 709560607 241291836 520472758 89752352 824790829 149350621 832685029 479067865 326748989 262127005 432524630 636306183 25755041 844586335 697415349 918322376 161953975 320602821 230292976 310007836 99023526 922003103 963854775 709517833 261058580 996960963 35512473 987431570 545701379 988062107 149509268 877506036 254120533 362396515 822366531 221651291 600708023 527927118 137967829 640112698 584005464 763357477 603379070 65278386 165106602 208789476 632572937 775978490 568190453 436080791 777174473 889486680 545744622 914878594 482408530 140755761 142759259 460379377 152636781 766894023 12082875 371923357 1392644 532860866 843937261 405538747 826023548 108038028 985588713 752995662 266801546 124100567 849174836 698122437 743908160 486902734 323246331 96962598 852517920 698078616 27751252 658700452 623901077 992434433 273305939 827258865 635456634 748668237 675650029 145750855 800218719 657126552 466870548 853060002 608766228 289651683 386000902 164155779 308276731 314846772 314977565 26462388 588238127 526205366 858538117 268034692 317939745 995788761 413673508 886651235 399788732 945042799 338657264 226071026 498658840 106183848 814262724 264401720 521702887 981668635 406126258 782622929 233976717 226199161 818619421 184079371 515845460 580431739 355335002 183672491 197862425 415497231 416922438 714191678 332540139 709356218 512818069 305771389 898274204 466256909 107161436 366768604 260914367 414458466 166863446 903265138 29020610 786054784 567834641 529091220 779690171 468165125 234347036 685448654 476850385 17653757 805826057 625359364 633867204 680402602 375980163 212474489 554245016 398385157 326375297 630150111 836132065 886811118 433600864 279769312 482935946 717171291 61593483 714774564 216784456 640632091 388128363 579214316 885450276 907074426 97299594 532278486 141555486 780425826 512086719 880924752 137945921 82299372 857874125 278496159 184549284 749973172 738803463 322538088 59692327 161118529 346133242 252189365 429777 592704952 524604967 127439037 550976152 960795058 801678836 898167338 278836374 504497381 601287244 441540055 246354232 197856022 125942932 730057270 112955472 818885797 824183502 408595870 116897389 101070475 793166886 964644494 315098543 183941192 592964919 911020955 388848181 179463914 698717337 468274139 39335770 69257807 893546872 56138409 674258637 210994250 895804937 674374967 865633636 312564598 335931948 207282079 768216507 650381519 833602017 875786538 801200387 3937313 14189557 961941114 100370715 716839568 511061791 39353025 788101487 398429925 67401164 709199721 989611859 118962043 92612598 725380205 736078456 37252886 83723791 637991466 294243202 869107619 635211543 783374032 573517583 552595326 589066396 567198651 739858809 127712550 676936786 735274198 606611205 95039794 855364172 692309709 723106635 995209124 376503978 146961058 946123597 104070969 973236110 279639117 549175149 54178717 889295645 740041894 602962603 652046769 935568347 470014051 102434764 649677495 379864782 609248375 706849252 722935049 653865057 920425766 922073813 462138851 876728927 444712039 825302903 778910030 282211129 896508848 756068709 87223679 3979263 274664928 673874183 55797764 969538860 277406311 78757949 759785313 498747539 967225588 682337444 188930006 223108890 670215323 137865487 190945613 860469281 66367873 386906717 473988801 266940051 512869345 504782618 691037544 178658022 569571678 898733832 499285922 29680741 992864686 658460666 259073349 716445244 362348857 978980239 649388081 901955200 363701366 226808863 785481506 526846799 456915769 637531830 571520225 516304921 464489515 477229945 952380239 418008917 956533851 789763913 799187653 18985970 916455779 184351030 567878241 610300178 782598321 725024641 784328150 324422036 104180911 912990326 173550134 586130301 503143577 281925590 915266178 226481359 551419952 645448489 652611247 294491824 312710960 465017664 986882296 130639685 115858584 658952995 151617003 128498554 351841356 713219053 242218343 615076263 610617869 130422498 476604750 530001909 505093215 550037408 44555639 244591360 717377197 881635723 300427419 651900187 17604772 530708295 345228130 290138987 177265800 63366661 112665011 188135609 178265896 932920343 785735438 4875535 5575008 124886085 154971751 663944780 414201194 165676549 258023965 30642734 33079700 208994419 291123887 524329602 36050941 715993256 137830546 467976681 594578172 838636600 941252470 649267263 901301698 877078024 402949051 429876951 174471620 653156585 620766464 917633075 797819620 716602276 4294644 730326319 95229171 346957606 312552541 827637500 26717986 25204295 336283690 45805545 236812141 894915078 561176206 857535228 494059837 753512184 527154463 968749470 79686248 905743978 554459242 971427822 966956566 403102857 764452346 650681907 429255471 63613851 857288721 115388784 616216692 82825935 50645143 218742781 362487595 736488306 240377171 189491860 876228969 29046730 233309075 10719633 909705015 578321783 74103073 885260187 492541299 789988811 858059528 647142103 360178733 624186130 653451775 959156443 284585493 163987328 787040912 597527799 687601684 349708778 592603938 652451020 875802350 794598279 198513077 884402347 645422650 604126462 346639772 597918677 379358895 949840552 407726912 212842703 739280333 918005749 3245363 246119037 85955841 41920423 820193004 584541961 979045666 585231446 215251313 590849207 303883274 947379877 863420266 756383308 186504134 937845321 221507735 269701872 793387071 119060568 279791254 654293882 160640395 814552109 879242759 197681963 586697463 153111918 530918221 631297459 217379522 213650826 841837851 994398769 529116422 3733050 216332696 134673165 656558727 241247935 389205255 298690729 182617918 543621313 98147642 253609953 476048614 770446330 287188966 862883830 65433396 39887181 881722625 771992013 435255153 929157996 676663080 449741900 981672061 31919553 190548564 577244821 48875797 934620811 809045085 798314862 785039356 548083738 654424686 480425333 128977327 383561212 50904379 870469453 971186140 534001467 136850696 447064952 908782981 775045163 307289642 19290182 288421966 636455022 534229753 72199021 466198766 917899334 822264064 252844902 547734564 709005178 981164942 134645449 430876711 152935974 219242513 695961551 721648276 65863214 668197838 903378332 612191648 631980193 468503265 589470371 495434454 978449665 589659674 540394139 368000793 650681272 717440802 739866824 690904104 164934797 972821700 276971131 13334283 884145733 728541188 892657508 47704700 625792344 519248821 567174649 583178556 310481545 149028276 454466911 597440692 571804542 992640169 54947072 470098719 647645054 456368321 125399506 607911768 561485574 617962527 118707778 411305907 176528875 891435465 365097695 734388464 492936694 852636987 10672146 470568608 77941649 169711949 267077941 87427985 506179278 393261772 656264977 200566999 398356685 773514548 957008816 295724393 113628661 714452467 959338493 604150536 116424231 972110113 66305736 662956532 83896918 87954622 561649194 530827039 158581981 408980726 87969283 164467407 574764674 599320663 122678382 456852809 856566259 93270951 174972175 97294202 76472858 389543056 531005970 898537667 444710523 560134374 543005429 202100710 546216606 565939670 477115865 986067996 194340357 527245373 445096380 522955444 304843493 804208523 775676240 970599988 973479906 558305748 202895326 315750197 883049089 922510987 286469076 580427160 552296270 505994566 868055407 359075477 756074945 225271386 195274128 676490620 105891881 497924076 986218358 662102619 801883527 249850494 708473405 491759382 272749391 22642086 539470860 541354904 339961775 150681566 267736516 194910990 139707081 96116622 740507660 328372374 487646851 476343328 72883053 898057615 192113426 901749411 629556886 204871871 235547508 432682750 305226884 622624640 162147465 562843116 223856616 73204465 731137265 606122124 397058733 843619964 522111393 528676778 976637551 308214770 634461403 789842768 104466972 598501419 202327835 898457354 201512794 188634561 78270125 603046768 780073901 944588949 584922369 689578169 59754756 126975264 526516705 125104400 355119687 808072724 86884590 701259695 335276340 443695234 413241158 199976170 387558643 725763959 48828544 411301518 195185962 505108759 824755539 339219932 866260221 827091811 327659653 706409450 295706283 631356634 656778052 677675154 244284728 92823165 126018096 602883963 515580282 186281522 14551920 704113603 932432217 793580223 717286317 107298474 304820296 49896075 754651898 435757162 73247970 617326608 173099651 506602524 797160064 629896328 956350844 328202277 56789491 546151187 71908175 483574517 963141240 85730289 223597497 441196390 834339639 933871515 82608441 788330850 419685980 606755557 217130827 580629860 562261947 877030651 343158278 495215568 708400947 163024676 555077738 402349457 545656912 400066068 779958368 888957388 287846990 723307354 219584445 453195923 102785821 198634226 709297088 347951271 569255681 497924132 566895356 360569125 461371961 683741083 277004896 212967207 416420895 591624229 584128046 189616500 169591768 183767240 700965259 107572553 607433326 65807875 475987829 148168577 276738675 305822996 353440023 201875025 228868482 267373212 499625176 974421334 301603583 436529284 428016204 394318134 526751990 36768662 404710652 21645996 455593359 615778875 292516238 817788637 646264501 911549696 682894887 538161256 761598158 489791438 376986437 469072467 578068412 295810570 339507186 102847712 645939501 933446209 639827868 416257565 270275631 434697650 342425442 903445205 71138004 809098783 46517467 106601582 861566099 447753054 597878563 680052566 932327052 80017711 287920774 837143421 906344124 483659259 772222998 249201911 490418951 489915431 397078199 920050282 286389633 399109305 585829165 805832103 669733519 339807521 748050263 172111391 63339844 99201805 196530791 511207216 234007974 602507181 705923803 702076096 580490290 558470113 282437475 578863294 10540167 760729746 651838282 509494866 62119396 749508842 184024624 347406187 501671045 169941660 865052304 190305708 317648672 975544502 54272343 355467998 646539858 624517029 240355379 428947688 933078140 862303039 118837627 821858595 682498299 621158004 438662707 565297822 522447455 609245930 8950779 840565375 430984654 157262675 103214229 416544881 762280976 249402600 432167379 118240089 193533287 573104494 953357975 645092256 325872739 400039616 237221819 745039242 444564866 254783570 415567085 887034001 547649056 894679285 728271868 150080331 900999967 21465974 768374607 582586435 111550101 132080140 286223 401225603 89744599 809498142 676836859 559169883 532815187 497947697 158672231 629093175 773780925 139281174 773179483 907958031 329738020 114845667 290909592 211074002 864398972 460294669 658095144 760406445 458327489 605218509 575033268 440215055 959762089 8622121 956692472 874578036 628102622 676237423 280341098 959638875 286168893 65168871 691313438 506650249 949223511 430886496 337028547 734616291 607325048 71579297 9274843 384299766 45982462 21901670 509506885 803074259 55780537 563293686 79737085 923878518 644528164 164220622 547472234 848526470 875968321 709806599 160270071 372859510 453671574 730753109 165894142 244184689 260269639 656469188 654864543 589681081 289911748 923937479 886644909 472072286 466649815 103745744 284606104 920577945 169487742 575849118 865376435 684018100 535302307 54800701 679126839 555661474 314834991 758293517 995893498 201750375 153938779 503026069 778555887 611287513 473446320 16736993 961566951 331153482 571935975 155499216 711884127 898964142 357090591 624357746 869157192 769210426 599056210 15049683 279574412 721350857 881434014 870994817 832093705 530198791 234030376 596884020 767789722 943107011 393060862 170686082 171887902 785211370 331916199 52591630 966123604 450687163 521281661 989232585 149483594 772206445 38491964 143285084 830327386 286248279 969809581 666782254 534208215 574634830 742499895 184020038 245828113 712516485 506333351 440526576 259639162 512220944 878364913 638552047 933942126 216126823 920699164 196971938 104569485 57682185 633335646 796956285 75625873 786095908 130914104 261900674 857527237 559517231 568332931 221426219 809873542 616630654 694817870 688185497 776063113 326562539 502578281 887890993 716916596 650432976 670502276 810695099 70992183 492145249 815216792 183112273 100364498 384155385 124860386 20537611 339825191 64268980 958152750 888326457 554305737 414302892 926972248 436910935 81680866 879362525 873172491 541313697 247796645 379335312 87288921 946625735 668308491 832345415 203684391 604564102 637486060 456026879 124565097 603604568 621152676 954884831 883584300 481124555 807812087 481556007 620990807 99231044 230650573 94603600 506406927 494893710 745160151 328124339 382017292 952541860 994091818 832023257 714162906 948328212 580579902 22489987 161945936 883865902 31828035 853061290 555031254 597546401 174744970 68116439 889882952 667302803 146363446 494922255 261006381 734688687 723345913 241077672 865990382 780583379 215063059 852207250 986403323 410290239 822631925 231596698 861864804 885194270 604989863 273823755 182529594 894857140 903202347 972065228 987449599 719283174 878062834 588307523 284221262 983704026 700682936 954078134 880670552 20345959 479657429 12342626 555772576 48352248 840721799 730814214 629877171 339314046 997702431 285158632 679362011 664522899 805608980 589050654 488103877 817735194 400388664 651543143 279150706 350682363 293326710 120044470 891092039 382824572 767831116 488203124 110303956 247103096 479733318 962140386 204076255 71632139 56362798 389167615 721980227 32052850 923548608 634329869 274594742 418315257 255483545 12441689 5166350 196336920 409938089 509916562 572242525 898561837 280952168 582045652 780527435 710929849 930289708 635157121 396451108 790972586 43327976 459360457 321968254 962022858 930691189 753216923 778329341 577902166 905177935 197605932 433865719 187050234 817985507 178339494 506697963 404634271 887923372 98383748 841707738 854589872 668498659 812259935 135933234 190687074 319847206 156772114 197150461 108176323 239492936 856928765 987186601 992559479 390067550 861176012 41349843 849140710 30136976 618785632 465970307 499013695 731960920 16737166 642852276 32072169 373560562 191728703 708448898 295272094 860967300 7284886 805069349 729212027 7989594 918133242 417191353 615893608 132763149 716536201 605354490 322390081 453588561 13695377 335572322 753425918 283525810 731567183 658811871 998689023 960601750 677009352 767353635 212162929 339412383 70267802 318202520 254352082 189291869 743982605 606049813 104769689 692520388 643847408 634818235 213734778 581521218 600581070 658507631 504447178 529402297 723985399 451014598 253821208 146658069 379952646 777433604 940368851 807539056 838306539 467518198 489539631 578014157 261141444 123133840 758822270 432749859 369324031 473718245 922033530 394464008 773897964 233084324 892100718 52252462 496217488 472414969 998330122 343029307 234856601 342283431 651155756 954771621 824200343 710297230 229520307 443414635 747214882 544628069 658625130 841187005 72679001 765814754 805021943 938812587 987595928 492720234 209603889 118497354 490809016 270775612 32928954 286274594 262272724 336573305 737837310 499405731 124435416 71550002 952573130 731856049 781027745 764206947 34719461 88444283 139817889 140189426 560424024 127546573 542098688 798770018 790460795 795973288 40458103 613906331 79393059 775490812 369451898 5952807 644330676 396003622 574339465 160633948 513835989 74707848 259551261 149638511 60458703 358019742 744473096 99907025 186377950 64105047 641975791 108337280 784518223 838429820 389000013 397136755 458076796 410061499 753706629 614443715 954204671 863566544 694524578 456545420 120905896 331590928 576989325 473246859 72739635 960886103 350087828 434270771 138810692 357149010 319040312 177747287 221871052 851646667 144070869 835906746 665260451 301997365 466716412 341160636 724435639 314237046 433284694 538912702 253152314 769836646 448926176 872200813 75767286 445029518 111084560 266162642 112884216 395216167 839498891 297682920 545960012 738235386 545722057 984249217 964998479 303994967 672379204 652007826 233709756 184492525 965025947 624526685 954602045 83726855 537200805 656233236 102876397 321698951 349451273 164146418 199316520 511694626 528111641 212086516 795352440 618767415 86399097 424541296 423411069 82278279 583431960 307019743 928263495 649729146 431128403 898895838 986805245 245043302 505289755 172462761 367182842 52100706 83915769 611042015 745078845 220269860 920672396 634906394 694001852 675626195 448101317 646203413 595526174 17357875 158427704 291393723 78161578 839710700 481424616 53373407 826944676 535962854 36526118 490537194 592707874 661230995 253053664 757831830 43889196 528144822 7725820 752389035 646717277 282216591 216055478 345319501 708535510 975888884 410414030 641480657 154096460 589339353 555637173 279207865 587104056 506450761 58310711 274153882 925337853 555718915 695684067 792779523 165938563 560651312 20464863 567766970 744881480 20117990 477367630 751599993 388740871 903860392 551497498 328317867 129852851 239659757 691862126 69743657 636833056 227151642 806634715 196399010 683130520 555637340 353569456 797129144 958487922 834184591 151287373 499805415 324880875 455721157 828219621 107731306 665000453 955284322 729929687 837416845 227752678 630804359 451527260 438767049 473584556 795505912 694728549 393154455 866543791 761677596 590800695 1084417 558750930 487667735 298789313 580091298 20956624 615808890 98951669 201097337 357157991 787239079 106872770 918690881 95222791 815203961 356298178 78135174 928085244 450523334 226716991 250522993 363182383 438175622 787244221 39342671 32675703 808030652 914079221 195863402 313036987 819203776 968489534 274065410 982827537 117411693 214971477 503846798 52883476 444302253 24008771 993932006 218831322 799019814 621245243 762608164 242696126 945477361 567424652 306330914 909490742 50033298 636093688 765818910 10183617 564368449 292043052 732598205 614571772 748804976 184057659 251925492 743464479 563625916 293739568 960121091 907141857 536685686 513750248 412096969 341259473 4913102 812856086 638198182 132734819 430046408 406997379 96093487 326247512 357671173 634721914 68898798 563127752 751411777 378500182 785600254 453290643 618545721 594711664 539534671 970084622 636857865 566304929 951636297 329055297 556088622 786491072 199338128 545533488 208244323 704863947 933663225 601159876 224990711 805399540 453610168 129020611 508051021 57603561 728742506 950066888 848768835 557940735 658342184 405629829 443812746 335745399 379833981 93028618 13527327 479503969 195556985 811451889 857442270 786715087 320705323 545355523 4341348 653639109 487472948 47163815 427086910 479666676 67280594 366784011 54994376 603643206 598079703 426178332 749865461 254506754 328232838 56855836 532315664 536418906 249592098 491075149 180183369 536138374 438801943 452974310 647447101 980227675 798977774 562075237 110883019 24894037 596953032 529690336 298507540 634305378 612400217 826285586 487103047 549304068 751120470 848871844 93010030 610178858 201736212 301331040 302887388 83254050 950152369 289716501 164563703 143166755 370468975 535900002 598685057 266455439 721915441 194413547 198037486 687687602 371808260 556753023 492758180 439997486 434778897 160054800 996064067 796700277 661921912 945536014 225445121 249172964 840492188 154644548 697151682 61055142 299759025 921956146 978247832 419168592 973221456 437046865 216504832 348909641 832964892 735529282 67491080 240595733 5179592 575793791 163866617 457522254 99305241 932580809 130055521 493111307 966314612 904226959 546285672 224417567 41318741 300239899 130109549 630573567 669980738 324425859 529403019 439309073 390541555 781252490 908076952 56479655 802557047 540228223 302868231 801838128 880453736 916123721 247530452 970931614 666320755 995794943 281510011 579783609 681452567 39060760 223530088 91841965 115173435 81765550 501868064 175601029 985003499 415546342 749336915 109472578 143928240 551633435 344849212 42407741 952577382 228512212 410901943 434651670 256212211 509218748 898295443 675371239 806147464 209255809 813183684 249078367 498470195 575390510 204346369 314399432 227821454 139229762 597524713 145214265 41780031 990236983 17545081 660870087 29612876 851030009 449792684 541611718 809889802 479407201 648133778 574223610 753873392 92842510 720761842 922857990 86188794 71211871 681720581 468558574 920387533 931238948 298841670 512989642 776486368 157188568 228928330 970065737 31657033 353068174 902416739 83099750 248325815 916735092 974535585 291742852 361522305 748831232 29908558 549330470 201679593 413344562 178491316 32339513 978535409 879580351 120057771 211756374 525516148 700246949 659524421 831994481 506842542 477503551 571182913 395837898 833778215 330147174 49903455 282573915 336355464 177330741 222565178 148121597 638659550 974144113 334322462 667974595 424066710 225755220 582770498 809354110 120190720 173353836 580879882 570258624 652266269 687634582 736726804 412724779 163732462 99828605 332062631 841668258 623101098 566329659 29650547 449523759 282839837 422257837 922736802 313705019 439720995 271065605 204126611 361667319 698507488 861526244 110087298 353731812 554739279 750829339 845681725 525648946 271110100 774775624 730890960 30360286 625542989 76055533 157192537 611235088 427115674 40327464 570229034 773112823 186419333 922446391 226366357 998142977 324738540 277010941 111611374 949929305 587915927 874023667 366965141 61491799 117362055 18285455 226551488 975952556 311106962 12289346 391106715 699382932 244084000 275102942 593722727 317542054 970938705 834127738 827499432 420091909 696135265 962293552 312807740 338441205 962272827 293588687 211764383 903622631 155927235 679973699 434844665 576110669 16474982 36082085 292758162 799537951 524887908 322157341 120795199 251258186 481159000 413636675 212491157 524867019 117186576 512634516 460703926 138246654 173976445 155552681 735357348 876246073 754234118 261931366 636172129 291004952 763279257 650596895 533660693 314543554 951142323 568372022 197696830 458316791 921001207 553941226 745794910 410683101 411420788 414451046 103519039 92941429 860715200 193769837 242025219 941220955 983154110 755024877 339922788 99533603 794680192 861081967 512175043 839442876 711686724 909646409 115309095 691594771 448973503 398873255 534029218 533744040 448735462 519546099 93586807 410210154 71986063 960931250 358809124 994136245 955160404 948509602 989320109 476255082 254958475 527957156 699995127 738711088 124774559 279016966 774224741 816826883 107711670 221064865 567951912 496495045 597380230 452385390 828184420 211893513 555666433 951158211 363596491 796073414 289475600 319568340 484236069 291952116 167304398 120553352 875908855 960173853 996013849 964384333 465815501 526318142 838897383 277949432 931796453 962623409 258316769 65272278 359633792 280956381 87598280 886557829 436454874 485079914 108540401 735234434 791044808 110411155 845603279 530577559 459022271 622344375 562093089 367656332 448864438 104832679 788109807 670714143 219679006 202310328 468096293 553880889 255210150 144582624 464318393 556150334 321083759 718761555 426157247 198398276 174338741 177513049 158303382 134561168 937300792 661352746 104639984 741021023 523459725 80152831 894948919 711171365 908505618 778172721 306863076 895009919 834904411 348815089 526364036 940613426 855280148 317158822 621038605 187429525 585273366 899624330 516561225 142730176 222211230 679903979 217328575 915309410 705689173 928215380 39041044 407641931 651989694 586501562 306269193 56569404 341935271 794843248 31278655 180147037 485262467 552174108 654186858 349244550 948789486 563535017 548007123 78429559 810217601 98825736 480086903 312287390 342080258 693686507 514065762 984620845 702447927 445265443 724027214 206606403 874990583 203990102 65539781 926901766 495918877 973390622 862887711 764823668 624747287 730516917 199860901 576002898 779694980 625792529 67016851 640813881 650370636 367935603 274848115 744113588 790122242 147176779 184402256 960426782 796554730 234995567 445758886 381130528 77450214 365985327 998624330 797887500 315462882 635929356 611186024 914898407 387993684 735776986 510652813 623275157 215309440 748300178 642948498 519868326 974751649 953397412 160692958 601010664 633946055 507697725 915165804 172576181 524189840 817147692 16419112 250484614 829533321 980090147 482749003 465215835 14743981 332408329 851788439 523681031 597256927 992731230 5652011 624392101 296259234 40504018 667131762 769893441 728193930 279195540 501311243 865385316 575562258 7682873 435541169 864582220 82834719 298436350 905772947 566611761 63791346 800890093 266400375 930030906 15717643 789094748 85549045 142245717 898944201 239268231 834234179 692376917 658475849 432148161 829505304 481707765 124001240 976869727 458487434 80988480 24190580 873109869 717720932 922105675 821567310 839764786 88273985 555007127 508534153 457895109 9469239 252225124 394611481 896984434 187235068 544746841 135903041 286359429 624355380 313471361 401780251 930395628 671246683 716558613 36303581 19904528 339923500 112973209 520792700 607791319 472573338 312590212 938950299 53808219 328360170 308114266 511127667 703175676 663086304 244479552 797420717 581796749 327501054 179171881 63997196 186085457 192178763 849714926 653268319 143053815 829856153 938012988 421922410 203164632 798382343 94473169 676825346 891482963 469867928 224899783 313938981 714260601 127254789 42005849 421128751 166248324 160211356 257983384 129891924 337407780 995830074 366263802 113737404 460485310 168340784 33538942 680208017 108506473 51776564 532744278 987652373 273907765 676182603 763557515 762931641 646471311 197727037 55135799 704525748 796607702 399557929 12581507 563935268 929295332 687893740 115134847 926757458 268681864 849212723 127581476 101561631 114803546 360668234 956234938 942371672 254068381 822600729 443169866 363091843 582477235 660383686 4677003 824730072 818704781 578488470 224214736 315534297 557308776 789501824 271811953 891119278 199727439 962062147 770230664 464727370 339364091 1618922 72321597 936899717 241407636 493111923 526553039 267002703 883846337 625249542 572543559 363267665 452710642 880414503 632770226 449447427 294886396 930265642 4424870 829184756 96068400 77750709 816805671 688227758 347707624 753280779 922848317 55101726 572612524 884221971 666573070 541932785 600341962 124513717 21306804 622245837 872975650 813553906 379188187 284217051 454573097 774730239 999158528 452268400 789377953 570208765 912692679 545729598 727507112 335177167 797389327 899535785 30733499 69335520 15950356 183848145 286968864 956578443 937908738 759491742 395801377 741980646 764918083 19967006 612365033 296954514 579250172 232832717 488095670 861807517 34413830 334617064 332855662 704205540 950750186 231889995 334501007 209783709 921280164 150868543 416049405 213371485 113243578 185621916 743497358 353275346 314964083 117453191 68927008 444468351 390281797 635198122 745251563 698085009 977160767 921045892 856630904 435586176 338412616 256790370 686086535 645723062 866762830 259291853 769242703 891170429 281837155 357995183 113836301 719529780 310518473 791612704 167053710 227552372 413657144 901810430 648951518 849824734 202846701 239019378 873455052 776097520 196628305 550132486 756835237 569236747 664560491 489318464 517433066 794983237 99473582 391031506 241748242 657812128 492865251 967014472 607613678 449969141 979782453 165471600 946224876 939728002 453825794 865506551 958054513 642010460 586762552 747948302 585982936 670732263 756746336 300972402 282954886 135202212 687764369 896339209 960536328 541436648 168051462 336641668 298414092 144559816 353821541 47837378 166100196 341682618 713376441 396079807 439877699 921192730 852756276 22000593 662021177 141379961 677993941 47888616 591773923 42635523 581435643 56589280 106205325 57359523 611572604 852353433 190032760 788737343 334754087 801839750 28276848 103686604 114939455 714997598 102331656 470780891 674768217 720189053 474262262 951655650 197422884 166962080 778077595 866124938 382178047 891019973 433108540 328094611 46204185 278714864 494610158 879446686 394973688 960478106 753610940 101656216 409600062 165507471 694398052 911849426 180788060 883398340 728834115 999599329 900055780 298266525 332799835 711128378 809375873 687859040 958253046 638823580 361090240 146075629 101659123 583824881 458423281 547519905 876701299 445210062 517726496 908505790 259037738 480017214 215745132 750804386 674515524 283003086 213861495 563574620 586497574 844937992 926197700 873999385 46300212 445151535 214147563 383991469 253532989 916188129 82276436 520185889 149344663 724311847 914803367 228319489 687883255 242246803 281543294 265447008 65357233 406690880 251607084 885353045 547929867 181938743 879805282 872393073 494321598 638216705 996823313 754482048 596835411 800816622 990179004 866610372 461125621 249347036 915138941 627396069 529205410 788662077 937294118 506176528 782445542 692220232 240193815 478647239 496487317 468494346 798109928 390128211 907212042 172309342 852469618 597766114 160307836 959398049 947716584 176920514 22051706 664640184 733884677 93614198 996909990 667923016 701221976 800400465 835155852 910957743 983225902 351339159 339956774 329831077 70118799 643797655 568086057 145634228 455679869 65348798 421995415 547413620 418100466 29284957 694491489 888569717 970715715 112603098 982300368 99482011 218384010 768089339 166773225 84875480 900857691 669104039 859117448 360315884 452400418 55147299 817920773 781623248 584204014 613160616 32388461 756182560 86139532 702909347 529005867 340966442 479759192 760255545 40305691 296931086 707468555 577606516 994048258 155106578 918253532 510818275 208695319 475606900 932699512 78638119 264936673 531699561 447582946 259268836 463325230 22605091 833727463 113098805 265924851 916929978 157517305 464671069 827732785 276704225 310399203 676860380 210238216 488860211 385802345 486123433 185939713 822943961 60265518 831366572 538285673 241344476 240137435 431570156 484402255 618853306 78761647 368967730 481630907 329817520 926532951 590166409 476877980 896043802 639339295 699765595 340746563 476028267 550444186 591979448 762731496 756829744 43768132 225413000 301013006 475478174 21068175 784113532 547132933 53260862 730341354 938213239 803797446 468802623 862773451 179015624 263973534 467894708 564533540 813259238 434565345 855620213 44447658 524551672 554995381 753236191 784701292 353326727 827199091 769344636 942214629 891430866 159141209 76190972 417204107 335581871 395695950 747136174 521910879 1473382 457215585 293080331 585642874 410408275 840115031 504026362 351148204 265039474 92300939 812405304 575092338 973143497 317047576 972562043 756511214 948051577 936641944 325716671 36952299 491101630 264067334 818687565 762848668 601366685 707217458 813451731 996878642 428278731 507999885 695364201 49553749 347355622 449519656 296467154 774641227 333479470 403867563 607038157 12189599 257545013 572950388 966905034 188792626 349968545 713141863 806492272 314256696 73551434 581499053 780534978 642320599 912068844 818833931 621110329 512864420 961685713 19033916 281167259 534471898 730664723 342059654 518510018 750480700 122208316 768956426 365282667 508589750 349554374 523414123 406689783 947097762 48017324 367691603 801866210 912126384 665562448 926411611 787016226 468113388 948448715 732450899 945118635 731562630 638879215 262751991 414127601 267057091 172905463 287828544 29863481 750668518 695766172 255157293 186529463 649067605 600582514 252715720 901889478 726287271 306397301 435249985 141419581 511519238 44265480 487516690 189163320 363587335 312888133 909906260 838408134 484063401 250108162 372155646 914506571 132131477 143731426 579615678 57544126 81120625 658325604 775907963 71821309 330461936 559599797 891582537 693933916 37778194 283973664 87361647 980671233 686696646 507077438 453381871 924413214 644106772 551173135 241233076 535599877 237051636 191223014 40997967 647754888 508024683 444170529 134163925 764058236 263315673 162490628 768375051 43850682 898222403 646158938 816585333 378782189 975053252 521643887 333482083 490278424 320813045 783987727 984353829 930741950 740384161 197808636 385185415 865979269 669357869 550087815 244773636 112315968 503412089 856943073 380347982 390067343 69715917 554367210 739911732 598737659 22400149 102247587 64968629 216375922 867800839 795883490 966301047 304850426 907033309 819543552 716381466 534314850 522355147 783220812 407052764 340815465 765034996 503621800 783874703 777605241 856606783 732211520 517489415 489525925 313002651 16745854 112306796 472982623 361020739 156873710 324871592 59770590 127417146 283946821 664092351 355233475 790325782 485950665 475682659 41082372 879447681 330318214 52416541 806655733 109943267 232284896 814085143 720763498 484371469 809720699 539957113 700487599 951137058 657109998 765842723 704932240 813649303 43553607 188235481 353143851 316221569 505727331 268333495 774111674 100476496 417696449 50987430 287479655 659319031 90776804 33876576 698226729 762405648 64663109 578703398 775575926 147897041 86818641 671569149 225785306 997383272 333194744 980757368 658457650 327273570 425411734 673899414 528928346 464375237 570304412 764253204 188444018 131605129 700602558 214934660 816296678 944869678 291306239 581305992 194944830 711163954 150604709 681517552 762808193 629679716 660960765 465842222 661136256 457285718 270355406 65803657 991091660 822936878 788147386 763105158 633090312 351176048 919065501 496787737 858342338 7573892 567793270 58629093 717668133 904177837 413700648 544896372 173798287 978654331 656362855 861949607 307481664 130126533 622075960 875020905 45140322 83153686 904098316 178094156 428099509 264568280 934370648 654435845 758284294 977784817 826739625 365593092 730370366 975793168 338985611 178407893 473876039 9581536 288336351 803248505 248761300 845418232 786841339 203452904 134974611 44471011 183237824 446858398 443490058 503263569 818856156 982737486 350899671 424425736 10166021 940342602 952413627 998099635 574165504 571510545 88219540 969602966 290447218 979087417 842709991 997036039 351570767 718497800 341462227 143329553 122180417 669813385 75193678 247217289 620763282 8204209 910215257 809020331 446990176 178092290 913603743 840793383 755573016 208079058 729478003 229956733 345413766 366235795 81164271 848433842 87680278 556094988 629450999 539722313 952182882 191584627 192201808 204190647 408181815 280589341 660911074 120407515 932430045 409442235 100995534 839104373 380055961 195091388 888362112 671247834 300384025 701949766 88846230 300411558 653132881 372691792 58194231 835477617 571160787 861336225 323836078 36212846 444185887 258476619 66632346 516960916 521101533 822113720 117562815 462434213 689926240 908279758 828701703 992904561 194544667 520987889 20298025 135828882 690544151 521403201 226426189 634450879 571181856 621038015 597988349 803316441 750453789 128655556 862802654 75011710 83702732 873989336 245145785 402549549 8712715 632473243 940988126 679847228 197580315 7466559 532088978 115915998 23657850 936423725 444678219 642704695 772283746 553843902 492846052 2631966 177461396 674767002 79068876 878707882 579341247 742520361 405966536 872125605 788287227 286651562 81774843 438534793 832117454 991673867 286185441 326632540 453805885 663193102 526492245 430779228 537594692 584652354 279381000 401147797 117841297 460332977 937311804 575486252 560397965 691602094 367927831 692231520 939419857 895810594 298820608 878736659 184039383 948745342 431221303 132788690 256771064 271147070 838473023 399432239 230346924 249717308 916785089 762252683 755475900 309270125 619043790 959597649 650288697 606027146 442929877 461406288 717068815 244896970 235748932 677752630 88689789 424911805 728691251 703816806 437403597 657750224 587331499 925283335 60292113 704370400 27042690 568514242 915723338 981684045 814328284 656429474 397031183 66178064 882592644 647516727 514985837 487598207 561598492 993361293 426187401 488513260 29409477 534378032 702815722 540846979 345248967 108994286 859841064 637367019 12690694 331583155 631552396 772275614 301385070 758065084 682179344 609497164 464212162 689509361 730212277 642674308 862366425 729374860 898553602 616244461 784342359 175446356 516632466 925556867 281198134 489504153 991397890 413923909 469861242 604605496 480596367 312840573 485773249 703833965 210082387 317437021 448494761 624264097 455772103 814652507 958791483 304666120 139032369 701307447 38118515 806521506 721513059 45022573 17503682 717603058 941361480 673034923 689590185 354881624 488728792 839624437 59486712 115427425 468808910 399072868 816114225 819001901 75070370 68300156 854795887 94009781 746365643 881899640 91063993 866763539 375228145 83996492 788010795 478799586 904414120 275569571 865988567 929070486 481393742 530105918 155181546 925324019 257368373 641546246 593484182 672378687 941955057 352507538 113598519 769333189 780701721 732702173 241130773 589183588 841948056 459638686 686612896 463631419 215646035 332798661 776041534 521529221 821986939 834774869 970608866 375563254 909503678 455519457 86663166 859146717 421854979 715402981 832442877 123294720 188904285 682489322 289044161 833813195 582061162 459224569 836111043 914369566 164489902 74627369 763946199 799509534 344910559 260187439 342599528 517503757 16917222 704237321 744695036 178678527 212624081 503858249 184084895 468614986 761143015 678881861 448006573 626471659 419877823 440546221 912263285 877382160 224756292 605943437 334075370 880142702 316822017 517124073 617270085 294108926 16250591 106088095 275538400 581173507 529372754 521253417 343621767 956270333 552034909 263745791 716418070 603389746 520921145 945563002 567326541 935259174 656737220 819335127 530043437 176663355 960896541 992924929 887231588 206508441 336873110 891586091 291965218 969718492 239748043 186704720 324244044 56248792 584618036 287162704 288569790 256651456 33366148 142210138 512027967 428647086 905111577 138331970 936097321 112188856 69154520 237577535 637905510 401805198 719310825 208707349 62194767 960744152 96554144 704930683 442331033 153063032 486003350 709277291 790916883 477958872 790392517 101040327 495145029 96397842 76383532 354646181 840637750 403280580 161425441 802566353 987537072 216468598 503659220 680932294 406822804 910335225 117144183 411063984 32647528 577318231 90032821 738168348 952610535 211315008 475420055 987705193 964077077 389543546 225683528 110917350 578731733 483575566 812712345 321785524 27398139 621951695 239417870 915937299 837213560 357944010 100040604 9467774 116109919 850262821 988725051 753480632 515321831 175974160 231764283 556875898 455062684 537348306 137796645 384311250 297282830 537700876 941136528 503600406 593194487 157900471 321460643 760902374 590334241 885539074 800541790 827241258 92219882 897541185 671613927 759610903 880675947 422860859 488232557 139026605 454100644 373861566 514280393 426739466 825744611 526029037 2086027 89013640 844213708 458358938 782988625 957481842 742894720 289776293 656357509 945097254 46594682 41082967 683622070 582329203 929432949 530803593 788922983 808351677 848433122 987348943 972695819 187334273 763309672 351490759 838495197 290724400 36329350 42871666 173294616 282895893 219455668 826905245 330065043 182311146 38378954 685957163 523142589 337827798 966087313 510936737 970364589 876014642 641569112 451818621 911412220 733349234 581541862 747728488 219332001 771098840 825831060 337219538 686320391 117184882 271266692 211620349 755189542 570295132 932268089 747233723 805430035 635617896 202583344 769407905 77998062 820991538 169136789 810377978 627765081 799433494 938802269 867869188 510082205 752792253 188945433 482062621 514862539 586993561 277992036 222067604 105900036 278331337 85757335 45174565 36948993 751588278 656156307 965675914 740170552 78295196 616150483 360634525 555230570 748559178 937243132 912469908 509615234 401759195 540464728 931801193 159253181 142749694 416808548 133590039 873284182 575774375 344676743 941099459 493820839 901352 452266479 573842352 721712932 815619901 747075071 910359103 233781345 780463198 952021685 562128425 714412779 93708209 476520073 70697313 305690148 71102759 140313683 487076803 859834283 110808852 943133841 922627986 248977893 183749071 216656895 791477837 22886116 246578858 308735767 959826765 695111844 105677920 488618911 511894533 916596617 506289256 139335450 170523947 81355811 421601794 289945898 900886796 864777511 998741473 10687874 968945178 364515909 574522805 307511172 223715166 860103665 343909751 898915315 764081439 298876337 494001351 604314492 219329570 85279713 263023545 736978639 120584291 228417525 53736568 967463381 106354030 227679228 670911085 743672493 389550742 534381018 427380057 470498031 4668392 952929042 362965208 31749986 842127704 557021391 207056499 128246283 171030846 157141449 170066385 402558054 533622203 772856957 741535078 432664389 45596610 251189328 55361364 486004921 641565293 619205165 459292952 712006425 781450449 832984844 665466422 68910788 703714573 314928506 977578880 686408744 694509330 620239965 528229378 104366131 424898332 296706929 35100076 29836518 324701147 151862580 309701298 759936681 431821781 85559249 720937013 368055063 652731924 600759819 995924633 923475228 478432629 865726 899522813 675306815 218190762 548028572 302863730 528713099 154300245 478408240 157792120 706389570 180654007 622342747 950160546 229582919 674359969 985195250 152470042 888014863 391465575 379718734 905430624 246392368 244419106 75982981 475998401 667271787 951287145 374387202 361222289 683153958 969129696 868131428 545727099 793370775 235527302 131379035 83060979 196430124 518499106 968212008 758321124 272623187 998416260 462122041 144547675 765211069 553488950 699362504 80554501 57266313 829367956 218207604 249144003 748152666 866945373 519546460 181146542 422341828 790857278 549057956 811885222 560759717 901378989 193302041 32857041 192856102 370599187 791441220 739360991 305687098 422697430 79393250 733809371 2633263 879569030 771609039 104372358 747761466 679790505 335181894 825976488 860686803 45371417 637823293 188288320 56512112 441008126 160473856 511844389 98924921 49969376 535813522 550558727 110747353 919268780 129216856 765174828 905170557 8653878 525545202 218716711 247996529 72292719 940701195 94369057 489897402 694371061 633786229 797589697 201508615 424478955 199221627 934194096 120371127 542460878 560741720 604470907 637743720 572736892 704104978 255190627 54332205 851739711 630813653 511267403 561000826 309683914 325050914 552073607 361950992 239938099 744594442 126956536 668404708 490708963 602557116 820732331 864353956 817090506 941797514 728674716 849413177 288286890 298575151 237290784 517530778 792595748 854031793 565286490 680985404 456187377 210824149 767666155 300398944 765042950 721376615 894568327 986460423 177360321 334115151 763511649 655528279 287583967 380011512 719233862 68284548 983555349 872398725 309872750 97166572 390822615 883137691 224217715 246633113 338297118 153082285 765130171 52067712 536686782 363296104 695386528 211089439 817930143 786318374 270110467 340194312 198206351 390195251 188017990 733676891 7935606 781572773 306934609 647518381 207052651 291967125 728399932 33182801 318963455 507838124 366806984 213841976 472675900 843152503 573337073 223730459 846363549 453049354 135450115 745814201 668698537 849711151 829810797 24501688 42003145 674292023 881587776 305134054 144192358 18159630 59001710 859907029 407249348 493554962 294586406 101259751 728179294 731403627 64802304 824883503 383050335 383042940 913531823 482985783 589670405 998330255 657669789 998668837 968080806 166918745 709549767 651564995 706593539 713044025 897409326 472908530 149183348 920220709 817188982 992155993 872579528 212005969 311793439 527734258 915112436 676928014 994343466 694613668 794071581 544682568 725694124 274150742 452883188 971879447 183516044 266524626 160290323 477376941 165270184 22106 503711180 150094006 249127736 739346692 536507346 733917243 508167815 343926531 987340140 911094617 974085064 989820240 849631560 694867396 239812391 625521813 872680114 885825214 579464429 368780642 359369584 17432347 453983976 476187176 581677024 719434132 845186794 433815478 158590864 564187019 981272123 914182383 405100442 819115692 664297517 395148164 875973277 130876121 210417767 477557180 13149152 465746278 540666273 515826678 422012644 86642207 397753822 401383723 569218485 532677199 567319642 99075172 468119237 181389269 114101505 747425051 46647374 769941107 423395462 670835983 826217941 60399139 723978170 452257516 539259371 35326648 470486770 162028271 353488155 560269367 436862010 831784492 722908728 197966185 451173450 107935947 191579129 155336139 47720445 584165257 636570637 225458593 751466325 846018466 358167075 381909171 422789169 625760324 693209172 719851806 945308792 493958243 57989668 807550561 668985004 315230273 287297312 450145022 917670229 831962061 476106725 246746623 734074718 297036516 633025940 462461334 512767977 952965696 929347946 885323729 304593669 520435096 611412893 823939022 584771445 248048810 720115820 176635204 206046601 862336316 674018768 978094306 236943909 165660923 212277272 410183578 746410090 589451899 14718001 971992355 933487226 274802637 676992008 884011431 347420891 529200152 708152788 155954909 920644872 593167136 344403619 231155482 752378252 746338388 738838427 429797196 359799649 254016531 260872558 234660547 159940302 101313765 705153803 943229403 480319604 138870725 587063913 340345585 875857632 205450586 696713145 475544772 470539711 976578375 623730343 265053158 620273931 843079908 802287371 391351984 328822242 490044516 93103220 124078724 102013897 862466696 304942430 187130072 710313111 238795550 213528849 327132941 263666673 876805343 362302788 626177791 362877319 782125102 81759120 482137790 400244807 136543405 708630857 218005917 104994791 543425258 484842739 363064843 188035005 3077540 832623127 621891655 492336634 84392047 427420548 194689973 132350144 26178085 97066124 910740557 611607346 250735607 222202621 769141836 996121514 336022069 414501255 964626143 316806909 99639319 310616348 150685155 570762283 740024255 939762708 881537473 422128211 522341863 369413487 678644498 814892892 294971705 850365041 225957303 362132965 296696746 739373938 608149027 192960578 86685842 222394543 490971792 255309393 375353384 177705376 114262717 287903583 36474812 737438938 997617467 930658592 363055944 634729058 405686283 837893051 797195190 422183359 914722708 125217083 190701544 737386839 780472718 157272289 439604691 234991172 25788106 724611608 381634419 388860979 382339784 461743129 421552370 557620351 723732595 846698037 46901218 899933750 801778972 15588120 180939302 568905260 459226694 158900428 181553968 964313762 893750789 336904350 135557297 433641235 342308494 138313936 465304218 685893954 173175423 272194812 134198387 547778234 652390893 434978944 553239810 210772695 236738851 78922488 242829735 558882661 210545535 535953103 893468109 576189926 240737808 567454827 527808280 718611185 48997896 438911772 423715455 135198637 676458533 921528734 382909087 139524212 834962628 499535780 17400611 128772815 168337298 652418739 143665014 439227274 323275903 729376479 212119776 569776137 720275850 695678248 467096417 652366715 930037835 507307954 80560207 731359720 235880402 419639329 6326366 99148884 732783145 194787732 281362680 57515091 780286139 739556799 904170407 366187673 770383322 37717524 568670603 867470695 410606537 653045089 959993378 103425290 85976673 948956569 533789609 285475746 352872276 220791346 208325229 584860417 204220921 48878855 531570463 948058028 656457596 595710137 617392227 966472964 657229945 507923985 2052386 104485161 749175786 986865314 254762884 57377180 146087857 749971481 811524938 940156648 950699377 979418979 110476108 115457442 703316210 490042347 693692970 477058838 498751876 909992513 383525972 762296554 75729242 995490073 38257065 615180307 800681522 831448191 847821593 964677013 144731715 642915518 388515428 978898372 836391397 462645437 328300432 14016631 40636832 302421320 561340808 152705384 923500796 775610878 938217899 628426212 500676750 736443058 360859245 296900964 587451991 591651087 35199829 710121112 936050491 8906551 535150542 897191309 221421587 108512947 974605334 769752696 391049821 304633723 474515050 653891350 477557386 486156216 265954926 500443598 701216213 129845913 114405357 395069358 864939914 90889245 566249706 33032772 347584268 12234693 586424973 471131206 495300303 686633772 982293385 822347687 67955717 419955226 569464526 579341626 67155215 911850106 108239565 445625905 644205098 519736312 999273218 918404658 707614430 495513116 875624842 807941888 828714549 801499794 884014663 561314926 137722351 297079799 124899251 133407716 326102321 351596772 516865572 90257795 573562902 373726291 475973418 549033855 178145510 59310492 529544177 11089122 873673486 986500208 161809491 840637117 102982634 991059409 920979334 133062327 113887032 312007699 602757549 650312769 6247422 5544705 287824960 409936300 764016777 182901313 478938054 605404305 38522633 553585776 420022931 735828351 962712823 807582470 95127139 342250548 479213974 222096665 760980903 638746372 637130504 183566302 654959822 695841882 123478555 627538925 678162725 655885753 497420991 461579757 4569898 960517335 944508978 373968260 862832452 677271989 382344017 297198019 73787771 86479013 70412769 296853757 256458928 638527774 301878903 309806771 704230706 229332874 690726099 721554389 616499649 34227395 882508705 744846721 671133713 382672400 399676381 912453180 372317141 105436105 50121934 737141450 853548806 263461117 20539386 613374498 544985247 803053392 124335702 544636183 15744243 675606295 809390918 186934580 160779871 161118311 575765282 827775274 175631005 74628347 989981331 385512605 775018203 457598375 693344695 708576684 142690223 826359831 150834822 669732308 724606708 770912676 886444351 610593347 923958530 458321657 740250073 76311808 485045376 775282256 529107474 525660967 815987824 492987111 671288411 382772890 186883770 372453408 588341551 402940287 123977507 869978192 139969356 862340601 685951167 268609042 393983318 312080030 391878171 727839878 935628887 159606561 107255122 752775830 694251843 645630012 200797947 308692924 123355553 320652746 157895707 859243400 703813269 52918999 262172777 643731818 92334882 956130750 61922966 890283168 559679607 625290132 253721837 660137182 168083471 580785865 262760812 343791315 357724298 178491362 717492877 737063707 101042161 687958385 400413805 347372230 648807451 273649950 255819747 970362587 304682169 138039217 763440146 472093686 292906369 298663706 893986186 914784508 385989238 991644840 290470584 463236095 820544322 980679335 31818702 347361024 267287293 454647825 788837817 604518067 384421727 953292766 741520043 982196344 557537135 947053575 305989995 260779620 644331360 662721583 749823889 324810636 558152445 413288504 653943515 752111401 292850877 756590450 106069238 524238772 534859739 395604616 603367602 464976310 808571866 420256601 553148695 164961729 208487088 718330811 812485105 461121665 28301084 442593729 133243741 970754846 877626472 386363472 822851020 176100681 534374373 897152934 748869107 364210949 611204651 938149905 347835914 12487999 19329038 922821484 34307693 961664535 730873893 914792189 923360443 695248697 134183858 811300069 615258516 775870850 844356826 978891204 51742781 909096930 494948207 942010899 440851096 471694007 118014521 842062369 802602496 495544360 565217895 861332031 198835226 149416467 443069017 965303089 413715877 984476951 746152693 181571239 400946359 15889110 613901854 268106089 315489621 595548492 865256467 323405179 970023969 402411989 990933811 47549447 431508186 347560421 120936644 26093703 410072848 795371388 203191825 241588784 35605292 366394573 198876972 373109800 271010541 599500346 654317589 62624086 522426363 344813756 410401742 555323593 185492289 455965084 968934919 868682124 636202023 873048862 271585283 992381711 359554058 767552417 558664488 539651910 25932002 979169268 893879980 685119727 864051404 330103393 369435445 469662137 886317494 790009324 995028642 350659205 551399689 418045079 356677668 28122063 156857128 848516016 144916448 779357278 334233316 201943154 109263286 318884520 568009326 69530846 7374809 529820134 438656923 425949598 771256987 462409760 843560312 937518969 639632851 897170972 735492465 239561738 367334584 737176313 900560339 541859448 647285148 789814429 24734520 478131043 614727849 413640124 641606464 843714587 686538392 980219041 757838652 381412661 459621076 311106366 815930688 699916837 110982322 847800151 165704172 646303981 601282498 307496916 881755560 823209723 9645608 344165807 427707294 379240144 706109297 196334778 833208386 553737852 724866078 792874192 230741456 669845313 445351973 538698687 831715971 128861449 45017443 592942316 606332673 297724167 941749006 157721869 500025646 738660529 469452875 554942400 100752739 229392450 489343087 849956893 669571117 988671023 392044762 909335420 898919930 253517122 207724411 356003450 15857951 520329374 267374420 23497166 132210579 276830203 209685910 756174216 572974083 37040372 33001 175242977 474956110 175499850 906508676 836512084 72490403 971771420 59301021 302684376 468344467 206827455 291787113 561109363 211897878 204373581 773046664 535635065 761378221 418261382 171646854 325715561 806495382 493793208 107043283 206910750 613202128 670993494 2545747 321263828 319308910 394423691 19560193 413247801 90480839 475665962 944087776 847316189 558863396 701138940 781563011 546133208 64882530 203867745 128963910 45900060 621346653 454417861 876925743 437167369 6294463 720481237 380593057 459276986 624414891 109519455 809953528 74311416 799779510 667788732 797502357 235841689 311745718 298566115 984008952 421575333 272553007 188642884 622120903 681256140 863572922 726114168 274816560 223125635 179728640 617853276 55580621 430123716 269430403 95217322 435576893 609429302 623046615 752214105 912783584 777694584 777969618 18992474 719353367 557543862 882507616 732430816 868320802 206347330 138711820 591801179 973192372 535417653 355941666 70771428 297737775 712440631 983095298 606389782 866891646 357234359 715206874 273541414 455449957 219772363 96034123 719839679 211472569 210551107 583563435 413085510 599354668 746093822 569974259 100877117 999070156 311723828 511415806 431290758 533027977 169942866 997883468 181302638 534766820 570051383 285077753 216285131 587907179 594886943 293525560 141333651 999268517 634233465 898454360 958578209 907501858 528838478 29617218 243158292 595431409 797267435 774304323 969813991 436043955 219038021 380396694 916515551 784806527 953274439 140781260 55516151 137796049 965585476 55178349 223172776 736380934 699645059 141175445 604113635 894820806 785606518 418555075 926827929 918357568 599260611 140799091 252233672 861391913 247122342 37161672 835903198 3156211 502997953 820919746 945805918 807202064 697071745 876651361 763764162 22609426 313410527 604881534 665236051 635495603 453142129 324027595 760566110 588327513 830697396 609824296 920168309 172507395 324389396 188432952 720885282 235569808 554060183 19518070 420889775 38630726 842720607 66978770 954730499 928938390 22180225 509879624 88779409 475117746 348342139 10722895 944574808 543646925 610017616 207045891 906267035 315517669 229060132 696714138 553761061 53485602 675910887 867528355 704133814 435471056 860026147 386072602 43668455 871060974 31338264 695613784 896034264 820664468 367299641 934927486 727765067 309987364 538900791 299091152 921791722 686983565 406194864 793106389 706190796 400315557 347780878 526469386 372262256 645525180 505007614 941669628 776396987 9101950 648963982 395398338 32672298 311235301 554029577 811855023 794461702 84094533 353932215 148819126 772105180 758829663 68636605 407365978 702016618 640032183 532167244 952528497 97810852 552699748 596619154 558954401 889316365 306249176 703903791 538075540 97672222 38837201 396217853 362919634 289968198 720154507 878248673 105736580 794584837 805927053 194802908 300640193 71690071 877820958 630219253 804513054 12813222 57089042 41302847 538045296 466986559 335720374 995492060 238602165 989919953 88940224 331401039 105961653 964477518 944978965 475864176 663369069 247350571 341679714 373566732 328401359 673517715 35623523 450197881 197289655 236687583 111651686 822826327 947242057 812296371 759384632 544291608 762433094 92598490 984693493 233786821 284714226 598840558 790223017 161695807 322048756 912974503 337199332 339430128 239523261 233193637 928268448 179151942 678779681 323046398 880465057 44582881 539172511 598972344 646500701 733608821 325773815 480367190 232470734 955313836 333253877 865350177 160249974 937444730 237315334 570103445 130942771 822726292 570465006 158783736 758529993 70716913 998528606 442088102 888211914 378057168 325127866 259435044 788768464 289665677 642303203 715416135 43925803 213824325 957601791 806330050 878777377 118862766 624589985 357087984 125043755 147643098 814869515 970403846 994263186 180931111 961807681 131752318 934400642 549708547 395966576 548895191 868097326 453162244 728141968 613408482 934718589 549561718 770791903 233320275 158528010 955514765 417811020 705920864 59758659 584361065 448949983 82484027 293043595 166721228 360781096 361860919 375833095 350829337 597228474 900150073 3524662 746592346 228079839 232731356 166079782 403495612 641094498 637576262 106677406 217943816 266727128 641875013 58893972 585430778 951317786 683919955 92539468 739457378 657444620 442273544 935803711 207054781 757422197 234201451 199683100 80097958 635092908 418350342 442211573 764778770 293914830 461417606 350925747 746462619 343905012 869962601 764146595 539204734 687392453 526745753 283974621 47933250 769987200 880282489 143490751 677526465 286998439 767233053 603755298 343708980 925616003 661334218 870507425 476797157 282559686 197870502 672120427 109848770 225756029 780656192 580775974 799875394 639686776 722817241 922801297 157347829 279117292 566472005 498544815 716020321 146167954 118554543 201388843 225397883 397500461 364889592 801793781 200707694 690055018 335692876 77285111 556615148 326450109 318549924 315457654 463425103 917048503 815097914 994170922 495674163 617156969 492241483 106857342 969926409 124408753 987507243 915284637 231496608 5089406 897431804 555960935 621622750 425311416 702615160 915633007 189372004 831333496 538861821 58172429 800373350 911637243 689550638 708198169 425701587 469043837 705098892 320629646 674608325 399979726 918090487 970746476 343662688 50704453 876679368 287857796 308067425 133145994 491869467 567940749 884080124 565530605 84311080 545090656 597440535 591442594 599639125 423437073 372530365 130461460 618495757 232787722 208115836 593093687 382721057 150579016 174124602 894332047 350862540 44546764 719129920 207717601 989501932 86382343 374317352 485548646 742784561 994416140 119843685 415532275 813015909 427122577 330432171 881647385 813884077 637046587 884447040 239061835 102072286 236650906 338374407 381362724 197830632 614486994 672685478 911025486 816265245 411093224 959051942 846837818 701349062 271176693 549669997 266712776 774374143 399153158 220119671 56683352 176890657 42613915 121844537 312101671 219552489 563297806 701273581 577870175 707655738 632644424 307877457 406803902 992773675 92934013 777791491 746860100 891121521 45679581 929846620 338361978 486725852 798962464 559472792 526767201 820124357 975540887 873787826 415715708 480962745 971456844 468801192 358593143 733258803 809910960 988608992 355810900 185872235 303843435 922535490 425367889 876688265 544089281 658946892 527362213 252277291 205004130 186995230 558318130 565692857 250465631 625139037 786211122 334773557 315249044 38550982 213914060 477780530 103556620 475947713 930778743 554596242 81845664 228540366 477331313 202735330 115816849 727665714 45470014 519754163 889508894 976526094 166796884 231789350 23536644 959897907 469196408 270420548 975871156 22749470 398355207 318116809 350328172 598310192 763076599 963179497 411996619 221820784 61259451 175026794 927904696 896459785 546234809 955171723 549707529 549854437 889450757 813791575 840299131 911868767 339732649 30101291 63004716 284853223 774076925 632979421 438992359 816271191 88953716 671047158 841288065 674704491 666487693 676156172 704163804 426516256 65789906 815784548 588783255 187860412 245691325 242669106 451154729 309576 68904512 442504689 972257883 208784276 973768077 780145512 428854246 920992828 354117019 27428845 803603101 746649755 821250682 324552758 170862020 414411418 969881377 77114252 462876381 271048169 796730976 204859752 647826752 860363209 132214799 274647433 6867034 268433701 903070863 853140244 309232197 35776057 841450429 492535311 809047333 188436052 166700115 710559083 941542690 897179922 519970269 602444324 801496514 614779050 631465829 764969998 914006500 501275987 653280909 585039534 322140994 980857976 857171143 941946443 172101285 981798946 210765387 94260833 701369580 756545146 533610880 332236188 168572462 303420039 312724884 109215910 644796961 330084570 500824523 916002347 613623 732992848 625069448 986125938 8081934 884759931 276123593 279688997 116678451 894759328 741863495 304836639 142237105 283010990 673993236 982916203 269568851 563208901 203789877 604840707 589377941 42177646 84849906 651133729 752408976 455352369 719780591 3198115 527221495 983636089 655817888 829775058 30712937 995792565 84135228 121339546 697281387 58151387 71653331 428720099 837226116 458533827 111619687 878586165 692692883 621577941 720743786 100206828 792970613 558586511 533862322 587212293 168666736 758192063 381907575 329278049 22054231 561105417 77798403 541214098 504987122 588785943 133184268 441559764 837436549 84284741 783311099 215303075 177237541 394537758 497450060 863634482 19848060 364602941 761931210 820189234 405303172 839259655 794283719 586279583 724642021 449306985 113454549 529153995 870040003 562855810 631499409 562889509 685764881 318571223 261578509 208701466 256457863 809133597 398269357 865634005 291996661 990179247 604039470 1722410 610376431 543679092 527285558 610478930 262700896 552357422 227332192 258653548 426167363 656926723 677584174 508235662 181528077 360311532 264102717 638932363 976139281 548537536 327333529 234814523 79375253 312228515 584369300 334106750 432986067 221165024 278491330 980126121 923579532 6830881 802038363 777774028 340795272 815042008 759423979 256775957 825080775 932136300 129010699 295673770 724064258 88493781 508552525 135561630 77205071 476234978 514250062 861918754 38995603 606206354 464062280 319982568 759067801 482696828 913377571 907009064 795174981 295318212 433089896 245334181 15515082 759586599 617255303 126946940 716065535 945634356 749239935 250389648 765153606 163861922 503946414 837618634 654356351 471432486 878744423 266361370 710866260 980591756 369378847 9496599 190594480 94103098 800851001 772249414 646395748 79020413 251675017 790360479 715186553 452328665 436414348 604454686 837180260 530438013 792762928 535583920 579733092 170584790 492635827 888527893 445809140 630223960 305672976 846951563 623108436 512423667 495031300 205898551 523256348 761715578 489562582 170250558 638062843 268845059 633645353 96089890 458105677 894379836 700638756 410890129 281494496 663181496 905623144 261098421 25616799 850642767 53170868 336182904 697975117 180572359 817431117 697291225 601000034 881692313 656498197 881781795 819253800 234817932 113712022 494418774 971649081 55483621 245190511 898697295 248963192 915286979 227473889 837157564 433200372 121598181 292525189 428822411 84004114 618955734 162704281 6278834 12685124 475512450 915226806 699278333 5878508 457129994 572325508 575860471 608541859 390675651 878595273 149140667 50010929 75248668 402477412 35751271 93193784 430671147 72643079 954582413 452363473 238087680 162137997 705428606 955742365 363646308 173400894 204130541 423272412 265139180 29058480 325985091 348519794 554339229 916836376 910165917 299010891 731093852 947919304 72306585 57721130 142763871 59159667 463097753 401236356 991289614 4546114 38310294 609523785 584066621 663388189 599045534 287369050 104400520 12533828 769872373 249546258 350473431 272409257 233203756 31952664 407776237 988295311 258252173 873238533 802014986 448606284 111524629 216832222 549841017 660774361 176445828 212741843 32218870 354499325 871148548 237567988 89480213 735990768 545332129 941697198 169141561 662701638 369370528 530475831 440868771 642743221 736531269 535790911 567822118 649652289 323474330 968661743 109616698 98536422 204321033 318532711 216320822 148129123 622572933 256478486 580663249 469396281 427721641 784125917 140778720 147776311 928195270 661637602 929649735 728581358 968660763 41815693 141950173 777275165 122807131 494070799 835446296 511795640 430142071 318971449 166016877 807273501 207901895 928983125 483641429 945523842 881180584 428306655 303079519 116827289 712746649 448137279 777859963 490484330 323369009 440960811 505832919 333106022 169969358 100858639 664478035 916664608 763566982 143054521 791279445 7615379 682494132 792982746 640893003 932515692 802060071 301775338 112308306 12984003 715190543 721502608 789162300 71376133 586686256 809159781 701079008 121188855 832241172 312767243 84139376 197042 587076279 826580928 948455185 581250037 225699464 136483772 482715018 271238783 191682149 368675024 362249111 766141142 419714804 326455142 523708068 56402876 693965411 165406004 686720496 645846962 329178956 741189207 141056801 791711467 809432193 69292089 790766003 303806500 804318138 809479799 311338873 210599137 322465766 612735837 215501271 856588769 469793164 727178918 307298791 143492443 736972979 272976981 767384698 715032396 895283950 574228219 292459040 16486841 595504953 853467983 166565701 810833464 827764098 672360713 538971453 319748076 826547941 794128280 560291045 952825155 56241501 791830493 637489968 789700873 981217342 598543920 526446388 605397513 538995689 119454194 162057028 947573412 945221378 415718515 84273001 787970136 550855381 417093454 185708517 80998251 137488901 496547173 869366392 132553833 548949677 617555811 735064388 455555421 317627331 616038811 440827055 841012617 79109302 647083599 659923006 596274012 603528183 534995757 306811617 903001885 454188335 298167609 493971558 936218875 587944875 654017489 290274590 238139858 365338048 861291974 563811759 946873405 947666581 254070049 575237627 205891065 273181554 287857697 380383722 985772231 916472342 630601597 55026003 62904362 322386801 709330543 387403995 989789297 931129896 48806457 15535866 665651935 911888482 639720350 350208780 236383678 58170704 153483527 684082961 7467601 490995428 650726364 181078407 75019217 135220540 664472936 734551635 457248193 626263932 796988826 467080514 559279998 923147825 574090222 519877915 912894984 308446039 504796191 254034488 833999545 716564481 23016134 300727277 352438371 682286017 276397636 408085492 290556265 790772831 249779199 423768024 43166020 649147574 271374996 355047644 173518751 877432206 508647535 570090581 784073459 765062601 836579013 769679025 518168865 395773748 430803830 640166129 84030003 317552826 972913659 93320009 279174664 428035328 6738355 497676057 561154753 216466183 645306438 330829421 643334546 607672156 397387071 951813734 834725914 405295681 375868545 863366868 105052274 755981548 946486216 88783037 739141668 382375352 142622850 753999484 666950408 156711952 388707928 344506072 777305363 655964815 502566334 142668376 488536714 24858164 886282138 329348001 557749591 772082959 382653656 277225345 442147507 405042765 927044505 169806833 539037453 617517902 958403257 117200031 428653337 279717442 71148991 364402407 894088730 207009550 151614187 191629533 225654361 799700821 535581109 786916768 17076354 625927197 938709826 834697440 757874688 608398491 558442441 679325777 551276330 773341322 855422672 375902033 726553639 470891486 492582311 381922919 359564774 240630541 422106124 307352807 986857851 7555140 290702869 430178328 77167244 918585023 394115072 529399378 652385058 841255782 385841699 419260066 956684128 903598459 266068855 620574576 897721219 465971159 975472352 377219270 336141787 945976254 959069245 270625896 269572390 297595272 565175452 657676709 890356841 758743024 210541479 858208332 82431793 742507702 680671852 780872969 182756559 779137519 522406127 561829266 138006720 880782953 404749247 577121884 396536546 772247110 209680411 733328220 483301036 486225328 883832331 46701174 675717813 839869035 150369200 506017506 644340154 17754220 530877230 435889940 14341931 536828831 456262891 941232079 595371177 302253876 746694377 277542074 858820053 330384447 848753811 548883949 950361164 32815230 36727148 427153346 2144559 469088128 519497921 586990683 732351177 490972899 875560941 511395902 516608792 546051302 203363992 900830569 932096530 461657646 65526142 777986245 911407548 91268311 724840042 871790397 716597367 504722661 253376056 650029499 641135451 545349789 226987357 523771454 882357205 853890843 386790700 527794078 280142565 592964740 682237815 192916658 698385396 329527661 164972294 211238163 150970019 978042079 731144930 454447733 605145734 593591046 439710689 709133642 637890185 818695824 103954284 127012734 105568995 953712960 371738697 118160219 910873818 573876877 798034231 705166115 510012772 168097217 951756083 568867923 874996482 11173045 490382071 81855104 107529129 422362424 631922652 234103474 75481723 64040328 243511122 676039208 364894238 411609357 864266052 219439997 259488296 764740214 319472185 859402442 882982739 269217993 242428590 920531075 931270254 753108628 517251075 688625959 408688791 184150513 761940348 307197147 874042787 110364969 541634325 536198034 518892637 124400050 473432065 274859573 983477327 848236933 531978333 607289544 307838804 46233898 619863185 92628064 88694147 655035668 8771338 198852073 433970894 620202579 139411259 159628761 333798167 898854359 347793351 617235899 389794400 594718707 65688001 177109014 965024896 848051463 564207268 663101686 610514683 165435868 290366691 539819899 963666692 254430507 259763849 645719407 848840389 19998571 632402482 458070708 9036907 351183353 563330804 405793395 768045475 84637132 490730066 840743016 666110796 698777680 994412116 256090195 747439346 991326633 485107208 228204285 620257118 97594083 561261060 372148636 749880337 884571004 687515838 898706313 545546153 219627147 462481422 178312510 979047840 656056490 911900235 200776386 856805532 185058150 337543600 501236432 193991840 582774392 756979228 5355802 133722401 333856577 362792268 218445693 212299776 547203848 985770165 917404693 117701646 630159354 655554810 13844171 390733570 841127829 236453122 81859566 615326891 874815781 695372567 136460168 117553290 774994572 177220449 732198903 118080491 844955363 478444708 838012516 912947432 166855994 379529989 99302458 315429594 795817785 779813309 469282938 421999234 505489527 423323685 423860989 270068449 731760723 790898032 194754755 224898376 156834774 452280501 364149305 601858238 40400442 877842255 901468998 803417097 690945981 255590277 708449073 697119749 59361012 811357905 357511200 226865367 459616515 970960574 63093821 224086566 397390742 590667366 275707955 616471499 298913644 94742753 871687923 324173371 712949306 7052534 686775902 914527673 831350241 364550910 30979937 350595058 47250893 642690554 738157323 318683646 776974219 798526800 259996010 27627856 650473238 135743965 537057820 476614518 311000631 554413359 534633041 251016575 341191554 363308477 772456214 929433403 723743252 445603826 300872152 993450129 660209336 954360804 682082813 404700527 9085016 191166532 807112770 166518085 181520550 485285324 885489402 39186186 647276430 111901406 57025811 549088799 218327429 308141556 231021641 843578410 142524934 517468766 768799142 81353869 779760585 419688930 503207688 133449127 564221416 495338329 6126225 234260356 819400382 259266117 923828274 800905274 322297899 362284261 311044207 154242914 323991647 648963092 698064514 631106317 157365819 857413520 577684912 727640346 701686971 148743165 146471741 819407740 679134034 896242376 420285148 742047258 450744678 252158074 320363854 914616226 962231283 678162521 613222577 308045551 500113862 748937659 647838170 28483946 231902887 446751106 332583538 227114513 109669915 534467316 294632865 14745143 105940153 333130702 623705879 248787545 676430060 962995120 667177571 261768002 504535563 166793163 134375236 586891447 976038027 334345487 467719052 442901960 856033696 568309812 436353007 979540127 282797312 574859636 471867879 210990662 913795032 603149357 53743311 238860311 119998922 532575342 149354978 865008669 79289439 541426744 571133258 802182056 407939841 744160118 766659299 510052511 423298711 489912015 990005560 813614409 663594738 853959665 853642395 13575709 127730822 684266166 115643426 351862949 719975910 147741673 58997082 917671414 686481854 18465255 5403686 792716520 735959038 697002376 415774033 117994838 705705473 552189953 312678527 406016548 577612756 214277351 28581985 236921359 511887786 635759449 619152074 937114658 350456102 302976388 369028476 206311706 450933688 294112164 907856395 502965441 361102450 581229103 338860601 497726455 296725730 753894096 668158106 322995396 928575155 832866328 645917720 479045823 178331342 510304143 253533677 566128059 300765202 178900090 195991616 605456657 978025397 853261851 295738539 104639080 859311185 474543181 211972537 898859579 357232297 385049771 562489224 604442880 599182817 676778246 566638623 819931497 108423580 452448503 62487542 964906060 308803430 770055654 989617994 810352515 874431535 882198425 411637524 266548645 293988696 723046878 450470148 21142986 149974320 935295037 333822889 369735370 777918937 390327801 970310218 61771795 621926908 539904042 573280920 113181601 10377351 980699516 877151141 308350027 737926643 866937668 171440551 491693337 669594541 53222807 433849363 497894178 637971633 810092212 572218448 351409672 573315999 649308661 648669590 298854502 607807716 979372476 893548572 71854478 175411196 500372231 463405667 697680250 306587466 811568316 121222786 554978022 424500795 315662198 210452176 784344915 948596442 440370576 636612284 969926698 651650867 200675931 191090906 615987889 132632766 565623474 223729128 787498678 264692074 824172995 647278958 26226865 745926817 679226763 456178224 959452167 682628021 814864240 81289037 924239462 720339423 659734118 504277847 172575844 996549958 247963480 452201509 17917855 123276534 772462999 104395349 605848582 234446463 909308546 761972033 734144646 175856775 822748426 64882070 666719162 48660681 622294586 770904112 526055248 331948632 57367571 182856829 946381474 765033620 562448111 866848900 342592139 761101351 117326533 82599195 825645407 859114585 910687668 188048769 9943142 522054938 310234386 431384034 823695660 348785293 338441724 569510102 567656689 39576328 460834969 397839205 817700591 797480114 556750534 955227644 983892987 224633343 701154490 970190841 499419969 526454360 246901427 763448934 788452418 337921012 200009320 829443848 193879182 188829724 625071180 775761318 415759095 95854859 835756301 28354196 651310282 341057837 404126831 288307696 761834719 672434847 499678703 250424291 348611097 970275266 770285010 81506190 813735553 469298212 564951983 635059657 938699368 599539520 6043458 450247856 981760596 84253880 641426364 681545165 396798506 697055848 152397283 808636732 982695723 44118620 859690261 33934729 880671935 643529685 667110607 409029972 294738084 199224026 759518453 862037332 738892595 712091234 183211736 322583738 306749770 597685143 18458611 691208231 736890901 521720474 19836466 324016916 830366008 950872162 899742622 104793543 275671599 627414167 108933238 45786425 197194764 234088105 623010425 422510937 890204216 954767268 598892331 717029142 780088071 746943214 929040631 874788380 820215528 310795533 87938429 375469507 530914546 86205440 236094951 285217249 751519026 845093273 992498661 509535124 538350955 13358911 927191999 925209172 689792646 325852516 730350027 477536698 6926405 725816208 663991585 955801277 622702083 710631268 169348720 302021269 226876819 723103519 718347532 729604916 248859342 421389702 748043548 5832068 944520940 832747055 349670351 918517030 880913406 918369819 993344422 110922573 117170329 219382964 969501039 226375286 132953079 651188795 801708770 19127324 800354211 797312835 155931756 84507550 449014989 67526952 893093262 697786703 322171943 162587327 407089370 137682757 852332235 968777984 566712447 669065690 535701101 998758433 853396496 486805830 463920962 711686309 530772778 663013891 370615831 98741504 284353445 879643298 680438302 375193184 821023436 494529968 551419640 294322087 979841817 443054187 224103087 387435539 721991090 364847315 866051155 162483320 471167535 714896315 861810756 407106308 390880463 483113440 699906748 390333613 836457330 691168499 242061298 547720089 312386203 315870988 663744016 547450199 485443042 831517875 63150890 666515302 156171697 499068668 630412602 305455048 339158667 427908207 799442346 111110904 671239315 529481234 941477133 422735001 449114779 889603367 506382285 624578735 722843021 957085697 963630257 162748577 19082374 429715889 683671834 613984720 332153124 378389685 948310396 552508778 872611246 628677856 794075828 22178032 757903086 640616199 606341208 660635914 570251762 617324141 914034112 522819214 366431825 764830222 291030318 652054658 508839267 55218156 426598794 680771705 434429127 768272013 612333402 847972696 288820038 903797363 671558764 544644936 78877863 571467809 948351393 687854281 7059982 505777559 916477223 29770685 872064665 192448935 422518155 60900150 521465828 591153370 139149133 514722605 356888836 911564870 759016611 132798108 560307233 522675562 618760116 339292441 87339981 783098926 616005365 403987250 885144542 312186318 383301559 198247288 532534233 883158785 963970169 667362239 806428243 470426976 347627408 701505172 376365293 568949923 168642291 347206222 303914074 755804188 818053058 126721211 263272160 632398786 119995558 79011846 102446899 528867557 87300795 442514486 617199891 792122787 382250207 498647323 369810880 709396500 416198179 415356933 179304133 7421458 231652889 77826870 378665796 154691690 115376973 578128767 569540400 650854628 516946164 753264085 215313456 559785250 874806628 377136291 582923170 761705328 631278344 212081450 964406471 622162910 710603870 937828911 386787550 335000394 324689961 140896563 881569657 670251624 297997856 706733656 937689219 446798406 407105153 679819426 780234582 371834364 538980271 559577564 725673363 775856951 221174318 797583819 655416209 555492402 596604987 147634970 585503599 89859849 623730098 282090960 901504631 686868198 199199471 882880612 773626315 965375648 133295832 134757414 531031464 394535825 597773275 416305458 555381642 467652801 289085705 610979083 384763543 76389347 1840366 916489236 59795318 265952256 212897076 705407853 909380276 218534401 576654269 148456516 855751911 795985071 878786733 651882615 777430567 691257478 492297932 451873615 297097355 375259039 606700447 9057829 291989173 425727703 683385664 183535823 41987788 961212481 167944982 157231698 712455543 930284313 160038060 576702278 403647265 826491602 755759629 520414778 813217503 574689851 878524769 397012849 445453175 627982468 911555197 267395140 118938016 106036243 337668516 111975997 465712967 32494666 93668498 585210856 41132575 412510317 538938523 87161392 698859139 202064573 185969157 385056633 517791301 906202085 149630924 27748040 578777730 125622785 979912816 381912102 252783585 281742347 548389578 911356765 77421110 375802280 357379895 747527262 476342581 918337 374968178 168141174 637634439 800276050 3893304 161867992 485036543 915007031 521239514 864238113 843135090 340616271 503655653 516080377 511073894 908123888 435652161 846982897 562777564 756639354 973244253 919863085 296734015 875558362 173767765 150641069 437698267 189003781 121740961 470554305 996195061 323034512 913640031 758097243 737772319 964219352 610260247 327312070 372490814 593958274 934318236 981032042 543783909 71750076 449235241 115214197 73349672 467528452 323195876 713306872 210586187 656543754 664920299 640858482 682753289 282291403 308427027 696737030 320729808 303278 863196604 997376329 578404767 785769941 775012165 393773756 514194990 755184404 852991627 14207895 397283928 164562704 507988832 514720191 151274444 45500446 973413204 490304354 250181066 144985259 488543910 768142086 141397847 904632977 69794974 719670256 247406035 132616196 183862321 753978095 219662757 465300370 678261404 992412517 490505809 564571283 696883739 374294279 710887899 834195124 843032842 695906937 728536809 323129481 598698563 431122867 932773712 456446169 278233009 235941341 85857395 205650023 746349651 536301380 900182862 148434290 540363272 16114789 753781592 442735098 43823715 584916776 612818904 45947254 592178800 360278281 944222961 569690997 521507302 705831196 336662099 704109102 796298940 998263129 587204007 487943975 608694245 767481122 470867294 721875347 297247123 86410408 279290493 268556111 239461847 998024391 830299667 206514935 669893022 292962140 195942029 350324430 103114780 479684725 592355331 629268839 945594646 785521897 526809678 950024663 690458923 367382205 245267285 107918673 5630231 873955277 914593469 572646333 569351641 1552628 935748510 230456453 292535391 298554246 427011595 506342714 953960815 322867144 91919529 148242208 967634146 744285303 402945012 301481430 929685244 549708828 909891395 300241441 806048112 242560577 986489269 105357360 3926544 213703617 367200925 992667263 958375234 37629845 622006931 539648550 67597512 46416679 679353807 626444243 341590049 795951351 255863469 659747065 840461614 676297487 327923241 795234792 1527 785041672 493673392 676305053 31810066 330747225 691727041 221088667 460689664 763431753 305758299 202645469 121921039 341999594 861396963 843293651 423944585 18327753 658142939 838282361 11948030 119671158 569677866 92802160 892430217 760468143 236722019 493486657 855310018 946986748 507429059 177076593 414347636 771401755 826200359 49728358 517937410 220826601 892227773 554082931 888588533 419906424 648438612 461596322 466647276 141901133 947072727 731680673 619534 711737290 891455409 150327626 178216277 697661078 185218795 208737123 459769672 385057413 438615619 116864868 882312439 295333984 986689514 712969063 63144573 556207427 265467713 130113328 685526137 122388685 129181821 944078504 670684621 247538732 618008699 290860927 368523816 948248347 671683322 289740670 953387665 260433071 651957390 50944185 252979938 510937070 503563751 693168257 320961639 874676513 198014140 178870368 465670683 476401718 642300639 170138919 24580473 146766034 869018777 213543793 251177999 391921198 950578221 765553192 367474874 409288832 827083965 509764714 118982726 901838822 431675820 876973789 906379335 6184804 709772893 446569513 68816742 291355624 984316734 290760536 367407699 136033878 706038142 244653629 510657060 818224167 97749428 508132932 138956108 44865008 902339965 90786494 50659370 697210556 829321957 911210596 239338027 598197543 554266990 391741648 421651059 841052553 46366849 499683317 955085347 151398620 688899249 965868246 306228555 686812134 692819254 829007231 985948293 870611188 84884783 458953948 351564839 842622869 352135125 114007633 270169346 750775957 118250785 263299124 561947955 720453302 440921870 818746452 880528436 560613868 766809134 959812845 101644442 893272453 391155940 406440059 117027165 31580069 796850081 667980506 740696350 560802623 452819106 732704493 279616947 239147811 139221720 32671721 186046990 278992205 205865894 133098127 490440863 222460298 938037917 606419388 581197767 931418535 841902520 189410607 651891697 473284603 996115943 162485300 235357768 244640656 370754911 518758843 260679231 380115087 793855872 143217393 733235415 141784952 970593247 304025625 755574564 850482971 497872479 762567043 77862112 296751791 349053051 498976580 437345603 762571553 116939140 18855146 871604846 486118546 12086850 728192342 311619331 403281206 637763893 518504016 969062127 88400825 362175796 242211512 280826408 197071356 548076040 376815459 948011210 897935626 294507328 968208733 235912380 539352725 888300123 39456067 284567051 686753392 155840406 915573777 295043846 485912414 586354948 62062005 76816414 928909807 852532320 328254101 991562482 74139120 771245387 659217026 594949480 854221735 427172008 196114055 910060449 311871907 394637846 369512856 443380564 942440846 56646439 383674363 964426586 649216006 906072698 691015736 422497612 644745104 442295528 268582932 11308616 341996711 253786369 804112467 785030269 773540149 384794655 854265280 537214810 497148761 418290079 859828361 205098575 885205564 654013983 646181702 688846603 476501182 315536221 746849548 468118918 626286804 148998752 908341598 770203452 176099054 204790597 294975535 774574951 710499399 642795467 613698156 56754863 429041060 442841391 892148189 413165597 214954409 728876884 173899811 812620063 539747032 581343671 53944524 937495594 699263006 29224627 887640761 506885696 295854381 435231999 306997657 665648033 820705656 639766082 772099968 794686511 982932441 544055489 594997622 974656503 246719468 835287321 504678078 922966297 52588120 125778371 340546104 836786180 746154146 267522939 95024852 370261670 344315728 735829984 804311964 84170555 464544480 615720513 581839788 576622647 351863048 469333092 207267247 469680843 695335667 326744299 246121926 296502287 424187496 95114412 635152387 392736762 997199052 529802042 78637451 224615407 973646069 368442003 650123246 652556714 21251788 212354316 139712557 32413795 182255081 912150265 861887699 358641910 839906028 241483672 474734973 385587268 748639000 970301665 861151729 369700890 797939333 68034886 34803442 580753753 37875772 932527315 174137128 984942049 266765291 616368808 824688083 679747810 56626746 431743397 77264894 745245037 941963718 88919800 330460515 93874298 494899819 935145325 567042375 897301413 248223941 681694772 650442489 966516800 615207526 289547531 935739002 402053363 356964681 183703744 648664130 493814788 565442511 850276392 4100206 246053914 272984550 116998383 442116143 846265638 863837627 538408380 566470624 413918494 490161971 918752803 323729161 214640259 305811905 271521999 574680321 219240778 808461555 832470774 71087862 960213540 6468004 669613267 253389029 838667682 612833462 873116263 601195749 731195730 708030790 854438653 814125481 772241311 551344980 876962943 764439133 404057627 599194942 314562852 64172486 802218525 154463971 676308480 173157645 715071787 504374072 404297223 269790403 976885122 770212162 88253001 318249007 315627079 252690853 919204550 117282715 938988133 389594562 893174188 882181265 840445903 659346026 277337047 607093192 533750092 693480612 107863075 443287446 642927713 148636535 486934933 346243788 903615908 380240627 970866521 407824832 177663650 881486429 986936602 801063922 663995049 362428189 971472957 72926917 254213809 807620461 158996374 845425309 190826031 878368162 762949965 863461652 966117379 851437908 636016343 315753857 585139316 30391385 472279088 906271640 626039372 824742444 391521056 489436440 751390745 510543503 24605138 653893231 322684532 956852131 29782768 539466815 902600514 155889590 174862226 529846177 886744150 865913156 406245105 827429675 672101181 557286153 794069850 874112987 100598974 698965640 374185920 606194932 403993597 480902816 63336186 582915621 457425959 152756662 614890819 642596301 816318535 348080834 563851347 795132707 154842362 775670884 999623695 619976040 549707089 925016015 58375470 876638564 273220819 673239703 958637870 917994259 458121562 484049875 92443329 390997301 724639883 684122358 415865769 456984342 554836319 93120066 629753364 682375072 868445684 625622089 91157205 833806240 240521241 531421757 42619226 855738101 575251530 467161252 108234715 735429613 142895884 140898163 836239349 641962150 213213295 682069923 169150439 775488501 301780784 808276211 938557187 806806629 632612387 98734845 800167429 999932337 840377005 453265913 462747332 843813422 298217303 423244778 609841693 617350254 674588822 181351447 165539673 466830806 630415460 930233228 468743358 541072779 245816720 760443591 80312491 871818935 745773590 729111593 20541435 580918368 241620679 753412144 503612726 186744959 954795191 504514700 214820480 639197462 35210101 857057843 87368575 406924459 156712559 641037659 485507346 220351391 370763679 163715290 806532709 797971175 494946040 399236053 941824485 556231126 505082399 680921417 594124595 799297857 761456708 595219725 459749044 551379369 621858879 614745597 687399627 32443976 30275222 688045127 368580780 581158101 555548526 46211222 17653913 441603966 712733150 3735396 942667136 586778769 501663033 71016154 59658134 383440122 576696835 734049838 843221753 518660725 347180725 238636357 274139915 822542379 651085806 124897736 370314854 207998344 87885405 742296195 285168622 268909441 542054166 190055767 910940766 837487699 567655731 291678676 567767419 896194238 936160325 859352682 714373903 545483313 293253027 989957440 766373560 818060839 215533314 939218703 762298206 743580903 861547465 445384959 865781168 895518281 482004579 519176973 867094127 72552827 402957631 779014856 112832554 889452650 350529169 855583412 115503007 839345694 297143637 232729138 972826594 688071052 845303368 829420665 903735137 820757484 330035729 105005082 315058986 266664704 836150747 148592845 820968563 450866772 849436149 667179939 318344035 523131625 405857549 571877856 627031355 558260159 727365467 408371392 833234366 123310464 664816459 24749269 360009525 764472052 977182125 602081946 862690587 560607840 142700012 353264598 277798466 235650756 538731375 823927909 522061843 790425893 994836815 216473250 930025447 150119258 865782469 19342004 776892143 351408796 399724900 469810498 763601755 904031288 337770131 472951002 203084207 80691334 845983054 474256742 505634969 247450635 612817183 287869011 37696588 249579813 963958556 171717917 136163932 488281669 373554795 593876129 529078702 333622259 812731868 965156031 89283344 971416415 86817432 993695647 424931894 202025575 445848186 433037657 783535772 238204693 635082021 590820580 961490477 690381614 551752539 900090898 254595159 314305169 98469200 449821111 144215792 515618224 278620212 389443148 430035933 190872184 481881432 506146046 642286129 313638661 403588061 695087716 604114457 284009047 481737038 981463637 135564767 734964685 71392543 380737155 863254372 880302503 294032551 441269060 741501669 710840394 797462529 843312467 772437229 67128145 559716095 188264418 195506993 363461040 237162556 874958740 109869396 326591995 786287980 352043644 408653718 594204685 703593049 894119944 731713579 775984686 327539695 379133087 838314036 575650238 147621382 186533158 646808321 37357296 610713128 890817170 632772897 929484583 127504323 516845242 154613430 630610769 548067544 327395153 635414166 692912298 592747294 389786888 504568652 794861882 469120699 497722047 958198689 295328461 877758768 317512860 690195199 602955185 131658678 270797385 282333998 721321074 733549748 983641440 55577860 775288367 770134210 729351830 994915590 910957213 72607439 513257051 30588470 248087677 21551984 5175855 360761750 837818340 355557056 381540744 670658997 227523591 182876460 549334430 611101304 761389050 86993549 905485904 549725721 50584727 326115279 821420225 143740557 680525133 29057645 623996233 35349017 573819313 552592378 961074994 764674817 543329612 983361857 417760965 131916019 989750112 502349013 73731025 211033180 830144701 727874943 168865461 938641714 113926144 723309645 688053942 360315707 817251901 754909247 493967678 174060241 39679835 852835844 567039709 837892931 692563557 754789018 813669895 75191236 116680139 139727932 90781431 283195978 526364418 636502591 269096026 402380707 530303620 543495856 145396309 418065745 90443317 127939846 852181251 611012593 610679756 918793682 751094672 173541738 659085753 997626890 84478806 543789655 667995137 751989123 18785823 175136549 180269840 211714547 693443308 406469696 291085143 769145971 736097572 607163516 830105507 514700201 271885766 395447398 644002938 679587797 930481631 425563695 355280685 490506849 882494205 431124108 423563569 556461050 457023816 461655492 872042639 164991054 479317255 268315535 253674279 178480413 631556134 775951365 251799614 929460953 110648450 302001215 86723837 109453381 38489657 31253665 840248662 773491228 59416282 195119140 302526632 582368965 124260003 68662557 921641576 900267514 873626693 467552370 267801484 472408154 665465132 491698844 264851331 388887498 486090191 869574459 969624003 244666559 270223068 789873828 582860591 573428982 975846853 31256268 22303056 649409110 828777485 191355067 179124424 370887746 890798231 573477244 5244694 203539001 831958119 395298705 724199593 733735628 856468344 820628584 94049700 122169892 323464461 780639860 763358877 167981772 368030172 743378395 460512238 282232862 77029840 364810030 227278884 682055606 503183778 647106910 159935640 569541508 878988839 369861472 151465396 275556872 724302289 142566194 676426534 160760940 602483670 125768977 113412862 478877161 689292673 300720551 378084898 503745639 771296153 688680020 659377764 970527318 323546712 841703358 754822620 289320794 699818007 716010798 791099232 260174725 367637487 356899967 96681472 275634578 348436095 20445258 685978276 646880478 68066174 492623263 986475969 904981820 228547233 5881181 451701261 168526543 266419174 816551365 491102062 942445825 295419179 642736092 548844842 829897768 778521078 840895176 890869390 973876628 718783715 411345739 774000186 149159561 895723963 760120238 890452287 440074439 841737739 759260112 784498691 587775436 337204119 262965536 232381256 557888413 780114134 389534636 539264315 628379408 893627545 651053434 717164916 843312869 53879660 18314223 470734580 394111775 385899844 108402763 317504531 272483297 311077150 790236926 55558228 819327556 825595356 57939022 668942338 294750310 758520650 717749361 603404501 160216244 186065326 544138169 504225697 488851759 521991904 310329247 458139322 309327916 814349999 247494869 112516171 409703211 4124310 998648631 769042252 364711214 555373549 440954125 987056997 372733216 214750834 153906594 73194896 269037899 985457431 828767432 438955372 346228986 431545825 929163443 717679743 914361328 949459138 230654770 766891503 385289853 778856165 285176248 319282460 264712144 309364776 972948548 655607424 378779218 214840796 56482971 544090854 603770023 194382172 224029488 575758309 291082374 623961030 790975866 604177841 959160115 814794302 70898181 551808241 600674268 67555033 609334362 548537600 448944595 351974212 461096403 741937095 280994117 668223489 400737914 515157466 348399100 468873562 65506349 341274187 559598394 981970898 196860170 81264844 640332137 622184283 840401692 882031021 393918249 179575482 74259504 26045309 984465302 631097355 139799260 265569555 876217826 886993125 176542553 470465147 222732557 45453041 577416757 706834919 980430582 310818644 16191083 684957182 84181549 256682453 233137441 505969550 891030344 713187490 136594727 339564107 337453778 461492788 856395613 171690305 295809890 684665867 459414246 26568424 492386252 344337168 91047646 291738894 637012540 887699154 505194485 262960967 946631046 605587165 148616497 646077785 878306515 436823224 482079357 594216512 938800787 55934104 677871625 845847515 101122852 297287256 973804648 594104258 261932034 157474762 956861727 902609915 718993728 852446578 700378157 810228593 584137828 667267510 628022680 83852179 517198269 766748464 731533755 782957606 277136768 152060658 175114698 437313111 213196900 304635023 234846877 343934073 731256701 291464939 89486746 106529742 345397221 274543156 725599082 390314365 324114199 90653218 716381384 305296485 375613759 554110835 917063804 347342763 45729305 663846918 190494754 580148885 40779239 47071078 419352873 502738097 68923436 643951523 577890601 106153329 953488573 213461148 373551615 253790395 752725339 176702815 926889367 735181737 662116726 586865076 534950197 429311979 369045516 844935796 674017466 303628899 438593023 868728492 304570880 724151485 770409091 393298078 381394802 871065687 929091072 261090833 16147593 750423648 466677310 62097253 401583255 157934235 709383351 675152188 632571642 690640956 302248595 932833232 238411411 666793373 743399205 960624414 315911078 177770286 174972716 167102537 790842170 239296407 3708677 146547245 312380115 454427277 859994427 611035721 381573550 277453080 733369268 738303940 875864081 107022674 755672087 238754804 703054785 5513452 622488898 710570797 237807621 723792958 629394786 342847194 422376594 129289112 440322126 693305350 842844254 609854840 355928673 789669345 277882771 423604505 205560297 7772530 278260976 277870894 810684781 820588259 809811788 887275057 281803365 658107054 5091022 120547843 363631877 767567788 983468846 65836235 145740757 79547035 342144105 727751051 148288415 694862914 332101265 9517674 797257179 557703560 574355846 831454045 968203305 265861819 459421057 107851432 360732237 519311683 886896344 661116674 689683543 986603712 217563648 470044592 818954 50055666 286031391 405014329 233976750 903088604 419127618 314718170 533020948 388005525 372725348 184361256 354475181 362970343 95655464 567087025 972564349 243657976 569495905 370241103 913068449 407383625 271306879 723149590 875851806 885084309 489550695 862845335 337277358 587461875 532081924 803769545 240509139 367284839 454987769 688420479 152093618 509305791 101477384 954158293 434302108 261888652 991321085 219462688 231702063 664646746 827768429 208848329 423363915 782523322 713815944 548587627 157773391 690483037 787036760 587894315 980081298 329540402 901417336 625623017 841687356 112200815 212944745 558922288 406528966 295613934 629645237 584010059 191285634 246140041 801592667 319905045 720797258 132837433 497270366 385877958 150849219 949588561 73766599 583051588 825534293 555679951 795600773 122293466 786029945 924765933 171890856 405986776 499066213 7374317 309308363 246561340 636921695 688556481 810880283 10763033 268508503 484997474 424487650 335207668 643181277 514475353 862727367 292833660 200833507 476489898 603390939 472940939 277841047 381970039 376596135 876263071 751325855 411533393 216826641 323925121 863226608 817115366 523266256 303033446 658128491 642876465 44636537 470681506 156233298 622521929 621365976 597299420 471507588 627696966 341257364 273886369 601947902 951776157 995698446 695005223 139281496 969159491 908659617 219418079 867040834 474670037 579095730 879589409 434380082 273886414 672443298 38081452 400982906 985756551 501898677 760701164 379697461 246559547 385537796 853522794 350709004 798759050 244189062 627138 119277717 511426424 854001558 670587655 944791087 230374846 208625519 931241639 880416410 881199664 716895725 575158444 614687256 743766996 297522646 225460843 443275324 957380647 478356902 873145972 562715844 847421812 322749106 55436217 326491992 578201707 455861654 645789785 740283364 772675211 356084795 488521921 538046145 375859916 706962370 807568782 262348313 598699388 30182125 517425435 976417530 772494783 342052131 751972409 207556173 512844989 122368623 2648129 936195848 167451736 857520694 386789085 972366188 621883202 259614098 100891619 506527594 683814002 99408154 875274257 41481901 336008334 618077015 104455841 36407686 131610263 575436313 334954771 427237645 475642478 173977286 106390884 374784074 690465351 968591389 38853642 312055371 510619550 590109691 27882201 445976589 679369130 230363206 862980665 487842728 989909728 271559373 646207409 438794168 423094667 752432976 92037131 108706832 920251720 716270682 323265520 5924711 805794539 152903706 317864050 900782891 719615017 766541594 849931449 536556383 377175044 235456093 917174314 204173795 336118586 591442530 104380481 588213212 724225605 620597646 239208403 521210128 269472184 637148450 691136470 749948149 742877100 488696666 911838368 379360835 154468575 305524488 119852614 226486248 6068182 836567256 403160874 734945132 67654457 417546107 414656624 327619438 744866788 340113487 882306767 852560887 111533246 91495685 181893732 180561674 120770288 860686442 576145366 70854008 474683948 65183186 896881531 8329940 177868878 104333532 724408499 677515686 635589376 256500525 97745266 868619246 914600435 490949894 704750349 738291781 466127947 714970394 137984568 559450115 954175915 811925041 241085602 287387019 731371968 438830100 345500956 360262728 746750840 767304698 503310989 956646892 366424917 123388586 562937815 588499384 529554348 148904620 495707578 241774841 600852718 364619639 56924133 547170293 430282066 730269625 785606295 228040591 781370973 886289513 342805978 639260879 39199066 868943201 623120443 246473000 767931797 786237442 287791314 771042448 558975882 425679517 854477766 242151556 508378685 733915993 85518156 413021952 500551068 941766788 764408299 251327954 349930388 490100236 279072182 184965356 807855269 777281488 624650223 168352388 29174791 260385354 864063153 249413536 953706728 12655790 918965502 67617222 676446950 567430731 372677643 888454728 674510928 182659132 535481285 507610575 17342131 613362755 19071333 452492991 368617793 332450146 602297907 170467125 753451221 204851528 508131109 855093140 385692073 934858358 17642111 774586806 919165659 762918475 939257410 940969078 262371755 131861198 93468013 866522960 663281925 885324141 267136508 378849581 151541399 22592294 159148875 516395297 809823358 184487436 12511104 795679539 347945713 784540333 238461313 643194581 346057598 908541278 699372587 378905738 795503443 804490816 95288108 55989695 879217323 953953904 645328827 923744429 236037510 844965719 492076588 172798380 596793240 699271226 712921088 184890267 562829073 151035036 325923181 296854964 686865295 681302081 322927882 169829114 992427230 799936830 620888227 327568795 126199791 171320508 198923705 776277290 562422171 122683327 366943951 569249429 362526287 848522077 637311735 258985812 932846078 749500327 85103666 306674770 42403426 881378368 331009386 328010703 258294015 571280768 938119267 189884968 530438348 621438502 723251611 858616058 430699955 990039594 545903016 209701752 528082351 192571279 879665065 841458785 581514736 730912793 175441163 957241815 620242971 895585680 452693904 195990078 697643049 106336323 974247475 954988407 19351594 400639933 328629169 113186952 614265359 182180302 258583060 422039633 852881813 707982573 349017013 310402721 651201883 673357490 941470393 813697928 725799706 778397026 434603607 627538709 823879753 393689375 668638854 849746178 954646054 872783433 484474029 394030505 519447542 468261982 629502196 301589610 260624332 136071930 555644598 170812467 384510954 590387724 918248167 905431133 452491735 102494419 388108257 120329608 929556712 559380210 937792574 374920117 522676378 433035976 21107974 439797489 170378679 268449551 824688272 430830207 149730617 209332956 38707890 398275188 696833869 245023092 701997495 680264549 379687745 893945659 64602717 806430230 426630286 536690626 744986254 488181467 391857346 30969702 256215344 657003801 987232150 950402225 44743643 215483567 594812591 842786563 186880475 878398441 633746900 911597601 667301607 683914309 653565422 926249918 122775721 918965766 149181488 103136984 629526996 161747817 887187499 877641232 653493699 978910569 934428823 60425981 187989114 355609286 638798897 310481401 302858599 35985306 415166324 770558083 53339970 33819734 61191524 145464120 733648157 750981953 424669659 318876057 265627497 812939102 853894265 304413957 413360271 774700003 504544971 100639978 828716276 853071977 392568025 239428418 647392423 337581007 513984900 274729975 688018618 930863622 268710859 324887774 664940245 400388418 19433673 273553490 382861147 944108591 82096885 408787387 926195246 449156858 340654152 821253006 555821278 963391579 301455774 341576594 690007981 185159120 272168864 968822757 621787372 51330820 195514088 443725862 551244265 553194712 437515516 256490240 714068279 642805554 130041342 936220820 338235225 559816430 413744782 655956960 459228914 916698462 207116350 12699322 719402528 981126629 812507585 520292418 439532206 142334740 652782936 985893066 253086113 104223871 312170497 647223410 289123552 772614013 599412693 116921125 70242682 748502808 898270162 71901670 769319021 416774859 416222912 816292630 451505939 551331285 876806281 631162070 743840449 189765698 285727650 363767402 398762424 630810121 304434295 508806920 656199589 205739749 268782099 171813737 52797871 198268956 801829629 420245132 948738156 585405989 860045671 176568570 719968527 448419500 87411359 353320870 793184683 979971221 221584987 658464063 971309534 664669983 674796375 809950918 737665403 143996168 191279456 198969482 153618129 309294090 989572729 45483238 608436536 435588512 911278274 635926265 96116456 80732693 635851162 459405975 782725223 602748655 147843437 371829920 82550420 900877570 249685811 236155119 735951332 702771536 326242052 741093787 391280527 20921555 693065161 947830987 750990403 318298569 223212028 77807570 128474908 886474283 446474112 910534217 611072712 937282133 448663051 361515554 24622248 574678586 825301323 653536535 132275902 866044437 63139056 376930472 112012991 927694847 935997080 209921905 126581337 724980545 101075032 535197823 483450686 449969315 770286086 680544800 18738869 450288031 761846989 385889937 351529053 638931166 876148965 251665295 605790140 592919307 309981581 125729835 131514605 697889851 153462874 491170505 587729300 427926255 321224458 641124317 442346520 735079190 158028774 432394582 66590768 441032791 190055447 429227601 636594677 198705243 81837917 136259983 101499352 543119987 357765702 752143741 143087516 731013835 296750775 641022092 453143260 69139828 25164455 935444005 509902633 927848153 4530243 591562651 640002372 386725181 843531557 369324517 364251704 875453695 640978113 193851632 195067937 886616921 436294903 380237467 283160938 926220982 582293470 20853088 20075047 663161741 583958859 776966937 844291268 755698233 450078655 886832306 926104467 806591072 325347317 220368507 340980053 160631191 512336145 535070660 940016315 978452590 323726695 703895762 867790540 677872082 442141508 465623075 812066421 937443523 132176641 807264888 499043123 923370833 866121859 312633727 620514569 424072568 278457401 601135273 485736498 403923504 568699894 938195454 581375286 598526043 735541240 688501513 767370158 84506177 773348526 168640507 367319352 241368106 21117968 838087626 454610864 178884268 41405198 2983054 976879147 251513303 4559499 968187836 17844885 366746285 276291843 915311993 590640674 18086267 688944406 9996169 106466570 846216394 502162040 732418044 33093254 7122291 772993878 873233698 238670447 521649032 613813676 553745710 218003230 107564310 135669123 578654353 262971733 303228765 679784546 7825369 365480471 229812471 109887454 896614340 994186657 833244256 332327771 832753143 671376842 437270019 279990651 671517698 196351142 601414000 377808299 576253436 87977781 754746837 39630216 221879491 281783758 151773317 994003836 72411497 439153928 808101473 143852860 159474708 768986461 674665049 655023984 615276101 863477447 646658452 54745246 934693467 99762608 698636968 112742158 596725890 159131832 235989006 149094254 933642542 751990211 650256169 97661019 319513348 494147058 542390291 44197557 865371582 827976516 899948550 64734305 55751091 635802899 954674540 616088895 112870557 821195448 45875131 918918634 145031249 902569810 77765649 637156333 178244889 303009938 425775159 135893868 886287147 270113385 921285658 713250526 715092512 686400397 34562726 529116136 461489903 58326998 568063830 654251139 565018429 306560328 657830428 186002292 885603701 407021647 255906347 179034034 130195322 698410996 520972581 178811468 958079618 74285230 346586320 36740439 368502391 865372389 506186844 101537760 349445389 340336723 863697445 702319484 889031762 667602590 850236388 403617 334473160 195219424 936161355 28701095 643841887 132801771 977516425 517678668 95103581 39195315 961163426 151302715 801726740 215763416 743311187 490938107 936768198 122992701 362866746 915282549 907952010 289219336 217067170 371972130 512613267 976886471 494662648 497376755 57296804 131379302 369912730 49584924 932404189 255926675 857485674 638281509 521268107 894030924 97467829 814673724 3864199 968170245 517961349 869891147 152407891 677663262 387606894 943462825 507037941 679800257 436867519 268720144 230798962 19475529 226022993 403836775 581881856 994272161 911880377 276868495 492501606 468693008 69658508 808105276 283302455 534851792 441207405 18825810 951570952 615540432 999447936 219026149 462777024 46952471 938056453 930984109 618656080 440398657 875168489 654578901 185275361 21414585 610702811 269375449 533382204 914767645 204078446 282581559 876762452 71017649 579576341 108791802 7158766 731319572 58114488 664301154 833437016 251963713 678525817 885293077 604520957 897466761 143622644 941052679 478173849 166218467 432872701 78369012 483718670 76627253 659025859 332135383 841124078 371214496 140390923 93485215 463689995 383855064 947341954 896306306 169226541 153788628 662153049 795656707 948985335 6198932 706515463 400819058 928894706 147019458 84125107 299259624 426555696 49647976 871127686 865629968 651920040 179128770 216177524 46513664 978815296 132754885 630536999 825796823 63196522 517453009 819922973 738626385 936575813 411495669 423891460 757900038 352143028 944026140 59875973 891649892 765859980 101770137 985846074 501623078 545633099 295571149 893333719 348668947 54000148 130236840 428667216 99548054 440228807 888586276 408753946 366762291 685366758 221793599 950321866 896375791 137795775 722946521 114140613 216254701 947075000 172692888 939267582 385352227 202960020 400140659 474753856 544266802 385645971 856103077 72596546 568688200 534138199 815784675 746940540 76230601 380677830 444255623 61079615 226670463 37456833 747985480 856752534 622071283 435883995 928408970 637230858 840167101 236185897 726017134 738920416 431794574 249875391 680964263 1583477 741845736 46919715 376778616 936433975 648201092 31237824 743391223 715827727 879843450 606150058 532392761 768673696 859192207 157339766 343065810 13118133 81101442 750716751 24035145 895002426 58305880 574677612 243615026 2841624 151725484 852801266 356737821 718740762 917946891 465140795 340716963 520619880 398510574 292941372 143867358 16784085 175451186 983245307 450246948 444002919 818495953 695617013 280306876 801963173 135591271 16715951 965898019 400723760 130850216 580737637 818092440 272834703 882493534 585244326 217284508 639816449 960906805 719842485 595845709 888262675 897514483 585826945 334834754 240904996 910200649 780866150 180665180 481678261 880335269 911748431 274726581 623092625 397269553 241746961 257460118 847095966 482156640 536944458 663582571 904553316 346610878 440325518 859831099 442537511 409025818 528210788 371572329 953912873 601709186 430859887 371266174 448067012 365747081 746829449 154477319 301442856 193464078 833843149 792091289 758457262 337713318 48521774 990770881 435337364 879197507 596154488 599203961 307466989 300930489 750703697 402037507 839276316 737460025 906537436 560227746 866024551 561581193 941368800 800650173 613397916 331800882 345087277 521965973 260631675 240232949 4268143 771780417 93392522 2103842 315762840 123675765 828474283 313065648 180346026 195841719 328586927 616994204 704311390 857979752 109778892 638368229 23469059 297966094 109669314 130371852 171350076 684307334 828820725 827970343 76165127 667195255 735714271 229725479 128445576 981228229 879108983 80754343 165602071 369814202 33617628 833479964 229571048 610310939 747536063 510700637 326186784 714106033 274922147 957695722 760882233 360633102 567666471 823827274 357880267 752680518 737497737 284933498 839925463 437689294 781232025 471149070 406982715 286617065 110397336 281097861 377420711 429699251 726422044 180974051 389595105 399179684 10754852 927862339 28355151 348911838 300716585 282398703 118587980 341192494 273514335 276900547 945652006 913118661 125589225 322715763 932269536 711602394 271588549 922139651 526743272 414879789 469723673 733066506 50148360 263865673 365862379 128638468 48484687 131786029 783637425 481010103 134401633 716879611 910285519 523567954 30752535 251559190 5271678 665823357 584291515 472905811 427418853 632264419 744072403 431990560 201383463 458732605 49094045 932533386 214394409 151627110 536622924 835749573 82369128 914652663 855034082 391596168 457491054 369623866 473518378 810978322 551800054 710903996 594043771 935898089 118474763 768617804 600710352 789934923 154167064 475390767 957676 376123768 510380207 403850639 350755389 610001461 654028016 226059248 201101667 617589311 34262531 143808707 950268505 561750673 388903176 117054077 127023371 236044838 673058750 109119829 516947942 182742263 267219662 677453238 181276018 597464927 861230993 701305444 438804894 91307314 481400320 272771744 631602128 406922005 567054062 237361429 964626243 735754040 349985978 272371319 490860169 55919973 38458246 944025656 691567034 411606099 514505617 794348099 91387789 488342955 394079770 578261756 17096080 428516069 16211299 655496431 945522899 975119281 823802781 658434723 356058065 85976542 891283297 867502429 775867223 84017073 543493068 447050644 607849883 864131551 907704542 322839836 310096674 246615747 581893456 69318309 434656574 211486943 952389064 38479991 220810867 647060187 919718487 336632671 173942018 19187265 946863102 627758190 123480818 362286030 245203745 589089582 18347356 62253232 522382222 492841490 812691541 939884550 554892942 207096006 11565521 617203808 525399139 469564103 34491115 424720142 579790190 305151109 866592699 657094966 93414243 324994316 736475518 602345420 362022122 715435754 405538119 543252667 799787701 847741492 711214811 842082040 964628167 702604808 577352855 138666783 451233016 215101337 480916859 748923476 743214430 472580070 387795424 873734253 297738035 716033600 56295338 253606784 13473239 775796588 395134564 238589958 571293517 504635268 390067103 182265151 145506373 947631414 40717642 448732690 288361734 38149547 817028892 573352160 360224799 101947208 806640223 629136159 985306080 897864141 308831358 337082710 981332172 924082413 871014839 870416378 254481888 895010503 345898275 224049848 109569126 950809565 153807943 813901038 347310415 177209023 64375662 335700397 145340928 549175112 741828351 231914905 864140884 457921699 698445218 671981354 501332032 937856777 741489423 581044105 986621014 529518022 451106356 587141848 314468101 591684191 659547253 652621520 216342549 535192329 343377362 465781135 19959491 585943652 202576559 881179114 869242683 710718602 973913532 191980119 362891528 59471321 765865958 378667548 387062342 925513944 623224017 544312556 29758579 119384379 244870605 188565128 551861729 212504031 761395126 536387538 750978376 106014409 452243137 586627179 694786553 365352792 670456073 950224186 399225790 296112147 217701005 429011414 602219151 240319323 473320446 741041969 343937672 49303559 502822388 214670778 529729566 800624736 941118013 940997955 553637282 339633382 890737304 991792403 947787901 843723289 70681344 185167973 648707069 691305611 737817067 772071895 953685488 27585390 566301227 329270337 954080459 515068532 127692743 864157118 445289313 871518081 209509494 588545262 69164082 332459428 881044023 473045002 679320001 359552880 910811238 894564103 290644376 661551280 879366227 559981217 495765449 930239957 27796137 101813517 159827979 266015041 242910383 512148486 127736361 790103298 603507269 404517942 12369722 925340124 60652920 332754297 801276564 61509013 548797975 377157445 770222696 536702403 788713785 130602307 883094419 597926222 28697983 50245776 856978033 656095248 942933855 807658446 523895771 20733456 584751137 19019436 312753723 957423316 454146865 152709901 614729550 988189921 58297522 583028639 861220146 821760974 390061161 904910367 975996316 18490418 366876502 46579982 765335255 577981669 691918821 843446173 589166223 279158550 619962727 259092997 424710467 292287868 532303216 724463976 108393916 430300574 599923801 40658846 79469785 430456804 622774 498771770 375039795 74549143 316496414 858667998 487570171 206667644 218009680 577460541 468792645 181601862 147348113 26463948 74185891 63877225 687821145 164597701 298622537 371012967 415936466 710627245 115136441 476282599 609082847 632327826 23222695 531122856 229189209 90782650 614796179 783009148 491812089 757847628 616035733 590576493 712130543 115203142 822210308 831841126 777677043 201406506 698726595 652858304 882735778 445949057 893371727 966895816 254391789 209228970 876810368 59143936 493063896 636742055 880121842 92413095 35256038 432966876 376679847 103853650 356927843 328603831 947772558 156979436 77671772 278692477 664632119 242523782 748848836 931053016 233009020 201872306 499030127 739079128 818346941 518603346 116267375 126781217 604873792 575643518 942318501 138221275 413685066 786193702 253927700 95810745 805900277 496462019 414154152 437140296 935285216 2306457 851457438 866517946 58006663 317949420 388140229 646556070 771798894 993698876 722785548 970400981 379780568 308199139 787664766 21719425 977245047 595858808 512564511 787031105 293220835 721804756 534918901 145314934 953585370 846366710 477266681 433125078 330347942 854656915 684626789 272827539 565138364 597622086 315305742 496687802 869031485 657005262 386985966 536721135 451053861 392488039 188857112 483015111 972171138 775306936 909317725 985302415 284767793 872222569 47579643 316747795 255299545 120237285 547533738 404085062 749481322 749026232 182513943 773408847 502202627 202746036 230981037 279472104 62177923 243368859 535097443 638296237 662597038 478312176 437775102 598462729 437750945 962127121 270844259 294095647 8114015 775959869 589181365 268950335 465861366 255462740 136627710 986032144 83688699 10130847 932042078 12552240 975016982 286314845 203593140 455521007 21168118 700366189 227217902 289712687 477428258 20659827 985911005 118546055 729811651 714172489 775068486 617705450 900953692 681038080 738214417 392374553 259274448 568932186 551890594 304830374 157782044 997819593 85981613 679156114 814621599 142528089 713118898 581203195 642414165 996078857 71489452 924403687 953950944 245276833 459506425 581062123 536599038 461734996 496539455 601272889 119345391 979090044 326546982 976122949 528526271 115422249 759277663 370685784 99244586 819484633 882485713 820894872 642295169 922652762 303794880 899322430 985012818 149042457 55788101 862621975 823272870 158986845 269918918 355386005 26801864 951224936 561362265 575771448 668854875 242027761 852498806 864818666 818477257 760317858 850379137 786734273 493374856 313815746 658202449 377667489 802046490 435845550 165022784 261363318 953715450 229128913 848786999 244135282 402956254 957054964 811538234 572885586 840482750 644760723 807112672 274535246 941714686 353111322 378060104 190425579 812953189 557398818 59374176 633764462 137487582 972255545 325285247 268004371 699834942 949347214 636814442 814399695 883254866 449717199 152893480 623818449 126991809 743135726 373109372 730953717 156774902 436404982 950348991 10397479 574755580 832673382 600454080 246625564 386416675 727760269 489787780 746579942 592576047 456411867 672517427 331680165 184654203 135080956 155224290 34934310 91124121 624537739 519501668 406183072 993065592 457190770 301158056 985418357 739934536 45419576 680573949 76604745 677381136 789570067 310686136 464520906 51212844 457236615 233771988 453942447 87481200 613688285 757691202 887696921 793448012 981256322 510165649 640109975 256089313 183321796 846276529 184370318 602611183 617290745 279584621 13126861 953151503 673086590 896410966 214404911 813392370 996011611 235597072 514133338 147636193 311584359 298126087 703651888 161931817 421532666 951551628 134287613 874931272 40114236 672456225 269631086 977353849 575194784 738348201 395586215 658273092 734468429 237038404 985003957 549670711 556383739 902976187 796134725 632844843 377063126 731375769 153916818 368989235 294794717 216313315 544941955 170464914 412226108 444105355 916918810 981170198 598877284 384944263 406302729 430875041 101229 793623881 724571879 535525988 621192007 953861516 43996486 834717953 700812285 955347978 136776569 672609923 20595833 786208849 815191447 265001811 525401954 719796410 793836803 792727031 336654739 63388976 81752 500252932 828396258 573745188 90675231 435740087 730961334 255059693 260267403 465523229 985480565 59868888 136931647 672415213 37750023 979035176 129599065 619389536 933337205 724681708 322057328 630924059 400010068 518003778 22037038 563406040 644853210 144375511 534718899 771781152 387036214 79029961 329786348 845972220 377185809 935986776 787071782 774028890 435219108 561152098 483103472 428798479 480894034 174555980 279278071 465013710 59228716 124864087 78007038 669685376 445198181 558151092 55794569 964796017 12898190 542320742 532470562 314880699 537017317 667257990 408222210 922709777 328471994 83513853 3895050 717877891 337156302 420320470 244502419 767717044 32964218 638955742 277317696 74976137 371023359 210194504 878849080 481987554 321656958 265355731 45169240 801404168 102040164 304619256 126554682 594517358 344944080 809149241 880543589 786728918 939332354 239118871 296718156 661708678 150416494 328161475 686386434 380104592 901753240 921671057 90534862 685351749 409543748 342873648 764208959 529829973 974217239 214579220 468889273 963947557 773222629 166000068 544462708 971610164 399151640 767161203 747196284 890089194 579865071 202839500 623243791 28738219 497423630 983424518 644412140 158268831 455237244 279974705 387203878 63492899 44399070 916591816 799486076 214925198 698154686 698948586 170399680 120716481 88267162 743014912 687527021 219186634 132611515 996053685 447380220 138349531 325215544 540876302 674896682 768078577 304886709 530353015 884286190 376839283 17576438 611265611 124502777 470453608 699292245 431453168 528215662 827567580 480170012 441427052 45240743 842956352 688392481 1966856 463445021 533467034 821693718 23239333 557484464 381357510 783217006 639601309 47029430 304345007 225450836 304060074 665832618 124199351 248819107 401971524 317586882 236439446 26966494 809580759 343263760 495664351 884708207 264121377 763940662 666975440 112520048 464337194 27744295 644766913 340376872 240572850 683183121 422979468 214638511 165529572 916149325 425488250 197175766 24138224 927308945 265755551 815988429 616990185 452000284 957435712 868763190 759708086 280971284 992418048 452075770 187373305 818836626 196020263 873553506 786507484 900093443 832258349 735112452 525027986 217876336 99632922 137210629 414366690 920638299 372319000 23336815 285821329 19900807 373689441 463840394 752911390 499660477 689695204 623433255 21516724 40426091 731410299 666213729 553837073 439140349 489605525 67415651 390281305 51508231 394382833 323790353 825958933 243628645 595228330 273697577 620965189 702166261 313275860 909268546 362628379 352603968 893202950 273409490 101483390 560883348 513265149 693548311 544137148 139459287 114704864 660811639 629857844 97865191 480562468 634083149 203567901 590971947 774145823 358513548 804286923 949945436 180933122 14067683 661187821 496011211 29504568 720070630 161735787 261576669 123489785 718856087 535765190 758591227 794868867 518291305 162142154 511112533 476085041 269798580 306542429 832857822 306849726 739229225 399643052 793619606 901252819 954236504 273938658 782524016 881088955 914546723 965078093 67415275 253018986 844257171 738707506 391237001 937228554 822189153 475172144 156528394 24565826 701283336 629355105 910153979 259857372 914869688 299629190 497351047 205192717 914413262 402236226 465733978 242104580 921599179 874700998 728265260 117584081 256263876 931796374 845555155 474851133 816399979 58624283 862757153 232282734 44742277 410732833 655220006 301251808 745073098 622803561 903033169 134626741 931247008 873186689 709559081 7513149 200338712 280665315 881148349 348068028 648427896 744354685 449304542 752622548 985972935 25383207 952406367 404276194 480711640 509363055 965076646 294051350 717068255 49289727 457962215 173817905 292189920 141020882 54593606 543163964 181093980 882916473 474497009 597762883 25673 761208380 482338327 337828375 581364046 886513605 78731215 76030761 439838998 701308365 970302825 37122520 27920551 177665110 250353170 322442817 842705551 994802995 225620908 960484935 543983290 79639611 85867885 525570949 908864992 615758427 284321635 701914917 998618558 289135923 320461538 261910691 451869944 694112267 917551911 633484907 127107545 109513436 838845745 588780640 571111632 992722287 832697863 884136545 371573307 168562050 222104592 559820750 828480084 667866869 378660035 995112080 587945631 509438743 385974000 648649064 845743033 469546551 547565184 119537794 911958085 256987241 184934482 315830079 181365726 9209733 88607519 678618800 833256413 849953842 792332076 501920881 605681180 811100153 487564443 938254360 123731503 491093193 599278320 648771824 424051426 361583045 326555611 175433232 713245760 67580059 911102501 361122805 928034322 34675078 624056308 854643254 53303925 164474095 791840621 581442767 268266822 958287904 705005293 382739041 483996300 498284897 335414333 143386765 800460228 594145053 569669705 977158768 782697803 437651074 446760173 501868294 750994715 257345088 845025733 279161642 582244782 997015061 727638607 659479572 891005984 41796317 117321954 709549192 86704213 43001989 755731602 40368919 667830513 401043055 627125139 36348237 5685636 2015528 409324776 172010369 185420545 166453943 788803591 531508530 645696087 611579042 157035827 641168152 915304531 836535321 395575811 644719915 632019407 756294669 177883631 908455234 668465395 846089533 478572816 622475708 828120433 724140139 764055269 317152438 218339014 762353859 647762813 442471280 408985123 395139967 864830797 290738703 93567021 597501019 661290862 125516863 648444707 804998242 566341571 780930192 165500662 583080313 847828736 80280340 718127757 855829454 236384818 245114137 18604428 752233166 87267975 783485834 901287766 416911720 645204032 882996944 808666322 777496873 380315776 20089865 423813492 331895706 77208978 724134720 462577639 196503961 961967590 719455892 103912022 668434024 284115426 285155480 575190710 395974886 611683701 610846568 956491696 168724005 284974806 818834392 507834711 271045401 54799993 240000726 228511472 28952818 612382601 507017690 788449877 347108505 292140686 280137189 628404463 714334429 772224074 446596322 465200104 628589331 26580166 189061197 22343826 223277821 36557164 928149441 220235268 286089735 63515756 102974152 935547697 544336340 237417130 397805319 873844015 321547021 887804073 380393959 241910615 854214950 501136772 873509476 240579432 745981600 982596859 871078478 360397136 153274185 987303883 262327018 655941784 811038767 159226920 872543454 253481657 405728069 37605405 236966044 531241020 582036242 102729156 350217376 61036326 313900307 45281030 782466962 132755518 866681571 644548891 500924287 66574927 821830049 501163558 554848086 846887137 713339321 979039423 936718564 86100080 253103036 358301875 719498404 497917058 588521 750044803 586240399 939833018 560905109 907786918 698285399 371938100 197417469 781199988 168109908 887212693 762642830 19501342 918150135 127487330 558606296 99918663 426041577 677008710 234047822 446904471 597126694 282824908 886634516 229177638 127500714 807364956 457294244 859527336 923573167 545761882 243213240 586114824 22467971 640964450 143179244 551142533 78889811 968546251 926681458 452091941 672580912 743243264 837768185 399498124 2971861 32838529 600625131 296230997 655637189 916168067 941809304 588649679 674848391 100091974 22662379 694877918 588486227 293873364 616826259 882711570 568843734 587886613 497391633 781558987 285482983 139045708 517034451 630681580 674539220 11815331 561501717 971801011 919985488 306211836 864699147 32043874 373884748 846390720 807785427 205448152 360772365 594243406 467118892 348521866 685932053 200121546 746395022 227097570 349643219 999591306 632852394 20584759 624492786 916753765 732609012 982762658 759459908 818899908 48960547 845145838 845540563 61988735 287766339 415993940 825634678 570053114 653647831 593472840 818841040 761882306 648695047 361271906 576685915 784145492 627344090 848697989 65645529 622904780 367815841 934955895 733418927 300788753 256226667 935967914 667035672 605726089 487623959 186080760 277685110 851721120 613309977 663347546 46087431 403755793 640133714 888060542 742432873 435096766 210272047 779846848 335749846 293330744 656358480 779496966 536449330 343632719 424000025 804102989 72500678 963883100 232727450 610985833 154442044 326344864 82585570 690068494 228168382 644391981 814813114 808233710 992610916 689680746 892906247 285604058 5631510 539196263 890161777 440912407 600062691 83616174 253721612 853345160 475384137 961061702 288843831 120346143 435545859 299768653 584836152 360078711 459645480 916003599 7483945 544709149 402376931 50483288 896010269 958506078 488075899 246552361 851480390 75160531 518204824 675541977 86815114 144474186 10559585 414982629 903153880 166235971 335455198 466393485 598858521 702218274 711060366 829454894 955421697 360805922 910776777 829967107 879586547 563483673 110609044 800506865 471818968 107191192 972578272 403817586 341736675 985404978 931941507 15917457 334626804 994182491 259013184 202066023 584086595 491024642 125946848 718131838 225449770 757560786 491748129 16066221 686463367 991952678 931908603 635586068 761338807 635379829 967584832 889523396 828137270 655522284 430273309 832375901 9524817 875383264 768042157 819934387 781495817 185370638 377180748 857918345 929028481 979479585 27770296 415000826 769507275 323902657 968826455 71004395 901919948 951710980 177107021 246813619 657567586 144923892 315530069 379854060 865470687 903976350 583922655 443045254 375957007 11375574 12032034 948753551 760178320 598863424 584800291 50828865 356213849 924867205 205015119 336565398 928369290 783726039 225475903 764134485 686363451 85586013 307288418 933164093 502845028 498779409 928974287 885549638 1300725 659989618 805933722 178441970 279672297 667645466 875708663 335469058 22988858 813148878 460674514 874818886 928836736 798044007 347009102 474904094 273137168 703463079 971946925 493057752 906868805 999176449 734881096 577964959 961132182 937504030 877677252 667178588 629527447 384145957 540815885 207288429 137279620 369851645 400277037 105815585 726498282 281372968 617289631 282048063 770976727 314503065 256483163 215322528 144742505 530944667 52603768 967383661 711770432 35560016 902044209 338401050 320474914 878044232 2807318 866138694 620489051 450842493 183521503 819022123 148251350 254976447 553226739 311225238 842989231 643061366 177809083 349807728 682792728 754551232 306767484 203212751 906828026 213527870 395769608 488475396 815240104 144989327 323884223 119476021 820631255 925035938 457506947 297591585 960631086 298172616 3881957 402707541 84826528 938681808 261000688 640136775 803633682 332220689 162493378 193268465 616310255 702840246 145979949 961285811 204684285 912545784 776561005 456771290 4880595 653464200 575036965 228617812 754632002 360426736 572065946 49671385 912644813 27472185 753735085 703661566 87296093 649317527 203510628 117887626 414776289 155777309 719883552 736537795 967472795 209324799 993710906 774786152 964382087 207959455 410705252 377109013 816395782 797856230 35804830 980860187 799137338 411827984 944059354 703222007 369073460 774124694 646263754 582253924 209078060 894163039 922542335 839647239 28759819 589942384 168984748 951856224 377212808 451911521 778713007 97628819 810870611 618611855 410352920 112829166 821979866 725070255 869547843 987211105 661553312 868296205 20988152 963236817 387400598 423229605 485488441 218736530 728593613 533212265 997392476 268266371 894991075 141578098 480819983 957743703 440921277 28885164 526235980 450037567 357261268 839004185 319784312 367603367 432971334 64828841 604031472 388904931 594311396 28296117 78427488 396169818 738416417 474832965 887110416 5548030 932331780 706594827 506065401 349688053 193483485 16410390 498705896 534342782 334376012 900317271 883523560 125630576 576934552 975532353 506408135 408501099 38246198 582041601 88518362 478127177 169755277 539385596 583294178 571505898 216008349 480472835 493879074 377751140 986733780 636536656 545704015 871797055 351821862 122613437 910354606 76984550 61067001 43945468 985167467 589664372 320000051 246167081 157657812 797454555 765515815 66249561 506447205 316931478 6050616 375820067 243176489 879696964 379378369 198744684 617669307 954461617 522175734 96868253 859024552 824400004 174341305 305779914 451548290 6281900 153717660 718996809 114002877 304609641 729076379 566270686 74904589 55688425 809705515 510067203 984702395 717372528 589900189 490148850 91570643 829850057 344078406 950739669 303080843 575913365 673076563 481023555 579061997 47898792 761837930 800119745 272230729 404880993 322024361 830743592 547352519 261342029 538132203 983386760 978082485 69340417 598900728 364227983 816985891 512937627 18415368 789544043 156245577 386642950 811304908 360442434 383886611 140976257 982274262 565374984 890402703 298633106 369844307 270348967 93492362 481944122 551146556 314561965 866457437 620605507 551277472 938972564 863038026 507307466 771711462 201699661 687715489 883767053 461393073 961136851 53688873 839861054 656518906 79906197 430868784 316239712 583799327 872939408 441276243 712990995 124624080 269902692 596280028 180864005 832103381 289093227 763229395 428759009 323301598 722293482 414475336 297002585 259667341 833032372 490536860 454543294 167946130 766173392 263026135 239919568 401782505 951506638 11284369 569480459 207907077 664963704 20764657 568209100 722274255 161574626 749085121 787612183 292470290 374651052 9226456 739374030 23277057 652242192 481579354 837663520 410760238 131740651 834202455 538660263 991522012 53168031 753509177 706620100 299718574 495545712 640826380 651264442 927750216 7388103 877830672 244575626 278711062 615966998 124261868 49418709 161889265 913510858 383663874 344278936 335969096 129105866 749318445 122010690 533492773 872108773 36793986 222198045 576055332 64015906 23894895 730038643 584232750 411414233 164100098 765326672 859132473 825874125 855275042 779217907 614102523 547592905 406552029 202929165 980241865 519830273 743755734 419257762 896575252 104549759 509213196 526046592 249510325 690951403 145466125 566245139 580903168 741617478 547850578 688260866 675769761 766801551 387084555 758748203 812470858 709495045 271946202 363019460 280126152 213247862 391704975 548692714 373572982 833036349 506600101 487048886 684038497 356247413 720562696 610087740 960008868 645831787 466419438 662367815 328241226 234100164 132615917 732175033 298493867 684083915 317793507 101790766 668537149 687118958 525768603 511002386 879039638 386262150 221912923 793069538 923548327 729299408 857533774 769347869 417809485 33985429 824069139 490779837 628902060 680058502 240836454 145742977 189511367 232048638 259882151 217014690 750072576 730117226 499359394 180104121 864567422 356927536 58044168 894909064 931406666 476276076 940718348 998797204 169353346 147101781 847329838 790930650 906467973 766112007 215477818 159349046 369655278 897887665 520832644 658537094 339134808 125454259 770671828 812618850 46195114 880379998 572102327 136292359 423400444 701560619 672304925 365851384 738809388 587789108 173791777 493023169 502858896 959699619 737756724 398068297 254561974 492635757 57548467 547241621 975346830 154709349 518071377 643901651 770526434 482514207 884948462 569633597 734116952 376426695 814599933 682913709 518252142 870574811 234112208 987743532 94097329 726541145 700702351 339603812 579009237 452456698 992469234 854785062 588557463 34957760 651278718 475619644 107336747 738583705 67523049 897152796 942614470 668413988 804513668 997326619 393864585 641270704 339608692 290917994 772098778 727197735 424698202 29093690 860239710 949602183 304758670 733807365 86609159 774920630 312085010 65937244 575072760 871068150 960271948 821166920 959416263 667742089 608603241 425135019 916519528 824135177 854165009 455735615 608911005 308063063 780554028 389291876 255174033 941771452 568952905 151470114 909938238 196930500 997988030 270725414 738127434 84141411 210773338 362179698 898722910 198603643 297932455 822340258 927212136 522718342 549069992 883117480 140714207 48704435 141949544 607945312 81584034 652055877 181091598 762779995 396206574 691641512 348798538 982651560 102041923 883396697 606304447 474340393 491370049 482558913 512294486 546910774 771630370 179004933 577791011 940423374 28744996 76218944 523746414 540337488 376929552 223286935 622065880 552531189 930655291 829608347 466615703 670044855 6780566 368405278 977503437 480570267 653441157 751797192 457596006 895182201 476000398 227656224 657516287 161146536 643463061 390885065 540966493 406305700 626233657 533880986 534368640 134521945 623363893 541629214 212005572 908705748 121353498 801265528 836793174 480472548 157172079 431789170 85324290 923197037 947167185 172759496 501111522 513988694 578947980 801341639 648291093 327233413 518264237 222153465 35672913 246826499 564635050 467794854 796260348 897323056 960865145 323535659 324746043 289609359 71293062 46877898 536564014 242653925 555123439 491470233 507668732 951673425 143239864 761834924 505421758 862316668 434835678 5504768 753892555 232733669 783459337 229649359 239347550 833535881 742159808 875462973 897206878 745496133 459676019 386491770 923791246 929091809 59705473 510533359 802518204 329561529 790986572 412278059 778683067 327040393 118215203 159278706 110483541 962711817 801172887 474858565 832696392 799467080 697337565 4720708 241160695 275620674 12163838 467646267 151009642 189340288 15095944 354289481 974439988 866553045 600412262 590227479 299821155 771977566 495046592 219075211 912033712 409317027 846830043 850882482 324930573 954116515 347367074 958270064 928010053 75419188 438582675 116454132 904797045 521188810 917991194 803689861 480581448 208429287 825324998 962900795 987888608 482359525 878256117 444124651 838464540 812080428 633279404 56989127 816781719 716013484 188149321 478575332 236880298 546914959 955626373 744506092 399257486 91575503 563915617 738831885 696547517 620684510 282477766 25965660 42464259 636648825 728542416 930223389 713476316 433079736 575931186 448981394 15066095 884171205 902255567 862620682 545509201 717022660 214475563 330526588 703153528 720893048 549512971 608397752 807424872 448595013 563256165 333520359 760828267 507561607 966626817 642839283 148917695 87323383 624087265 957144956 108279955 407218556 903172274 399481706 71517397 190010105 201117177 163480449 996012452 664568648 911349065 777502446 570195184 747425048 202810536 438065713 837368568 685647361 217722638 284482556 817019601 699258234 98714360 207985506 93952555 13536340 402283365 166673947 944898472 317849549 805944589 174572699 497668563 907047264 80625449 459453972 357526740 654886891 400268782 762725851 185802568 835935890 679679389 54143439 669307805 200566858 968233890 646377317 968662900 417999371 841035322 979971065 254548633 52932980 929868419 666828978 79429110 699520802 751474614 876511324 23891423 181572962 771658330 132777101 683553054 91696158 756812948 945673728 661381693 693122075 552566321 259789101 942255398 692564628 817167245 732932008 747713177 213215081 505072510 708983263 87036791 174836312 786748629 567053430 150933106 620552052 518415803 126746113 520935395 988140099 291379158 250190618 579357995 746850331 437131612 702171262 967836093 282458835 54407096 412728422 255691652 716833173 733522422 384255600 899198586 783141727 662091516 989222223 899425372 86543934 123103342 173021357 24829895 317706854 374476800 667516599 151621684 464194726 648294039 501232243 228957520 707968276 514140380 768932432 509906178 817840996 149475062 717703474 397782246 97206910 493407085 81291193 998180007 690298113 291947584 194073220 9990240 863254970 581174216 63714162 349529310 691936403 222710558 40208117 165699311 486894817 979433488 146045430 80216044 273285989 189319198 972476537 589847434 405475792 102999815 439090987 55562256 380846970 673900570 679769275 621828454 576786120 617905028 375714846 51899942 628516844 177039291 1443545 454855645 613361075 914602065 936264726 902012278 77826200 779016856 837793587 314186576 352123857 649000243 717805323 622213373 154158025 214521450 91342904 120222936 838651674 463320146 601745491 950647988 665062292 881376698 100194978 904571013 853397675 132656192 963295759 631694452 23238991 433749378 557828142 844581305 736259431 956749899 731190284 748321873 70321047 582014952 774123997 754569832 235187612 960592655 331422058 729607924 758669268 465217828 841521450 808789853 13320868 725026655 947006488 543857054 753613251 335116671 507639510 702156821 914383450 723685796 31796095 337344957 248775480 188568000 284530279 127119672 100722307 778629988 707671031 395739463 858877345 868133681 703898319 317682939 424890228 288588707 372505249 110507459 514086746 533051832 590270363 951587435 931099298 479162566 752184640 712388418 664329855 261747318 266040259 153959800 57921308 189532166 123912828 12135103 575508060 368935227 229755037 373338570 701515942 401365410 535092336 701704477 677160132 422374956 211345396 866237219 805343236 884512693 710384329 868623185 540614486 82889072 117986701 79912291 820707674 322679410 520641025 433606264 759520957 132409830 309817349 972522617 81965105 564548812 356518200 292839854 808844444 910937338 910099821 103968944 152760567 653475818 788192370 827882942 411170611 73755794 421256063 323303462 547667797 434487148 96893190 631548751 781791264 813567914 793764794 929179610 32228148 48720410 364262593 732355173 960229757 268029858 745741910 538354299 678234739 821665868 489007901 97334950 778507451 895770952 861125014 413572364 163189806 556617193 901055870 614493155 426975613 896396119 715100635 275777303 232886537 305082764 202770399 131124447 496302071 897789106 847766043 268523411 410731651 248995026 281204934 699667782 533529180 735020558 829803401 217238960 12848307 397163859 626245957 578420596 419888988 120465955 950280747 26626754 161061448 41447545 238720024 792302961 404429615 772346167 344235277 80333125 736418783 652912465 905526194 21067915 696105500 719327674 183128451 797384855 842586972 771737954 528508928 898891751 270240683 110553413 697353761 12023313 491012292 102172650 486269235 28720086 623373639 148099949 734879014 254189105 358134594 540111572 4985702 598645403 543700227 899657944 884883036 444364610 433517093 88268 757055220 448797584 899358933 839024117 766458865 334588913 544779501 871744398 89441035 900263532 654657160 946940925 92906823 538955974 697891542 539350481 174609625 378437721 437564164 179706944 583903644 830717883 847449135 658100612 788810974 257031559 664909067 35535324 652518990 307327625 269922519 293444214 98477485 377353678 135463703 616829808 656487951 40048491 65643539 379440997 489870783 360273651 432171078 302144532 878416555 437895432 56528659 886135409 953248495 234358374 260610987 340161319 353791675 644580380 99355342 213022059 936863982 712132990 399690342 423178902 662987896 104774852 389230015 384637512 554828241 21252204 314904048 481673069 889926457 809508081 453263001 106122467 628766484 368662818 412541987 951313011 757916037 20357650 276457968 820106314 180046662 304054599 659187027 473602722 423421684 565545289 358811071 688397818 163535724 406069274 292588066 944934303 434708551 47062300 988752679 728083705 984839348 572990497 991617964 617477211 329913440 190792077 855005228 111159892 830475581 596282606 39042157 165166666 138593558 417108560 886788137 964550617 167037474 722532913 910874891 231668322 724916877 754473301 11766748 547726980 705255898 667838345 426794696 920953805 778754117 79110525 979948188 656770025 618310052 454010027 152200513 152913836 180316647 891227677 166764322 354824014 107761482 750567499 278569892 310129352 494600122 170878478 169002874 304797342 787122165 255054807 658462140 489604932 86183294 843342672 187184564 188792242 905500370 574931356 869664399 56020370 374274651 307823512 488870316 938058198 825898379 485221619 971539368 780536931 399520050 924822662 775464436 698802079 947455769 191324558 988439367 170294238 692521296 477955727 92962372 665816298 612827737 944610735 510304141 391884000 84286013 866529534 276676554 112215293 517191910 628776028 164181227 570997333 651992559 238615348 877220779 401366938 530336296 559618656 570993284 511410609 790610871 16002513 203067572 634892723 599810324 924928970 577038277 864754907 390621430 903232978 559415265 751884753 340191100 50114546 904987709 869564751 408655210 831264971 671667225 279510219 985502462 185386688 373348917 389527218 121235915 177447125 219952295 948166352 274158680 294723315 926546209 609026168 441645562 604931446 817129991 51961926 941287724 326050926 44070449 243131331 331140682 196020329 135500838 982795910 816623364 363631907 959157253 199907029 504526159 631880922 970840235 887509484 504240355 749032723 616106832 472482985 205515543 801672424 222889037 495956453 666431926 761422024 508348085 850442000 781838977 794540275 386190110 19427658 16859272 48242481 170027131 284117775 6256528 937422025 442525231 470906927 512444231 905236592 313774136 922874168 646817186 156830383 275011925 611720110 380111734 40611332 712746454 409035770 946039618 114852446 186810133 4045793 43465797 517382356 40624581 152950223 343467740 620805206 542573779 505641789 906000768 315256916 978977369 898724676 535210072 262167361 815039382 455161097 578040515 955385650 222290560 974369874 584954278 285909547 854308536 35337817 568892864 968788371 526332049 485184641 134868963 323756545 104355111 625775126 683925718 57442586 8487453 876420640 567973588 609692922 150961434 49791785 226509476 266889959 12052302 591409156 470593553 430717708 123223377 50151808 33026228 672374235 373836563 54984281 917463742 762651251 777968556 984127384 798365603 758355293 198503116 282211141 170228564 306704442 514400136 22670701 135298992 808548353 831404015 589948962 725816662 44668852 98898293 230390829 854295511 324878914 259374432 879266861 792784336 158066385 72831114 176892832 925129081 716274092 385432268 785636414 484186853 621964911 332778398 817956087 571183306 447504251 51297059 49995071 9347592 370716455 105372606 684873436 317656807 92265996 808019456 286584253 290392413 311058051 470480644 554594407 970965254 346226429 21011075 571881158 416137781 778308928 447995206 208383289 304503605 398496306 434311471 470488871 195805489 305620993 617426880 776609271 512136240 140352275 536007939 690607164 103030668 979840783 55069678 676285260 616545954 720161352 802048116 762294700 256228552 400721499 499246570 368166575 682563248 544478673 34507300 714281921 745271772 17071707 121320459 245850559 74686570 675518936 1288841 678185468 794693218 865924790 482527619 399316535 201587972 529122077 568151829 168753604 353357952 674244973 193447885 361958786 965773888 269667213 49844797 493355124 773771508 277066166 991333181 596966417 676811898 162304887 397107477 964361566 775498312 413274386 727643327 759596798 552137959 720564312 227529821 668459730 617556533 574176297 57469471 314957335 668735448 704463242 776123323 643696865 789665859 66533368 762388161 238523526 634958399 604664718 38225231 917586770 150176612 166641389 173873592 749563957 316394076 941621245 947137491 616689058 523774919 320268989 98775795 291321787 976947795 763498883 835637352 884602841 764219375 294990724 385562654 707047710 86354453 491511747 739456946 856845362 766535027 387223959 19634307 825954204 24065598 239327846 788375271 23219249 124321090 750210851 984485484 252101598 301739318 993441347 237395866 693676764 128761301 995158750 885011046 287327793 963923145 971720550 154547636 769581491 201121751 204432935 63103074 433607150 327851547 412810803 679708842 229533211 580465554 605472516 533269606 277553030 467181199 175922445 125986364 969629031 412327119 306846788 658003903 3553540 508219135 714946731 377485666 350916021 876533194 569913989 607696847 365770721 459480798 827688236 907967915 997565920 213131236 234706780 571913732 70341618 101637959 154020607 817259751 209994258 194094208 390491908 906488397 629219715 637471189 384828560 864246997 928351686 8709293 909311193 910444505 650067356 547209855 171028886 596490120 254464802 818897604 440124593 197872861 713657086 699442716 427706187 338878480 819035508 672478629 916423804 402020961 250820340 973176602 396826931 340850359 390967484 509448909 44899909 987207136 6558685 670107173 587858715 843190145 771837419 42366311 634530038 686789271 629437418 820449583 996338396 823825153 472426716 389636892 790546730 190918834 499141359 659536405 815136725 884160071 873669089 689654215 580316361 301693130 501433587 174970963 513842225 294101562 413868431 213888761 627715311 830316889 818348409 790001315 481483977 104762654 310368425 661162295 945238174 344516284 358606415 907480316 877453405 452398391 498108798 912477970 688913525 478865079 16218638 472265920 918513387 668890175 403341271 351970150 59139853 414771648 508380545 39840562 115921740 44011393 302359434 638156396 379814149 619508760 345124677 771629763 944912290 649134753 426593030 357278211 619049887 35556662 906725572 412186885 513492437 710697815 803149024 637812153 125863686 407313431 852112125 661692215 241218449 551195961 764470100 891675445 180228031 124848180 471148299 994119233 537793241 618195934 942318597 920556743 687320021 207025283 858055162 534889252 308631417 863292138 987220215 882446457 532250435 686492700 822703096 581102836 862571887 247627213 456068899 697330063 813023420 918688286 863978942 408752864 226119952 22588716 503767273 56439658 239570880 941730779 278958230 725413772 538290467 589000894 826812044 719507807 203096012 716448093 749644069 605427973 346941218 100340027 150052514 535921305 505410576 998878901 27150089 113164901 64330765 501720955 247536115 872473908 462666027 820388786 899093183 614384058 398364136 605732029 416869922 897855587 144361858 936871873 927739194 457434764 659559278 991576936 842949307 844646316 23381531 577634196 627991998 887005316 234600886 560152632 182371932 591246865 98886044 144203109 418986382 304634839 469681301 452348272 632296717 758452301 387783433 884232967 684147257 853576603 95114957 907489674 270567681 618888410 611703061 682601164 97084514 925879569 467027919 289641412 637551724 176383603 778096579 460308308 396871595 269806553 944581160 312107992 558306408 804441777 70884019 931036711 297308210 340090834 749336954 414474421 431489872 677635334 375323893 392482525 950166903 462788768 781892997 269244667 955956011 127242183 407185407 456444268 553900731 526974253 409428657 266383238 108708148 259254179 315230034 687083569 827515151 38502836 688406595 232313328 382788015 537586820 327465537 792320636 475629274 628608536 173744106 451270824 89057135 374873255 885946414 910273443 102984333 551264618 722122276 98540183 203185448 200506205 759723366 507279684 570032583 942745673 467884389 660473308 753585915 777783888 903034667 179012020 532125093 322059271 322487853 133109939 428508130 185779844 331233551 629487440 408475789 355493497 60171941 278169146 483990111 728017531 648798164 429538326 918317407 31795916 980538692 420813954 855730394 569323126 45701338 812657566 327757261 128589391 907184042 375206821 221925996 880149917 965869170 880380458 805708865 255371337 789968987 861702462 488341816 795597216 672894052 101425817 156252431 878674949 731419899 430004163 447638603 369636724 61867812 595329305 897709719 375466375 505693182 482205199 592933594 126205347 73470630 471976655 374424118 636544976 629826057 805993335 443773395 449647231 154273224 852338288 872677485 306167843 936598832 247536155 442253232 490973623 583185439 204413745 910125104 59670588 445300452 606558343 417657021 47467847 762100627 870367848 208051466 627020879 717987202 721343541 77608834 46530694 626054177 211158432 290482088 684636208 729346645 103943375 250780028 376039029 164206248 545276134 152715865 223296091 126794909 949669669 822131525 494607920 987581329 446391092 416410319 69728606 732047279 869377336 705475570 614491799 558883342 634171908 518454617 456366658 728821290 834593940 431775118 661575498 911057581 374203179 435057526 165690249 849776404 771993763 832210725 492355314 18720235 367782235 778518653 647361446 23528615 459393428 339357816 784882387 989732146 658819941 540756187 232173088 191674421 604704562 234799247 543608722 125234567 734506718 77253486 675564847 742759296 375745173 770726058 219133596 464768177 525204000 488946255 501304073 214990450 336920500 327219644 905478827 255729867 104450882 579167431 600613423 679544608 973970767 60626391 416188667 537243335 258174142 871115830 547627259 378088217 491171943 758025693 541332766 697631232 49510107 517368285 333008812 504466358 980294330 376417993 216225747 393688162 547412196 530735769 863617329 576666484 498106051 181204993 563825049 404265820 25449190 961341694 276600019 332560696 836641691 329665078 645063446 777525360 628319350 482653807 918223598 490488040 626425789 740582076 245973929 70186063 75189196 244928319 57549344 829915076 281698700 866963870 865451009 551204738 768543433 472029095 433396470 564941200 740569447 50421842 496158818 180075677 900339097 863740246 801418788 691274604 27190509 205954993 280097869 726700533 445553084 152481740 429056358 833366718 320511452 914205544 290073988 123121903 267538533 547899364 885529875 428368559 453458432 45544312 591749206 782173096 906888599 4735752 713123991 292760312 798326739 940061444 276362806 140496257 450716431 126296305 477990356 942185137 247718437 431414553 833410643 301398842 495850579 855698841 940958166 146548089 507998599 184122494 778312582 564981031 56618928 266250832 889043050 158424689 814785820 540271339 813277081 196841348 895092144 375505666 928173473 61030267 80502268 162473459 144229215 272963451 420813179 938179523 895149778 258411085 226631888 405321283 132788160 172939219 186969510 525298379 477158082 43420639 129710013 144704788 356903467 803940648 902029294 908068241 407158300 299951907 80234373 66117934 699105893 883165617 902721998 806338632 962141850 953614874 915223285 705316745 961351597 505779495 363583543 800781098 102924752 301766612 808007441 286876624 768316006 961938524 790651970 100407681 985106535 418408198 247277532 701980379 339001210 95080238 649159719 753192199 383241426 647360895 768961536 734158460 798804600 276988568 232656740 536420224 277880295 410223311 958762482 829891896 581286027 716706127 849196022 20746365 324110575 396783349 73075500 882160834 328173552 83736417 938727100 701410197 816387854 570929405 612831590 676938501 458749955 718088032 623727451 934086396 798511117 761383038 119528872 452472838 687742212 66719349 100287642 130027361 507123132 55435824 435772515 807662990 577325903 628949914 589295004 594405922 950985228 806306282 688869258 538090608 153368785 328659036 48032144 841710234 507163622 862537171 784280297 601086105 657737400 291570689 543295588 649493539 442783986 775413489 439210874 686339496 896800342 726446800 761191752 904204744 106841901 252727386 661397730 892707743 146698560 302323134 956035542 504582648 556830439 190616085 712536688 771298425 678314647 184116985 440404780 898346370 870974214 564522154 768688179 288632543 656591743 263716282 578646807 134038516 711622790 903531684 187011543 121446744 160796897 451458341 935360401 447762338 534211219 918476378 943117849 298094620 327659926 966966178 934108040 644956805 242222525 575128430 428160084 245485061 508461727 281866905 194894967 314422950 627471310 477806368 46989007 403862544 344795897 184728470 793040533 200019839 57950841 628883540 139437507 468432258 751654953 157025638 833232435 745265614 159376909 610581780 540990912 389262151 865825275 564563939 589516473 974514986 519358867 530742912 844144102 203144809 446422789 474093578 521254870 163114243 775167092 40372780 390556041 988384577 821908095 359657351 981665705 177317431 439031572 519341449 908577057 107736721 556416759 55292372 733162762 430769227 142872897 98703374 957783991 384917642 706275523 586974823 167660706 24339481 123790061 298531001 671966111 84856513 923338822 473365243 643518640 801522289 638990981 132314836 912682339 678044560 7738545 933918113 405999697 243527548 396711399 101482148 482458612 508339080 129490120 662962366 931625794 808428516 528475229 917188388 937850582 522874474 472242152 930423847 818116264 702125275 278136629 11545643 966378641 90423293 643670315 495780233 531440066 773143360 686283480 360710091 257967389 820186353 624129889 873090842 544139472 425016902 450665619 336020958 937039623 70856360 4047887 968455798 410250173 268958159 723705413 139249178 658321550 228859310 221760925 857737248 152864837 710559870 534920276 657109629 830914353 204047432 23584371 321702643 892837867 616263226 834125684 794069576 923846586 554777889 790981855 130851191 185747901 387000303 881061244 563856357 576645429 337848327 65319600 441630936 817752450 424253873 764098430 726485355 678482404 123948970 876264789 106303082 663010329 769661980 356780219 118238988 322414585 155393675 953417466 361929947 571254565 546430133 890787385 533061864 234178367 881254142 11301946 875045390 951479737 407506129 70045790 717592795 705125201 132119095 602718319 649197483 86712014 666355639 884571580 734222637 493464695 235642857 501786991 523378782 882253221 71837627 915089731 636809191 387461946 506879144 111786046 873041327 445606544 268548018 884347794 746301454 984465813 900239377 328044916 298975786 31913318 949099890 373661006 610403035 519328405 305685354 188967060 503472126 355842423 29625018 42297879 339430395 103733091 522574235 268670471 26226069 523596343 714716656 725648467 771867874 627102241 521668813 449862862 411978268 587341012 661456031 970959565 130657267 70998208 124232377 235362506 47712835 243560343 947113034 521855881 83365973 379685107 240453473 152013272 60416335 15828338 351776462 8257245 126991343 438996403 82674926 175233365 838635693 46133529 652070111 478178917 569501929 206589 130136535 613291373 192929471 29272609 945764374 609325986 201591987 5523738 71536227 2190280 580150151 453668947 889077345 467295385 92937214 443772937 640598842 104101775 323521779 572685307 534751058 54485601 631183214 672392259 207671550 161329002 603116997 111830006 406202648 227335979 256408066 885287358 483298619 482136947 521517967 6143066 967592580 150866444 111282279 344966777 934872771 152961807 682315398 482111338 440564950 278710808 613893490 361111154 262379094 458868443 585676270 638946503 876482431 277064792 944647485 363183388 68220790 651765093 753645040 1944752 755935395 282752924 200134051 814128279 433269719 31247979 582036948 800097641 467695685 199196446 740529376 383388495 866355741 505533178 533556047 379583645 199917793 330090696 227049595 55628882 969558946 519354533 790355244 697531378 6443768 681801672 895232958 489298720 503545068 116699403 363050023 427903555 654678136 738054915 425130023 760557638 326704057 1510088 823610983 385443626 186055385 466221258 912102036 43984205 870813215 424957753 863863499 124845117 630859898 830685717 238044220 411556956 542136991 501512472 59653236 121767802 961467783 311068716 396398531 261104078 344659570 440829006 942307784 635218222 585670098 719134327 690628800 928827245 436524535 363211508 463086713 974783180 293697636 736190491 385500524 672836259 152355867 131487233 399757581 223941146 803699140 547948271 298284500 958286102 515279398 241181903 371375487 186922731 931793126 442064584 297390756 1926034 906366358 26577770 179024264 51173631 304573137 456047095 169163749 593146084 529838847 223532810 778173349 963801756 418765983 480625652 680829566 520566448 20006483 351103204 26715823 992024320 811346233 72115518 54119372 665654710 768111190 37154150 816334953 963814439 176008913 225505263 510137107 555714002 886338248 812757855 771089351 896377342 264645729 311965349 506185769 130980864 705650292 68984397 556374504 636353538 861759101 441687354 193739399 660303628 816101369 443446649 669236222 498495906 282955634 8769615 947506371 896779473 275224879 372999988 353866076 839630275 735964517 806030816 229836259 198694255 724951012 818374866 351425307 96460970 556890066 7125317 10636734 171274152 530408681 367842734 345963524 644357078 647300318 54736422 619861692 767431188 232344103 417869161 438639689 925161898 832937522 605325372 74099620 963913476 585281177 10399427 24208178 831948407 543891834 887547793 591735022 315578540 752227278 779977273 12107795 442276437 519565886 292924926 474960161 242148498 666887221 484293109 962052113 103131371 394651167 715471243 100279099 240143291 443471074 188741396 195952095 57063185 441627573 496175946 110752055 940958984 535871727 830233102 477586310 899916645 683980601 294407818 780824911 798573566 348613173 201956786 726899066 376269253 85214261 142890492 765192906 992501048 536177939 363122712 456265784 845937807 464263100 263136838 997010994 993954026 210784011 182189403 431657202 893416785 355283527 346704620 829491603 730951327 343774949 94800541 92947654 758026743 41532831 956297963 107052625 992378747 302040997 462527151 760642405 240105963 308282101 282507026 380171217 117794948 350079971 337527043 412575018 46777648 34919672 91128715 2442210 737449545 823567293 15772953 469009378 320795989 606846963 266411081 996183768 678500927 542673774 327082651 662894154 685779732 753766419 987509222 658249225 950586773 247201072 262217144 171952638 305454118 870982610 107933909 935225734 155492959 583114741 394860951 100944665 916884003 583250267 31942842 33017435 56782460 689467487 399287877 953580031 717840235 169038747 704313496 63418340 1359482 591221133 841507337 69581909 87411296 664645414 73042774 565236813 833648543 904627482 838961349 587547973 475419025 511795879 397244049 370045892 639737731 11882347 511675542 308761587 828968650 587662903 706944356 447101018 808517685 842922798 478137489 548877322 538847828 710533781 522304803 255929551 816453560 36497418 851326427 39969232 608277879 763914032 526838843 825161259 287362804 655341765 644159174 208825340 501744120 350626529 857796790 409832967 53891925 614491119 898098173 132736246 663979523 719678687 243149660 893926968 206830261 770068629 340250207 196362710 887944645 425764097 848209482 268184153 784259324 549397854 795842481 996818708 665238893 607693184 553426529 793948381 741513731 444598696 456416000 398208361 983512671 130618901 151543820 245577590 773426095 975401329 774427988 214526098 245988975 471514808 711822469 551369839 673231016 823104719 812659587 721673057 766987354 656504494 132916230 410723345 357120839 993033305 163526914 846837013 266162693 714522275 831179830 554278759 126969278 496549942 172460629 784894465 383606551 993805631 963347310 31863561 524291596 395321518 237253271 552899184 913033246 336840753 323614175 85243941 592274023 17700243 670081 221195800 538872429 954735696 1900764 611402533 162839842 752569050 416998594 148396515 379553676 717564399 246064586 188959657 256613186 899542250 241421542 988651110 968720567 475946799 400400293 443166758 756032709 153871636 666129943 459804631 37802942 950015761 259287957 484092633 21322548 16742727 885399409 163582855 558672748 49189934 31831766 917299666 856828243 282593496 984154145 218491696 456727349 498585560 169035962 384169432 989449072 822389814 921406211 998782382 914726847 726574791 108520991 362063335 739438779 511029855 521649450 811317172 135819847 997615046 488271161 106618347 293564324 62369332 311222693 462202583 231752158 586533276 797281101 485233248 745713363 774098429 85500477 146281420 651842257 639685546 339272731 336300741 946396137 827331381 371486753 763829274 669968911 771696196 865036008 642239857 701345012 467553077 661139864 247492766 772833420 401602650 106354463 692057814 708750211 820467835 160569623 578553917 731189466 330763947 25655077 540493342 84683220 56098296 818853424 650592127 561148036 348807298 889402606 461231625 356094507 39306652 244042147 677785153 741944707 868845433 349615058 980161110 943296287 591987318 189616169 985902234 281942136 979809931 181424531 396989524 416226950 654262465 743571831 679024675 306732645 463991707 955253403 334718780 640093791 690157892 439124684 314357334 566070843 480196411 926084022 762676371 448025831 156066813 847847466 229644677 152938258 850163995 485464626 94778454 289374934 231079303 259261853 69977888 540500003 910956529 721235309 179665499 885520458 851794223 854227420 252208232 202980224 162216408 867081041 877250336 526070362 205347730 106214665 780721671 120650972 210819248 902701631 45156268 959863963 789410103 863918830 415722497 65393568 704166607 811965106 866463570 231828643 791453513 650405234 63641490 176187302 624903489 873999969 721961431 761709435 903993557 802139508 561096056 971125377 605618685 972158190 719676753 321442809 533849402 733454426 431613680 263099456 95187680 338088837 942410648 482548872 260207062 300935482 918843970 978218132 541009551 958976500 904156676 37627519 566309977 810507963 568092955 175883437 131024578 438956208 720973522 658940044 908033636 671341523 387813650 250124076 671848980 204948045 345137521 170140814 546429289 798606219 986527579 557729543 666679585 129183845 500262837 510407246 409133654 909047989 837281478 615995965 803829882 101779756 359935455 590790185 494065986 499264698 830798447 312295763 754028948 867845598 624840996 769299710 682672808 666461104 280874799 630226293 228322699 435241777 58464214 289370272 408674872 328417645 7910594 76976564 286086496 56207057 446069506 296740223 484477294 146888835 515607807 177276576 887487208 89761130 392194699 251553186 841214030 861855751 789483730 965621195 994444211 18165913 106947393 998389988 147127630 26636522 558984011 726810111 288247083 561066940 354348967 171634790 735075840 98768975 968806140 382067163 921043977 887625214 403186804 385566931 940864909 456524236 787775993 760223907 55658825 797719724 155285714 923293246 224957146 66296850 839953061 956371297 447119436 973635110 357742967 155544651 41000920 704214000 157882108 283713232 885721523 841522345 771461143 905097748 620962454 542050519 738433342 644060011 485983126 301762049 70664313 119776830 865890670 118628192 29504254 865149773 245553222 838928787 378909156 581863801 265779944 323535263 657370212 734904919 990616034 263016936 559236610 517965515 849773949 537550089 488562849 877385153 127156845 851006286 55107012 878305758 662483043 334129948 818456722 254562352 407058959 112651367 868200815 315702927 648746969 143634342 706857271 821634231 388328297 873784061 808817698 70967 437248633 889524947 826609886 845128595 41221332 643940642 550684360 401309339 890095345 23054614 822197148 864537841 955380841 640137069 938114843 414906556 294334905 308768604 26635719 738336330 265139129 55193690 109585 400830935 676099853 82326228 89582097 986311197 110329776 568077994 973937503 800250834 449793386 471833257 294356875 603373765 698781793 303233053 770605515 646589111 782766433 734834306 392106967 605703946 910472627 559272305 17619295 483949174 628047882 858556447 514964610 351198964 331684908 585147337 708362053 432917444 808631935 376571725 666556822 291787526 714997633 568018152 53461820 551754678 603909118 602659526 570061347 755605546 21091969 722473976 47323162 979155491 486208938 808829209 871986612 865398568 334560079 240106308 376530572 211162681 131314413 987859110 469600411 892351720 423892613 77593001 464294994 122787323 785832919 457168307 208116437 480231343 735329501 575232696 552177693 39209581 433047593 145075721 424374563 858147183 905707983 143470193 630362936 863074805 234039937 135774162 19815818 584717148 573087527 786545882 899679985 753540108 9698863 563446691 774748248 476713248 39470235 457068064 751971366 804578782 286692511 606304840 68581428 621596732 74706997 924392996 76204641 394434531 82267798 910339192 754782292 81048466 302860833 110083866 275297763 791393112 159131354 332932983 274949221 982741237 498485398 654280402 103550382 331740098 878932792 61999267 176916251 453333939 134353012 52506972 111485492 464898914 415554595 640554009 387263128 767606082 191443972 439425280 945576740 891852616 601705118 323040167 91367992 661005779 545722486 890016153 162598530 552351901 820643443 147048745 905812385 184926609 973676038 972840194 656661343 599391797 570483601 913771561 969886140 307135019 812499650 366717083 776547105 73994385 565522516 684668568 647041922 452958263 265244533 920321569 376650381 257006400 827235635 728758793 547847647 848502302 777122648 553639171 264982004 66417594 45292614 140174974 517169347 112820075 124316690 784781398 347138871 483371250 667690602 92447813 24753494 849470696 177770434 482143938 652542865 80290673 167086910 849832122 337597619 461959133 543449925 52032711 131315490 21090225 561933163 877556727 851876895 913889532 115956757 324425900 99511650 48078456 673938429 669772573 239039690 144316932 758261961 680652585 465282426 702000756 137410725 186236054 79498496 503889327 710647529 302503433 845056763 445041872 385975623 521926466 371664488 585252168 864901593 894584736 192157396 74478021 427901250 684842934 924970131 841321203 975227339 693275788 913905725 251166257 272983880 557092500 60025232 430948012 345806301 502843285 161218940 951837170 517999735 910532230 484399950 293039342 10244353 482593099 847618002 3432047 727286211 311117177 222464443 451168969 831863764 509201772 150371006 482837017 633422010 282627882 683980283 188503310 759183953 236072879 769359034 333803120 48290153 255616652 461588162 753767615 596400292 307953919 478574717 302512534 797315222 581437740 817112532 862803680 499160613 87773827 141361200 920039732 123500653 467917177 327648110 506443915 977349412 899643827 643663063 875834938 736488634 721491352 347172862 598499632 131367359 622645866 507435581 578252928 484883715 546702592 728829488 675216307 317760748 607115438 71949673 454595877 216411640 284971833 678507240 433959662 984722119 697386603 172042906 983170876 192843586 529933019 194689073 935216463 553025819 94185935 547735406 783074803 147696655 420378092 691716466 951933320 655077666 618856323 327852031 303348850 78748642 460560222 947566857 113581268 715341996 835694645 443867581 893512212 173789559 912626552 961394080 525952613 98037971 62358297 954341496 616015920 161733837 13117278 153551646 383098779 209937826 759164100 629605305 237991315 262645252 811245107 697809593 375787260 526999979 453267985 591406409 328325185 884954525 937878821 3429392 388256758 966510260 43029160 549319025 21363390 285648792 743228901 674369147 702312995 347643089 162388012 745172326 428421998 925040635 414912157 756376632 946344767 72962140 661093072 407087324 282196166 669322741 530434004 837816313 393343072 964646825 474813550 692142729 517454557 550922671 605431995 257970034 429106407 671219453 549453180 654131254 835387096 929302384 821356861 529775320 601975265 574676457 121264429 719085688 312910440 485004458 281225695 822235982 413760906 135776581 539928653 161961018 897008719 929140857 823324712 61073271 673906176 321893666 986681617 240204146 903863643 33719189 799490787 511367427 509011319 313965006 716303211 410578889 777524188 117800890 283794864 586144452 44678508 62983202 897416339 987456412 719848389 618962133 681163120 827256731 284516854 878863166 64877691 892006938 673360061 761344819 332195208 342523664 25963371 410481521 761372661 225914173 969502873 861821794 65837162 175044996 509247716 492125885 584832757 443902802 185913668 882141977 50038281 813873721 147595379 455834570 480320064 645310823 354040197 270437772 646802563 14213215 112242998 57026446 834566208 195337138 150525889 9765036 906002797 615176792 68726056 399427573 255835786 946596840 557595010 907873205 109654514 754613717 540526223 419604944 742132407 11932269 484253747 984423548 506007042 375192567 838027891 710109199 682915039 991633672 772323671 825317371 684861041 875386926 225016843 209973842 27275376 396078009 793808444 464194472 931713203 308248357 536899457 363681645 185487742 911285542 354227531 869862167 272542038 551095266 207181565 860162075 229407542 404405276 750423303 637932155 488426292 455095654 616733374 165510177 976602036 272910750 638697764 687616319 25285954 733841400 350016951 338428682 952564488 234706457 1229355 342926803 124331723 957226055 887240190 417007480 803259333 18497213 156307613 361037215 597925024 523912992 815934123 615966231 3929756 510113312 274280234 272363470 566026460 272804857 583788698 51394277 86578951 308561361 608699798 596798908 639603865 552689622 530712773 920835539 170748704 731975760 79722899 209627545 940021059 848043089 875258940 214817711 864306317 299132888 425264745 820192876 25390001 886735051 194850885 378198921 654896941 69211606 542190830 382944582 912584184 289542640 620541155 150125131 100262576 686159948 402217771 512978264 819528204 753167781 336954089 203646349 165155182 602056967 493855693 135714518 103388981 15572585 936800555 649228917 932956783 763152510 207339090 535936764 603501161 17862158 829156580 709529840 311934905 497100405 37657866 163818232 623078296 600434611 617287151 132342931 386673972 886650384 342054647 794166993 426247039 383255700 262847672 149959215 504113269 934396452 565702146 622301788 325990399 37316135 898874770 667941342 555319214 473605536 634819984 886196714 588456404 682607857 157663363 483570255 623852892 408906265 870560826 253781216 196823601 922515788 377105649 750357956 257064533 756319586 495526738 879507124 697570551 666644156 328200020 660380807 118900857 290292680 977129287 235426769 886335250 259803116 794302781 703486204 289765402 431708102 420188090 432073566 75575198 605367745 74582651 685403835 644089893 900389289 227497991 615498939 705759942 608066976 973107760 59734903 780913047 500213046 854534817 433807797 510472279 644574757 2461023 718115773 129374132 642742270 44948008 570509827 903392293 89932023 924083696 149735370 447126762 126756487 744764506 387935189 988565580 522792652 791231116 214644444 96048653 871535227 531097736 389146232 23409640 248640384 912230655 401436220 991275326 319161938 949225291 610683018 620730174 544949860 246316370 705043941 891734960 524454408 344758164 515792803 4359724 261689300 701321698 320316653 183637910 952380667 967671967 153143231 917070920 255288971 83758046 756125655 872747354 541551538 942818853 148356247 893383161 578873230 500052801 927646029 524372976 706450854 449831881 999873295 812076639 961715236 64774367 60457865 736714101 267617186 543900450 513452114 235321257 716530793 366638222 298550378 10165015 165537104 753545709 594793373 262694159 176267070 224814898 370854231 893579243 905745241 416939564 150615158 801505890 258309721 394522436 309320324 319762321 331154603 400882731 21721999 706661741 554542918 588509092 161668233 292651163 187921566 390011341 678978910 391443660 943254447 443582146 966215852 836769247 984247616 622766033 21557103 643625409 700598839 63066190 824813870 286588639 118250236 283730491 759402486 11508854 634348611 968667038 308502231 615832735 4244981 434761797 527704986 406524451 609315258 486917138 134969676 809649151 516294441 824545508 712448552 900462435 105522288 70059082 357581945 922672500 293041826 425683652 764631130 103188469 715423222 396011718 365285334 246769792 895837745 554811152 330806191 289189704 472066192 632383931 192767699 485303623 682728907 434173368 270560597 589111698 508131124 654940198 91859745 10473639 499919328 477377479 999557746 327965699 37106110 330352137 254928886 446924090 23643476 364224527 460599079 722307318 88848769 941940205 801742335 912361912 494368720 827418446 204564250 793935756 30637185 777673760 406989773 462392190 430077054 415293566 747270556 505405710 440202054 151387659 60979065 827593207 11013451 592440175 114907837 367631058 63797252 628338857 307963314 946883382 844890451 523177140 793796571 329644995 519530876 701915788 78146331 945909913 492549392 145731485 540065113 936881004 979168077 965272624 238310912 869367322 515786204 874434385 341222674 661753240 386675346 930606472 700686453 659738577 978174894 935402877 881042807 527405464 499641328 695618591 941997688 915374210 765144959 954340820 538486464 174126382 78289206 142434163 298906696 43868623 711402849 550313394 239788961 597493090 738248612 930939133 605434674 660982912 492756519 213978428 534952423 988446223 254014872 638370833 5060964 216189599 961613693 738185137 823596528 851345089 538805707 540365197 583349077 20193848 234357914 32365058 437864133 712206655 382097862 886271303 807935709 216174500 297410757 900151653 482163890 455997078 184803848 54750712 155253686 188300897 54722333 773029344 404197070 671372846 856546375 740527640 734911016 96643394 632881035 25520662 465758543 996460353 841150039 92811721 271563170 464950754 392778099 783749030 797344764 861135758 865601590 310544619 774364432 192670257 796630679 543174264 144724778 968860804 925753657 762104628 529229553 220251363 210538086 979924903 916836535 226891445 694320921 591405555 405807873 565638665 346596380 767687899 935644035 271430795 457750628 935759024 830589502 937658181 652195074 659773830 281835295 974579570 845157745 990265211 376373894 986214089 387532601 823274079 119680792 459545294 732188868 585596392 32203528 519006061 291568111 421978373 693075939 533762702 808527886 803091439 126540384 127127544 1698662 41918140 378677390 837255022 196774053 85442831 862248574 321960236 436981842 457953618 819959578 882785547 826951901 934493449 748676174 917188268 441688270 393430740 966290276 32643187 260471122 938727575 772624532 458961910 831480640 428699182 807718077 386189538 275940307 844497610 46333019 633726701 473334531 158956228 634735214 864126768 230510769 390466572 645919626 946097037 143681763 265265014 785125169 641076641 953201940 666853102 52319789 898608442 490528692 27471351 847835690 779719030 160638381 112169384 934815093 233202627 54610930 458331164 147859618 624054199 28313752 601292207 675401931 511775251 269510581 116952577 852027036 874059834 151986214 300306323 134219343 575469236 376231695 946853833 229170706 383563026 718609514 481289463 273728957 387160023 183233561 490630338 496017887 92762196 877487791 173220998 856304096 922412507 542692034 765497915 222827957 904559007 97708526 352170302 15972829 283588127 338462287 469130867 833434564 965592098 138924601 250970645 3526507 440920205 876644593 944993613 413879508 41797171 480588760 528928266 636807885 551505471 105622885 853319813 404150767 876654200 318249809 385254500 410984786 154889998 877033485 17945532 803654795 536018979 138776177 158122715 579102635 600980344 4664145 909274024 539725347 279910593 596765466 338244547 615008461 32317104 58764311 598134941 360967092 800768071 832948462 181509227 496489399 947930070 144212937 892872461 182696992 310425219 903690649 886429259 534538248 213852136 793898869 438438752 608181062 389236772 557353663 959807686 101119171 808717365 983548543 181424712 598385440 782060460 340914664 151489365 744784079 114514612 320424240 776287022 960602012 594475098 276096381 145643101 334843988 330090979 37510278 386657793 44139627 807988476 113527694 439179967 757285535 419917308 8971021 368964746 897194142 664942073 788831231 564378873 787902713 253406411 275792880 472493742 835602057 22363263 450631926 963661336 728583497 668168518 761008874 999155313 841896008 273260320 635243359 393810908 786108117 733213399 625410859 619987032 58322029 650300650 324500503 516410312 661453540 769739037 417590477 283889661 668548089 627886695 467550654 545396379 920093829 936749115 335754147 825269284 545551251 942374814 883157785 586979203 663738714 876043511 944370035 909376367 982099328 104411062 997269628 900396681 744961944 475344251 980127303 133021375 716832853 193178707 771544426 176092102 859978256 304379628 706751926 793520014 123406738 600537389 202289922 715920513 36984545 473226359 313723890 912339335 791119141 339211125 422698048 287717288 330012566 375827505 129036844 177704835 10417555 58353156 509532415 563216151 157561164 750603313 242079081 80761808 412942648 736172372 988834014 722017996 574364498 158396229 124608685 294721247 98807619 301411664 730046393 34602642 735305637 105276039 301512571 120696147 641037986 291067060 748388409 404479016 738716505 141789334 314133944 21795113 39827889 417499132 385223672 185638969 777731749 537545024 384202590 412078943 153541391 697738942 439228643 394358929 740830419 990696896 543160917 323041915 485715128 661110442 447282958 821125019 44881679 351080874 953955674 346821082 127629197 448271360 892595944 499045713 737916544 129931886 542797925 956654920 199489699 199898826 242171332 342441923 589491249 213972100 894467725 240155695 142319202 238832486 300141304 155596233 977213688 503778506 291643706 637677962 7193675 586968706 499389094 895216643 485518575 410370981 364696874 424475533 226110865 69906658 612703502 635533746 731483352 262672485 500502516 432172125 867591010 274346725 786829232 787913143 734139070 605818291 334497688 773321717 25879550 838263146 375224779 674238290 864908159 808060726 584471128 986326817 999104305 916927571 727008560 907775618 423557100 662879083 312676706 236036114 167774067 423499271 767712484 282823158 44071327 3409433 540331381 218881067 357981256 423862874 484279500 313358528 655615045 259769353 322713909 761712123 587309749 71271777 463269616 350425927 529008277 243312187 202436606 712162609 993676745 766019395 314893315 724006065 81757924 634246447 982989986 881216845 435745743 265611464 270531904 483553496 295344150 600836710 329982152 169612366 813192018 711037589 176607387 492816215 878193830 746980107 795535505 839816999 209945864 475893824 310319761 4542275 257098817 618502616 98438276 850178922 967491118 892639939 364620265 195751178 309106531 557819441 492129480 883148241 645590912 161308210 399667665 888752367 548495138 146565292 287879487 623789621 788845621 534415873 858334101 52232957 857744381 121697119 784441185 268494149 177798330 662198241 373092340 418543575 674412456 434515658 458680789 882234556 979999664 461682447 190833474 703895328 371371591 884145062 961451530 921390377 70603521 142163775 475379019 186533451 431259524 456155067 741154634 905915539 790230275 386347639 73083857 659284895 598921985 415963213 154965608 521641467 256764812 168064378 312817156 346082648 376882192 223238522 973194089 354414 825284723 379797779 32875765 473613885 904655706 177176189 930922562 946051969 447059720 953633195 35582424 309204632 651798998 348973477 738643953 407611012 914342664 40170602 412404768 651530823 436335992 486146249 805230090 382741272 577930581 741556062 113248407 66207228 623846241 955208944 495413122 31591497 906713163 280891131 521555707 580136602 226826406 451805040 718454921 921069150 538256345 505204574 33484745 754897364 932731316 255218120 479330308 787081783 228735757 576449589 155989019 548615311 955586940 964955882 616279090 239342615 691445290 4133466 838272037 55402522 127262839 205937384 339107295 500746291 400864913 406126443 878139316 178454206 230047444 88058844 968690854 789881859 761086156 707333356 656298410 183280638 24446093 817592286 323114800 45345774 270546743 154963288 560279120 956860896 998109183 201684207 351555134 174644704 921009569 221664403 741186108 588642481 997454553 385328026 533501319 383926913 445241249 728415801 668508598 859620787 199393401 876694556 517143267 132541105 336221203 714935032 704152491 130583401 64627386 790941003 214082495 965763575 374960967 208626335 211446923 688785590 761757876 859201498 856956740 908205808 590493861 30972890 856019530 786961231 73425530 974898457 986466656 838976308 830741531 566618316 12337250 91840316 728245759 262958442 705887840 270680440 964560025 581899590 340684805 994608714 582614436 948207046 993116293 431211646 836713460 392612241 310015639 198193029 790611932 882530754 442539711 213800930 266555832 319438635 183802836 701240911 321444365 499712376 533852550 720882931 519960005 136011760 389542868 70490386 140996964 25145239 558195395 610370242 317924987 797922163 76463367 545642635 833828438 311992546 401183521 624991004 880561192 450629043 153548258 955030462 246160091 72466471 530702950 416937753 482348439 292359315 679510814 208450080 757104085 349558671 327098322 848420061 920554075 206757301 879585030 218144467 211831098 491798749 19723184 583532024 67678111 739076468 217173857 76630244 589921297 106710710 9265931 944951466 230583452 316154699 101481382 732520508 563726400 515001021 421599980 926100362 518271307 35482535 784845286 419643094 491901359 495550254 851020224 980164486 231715874 381943637 121102729 890075662 238059658 629095334 878094310 81379919 188206846 372854487 544209681 123481563 161707057 249238225 165948262 251283314 600189930 183739367 190625934 574839260 935087015 945923323 274586699 748103492 493319908 223876297 518388299 233467789 963300298 540427050 656856771 701290629 558263335 92540181 262844710 105108603 597541487 842125082 911658799 824592514 557664901 278586939 906021301 599650247 494769148 161797057 115662125 382281960 472528468 944627592 985360150 867872321 843456838 176208134 374610994 986865262 68692607 412373684 248842667 119124865 71676535 542410417 512748820 314080479 773670892 370887656 495667576 914296396 562104329 345851905 409689065 458773511 342817960 722078063 924179250 171571553 396788151 680027810 616866588 987930203 502752249 8157316 902728693 742999852 301198725 803886489 253629865 696564311 417463271 502990915 466206586 83829316 683728790 724445580 242961577 862965602 256897876 779171885 336038088 903541631 366781120 751120995 934590868 564128471 30065035 910464140 130906667 111141182 329032311 268847612 58589751 294580586 698180733 511366062 173337678 779501713 783077729 176688544 483995260 926034925 199097469 298441129 380041697 39091538 591211884 208055850 769052436 549755373 416971532 55999303 478709866 751997202 575821545 177098677 799349224 19816110 752504302 590666137 371806796 532661788 514502186 843394907 837302653 229208869 350788899 891584744 891353762 116244465 229472316 766550057 612075535 602321477 193836345 761420189 721422346 510910663 109413246 36395634 485371357 998893367 397337530 50873236 22870400 963315052 147870227 417440072 148659976 780214935 19170594 939215471 967820622 760084088 668224082 294430490 497955771 808639467 220063123 329855361 87964981 484826660 3188287 50410025 765316249 429464767 503410164 718982379 342573919 522168582 574609918 147923974 71037342 521311973 785615530 476634702 664067419 272029632 164757907 219994581 435045809 359700773 698706061 828860730 249611198 353482226 622555580 666204877 213108064 401823906 682782095 469432336 420325159 939755331 238746543 797392015 877579021 768873790 414962613 750580878 17138988 614516250 681992231 255320643 699399144 56174513 708101644 124180150 631136594 631242341 534380599 825348936 913207667 375284662 433936749 77720076 29299279 379873123 385177729 249844144 264760714 364375617 380599796 964705021 104251425 713610519 414997241 594686923 734653440 865044490 871167183 664698781 622427275 702034238 948434360 208090977 700058802 538974534 85170814 898064770 391365228 67620381 183424924 472128262 267862547 499722892 564502275 260884713 934531843 280727355 359699148 125158921 50226367 801326709 686078918 163269660 157997402 720603249 430504298 603640931 905347912 151042766 654659399 354705313 344733880 607721970 992296953 357473356 9389190 505282132 779987906 820900012 168397258 417346171 395571893 218591685 716096149 790127410 375193304 59169692 342532195 822369829 730139285 161268174 850384865 516727781 452327087 256157670 110539409 293318996 615331442 496952030 696012481 983102534 909218924 757841699 219326905 237120944 770109908 333418376 956812104 420497500 391835553 169231227 215893160 404555373 638603253 184678456 209988611 911936553 397318638 81439719 702175060 689590636 230809201 21685409 366351114 824812564 277259849 65524207 287492191 483047563 800792467 496177557 250606225 243353973 764021899 780228735 372130439 474356519 362635075 782223776 711238902 97502166 766063325 128530218 100911568 376854310 327345101 508797435 389468322 589542756 222876057 991896333 419704359 908343141 623831207 312133992 175385872 557143308 259520901 767169074 130897788 207641274 154748632 992046395 256104098 1162681 520519787 391307523 471959099 929004980 553295622 37947207 240075857 942160496 875625260 217428523 706771393 513801766 233453711 70471289 694522196 322523077 975095634 418981232 585304186 638498829 319488304 830148085 180559577 738287751 947095716 140958123 417352014 956556930 99568613 349185236 884888220 61090587 34767498 270846425 548799002 785967462 635841384 368454050 748523749 477485133 240608207 349596375 140372461 186744020 426451937 469184069 348420107 691429772 553862627 681048772 280171507 563855196 231736011 207972111 218079477 931764008 865093077 311257796 966533867 248304400 486739541 654882564 742223412 191275084 934149309 270136672 575311505 523542617 751081442 384079751 431877278 832428765 811573856 909745696 783160859 826429769 338406461 121762898 317714036 650115491 242006402 883754550 962589057 991176033 317777386 515470346 345319078 721904543 389878065 600380591 817457474 339357368 639513989 566353914 139741850 130681266 170590789 493357612 229898972 640793788 971546204 535411517 115100722 593168025 889524038 183006540 615319554 45737286 833118789 667955637 255114749 425941904 792026345 341797486 428079216 991883109 857796596 798989598 42112233 136101899 782649084 197488470 495011659 888715626 64185380 905967051 962870555 66993912 457838714 284569696 699833998 889241558 513398518 290368878 897091207 109630916 641445028 681679222 367949451 183807061 214112080 33011020 765101339 616293695 226847293 172976611 53784250 936011687 237925596 122368096 264773054 173037444 273400601 775418601 543782973 479316621 12670606 353927821 793587062 248726192 104350656 646706296 723640345 238162204 640135824 368008566 235979518 485276529 995114284 336091673 589029155 653785104 199529661 694449168 148688328 505821293 417667002 479668744 784776812 652858606 37334071 471176180 6988059 168082648 376960697 40172153 706456511 219253450 731882557 228611223 455106470 18070658 290133218 161088416 506414716 261463701 542163977 683749785 658397249 154555139 705030660 134470263 456061035 457804783 355151649 469684708 385208772 356666806 421881603 72994595 46146561 565223826 511391766 471629944 694574301 548207015 207198715 567855131 421853991 692642082 194044087 785296257 986777338 390014057 422217233 100011421 92944227 890072603 700601019 390521714 601036589 722815497 657914073 485224554 943718571 266041696 665842754 383767665 97027354 784266949 979572055 771682062 103454005 999815157 420770780 853369269 509442764 962392196 528293558 197724965 128786599 67660219 723620898 148476676 37295810 886382979 561812894 986727637 923591855 3489597 949375797 443061890 722379302 778289944 892660144 392299474 717828047 358610206 814833382 510506671 423019336 83974203 652629426 555583939 947635431 849142531 458662724 934428777 933726393 993407497 461355670 413025837 614070024 705618877 794126773 899513168 239927111 773092764 262567286 699420296 486373391 869883682 640346583 732675111 642555005 286233243 572456800 524241758 732754021 62778174 625766190 254015420 885623331 192358487 608348671 76412778 67388504 896737991 556808207 300014588 979511598 543918221 198528391 427804738 166611197 399805118 495757484 607639043 716617262 993049772 489809920 734456019 329676233 921027701 862810647 495303446 222179308 481385405 714817079 973001465 955598583 230821485 850510953 747713835 35807296 907083238 947521364 315803692 578069834 482439587 636630017 362405928 418983976 631973517 695387729 541412262 522723265 121493606 244641017 431513337 312586798 40035806 275868632 924529191 87696139 243783821 923921989 595730922 685568611 607097184 494639142 17029579 520631507 250742587 934769940 682640670 364126937 305067822 332345813 199249700 725566525 222510939 310971633 846875361 652748929 796557603 428156997 607967721 847100630 304825397 873426928 502201766 493283264 112851741 768877837 214250406 761638537 150750497 292314149 868523555 515343715 952786180 328719487 737914070 234094533 34548401 432373013 81286451 560295533 659135216 4874104 764890173 712495940 670119358 755383749 833405485 478514278 572333542 822589222 406395816 759994007 434336169 400200628 686639386 175714574 804581295 508038410 631475239 49804137 791940737 674080730 930761371 324977980 608095992 396272003 842259087 208589648 72665131 297054723 506118179 291817918 895974377 616319543 138453936 898732916 356506900 354901857 793380657 122284299 584138271 43680264 532402327 664366354 603746312 419983581 302014292 942231495 66353910 757612669 108244559 647157825 274917124 264786099 27887745 899531173 894225996 417122371 29743891 671817726 90620145 346887047 711537828 758349684 101906032 777312131 762707404 92049347 923557404 181747403 203319453 852295614 514806900 858138289 664638550 981149896 251826984 843247184 589441490 884019696 605335459 29665726 120091832 710627256 224921795 773504813 628580337 223208092 427334288 898330371 277495746 900623434 837997156 514754823 304783460 761806397 689808987 902892150 332410167 661349151 576845273 833463099 3189479 579998440 641236626 524299671 680452007 246648277 334153175 692728675 811558568 502798254 59469330 80205695 428436030 64834246 494043812 983684294 598990997 833232040 395379160 489698509 91784675 429086575 201731820 947565829 999991376 471115119 245800567 629525780 861951103 315865390 990310945 815594135 345176904 533888200 429421760 812412618 33576852 862643124 688512616 476978896 726546906 280760564 439545591 642178299 185975426 607892176 260654282 626540397 82632189 673961690 532324827 299089786 287376033 915923464 786932228 900232117 738552027 466745308 558873980 476844451 419059391 878245226 618051750 789889579 534560893 312772678 607166050 358392 928109781 446170821 742894367 616608492 625982994 695027390 55083096 659135824 203592757 17559221 859728172 519136808 673685145 329146324 651282909 578736833 758915222 711017070 248728058 552844966 814088903 224151332 2804770 363688400 988906671 295348694 576404735 230488289 504231626 544358034 74626016 998268673 436705079 279913022 59285679 201601940 342554783 399069208 239930109 890600886 618448875 657239643 720322639 253136163 596474376 105735926 674050083 601151273 407119878 414633179 104936491 79159046 328194015 938961459 156727369 528003150 185418533 331705242 849284806 263415914 971875029 384069098 726269657 196491204 837102557 917573021 692514453 3853476 839192501 118299804 525707608 463556727 821878609 833857672 539363520 899188180 301664430 537067385 801544445 488051731 9166981 506012906 352088710 784661952 830354116 685064830 740471398 584152438 552990523 407597966 100608251 36690349 690305589 379297735 776640595 134851790 920459386 324897546 581075665 458209780 32915697 941135852 309627439 734929564 932765509 502452315 76320569 735890618 421596584 625842211 142059339 287156346 880592804 637300639 98036111 150699584 185075088 456589213 11707027 148875318 98702028 697023025 738420800 291748998 279058285 238339353 661164764 485625198 553996872 33559133 649898245 249641586 836787404 143445922 775274520 54588229 413721421 89264943 741037828 181447876 412796940 186789320 627301715 866350668 267618626 367980460 842005892 781855660 503933645 143196769 13667915 742328369 795812039 515323559 644125875 473994769 518102103 822520679 915029487 127761946 554298011 754442538 597446102 839460762 904001499 824445249 485978489 257659549 370845931 143356963 983489373 707001913 817050702 686693624 584200462 544911552 163821879 474699931 687215899 117652009 631779882 541727454 58288224 427519025 718172108 540722148 922923768 334029326 335382544 584552179 886142973 201091155 706684488 796049672 507261104 165744626 428886097 589491828 418823276 339652658 565808249 839208001 537244970 443491607 15266683 878872994 264975614 517370970 548894679 833658112 949255888 714278188 193880963 729907500 56737610 368819285 433153239 238799253 912027690 648922974 146021454 159077899 940705127 527034787 475354040 890029335 533274385 958897822 737554349 943894454 957865057 432017603 293625852 478298538 824537228 908774501 549953983 209440077 683253075 747228223 320201377 443842721 614510118 979013954 121148211 853031382 45080736 978883040 947595131 526007743 190957002 539286676 501775469 893998193 406971047 899146318 912807621 40758431 164850287 380969376 560549731 699196724 500570516 16702905 686126659 714344845 935940477 98191429 335044195 318644839 658580980 641636338 181058720 892630738 567884397 810676523 651479886 461928391 80375579 908337562 667489316 315644419 152676810 958088175 294433016 944109239 116586317 237040 879544329 205271846 261982571 542461487 555225676 294961543 750289868 343830974 3772094 927665752 31346684 688496929 870957360 65425020 873168447 294531087 598375310 563040374 725140232 580045765 684730705 676133084 78718647 501558091 67903551 254098933 312576508 222910443 563287378 907966215 229782737 769505539 59336601 369324865 536113142 410376347 686491722 511801378 338108444 369924721 861775540 176138654 8527200 567732159 647109091 297000732 256359626 896353569 462693290 209679130 625552648 409237821 480211855 596888155 77270791 445460317 542546204 755777184 205144909 256237179 541730351 302230296 335820720 549096720 648137599 448728864 439672085 557083920 291381523 166353648 827806574 107029809 55691422 395668921 374460442 383686884 719362347 541517991 332602735 225840608 436394250 534538446 77568500 393921763 701089224 60529252 678431063 822579052 212542895 550969184 798181609 313927587 479172659 466256162 425991427 637913464 388826775 464517308 397909496 451220233 322591316 454358216 893731349 354273156 278127405 706421354 178498334 672084406 741233941 956624385 876836891 312521414 507987253 384337862 421922204 916404610 815578008 348762277 690647922 398445435 889976163 639474445 616758281 757244821 976331621 297470508 436996908 273736599 578351810 50434840 923841916 251279140 473820929 963633596 519253437 825365257 755913783 31349164 502764587 697358132 548593218 767630872 803519299 93859263 112289963 915121994 672335778 574035171 605430157 209431112 326471489 610810261 317335839 193032783 18533909 669862118 440486780 999243055 549720199 353381158 845623888 841874474 607435036 143424463 273821963 154758265 721997625 803844165 110798296 341548220 715783756 482910726 969315639 950624082 227835802 583539759 819055749 146516667 563820241 715385466 977442257 708129616 867667272 51380924 226806223 68167888 456076737 495507520 335216662 414498322 684460142 613539526 217228648 699691309 871096697 985700639 948897527 818177846 621086253 154908349 269272415 109399110 496058306 178340991 999781963 629971646 261638175 312783929 796883546 435380049 657696462 867552672 342930926 691235920 927818251 960411260 317294761 819130699 51148186 684006165 970822168 643616590 636289175 705783753 347855222 61923638 879404302 449024834 869323942 784306970 159396404 170653258 959782539 501947352 134572741 231028216 541991914 909822175 520842824 429106253 786943912 92122635 435948453 646325417 918513232 238536822 327798200 353165816 279292987 382541426 277612241 158415632 217375328 320199838 187291720 984386877 777688770 920668415 264737441 900834076 655101520 126680267 371457801 715617751 480216781 837387534 134126809 779703488 108487918 306912369 206858011 979737173 768350112 562166143 284215264 393492675 141431111 570793296 908775982 99408154 791843608 884202734 547866159 136043267 79727441 192789836 421766886 693387171 984420817 664834820 494225399 203505684 625548958 479290804 305053432 417107568 300379929 175783473 348945352 511362167 975049958 610704568 851947486 43172472 445446647 867907445 721760252 338369606 541571864 381361131 9865485 822265953 434771505 708598330 786701595 700065208 417735880 190691789 220941524 812863100 490229059 69011050 813809420 597956687 436524561 986826886 702152607 982754914 583207303 409925793 285513488 988789017 162590590 788261432 903507622 927355556 615306035 168771954 320223813 794924044 118268035 195012156 143539337 133801006 740892409 510233733 718028099 502745358 456293853 621119640 882328540 756289891 356558607 86183692 673233887 623785793 209163752 236863320 314446438 52881507 118191342 36014200 169105235 494851476 332830108 701450023 241891441 488063604 949789681 605624826 215150751 126983866 773564570 122106277 682420463 347714740 829285100 62478448 422341563 719471970 155109373 597801042 598463369 666793861 482889485 336736325 118516501 670513942 289885543 185409273 931624326 561552194 423711060 15847613 652332484 941165216 711435744 159163446 611652041 209600260 364263826 601417527 761479100 663620172 224829371 792664404 477437845 471538279 901647928 987974889 54713077 42048889 84040530 372923399 673495984 321804696 706306136 584595204 3408815 417398657 361525327 214084214 849234633 965395304 772017193 79431452 318009854 735007422 469283898 349769414 43894225 530947453 608615050 19393488 626431625 500762483 944301295 185314488 129987831 92204900 760389808 877274842 506840870 75961986 400455110 584284111 922744929 843531226 355332032 454962939 910461212 425310503 333936871 611875453 501307052 618047829 882621951 894254671 587410230 782876934 197718611 982684920 299913636 132325673 552373671 455557819 958223458 35459225 472895441 214212489 853156177 153579799 230029178 567657633 451688293 332517782 63034600 649815044 163411603 699582228 536091112 891690227 677070641 443871387 946830108 807792066 924260211 839571819 128495574 270850724 879714434 804804066 107562760 20033495 598500524 865890247 508813673 393755063 646146883 679672362 168809308 139601708 969162090 85277200 995748550 612012117 900271347 164319817 837463022 933896701 881060619 728764857 533683610 887346103 527123297 197568085 350232502 558275028 337722413 121916306 863341196 722600315 276250561 282988632 384774418 377880418 429826952 170843363 666077322 785229234 607172799 955139918 84272810 885213175 904893848 519228078 157521503 802824613 573773428 326856727 368225871 472935395 395900333 336706490 855684592 810014954 24600245 880946002 209393488 244321396 507854787 490556403 149471255 723757459 281330188 953910659 898987165 528194053 676114162 25531821 544629136 481536270 264041983 897951143 44960631 398776326 427282465 905632275 452685291 781833662 849235224 208063597 843935539 658300502 171560381 661765408 320638975 309601168 915752472 351984291 777512660 924876222 437548540 496265659 206777872 799283890 396384674 568532850 335825301 4382141 977661969 188702624 917049922 137734667 990786963 546103939 824206641 766962600 604687120 417155227 897529040 731959807 60188315 109003122 643899152 818828926 562015035 974499684 578156382 423123174 34788771 529554175 393030087 466856233 409230319 875086485 57999639 733591942 691088446 237927515 254100085 936161946 983978403 482834126 128888047 670293226 550467426 280754311 785154731 476063619 332770105 7270617 921607418 692935077 695762117 427504472 216786603 448959202 944034270 45405720 55822677 614745236 928510263 153017294 130089372 156507635 145999753 392866361 980922834 856309460 747371662 900663173 613813484 995782313 345758309 143668084 548729698 659975689 485595491 228106422 596268420 332970361 355596215 699286871 586435581 713593446 431878648 359871560 233798374 367925791 351710355 966186207 99361462 873293749 975248844 85278257 987375427 162779438 260205020 503568763 246543280 1598641 11668987 11281263 244820002 422830729 715398593 897843016 35034022 851132329 964455766 539054570 572241250 750717474 616618168 60625358 390074931 982785926 581503537 278348099 495352756 50296629 586843373 437209423 656835328 881132170 542421607 790862023 106612863 337421164 432629671 725059026 30161083 452077247 311345587 133292527 780949311 644048098 544957982 71178054 736018864 417545837 757334973 137154540 604387285 576633822 503776362 524141837 696592287 49790986 14288297 838017003 935249622 269009808 366389976 219485200 299382306 397401262 831275741 912292635 150033006 843571033 918171474 162848718 500654424 47948999 614724083 636898489 604957937 500902583 694328115 917406474 637066708 221841465 188521822 475480344 315592416 69189973 246777757 302947502 529598296 46486211 951421068 883022669 590029728 332164738 563903041 694829455 281131335 16421258 923604622 242755994 419249164 604716616 590076434 982509650 481082296 840854611 537438703 561532362 535730030 779889474 699416732 278200029 757347891 254197599 186852813 664685661 915735370 820524946 427745547 803209634 243395894 934845616 389782265 189009984 572471114 777957514 637192299 492203187 262325422 785153027 177982922 24679340 195431833 739645139 678873728 138851737 954578949 126047870 205755009 65808117 863565096 93828369 642741992 236131937 124032106 160735012 487434745 68436219 543769064 89960390 306076419 494227014 470518147 154687760 528372383 5872962 405954676 382716784 206081495 981270597 831763210 758656286 266850214 730910670 466257981 618131638 271595569 375437662 52930275 43779106 827940170 686633247 413865230 995895521 522154155 134116199 818561798 595443745 804100928 593422023 713283434 569730040 322671395 663948653 626084626 911579697 780518293 250072414 647258277 980702532 558510578 936178886 85866812 221247679 643567124 905740521 476732094 385144903 189735237 105293488 318665725 223990807 357523040 818878096 916333317 997777291 891292096 509394476 688592128 730257916 326666924 557376924 810581527 595440535 494419354 32844371 487343931 473433036 645441346 137535341 832473019 739422700 978248881 599165224 372429186 77869768 235104816 224129273 924193643 554021374 358793351 552307541 173787832 442371394 692765538 936753537 830358612 487443994 389306050 564667572 360882683 268203637 821987423 768184827 919823077 599446982 603048457 827421889 69203243 252458549 950954375 369767796 516663574 849227255 531519952 114127337 145722661 667063583 341145416 900790533 44460729 92914313 329764383 311713784 633813030 449518251 129911794 728396430 698584056 102396851 486719378 643604063 882383472 84642057 992065172 35953138 714267136 256167825 647789991 333057408 530331783 303838771 125794850 725561795 818325901 45052383 329490878 530898972 488173358 199959525 208939433 341144756 166636613 835363043 165738392 429922993 768671617 14707834 121710306 601632497 685271102 813750474 452972562 725210668 17359706 717282901 89527968 91455426 285801798 640452014 918199737 47922276 946006380 314555769 358658560 848856229 82338907 758575240 602632757 832870709 3953733 379858396 346027472 555385288 763036276 187345581 762812164 75283473 391214546 242961349 292242099 787618733 365819434 623476514 800720235 604850899 269789564 417111478 465543108 409218518 932864506 23438413 976133927 27378003 105564975 412783239 576600750 450089144 159812058 868108717 853286079 402001913 762815923 526083100 844923133 354523827 61453652 557062628 531272796 372347416 893594600 888391980 654162004 874117411 168411404 613655927 73830436 993241619 515826547 571734027 869924590 779573533 127184320 454357867 926443784 562234464 729318236 803341490 877553604 944279473 957121909 29385939 884157135 306841627 75088316 995541057 638672985 659477366 656460005 735148288 61636296 644249944 238130533 578332831 818225659 492484207 724616334 197595915 116217132 998942438 450011536 503737288 126998300 958080064 650357235 231478879 677508616 543216460 957516491 714399741 145447371 376524421 646036222 258208448 769231560 536773256 90533230 929594134 618111366 420190545 174556475 697610281 814798739 733127526 389350416 432083924 231755592 967014495 970009269 216048437 902213025 580293960 768882221 308797175 652872337 581755611 32538189 922388928 593810774 333608362 515817965 17335139 467983465 476807899 2376157 199273170 946929510 203529492 723665328 179075256 47770646 190188844 88696348 76453734 191830906 791326396 934462349 190060504 38195094 366074523 21161676 958605843 944152647 971412169 193318901 885211674 520949737 591303534 937410187 651172676 59346849 8905138 33147754 168129042 996546207 254665296 320257788 891243027 498415867 279400482 61148949 345969424 217743394 811535967 864500083 336953404 101241323 608147764 564134523 151351178 812795731 249915982 15186201 723879957 76368425 714000304 574493230 822234692 709355252 149440543 670277929 263725149 468143492 811463263 316379616 397463222 725163822 568616633 975259801 654271785 452558207 684657499 494799324 209172763 426236409 647854702 642935065 174539976 43504088 335746008 404851431 525851013 518988192 819330070 425376454 318247473 308882773 10346021 845952633 89592087 431072274 991783860 793682483 562255075 978301887 884715882 956795790 376163822 70867581 626086889 961165069 62860678 512984355 352402379 311214041 672205262 372651574 451610090 45696484 853115236 136344276 283326295 301199793 183465820 463331184 515407612 964631538 235541066 329683054 962862087 726677463 815005091 70111117 396104697 804124076 639591814 544885877 279069773 372724392 137603619 577806884 89286765 787017915 513006385 459869650 891202755 419381183 25708617 860734766 570074670 497802378 121652398 295350562 997297321 962716507 217926893 560938091 510098471 784157253 546686763 652549697 654860197 364577539 629562385 773996335 644645710 957779533 454847437 663661354 173545598 754095180 442958616 643884657 657603826 581626261 803993550 758212585 77910675 410693747 687034096 509717789 62621083 297200960 121279665 573936562 651505458 422476716 900192660 313985971 793530308 250033879 732810508 798017329 717951940 599943688 114585544 448966008 85544570 46092859 789342306 79932134 961457906 343732815 216981254 178588376 798698530 280161309 461024624 288894972 362556658 336029003 365903438 725624067 576708431 275523829 288449952 870697043 939453615 580009654 516634369 624857176 374923178 529001743 217866304 611704757 616637350 952138671 273109616 637702641 207092513 41220382 842634577 862186445 1508694 182124806 50006011 493769072 567464966 937424452 995615494 511895034 769320018 922542885 568767920 947028774 129267976 284275451 980859233 898351664 376771872 598331544 526880926 291829097 102379127 502795375 211180840 928098404 274883349 383099674 636623117 909340698 148057140 219353581 518431261 621048214 247939233 36234499 138974947 75134250 34180291 12239406 177393737 489254504 884460287 212291939 77830747 544064754 501243181 350067100 660330603 58585544 199647244 126784043 734093574 501513524 238317280 271143519 497296728 661201820 196885874 999226959 826229870 65613817 242368810 70899264 599281750 683979870 214628403 826003726 185298880 829021818 675310128 974818710 88992663 925205358 223835995 567878169 229645781 585456888 324958902 863612058 378390289 964589172 719471514 275397861 611849337 524083599 856165379 198069853 661931600 394193511 871818205 893037619 385626056 23893840 399929722 920848178 845031593 512526085 525407783 582608642 461596432 680975550 333196107 78901067 685855779 260143264 478645842 9334662 608233645 995615765 125898530 356402615 464936901 119046618 770242279 780049970 956610154 865530860 355919139 73251607 42162938 440142209 183075591 454718714 958966761 635660543 869844466 517380377 808896520 383206627 134089388 336270786 462790172 435925977 663833634 4713485 708311642 873729531 875721040 553372981 642085623 153220042 234940077 262583316 328488265 993425453 706212233 840591636 618588340 474602227 905011061 947943194 928457591 759356804 486709514 357865729 7540049 401735611 368211377 738838698 908797976 312341041 555135485 917793185 615089800 296372472 742736386 400768247 143848991 847854029 352817805 225752760 554377583 970611097 234880804 856223705 643697080 990154449 453401456 157476026 139633072 508808134 63400522 478251684 18191817 602239661 677593384 92609766 287035197 677670295 798930964 823287968 632265230 245742237 583387803 108751276 741530524 594961262 678800697 801343456 853952386 860320546 908325567 691345255 278252850 923211388 556536400 928939510 469475074 380364804 126394934 612968915 212877731 604796231 657830464 517780144 751086381 361477580 870559006 503698710 782159125 298312457 491695670 925487225 543700371 440366565 306268586 440107803 863981978 39694735 105184314 414637958 758507521 222501317 358212565 885446686 605310028 411933970 647616392 724942227 805052137 647732010 151651935 514696534 685017343 15730370 150646009 868209169 535613925 366519276 760107052 810898245 626271484 840592321 593248718 689119207 219956691 924892120 804428584 634516188 432477359 804919673 121641495 862460499 680889438 967760953 936949828 56382605 189240800 272236207 490594436 23693094 181832214 887759071 450937811 91890415 205064598 9316280 861014610 288348024 89719943 423578653 935462406 674896994 490111999 38785087 510916061 421962429 842578154 999965496 203776367 228375475 351221263 105025562 36176999 87972644 202604286 802609378 676530131 688422785 939867399 807889478 562776014 923568651 742585151 346631653 577949566 62786713 867739083 843172335 99715796 948750938 834602464 958476778 86068278 261257524 304051108 423390394 710837554 14488807 767088601 696273894 541510645 943695540 592851483 150016588 80039526 632388560 758759010 407209683 58554310 535217342 570057770 718299095 655548096 11225493 640612277 970002206 700774185 304472350 227768983 281330286 278588430 557094751 273203513 824347616 824514869 471155267 746934429 308249723 989530215 872607349 613258570 44203818 843034551 284340966 989250779 899689430 577490069 805248071 350155949 117176554 159749564 233333675 280329494 338695115 760535510 716354496 34549248 130785766 183390997 137326886 469472750 72780842 274802053 129103172 180751101 127080943 569770534 597233054 522087782 323785291 530095455 480225155 565682499 244901452 102914233 567006733 985034332 823981630 875268700 726945648 198328025 339990174 532766581 483281038 951278320 27374905 506380314 985797665 831196498 126226708 368905345 971442903 921275174 212831099 889922305 474098156 303639494 156335468 308480442 996379413 737201943 554904902 88728042 149414875 396149882 168558864 904280977 153633863 586789396 531697325 259417034 541208733 772424561 710231361 457210695 304080039 440565021 524863676 321875788 976188470 86392758 133971545 667504751 250574621 339418680 903601571 605608799 905622106 176571485 601140352 144167400 908585732 905742605 707533727 294812838 202131706 61514539 352735376 433712390 568659121 926595966 565122723 932404245 746228555 305877030 462955752 150656599 970765890 849104783 924463033 70781206 767528556 809021212 830263605 432755067 267598188 146628638 808455865 72782095 185013491 945707293 331440548 794679225 59252980 926260291 833199665 559724440 641079394 738794022 813657507 503580121 527654426 833726512 946349972 836297224 789224983 750961942 981934002 602744008 373206794 85614522 649352711 155891902 543412291 47102113 3046793 87738560 848704120 75910931 224889416 579591048 692019382 33562776 487527916 834990241 244140154 243759568 529541059 256933976 813044080 785937607 575198654 214171512 607265152 462720839 897509159 986502291 736052182 118977802 755972018 244358561 227870879 861842877 669819371 89256070 858762933 134050173 866988022 256052651 696494104 537660652 238178608 580221355 757697433 569824654 726922967 8430881 423819688 164606187 241667235 434197165 907010809 962968304 524652981 481002400 851009123 162463292 164107552 775638708 900934120 921429313 672023771 928542345 522810531 305553867 532728561 816603132 667532606 845062039 282259054 81251165 996884121 318943014 475100673 799831612 888113940 473826516 120312845 16940876 252763018 125279251 416650885 825421424 328096118 304431437 628724619 382251379 417016447 468899730 16002087 544771360 813607541 436268307 251823259 480413560 883608251 463084774 585840943 600952104 292094485 484463947 598482343 307022796 971429187 710195179 790321029 968765082 789224713 692776885 838291894 902342227 228711224 147696579 694853054 404394544 248361310 29605722 631809477 562243830 97986272 162558761 70134687 548141923 124693715 353311248 449493991 85290990 451218564 985576701 448912906 865241155 172456297 82172028 261439475 742864581 741444004 947496527 64516976 958450044 12357284 65668219 16873178 787471860 787149229 471252382 775268671 604663163 228804977 262475889 216982170 918005206 520837740 413714674 661858062 994627111 767484922 105279045 678938312 921275357 98960435 58322436 328699891 671893992 815052665 539301208 906280758 19799340 733941184 489721632 262467438 493588830 856996014 36852342 398292021 541445971 748314544 270111235 748286340 224418456 114425328 298819762 283230623 639123484 446056806 610745196 658849269 299027131 946685010 292281127 363099811 675920096 945364390 767066378 719177546 897782747 26404022 422843435 312501290 960434499 516356981 484327934 61660910 995009177 90302972 952198406 484322974 501260263 307858031 3303992 350852491 531495037 766783600 616336292 413024430 872123485 450000264 607800085 527356293 575602113 220045817 1873894 190970802 135542224 539557410 156488708 799517765 992484716 674524680 297517750 921932333 224271465 909459416 251421501 814140617 940833138 4435196 915466140 212567883 776122620 92025809 94051764 19362667 113518648 441861340 128955965 774378360 619641276 653538673 131810992 626874117 542778690 738793940 154179687 886233237 244490781 78758045 542680523 334302556 86960372 650595719 363067882 549251890 758208975 146794333 317898705 53152076 696402681 800770000 313181567 651217438 823238097 506837436 993244517 529847263 121217360 470723165 233290162 520978885 615672494 816070570 603667977 622721392 415459150 110698749 43009630 148953646 457794294 520785133 390070212 590335640 891134168 37418208 795675825 709404248 49642732 352778880 201792897 563256610 103132112 291756 451871847 82728109 861226973 272880946 11473209 953031528 188133613 666505260 813566637 233480045 568909618 624310433 973633641 107180567 17906613 148168267 109483560 644168688 616139817 940861948 730767758 35844394 622520454 273837067 482424629 813460702 65078499 865579032 188758417 103969106 298876272 674524557 591017941 63885177 976331764 787385431 814690490 432503671 34386328 56991967 268330599 16470391 85502556 686432376 905559545 906889172 185297299 778725984 204018864 57173447 734667719 835110834 100334157 427520565 440116609 462145115 934036995 602861634 972911431 586723366 332933237 385142516 915795190 766727799 177841496 425454615 978880756 789489703 165462595 289452798 123929966 632507509 912833922 289239256 362980498 735277852 439741546 787682569 642038098 737997008 399772646 929523605 441190395 906834539 793471118 575557640 157035687 52841378 186016652 645229375 607638318 847388720 394398005 654540061 104522949 704331736 976077396 458217486 589941160 136711076 100263859 950549729 875684293 197531365 418239168 736277811 772030699 219675829 143754375 599449661 851064983 998293183 325517129 380475 859813142 841971598 728289846 28697768 695243533 784336248 983234849 693714893 8082021 117012425 553384117 921796034 55639434 993897089 795965832 800953678 804195704 284555643 794398901 774694880 147971987 582261956 196632709 569590714 356697069 633697304 755047414 551979851 14059729 261732292 990932446 496266444 318660653 195352548 353516602 902385940 81570296 183358767 434039819 338056108 759153566 741400329 253253971 7147343 703501971 526696191 933176488 96041159 121091460 515755076 246253175 981515215 239066251 234791006 143248609 351150338 697809757 380831202 186595583 274250816 959536704 639347501 749057854 108031279 654818681 270663465 329710944 403763615 717485629 309288114 130325505 543695912 835768767 967147464 129171883 895587292 643907747 96262885 967204604 387032592 140549532 757786521 477689605 457681131 546403769 815403864 960521533 242368029 448920275 521419859 387560799 85303371 630450738 866953537 138083421 852329766 445706515 293148453 753669286 507907338 47863533 227547748 576736498 469627997 143688325 578140665 886295290 632709204 332669273 591102619 846869257 720370288 156301224 114640266 501522187 684568788 435588665 136465043 960415290 151564103 781948512 129378413 339391666 649536212 352458464 388450683 430637033 657154005 277745046 144970042 605755915 391681976 69572319 755908397 884650457 211893246 966501564 20717352 235373458 752775423 362931054 272789398 91705780 596541220 81155035 709945798 397497697 923988217 163735040 731313080 947587638 828440860 368542333 520527290 246821592 804976824 904826031 74613290 923235416 6370486 940081529 931670286 687829844 427324180 870477097 914768986 621725988 155724874 17474365 394963659 717322536 847765989 194463793 705150991 467344610 513870097 475024698 169988458 742385068 760256882 11138965 746492019 193838902 791756345 525137225 486641824 710415675 415878122 143816775 680880052 917548752 136280427 84929125 185763623 156595962 914863434 686744053 542962361 772560256 688558738 864533707 898330669 581946372 714550007 930033708 606530404 462261078 543861413 293318737 337821579 426066402 779339349 146527525 439048266 877334215 571159553 527361801 477546912 456204623 638231013 155089543 410806129 672052680 956767900 396589191 670751521 917873869 904796823 939241534 977951897 116310522 464948473 904400201 897997890 431716516 830409038 322642198 949111276 63392590 99678864 759830016 750096113 556118154 330145661 296941322 676628426 292454732 195353313 719068327 336398865 588861247 172097049 590519798 842697257 715399485 910781833 167923615 209615359 746391591 930838808 565812336 669339483 685069624 893602018 114818970 913259969 578314693 647259489 445001443 332035031 803600491 260004080 811808590 249174449 475894952 838501168 495373239 667869335 536918137 421087648 656933919 316379412 862260042 794294495 645749763 917836709 344283685 550579739 458768855 814722827 635011964 744643701 72969833 954045354 819999357 245652228 695093959 611511853 235865338 276058266 101834941 647947048 548478535 467588802 749561073 816066126 181596320 766431634 692135780 184965278 998034111 28470751 388774536 115705281 653690599 543039288 373240739 917379190 128871978 247638912 204425948 223269711 966867977 193466350 502190895 326672475 626725107 763107853 363798675 460314477 944171752 400937891 576386502 64549313 210436086 701201403 786865151 253704351 165973747 720175306 977720618 283560282 208271450 933158213 177215646 672226393 327382404 889179724 772198792 174763755 644941924 127039987 438698716 544696450 178233170 155896616 44040661 232075065 237937176 871023982 943206558 378436995 59510610 587305625 755460626 433877883 393106882 216251989 111672493 357451350 960403396 528632366 805402880 322098863 41826992 422601593 974096428 533346159 24722338 194925648 570737256 335217655 547343795 309847563 221928129 467973906 475306076 171428254 213201107 348435151 185086395 5250335 546070561 330414944 765133455 118764521 488466017 918745401 749272865 506435795 56471984 645896958 438675766 810902924 119457281 334061255 840991476 391540783 187683494 509849462 181246056 340742835 299518917 206958659 542972218 493111033 881603311 339034798 602637623 704668198 677123697 109462083 919970341 527620987 408236423 39588493 924109124 346629997 134509243 820827461 151627426 518283556 634046925 184161539 923227282 710776342 219907780 859575153 639572881 462032043 104115839 816620603 584365609 271577176 747107585 337396962 648774845 276920609 616347631 325633540 162872512 733776904 99599183 526799070 357921100 120002963 307944792 332083765 927561136 715919934 75855390 902250915 144634385 511500377 576946858 766106931 455123816 157827104 678646755 109811309 238062004 848224420 354997423 297367804 679152119 484208389 337869711 38953716 460589653 126496873 492512993 159548032 161232692 613411977 99184177 932385487 844951289 795441020 468250964 966790800 472170153 430012803 989925193 12999039 765734848 149952486 327087519 471048923 176315726 105554143 95408951 190381791 162389623 481891307 654175749 823740084 416185577 543125517 83844436 552328921 842194099 38774176 967683330 605469487 442089022 749167851 532895008 796804025 472450499 244653311 558497854 178642154 163545276 725381202 742285928 580693134 567210599 244898751 498424492 276144571 105742027 59741482 328745882 544768338 923295207 120513633 185212867 487051201 917735980 604119329 93016247 952849385 135158289 944502235 848868480 923184440 167212743 897131085 213952417 460228526 223932743 647621460 970461735 440242880 291521081 458578336 514077012 886156146 611441313 474026632 171092848 840871309 11156464 867060616 339840538 691139705 446366131 945748098 715866180 616844784 281605183 981738728 63628789 97570851 412346888 920527524 637531452 259270006 325406693 411751029 827744689 454211477 118362760 381346760 670587640 378803652 232378750 839600502 988761386 881529463 473041486 604635972 486774673 298432418 885850214 345016855 265604470 97958240 780894639 90736004 294630976 567629853 768825782 110148397 786891505 897978464 506313035 271318864 288958207 547888896 281605324 57700581 691741651 45454371 20958973 33044903 930589004 610126139 284734761 37891467 360893261 570175756 957325480 160877336 557533121 127201494 414917128 650483168 116630279 718566672 759843589 890735662 634412020 928361735 493118997 583855493 673660250 884487268 40475279 969617956 306288554 241289844 909605831 631175038 771699560 495371137 723297318 270212342 551001455 557056750 440409972 856404164 341634066 323350985 565940039 178463871 750238102 378083584 855293300 390589186 977133549 999990366 943389259 273915826 449027069 23772478 441220718 958358267 569120023 293540428 667224107 936187596 106078727 494926104 656224161 34547246 401304632 132710 390761005 119482501 72663026 930642051 37741215 307394586 519195156 115124501 737139842 519076288 39491431 180064949 494616240 121047225 299983969 773984775 551669360 935147993 727698072 297601991 224999902 942775308 762318688 984325953 986753063 884227710 552867758 533270646 338369373 187849119 140364484 481590677 649292515 31392840 845102042 52595628 380993058 762846301 203033236 234755495 383997226 838421709 2930717 728689012 85997424 916489959 509212238 563165352 804563854 768861135 862439990 823737544 294883237 621612646 603124457 272568143 767735888 243885097 710466654 628241263 498910755 601365132 785128712 658307344 51320193 350342403 823937152 780296875 730042508 5181409 668910750 676652178 765088144 866077220 735026016 116537276 852639857 310831028 157230369 418401568 644629286 362272335 891950888 938082902 235741073 151968096 59097872 132663370 252787955 299347974 591483402 749636803 34519576 429396286 554705687 386667424 420952970 591761492 622372744 597921452 526300784 114538614 347226794 855493011 328256378 120840176 605637401 729474704 470317080 18918900 961795394 577977984 937770068 595506964 900504161 8099969 584528439 776262375 515347694 621904902 571729165 223047541 181194014 948795443 165263448 700411769 857061122 973143438 310128273 435746566 945258064 661521013 366328478 379593295 462009221 968129606 18899451 503664289 383837752 649267205 621474311 153775760 629384627 207662348 663836032 57883951 307925361 104192144 378423760 367900910 815928576 204449091 572869884 156070258 301632208 29635067 748223232 722131842 149000369 72316975 448647707 724393356 798291477 826428770 719359653 690478567 633656017 449138505 905921711 29454069 908115164 176257443 212576950 70678494 494706405 374371117 280354609 161927581 594755780 640292959 840291068 477854037 645283303 662709437 285977307 422138874 127137656 437380658 639575497 249402623 73589146 354996720 395511707 871818739 631485489 239428664 122988231 621882362 823719243 52533402 218791242 431412435 697682820 170365303 488283126 796241961 232943932 587488491 752347616 338651354 728970175 692465406 948065243 952496728 551403111 579046341 857013148 498379167 339169740 152437880 809153353 896857247 765350084 671704914 856332440 807578674 185350365 739737414 402187321 309443192 632354795 935196837 534026463 416729150 936017402 579360093 556312210 490060762 832199192 724283315 885191906 727925486 279121022 891390525 501445245 805841150 74276302 254075515 69388486 572908655 303475050 815808851 149627629 928931746 466533729 731389916 779412247 58745819 274107057 708989323 635278598 14154537 625619406 144062310 203516082 118625446 114661888 536937671 703160713 961237781 289170381 247185639 20726945 643469673 656593316 426700071 988757920 357353429 640716708 23235134 961116075 158995623 731347901 232317294 913626991 34234576 945372516 310415270 9647373 705777811 954779461 92571395 318892190 261178999 27218656 655502689 975933005 211686745 496459769 501685934 308945997 752293555 74346034 419365964 274026047 541043801 658513670 762473751 523865308 669219874 657079844 171199696 827769556 156750588 266918101 592758053 250559089 694944205 943055150 9885885 512413622 202303510 681229719 946194338 515375311 884754994 309167200 194167160 37527580 122273880 603748779 664305490 96099481 918122831 873433829 685117977 978898834 228585046 881472364 895343967 936064860 107296082 964346846 872174459 292056946 300609061 329769841 377197610 408265021 951220627 324472044 51736163 176879701 378779471 251526803 141365017 683756779 917441310 695314060 538762027 983732950 590374460 416449951 117714958 63009955 136983445 7488418 55161711 466180181 590624518 80711521 4607200 698865057 742048525 715172639 968141316 559061108 547983627 585052629 79175551 354369716 440745469 267913363 695854027 251665222 201656785 619301025 276291507 343321459 788783361 160512829 234757027 234108161 148861840 295257148 247486141 789428244 533534754 872567899 464522905 353818442 791121147 32565002 891085009 596510365 596800204 214898988 520208094 161235370 39842714 496227613 940606784 928552290 784939688 729605501 450124711 671243800 703288125 590886934 943760743 130915630 496685023 524212472 953138506 822409285 440350241 269806897 722151013 956349158 170684951 431490545 408632973 442199528 746394548 689926061 335649176 514962690 609904648 280566999 735590899 152891502 209570846 833415538 559891947 637225561 835619495 51014785 229124431 664283889 945907309 122891513 521528622 213930361 456911127 209395979 712433948 734989428 143809094 413460416 824841971 817008986 261431879 900238285 110722167 672950620 949497559 659461340 212690396 758152230 62998751 934217931 655930935 220004404 74338652 649050190 619686240 492381925 153415834 629551181 415892730 654074924 529075108 292043765 260078124 325172784 591801319 14863906 956249691 929347705 80370995 953268225 639347304 443792842 263031989 50877797 11976074 969040985 82335973 839566634 676031973 409207238 214608978 528588941 462154346 177904691 359028273 583809412 398266059 353404710 365696671 786870636 974682375 524804274 325846530 105891264 991926773 467196075 927852028 801981059 458448707 927317705 439018756 27620022 80087297 220889203 894985024 702553418 441173325 626188353 956383744 85945172 81954389 197141497 747020597 843564934 596300122 18931469 571403693 164617832 437543384 270853069 709148707 441144590 826753641 632513659 669625468 152110426 888796816 40679556 671079516 514007872 105575020 652965080 954962486 844344219 145085555 802198425 462827863 412282903 807913817 516234352 402107121 977834519 966915968 350588334 419477460 203414220 271423739 743949982 835794807 929101503 784650565 174745524 989100540 834673190 825427337 470905496 325552074 690946100 694114358 828892914 47218840 238034705 959656096 693906016 725579348 587839161 719338838 664499832 175765371 194319334 635423266 530966159 45365802 783535869 742019950 179062107 300059782 289863829 675425748 838498791 415608789 200528080 551527453 864699991 924357613 100481697 856839845 719271405 864214882 104038918 215472739 144308780 553775918 307098996 229434329 813454020 873422622 718365305 260679037 585224812 634757919 240145769 101844811 286176958 968512993 568608592 316612924 905426558 267071799 598491560 944548393 481720392 421867672 233373948 670582748 752572124 295850043 845628544 945476164 820043637 399760526 402573946 682572920 863983397 336578777 457639953 507807997 68977545 544698024 410431910 419729489 450333478 334282387 96521606 634776636 689710217 815898407 761358926 490136417 278388523 497175950 158621196 274900283 639061399 499277962 451101588 997380617 611462199 972013440 835233308 539954588 915302127 753650916 593487969 547483438 312372348 561687000 844635336 151855363 902921467 168311394 160803360 534435816 528996596 2439958 828990298 343466658 913517610 169706662 768183592 940469643 771521408 560244002 766755383 879087231 326358735 635905168 930639366 734235165 692705498 714834714 863698885 108259635 85421667 303819819 490886667 36861753 635747676 905229765 748674512 104047178 331665705 923854049 667134655 229599287 385760453 356068648 633140743 840711572 275298856 307943306 611129485 661492158 579448409 188433864 518262903 487482548 382957956 845857751 788761764 755502937 113343303 368401705 916416237 492124254 83872477 703699417 290866073 176693601 927396166 462444527 132368239 632075907 46818666 67057428 66624371 217238270 218181827 485817559 196562140 426999958 176623950 990223142 572760838 458696122 368235048 39366260 710007684 147786470 536540791 835197448 307442928 209261421 520989547 830232407 908119518 373712401 298495694 857254642 182887761 347971552 495127598 553080027 2493115 38024007 795150478 77687050 659022352 886857305 874210718 387483878 109057808 828052254 706667964 407883997 570080614 684888754 150743422 35365267 972160980 610187001 716400852 186905726 290111750 598799929 793325576 842054187 803649436 517890497 605873676 304977854 297311013 829128590 835628570 440174097 389917977 555074221 56102928 667041818 484479299 230292696 386885775 80908249 421410955 847202477 801416627 270069062 758278486 341447333 476497029 296866516 383206501 690676913 404052235 415877068 574722121 118688440 633063928 927027378 631534067 620492714 582691471 902951869 768351881 340051096 227974753 174944761 420510344 76680479 976672954 232117269 968484790 873572782 353004775 799045949 88118155 736224654 123675284 687426627 58616827 289418165 459025788 947121243 72312790 100096711 68423001 466562090 866006788 972110525 297372123 555342438 274850787 542328438 150828429 293514870 342120440 541864565 20027626 127986993 677051666 171139448 409428503 107885007 942689698 939835020 470996544 131346004 947063924 101936970 439579882 880746923 986843547 485819968 715856350 823653067 854119757 372738128 86718674 985817428 225584881 864392298 951844061 66823728 26232360 496285875 525646765 373224168 326579599 304017726 576201574 346321078 357113546 60146854 216140272 140811000 145407228 991755472 33018502 550062100 561764602 835796157 439400441 265076123 147708404 467424675 583185127 824745683 989557233 682360471 126368552 940154226 324287919 470841305 768863746 524048459 356746286 529773756 958508571 510536591 740331491 267019013 721782487 304233050 693285995 429482843 841530185 135404354 849404994 884988661 943757542 339096915 988948733 865148437 433407281 470382302 963277147 126300687 547765177 697672830 926676170 947896926 797506088 180065467 244065935 135042061 320124676 434902793 875795140 916638203 752309263 246753437 314801066 354806105 593914228 619614075 940971158 765780208 190321796 839228404 322481286 958656151 611816967 526986974 341921181 712392226 291957052 468992132 148454839 683200825 20912336 384148713 823905904 885232629 180890601 882362511 450336278 390127964 454639877 323496921 871235345 193162538 569127746 540617995 361265052 492648906 38558933 255313297 272017639 404287350 272234845 749805798 277752946 160813176 909019199 604032130 155312837 963938033 988454665 606402886 349253891 282167238 37072451 780104664 223996232 666973045 396549064 485105019 545063279 962301229 264026860 936022132 428706518 790591366 400777747 455927998 606416455 259628181 922473108 961137209 178773988 566133046 608106423 84070079 841473411 843276327 110335683 121229926 241168858 397521631 183118632 432820755 322027870 925668809 691416971 78122489 851857788 985534392 230011695 696779691 582653924 765455055 131235676 735521003 612750580 252965213 909932522 873981177 127080149 45371096 670892538 205386260 895802794 511689970 472240285 81004484 87525167 225667030 476108827 374109974 690379924 598908886 400693271 696325795 396065728 407483552 772904202 624265762 326512382 801206364 541526266 194030869 563215452 826629989 97327136 720996707 296581621 904631077 13967207 475047461 992625762 600159908 41024774 649221307 419076652 969170028 222799155 125376168 143064630 169239977 544369948 822492566 575028642 766990484 420492342 647609126 581931265 624606062 776697865 397401299 17820022 584281360 267192019 344290520 935747192 130393403 876606042 983187517 913317939 166463781 35105409 379266181 405350156 249017016 865527665 3431869 132052053 125898943 168745532 120071574 522670222 925525645 739109207 195788571 624795785 664772346 222472392 59098837 194045707 73726054 651902112 122723790 948333228 710894868 838361107 40230401 239469430 355646088 708387926 749880468 59503885 378662472 608459086 355334388 274183177 881145809 585365313 162200402 254217157 45144109 361862923 410436765 969810102 704508730 442875055 987551501 79154301 73712738 541466351 333651434 852070172 737087999 328504143 678736125 991117576 827780264 527619640 703401019 741812381 225134579 738846585 910798926 907113232 712518584 452852606 103781510 707541893 388959257 606848217 81113524 170767577 263748009 422175148 893940341 301101107 965391692 169322776 871246790 864374843 464705126 12997955 695349627 796497242 79773828 370583582 750964210 988738203 809802882 669147975 464420368 557205968 83493199 626268997 76777204 771997343 877277958 274528905 747037392 492838723 855265329 901614267 188265690 781885325 258472296 185196414 954558240 652981167 276946463 381271049 237444342 695202613 517715310 236528923 338155471 97906645 913859466 40071896 177170443 820799299 933548826 958374401 37257506 316960465 256906581 9140773 417575400 315910269 43045924 92527211 202966256 763452037 713876591 499380087 2197586 584345853 187962240 847292362 518837385 350707521 364706400 780679560 599221113 520891833 443153037 211386001 59458878 408662096 218351239 291023247 935781920 423034570 766789741 853348930 46978088 392805571 849350188 579207435 111541652 198027715 678565985 321545787 155364560 677778669 609166976 897312247 411923688 782225849 108678864 515912448 241352189 210042420 544314792 190835166 589672640 882853197 745922166 304009781 469658826 233224172 856033415 995980059 833998996 740246918 117083445 335850950 515809342 929432206 490771636 629804217 810630672 366646073 390045948 711763417 422349223 814786413 516680608 946119059 593604076 986085559 514886411 2493651 352857542 250223440 652932523 515340733 402943431 14973951 829052351 637857772 923585847 661381571 306761179 824920635 953271531 519398457 49563437 192191075 819711781 711003867 936490906 842894981 955721820 442099571 597992888 970717972 969314805 625777634 384225406 190183196 105094793 691534544 209955817 281869108 50358665 424870154 938635835 291096544 423750461 52277509 718113962 278813757 216626486 366055682 489095767 101286071 930796080 14735594 386561275 756321220 767175175 152754661 587611638 511916854 546465442 152589442 503079439 422815849 785268251 80936375 753006373 256644536 538072525 486372614 188351383 632227888 648216097 765557314 127663196 374770146 148713622 66608208 790072809 425688571 553369975 901887595 981038248 135005869 948077296 960448133 10505392 648849021 293945774 766819275 876271414 739722039 853905323 262125481 11842024 941259321 716584612 894846943 559765916 850432862 49032471 408430887 158038772 969901847 624823978 390299557 805434616 461800170 189341143 834503070 330398376 993828711 591223965 928392713 184044070 293944730 446136847 716578839 891168706 135895419 363932823 554493108 9803090 445959402 18373194 621747756 380054290 935146681 526328009 516816826 21011239 687526238 180985846 535703951 87125261 591113294 222523649 173993088 185658797 85873455 840441635 900144570 576745101 75762465 688297253 471761431 934712576 173850222 587010031 179518264 804806214 735712836 815442968 218487783 28453276 3165721 219243025 242423633 671216295 271768973 278465375 2634630 90096386 299765316 255936825 646109441 110279273 1262915 486683728 824181203 559928161 673153545 770560937 818799797 648467103 645530100 163365825 512718574 837841782 621128376 315068594 62525103 248121957 866878812 851905029 843484108 160348678 30732690 873943789 961506533 196386252 834976063 162432634 484014013 743729555 23337208 960456500 30006122 864755827 831945882 376341182 578728121 946933971 49506427 885574013 59972242 370125956 222838238 134169464 893813420 6506336 53000210 683687756 228977154 298972224 646262366 875124837 800824004 820252698 31069536 879971352 842028973 389814189 432227247 179283410 503588313 146493462 837278296 220883850 296241676 933429136 865277418 331559386 508416197 136711195 116120863 286337780 866739208 656340329 763186411 281412788 55653327 443784206 305250622 720796972 585190965 622273869 381604408 986800826 179677873 410728256 169370183 977906888 579146818 255330181 767580357 893025462 347689459 522123518 202896902 556736729 678330760 457185735 810385949 198570268 422595087 576932248 367848797 758678544 631970110 97718443 35455986 672086563 126700878 988049801 788623646 353252092 239733967 218426008 755558990 960934332 693898552 151621978 982894937 941757531 26143248 561141531 424320745 88194615 965146829 385796100 309261154 772810440 540282447 825350274 210284780 828629069 906874565 310619964 675398074 945616536 699279423 822964660 321456406 906433450 954997533 311527723 849074250 517286777 34026506 881395868 18880674 492099283 414845531 209898318 184137118 52905739 547877081 389385959 2895712 361540806 782428876 96161907 786240046 159638925 269440240 161379971 113803042 551316423 163957483 611890723 758643127 254779807 728461353 198906086 812515936 267846770 558704236 602933985 713532422 304906214 661647639 980846304 24590072 923913677 932067866 729772485 99211556 626648928 63315702 689086873 542656429 420803901 652632043 851409810 657460562 193737862 143576791 916969354 401403058 756328927 800136480 374612453 900648457 599194557 490961110 284539116 97717472 647779916 663263273 15248834 852018263 797423803 752031758 471162062 552967006 287511970 888113023 610495034 229380765 196874655 760585282 981293308 665036643 812912026 134570969 563400591 86165552 376473923 168873755 60285609 994745308 17519481 240481374 779680492 573104359 387592999 14691151 664240783 378065437 327071181 470577054 275914686 2249305 598834223 507564109 479175016 511399783 215765644 249129412 162873762 754072869 948289454 825453499 550295657 273287576 869916147 862399631 228643500 217598621 137832807 308418204 673042363 998495 719260951 239573879 198205717 1629850 81489405 104150016 917434797 66482777 743453000 216970203 697021615 207368635 435841300 61902641 439411943 40364953 454184747 273025860 60455323 496142623 3599468 580444039 322717199 91550011 714064797 313137215 862265022 796262660 367921259 65442123 462356093 322330288 151993053 824195079 588519879 350894893 916467441 941520219 489727355 133385129 317953026 470248768 699936947 894739177 405090729 297799415 9135599 591014622 152269099 148408008 281379217 791162880 809270529 663904778 526626676 989632506 114658327 783720781 370630810 569508198 522816317 941486595 652108053 769401676 117923357 327286740 181267175 298230881 431258859 743025114 49001795 709910339 501824886 733582541 754744061 135575676 123611842 855301510 342319900 516861575 110640030 55375985 329503925 630909732 75572884 378148166 806830337 58891998 330791456 45731661 708952578 353405030 693264286 979432629 112668030 276109570 268804890 829904808 920248443 510837924 637844559 623497945 348056969 950263998 643331164 83800581 842604495 948731126 486942956 568162201 985887851 340102563 406099722 593706932 967681831 317563821 930944687 701487280 656008514 457762531 729252697 349772555 478683056 127038350 45744113 389597535 801460221 879035854 812728227 937169707 402055786 975236641 656393947 833571491 831014474 353367122 95587827 398505773 577610935 940458528 775731088 758265455 33364582 829250672 295472019 218395519 741337916 616258250 902647534 612960216 343907877 539271728 155545058 706216152 551605732 105635177 516542427 489870621 689941751 666787805 370743902 78743050 891937687 457566934 724588199 846755980 983712180 223128154 489382405 469054943 525314995 855896223 490226748 932319794 188788954 570620344 572932953 76475485 779495946 745327234 556838736 358759265 810076376 925943322 655561054 551367977 627747760 231299159 178563866 739881561 338023909 486175605 441722727 145831190 60501593 729962309 726741824 448204936 700724015 42761435 999579172 885473738 51795848 311772909 449914786 325244937 762123656 513634045 406423326 681412182 750362233 849850432 595602316 745248403 545748930 454753214 487109586 545173698 748172359 847983307 197961094 156241013 393620491 113906342 813950233 91800425 839734517 85513353 649459282 119249168 581576973 877375239 496391516 195562258 25139585 285496078 732400603 7094443 860433585 160584627 723152411 517917451 305252806 41223688 800223685 405552590 721077825 632778803 120265106 656589136 265360087 632962599 399534575 169733541 17450781 621275568 138337516 389676470 800680345 350974030 372707489 172227884 981057540 870454900 398425162 566705236 236365881 962361049 612534660 255108971 710859651 275199166 53797750 506560998 264122108 897173654 869168824 907705111 682222429 419042063 659213565 455194829 573335996 413126880 201031322 237724657 577591713 725709644 472660219 602662122 257841859 362684048 366708161 251023459 201315051 820605957 641891597 857403093 19492258 894908211 665607295 518683192 352060403 816835632 947968038 990886532 106763447 141308450 472463877 584533613 251928794 888033008 158579262 596333643 171167767 897860334 244080890 161441472 555747812 711111762 631418474 633919374 437606936 435139333 533698895 426849459 336670009 184465437 387946563 476913610 85913832 197763604 631707816 528982712 245890677 853335880 739697098 445183103 932533106 694734494 486577218 882469776 771726333 699732044 898004980 530501235 476658127 141009720 560433836 455671978 123779219 129143309 211571633 609597990 228348332 79170490 528515940 21827355 27561111 203034758 165656386 531049018 81249113 737436017 484034668 323921083 810136137 42492043 511747895 92132942 174295613 626215802 151457840 239895199 545504620 711632706 565373959 524240811 530947786 690715969 801600289 278319741 877606966 155671743 137424801 476679121 125072432 147898584 394275163 157274064 671374468 802394148 842965950 742454073 48400093 592644919 535568069 114154316 940757361 414360872 573936606 126240008 886697506 308958177 488400110 957887647 534947031 997298112 562889334 279198283 671314243 422279826 745786986 192760820 600781496 990151969 250480360 456729110 202828404 791674430 94606199 921257028 889340164 301398708 603004757 801983650 555773113 790971712 471982957 155739831 749083625 534539582 599742751 882294052 943426758 159495496 652958903 446805987 809237470 770871613 39007663 181862092 179025123 322507651 975172626 918319871 183859 978684078 40370241 447940803 58089683 104170509 394862046 45986081 4441227 360808389 815895946 652040322 921037763 89749706 943187814 669241296 204341085 634174038 305301490 35108668 196817106 870895734 642778523 708633804 388166384 171310898 736136425 292492694 86583191 196683936 326423748 915577754 311941430 109881066 71703165 624323281 533344267 293143414 433227562 747814885 707901326 412754063 993164186 604454990 913413967 924020066 349674465 103756025 361007496 729417496 741060330 994796775 106625877 158050782 167608415 350963274 513989700 126432294 207599976 903826070 471643037 942972847 566995166 321352772 366679548 272533236 113629214 110753457 318779451 114194563 146548398 196818225 910840311 789577421 869225602 857468262 489271238 140210785 185221250 803251105 358231820 947557375 205052819 48086868 88978606 267704031 445323570 741730975 381208872 903489777 361107014 569223547 565530007 211195994 881462893 119850759 332139062 756120319 62611130 405816724 600169196 165388666 664529701 448563107 305272502 353903465 921922156 222318366 897275564 389237213 243426683 656053532 229831485 400300988 662391456 449800022 567588518 91918517 628716649 53217656 864831361 88120452 933838958 797672503 727500576 711234130 345839916 13314440 234062871 194260773 700788160 427978576 227270744 388553173 72046671 240815615 448446575 458450970 299157600 635518898 95984404 548147544 645457833 414173749 280355257 426830543 974266346 807755578 782496666 484048067 65365647 721224212 302235009 229433402 510411379 381118074 603929053 883930681 371928358 546708335 669304470 253084922 801087253 764210786 561596889 213419533 805800803 647206523 413610175 294935150 630752401 780942785 456863693 856630012 753033275 3110569 295929112 767324855 446785062 357732719 43532923 330529198 442169810 799033832 651527893 413110893 139392617 24442608 694832644 765297394 572674854 934945482 593172199 633092476 873493023 270071867 293226969 821927150 518004219 575788186 865997383 56599298 816304328 620768798 812497335 131244655 75540049 980746227 448198457 649827662 168583896 982978406 218266798 221817996 742477484 880522520 650972300 204529578 520755803 931827511 543990868 919275664 509761455 327750952 966901606 658160790 674600561 347511085 755620906 154678976 839977778 536982468 294637403 562392838 343033153 496831342 929652648 424578492 529006506 265506735 778198715 616278290 975459068 173714116 34106470 22810064 714835908 752044808 831943485 964172910 864019371 349221491 6542581 817623045 600948509 221312968 337292898 435512804 811107308 178612055 279241876 706454245 399627610 473833906 938689516 877772480 471729268 69596854 338172413 418118546 964825410 342472836 344981278 360474051 21855721 969939685 6036402 579566997 221304368 421966779 476160457 381664181 152616553 215059174 945210533 497730067 596465990 776960614 717383028 663288217 758465080 992767346 49917573 902565417 788113335 469564145 238924121 998792733 427394060 18738124 823243658 897910145 921903458 168887665 455265389 112050630 84489380 322616060 934091122 736543460 390763408 664758653 985403207 855210035 836849553 901547279 870868265 545782299 491805938 984881176 917470056 746250205 39204050 981058152 6883698 110107470 602430356 874500519 462593604 944046554 322357714 188182497 780717781 81146428 830170608 797133996 587927652 130855015 491099777 785399752 228301566 1368745 422878745 337962282 120146224 932890746 966821926 258976511 291161103 878842152 732137200 524402165 312764968 35573362 875312839 519943135 248900512 186515529 476890408 635102091 804199770 661875856 72245190 78938928 606696397 245885908 947069041 969566619 418818372 611683139 962509047 843136398 803106939 417080683 252142668 730995551 759624046 382606252 883362902 579113906 290940818 456639273 131946949 215858240 333217397 517374113 193104458 626668241 833556371 147698962 481581029 426581524 635976122 978578829 986741902 524538988 160532056 912169531 2695369 927156010 307028798 773279986 510035054 679403395 880662779 61862218 445198595 291252975 321124661 930919490 78413698 505299529 90046853 841730492 31045341 905730521 325871086 556151617 671259019 157275377 534312807 990474912 309342134 403709202 409353232 316310806 128100784 608464566 200673776 313114100 674220162 597145941 316634091 583886119 1855993 809893192 734417898 165486366 954334973 161194695 198531313 751814256 567961095 107950439 669800320 164584152 958521377 504072353 581762090 278043092 414391209 698232517 19745305 496035111 710652102 907368815 347805605 394670598 512670158 60652783 118723280 529244842 127844761 940086448 131155272 41953579 470587928 860719518 993571549 732765472 150618293 482507849 314333507 402916973 983709150 319986747 931587809 776573526 576750404 540203070 548449468 435099567 711468046 894244168 370067616 651727898 422197676 127042530 224040057 825703970 418736478 301117783 183605136 849014648 481314803 270498175 925044164 249297238 292684078 553217370 87716084 859526288 375824863 564067187 479681968 942181392 158883760 941002341 761401651 382212417 969346335 162876393 612488615 314082757 678475407 572811869 745155567 874232237 267594951 732101664 610383097 605627793 428143106 211198115 106218678 339705371 107931312 139802115 748535814 28508472 165532121 771233944 719697726 120525829 842356473 58741188 2134323 123450792 210642440 782638986 376298290 405659195 336732890 146895448 946028192 351764801 256370792 677422578 848278939 450843575 25770560 517180393 877731942 428467320 350095865 441106433 129212419 155547664 652443212 598906007 822365519 442163189 642418994 862436335 597075698 681902818 208687827 473112750 754705867 975205641 73040408 639550848 879392556 457985382 609465153 773078336 632075335 463703696 417900762 109752137 124943000 340126366 199867230 709279569 347538693 759183638 519034835 171477538 152728633 805688117 416992831 150065792 779213486 495255326 322341251 398387421 357834556 516377297 960164259 218118016 77920571 210282031 168614139 13974768 261288394 621089976 591978280 624113494 801226684 174847247 199677863 294033129 6685837 183462142 460646967 882259936 664584068 389868974 529738410 76806991 239271907 461170863 359640421 96055948 183319310 776388827 115863428 500237195 632257715 513189341 606196030 134913044 318855811 625414110 429475671 472837296 113420207 548372379 326682342 564925275 682250321 661699548 251092941 498718275 384112321 442278542 167589516 231085459 476751328 221640213 122794043 114435396 546119035 438385657 333912832 302039422 240360124 383255360 313185733 280531896 313338581 231507767 113256174 10112624 343383051 527939241 292298083 144884970 881650463 338975379 988551538 664558581 652070246 332843551 484293349 896901466 320127386 709596022 937302534 445876643 138950220 496094548 48449024 362123666 443791810 888615895 401254559 238685912 223212820 105241272 399360710 749477914 869458755 200725441 263655035 884379211 91444362 780712994 903815949 122252831 875751072 770496999 568859040 463537304 211088803 22545703 892749179 158281921 525269584 197375635 291275177 24335509 725966614 80105854 713350382 98679469 88701444 335815453 636469706 281995655 112961405 79934528 153733070 790883632 970576732 55379848 910235511 847303681 586524346 688242678 615809318 705583068 74501715 988856108 886735328 856411768 689035716 276712056 255878 704901533 431693420 319028181 293578154 734437105 573506439 151411979 664567006 319329638 843951442 992758351 592053641 59820685 9794619 515664133 807061836 518302324 617505157 706224170 997593545 566626005 930602267 409990213 731275379 260125076 201553062 655336834 416211998 847627807 520444922 148885194 914337130 475114276 503379671 128298827 363700244 419993724 805680492 451833076 225739573 493209036 265203242 61851021 139898048 269550057 482407949 737982631 465368101 810214673 115671180 174860051 77411939 508055946 73300348 444658149 989364529 780616034 331958335 326326138 775790773 617852823 284070832 940936108 599744167 872781503 505016372 597993739 955847239 819456796 391426660 377040320 197897100 32425335 630131444 508525599 431569826 343766813 876084659 965190514 94726701 39368917 756790062 894134647 535219995 664446412 32367114 175227079 561916751 92155728 703005372 932904753 495837639 534886681 301477586 147109281 676200762 928395830 669465335 200427206 682852205 575184337 551605214 361918272 623616853 166449058 877262082 484857924 671171943 607592006 597591897 150308357 383162170 418637023 558400014 949656783 752885956 55071847 546304491 306755718 799681209 889237942 211453532 645243325 175913716 769947432 44799933 787449099 607563223 62470835 705743619 154080418 311952655 704670250 884091947 475527118 576308022 757781142 643645120 966367370 918530674 234955156 606518971 405441734 128915295 302734433 92980679 784637239 595211841 450497251 733060548 958916170 464243356 745886637 790874090 522074212 790454103 829498295 343020000 545735997 116573766 421699804 572059403 409317262 269865036 42722910 786976426 401098411 543145893 43237250 921962802 698894777 734364919 810656450 895882261 374537718 919882356 990190695 666276560 154407591 697644648 841560238 285565460 538264544 21643392 817639789 401109819 173434320 701567308 20780161 285204467 621450042 409814793 383399341 84913742 876015619 945385895 764232273 684379754 931046045 599788872 695693818 828093630 308971294 350518916 617134728 740439374 299183291 674145674 13597281 709648765 177196899 284349779 935518676 580704262 705474742 589226118 599863564 538545352 949719655 114985366 680411693 474829230 469802196 481132108 505309569 522394058 258648253 421922995 26947540 325299264 963077439 634766978 855131341 245288360 673531540 466046567 730314243 187945780 938117302 185793768 681379299 532597108 152880077 123603105 995887433 131777875 578650718 135716809 406308391 919150833 425926282 386209454 721605125 71582878 195513319 245529950 25580060 498605011 334851932 619566118 615114487 388874197 820219651 736562128 136884679 196183082 26271536 353907320 590539903 893675100 569057216 519246094 307347638 802786266 119980752 760903667 195581755 510251882 22896340 183191585 978418654 472522862 12317008 228547066 390598542 375298138 546711217 796319441 814772599 193386716 20903586 863651960 89191949 714873902 509403460 154049040 743045436 742578959 365553310 969788832 579631339 481881955 984599271 241609529 81120355 89600712 527247102 841280601 548457307 8302302 54714896 857308490 882990128 123056400 959496070 613605302 255604939 80285924 194488122 463636561 712456613 917758947 53781812 984147680 77489109 376225190 998829399 209304626 965290189 781806174 907503467 846478006 502228677 697218646 40412594 416448567 559445060 855408943 6711849 414433147 209148715 240471556 342124008 8473010 887051910 330649464 522768971 157520013 524277514 597755958 872790329 756448207 780454098 448894870 512339147 511420945 111383857 453479158 547448151 619628978 72530879 639946581 585540956 626429987 35253344 794018693 898748034 658409545 675163392 791717399 849149779 66087500 987199423 425475747 325530709 190999464 976983702 470471828 685683234 751763989 998185220 801202941 234135578 874914283 714175740 727744357 704652775 777426698 265737271 699959328 782949991 53300358 203632553 269943349 307681006 40310135 953386000 432540070 163491204 87477033 757940427 215533230 588572728 42190636 693632294 493881527 644671944 709237996 516026839 218351736 344544597 678110453 182781761 315682335 820830465 74373697 391767174 897281293 977259486 156722382 161878863 159638569 502779917 293967021 747563746 963900568 668851129 797456934 894654291 842035068 985603403 648858731 305893092 1294511 988732351 887868423 634115351 464471043 581890830 482433381 328550373 425886906 875814652 836844160 664325074 744618794 676722584 531277180 957800122 792811986 79950631 599655877 189648487 885803982 107227995 933334435 803437062 978707469 101626077 544294233 949863603 993762972 84579453 68933019 987715639 199256698 481571551 715470399 844219856 923744771 879253565 589596438 115819243 557239815 84347455 78034450 942296078 396636056 316039320 632837566 291720435 660431395 266161586 673989204 618079846 80210453 136107700 199097430 272462990 887121021 803143321 883830295 151579822 379761810 836027085 607174521 696818884 11472399 950590847 839514677 814598146 488638273 788619428 307963580 463904089 507098055 776256942 239608424 575053398 836058189 605069779 278363051 233506384 341643354 832777125 959370236 877335672 567733778 887130917 320791330 39399970 874052923 808972903 239036906 390317071 435114006 107017156 512027138 362965051 193146872 226188244 375416673 933163151 421783003 618947069 263472623 309826201 878355715 329543715 124929357 107365058 985445735 314325210 582761446 659650508 985515053 476402276 569743661 857043421 790239076 403324116 431115370 716411140 627279583 83548330 252928773 863650652 938069520 218856945 960864702 719028489 985787055 708932028 645400144 405503389 787560972 177867088 697107334 923175013 430780731 921715838 836719831 926955729 322568691 714082656 504136525 760045693 278749301 729113545 936410638 484032667 445585434 372319922 735114702 794959323 658995829 540763114 413061896 268977753 98847868 562971332 915640726 354602706 577158887 889501928 803022690 566165120 431701204 377729551 782896637 86512688 419158744 611824493 47799610 423748070 56495242 123226923 668124148 828584762 836079227 524735295 907314665 89414461 880450131 996020524 90122805 261602771 315637607 760558802 933325524 486723103 751507178 496464975 597725462 273475584 742390484 749237507 743645276 379446638 137796731 910266282 682831219 427697863 37894038 595927718 821025379 525213319 372565188 847854516 339645567 354412046 488240351 657583781 467853235 66254712 481367805 946508761 478980642 104842152 282790807 50549118 446961530 97895873 933289818 692515927 889159889 864784344 935682193 651158477 384304073 871245395 462649985 333993545 942356912 597056480 98238498 665594132 79601958 732612123 120905611 677823804 367946163 637568215 712386051 616655339 513561189 881471327 292625108 758641074 769287074 757162415 318898251 49671619 905062129 572953337 963837202 631867452 604351312 667094680 5407767 926644738 369188943 836618199 508846027 276072932 818717835 531225030 914565533 263519572 480889328 396761733 446220179 557180007 388789240 244446835 353621331 857222356 435448101 431098481 965580636 34515260 633474983 510524594 656716094 12557820 878792938 788711925 596142960 23053434 759165754 83110499 614471591 376490850 86117120 376718096 174070168 855608948 377815710 191941605 875569510 779465568 568186930 377371852 484978737 243924709 458489196 164899693 547610022 791535536 961844798 550164510 136209896 191767371 802907293 362667865 65431659 734346456 151456464 729887888 234723529 185164499 180584 490901605 633283745 989224398 545760000 930553395 687588715 949334489 234107117 988369364 481620002 716257694 109272958 430858709 209871913 381246857 603064688 911859368 47428119 359344288 698775334 405381395 416002112 509134315 848998594 943699455 236495075 545926250 627394813 696579828 197163115 143166347 206003464 185867294 662158829 937640352 527744685 478692869 468756080 19399589 664356528 410011859 763471266 469693487 129195106 872510648 192651273 330635815 101946045 441255562 941352124 669199297 83176997 340739830 601990170 78336839 792602254 901277906 456426566 988275087 662682279 381070890 658849739 336344983 305074659 507355404 416204721 431428918 38763278 856000004 167303343 330643641 567073635 149691321 669419358 226009904 847868489 935256729 549201149 31227854 618506287 535747892 695352594 345706627 472044507 513870102 73103814 111733218 118575524 242628022 168946462 987152192 41096075 961866990 258285799 245140600 688705677 376456696 454728570 373130088 731490858 188715732 561016654 407136734 626369766 770002931 748625984 102886527 859943294 709875039 797487524 542580723 405660716 596062783 393794791 507062457 363529952 692380515 302587998 244321013 133173964 172095373 931580553 584548651 557464284 153090201 759774023 446877012 371702589 521922954 519283542 754594388 98725285 626117217 729187342 899537734 781120356 100030892 502069359 683134297 413167926 484820642 974399060 684630142 383731774 229169486 915113410 13329077 26688855 10502531 523426581 936806897 290504630 310724753 94412220 9584706 17180223 842546029 901710915 387485036 819238822 845706145 293191347 245346669 88743337 845914850 949653389 116977486 655057280 393905170 242159249 67962955 274832649 556385740 665105332 35231173 255235500 667161768 719086979 17675031 637284067 97347610 760010988 117683717 616168849 203844052 542998365 808393386 938493122 537049454 955333662 953980017 804522440 287729256 115084683 308646090 709799578 8978114 614784266 595079742 9195946 684105643 358334185 871161225 321851238 385651173 533213072 163964542 59416472 226569460 698458190 96836244 772063591 416175586 480414251 162433284 380142096 616336929 860019985 302325646 158811331 6312143 122187261 290135924 686287628 554843100 774871539 494863444 811912886 426681638 195382596 957601050 803592131 73232815 349102829 218096749 978524363 391473975 197394076 728417065 732414746 959192839 761118735 313104597 700432923 753093024 871609421 781203264 274874762 535482137 707801347 228636780 626265261 233222134 358460700 288644480 873864384 947403656 496047189 336945660 240037941 119528979 982363044 336193496 452277569 165696588 716944937 36987161 948553024 584201779 57915657 483424384 784866858 582644372 858696959 512082056 907434972 829928562 928679544 233358057 704440300 883373391 113843401 819335511 609418133 664382209 858060548 89689655 698858457 990580298 908271238 567816057 601551809 883174239 202055739 747802415 965109164 248051639 211331634 311107860 305606295 522545961 201041878 188228549 509822609 329510988 249842313 891495395 346598865 118369854 21286434 222070233 469795734 819243658 64080200 940681908 358338357 426952112 785334787 603503566 190184039 833835786 22610804 663126808 87472568 861689241 915560565 607590086 760053379 285266152 836045637 578733337 455200602 713323782 233324103 242729193 389840901 706081962 141230151 288799093 770265014 181746098 948536761 278887783 225574432 63097882 174940327 701607942 153932191 639844784 411984066 485063352 409894691 731189628 806865048 785290191 846297063 296361055 91092137 793014316 582020365 328604667 236878125 46225371 177098587 932652330 502839576 749869538 162025536 518322466 793004266 288063714 860068146 925603727 115034666 741320053 714160818 859318684 663875291 903300385 356073919 875589211 359780364 276112504 660878622 287800545 446755908 548308005 959038279 637931223 587034244 677687862 287588126 542489888 695747075 325689704 771197286 297905148 729651956 528462699 308080563 398323194 853302186 832857471 158108168 567036893 857395679 532476984 346058484 489989601 656231833 933069066 585479121 939339417 726315729 777660770 411451906 519173483 756624735 718193112 500999858 546060312 439678154 428700363 224320261 257024769 359611461 997375393 978635503 877514283 758819742 243827133 595790384 203274035 563275181 46290442 798839260 212334973 878600889 101460367 195535631 948468933 451537160 473520361 181211605 659058853 703181805 54819787 715914669 776266684 792035039 881217551 230420650 660120282 306435550 196140576 75961819 179325141 675853150 829623500 351170867 982341553 331756132 233535321 545401391 166786380 244217172 390143605 591588596 613559713 883045315 205128735 785198392 897076090 763723748 620262982 207352015 838141091 135233723 370478188 750108900 345704639 896469262 526967959 858892241 297356110 193458306 75689282 748698100 815549105 399534757 622902265 24446015 837509969 719111400 604220162 943740434 885709817 494128439 848575435 971582244 50767531 253625563 276400901 524035340 876523437 963596646 399012263 915595361 277298035 238333335 72253667 830555147 160512140 367795719 642917714 435855822 33276286 691527281 921324866 864672473 544684306 604597863 176013007 110168892 843397582 241946047 610392561 152122401 669547825 71910795 307019020 620589756 462344924 979034393 834133610 446492742 12542666 736825421 13305284 114255396 825606346 207310838 998426048 523085958 171321436 713377562 755791035 526620757 987413339 69641826 665791571 534502782 334014303 314012343 150200242 931590891 697386042 711129923 760415087 953266085 764477970 984378643 75412426 827903366 208899982 748972990 773243661 482442180 601943750 207396004 245470093 192729377 487038289 811451069 970637750 874758772 218538398 412449069 193002328 584011123 186489375 553384856 113745911 957077709 653574158 818638729 318409433 37372850 990581873 507165679 514288052 354260536 694662339 113033323 616658349 732962760 753051379 214708929 275805557 661781412 549334519 423780713 220401785 979863591 383457816 582242384 797455443 153140286 922101630 763020691 782819186 583183084 843844776 548765786 853185318 505292179 998461045 781016865 111671844 104759763 570588304 350297790 756343738 699119741 202537649 765838678 567655401 124940792 253567318 971738027 490722837 306285222 351848420 555629602 928735807 67430744 943419585 629978803 661266534 777056779 675303594 23343404 197886294 734197208 798876745 994442237 543231341 683943635 19462238 698551086 670822904 729784450 441798477 232513462 200222175 28171912 878314295 783485834 53329638 864066308 161065096 959241797 101246333 130729569 485426268 247356524 578905290 543912584 825184148 878662648 769851510 38831832 12038640 534112436 762688691 566693140 668181991 842977738 580591129 586244433 391154553 229002185 168526645 137178529 708488719 424874210 402026344 769091347 181082018 139413469 244493223 399626582 620597422 641600343 618110770 41604715 978669289 294745896 811942730 640003113 781165154 866599395 325572939 869233962 510382510 178721162 276755290 140686339 939256442 507513537 469842031 661860559 156190299 205452543 320654943 233768930 208082003 260809021 153466203 507514902 287549870 531823212 870244774 722557882 666469281 122077956 282037867 99346472 720124702 696705102 112464646 926394615 390673023 108225788 774285924 137565651 818784695 888303913 261484872 770258475 432500191 922151173 753169826 927464962 41572457 682341358 718306431 580267056 854696961 338626320 393566912 917413223 290797739 658808713 581464730 524342278 959043098 353616062 647702600 243870043 73642025 211496746 436776094 411534412 595804885 755706517 282198878 456927910 106510508 921396150 78036533 895204313 645905895 424463352 868747865 546286920 203129687 571763191 28411935 262495454 735562125 494933941 74026600 789778756 46370157 948605438 412283250 993956435 141044950 432215450 862155688 726870731 961131257 320904891 78375733 964526979 543094727 322838668 921828343 552535468 269532893 936542753 90715463 138214761 262930091 388494126 129616919 276653240 406778581 167291754 371827025 229420590 647390845 792830380 766542460 145931758 598757503 10394971 958761543 303923068 994614503 363772848 153513151 165254344 585356262 65599811 542789450 209097371 384719568 402976968 407751459 244941262 997035571 363930872 153284954 681342023 166684923 388024521 615064236 249224053 589386595 705673768 678279120 434984038 964659697 577051007 965248937 313822652 988604854 578052361 617183357 978269478 247858371 562019313 339441838 251649804 263767815 250773995 156792924 132685094 23958508 892816325 124892701 579612950 217071605 730657804 690061994 711861534 928215453 105016861 952978104 474919682 992792222 21274897 380620211 154609996 926494531 369141405 638058875 496278237 458897096 482711436 676290488 811196837 234384899 137150584 212491240 174478415 607136618 86958059 676626776 410577609 802126107 743028401 762471963 473740197 463802422 232334761 571128378 292602090 825664824 719366419 801639704 297295596 655057583 217928816 122048343 494418787 169996075 395079355 57892294 406368424 765063831 754008764 464078571 323681155 646884866 529791516 815785184 216896698 637068955 136500011 69482218 252094742 113060178 513788941 871920788 731926614 831284338 175419216 820080134 377050873 212952359 305973741 354186392 348104231 458749497 403728734 200542764 657204111 966865104 104146993 196911072 609097879 836910388 766898619 586784397 529417861 908131860 917494987 79950113 800924516 828384593 824338654 804993438 450839306 106357083 615717729 903531621 16094921 872687999 407409780 207639944 488132751 384126094 454713013 503858287 302805175 681742408 66910760 915391108 488938120 123502224 583782889 125704081 840371995 171197887 322169912 40856827 727330692 705068256 177267822 363049766 663785669 5909991 761042489 987304704 612803584 738259607 564853574 374484848 54558752 881625377 918752110 255433006 509974047 606351104 19759286 316576887 208135253 444525157 498926424 231210020 861375224 55344188 521214225 766975122 17234790 373985111 982348362 43923848 900414657 243473322 755239911 629309607 718010868 51463168 977917193 888990268 895973129 528440488 902363995 785319480 319919645 312409462 162957251 423161652 765599756 721813547 525972482 281148889 804438696 611913036 971169004 738918298 625053076 598293671 98682481 673780717 245981875 164272402 682688827 221195383 708988309 264076885 335737512 401147065 91813456 50130827 751198399 483485176 1081701 587741671 266373948 580798344 430014454 328545351 61877861 852603942 907014165 236553683 409584954 829186247 134096161 753227028 576604746 956664262 837696488 488933525 93581285 803956122 548981566 449466012 891837558 26339926 230151374 762075577 416028112 434292860 519486269 337324841 158859109 604587357 339650655 587444732 768380826 464785037 334775634 57235582 171844824 597860584 681974162 622710970 623784707 613751464 884182478 48063378 579446969 367117755 883995464 122931308 339132836 996923570 584566186 611234625 282741873 620911816 507960107 926935506 16614922 851840224 483322820 156073608 813237875 809024059 995851942 553402553 476425401 848879105 149603587 838648598 890392077 726829647 795023776 834656804 792276190 994449072 993932875 903264340 8488533 361943913 65983085 247813802 868377851 959576450 569926680 323003544 450121066 81429207 280241963 445730767 198186753 48977459 365362477 412383328 103068429 443343628 980527329 775331522 924798564 973485191 897561931 200760035 472192679 79739567 211767435 460187137 405604496 471349271 782534448 392550340 92706271 646236495 419090727 237824996 158234869 869994074 105798592 504415983 245594310 291824544 287596197 538804522 546793453 858399716 871282938 393010015 838391539 982682895 188265567 679571446 616121068 692263018 369666107 768315368 804303164 85882521 705592289 849560251 169023047 381516333 13949816 182674386 923576141 979521365 287890512 618143180 959802485 542205098 702938775 888844941 736848462 821979811 645022317 450075093 992325335 477562337 619136020 162396256 165673114 816281625 333444248 418627084 450161317 204347500 847621839 463674965 649239642 277818445 849665978 603245749 761391972 790237507 437393444 781500028 931098242 211565391 744910922 898550386 707079920 54229933 152006877 756724530 719815481 972890130 968311392 27582653 41242180 59807609 471349844 584004088 799294693 788430997 840899714 706353224 548228428 705215878 545841324 671117641 482990120 469444393 424037306 725312627 852382373 114114036 615412039 539127322 526173795 788990573 474678388 339609662 800733549 594852572 798951105 462712634 137144417 993494096 614118836 878523340 830734831 271019596 34202737 959023578 753774562 676195372 46552597 155223784 273691467 316901206 994865296 844683915 840021340 835474782 662256983 315560520 713596694 315144792 812705593 72491414 202773924 427349067 396092550 720654616 121651672 567618321 28323350 879435015 86886324 338842292 687642368 883023207 875640592 548714657 54188414 325904314 740797010 886961591 472470157 965762852 123942899 950153847 608612873 674352311 537391366 278322741 834628877 297276083 468503804 259437064 880741712 260492088 68365257 482221097 73597110 473033756 575698633 203390740 936555644 772453818 597635955 72515229 575277915 567652430 691086438 871658064 726710235 436071319 376931628 688825273 353528089 112892821 845425219 596247821 541642738 43300083 771514549 452513484 289960818 899334771 964312165 433554458 109639446 595382135 581218599 8739042 729568253 630313703 98192080 662139674 365702206 510284076 285630785 729037494 270986812 212596095 317306212 571666093 100641271 547701804 946317391 306385319 127094394 623862170 189712338 888038639 755719121 437690469 7257651 812289485 71214804 482393998 239026928 748031913 132584703 865884696 642090054 528398247 843715659 657032281 462707056 336386551 180141539 956333019 872027748 959050848 212360254 44846898 709930648 462520723 839004292 567194371 138091420 75605542 833332224 937378038 998892772 97798554 905415643 686372258 284018309 530776276 110536302 98034780 42549858 200739183 678645910 699533936 243453599 107076757 848904796 58096628 877115431 306073741 896320136 856120407 702990731 397228807 583091497 343702914 36173992 64538668 918726409 90310712 561693727 582625425 596202742 67352585 447727493 665170771 258564695 727098803 966233979 191092342 518593041 69129869 362119043 390543648 738321912 227967761 989921621 184642298 683874692 499383619 555542758 782475278 144715626 708358824 110512594 412863845 346136605 664774764 278798253 625214636 874548789 42574958 774177090 692503553 574069137 65711715 890501237 819204033 818060492 781493692 882518377 548822186 595802287 321385536 925994523 157059407 145807629 852703955 976319095 131743195 899599492 635409053 32646318 380104501 268911539 769227486 309167975 947047780 300632855 817766195 51415663 19019534 103612541 804465871 199550567 128328955 603730068 801678816 135824603 858482017 537730690 197927863 311687024 486084838 567537716 726605902 94176481 373501415 37756861 788394344 268307078 202121773 859286077 743152800 12724377 847541099 261286858 248273685 531281465 215246054 11420049 258853185 448582191 514828666 138457036 566022735 409587010 698974694 734851288 829511662 122288136 716539730 882814727 896019406 411603026 132542283 475328729 488067378 209910840 957838080 570260924 40837931 922297775 862067868 135505594 165047457 857979579 1654814 531829486 411901214 639084061 249342754 512451525 13820961 792206516 776270455 368212045 382178665 450619312 30342700 64862096 400713416 91480644 704817125 926659496 777006232 622774997 234578363 849789862 403095530 501012212 299264212 966881595 669222617 920512921 866775974 365979121 275785889 452058505 351730504 394652417 287834742 631040102 578448820 612986643 528026124 967220347 783513231 679118961 445298660 696755622 482214843 563955008 664706048 332752113 664243873 272969783 669432741 227390572 140488936 735754087 862393066 849703638 32845457 656486706 123581243 249370849 76747195 303497085 936349811 676762360 573088650 199914674 846748974 483589998 350634079 507427361 258060709 183755144 694803833 21851732 587111506 724609243 793261393 769752477 113918226 485981368 768153798 607364037 437503800 652912615 419056367 332494781 727546555 261080548 687324635 188070878 418340298 187776419 343275670 77846402 966840465 857503757 457024108 990008391 402502345 986961886 785737486 410416656 257920027 830411372 815749179 119132643 937211982 451136681 425697825 483100637 683449757 333586696 807168289 635039212 682460941 244652514 345635688 930219989 658113615 195008627 133083142 823668831 184639680 215571548 335751196 221827324 125239990 19944232 879876915 282669759 342006082 883449547 480992064 190541812 194679266 756209077 750537579 545760291 22972383 833542166 919732444 766735408 725433338 898114557 971613623 361424074 663678065 977621853 496461751 16171291 529109782 371740697 248406852 530963562 147334431 886532710 91285262 485698133 312867625 240664086 156233034 388773819 602824127 793466915 476091074 445813292 909021494 445534734 413060369 402077532 865752296 488701939 803916154 188734173 508510891 760751766 2799545 756978877 203880363 785456922 993585173 429344156 347344695 893454698 659792469 854170603 680429849 328956661 370607336 367058547 311884956 327064264 823277974 897744062 170857495 495137223 863795119 926994980 594211687 781563187 582956720 838948805 667551692 665290454 508169152 210451222 264346415 591528070 813523705 387349815 110327272 344897478 615399953 782240923 337617519 919253741 536640221 37265287 745994242 922010374 765300543 824462753 453345915 814042800 806501972 27539912 642289385 265767624 551367281 803310068 206522859 470811765 75814492 718074715 683656170 811278920 611183003 268952642 833442562 635797137 348808855 623979442 343650503 110506322 242978855 648477405 858473390 810173909 600749800 128731286 514293532 605763915 992003834 81294770 935141342 867868954 126999249 130477952 829782218 431073745 654429192 600351920 36564749 164545328 164207898 714751506 963503250 152530694 329093704 653687200 135506338 70383329 923499023 445213283 953785439 780394405 88490951 957635971 655569376 574597383 884197780 487543011 864866830 960286602 731920833 962765090 359106647 999370843 828310047 984314587 118630642 65971613 271772625 906974086 943810746 610675983 14451021 379145875 998152663 165370597 582174127 113336035 242791594 131530126 399706010 325715989 421332494 482678306 225082862 388747168 612481057 809492212 175471240 792316335 906445042 970171190 551754048 295353244 587720048 856819677 753122329 381975956 734715352 167732740 993367996 281491136 554007860 55845138 925136832 164140597 391590047 516644243 202579994 233977269 960590775 367623526 116235935 767140980 912058146 178922904 111115252 51843374 620643441 372665683 668087576 34231867 651327175 927776267 305923886 268147203 370540441 208146602 680034766 172572773 852895527 813686473 753124393 439144585 431914977 811609279 13717720 57990278 644316595 641691928 208057875 374305244 990925335 44122964 857694887 144922257 478902354 439897677 891037021 170903160 275671316 173082617 143104640 11643544 433785479 243035733 727409926 734430961 218253563 901521649 733604044 47697792 698361495 115798137 918916670 51399586 649135668 55038954 840640078 507931082 693548589 169413454 680981955 17365460 819053214 684443066 705947428 146840365 463155945 299045979 413170464 155875152 65729410 284329312 16522756 915473016 49784913 546806182 151618152 531039383 462629116 156656039 46389594 46519102 181676848 668961503 394989111 315342182 98498414 857372043 315395492 94022185 223391844 793749853 128336592 201538471 200688914 878152504 652210918 361587014 306564389 655161048 220454578 882616841 986029289 773207405 491878810 839912677 746337052 361462379 650430121 841209308 398411364 783803755 148934588 759057152 134456809 613238076 27802741 909647706 880826700 529726455 167323348 11948787 526275329 836543127 4187792 347017773 433638123 859890211 79289159 93674576 687883349 456378215 76361995 480074304 23571683 552888909 710428851 11688596 464274833 657604509 545336473 342959871 798042843 453989958 181199697 904314363 593488042 530180337 613954130 702131859 775970671 31153064 730290618 276659120 461111785 112268017 85646323 416686616 379915081 513272712 805652896 193004567 847402335 607127761 403628843 403226063 100551823 585693976 939487155 793971288 93743442 625564737 230791316 896033670 645208536 218238551 706097975 442824982 953777183 691293669 15264828 446632230 620582268 509723360 99886673 488863241 16024678 99637986 54248208 221060226 437637064 125767375 873139847 147738920 241789431 628525805 798259975 959881816 759726474 785493719 795745762 741182454 285855714 507786233 915376368 756491095 478986031 463071516 341390738 599206927 301420530 665232819 542831162 335840415 687541544 90313672 17315428 853364255 870183757 58671574 456384949 979964623 88185011 87678319 522485943 443731971 76344959 346109594 866319770 54926122 484810098 387923409 216031865 384822884 512584321 812598224 41644993 678056659 285585961 77263117 34454362 258516057 191889023 461544008 813183086 862328858 398010011 205602171 921895181 533882553 958267320 799593507 866208609 721048382 542269777 57034747 362036493 150615724 101264727 569041914 234133004 106816510 937313512 413412617 469272642 808665733 461265237 277814077 807697486 817364294 260400768 660634752 123834488 691515861 364550203 785569899 362450863 156614521 883953649 874468348 616990709 962411496 16716744 297995292 469083030 403947451 193886254 667736630 359949351 641366905 879189162 890320389 405871897 514212561 301671616 181793081 857604176 322584061 513804221 711886517 245151449 880465772 290453022 641353263 185742152 354588112 354020093 885210062 508872201 420740625 482798564 790787672 232291991 542292186 538120516 368599427 673915498 294000596 129832877 500669996 447375448 60371734 832109909 791965799 275514117 477881854 326432598 489822599 128935965 164945294 814613760 271591347 491728534 619962623 449700714 564511218 278156892 475211417 568178849 355584435 74319181 786479185 984059060 772377710 13046175 876942258 722260407 840039695 4953500 273917133 160085930 779977933 529711171 948835663 667347950 270851959 808028485 163137395 983039774 435338485 37388411 314877562 385513077 969813587 899791300 945306399 973100923 477217865 697913212 96520927 314134261 392161333 566061008 679063140 380825956 416308927 176011630 546063414 517303251 490099491 477031884 459651586 479987030 759155033 813503550 435913172 331446434 467908742 231893703 660446726 241578144 829464954 990907997 922938574 532564582 839220559 557370757 8933470 623588668 799184220 191425371 914424258 535407326 984980643 995439153 748334014 904139679 808003104 38403955 436486572 869041965 739464321 303818469 890308359 940817290 645806061 28371356 792358268 77272224 876484483 685175635 615941735 854764899 455866889 280436203 886524237 808753589 7309593 729350134 98224717 625806725 118877178 380583958 62204626 738266345 929861251 178291655 591138039 311126578 422711785 170571197 774373739 433652263 156558544 16847963 164900049 854467522 525966961 589184573 260162174 173249943 656260112 62019826 869269929 357500025 741272945 485841724 372892273 482364318 515178474 441190635 873688288 755979132 335933214 209324187 68774003 931982365 605212026 232386499 603586720 628633142 581893180 289508057 861381535 599894737 203290608 792431368 261289532 80665194 452999493 512360230 301691589 458224510 585814474 339266743 269212232 324495022 429963190 598045367 636997678 505159219 619761894 190459528 365971213 992824297 893418072 752860292 713556586 702306959 156157836 858312666 98862218 29624504 767537305 318907465 19449693 659442629 414865954 186665341 546330156 813937216 210335624 731665891 994374961 480996585 389934671 797678954 709030751 791896730 367435429 775526874 577169397 343424794 174182803 207160142 345656338 64232668 88147775 24127668 514983477 564694648 237680861 951498447 563250043 830751379 629439814 170810470 339654051 500581571 263891777 97140897 852837301 540368003 172269761 143851974 741161651 866549836 442081977 106072529 236722076 954838436 468827627 507231244 560896389 8546918 813459134 727536818 984939238 289227094 62984965 570533610 835811787 82947192 952109419 645201986 964432974 281825106 14555254 637920276 959257867 667169649 848143839 24922885 586485241 604174690 509045106 65715646 461847236 364538044 64723509 624498906 273920048 730879589 58829936 835656752 543119327 211070384 191370577 849606922 3581947 816359835 768585197 238280864 93675053 398071397 925366479 813925239 45105392 485570727 552268673 367552052 274253786 514527243 670962887 509289762 715674307 433968275 192451812 212619987 268830110 450165259 911554419 529506788 168528536 993093571 315924258 250539618 428895066 685635270 780194363 222407819 122184613 424168465 913570177 128843438 168828611 186630848 567493640 116054109 12979233 616355699 923373503 7207644 832132728 465111741 589007806 921966498 487114898 334973532 760825722 165951948 716371410 515805300 58193669 517473825 635858216 331462217 561502510 195289069 374770463 542032798 37919005 429819538 975430954 559595721 703424837 991409371 473354774 461816386 881175006 541344321 760574914 927133764 630430974 369231212 504008585 861433263 578207851 949007761 298335762 788733613 300646221 478708741 292284919 974378384 308894260 90697082 830592784 925425571 851618391 879575723 295222705 828062774 852319338 597025950 731825403 587131003 16167292 234954482 181820763 342068577 701171101 557170790 809436049 146930063 711562422 927406853 952824447 278517699 656320754 289805075 530183457 888214067 31316387 768191940 804454342 180027328 199299595 618749867 573228659 232681802 138962487 181938881 896617240 688756127 795496297 385618044 224982233 210889579 621756417 658626167 126610899 420529718 400134087 239148974 342539649 357298735 319743280 313709537 590262638 479021858 158774991 967200122 216264444 462695208 353298680 368794913 460499496 729194879 456150600 159884815 489838094 617299014 685880094 541084991 157012788 578001195 100401889 327021002 474831905 585663674 957570447 983207631 954913575 700951817 196093122 171026828 742453242 288460956 167848485 920485955 829626298 776284838 903779145 76648960 467240017 310271786 453434120 774933856 948644358 981504637 293995521 553702961 513601104 15797535 640160343 453680433 934045812 509598509 267357294 383936282 96513843 236130270 900376661 507656303 399924750 927328733 824730268 227285027 253742769 611313826 735379817 786588396 931042524 524709572 887573249 616828567 499827849 424585302 825703043 819687243 79664006 357422914 81459385 743750163 773976788 423560907 746813570 397385923 183813516 98822689 943090541 155825352 948248385 795008032 751711813 80820239 106078737 682666870 177451636 505942124 134061361 312137248 860620065 630549887 498044729 417106211 237069059 579464368 411996234 333501736 909311556 470213817 830553766 227849095 317194183 21128886 319511239 392965216 558165916 99359849 191649527 328299824 924230148 618226738 184156612 154622812 178398178 877345612 196571241 362555399 165337517 923596203 82821514 509297989 452534135 963509089 564728039 854055544 657408577 100054306 396157355 534338666 126876449 209138190 655231833 614087821 614444845 161337157 805634291 684991566 489605951 665490614 77595146 216075339 822691014 565683617 498125818 909448962 723177272 850038694 442400673 659835001 234252778 934555125 111885361 363348547 147483373 762691464 896839314 469816923 150433907 133425235 206974793 81376252 674752890 639976355 707695280 79038809 999829745 309697109 855899967 71269139 72250781 974723731 819934345 189722114 906855449 597919397 752496721 29661975 508337309 352381242 593157054 679073447 103221764 805178171 35657215 595667180 880353633 488964994 379053357 64028011 169451177 865877427 340521466 654044689 474632237 977735375 383428553 235480488 19649194 384960217 845386330 894014149 727432398 619114185 362345220 12879580 50502215 435667701 504760898 552986637 760848999 378561837 621935268 327762926 63559109 513840419 536030093 72467757 492231535 583047843 627380151 232690449 757517757 831187163 488480312 644818372 329204652 389412139 578598331 980720063 930701708 569182660 425381060 236929329 251251273 983701918 425544971 363705844 967480538 825323510 234346727 998178651 941340390 368993865 634442911 135985264 361189863 554116616 267136719 353247776 267987649 896884403 633096605 569022445 622865332 921835711 441074460 573345897 112750556 868298686 671191536 571687680 142185316 336357340 405057705 658688250 567598425 193999232 385575827 689019299 614145456 559081021 935534056 635775098 911851109 166560838 612909032 63222884 810704728 750636347 957125428 623088475 224273667 430374623 478968037 970559465 153044200 39858309 705230715 140997205 955863507 700289000 978965223 923649337 166517257 969029305 722032521 483981542 970632836 324148251 400886928 545629439 592870982 8486143 619358326 679606627 332400130 970091387 537746731 886217919 707107973 712346987 468589301 620523599 544701722 487336248 90324766 383967690 830054146 275573032 725764741 487317193 151174549 383331736 26790392 670215759 233559918 380672870 599270727 974841484 455816036 879809733 849517117 334768881 656053763 43143612 505222225 193085679 516627624 947673011 610958052 84902120 331943897 462231763 599171199 810917166 884108119 234984273 507352677 761908589 83443321 424487368 827330959 747018829 674091758 310637195 830601151 713440488 301877721 20793286 496395805 94890771 531163437 18231008 31973517 305799942 360971176 595089274 454553875 437851615 597702344 998121275 38675136 116249044 381733495 213388079 96998392 574746066 208846281 726679884 877266210 439860229 102219136 256342665 877942824 23529612 85088362 832689145 667075481 709283154 13766559 522321753 267979413 348393046 563208457 452361845 332342122 568953067 973734709 369809027 667214327 711568438 251881350 378542101 383968641 638127900 710066779 830937086 511337570 91950395 340251527 129765330 491096607 85133089 194596468 269918751 713899568 155331144 963238914 548096574 31187712 565729500 512522661 971006296 697671256 488839608 747341613 496424384 389273430 897992463 844375762 561661471 933432702 767366129 110287777 21620888 786777714 580592448 581825620 17100835 345591180 604635968 340395027 594099786 590743649 859579601 177982857 94707431 556725910 545984959 913765482 761859475 605131727 691793240 911143421 100065902 938954042 430171216 322420738 418592055 982002629 494726237 364917017 129160605 492663160 588827365 592110979 203509873 5194909 451418922 559616179 209954805 725277590 942738597 775114460 370291288 192098451 680596079 621024696 361290364 246651915 995485022 161164057 511772606 36043732 421035094 226355571 322772266 116553148 927718708 579778688 253015710 724188834 707269243 944143246 746832411 193850160 404080516 866285287 926631490 389968510 45685729 430088894 837273736 711675891 221841067 874599252 466053766 146500309 588105735 574165633 317373022 366856483 265522663 831982772 88101339 247932381 37110132 891812729 650181735 105664852 429725295 903911347 780291678 582470087 579916033 823020638 120629731 31391039 176800287 250815003 406747098 846282330 902927312 292035136 914522443 247897333 327465118 762004623 850419094 664575421 778748527 475719079 792178568 768749882 58853610 161593619 470296892 37043563 85382052 90970741 102979050 638983992 702665324 537355909 901998728 713480372 932559242 254529698 830882466 664672081 973805028 191373457 757852102 434956128 614268357 823428506 349710003 573834335 465255473 457493698 552559754 779474117 553474134 806568434 691386941 830465134 231108943 558072407 99540113 458032192 370418909 123536473 705017331 169166231 686978222 889562414 605367282 650767894 658497418 822669636 436549438 898860385 785114359 406255051 154392064 102910702 27730373 660520954 497680985 282810562 471967043 449333487 112222540 365643939 870965576 637043062 648916009 145286618 978498710 975494631 982230295 743273332 73225975 914301118 461027839 238366006 783166745 168512122 853363009 426370001 918877433 992778283 903322341 590609538 279979728 149523623 469793898 74155322 145698728 871270843 892637077 503524610 157180345 751039406 793830544 374694687 996355889 513672192 882031549 569300703 811476521 565734377 155707444 482962028 474168707 747694741 817742841 391390604 133385827 769980395 204658854 690679442 693219514 877632877 857688964 807678677 244100030 102394568 961572426 785705243 410345160 897385257 119532781 672494110 29702373 800913983 206982359 802276938 224861727 244892048 176088793 394870450 122389987 983828893 784849234 909360782 50924865 118836652 458940395 530200164 441576453 198052033 788109215 527181450 313622123 338408390 204157883 370378464 561473054 810582403 282102834 509982930 292632157 914331763 965026155 350060120 465932870 872722995 178552402 98485061 13066270 405130617 484689698 977797062 523146031 308566298 769296685 758117388 166969894 806287592 148503202 304683879 378309443 772147911 560050506 100488125 236158024 935630647 482121996 641222878 796935037 927897572 973806305 747814496 980097693 939423870 80141979 353758501 12310732 243380631 887250023 317705982 601328790 531767103 790445962 974831845 367414534 918013019 285419726 890678299 385987120 504048970 614668510 649825920 195479743 714763545 872376882 790634430 663932718 652860402 295958981 17835486 361655909 675276811 846128683 436396119 799261046 833541241 143247161 318690056 430777894 787036077 814045099 408256813 129229443 768454560 676482425 984860961 514912200 229983193 155824286 42362397 699288528 479706494 863296226 100878385 142710420 54674517 676676905 578526820 539152046 169794756 590635285 423675574 387360538 825010373 130700125 208360887 301089479 650387905 91547295 638557776 834385174 921499666 589204652 150809123 896086741 787227611 485161767 301100282 901343310 951706993 53547626 941139006 645418410 441077650 704066618 254564431 724891403 167821270 917381065 143197943 244737482 437541957 135630269 61692663 726433017 458068468 704866593 521190535 86589625 226271545 66088266 8482543 605986037 902861855 163242534 313691125 519481361 444724486 920021048 120357852 324425027 723093256 97716458 603477778 425474730 130383503 95037646 794092674 690504660 61869479 912080633 819316456 925402550 874912195 495983710 441590896 165963736 946408432 373396900 324675277 81751212 514998649 542751793 291902709 748177907 368702745 903797072 345430347 377660639 76001498 907845510 597668577 344536708 177296117 781199324 293859700 844607028 19667119 676276491 628638143 992441990 786939696 975466206 512187994 398464444 242452894 479449759 731366613 855044261 399602675 653351065 124858798 53754178 816826956 594794616 985970287 715210226 795599569 796297310 825519793 348548144 526970140 220882734 149612365 496423827 794502681 673620569 839676463 689362991 803471158 509251853 601094657 526972492 431862491 318347085 951780590 471778183 561061947 505999743 932671822 957288356 489563686 8923074 908622021 107887473 201305693 810583136 786387214 558869989 583973346 869783952 897966236 530939058 49538593 88543977 135662343 325684095 88689696 507698271 46735774 740281575 166271303 633015741 361354467 399351990 546228639 317681088 345788599 484385298 90652626 933512135 390463480 984604927 865869891 812673626 706358383 62607301 845402427 71384960 625021438 829189833 158557258 182752246 874676438 686992469 18480972 781183666 653953580 436657319 131505538 157492039 68056926 669779968 908340498 927434525 893717166 560985246 623997487 288579344 636286187 724747626 745543949 58700340 623473812 554633526 547934992 169907108 449006032 37901580 243082794 511206280 314581292 603574846 151615508 77533764 343096218 251764998 543619724 516111024 439095227 398687475 557189375 259312414 219545660 799464562 858878634 175355509 604581430 475324861 158721244 941216703 498099524 154132451 892976331 347192418 495347880 459347111 657228362 12081337 627890786 846567366 438790537 666702859 664278934 753865843 3545200 693027087 283849984 631922046 975866512 611547017 315011586 571904016 464857892 38653908 963314957 443010338 135105556 327866797 147157256 893417087 356024456 492055153 226064271 559311778 594373858 958934625 828945870 598939555 820585390 899350684 533588231 351159980 889127940 514624983 199191754 438452880 79759339 201142663 99465426 768382057 40912744 236576484 518661317 368524061 332169939 960951800 729792890 689517068 693395842 865735340 303140471 811810346 155576727 108433659 146986089 377426155 387691275 925092197 340535636 568589523 162793273 791959638 541137282 623002560 362723188 761481118 51095121 498348265 122799082 654935604 797159483 932458267 12599172 548565934 928634909 234840272 42351100 110444817 690814645 989404518 407948395 958460189 971909296 397347110 150529881 281938903 167079074 621501747 802762401 480080869 646429520 166324352 774665072 6809125 1614691 20048706 870459559 35582810 770539446 338446874 583132260 257259099 783584815 100804247 949501807 668187804 549760484 430191725 679041134 803301382 666119647 52075743 972958681 200010996 260697220 637106659 939508555 931007062 824459082 238112362 433673017 511934782 26083074 35336038 489841231 863354391 312428688 698827571 306688443 523548098 561016058 650894282 704997285 845532105 480675309 151036031 468892076 893831411 85011405 580352778 123849989 122643402 266569577 110648608 692957886 859254598 330640028 633833503 339578599 56570588 757528647 941214222 111477515 347066461 691104035 683155464 615342913 646917870 653070352 160305535 588689146 972571010 695842129 441638826 694747065 532440912 462566517 650812106 588343255 914700854 655920546 900943262 162313669 658676205 344807985 268923152 69157141 798460957 579188977 499217383 880153781 361755878 541087189 819648113 430700691 610565041 699283645 605494128 253748296 195615014 581792064 379056268 708063091 792531136 5560827 993828712 820491689 863296096 609102579 859739347 790081808 59924321 359802439 130633491 950539221 132532452 611672670 512934448 289317625 55758171 119798859 42679795 795207726 766782547 307874571 651019046 769011549 557185901 862627361 832826409 349217188 491611673 138048992 100838656 295361366 203441969 708563436 484372061 240821468 360431744 104573931 711870580 53986710 786314503 667873833 264220328 176717594 628413826 667849629 603401783 953853763 862134429 105341405 5159278 692811703 686038268 260779740 616057758 473349230 613930751 889918485 945077798 203674180 728121519 545872887 491852025 108689010 65261338 116799842 23712002 983679274 701230701 724935627 96359688 105390242 492295593 811784995 354861778 513334879 378652424 595780939 496049855 63977890 314807683 117801272 890991546 878010146 62163854 488670199 172849848 202711665 993221125 1431339 790630858 734821689 524478295 811733154 920659599 295522889 214980818 183135046 52300485 30340838 957785768 434031960 537143448 592032050 665608289 553310367 528319753 23966928 753783469 587488140 501540257 663866225 949003357 551736976 757882163 832369032 345218049 213552797 23405698 934980119 592691581 887179444 999230794 389166961 846822330 604106113 472274407 254988979 522109888 561882331 728112447 459261634 675081147 14398464 676116958 485948256 925943608 863704022 792932426 809479194 524173339 237190329 666423711 130552496 15254805 111804684 348414346 323063231 576484178 349658084 723871876 778745054 421265607 808071381 47917442 776201947 694373732 465439166 694899937 693240197 883264821 75488049 997695687 115416800 83042965 182505014 511183272 915264464 638308819 335161961 680754300 549563412 748382837 308941200 786971307 5702807 222183464 833698478 214607477 984885773 715202293 680449545 920934439 470499379 59327308 826341300 247183198 776108762 730707822 708748611 18882194 713513702 537517232 778286496 796466327 250963924 299162073 357646482 965998793 262893137 143603792 865252776 177986300 77784794 328725549 889042285 394261970 902030170 625600199 364840512 437975459 977981835 369831666 379616424 295117387 329162195 205563832 543066693 938124710 551311200 72737432 507638419 518780742 81847718 957087235 369997460 796300040 74798932 580743697 623978311 834399018 675739276 558545071 622385386 891680803 251624731 320026003 349278840 704893406 96769153 443163964 567664698 400252105 581296761 74337906 441126785 736697826 20353922 446871619 769736745 721632703 58796233 290065049 282019515 5566329 241996392 613171718 324874197 411587066 790263400 185548527 288501006 677780489 128832372 340100922 178831003 319108370 262597586 474693714 524409495 79937201 472620604 231456556 785582796 809492444 204311667 130104916 637455329 916311151 964658382 375326099 225384909 293895939 307329671 897124831 416799379 954595621 147723404 308370284 143060043 361404759 870820775 143747867 44888147 682275427 804298457 71486032 579348129 877334387 337802119 752472006 187543696 243494335 657410952 13727428 544349062 492092051 117694876 130979349 715422538 604251185 827495691 635395124 184267596 605762884 779905001 286787153 687649991 485630547 486154652 346248750 537476187 674961305 457139199 646852556 908666796 9431005 126447576 844216225 443732883 336082273 54730653 564576431 627225663 938796742 130160780 106318933 891230933 963444664 979834134 899958806 83490522 589964685 126839220 161577955 57300692 423855953 467757904 631658254 488463135 927604490 436270201 806440385 573448560 33011027 73278656 504010317 457882704 758468696 24677647 788149753 558503248 478481880 770648295 122437214 825002930 508593522 274340096 617121610 270900818 635994486 954897098 374218293 969958922 443041160 556154539 767872548 892798965 763505034 207290219 243197951 387049778 472724734 570614944 403972036 197308898 835454135 626153900 997715607 844883449 619700816 437495628 821552266 587426464 581668148 836436812 631401345 257015155 451757999 450042802 998228310 356533340 836615500 160773673 18583975 912361894 185282295 801378722 875562998 985923322 10847997 347445738 123779379 506841668 935672409 538365451 937491287 602155816 41280514 33829118 397015222 320160537 389674838 852917468 200082273 584574338 465968377 403815107 740543383 199985382 150244137 101578136 21151735 448302204 422916732 356479558 768268440 704785034 309723861 11423873 74374572 450003694 432563108 938833226 317158764 433175688 325154028 317257816 878302846 631477955 658485359 319364566 288394817 885774489 237240790 200529083 442209300 303831235 576628494 583815430 555780792 942961390 745147127 170559200 714432193 939429971 465934999 40637688 598400631 589705278 404481967 739804172 802541381 496291957 1397970 457976193 355602166 760134559 150904607 73653586 377037091 677518964 677941765 471626086 339826226 874936494 836549845 597365835 665031618 455537663 350040164 440693958 636360222 347753777 905957422 111222937 547184013 770230439 976040567 777084338 474198762 965836930 867419834 813774467 208993367 698867992 847509970 288701280 12219960 27485963 528813158 462781231 164894797 21344049 923242641 146385090 993398664 89334983 363825772 409906157 305783214 326327831 567558084 551561398 104003958 122558125 521356892 575445487 113831274 905819770 168741551 203376684 944957193 382774059 958761749 875727705 508278150 41374014 82185022 706042339 868728999 466377659 665768912 358779790 734594209 820961499 827949587 432081388 12308976 357155296 458430920 958486848 162539923 314432922 940216286 669419604 968420853 299361491 321253663 771051006 967339101 773373040 825974699 418839620 455684309 487421437 538694525 420763744 484700829 465431877 703905078 455560647 479972970 63470705 645417906 805646768 994301037 557484287 507707454 48466101 612191108 863862521 347971216 240332415 703771635 759285141 220940861 848413887 234123740 195096995 985272236 517913275 303854828 517711250 124898019 764828071 374416708 792072255 898793829 368737108 45085745 692455771 584867526 194632933 85131919 393250307 878087785 399381296 740049493 196417805 623573902 780896706 698664550 632118401 330348798 726017336 830538123 832493544 975537326 724538583 942973798 295285925 268928888 49024686 913855092 402637107 429428839 139363097 943609214 464485845 84697401 129835229 155770744 575193792 704673485 146611041 406226471 412453009 895654370 327632894 90854108 785686533 418738097 62082434 972231452 538202070 507471177 107066022 780182116 278483208 308087276 78096679 210084194 287646854 681871268 700440716 162901034 270135249 646837741 604987555 31483133 636972906 189083541 57387565 11293662 265458552 312815026 525820065 45522433 554420937 832345334 2921700 273290027 695745802 635034811 668771283 399943652 361637343 833602515 336092205 415425287 15680155 177351902 198458877 560413052 531149576 726002777 669648025 161514543 154217072 161835782 510429210 910173778 112878270 401264039 12943540 824792665 626986920 438523067 404571102 615975339 668417074 904261091 433675394 466211352 789299944 693758781 189155512 999722858 716361385 169425521 445299568 733901848 930462923 276564326 56958786 712385303 708024445 915505862 106292159 553984545 831539563 652837369 646493962 902030743 347601173 853136039 495823469 462241813 352721413 85179106 175321474 473388976 555155607 861539671 453895036 372924982 724311507 312094036 130787749 910707431 515861880 267735275 337891121 938065250 384933987 339821787 634876125 605958762 666229789 498638471 814953051 848603705 940068575 602548913 91563936 888743990 813931116 110363544 206746421 173089199 175401498 350150756 569741625 806340157 84516609 283567051 332139807 96170742 583062218 835354054 237714202 510246101 256430122 186443466 726425443 340767859 524571668 523028555 727001753 970190078 592340386 176842752 260706313 924212821 14606523 905366032 737429179 394404279 844116793 812459444 471553611 267254329 582328687 300007832 308709026 537964381 449305118 272520197 884039519 110671197 371542093 33328659 814182828 791735584 27102128 408224372 272077934 947039220 943221419 930287344 948105999 89953822 68158974 335307980 873943296 930014951 281105481 633301585 168822641 955140015 920875083 699983300 859035620 312938852 574937861 127170278 790338176 113429616 184921152 841728779 626402765 342238651 559210456 734813609 690251094 571343065 466781470 497330613 936537287 572741769 942792554 771177523 600313410 782069951 573308639 483127262 480144712 655301410 922346789 750860537 82114833 60307726 17674886 517668621 563579011 862916465 344944 525074514 665039147 891840010 566984589 777069804 642548158 360549739 1134016 852857772 731100060 939626952 592891988 125159770 646706463 918269548 450608018 674290743 424429687 258000340 313246183 392572518 407820539 425424917 881939712 395267346 196394288 246800442 740111562 648074962 611387870 128676509 767015364 909606163 531517167 265909205 117662688 487045480 606185386 548604407 832614130 680856707 763225572 78771191 984254599 230329396 91542742 258701769 541022541 513563962 575417605 70488669 868928524 202945589 477155826 475881824 570052642 628084504 369171234 637253044 486321177 927563361 692991120 803435633 573231590 980067671 895277947 652261092 33043759 359200687 343471639 889101551 951694255 207401431 822074336 894819641 270135983 72448529 459645725 396242754 77996993 169018845 296935260 586492 741960228 866436755 599167507 928659328 366983590 627565546 949635240 595112869 561797551 636367013 918635939 904490511 848887965 472459751 351561803 429355578 585029046 586886264 280261069 228790093 892180666 553887088 910860192 199976507 447072341 772949204 516078415 459804026 484702117 938098189 291456634 345248925 431839914 486064894 169743909 126618759 904264808 50295425 33312948 336563212 890390417 3006592 759202140 565266856 71350686 406841015 828563070 833471738 737378438 536711020 49764971 520759872 113126346 590069768 954553301 568659226 865008466 817725249 779494834 907610110 721232331 815595385 196577852 680323292 54820063 400419565 769895199 547915069 769319981 381267566 261486665 562479887 467490999 117325453 446773491 89941362 408886407 69436954 946482965 401661731 233016077 820046382 119517034 884637627 997265408 993776915 266946831 760646445 357301346 634635771 486347891 247174882 511407479 393643873 224993489 288910768 819547377 288470406 573746356 367124208 742631667 555478150 352158085 216106432 97705944 663228755 492839038 374819058 99890003 245781350 605308502 349594405 710447399 742942056 64843787 150777172 340204673 674392240 511850116 958345510 89963449 572436553 463903743 750280291 444991548 986665760 425885758 263802669 229664060 470991730 215570638 78981262 861262014 154982609 31534874 486273717 501648733 331027387 835754511 40879014 614231520 143751334 537568535 489792825 279070933 77798761 339982715 843479220 319297031 996312416 290573666 149527027 747041216 112510617 600571062 198542143 183539856 615323698 538391474 15913538 168899850 320352791 922065605 391944830 587309213 149556927 748332547 75928679 403017433 944257560 277230652 635920325 383064416 73602200 783659331 575927919 994462574 834298132 438666536 549291583 476389657 41479033 721427499 538492414 544629702 816754069 732496225 118482327 307012091 226110655 199472661 431920353 470902674 800718050 832481898 678769517 714123866 951922928 845842695 619128328 674951307 833644315 276212263 289306510 653524834 829637672 972632301 488010431 250464945 383365071 854192090 86051858 185321102 345819427 710855521 545989330 717338432 364645707 247618312 7221775 973886792 159204273 125481055 693650856 606477540 546106296 379347164 478408345 623233963 483596787 114797031 493916749 303651420 624491522 528122262 353188169 343282048 453837323 183107719 78616730 11752354 597636522 258730828 598487087 70183765 632326974 986907487 997536156 550560942 602757923 154062581 743919842 993424777 818872096 13199462 347944740 818372046 975500645 76491121 645714790 770770633 724599751 431979746 662665013 719716841 663058744 47268972 826684211 422699180 386361394 323521997 110480316 466064486 16421480 973338899 612117509 595856234 799007682 797450341 460766121 684580122 991210942 300116652 137330777 609850089 125420869 421036952 967059155 311409 620622104 420627172 685722000 195199132 292285319 594737017 699389361 286817931 331903660 145340103 886831791 789931212 327469333 471029239 719202033 901076193 414363498 520700922 56356312 803943358 855357295 591928771 628455251 794715230 729274827 438915389 451074854 103253318 413722376 416887547 689586927 478532581 420574123 544812462 472080016 213712750 685625825 707391287 172461310 881901647 985986683 369237277 246311352 319945949 410422819 50957625 72456878 714087587 964701111 365097883 646300775 356516282 682002346 916181357 171568269 514339598 126405882 595728301 410008952 476577854 597560522 361110947 525379854 953964951 460240389 799109540 607458753 856792063 894659865 754541288 258410373 123278111 320224383 545120991 125747622 800325029 321619991 210255976 484091559 315815765 672461901 249833033 280163966 849865500 911427637 456325066 390001755 336453152 980568658 511360397 463863558 910882398 992962496 794791664 58808878 652335826 751497037 500430009 867070552 315748031 953590958 418394859 646656033 202531056 314013072 414922000 6857853 466290991 717429471 471235413 119257580 436020503 333730809 223957336 376003377 278870445 221810917 589019136 477083329 982063725 266432552 48980132 706763644 736042172 399628012 11988624 235940393 592628190 501880341 799806823 324611105 466936129 485481239 204667418 131735773 61789887 119590450 383733746 742588312 80959970 209505710 441840702 505715153 839316482 643968690 34841319 445905335 79988361 593423163 571304485 406657251 677463235 178955056 2226594 371353107 529392062 688076191 680093250 820259330 833333389 951092384 16114448 425463145 503591495 93719097 176696549 831352147 158401894 663330464 746627312 798209834 84990595 773057482 611213296 799285910 633658789 398910624 611233540 34073041 146753750 848442868 312804302 809497137 892930026 772454486 655103500 439713184 473925533 486677508 567396838 151830540 860016064 151500592 370060624 97546232 624657941 145574733 90711237 902531190 10028187 392522599 236376775 801909889 110921945 942718139 822950598 443177022 339584681 582072589 149316504 96724295 738222683 350779000 310725733 646993664 846912337 924259186 6815458 313931876 385517010 27212471 133031927 135362363 408489246 263891645 941089435 269029071 724377534 952321853 714002306 54424667 378593614 417362077 585703860 350921431 968468084 34270774 195598677 996715080 427836461 85906554 908032115 391736262 114805111 649055227 36456504 852103138 882519703 521260345 383465069 343025173 228541855 970653947 96249715 267137317 649878209 968966307 611311117 125711485 171810351 682659628 905249497 9647181 293349103 478382926 340281680 586845190 305402979 800375774 923012151 811788884 775260417 113192235 716041312 83984285 373892481 134517492 917007801 839963678 258872223 476961437 693754068 691784127 572607329 614257182 358387902 799181794 954490660 689042557 931918036 938296321 273307122 351731359 299749968 639723308 286715834 374450579 513524489 484580372 688990283 898364861 842991491 642388781 345131783 40511410 846129103 214465630 797827514 36715595 439547450 183293319 68349422 13095071 301977262 884997608 72248663 953729485 719595168 684355402 969292407 92253719 91162328 493875342 60587064 842066145 989276537 611261067 117828727 834647664 571226357 528312016 793516119 922399643 374893575 558753154 549351729 957451321 596684060 698901604 290841850 18152538 762945686 956814542 918345385 668259830 854497547 658589851 707854641 531809888 566063924 293047287 250701644 743312898 388318710 660100306 334178539 283217528 422400165 278099032 423199474 740520666 765633886 403964667 249780332 640656093 152881268 586478335 291483257 759128281 70613812 351096704 421926445 770876834 139427745 104005865 508380717 137420214 629892495 618850266 439953295 171556911 246603826 522115236 457659039 427534377 646260817 389800314 394954431 865763043 757151596 277767437 41216584 942554187 667764483 675472441 370536004 911565359 906597800 82523997 598942373 105622310 778376654 142304239 85910881 63582408 641191268 924734302 782935617 161112491 200724947 600094373 769317538 94713171 453658262 458564674 667870887 92605601 722153508 811039148 490454164 799617481 109884893 402603651 524513618 144739780 280608275 118698107 279414912 542809149 773016498 279557705 243439509 665027240 951694842 890518590 811003833 555455849 956527554 658350225 739276283 851290158 615390533 123667439 797866307 120893273 957821356 18878000 68618250 809350709 85097814 268919155 651299509 306861060 846433016 176274593 455773066 162728427 315303778 804373769 715283067 822098533 701641505 476678932 91253017 185397359 60029271 542176393 445566824 825744180 108096865 780815632 67150078 912359195 51626811 10899203 860480651 246040671 213057312 88346673 257661806 479340823 932700015 342299879 350862252 443525855 986121951 420875495 788905528 628149356 381428505 944033831 751922410 577905800 457684709 702123936 600721096 952305937 871850194 911554571 204170727 707184644 227843573 530910203 301137555 280159534 532383513 163959418 980894546 616135040 262271390 437688349 673627366 871664275 309244442 351196428 307344600 586624516 400284192 945289948 995990743 9232752 389248472 849539024 114754847 714080361 135434537 737366595 43671680 123030094 494408033 32075611 579510452 834785485 601562165 80841540 897994435 425643019 617883482 779248606 261071312 890828278 540516031 277692689 861567569 427219466 651477471 715944256 733377671 580769451 154858125 585806280 437164465 300894314 276516289 987818453 310649145 131842356 613837360 929657764 296264451 672130130 317403132 692004469 300580490 772187956 345425983 630169339 141599452 544138834 487816659 923382822 457316989 713686428 196247406 54481470 689282291 736435945 20923492 424073900 233793420 237009894 898277941 873215436 640860132 237955875 128109038 405050422 518772562 242744297 445178172 429004901 370507876 268767354 871556384 849656518 692025282 111360316 138085197 801521046 941546767 505634243 207736739 405963654 41973132 342029043 898660517 577002775 380027689 410863519 890891177 532935414 111383726 719607529 578273228 847021334 686987393 748800926 452091758 511573866 891555206 929613234 184078457 929095622 277979727 227897888 33004227 18965783 444376837 812279228 906794955 983337191 325862142 387597417 94626444 179113849 162267510 647095907 688101570 288858337 798589157 503698071 949716429 690784749 112380592 976544516 782963604 826446333 776033155 245240751 554286497 92560387 801568543 263251394 55706942 282813370 752635894 975227464 270577250 346362239 157929103 431957767 371537335 395257703 580187076 386844698 32243711 615230819 229926051 129441192 251725837 599444565 95737457 692628936 168130601 239319191 365006942 517868087 630782640 379146296 171434442 304964130 161552921 820591171 733842338 860687723 390742185 741404250 200043664 836772960 40646265 157765697 688298994 500436777 745556924 522218023 255281296 596622207 365335110 398187394 43548934 783177781 247432616 927483540 971944818 156859910 557427398 851612011 365494696 980841653 953615396 384723343 996721320 313747406 58297306 204997238 558946668 463625568 263598705 506676986 621697077 451490955 87777498 534224739 292964705 355656605 240809317 162353999 509917016 261262863 199051477 720146926 553502214 440029790 607964653 635717904 100527347 774559586 461691249 306844372 741990401 797202768 122775008 195994033 857592783 343384845 938557968 392927381 277735398 642166161 928747521 628061169 995840199 681018011 505353613 511347833 463107728 330409772 12346567 109590000 701343762 413939286 129575398 112271164 121331306 881074590 42193463 98911450 385684512 10342894 589013696 615456416 952387724 614690552 240515318 595131103 591436694 673182429 34421708 921115362 393090810 475651775 619152605 85188326 986352234 388999859 438388087 753632184 668254825 571902180 748217629 217199913 213625342 946141587 240729115 945090100 184040026 643231372 857387080 501281332 459840976 911440527 243108947 902323570 372346910 761744053 709194300 600216712 952767166 521841188 66254777 872772492 108645173 7798245 428996339 359401643 456581050 830296801 935533202 435685682 204273065 389538508 132024514 476491567 314880672 382410960 898680226 189582237 223393877 954129318 776635624 735186017 415688782 566901211 366601832 564881524 940999248 330118154 25402872 960775547 712731085 519281324 218305777 28973678 671292433 82438534 608162601 148274123 709139696 457349192 161807599 291322957 163197792 244377625 158088879 657204259 532501061 325895000 36159974 519140921 515740009 240059462 135730051 980184911 232590206 674937050 303394526 489964407 189136865 153949535 644084075 929497218 782075483 715233751 465652964 415573813 753027891 412894480 950197475 776370049 421284510 493893539 63106079 294095218 934331526 525792714 571788737 295840058 49889371 811468792 303048329 731616752 376392193 554898538 477836898 140042711 782554383 985215403 662409517 447847619 258179045 912025852 597861518 340125359 811973045 30024110 494425937 211870172 111191444 427845319 434250975 919352571 553590638 617858039 17636371 483075876 461452853 397513768 440189715 686355673 563482681 671299289 104803622 291776763 26132203 273500697 488083578 577280325 993133730 791244976 695902601 569359169 787548142 929564490 593818403 473320896 421806202 947221437 153132381 748610389 242601395 625870773 383851717 485508438 603572913 174454319 742116522 574330585 610654685 103648988 743065570 301360082 639351466 353958567 320776217 804445697 545040663 600135061 407938863 609333985 744410335 188790261 488149007 905002296 117476827 35851498 883601354 716521140 938215039 23288423 972070325 261729297 728624132 212871851 48785505 784536197 23713486 811995199 845661073 550251225 371327100 30740033 980265911 485632481 8130392 167223544 376691279 499306729 80973224 914528954 104439888 566257846 847068047 792615637 934863224 180000793 479038050 289090508 233077926 409657568 150618399 190177578 513229054 929046917 159615242 579958926 409965216 876752001 155763060 249818416 868810574 430587189 856940074 519064715 449047213 626614665 970364227 257730079 532835386 500955859 753379659 569294347 263516846 430713066 139685229 300025869 429451994 222133850 654665413 641219196 275599269 256117990 858755020 181105338 769046682 434543734 104216954 847720089 356697665 390257593 694726841 235532327 497315810 368373558 502692698 482837197 787107740 622962979 50148398 973853412 478870220 561327850 59765121 412119659 473748905 906279027 87233309 660958885 825955763 655829830 524362223 402086917 201561984 750303707 191227907 744276549 842206946 21149456 436170446 107568761 291121443 134054804 689224199 313273582 411598697 761679870 95543924 996316500 705089094 144368932 748733389 337410269 473137283 96008215 30808647 203571029 593389645 482282915 400745701 839600155 560509239 440629059 815765314 885121232 407138336 676900781 363081757 547096466 735978162 820656820 260207025 180789887 499276836 733292433 42827516 742540078 245426598 575287758 135884975 641094784 56917480 651297000 92008112 125286761 499808776 919748920 558516670 837008021 429009931 829927762 536380746 392918977 357805197 330157833 63542399 817397988 69758869 502199976 224251586 503503350 973702440 266028456 928514041 392205917 3952216 978505266 555552440 359360969 365838706 443407466 450573883 117041285 990603456 106763309 427122493 534683816 278419252 278438849 150841384 21149293 984064028 629907595 962428821 910332826 158004283 66869967 458407092 699258143 531036405 129580933 493546039 982686878 670253673 141991957 24653077 76529715 298558135 835841900 163612390 803687186 373108243 690771614 573180466 933478630 620519377 685549448 442489472 891331735 15430221 286127488 398632985 85303731 808331390 756260644 746439198 594801853 592106012 383201117 846909374 824845471 695804515 783950421 59920768 538527623 61534300 67742009 577114285 686724085 337025653 682851645 295763507 183584537 702089631 382219499 547590880 340750135 592259929 958025472 805777257 507506124 907606667 654279421 868559901 771040414 530208046 958366990 345990733 135455911 558083859 293579653 887968569 507123591 70652715 260720431 446206616 579093992 285849013 833853595 908690547 792917400 728046916 547215637 378323170 998358946 113274139 850462621 348029731 367343846 100929674 103648177 134658007 502597948 852454889 829434219 111746711 513097272 992138401 329731057 113658083 89085024 834437700 222971833 937077495 269796706 393612346 798979073 495673956 251824129 772967229 563686585 21873539 975386486 205948985 354462729 179193296 676501520 707959326 609853063 890219515 248354660 90585071 56157043 686739657 390947840 451758518 337751934 182580782 114373955 862059782 530991765 211051472 416647127 742941674 313648653 215564561 158418795 55332134 953212667 310910204 838133475 468936198 736476057 932573157 19745528 302118053 625691910 549323943 481079359 109673866 408363032 160646655 877017062 739901167 697846071 585752188 255751985 889813101 752253597 538523623 441016120 997391565 958723320 710082220 788210500 306698988 792810099 624917519 427112068 876196444 697865569 848253679 852766164 314172528 178458953 572270793 575282948 313285067 928350240 113752397 921654671 565644505 128449698 122971514 367255375 827219513 88177068 468348499 21697566 116438877 94993160 221203702 624756087 207144065 315665474 425639922 892902034 430330379 189315362 846670421 718155176 983424897 979499285 780453035 661243454 128119283 372129737 973472821 694787979 90467669 684658172 134292672 669232020 750937448 611108441 709280718 847502163 604251417 94128459 184747871 77749908 884653480 118008197 35968086 547408402 11584807 854023559 279933275 241410753 399898649 836449287 499548177 466587985 805105107 825132559 202641521 893470487 871458790 658093080 385857707 45289431 177083439 485670335 15186230 522185170 573568530 902906051 470025810 640706931 1514795 332800732 881481534 350945335 534104201 405693034 790144276 937434067 536811236 979986459 770939450 658939758 693219943 280211485 384908375 757145054 109699579 218498444 430750827 864748508 848243279 722018728 43002142 460700366 769042547 475136701 54371412 758257571 110166184 483361199 202061138 246678632 811775652 906627094 596972071 956473066 736839603 638884149 518404475 851030496 842431491 874573548 937338369 975973820 328955843 356933024 359085759 247716394 744653387 856338495 893674339 371822675 489544017 314571266 543011579 368019879 556635071 327755899 68794920 670325589 386227180 580975671 520939648 661869051 189214453 88688841 291933223 973425852 774292476 156240202 952937919 624081702 347178499 637240037 220939354 298521883 678311906 119318188 337941661 563449144 558497511 458702726 454374336 703795945 245624781 157015455 355522894 440352617 71938293 507698261 901247145 579975120 175317087 555056166 655631301 631002154 866912908 204891673 421638289 365574485 989380765 886024891 108545133 481684956 588814183 116790379 917386812 332847935 364302499 850334838 879284472 186819310 382099542 168631711 502469873 965196240 881741064 800401197 150453764 438457222 882131821 887490553 100279175 166318440 225333562 866465198 281382565 620584315 88474522 397751994 878278610 75890851 158440330 970402567 522197621 880971900 927269610 912693034 875542423 926515709 605792281 711251723 646433706 745809029 734451169 139040914 792931744 569373065 751548523 645698053 958717136 273376444 244026706 785821660 969551287 537509089 270735374 715886360 597680037 170708913 641333543 898325487 468454655 549455887 477052207 968447934 72825257 515338444 375903563 95078412 368230693 782788697 606738947 795731132 2822144 221732431 484868514 936502450 376224320 726862364 75689192 164996775 29053366 855169546 314767316 369403304 950566654 673300971 382054565 77589704 326350751 563537603 837916981 582174051 945869464 996798565 742896958 628085686 639990466 240653686 703896695 867580308 287081341 387160134 424682799 415573780 472835805 780051284 542541598 778774065 644873434 463666323 741549938 506394653 90727564 14475517 963668362 578642837 304626690 373844628 702271395 631459933 731643820 737724656 843411477 648831041 964020148 901987325 334927972 563242878 820562981 357780721 55467529 374229359 171056044 403440529 735001925 359973790 103152836 181097973 536851870 148977376 968110892 214057846 825020034 416974041 999735207 346888240 74157990 603962233 99876832 63974571 451638052 130719597 678549726 203714072 153940125 66215604 676987409 184892391 73199895 817585723 566943739 500186974 56494518 489096069 683559447 776514398 976440516 611305978 368782941 810864440 288314049 334028665 638146868 923156917 994394113 590273008 154560058 619852891 622269829 294505700 433207145 8466138 862868732 471547802 935820959 725638581 807811312 206257415 720225453 549934824 118794301 653061800 720031502 412668472 830339898 699257105 653606102 174348996 718597335 805709888 887377890 42511495 917320845 543491140 431118062 844207781 511512361 648067037 30081796 825851456 31147485 878192710 874901546 523755464 471292794 76934427 526897098 590452515 998013638 61749193 754267540 559482884 470444318 629327693 391321189 788295772 62568999 661580864 866302307 884105802 322152845 99105333 791177938 113311769 300602677 331851504 722914396 419058638 858971078 511255547 972383758 765680638 322920735 425995338 715827941 571732823 675037018 514416023 678018560 975595379 133729848 348996870 116951567 728932395 403357603 260141300 502142591 515175141 288242719 594227217 586141859 746899196 865132776 835414379 770031994 891709551 742131913 505959229 193986360 772821503 22024613 748008925 919029846 290196966 63860618 338243423 331408405 514075347 450279816 447614704 37583954 701076039 752595870 445175004 730030950 591137398 234744358 22940844 505166743 904882609 901787583 256364603 682774894 341313181 773202234 514782409 214950155 567894274 445809035 454445092 621358833 949850149 181335281 320780859 790797664 121628746 692947574 115440656 632186688 866246040 427048854 504532479 719165817 682193617 274719196 212091310 563490720 722708360 947190276 414632680 461446969 175657869 301216254 218485750 873398614 438952291 868533851 238400147 183043577 140204925 430470513 756634935 937311772 78313244 277477159 352092750 657502302 692478201 894812760 552067852 213094969 699333950 541711945 644990818 261572318 317340971 69776828 987648359 726207019 487371565 889599575 706001461 74701097 564826671 562150309 588308852 764772029 955162308 418235341 695209020 768766464 105156016 903110720 994235071 842885250 577270665 460178094 486705634 435326884 553671901 293810145 280112045 427543659 561948136 859161884 910412220 596205339 108497139 441864624 542873118 778820093 705793413 977767571 309240348 265883235 479946095 655634616 274974967 922698095 408051282 404602365 171533398 214942748 618401058 836473581 467572517 958198143 655873720 558928878 492916511 906682059 950379367 835226168 89084034 546882804 616658477 803196707 869629046 605248560 103138002 396436887 893343250 465858620 465703949 267836697 917477458 767145478 809202693 629399838 131966110 842506524 889394739 418277939 909741366 846507069 849301555 807624581 809412793 88740166 515615920 52624033 293486010 551642849 796772851 295242329 348098980 145151625 556653152 67426475 97830509 242364998 542211037 24469579 797212412 558876999 575303254 237797716 981128930 209788615 279862732 720568496 442423024 569710389 653105772 759359859 437748713 472289281 619402405 648114707 573033868 775693185 745283006 363944966 522318582 270996901 763181688 535140614 846332016 92089562 470756427 106721496 986603091 902989319 93329564 190793783 737612913 587293266 134498356 348257509 432677653 889240246 464873097 459869336 208105910 919619437 397977624 114435656 454762912 744401387 801286792 525680699 837440962 716624611 903479169 939413536 639097097 538875464 153805949 696207497 323618772 643935550 45621243 492787308 10799762 396949279 754078325 716106677 847508949 590367610 400347900 279253950 198815104 451442838 101094652 892839284 773252961 411088560 336608121 195876 596845363 483741639 217406146 213122007 745375685 92698893 952020929 488487237 232076449 519407889 883536721 63036369 862449525 820333934 806836728 580460798 344498951 975110944 890364769 345852706 273761707 891650519 404853609 780714923 679146087 19633022 604287235 192851041 376676575 865557750 525068784 313091908 788187516 717946353 479879060 181454102 200291208 958880370 532746166 445498133 536415445 254566091 178650118 54143339 732787423 179176348 694858885 667875807 176752744 382520692 236282764 590146326 130829856 641649305 396919948 890985852 513500738 415910253 384904313 749448405 711807358 112480565 816309039 932556468 741349569 201823970 162665613 697762788 92806283 511714078 569699922 565795327 761891021 549635761 42443521 349481966 450611653 500073500 180536409 722001575 490787130 920313807 174732262 997482176 517416388 496547678 540405654 698800153 825605616 563664528 29623290 50144159 177342673 738902355 812258083 160573129 679652560 408067083 900253160 130953430 616339272 80960551 282963304 912928274 965891556 87824488 365230548 709025711 7026285 293431893 216717767 464091301 507652913 976617968 581702556 11883332 177563219 936186470 324193184 498353868 617895980 483853811 413281780 1749095 490285289 829137050 419299526 902994674 194753607 746282828 441012238 312552225 352209404 317397441 310574384 315250933 289399067 258248902 239997257 917114904 546762348 977728366 240643554 80018337 89700809 129894515 12952111 384556443 520242685 371791396 931582126 996759085 61986354 94237170 462044968 825891686 522673743 596334740 983081927 552152137 347955369 562087335 811371252 111934772 583330351 57249964 743133777 743320435 896816118 402190385 423218971 173515777 220009391 788516170 346943238 575940684 438592973 901364129 566270571 406879556 752097453 681205020 14154906 970173265 384190601 129374315 718707525 665489108 537764094 271162344 611858237 687510800 661698641 512424694 73468693 657045271 433842762 746575703 41375977 207034491 565777849 743314490 691337273 798314410 279628491 87438984 460202332 204312521 713015386 387481424 139920149 525204155 358851233 947075422 149148364 951965378 327209321 184444935 798936810 755779934 427950879 99838475 210103111 718961170 217677275 623163785 549751861 739966369 216490308 214785368 250290926 119567818 423497057 25065979 96132789 788674562 107544849 868143552 812787294 140189145 656748313 122677933 217064150 745512567 137101013 448838563 689363142 293909806 205497 948926726 102377779 582407119 372130845 483652335 467932593 703373608 398563477 374677332 241993202 529405009 421149721 967821048 52480263 940788471 227465556 320866343 221767078 772633856 109068486 369720154 424404981 296186259 598965944 634544022 319804612 855696536 331989463 88041751 325925947 886573084 231133955 927922718 611520826 458486034 858457363 397486153 624329618 827835917 986193825 137229796 956228523 615997218 721517638 587698159 26306048 283791873 148917475 138010044 828540732 713901160 910846394 701881368 287602614 741609504 193172772 366890299 217353933 585638817 122166475 277165399 85833209 270924615 413399430 789167616 195430657 979210319 338877424 365797382 871663905 497582752 441028943 711147686 201943732 241920031 852082036 258019996 274682770 611358730 494092872 211171398 208908117 106313965 982498764 814832784 614100981 873391882 565795422 945851134 123494077 609965524 465891872 449000393 343904850 690693589 812552920 783817574 373600479 110455638 116970026 381483942 58203953 261645447 729816300 180153281 238361869 310218357 134436291 390648157 911024249 237507092 310398916 929460483 603449597 68086644 995276793 651979092 158071511 202387126 401402732 847585764 673639572 620345216 282051593 113685739 223401035 42770251 641273809 748766676 650741502 408962225 274646811 957306622 700197104 299005693 43234903 124031935 775454523 800433695 526002888 257084778 34414190 324043014 232438941 506825038 456590009 297120420 428122934 153497950 758276535 392010078 777680580 348299651 199092713 550201719 569868650 417724754 260455812 915275966 290742676 457342707 746362374 349398014 884085702 660864912 45021683 614028268 834205428 514748400 253854427 805827670 112960766 548810933 895675620 692110169 302203770 428689093 663201243 301171292 64081499 900334616 976603809 505100059 939757115 59218346 108094891 303513572 739576540 667137243 69851566 508772352 813345349 43140436 83033299 545812102 896244725 860634758 448603044 315573721 621985492 539879319 914263076 184840705 935161863 320884232 657356341 560783018 354172805 369487769 996843591 416364209 265169502 228715137 644768858 376645952 756385535 10277741 919996548 759646316 589100933 319920329 943338097 861737685 268880729 974556600 259612105 418371233 479254848 741314566 32099684 950912028 708943631 139633511 488441844 552101489 635621918 801756405 579933135 754285934 382827896 480159491 108615873 558413069 29704371 448764923 563550380 863695721 434860829 932086970 314647117 9368674 222488113 869174208 888491778 505393044 810203717 26306953 906183764 45842419 657903140 180559976 345427384 184257998 541301050 892273328 520852104 260612175 478752451 511324387 876207975 401147758 404160631 194748425 942677852 284977203 249480562 100839422 359439444 473148028 974706368 337314076 675930955 925122957 547912008 681847175 950891907 219179490 396463575 271441532 258641573 361145213 4679676 33597275 372919071 555939986 756207036 406931772 596204394 933684648 179699286 534151299 535796580 919693810 752474323 338752718 374577342 368575309 416268699 994617121 37166065 578248519 501203595 974146798 975161848 578435522 700030044 145481148 379885403 321350347 79796423 212575839 137197715 105626327 208361243 687468526 692375047 932882097 31372811 753667002 145396097 873080654 196054814 865963534 219906608 929648890 829274770 81200830 530508834 189646154 432635405 763947521 937395408 418762828 7675667 56323289 740829071 859498839 2053137 112154389 662422127 438902252 173921730 634729304 369085297 113034124 756716825 769089885 411083104 693050846 775719509 556345206 546318122 398098124 630531353 368326974 349088055 421290489 79331598 8305095 107709389 297908360 419137334 353177362 109272757 93947045 971772604 627818673 357953100 448626880 518787557 484155252 151709785 621031017 480237875 216649833 258753906 718247308 154569644 518933314 686540586 593312657 934284989 100790524 328665924 29445324 619513196 811791936 452161933 876491022 37256629 599091536 90998458 47036857 997859014 578985023 966106719 184754022 842813309 555623106 111381590 650512259 260594425 822880503 69270542 384570600 314301856 556061513 924947202 462500224 565383004 458716882 60547376 500303164 967987333 535318612 848662078 426705528 683684964 107837009 949039623 797414255 449400763 619946667 360677837 341503039 82753182 921907961 22944327 50004091 198623534 674449286 680028219 699784289 935965242 342088774 140208826 249931523 627132990 29771600 493928282 458994847 671870940 486526070 254278133 980740790 672171840 561563881 191781642 414304627 19091256 540753172 197233457 791138964 70937281 378553179 649729585 940094508 928208667 609607758 546875967 47685429 39168072 282287147 418210482 712768583 525602884 197655047 693986171 603562257 418656747 493211515 940883544 852029336 920576076 363388195 943893400 842175614 499686964 421242539 832851151 664226045 49634524 294160391 497264848 659318705 882880305 971993554 269751593 987046882 828720770 803342499 972275334 448038699 972873691 729090584 909368678 315042066 425763264 15045064 35260378 437544944 105804812 54741511 182390971 228307433 496540428 120465770 270048139 365041617 579175092 972054705 229687496 807710529 724735425 349348960 805545391 67337137 554657627 199593022 622274746 527358879 490215320 489759053 398050051 196706017 374111489 284326441 293053924 662454122 256515642 530146210 336473758 749272586 969848608 116626270 511350556 771870933 152743933 439133984 358008235 568864633 396953733 602290309 273214664 567792517 675574608 902800205 984910398 146031229 393997653 878879695 60858116 69651875 530471715 972791629 186146733 261220058 814717872 910816071 865517228 637797501 737570723 50346158 435618648 183721466 250813702 589281472 217951414 293759496 971347146 343145293 894916889 159525886 868756320 522991249 351969079 368154870 583393465 399480402 662627723 654522330 87788194 25761665 654505961 461281542 310232053 242291140 277029648 303237382 880278572 461390792 599861955 738817630 664297273 142176525 70089890 398184416 82407302 120367377 796323397 44115271 228061305 786994708 60838135 32152550 35471753 753651223 554261115 354176304 942898366 573665523 369285130 406502157 132938320 341371207 145911892 696637746 472434404 903271025 602520406 388220276 290288541 21726447 409951766 364871921 925461270 634737697 10670422 731796448 862477339 673386137 86368208 805507227 711420257 189177808 704508356 252205807 217282056 671002664 783264570 903368654 497991455 896495898 643331361 855941845 861987744 501400998 495015604 88313515 565256153 122529881 355547969 252741389 201378963 45208162 851138243 295456838 537960857 316865425 80109810 91609873 490735545 20766054 180837785 191516771 110010305 523592187 301458691 834601104 195687625 219459904 83006177 243406031 2161003 602507314 763862610 721629719 513895966 404585671 407254654 304295849 981293963 864353914 788542983 433569398 735772477 727861450 116737098 988883892 690123289 433305783 433126765 420481656 858229408 965118553 511444568 462989027 639108127 247496937 452458853 841516272 553031259 562683296 423445563 718770439 106555262 663557022 274414251 982083247 378167190 597081920 610478853 257783796 715134917 461795208 152408515 784701534 659503001 60007593 932098452 296769167 661405839 421485520 733668781 321107556 664170958 68455282 440863502 450759752 139283129 721581307 307669798 815870147 157315924 834011423 213541409 252681607 681527459 436396442 672844084 736412933 981531848 764079533 453843378 721263515 853432195 143993990 860836259 193336078 19913520 871971797 819693033 538911398 408846845 700777937 547467572 425776254 970825546 517650953 25527791 900748016 568159924 586044708 101386801 230020337 918994454 143408950 177400119 509281767 608159236 618005172 428168678 862727774 662990021 858136537 462039481 823576368 746728762 819942460 557196754 383243540 708903908 429459678 338698967 376505580 852856355 294704919 863299893 951975225 211961588 415518569 127671939 530471401 181239928 129579890 960543464 575111166 313463092 20627577 964212259 388485526 598939783 857888600 214301232 732095022 699508245 50476118 586475996 619935616 660123022 405984504 876139012 816829424 749160071 235404988 585823557 107165676 657871787 569436840 499524165 288408232 527424700 995851678 360669460 527656137 637829390 60426462 539215251 585172663 697969711 897914691 819400675 940669579 835277446 419221932 942092343 330989394 507926200 218908687 402916500 686899431 886741796 996391823 995623158 161241637 406028913 67421328 359257417 566199944 744113970 286558897 307236509 662893174 486629421 792834244 470771173 776320117 607410883 354145485 623855223 989567150 543788954 445203913 522227432 715769822 384349561 864282553 633663990 478232349 49575969 628495056 384696330 918085808 799350794 769065876 473720771 489292836 993014741 837039203 738663577 19589846 809078968 841227490 869043582 689920038 991277361 524473900 483026285 662450141 179360705 760157947 315435612 786282556 656317360 25110466 674036297 440213574 859400510 393378651 942428105 935992628 631757496 450667800 468777474 343230672 49798318 964921623 664164008 407744350 366073581 679909455 104784542 437729771 649847495 777287413 624747737 404153385 184747132 483086745 29671352 26000825 81151454 637123022 573829104 698453952 616796386 291604928 399253225 741021407 794545836 769968683 433698872 101908715 343203054 571810239 577823880 382540553 298806274 629222728 840924604 757437551 806256256 62024787 609062472 116503045 224851763 849144488 15646064 731433337 718077556 234525956 997685174 276855373 343628562 95570102 47581543 933229534 369355313 483254394 3190219 977176889 108640221 711087756 806915672 212578989 972974199 244051718 953933425 319996956 998895946 929613768 11704053 561018061 376955155 967163331 537121314 301914466 333928377 546515451 994542662 636383737 343942185 340968768 527418086 216388748 359863901 596086564 493608829 981731284 763296434 165479844 67800301 284279265 813724288 799898819 995945506 917888754 381515540 643562697 76819177 123024394 738733826 326919540 506620089 29199821 223884178 392873490 346401945 914008686 64964474 163932757 557923700 175342083 818192227 302629531 480989156 471825246 344336464 506591397 729692259 434909500 849487702 577362542 758430688 52326742 723371547 114778673 366972550 187983940 692680392 213867485 225313443 665080941 832486547 929082516 604509328 380488308 984294688 359674217 474303576 30892917 315579638 171797437 765341994 427670331 986156864 839283343 900734151 35536917 136195060 318398480 958797880 2199858 819817717 108858437 875123335 896416904 205216760 407449880 140910595 26745846 889050524 855301085 303868682 845334946 289211524 787427067 498816823 703560743 208797372 242404139 480943481 947763948 687642858 247416446 991462909 574884287 299176386 254080930 229261322 185666642 431465926 561429452 877584509 574124559 149630985 99611477 243047173 676593762 629832201 506405055 513577504 367085858 446759168 181689491 883425760 836171272 677156463 379835626 754114926 356777526 235937016 663157503 576730269 378696765 333824804 818397299 648868630 303119383 519094653 163980196 2550548 823748331 309994447 984634224 551299279 16517684 199824764 266650043 771473469 827694520 571349347 633121800 683006470 419460176 655805504 247529072 662002977 911646458 786132122 770416235 396645689 92697161 666969742 819095813 431477375 828589347 917404739 892350515 407829131 785898101 459892979 400849253 642692876 77542551 835526090 93008343 605763376 331845881 252281766 837214439 173907781 656794863 220225241 890956621 598543915 21643088 23120957 857350386 653144043 679891064 934635079 449500625 848931408 916259074 578003950 463002753 293486646 44502090 134700906 738215358 693457728 657249221 119047763 892510212 825154874 150203997 385401260 528968880 192089159 296633894 718475701 798714817 831728201 800657182 953110118 874504753 150788200 425518013 364691295 358725785 534368117 703988970 362171027 752470535 762150202 781590047 171744696 654927919 87392752 650143604 349925329 775701859 171812973 397814238 155677776 204206091 857232810 382812839 682654044 459717228 449681420 183033242 139973443 214268801 354952907 576896238 506830095 30958885 942631342 617905942 861847957 176207915 247996470 111581826 119074005 548460849 516307439 173862900 677111954 957697642 955145464 423972885 599708795 890846914 49593428 816262845 148544806 673147038 771031153 239274670 711029243 989421158 797026154 731561429 136586194 318892994 388173546 651365393 561604785 272162346 321088738 102257025 504110680 523754822 856555552 521691663 588660918 151932969 521851890 347198038 571229268 863898777 987399791 946386724 438690624 107783535 161196959 148937987 100683802 893773962 864654835 213334899 898635297 680339148 556355624 654212172 662849895 768467632 59068068 203123927 286341944 343598319 97108291 989933679 826409057 247558024 606924992 26634762 978661935 628459243 670031086 399674530 316786336 15819861 813413027 405493618 335643419 432314065 21519448 972143049 350184600 32570154 634969911 842046037 435857511 682276749 20180483 680513134 730100242 139316306 38543419 138986429 167996652 367392846 757206326 625479410 435023993 513005348 92222926 328007307 837722019 411564403 301338590 847520719 641396244 262598412 335111719 829618709 888377325 732634688 332068792 380655941 505900313 390200424 443752579 182898294 359666755 266307577 163009555 129715459 943575579 327308352 48573543 754376436 328166946 273470419 151951797 8358388 81303619 58013537 757229035 877132138 435074520 124130798 245911525 835816870 258937037 963594993 769837422 261434295 309071309 460173242 838868448 841538365 431619864 549410016 573919765 873224032 471797810 427988500 195934485 7194962 319477238 124231202 546510625 30189619 856172562 44039308 100992290 849232775 135292356 338821148 429099261 279849777 472785841 386185677 870698135 527993535 549567473 791897008 91493791 692640308 987070073 264272207 490759047 246078190 961873015 580283088 345394175 817586286 357512462 346049543 753653004 764277833 681642096 305903398 301354220 881613489 916935519 507351474 600685660 109910451 498181130 388773215 898906535 886815509 978092007 420417858 477427010 18365588 26317549 713226623 304378061 799338756 84905961 122276055 560522745 675467597 431589116 610000107 848822491 632111712 380740487 189409492 430030449 426284222 158914420 814107183 378089260 345979270 544525229 477754425 814870371 602824475 944563048 58730970 853798111 69022863 477449096 912511190 248357131 134300297 92894792 597951209 276937757 989089846 312307454 655430172 148972255 264614995 691708718 547545461 94368601 708497586 965195056 280562218 154589985 762353907 511340313 517325777 890334669 987405338 380858542 2510414 62092146 956089571 620275233 923842100 445571975 268451776 643416739 846010884 381866317 244403348 460772541 401889019 154200382 366983767 875486233 169088100 618921029 682529403 920317294 717864494 446534207 878741240 319262446 313513360 519627341 7924786 512649188 7528202 276147264 461851491 841500963 765059551 295854398 514283653 235655326 249357942 925231759 846405255 162129169 355289638 201791334 184552110 633475767 764403584 654697261 561974046 45507053 586210896 465356894 18924455 59727282 625522949 461699500 664090960 153426696 663059682 303841025 504147698 575138017 924263865 67781720 952133920 331085391 603135461 584824961 63244052 34550296 51880689 784933722 217820547 390323908 528813469 155880785 473202002 356266720 817662031 650325614 224733296 958481718 38523199 445039442 720594175 413636681 826228019 524183691 466000515 738045207 822844874 124902881 807831315 553105239 815251464 751578165 365701335 295396129 349454629 745310637 49997788 902705588 982474614 773443753 80836771 295381410 240907672 495248729 684784602 183242038 270400148 687184315 13116146 875880705 985718724 466475595 28606659 379274213 380723919 309311026 609414247 892665923 67776637 873171444 952769806 780433082 337613652 589514555 512868057 978567760 321494853 781758272 22745839 585004118 741451437 812194160 456369093 50913737 184603028 28971635 816591580 680821385 384040569 848721028 573804384 80401861 23445416 837196645 175899456 718510282 216782276 884286897 922696711 305393394 321645290 274842637 240281302 945331928 188042154 815728548 203398182 384300313 534863581 272920488 984972254 469387128 722119083 21765047 640044405 563181783 569223203 984190855 111930339 234369272 589923205 755958440 237455196 338824557 720361199 60197106 863212731 606699071 909376190 562633905 354606824 155860388 784491748 889352063 104518321 296229486 184487407 935742416 277612076 976595560 581690332 301011084 521871315 409898294 742086937 25496528 692933781 964885495 616603164 375159163 592617834 671927597 387470600 18070727 416766290 112149285 431204543 604947634 114900973 597993792 151377243 140139142 336806646 668955425 367515698 885613556 744965660 165715037 534161500 693597574 685337593 969025993 966874273 50012584 939823526 665439770 301612168 764280911 512939776 515531423 724972004 134919203 992465867 376850648 374395042 313513677 245911756 794280857 955451837 23079265 415214547 668267122 483109050 203306239 11860441 541598491 925024274 534789431 338591276 95504766 601356869 768555225 661513957 537288069 374317787 870380748 418303062 533300135 602397033 433948935 993637690 177837700 179497475 317825671 228974451 985418866 553235024 759557678 985787955 2807331 554927163 61151595 862926112 515666412 700795923 727866827 353234374 29769848 368323295 458201623 473980655 108224726 951847074 619771568 789560981 277225480 100685217 626642531 583758760 785301571 935280762 70709866 471857717 449160899 32229729 383807367 702793369 71332253 366052260 263653591 655182629 748800878 331246202 611321771 323213167 820794094 736528772 353919838 539651602 569116259 885968500 719359956 134509363 404862123 597085563 375775189 5846996 561778917 754983880 592472719 645853824 323935445 892564414 400999208 523715049 657046982 618492427 684886841 251735836 608357812 283224399 141798187 669982540 817278954 863925254 518374491 745800033 870699012 941637863 980129742 925464722 633080907 192396064 682195721 569928601 92300686 555359729 957664780 806571968 936295253 575304999 483688226 728983054 293731431 695632463 258008503 438641879 918558686 499906553 610016037 86437030 115871147 567268912 236128998 27786766 725556779 185502802 394424498 397647778 219621614 572519590 394821112 868535467 915811469 345704470 806034610 112275304 102452952 546823174 553138892 527192963 885039722 399324876 468441552 161277190 368653515 925815908 269733083 94265574 590153765 245616778 893810691 290064201 200808148 534314078 832245452 370827950 672005438 336331169 109124656 793132855 375756570 289880020 67033502 955222935 412489075 754746802 446717787 489514025 192105829 461612752 364735066 986038863 695844253 164889808 625806891 911009458 385075181 897491205 738561103 697059514 521936159 489929946 95850718 271265118 671129208 569501683 52215752 390167432 313453186 626809186 931603121 123954186 212777390 764281811 638908687 591648223 234332548 77603601 368775752 729362807 474999700 623091699 897375277 34561592 430220283 719015188 489397946 321207068 117626211 424702848 297692432 654944549 226660583 496895888 8970153 86905149 919200676 148546982 399864034 445944761 1026696 495760874 441858592 297904913 781570715 561221185 448902925 777006229 29938472 916382199 9820955 577603962 783585759 259551454 678006615 229124421 425069166 207299507 73494136 644916041 460819308 689386741 436182508 191038525 141060207 624330649 789608233 518579370 973341398 50140731 984938831 774861990 679922894 34000826 125109394 689657578 509427386 531431543 9820252 410924749 568076648 541776872 272405806 705805456 257414069 847686994 298682061 882345702 772065300 895588992 544560082 718503879 152005766 505598807 293549504 628848683 310545446 692594535 408138151 797332731 663543564 839185630 130878240 179425668 250332767 323962312 622924848 135954330 556251733 761196029 106759629 62793982 359237955 196019166 577920875 419374017 631631710 239261311 430196582 986418705 903203206 6182811 146842702 704673511 350124459 370884052 713664836 409689096 770083415 79463330 882137802 794406220 900695279 657313436 909487311 751453689 811652393 188251509 359662791 23175423 48099125 370601801 279368998 287913151 792818525 733234659 360342027 170978337 862230581 245501545 291078773 763273815 137871298 589185513 403685072 581093174 546719033 474229419 806645346 165413560 134393667 454822134 376493379 6622004 116555684 795882568 854341712 228406843 431012212 231078060 269601338 485401713 696621942 910526600 219020517 680293163 889911973 589470474 79736271 997286110 90452133 495173696 559534505 851063937 342675340 860050600 560095148 160970186 186118857 578326889 22529664 322011068 480606531 301382043 221172114 674627556 444345402 354651076 689210414 10748336 48140581 268970489 381697079 269951531 458426382 786558500 330163250 458315173 72240943 648084076 807802762 26753105 864620722 231657250 329500513 749786628 710892675 405953963 940776349 761261957 962146946 686449919 651146488 231661385 925003811 809126753 664374913 229827420 905560401 29296554 692751452 100966144 293650222 419202415 193770926 746505154 290061290 473368941 381096418 862346106 340289019 425070444 164179064 983752955 341676563 58642834 574126928 614996385 617734808 922673710 779032915 228775396 324733570 809546591 574249357 621839523 717114731 452684650 873737982 989437326 388167406 519856985 417992488 773128174 206110494 680691608 871596387 458292703 180571989 430372077 673501257 366658816 885009825 623555578 971524068 506210406 984409441 909040721 997001711 240547078 533574134 697367831 114663769 581790512 161039510 608205631 475441132 346747426 392651063 797511813 176372687 739966475 681194741 311221147 137470625 712635065 269819901 159893740 739934551 659810955 829566040 131862379 884669493 905302081 361773999 997674676 259049600 570977966 685659294 72051553 188289057 780736262 628056096 413259905 732011780 783672268 917376828 428426094 481498499 803451425 123025620 302867628 604675349 618807180 399837214 509087373 329665274 36675338 832187540 920994109 462762199 994574160 849952026 594294805 14559391 226473309 378868197 631138759 256501758 29315493 723418175 624767271 598534748 459209914 785204062 984562170 590479524 159313437 138600150 170470350 493563743 435982431 379728467 332354074 605955018 187576662 827023845 308733181 531111222 726222265 514970035 79005256 835220440 466186601 650882101 395777137 888552543 211636148 947767011 12237421 230874964 559452517 467943310 184154645 450470177 481600984 48584402 366214562 16337429 647062373 684200731 146859006 521781818 277605102 555649797 250564464 618846674 231797442 220357360 860131771 738948969 492271179 538300484 398413297 108750342 310148508 339397963 342035607 898784000 759807395 964862411 249840811 244905787 354659292 758192187 820223689 493829916 938109132 790482482 33360816 523358815 643609439 23891590 21524614 732339992 782010239 540683416 645629492 999611761 674007470 899060089 91114112 422819498 173593784 853294896 190246721 654828975 114347053 494885163 492016537 215302133 801676904 112026453 75013469 808613815 436507476 948534654 380484034 397362353 94592478 731008882 137126666 886105202 576050977 496032725 992647206 226689804 298015336 874810591 867718625 500778126 543000891 26611319 800528303 504621489 769204796 120843763 804547849 971093111 949930554 847130080 179236025 697284603 794780771 311509162 880812886 416920953 751687425 55347485 16631281 291274389 91763919 372898918 450147357 637587671 290239948 325331654 20256254 128013045 642679991 181763715 897814518 146788361 249381394 8340401 152441550 722250819 925919236 732591705 664884513 499435136 713366408 422935347 43981624 243553012 916273605 101959067 442929113 853514780 990679612 84832893 934458757 630932396 567746064 851003553 290821095 272230520 976707418 309522546 806756198 708023972 974472224 238853754 375339931 275017712 982493553 368937209 706419656 131419636 513233230 105149945 613878161 314943300 137421006 543874223 222953372 822282023 891349557 181523689 600407610 675648013 967663854 623557246 85872919 560661459 343780517 841975383 906485152 375033426 740831369 300557495 190077814 340462592 306984957 323010650 501700255 188082589 621439906 965415989 182512586 418125298 213388616 438008877 6186718 536535510 507261254 1063925 39164515 986650361 172427346 273152054 129818598 809526306 482573026 607258313 301971240 294687544 925159330 756140451 896389643 41713397 446189847 236387674 913179265 163656311 880925014 662160949 780499569 624354291 969204692 167517536 833419137 764469444 695941247 79089478 675448837 294029080 968355726 487003436 368772919 698585554 799040471 826976839 689660591 308677344 830476568 707760787 600819946 355504583 211491264 628278546 670199291 744470071 112458860 586681667 266655496 863743474 245569798 437496215 702938025 54565345 698311820 896214159 234497604 837499175 768559207 690496106 63249950 531123055 350538891 837567579 972500258 672465638 643705672 105320743 868837114 492831767 858901052 160402105 602164303 919186469 840142940 194332664 688959277 175851818 970429441 157134453 721736375 715741294 359037221 471558348 746635294 586555110 672438050 826671710 712690709 471050486 424401455 394784049 756077209 456200458 600685195 582866968 7254732 749074551 664431577 904790633 477500538 974732192 657356047 156852911 908948864 803233279 620052557 323845438 584843742 644383334 314815088 831908081 448400446 876754754 221434999 744387950 818895378 702045568 427769973 527978735 864448015 428458258 616467233 631621442 744344789 494184484 820137619 345911801 549116360 658325250 693002109 211621810 44540899 596127816 309080673 242412617 909924526 356523456 353394996 153335829 652765094 174567487 573764986 394191912 775838965 745419164 592841087 159361277 961170295 743141942 747157843 839098192 37240357 142413247 558384287 920458911 80567897 375345363 616324895 682672892 112661835 601394583 664767813 119078109 569060841 584113102 43987400 458293152 309033370 126263829 857057999 544600915 273555626 119091432 841595569 759670560 723168262 923110243 653649472 198053610 919394110 668671143 282500269 473743008 988736807 493759363 64042629 523930276 786435871 962375448 694961523 732945453 15304861 507810624 937601755 430291455 687416573 566580910 618151876 612533709 826717696 616013321 744866982 429030474 327285845 423255573 449859956 116601240 499033413 321901574 118828564 604710410 461026984 230368694 838167039 807308310 189472619 84093010 835511872 631241300 209150991 720549763 305324718 539199174 353892725 845723443 546050749 236397107 922815888 191946653 901266444 522818822 459491667 388195005 295021405 600937952 383011672 321098917 371465453 876936033 836372985 704901201 278924905 392034197 30746147 67595840 5826014 762602699 17083853 105315296 482371818 26876533 847347405 410050533 700241622 465801748 325880354 42471885 161229962 559358740 64351903 887933059 593217396 808625331 651097332 27268364 66654431 22627208 917819047 80621262 527271244 895411365 390824152 112445275 475811521 721801636 161040220 100396879 162369511 526161967 963881838 754795730 96900055 47156508 504303670 373368315 118265778 856205340 977835572 833728818 43952697 346534009 554711489 513371236 547387550 992598317 120576069 601516161 215968618 121095177 551640061 585200756 792096314 836301223 814963776 351293697 427067726 529399361 983319692 233967101 217067466 143824811 918825188 533500223 918206110 809318958 140392796 67035728 621596749 256579168 694951886 604747599 269211158 655176563 28629953 77374580 682765257 152905564 153326468 478477332 500854795 306079007 2502666 197794741 14798789 898600342 777833770 908153568 453339668 207418767 999190785 293018384 95627622 53345922 288499511 825797808 300159699 527317832 469566635 611381291 55903074 812700658 493220161 23981427 250686928 126445964 361366502 910104825 32187548 622734787 135333081 924193756 591205413 961274756 156535200 306771038 505248820 595664229 60343177 628291979 739418326 618848238 470192623 825439103 298215196 349982647 918147844 937345889 168965077 373058188 2225973 418152548 303387297 296375240 305315448 852974570 891216101 478055348 726376128 461066598 557194221 748904150 662882279 67751977 60397126 131561717 590955749 609241116 983983493 506382213 435245264 489190591 463021535 969969932 779840714 686795710 285398386 837168595 708489074 576678336 135898431 163398250 106752187 420854502 166298360 354571253 328412832 93452710 930774222 963209183 245540738 147026561 5094831 725937394 854165175 895618139 312637531 111883138 949730115 196689662 846053128 534004749 329305734 653277988 577531340 133162922 249247318 653654522 434695312 850733177 551939870 27263557 962213200 801297102 964714162 860765828 61077595 8265817 904072177 581244598 935306494 346184770 812497947 130326379 302723308 740332554 396258918 581995087 873614423 463271429 603645265 521554955 393014752 216913849 53336596 340271505 958707787 34339832 634436812 550171217 602631854 701182332 699791849 156715719 560662285 880258093 904832870 47776908 538326311 82710895 150216696 289525889 240542265 259377089 235740187 600565824 984679671 370594230 301110343 978550530 776340421 269001787 207331431 255929040 189827769 143280605 407005709 743314287 313620883 120788239 531414316 788367476 185436540 325027423 146873473 338287047 444891772 883488014 976966354 694362197 764607903 705072861 423559796 564226306 354578331 67596149 696897126 453492368 172064073 508633847 387469942 26044777 652597505 628443512 340570132 178835078 636122328 616387218 61270785 718269101 68047575 397361614 591216211 905044284 879818617 506534905 604390573 340777716 914622841 236120227 297695319 636547049 572199338 34541328 810614449 819977073 377645206 397858856 531131033 756455009 494765642 518753251 322548794 161826111 233232819 749942408 241862184 228397651 118313096 951214013 351279944 286986629 260430374 145221487 313224730 60277534 783437333 450818439 326420573 746109174 769060723 441728818 402965379 867336240 518650704 699992571 340496766 51858262 684733068 893324465 72808067 230833139 312544007 157073781 747168687 497517607 67298300 693858540 286816681 40688472 904771780 690939902 515863659 141041116 441973800 173137837 861101927 115598592 282020723 62344374 700245493 307967981 643070802 135759939 726330949 611330848 849099761 386902869 249523245 911455859 73384736 705190936 91791984 183635487 832246442 824351908 396721416 683434665 923195764 499502002 157510610 698180690 136485442 180274200 793335122 756073471 164757874 563846046 441501732 209708209 704654204 889533300 849016546 448237400 238632491 448141462 375256380 265774560 87413020 769455019 78599381 75730427 696070548 841413558 904122681 884598210 438282131 542005504 866629802 160413457 155362297 583627808 253015802 604138521 316356755 315693238 324618972 943292787 601924528 677360369 809493126 544924234 879264850 228840911 967278374 412851910 389027118 647534938 242935941 198140511 198452976 336827694 283461455 167716884 46980323 816203552 361761602 401780584 605298235 100604172 396520193 229901537 456204114 233992314 723588397 549320723 28541326 506411677 151338465 382879967 100138486 585186208 150667609 800423875 386048905 239264879 819149023 24415235 942552565 515263052 705529174 237013268 904338192 352042709 581959498 235853685 701505225 565010572 344352022 707666594 104352467 858037210 99366634 495594137 961891367 58732626 129433915 125034037 13741119 491887921 199675298 572746558 514481216 236114928 253965362 355582699 106934735 220660686 1087210 310447669 971886758 453535502 476423456 837826771 63236087 542413796 226368226 444879355 75937320 5506622 663151794 858220595 851757501 343080349 824869513 573772164 455514999 564007205 362140649 167787633 449735846 324809980 927618944 38660155 605968662 148481103 873335135 631764621 458860250 652768617 483153559 85075230 16814422 391968207 91114069 870577598 821435129 877274026 155559725 973542212 831667622 153197582 778672568 611494607 141214572 934948077 329054390 969279541 650011480 672209400 95241632 147899244 555707377 751878715 64768978 506161462 98324602 270775745 826941997 448026575 845296855 224720796 971536578 226506496 401909965 236651403 972330227 624487696 289750416 578963587 527442439 76150925 644847194 376817422 442859074 274766169 941181086 454073963 726774871 753862446 652091921 314340752 725067128 846688159 548895695 723340239 715208066 464763004 853067667 29773460 19765 398599179 643642402 652000366 891650269 893763142 978498677 749718363 542347098 185903113 589176901 987340033 659615848 512477325 470641041 920988762 229346901 126722824 597481247 446011657 123955092 176473154 628953918 548287747 792873430 20445179 81899371 895497054 426229089 640537179 873824909 31503740 555118446 82323761 620952495 112882863 858625982 419662047 378240891 781191399 40099552 50011684 537255297 330977062 238659184 247624408 368944745 631314721 844477927 946206692 740845565 605545386 291000107 108662945 960093272 693000496 78219847 319142411 854595335 619739257 899411468 508168517 120552336 552613166 556616755 977734648 231025206 882776245 221343889 211428527 584508581 177001 250049963 971535728 995376988 270079474 839998642 49035246 360311766 630956276 30488573 990786183 453570711 461009343 716555801 384657085 457463475 799512211 440771344 547030148 743055796 437081266 320999786 55528049 953279943 809830628 814052735 312034025 424592297 72283953 764180337 489277192 850555803 922266703 145867138 771898221 229453598 554930383 984990449 6054592 874367102 254987781 791428069 315306376 525586470 779319009 605881331 861048758 946966088 366869191 996868342 240284637 396096063 313021677 834533436 776569014 259221037 859312527 315167528 425699103 454995210 369982890 256141467 506350527 385676937 873313160 861555817 486126926 463250812 997566313 425431278 156929440 897452415 712940151 339260214 666864643 591973429 193934521 371763684 539892896 135513584 916388759 70612534 584310201 834832002 740020807 467469827 164436188 18913644 585471294 611959141 294410190 742687551 939512141 799687864 679353106 106175624 876159067 763795198 44428377 148893175 479235052 987855221 834610653 894477872 523659401 969939457 419134247 15100580 539379958 224282950 107637217 896468777 81874595 435149439 480110651 572897068 272064554 263268984 209653159 134866310 127728070 360597263 637014739 302418323 961513244 402955885 545045748 386430269 748230324 886921890 331604341 308419109 586418955 318840997 593760995 366363377 955526345 487736310 441794999 281953749 45846002 973453132 701570360 692979126 227948613 554086907 694071899 841514671 439651684 591271283 470437944 186778283 826458775 892012787 150258137 576877067 491295915 752212354 405249947 255733631 150276342 59667940 54875130 288742309 267926316 30712742 419923274 114070821 966940180 114460192 490670664 762922617 504789273 66043156 731493212 892369470 764385477 241573453 830021782 248393215 495824612 145432811 776666324 428450744 454730684 27729797 585120065 269636986 615655393 60094941 370675115 398885204 111264772 145995106 545207216 817212438 659692695 228247617 85029263 63280622 977487714 694513923 870527959 590890982 963748063 620129698 604437479 694132388 687941906 125208923 814992626 456117611 55495960 178511999 240255717 602564445 923154764 852146720 33749255 781275066 299375450 718867335 757559337 194125744 643647460 25168978 449350763 929577530 929482266 203114188 359626783 61318228 751163052 480781798 361965676 453528750 341961501 661250111 388596740 161011719 402551552 809214800 15343602 564672162 483804126 636838412 107868975 181010694 149535079 727067572 680980749 994870666 342994083 781688833 531479068 277286682 723393762 874795085 821914250 46279817 626500751 978735220 444341052 422933079 80436450 789581551 416350641 55406225 868226430 737231681 633218704 182433215 580104807 187663222 397475538 900215941 914322993 407550898 203804911 166539346 421371380 849503279 933109848 732631066 585178707 249607382 144641155 178608732 747210347 759215428 213035541 434006647 745257107 148228439 86948855 236089123 163319059 870422518 305041710 793823265 962236138 33980100 28804231 890303312 434149737 519599260 255451685 671710637 339596797 345040982 565449597 64129327 25488478 263885414 948619740 958591333 423670723 760344944 322641541 751018788 78055019 394630678 672680065 737513556 119036164 222101435 907499016 921996321 163235068 160810119 157067614 781721712 793917852 47146540 135098847 821722139 447067396 44428082 227983179 27252042 777515602 316904963 537484129 80770653 793297350 308690109 513869469 366057230 892884115 288465902 291362992 154439639 466772375 540260414 267545323 904703392 897206418 741980498 221233666 984672110 79417243 458622779 41408108 547761305 200540763 986968831 478380145 668654885 111792694 924617940 685200439 832264818 508019533 387197964 637921969 440099977 157325014 661096523 147304285 385772907 453160961 328807870 790417836 278776960 631567466 778650778 242403822 248936426 763382244 65015146 752580713 166068062 968962178 354433897 709291540 633391162 450187585 597054972 380733767 31022652 158385357 781354198 681099263 339609461 191806957 453395139 408151724 505160709 707322419 929888323 658917129 585967637 264833554 591594281 525284023 199311272 610732011 881189700 279675767 132493379 769637487 472557144 921347645 78569248 225469551 105311165 911225486 456523017 322451060 708363677 506301736 918742082 386131665 216740688 562801217 48598959 542133003 753182185 440934032 428720289 461554685 284583941 264667555 264308625 730774652 97463095 820542356 739320757 363116423 150124779 79741483 40847741 532970148 422476485 486090394 978428579 140245046 759744149 772294711 90970265 481616870 986017084 146313663 691795099 1307168 466485881 636635742 15778199 117621342 52502578 566867271 408486846 226741183 708806844 203766468 438623328 14753097 221749030 944078391 91361952 642292179 599819353 974761638 211929145 174901331 687083862 904344083 971520306 900000 738063723 889786948 54685639 216230105 200170059 419754882 380059353 753739676 735539107 927175311 915755735 186815535 555070384 104043024 442066208 82135983 180768430 851903611 587753534 838235932 675900980 759578505 762445608 831979981 67602874 347937140 15770896 768415959 612384491 680143652 752368588 225402487 833343241 792244444 866776650 906462212 180760418 597388208 371454554 700144439 61746238 760765825 197158000 210952885 862685321 4777752 898405459 402050487 358413145 279756878 177708929 466744456 508330837 610583414 157503618 717138249 339455816 208101117 693493526 283848524 61322555 29853522 873872681 391701603 199674674 781048030 633101295 702946276 921397137 20073700 433817263 384135192 367526104 110040466 54710950 668871246 44938662 149072184 206856660 351989047 806959191 161610933 595594246 369792722 809843234 914654470 130206216 204481399 466071376 84390100 281774237 535060829 889548062 374649207 286808189 968085899 447000460 683937385 233408085 958648052 363410352 747967766 888852847 443997543 47639425 393418567 88933134 621069268 275934492 850047542 553881145 826717895 122076469 17487223 937787840 441754776 123457164 710454590 534671616 181276337 382417532 519988393 981638068 165374655 129243657 382468781 802873193 648059063 558845667 44629505 697249553 36500886 932403039 623822785 30622967 104147886 675008815 522847183 185024692 435247947 790706761 260676153 956703367 54562884 753668791 192006160 486374097 847294090 174946476 937064255 932631761 518302765 583659072 198421099 86048570 404492365 867278751 358060290 159110704 417320510 1111151 701609912 87997958 663318565 802009318 64999507 847210603 741757503 352531774 957232844 112713878 66118431 955386672 237027188 711884366 95598482 140665676 450678749 494311388 456026014 538164562 768837040 98392140 374600618 28595231 181446419 652609629 741472893 507250856 405318635 124525096 182156922 1797874 668469545 67753950 705110647 75985502 839988630 610627405 210540044 667378967 465200837 562526648 768090260 951579024 132436572 937846587 2519662 938501030 877621044 225507724 942355858 196461848 611942777 591914281 320725266 267330414 535832563 197160353 523807523 764827426 613060415 79882541 313658658 454952595 219317467 838827610 963167209 135486844 542356416 436879706 437746626 165019936 996723816 521282326 934613643 697300055 23313995 271060498 71931673 65646353 575647991 642213243 180366162 371780301 559661361 857182466 649148787 406363611 414485872 825871133 515974613 46080618 27129414 657033253 52064013 97894797 484495927 826776765 222991803 720865691 971768362 306902021 582754146 131515099 316307516 564962786 44738435 628596119 651105349 151038243 507411212 208307623 606415108 531702888 770445534 181439246 802227348 794687400 588478648 590023248 585731646 928788151 385528243 703652777 2779772 267670587 408667223 176616183 827131318 668628091 473912853 259047088 287761167 183809821 214090188 943661460 621254254 834358915 342441028 765215487 132812776 540211529 99163180 35567452 940171284 158315182 572280091 897595510 395886296 453311958 922148297 13806993 723985862 971388977 111326416 493016222 228548503 165881566 973305282 772673314 821183367 173421916 354149980 42711062 984044114 61603831 717233130 366473258 792124518 75195308 169673228 819260544 906560084 265255889 513858086 762321080 985212731 885662084 382576003 898766956 496021110 670097475 802114079 198674405 525086464 389083108 349360101 262419883 739108092 395939631 181734700 608058456 70817486 696040815 689771549 405057212 483771713 31903378 230988817 659501962 637963769 351978273 146321825 833737621 916339749 44391137 745678562 754277190 985966397 616561876 496968078 792244323 682718079 324634182 781288206 496003886 594477158 737286055 705358492 798835251 777214915 405333400 837171066 532090404 777654126 969833786 135501898 713493619 937511700 210240467 902033644 936593243 703004213 34349639 957479410 670836651 940165009 498622048 864559459 500652296 865001520 286133087 587109247 535857465 865471571 87564517 272533825 830980236 384164526 901546682 523287992 326375018 586141194 141539074 252997285 303075819 428401970 552945181 43484808 180435739 402035317 370449358 982162188 811009221 422442727 258259427 33188382 239109191 835638916 445379121 14291824 681609268 748082565 997096130 135227519 485859503 150002556 915280886 987040675 761644634 623115564 154661443 302447518 535881227 792860197 473554772 148368302 910527796 186232805 120029851 967648527 598584595 552893971 616414463 528566555 837744832 347771593 755664169 39824905 776159262 141866110 270182943 548545297 437678144 285936555 466659396 842444462 852355414 679354796 908136248 924471787 437915539 217781928 66378842 987834040 482269468 886463949 217837015 603646610 38050753 275052150 117338813 334826259 115363138 449902961 257355016 367058293 9819182 132127273 976961265 422471853 645628544 105317371 334150747 126126704 590092306 570948748 949829894 590363630 337287490 533420304 21952030 202757518 694901958 837598835 489663335 309469912 544728635 676092609 148327018 405846564 413694035 973627982 765097688 684535434 6847698 839164736 37470270 668072173 824166033 910047200 766696020 545844949 799148567 107945662 191732937 686827332 696299390 621407976 659077260 5099018 400544782 400372693 415003687 826881443 787462730 857852904 98447629 903554151 879164562 178876554 49405955 802023353 37052124 53600058 245887245 872583989 673263237 432571807 69446372 487078304 722371068 858777516 883810708 684363864 68197377 263872548 380088959 607669651 770606258 341062437 537876861 234140364 579764308 877536330 270768086 310261640 911840851 303455998 78145806 832742266 365968167 5979830 382345393 393710197 938305381 430660426 95489770 497401550 293473152 499770164 285896561 627951251 177019546 358460716 361859290 604890426 855007359 423798562 322561762 817582039 947026826 56090356 139202173 793417715 43882454 196173176 435822675 965167236 886801581 303579172 863080942 738563340 20812974 631700302 860705303 881323330 949478983 810430989 647845538 489718190 185481564 210447594 660868550 182059619 17080923 394001964 498412253 653678824 867258918 597240046 948571890 185797709 677948544 881567624 163850446 711688285 523313116 248165005 995695408 116450269 236031426 542857986 239592351 839942056 80226277 706222134 566012194 81251746 902059488 186920984 502335212 161000125 830558527 327491465 477118778 886583981 176441310 740029405 739735130 242402070 198434831 114125451 764845949 350616107 968766685 42401245 677725990 154897060 834880675 52370144 146986281 856504110 455160762 214699951 475575178 309275064 82622227 623400907 357952770 173786680 918547508 245794227 469549580 585514571 659661866 410444953 765271552 689496084 349119490 765842952 265501688 429363593 51807768 190120292 70024150 348045057 316683583 68174459 495513966 598851719 674221952 715249939 824246680 808164152 890943711 633759847 219684565 457101650 558512336 6980429 370573366 364315232 419319973 241812345 879002140 765381641 615929891 468109933 643127880 820487887 234829162 392499555 336820207 357664942 402860667 500692516 167421950 388488076 756356468 139181764 599773757 659763362 486845505 380004277 138534558 830169656 714569494 643490836 93910974 193381327 310334756 6927963 731996855 922793882 343169971 576499748 3173871 730345551 156897490 442666910 996676544 557331422 138073450 853453892 508631196 897706645 627934910 364234378 347437046 806529277 501920363 585140024 172507985 138033032 966552510 649438069 130759508 871688277 240275131 76229606 324779167 675002796 639794499 301159039 474567767 989469007 97828489 858073158 33814095 792533252 584899897 678018324 289876557 490382250 787413948 90263789 103106193 657828863 278013396 577565221 6138459 867312716 196503735 759349066 334573655 323590663 245777702 23566827 131553702 86294195 444779147 156327421 672314488 641887039 12812037 832700089 320293093 172643749 945332687 604312205 224862425 825628973 208666205 782573835 358523189 486008431 44644155 988376948 55175678 627747646 223460461 68488936 269532073 666206205 240846973 801156018 507635370 71139758 358440487 224752663 86094349 943834444 929279661 355696561 497017635 666204193 791503642 138077046 487892924 548278466 92357716 583855575 911890321 712140123 963525017 389495597 352683083 135654530 65023275 837249526 859848177 99596671 299018592 315500820 938267974 714164845 631340140 75012883 812687740 625865824 238391405 137171202 796389389 879589312 856736621 394344421 60374860 166005856 359377272 494893847 677885528 401219348 708413257 810397516 648551134 784432357 930956049 539581688 354006263 743853903 377857315 812140244 22318894 318581986 697323612 596966918 530002177 91249540 197504875 688843039 237915870 367046348 837336640 889076573 262591353 874615295 180371988 625207623 94168989 495086790 51931 186169381 29543895 155894704 256976797 204721238 969353487 240345564 164698020 224610999 892690450 644415615 772029410 920935119 932727268 74602224 122975991 328259643 97034356 189357870 752628512 247092338 659686249 807225127 33558662 425687310 327541417 203629415 828016648 314093424 506193036 360903208 834494666 319734254 951933334 457224958 634187063 228306535 169013493 530997498 567799988 411091348 659877465 215040590 259749976 58653855 652721771 618424217 687788281 646283335 346989416 204936652 37006969 996707816 483666893 388714558 621924992 439589117 733639509 299978007 527180426 924670024 137194457 51962335 466736967 56870728 321169873 557438638 865984628 628086796 162650807 133608250 549219321 593372276 252964897 936956533 436490725 12173549 870786948 716947139 349075978 16611928 846752043 26721690 883662490 41272008 16637251 843203979 705799645 964598859 258455090 159777120 5623513 278302515 480156247 420314647 475032209 200293565 720735797 720128912 104381070 265793092 599901995 377669142 517271573 143196437 875649796 327484399 789545398 578105039 952584798 395411190 488317180 183391035 632788823 599402499 327228277 118488765 107590658 273626571 682422469 133408475 508427270 874974985 789947836 737321348 199660865 476357975 548151041 493896000 290082462 527945553 391735005 732304050 291016328 59849384 61857631 344036294 55024465 514217391 793435317 620575408 6351501 567564224 371093114 489421018 52077502 547326127 759671301 673185310 438697681 463322799 703233761 872407639 85919735 781732517 116357985 961936618 384439066 510182479 9204973 491745663 860493885 485338955 614613154 762546257 160218651 392598194 260331949 389185022 305028400 747897730 912994976 270124431 830696523 18609869 325261976 33618306 233246733 915206474 137800223 291632552 403049313 953301094 967835009 739570662 404564117 808420137 132311891 825969882 707645095 358180428 485009724 13775433 545237971 990953571 621588719 548816193 374657291 752370813 549935979 993508060 176389948 173822830 190524199 568611940 282914011 851927357 753413966 377109581 250799721 877282381 500054818 230269832 931006117 131987049 594682503 963823953 756852833 988778083 270746621 8307053 707461911 559765873 569254617 176348645 452698393 11448713 373370985 521216750 899780396 594558144 258932688 370753999 185562917 593559185 422492170 97826050 2851036 520179659 720488737 284452858 949561218 235969097 926496025 996166778 390324904 717835422 640911269 653580011 607836737 607740813 595826078 700431284 712585805 203154751 299113343 469869669 991645742 512158354 659137459 927493012 498589435 586784332 274945803 332788711 28546403 806306889 804929795 994707235 962711423 290063268 178808458 194311956 960347751 300729377 406356670 549915653 333339061 182288885 376001097 629046855 384219598 497392837 161626654 583341446 103144209 784270802 437228484 70528096 497998274 380476149 310218681 338112267 301746915 881481705 6596364 819508040 405636366 214584456 652304070 794974169 714989622 967574354 568426036 249167683 551401594 423198011 990149920 219476243 298322454 318762007 216311323 711170421 970984350 352544569 928989217 667141629 679998029 778879352 157916319 582094648 381417611 67198607 672467961 417748008 195663676 179283021 258845672 269267666 530426486 522439571 490021865 717108127 612972287 190434598 98439214 258992110 849752811 4445714 223451527 32946639 967070717 828935069 149619465 323225447 245293022 368042216 914556521 80086348 961731420 428385725 879372455 743563841 138186020 331491915 702937203 964615048 225084412 596538165 486813150 26562938 463194592 362830306 764431534 480768849 655127898 338640738 176894177 69495510 776057486 489950639 816219325 2629622 283521613 944230163 646540485 780042921 596174490 699550882 500285153 630174959 78473691 202791648 419421339 167536326 258106144 886317537 432168648 936486754 703581649 67743943 778310466 344681414 68669373 931395699 671481756 448243670 63080707 501855494 389236353 72482654 284962008 541063381 953001755 763682319 680608482 624624211 357776382 978696270 891445594 800691274 315509951 47418741 982718637 611239900 357904455 279784221 948989120 8221666 729821474 252721694 432469539 926390384 225281449 684888061 860205450 584229293 978777339 871283562 397100937 270577018 981201970 557977 264223472 234006269 632408111 126694041 358098613 237636746 532113831 89812549 332469491 307027220 95155769 761707220 965643134 454755374 253277473 255124685 999940431 27231277 202010884 8590627 390875440 886946072 341740242 803422879 256833985 852608520 495745016 673856226 299338385 855476833 798277179 170341781 564924645 811378075 948468502 963591812 887778547 426529145 390587981 542144788 915900642 343306280 736296844 560257790 522332143 224580163 649695014 225989622 421127193 667340115 612756878 909011352 195597334 839526268 780641579 960410385 925720815 380587561 519326330 888249822 8252337 421803216 791672440 140868215 42638130 99941791 11000052 946411736 826547505 404660877 200468639 12767128 653399791 756178435 663641498 456360597 586494163 43003937 669809720 788266525 965415855 108625110 484343065 318878778 264585657 33128305 693623866 785136181 205309102 358105698 475065718 354738830 518298548 477763503 872821583 84599898 984310953 722628404 565706500 456232389 924329518 471051051 936009840 652149014 713109994 968458486 84125380 793203272 890570641 97797951 964115229 671435604 558680019 315879940 41993575 142504003 541571123 919174431 104962919 634482345 418123003 730453218 631905351 549061 861141561 12525691 421679954 946421303 459516681 472855942 362982378 265985813 241198533 859473542 196268189 713128023 413117612 113302449 16389043 31919973 617909286 944169768 333285338 437660314 519640528 183915038 477034756 734211823 515183442 808544813 843995769 511778441 722469344 523409552 357987192 594636410 853204041 166408666 348543768 111144706 464264402 314216395 587544044 523613550 936445534 509862366 149579538 933945649 707812338 874645733 163196727 763438368 409230215 599954502 223955769 367363951 39308701 601788274 733359578 690176069 453930961 634562366 248931110 882173732 353091179 401983035 780015005 437888608 82937869 203489617 957226962 966604374 259996296 111684486 85521955 958422461 887527625 19069099 779040759 316305195 980711944 331842184 126868893 563168068 561191211 942293707 307991925 959813719 995027547 768964072 6375457 657049671 649273311 748846193 970866198 91083982 31077160 62091498 195292221 456290332 875573377 13673376 544022977 554201914 63884019 870941492 681068717 949059352 612388787 897164555 672181345 85672699 297326882 887697877 353280079 851659963 900186170 120057103 367353356 719713269 639423570 118911433 604065312 730095033 210948484 669972930 7820059 988346111 312559930 755862955 182845262 617808066 199089692 88711435 555031204 769530769 906257123 535214999 846098514 37432491 105081035 55584435 369760324 675341529 930945704 106085910 909002890 123221827 933280940 360174378 555397974 38585404 376347191 780494231 971959142 752994434 121150378 394637055 972501907 915507960 328257591 515135788 19408195 553886375 506516353 66109359 79616914 155345018 644070546 540642322 742384839 320738647 928276869 841110434 60098390 497933749 853151842 347405399 777279323 252049584 758760628 729963921 679009629 559342597 790743653 767269532 565311021 490705919 580282062 931776484 496003539 383866167 358432958 565545893 959076481 272711466 524087557 236843660 271395639 712306257 883571887 591312168 559023707 38937519 528164987 432980035 522216339 243981239 265162559 793143975 975158678 45599364 335452890 204093665 415178059 688823705 574178016 233552859 845452520 144883735 16756774 769657097 122548843 285359961 740676024 123493192 347215018 335437895 232758965 394800004 196888536 154914669 663634337 289216519 143352637 620672418 923663746 85324275 108571977 545906853 419548209 330876469 590456802 360292597 135802571 545471110 512032938 857501966 190031013 868360061 565641292 89528826 837455933 88705851 731581685 113396217 276964129 180481580 304705913 325069112 920698334 552059886 422064111 563878159 421762170 658831161 448777408 228547553 601181501 930466620 37285093 920288364 207130272 516662775 380014646 73675834 176004891 908661496 74590786 227718066 301226394 510263066 57577038 977023089 715883334 877676386 528876930 192418558 834551486 892779342 302474800 178026724 785856731 105668277 681288658 736480581 728070343 259306580 224835057 682141789 929468682 423619840 809874152 820800092 610106620 375831479 190804363 251959151 233253948 540973909 420563836 615323715 182407953 727777145 265016248 372973053 563430544 994942684 454823647 577108932 352342455 895846974 106043960 933801883 406384615 722866632 571203833 438806238 503283205 423773135 880825539 541562834 961351400 818005320 667143474 680752108 451414506 218371627 348007388 607221106 670110377 596988514 811279247 76145555 495572706 708285578 373099455 166616526 214327254 944725996 990708324 743343565 414743702 946165176 247784235 99544412 941011023 923350824 1954375 315294864 283960611 418436294 889863697 430225857 645490009 918710888 789279037 663241578 372772553 661648443 731994492 599500466 345394023 78273483 17303091 553649170 747262541 832218951 848956574 795008197 697818062 378159876 754106999 142131142 421088754 512781973 364177838 440292662 887124574 277171949 658255606 821815882 877171060 890450931 499377610 290851515 566886721 381876565 936725911 633599490 327118308 900255589 219634564 206685403 492221699 954228272 603719204 272195990 197592336 652752904 688429382 294096479 910408157 504826348 910325317 844778737 449783950 568445375 491411688 303272433 298700807 596545693 435684674 317672194 571843098 49140220 61144914 47679666 843537476 225097558 785871709 843593463 816141725 320779463 696549345 724897733 664722783 564206280 900584234 966504195 734668125 393309204 342519641 733676368 959680965 818689760 990938219 969777085 732027845 846314096 571071386 721204258 379206465 232198417 744463013 352934744 731495916 142783522 539375515 961844818 368767343 509040957 117946500 603156920 403915380 910379738 879040251 371746537 958274403 648978385 609849577 221928030 424980617 723632401 694758588 988856728 13021153 870532588 972118128 78392606 986933168 116342577 907225851 704923602 951423131 65812148 838730676 664626294 224373317 444517243 769482590 890197483 505806987 560203362 629251902 251987798 770811408 560512978 626797432 380469623 761389707 576414504 234757926 858070889 365852892 597839822 490365778 394028983 627984119 426665566 351503235 922015985 911037847 291455618 303221502 535525691 541872819 776029486 53801456 59648238 493240494 697072668 589733754 631503559 329684042 176046212 50424573 916911320 804398591 497400688 382293810 105954668 916388122 558794403 31444045 970479990 165666412 830186871 894654212 105412073 904406440 306381814 347031343 904835907 34939443 661193196 298965896 150628059 68871792 630980766 941713773 15430524 417677778 937726283 899167472 985524619 846988684 177416073 363098137 728078349 287588696 174405131 635448004 890725530 248228356 595302086 948928352 129826150 392504579 141434806 260462552 716777345 631256553 710667575 119465646 466256158 598840494 147008236 328199127 980278480 523128269 180751239 394156107 396217926 774631764 52788233 113895159 614336000 118705900 366980499 152097476 430211915 705975717 903598644 734908663 636141146 504614346 682323276 650786014 31779587 21237278 72093712 614018953 766824668 89530165 679903768 731294518 587428169 712857852 231826523 312803387 418924309 241643455 954512567 372223582 778387884 171997539 678084388 2783485 264773321 401552976 291921850 889258108 523617943 66929092 442017138 105144224 227988509 656197685 619747765 802867703 418907713 124407209 228078358 952505540 643552993 581866488 989086059 206863259 957661141 326770210 981437154 931647822 320235973 670164784 341267406 706709392 26203716 266031907 933448983 225130829 645997538 193265744 646278123 251530931 896080011 349715585 862748660 951445991 839648075 166310914 549963169 609140087 840133463 165922821 310561055 838251960 776349716 39344089 628781512 980567344 688566207 113920099 574975798 622918926 908658797 114528980 80690413 441342144 761042654 695834096 961519380 387497483 583045496 526839460 326760732 142807433 264080316 393232918 712582303 566751704 425402142 290535338 560304420 916645512 937311342 61985913 851061481 460081189 288404209 820855737 189254133 632378450 449209775 964552332 862616914 923068293 251329344 96898812 446920988 699071 998111244 462729557 866296900 34903218 13857655 214310455 531253333 216903658 661267235 526817603 708832621 71647811 69479349 955543505 594539032 996702395 882858880 459936757 125650018 396589201 9522303 798033515 839514824 472588548 389902416 856586825 852111330 301562727 101737304 702702642 835390090 163828372 380564465 997476058 572052942 914199980 400123748 356526426 442630597 810293942 278425586 96025730 640528758 866762924 379263537 889474681 433532721 11072686 392016365 818550294 855869010 983307810 423396246 673859434 863654859 921255396 905688546 678000713 240168005 564204723 812192697 976437251 846632494 622281421 574657270 513145183 610474362 180443130 97557721 166713331 905205071 596629498 143352353 110283304 935697535 331762661 930207763 930197851 222166568 713007131 54015007 100070477 510930947 423986051 880932959 45675627 87053529 171467455 918190845 249725827 457885766 913459587 313911406 409374700 885778515 764799634 389195346 895716679 670592284 931387109 796320405 433217246 440405694 899888477 892470173 481147409 406793897 14922567 153843576 934645800 881043492 208647588 563254443 75562359 781074297 564068397 783390644 190553778 178416745 233164542 588703576 444658309 160178601 567586689 539202453 709478474 997000910 856917245 947805030 291956009 873928276 807282495 341759340 300035951 597592691 668775500 577464411 234492912 646501376 321657252 794790158 459267708 156844936 590502020 721684552 956352819 234108322 368923458 950942736 422394146 201374872 817872890 457043441 943358296 368048246 408323885 866097184 689081481 715359053 977465476 205433243 348714695 547583176 324069873 652694423 374633174 906049026 955890206 222289172 741508682 828889605 270670078 877764075 263615648 21340967 223756057 384771868 227958290 126490273 43661054 884756348 38237390 20381424 890150438 852644324 800262421 184013659 764757133 273928437 976075068 168864644 284284768 14723205 955086670 629367500 414093450 890044523 698313022 56114673 986267800 608346170 783546184 179498276 275553204 396256015 129629933 176576409 844077236 470817026 527997535 791967732 494332863 167006410 184338815 455380737 771287596 688235466 917524515 517680371 287820921 850129074 180254342 125690221 978220938 236450463 298794424 787103724 70331159 56639439 90013779 759154076 681791037 282945055 778479613 992626985 933181269 252326748 259672522 416913094 839669478 254170369 904607810 917066453 218631746 87567027 872443444 15961393 537860954 161601830 930797265 553485550 604628639 836957743 981996448 568268347 800538787 950110983 624915812 158423971 916811742 841119101 374069678 68327557 303584715 293480752 522979557 65730048 396011782 283772839 384167744 593132955 912687705 952447352 957136751 143866156 60211275 90807416 933390190 748800502 92075626 857598520 359737975 424598917 370681123 700195783 524809311 589020368 987056599 320399010 756022090 992083088 6058123 816441989 872672639 729018720 365131326 250078999 459885803 694346394 763693501 509056355 97937964 612081248 928335025 752836013 754287661 743510165 562478594 768925640 877210843 822498786 199373618 330152184 369578947 607718022 77071484 311967586 362239224 383464187 55873305 398375367 858511912 934041967 780711113 350701643 225045931 980189488 323138386 590062037 436356481 225809218 217018227 410260984 90680025 319308518 820557901 588495541 44860480 231772865 114975035 195316426 877634681 604925753 947881919 548317572 80648400 822542601 824292932 25777925 444271997 743195004 126726479 448854148 446033572 7747754 677600192 212573177 99304075 995852416 507794744 524569934 801384453 294449358 761710932 573528625 123682342 757024492 432846275 653502647 106042349 409385597 32960336 986032849 859093254 26853880 958131674 946592663 17261839 734129032 964200908 890576913 54609825 613884599 506027315 663033807 883436386 437279775 680749082 643875836 186950917 117845364 416930811 715221293 62363733 934041254 112648505 698414954 325032054 490970782 197679601 554741473 916080667 615786043 803125510 673203959 745716659 503743277 83791506 29355597 991168105 283386318 798047088 786839389 269618351 929982760 303244892 671997920 12955791 329911875 431025979 677874654 600251338 137744278 85845680 433240874 235406212 382189516 382723802 483894255 441478143 82221122 321071469 745783397 444272731 132770792 806161927 247761678 351891743 719553770 526524636 539252820 934112170 483702492 437746234 627990350 183124059 583383921 827988580 877757234 661601534 158132935 2675336 702226598 485546984 519214104 964770185 918777016 633839203 212660513 526377768 587661667 850203984 411288735 805323945 482910026 350174876 225007156 389137182 193570732 401995560 414611701 275022044 635086926 253247815 864773811 268460168 311255995 552008015 923973249 799971317 375683012 490620995 600077901 985773184 758769980 337806179 975126025 576420065 827338474 369674858 310895330 52649527 386505064 139711335 933032201 742791986 144328525 156335429 778721560 176017800 5353630 550938310 595239573 716540490 158999574 842162009 230441941 247103390 620567762 569717613 693900713 298732392 25667805 292407557 996128345 633710628 960672872 317404195 539019406 116914371 56174824 292573601 548483365 456997910 912156418 523478148 305916401 697389549 586928023 947196224 539012952 994685162 299126050 341572531 628630044 953193360 521213257 694806429 312702037 410620990 882939967 453671140 79142630 344185900 23813836 189659478 539096284 563971196 784926352 476330036 141457917 273955500 485848173 661558373 413949161 886270452 822267681 854167666 329078504 135193321 52811853 684930201 66805695 871545354 205176042 795261741 450586131 637684365 169033893 880141475 37486416 305281535 621270634 582454757 850038141 93430775 347440019 533297245 648552118 181030834 370096587 456442238 173638246 417793742 307441439 64855070 771222242 317941552 37581586 710504484 397877524 903094512 345646136 687120797 128685161 98433505 180901709 91415534 398677880 431487163 914884465 356458365 832309918 86765360 816840877 478915712 780118737 971825896 111513512 100283029 425600466 17940729 794830512 370872646 351926873 100578545 961527374 683274441 573077873 889901060 31072935 526712996 689038577 733533659 239634011 672254495 317745192 393876991 664761068 832120842 751473257 103225315 407073375 787652765 805245463 548101640 996240808 561886091 424033014 139027720 230608776 836070934 805759279 400399975 458484329 198292834 549694339 580991164 388730319 461976434 564272568 604054564 768268237 392742316 81402038 820751843 776029272 65179706 960865486 464922390 722876311 699097192 129995463 405426109 831819248 447750812 933471076 137812072 623132631 629740171 67021456 724723731 35407835 659176497 690811899 794830098 600735177 97853092 507252067 139010421 457710570 344862328 249527710 671740005 95438257 673785295 146551746 267122027 875643836 102195352 270238580 231320498 472043925 197642831 704223535 389495834 174923744 249204577 611381451 156197473 732982757 350854218 43369275 934093631 963004331 188596081 17520284 392429870 992983351 134897286 293151424 771678419 70948430 389784044 982206376 537322818 865715414 527584068 839335129 595240521 510953460 643815241 876225736 830081252 483345365 708399657 381659847 826824031 164473998 806708908 724719971 723890439 240020221 294571361 92623299 404646132 412233902 765959508 122162769 145873942 931736645 306046772 709551843 902832669 251963079 164607316 767015041 248413684 404551629 470748968 768050544 389522604 643659694 17347098 545182296 948177889 154778780 723946918 275708524 181832007 640159266 398121039 611135936 331440921 833487619 845973676 841154663 598151474 206503545 156594611 765454753 583815316 499742829 31670407 845898006 849168724 811826710 792916342 50279988 191650183 283202964 788737174 104938585 784882257 974407224 573424166 629583069 664793204 981660548 262178926 104303793 884954299 380461971 268449015 450663336 927149197 921664578 653142325 329921169 852355205 871610091 128054553 432186977 729245765 149083247 100905323 854709775 718165045 933721681 657895826 585667425 248210685 605509678 703360267 109877879 88337050 369239052 576165152 39537227 143240379 248434547 844473402 582198345 836054504 957822071 988925927 983261501 708674344 134674141 617221111 168986498 208594034 383825101 427198741 655421130 413890268 691658477 649506263 374270008 182881493 731636432 488575350 891355794 267611610 763978533 748051643 839037365 97174481 333025444 480409135 128241533 131013749 94904384 397531255 38392457 907999360 544463727 642358880 389608332 845790225 133236287 372310404 632536901 480501837 187418773 446444766 508395312 39931222 809668539 164685427 342591699 234956937 207880680 899364045 194167608 790886085 652387859 77688857 627837233 125571848 467664808 326386287 333813706 983081762 16390616 657907546 873140085 662237179 722500482 711266963 713454106 910766663 245767288 286209643 841252386 25727810 949725818 84880923 333185978 595952725 157145439 67671330 629600757 222845785 814737152 905455718 299534018 813898317 537619872 831102947 192556343 796003682 731752077 351787726 663815763 196846900 265899485 513532507 40911237 990333692 469658659 614603529 559878592 413110109 219204605 862337963 505422199 993091868 102874331 694560461 273250744 299253018 343094015 219971092 135126191 147021664 746071557 198352038 387247300 721984404 116431255 172660051 573922576 836745811 120103121 139965400 431301767 340571832 825211533 581962701 316812399 441751039 969871101 984139260 123447315 431520021 857771304 570995624 193322939 58670969 716572172 574034857 184871481 67714781 267080198 91186744 85829651 731216389 40418504 426291353 114858368 481540911 986867204 995611613 543000402 699646799 975923174 419355755 934755974 939834632 981110271 324326342 23106282 273341994 574367989 18977596 279575617 86960283 867921850 368627526 291583438 207364215 625589515 314400532 296797018 400503198 998855333 635002083 638914789 549147113 764003829 902107644 652320880 972389148 431397955 428032105 89365149 428319014 174942518 473030196 493050399 377299497 599862823 328351435 30127797 351769815 986770786 672374741 105346193 817624223 938029404 83128563 832100318 254152328 685516614 12593549 263224134 393297928 968572475 66064102 974947529 219690996 544396877 145044818 41910669 748128030 651058674 716210065 155417272 334795000 792736928 320436258 481597569 454484721 526625214 573018550 909776396 484663417 916193295 940107783 25339020 609767644 120615168 535831551 47966292 346225972 737192793 53545082 855077824 258541015 490554102 407991829 167167869 71535682 918172523 181728407 635403380 122141017 556936972 425086520 157024108 506692897 434345812 879557242 457195521 2778363 2753390 770631844 737853893 1538001 145045982 388933617 482967039 5776303 991279698 517886029 91643176 154620436 20658783 16360562 52066968 283346759 415525722 308792009 13645153 358815724 968221389 864096272 353224809 50079418 958634816 559100778 192736667 165712390 61341852 857218172 502805884 860211950 509455687 106347139 53077733 877524812 52616918 282830549 395435119 669341838 674941397 832912640 864912677 639940575 915811416 239381276 458702992 170918011 134953682 78415207 141438588 351088492 623676413 844106379 553133931 833448275 649663692 454651959 403730074 569525264 243686703 233014898 35632739 400744860 831668468 179786711 659147756 780409405 259708071 467766893 977104844 585150533 195909139 429518858 543502289 207634738 925295527 552999591 672205088 118825843 163286843 596910390 348034944 559538942 262303075 828405119 233335345 383054559 631338269 666462001 410773045 467289625 583381433 256478041 25003751 660446431 994777860 917236059 181715534 22327393 580386731 541259343 335704018 250681335 836431736 899001716 144875046 520879308 504182843 73469178 369870752 144349202 455656674 763081441 374237423 595011420 495005388 200828965 922270586 819111269 91853518 970788543 158722383 997943223 244804337 920014637 18567774 255282168 913536887 601384433 98625971 184722383 265509925 530294739 161306824 897457934 238196826 339426245 94081906 349855043 653440718 33323377 184604111 68536416 490097690 579238639 544763628 464508027 692745961 343934072 44161896 237768678 315072910 873185694 421986190 104530945 985926796 579651005 644549018 528405904 750583976 685671542 969660485 597745050 537878605 176955770 801826254 344326492 534596782 616401750 181987533 957802069 451839898 661888537 950082324 114334581 760234854 639872134 95992104 691992876 804384955 256372844 224592095 297977982 599746983 148078988 429181405 323827759 365767301 209205195 87518493 979258201 774244130 19606601 302747241 23413529 559442487 310593858 819094138 934646276 119923730 473782696 684887486 746709117 430069342 144214243 864900144 967534359 801686944 118626394 18287340 476244492 489392837 748623597 946987311 689454650 950581026 716543176 353824943 196096090 556558499 790449198 719887934 155701003 685225188 700471112 630008626 190665850 273168673 7684593 654856822 856548554 200657101 918400605 444584942 301731186 738010808 449284191 236231628 587218859 100666795 211704741 63819272 85464308 22448182 367387884 73581849 949142972 97179463 712770947 396370332 545589656 196452514 581355050 5774739 771146399 398268783 944447169 406146391 623422569 647816941 457670474 903996139 58966994 683816993 926383281 95528374 908738696 142252723 341164779 72804179 186659851 895357038 634305603 500994240 54870663 487338419 645294585 173973946 158494324 546198580 368061362 717572417 512311139 856844420 582350558 824281062 14038375 997465797 687592628 526990389 205772028 925985692 566681371 167455543 447660399 535153715 196626139 34936946 89408340 148071236 513748418 978277451 58566435 512603959 77943483 960880757 322328301 986704113 226305294 608863892 225275895 512155331 440306295 640092414 447440703 808865117 76582143 473446537 213983537 718785676 659354510 397241134 240490834 185175778 862457304 920520839 667176717 345738019 242876492 468286739 180062424 974234086 809065792 573256937 122082763 755778635 335152073 31384269 146447440 285203311 108776695 501260448 170598806 686876784 75120128 29744415 149932634 209133273 856408967 432187786 130503109 400725851 336357345 966684087 631932265 244695112 312308973 985727453 610224706 706791016 692036105 963072936 685206676 85040637 622329164 681135342 92376177 827276736 577975793 286133851 8693648 168244268 882143410 391976141 269328940 157234027 877171671 740481606 861303882 165982116 147230489 517106215 649961353 80177845 894305558 713087349 686655008 481235598 364998019 512725168 843459272 516681644 419484631 43096888 997346200 3931863 880090871 129464446 951485062 504942945 504322081 421103436 273930074 136574135 669433293 62046737 277308194 779286392 100484913 679066482 965631189 623614141 639791326 908439680 724237243 208262004 997659895 402764605 455263876 420965428 462553698 674810951 621190788 385364659 163643225 585975276 103934208 187344419 273435240 435172267 356562276 935003963 400079395 830129622 532346699 805476670 787400975 807752346 28182604 521293232 852881926 350055867 651916160 852694281 773005638 546991477 755112588 314453427 929106893 498197192 500431705 793253824 200703338 44754890 174985603 80169451 620219735 382290391 857808690 700363674 707575676 202776187 931503716 162779449 980244428 25154657 847828696 361719951 817692998 694750321 479783824 782634837 751070947 505366014 927231050 496381270 388320436 23100187 66678284 384598035 976679861 943545424 136618438 968752915 349672301 70399446 274767008 3556798 890386103 609908811 441754071 658843603 81868931 938636241 656579276 806657673 921959448 225095994 802327468 517787207 701026709 398051039 154378344 91402833 502751056 703472783 57497697 429418375 173043948 918370002 814453401 696044318 392389878 42221664 600542487 724654318 450569065 672783291 530658012 400843790 749537300 271011197 736005320 957881422 554760549 169284401 667513894 833881248 446666749 795913735 780239693 870092599 940210997 63953443 986518148 472366772 604623418 374945715 327926802 758825657 737721029 708870510 494352817 451143231 159640198 810622583 854292788 3381283 65702757 158804883 653529720 240659058 630148153 976325593 243711056 286652963 928868385 397810489 134992760 56014106 726038811 229481992 607581100 466981628 47364021 486535781 96660464 477187826 122927563 910200778 767574952 758191720 135015743 815449532 507859779 28116370 986353672 115637611 481395175 982780656 741734692 225225358 598678311 176899888 248286263 371769823 888336163 870220014 724953831 852334457 984183752 10805112 679673997 964633125 697306335 754470855 913260169 647951086 323497410 208007797 361638416 808137001 700262231 134927620 436486861 382323411 532877553 660724975 46980536 130380728 323502922 502391133 269131600 236854384 806853435 893402979 137559073 570730336 296707889 305309798 768284746 360255445 102040100 604152359 794622663 878405123 877794750 465781116 898952674 832386359 889526184 663145181 480813623 361144944 538906711 160485203 861957228 753393265 36250610 768514933 590331997 925387089 160152328 963728723 684685648 588029533 627988603 113359605 20409945 155917483 253273526 284079882 973556621 107149299 202752139 487853950 564065233 388317856 824665858 707047090 862233547 169554790 491322447 142615647 251622529 15337965 741977306 732459379 38461546 157200573 636654813 627363984 40713740 47421926 602467476 79575040 451232018 108478100 492544983 995121618 683567642 227891952 281899089 646235782 682182916 563494197 40690045 356675430 390965736 857973396 771834539 430068828 111538916 321538981 918827408 8676019 516213562 287626904 113168826 695395242 275639551 210113842 901318773 63538733 46974754 768282408 858160193 949875746 936669918 160843333 507361997 241265800 796017806 610308026 646768126 737892668 130743357 539772410 725302721 893843819 680992224 479788888 142456189 794182369 131016380 167131919 267921980 529807291 156628735 355145924 754505624 346086795 347898708 97342999 8826096 728993117 346409980 526424853 246416633 196930756 541760347 411719052 957880616 25951816 961497652 635128092 802371330 927288645 545142094 381838154 495298547 994049449 96486742 276551285 958346290 121714388 265949704 941440967 224779951 35114211 531026783 977052187 47625018 600558002 143846565 451178840 550551415 895037984 531017945 450066672 440419599 102321265 680815195 79987687 877837301 121065078 454895652 895798717 751340964 609272003 227356667 353523702 893477468 665802861 28042987 991951384 126039191 393782914 493077960 261934805 273345410 295706090 148263774 414756668 326348987 636840815 117482301 621365728 253512950 658261930 714703153 165374600 635511768 803743982 209952737 781248482 596885904 812163333 822581271 476407349 498777083 635409368 781772473 685146751 431391488 397958241 534504489 886835499 798313911 403303990 927350787 569405916 772290352 753763011 382961108 147865609 70907809 762024605 733683019 982559464 129336450 813530657 982036072 683855887 273100835 731229378 333140433 907688401 179800955 216817766 134068287 288647375 410667945 895036787 626491468 258465441 755811360 319321424 939745969 216206119 397530837 427822582 537265128 127367142 768819618 546494916 480977741 847849035 877666847 239079530 131772421 269601528 822364280 398527947 733615752 355516955 737528322 916631102 972138381 673889486 524964572 340895445 103173955 205833210 983630932 208167270 932593752 110679863 230413479 32306336 437513247 56140750 106938436 434463269 458709944 74891143 386047965 347331605 915317906 54566280 339468660 656441757 712128759 49898203 543834010 859637337 926841284 897702364 166529807 419638221 44535372 588411093 480195567 36844461 806915952 226345361 341687796 811518714 432180342 320494404 520699025 814548366 166399327 493967083 968305328 142454838 779179623 132461298 63166533 329769883 374435370 95899766 419705676 595530710 925122554 934561793 446841260 502065942 193121450 793742453 319730424 546958109 663898925 887240853 550227975 867699934 586759003 147849384 880563788 63915291 255552422 490079776 530949855 544447966 211522421 392669622 799886194 578401303 435025724 48711933 129062823 269089895 880699870 629247980 756496288 642805612 2204651 522700826 437147273 857988264 765581993 152976363 544748112 304375447 611707367 296021210 116922200 13445593 72683634 742702994 232506205 460929278 488657523 100215292 310107615 357676320 792975215 515472251 289919349 751951432 252651723 921093925 214124303 43440420 903924550 782831634 543485897 374705422 112925860 21142865 887824798 127502441 641463249 276110624 314505925 132811113 803829000 388474028 515434912 982762726 660983456 931879845 503777389 318148216 392115147 619570444 452293992 394059763 844032373 375444300 348964649 409418139 37733524 281468529 318602244 49434479 989658693 717624066 395696750 783644181 756360515 509192305 148643336 171664696 454027834 612789147 873119365 828495814 171875386 893668955 164550055 931854035 595730711 810313652 739191173 437577845 459371728 307625435 339879655 996203563 452709321 443905377 295692306 557394259 406102909 149690225 250042131 471812535 273554016 725765656 868486243 373816080 516511259 122518650 739346246 743714557 202700467 242326530 943743169 655574557 709910241 858947123 648030441 216752553 352541195 589472463 836939737 827774398 725882581 792055914 882738707 413850627 409790500 272759455 621623674 79744283 952901811 779961291 908778296 712124766 655996465 133478902 189135156 484469564 273494489 116734935 856204369 601230942 767784885 59007340 561993818 446113248 927974510 539293294 450256222 610914481 964964844 295677618 920009082 249158422 59062473 148997778 399570161 918990077 574353653 935541754 28278766 843462656 222215703 784469227 7024070 600991670 567552469 978694660 962783068 309367192 18432097 472095667 321136761 152435871 416826835 416805929 948477661 632366846 310162092 308343863 992153806 67809432 430717699 850655606 74297481 688935931 648719412 336475865 102235005 280816304 166497810 365772701 589494189 148764330 895111544 173765122 180092189 640464703 302386106 586609530 123056247 39393008 453527596 173244238 500022960 297963611 226313563 71657031 252738115 134826581 90234267 897835771 221593150 120621149 798022751 362754331 909013148 900734967 701346565 651277702 729850504 528649640 975511057 375023451 377337504 238050009 822599113 125611006 683939785 658538156 193456179 943734648 565062073 496110094 62817871 842403596 153193095 467083916 531001345 906040384 319410981 203462344 144220319 952363786 867631308 309300414 9828840 681577825 332637257 636363632 661948801 848228052 657208766 61494153 404909954 534678047 228842196 399073027 584262571 161171861 992397397 534557546 421339258 189649821 801426873 787740326 91037657 910321908 628643213 199722149 606165554 562657236 701166882 73759659 983519189 24553890 19707062 567180664 987424480 15735387 774149921 79110423 979122279 101502125 763615097 553985539 29667715 373437038 553347107 506500550 660412339 364466572 708240446 918597708 27422021 415050519 350787015 900086980 273083230 906695620 427063554 153612548 352407855 217634166 328472228 50247990 110568139 466285198 801157905 416969468 378689582 673749 154869136 667103230 694463049 459009434 142477751 326473827 345656613 112434919 94743543 111771999 547693539 288318044 162944029 683223877 510986942 679005476 270298168 740757344 785227222 593934768 992381261 968182280 409996812 860878111 685738779 375614917 831630634 196880936 413033969 281509953 498529964 498725215 514975135 954893589 439964505 412504806 476010552 144581485 108881141 334464993 597234238 991201792 576028125 587306822 814170146 931625851 53527475 864531547 530212230 552740664 387790823 362750086 421546332 439422998 12623704 378766365 448640732 36267999 938936774 535123200 688507337 815510338 756997701 531364125 354658558 883039267 993682947 572846101 147742684 960934934 965074973 559038849 177005069 294596364 289321754 554387132 523818249 783869422 785064080 582450192 531685171 57299974 348224268 376972105 183308362 130723930 158952874 509075996 985196114 20402351 244370302 465780169 518372747 428602332 215404959 896361700 502052565 325583 565209375 163124061 654377902 90002716 277392699 970856968 874441030 953576031 89604050 203530034 760756742 957253771 285317506 710420437 151957638 597320098 298127806 216192388 61650597 677159377 166856089 523309754 503521520 464425928 289604439 765389331 131836724 152207155 475388450 839883844 954520235 621184807 395756929 629228077 352811247 689988557 991313627 790096068 91778311 783634149 676445654 398480022 811346192 22426648 690188255 883218553 744800197 938670644 965807285 981288184 419137803 471089721 495941632 259323769 316501718 284951652 548963272 34709686 709657430 78891304 352168407 201096486 462801226 588948398 351963375 645976250 48349929 731974153 731475208 18189065 162831572 249259187 442695350 581869455 520447023 517894881 826614038 398310363 632630436 290624663 663408778 51706071 86113443 668531441 275382808 665344268 414332399 634904632 139056366 770469413 97378707 288813973 848336611 878412353 386281981 433896375 269492487 167471803 11806826 438785698 446170046 89724791 105869164 449565408 856477109 193697466 660569364 170963083 792790339 571513655 263587114 583334502 253344742 571159702 432562544 363141980 726018519 119732809 509699476 168421293 514703855 68576028 565977638 59374091 944681546 373964527 98894366 605142307 404172099 75356092 302360756 272711331 527261106 929419175 682963362 620875645 509329991 63333279 45133418 91023859 180365703 820625194 972164024 526633873 800688302 703201582 976317409 873754269 329507203 898808801 584123420 512781982 756410861 533612935 600083692 600472738 503285775 669244321 495772689 342603885 591309614 333457254 152209339 566384617 544741170 568864510 648643000 258926821 75685610 521018285 708843706 422703408 219916066 255679457 752557129 338209125 375610976 425470424 375491126 793650748 34176702 94856484 977368771 549115248 738652735 839061103 373784901 430830988 185270535 172905457 377940029 923605253 557057218 893592770 905800914 854566396 512948079 476292933 909861370 468739750 608447224 930467905 726949827 226780277 748408744 302481824 721917892 642681434 937128494 306996483 520775406 929792409 932144415 578529439 530419390 45062395 12736046 621169394 497538701 695868180 586754228 342147357 376456855 812249668 383502118 508202722 651262913 30286116 404161304 909674225 194378218 717893424 38540333 786741901 605838831 75963880 954639540 957686592 239423150 134499447 742756401 538795886 426081264 175904506 562397003 988006388 825229524 635774229 442688201 114515628 12789849 888012073 827100607 447857760 533190353 321081568 804513990 711548130 822392184 312100312 14069817 46548553 369315203 392341121 414729634 172938053 913369403 689268813 185955652 522908360 69412818 94001372 242767981 286613539 856527918 280286604 223114250 148106636 529835533 879724725 648038295 948665732 354613434 517763740 826588047 172199687 701872670 923844096 711938661 524994837 975644436 262462661 970901637 774001740 120140961 189206293 893575999 61953685 504518632 498120424 600923992 371440416 124285333 104541670 846530076 833832271 517436205 163669993 721470631 286622981 108145614 37768007 768373877 42349067 450107333 663676569 338424335 258690438 108820740 612015988 509305757 564820071 646997924 711051564 613693153 936181442 657364671 875306206 325504915 644611835 110630210 324469570 618000864 419996477 473108847 533810232 635724823 745303426 420105398 375911086 897298644 611455842 760033498 515599777 879606515 742826047 296728224 847937479 592250300 153632543 29170446 127019565 727608250 465288685 372856302 716111879 990800463 498947798 497170814 790015168 380683010 496622913 14947400 874373048 24325910 196871402 968715186 282173275 347955391 67458969 717630774 591084968 49626173 258123710 170439177 360415462 445762567 136923922 924587494 372901899 936154821 485807471 110496504 607903637 841868309 337481032 53784841 83365277 470005527 973760408 811861640 570299367 639580559 324609593 916463124 391118367 692347089 227069538 268103265 869670774 327518687 937915725 600024516 421669002 7075004 664503815 862350614 656237261 831407005 927965762 945330587 426109645 231808858 940269958 436128601 891826386 697381568 49698322 719822238 809718614 982981955 376129670 801327295 143697816 242134994 84059134 172268775 311891646 576072958 491805981 65237395 12356898 409765897 99508037 306918027 288934515 21639850 215199897 82999881 55180284 467433612 23220319 253177402 241477085 930849191 749164319 701275055 901338975 584972503 762109274 25706255 712655615 477198816 875433400 695706307 421554132 353706536 504980131 603645709 312967694 727730577 661725585 328016538 187767891 827802898 476219303 179161877 218971181 614480127 741546988 829527592 348013206 935899306 87923401 585041171 846337765 655164753 13002618 491788788 621661997 711260898 8531640 263293842 195274060 824499118 259488069 308143242 684037531 123072745 872673389 867184037 845311628 724293859 500916549 567374017 868328582 575641643 845838720 117933622 247512875 551321850 204412064 570099756 639681711 281591515 539398701 256973066 805313423 540999404 491632202 274380225 623479065 817095284 161775639 627823825 285325946 620726524 649152238 629773439 44558426 545318311 321696018 475802644 277101906 464874348 780444023 325511929 975882126 517089905 108772145 922642463 197142727 954080724 287292951 289603223 441388930 523414655 777538199 468917872 620096311 117372403 56150484 319189253 497630122 685618220 566185493 298983043 948644110 300962912 159765180 953328011 554436631 375452863 682994159 847428490 45971557 339827589 429324044 677095288 496114367 347054203 743651390 666408618 337594812 676858015 88265379 91554576 432213333 73637440 100520917 777514679 561117538 368189912 191825394 793140579 332690004 723546891 719131865 867271767 866393128 130313040 85784757 3080093 496353069 964180290 734629296 540952347 905282295 696361308 375608634 861026537 579029612 366932551 413574374 356867968 174292577 493380036 206716824 37484476 420147301 24843498 341980288 348631359 280075206 666787050 101831991 329223235 358100924 538502275 694675955 169937883 384997933 117448007 382102826 636723144 681476372 694600528 553601836 610092838 797984384 284715124 747105745 369612506 35116884 17359804 846439129 181975744 618027358 272450937 300054454 149916920 972459943 885646444 537384178 604867213 881591015 196481722 261778486 920408780 116734031 309422860 525024333 895833329 647291715 431468813 152361042 553740750 234909310 24724869 235096832 688301366 725685382 44783989 276361525 242409358 956689331 917336267 945300646 339975655 68278731 671225290 971338216 351756131 403533044 809255608 362248827 145308429 898391676 837903230 6575066 829800168 570503972 378451979 987279550 871705148 576262506 861351029 182403784 323181729 264414279 306690109 728383626 304035324 157834511 965843567 671927788 974796392 66622687 596480317 353715564 92018141 802390753 964532641 826928072 752810494 467628188 792037472 59766612 689036637 289961153 695372609 463745243 519875413 831094437 834790936 131822848 652481584 906673898 51331746 862749060 906133308 124385193 257090809 164341931 339134959 900875398 81182813 68980771 700092053 985704240 304846671 685065889 738635797 612691300 748133503 906335831 280219760 975176995 487500690 787836934 160414973 239866726 520864369 633941069 921456856 400859602 89421530 924550477 35079500 373935183 930111638 117862690 164773608 46174743 819801768 564231932 201733033 713992772 742144040 851065086 308107896 477738664 524150529 520335056 50750095 30995399 520295039 319284599 295974140 55932110 778173821 312561685 683345731 413769842 725718126 558097346 493489611 306180176 898046268 4225266 329423368 51352968 82735441 192590950 969541520 470126064 977275747 877995594 274239247 716768574 253713876 912261450 78657356 830410443 580751890 250324832 572642312 530858962 4425343 15583766 952342248 690392310 540019378 788979294 881922385 226041407 482355371 151599451 531607116 176205323 166033906 449746212 662850203 852135455 23729525 177736177 325562313 861245733 618865720 918083889 34040371 681730766 448760211 968341687 389832683 377416388 860617192 905662248 109843255 275575847 914230681 537304869 350061832 625742005 269040960 750549333 293498501 270384561 355045511 318574607 906263060 215799892 992851093 341981585 827801145 960012519 478387033 528896525 393767305 824184359 971154220 400479439 622458968 823432982 438057762 266620484 490578874 141318988 815156105 572284334 927515339 131850710 198666110 179971413 467764479 695581117 236611814 761814483 590422337 796204667 692034258 462322479 654628677 969630547 819802323 869659316 570714641 174678343 65523198 244664828 530534266 639990812 724763366 772906036 365037995 595292526 247082409 942227871 822016930 573597123 212949004 442550109 407083367 211275069 261039254 947759673 895848304 857927555 649008502 574856341 706667904 957441130 750146589 335831580 571433301 408630729 709083463 900520706 128106965 683127072 515255392 886479906 73706323 638656707 728099029 331105780 917045252 710757919 284457699 553500462 188968408 342776950 5313202 780838624 828119756 762977620 300578734 443795388 965777380 391370494 557729924 23128222 655130955 2208913 158567023 382097610 742508076 244628600 406454476 362089008 889267721 573479211 378979512 840363208 567465565 180771590 559315594 512199858 855388218 531076274 188537905 951061336 805774181 706907485 664539214 793711292 685567044 703235373 101580035 560811959 855981449 765296311 117534115 625769532 938391919 926647029 336969855 343553807 954363736 197091419 877192792 311296858 298329360 148402501 873212888 578134837 146061002 87870598 875482981 267041387 628503190 977731425 377127600 946630586 139356052 111593346 554485238 110127069 895068404 290407894 764006413 784967309 230134601 535279756 341793513 639280659 510201908 963338837 933856602 416985582 854247746 369318720 457206332 363001960 307959898 60081415 624866220 331051439 830538701 689700345 405794858 720879686 634617446 343414022 410818282 184947528 522803175 169695684 304459854 828115220 968159142 208367510 724161418 667854798 359723905 595562900 776264835 202567740 423772674 92738766 243839134 855974178 642048877 610970795 629257083 566722675 903347021 417201993 679305937 213243282 146604467 723564506 591683441 280978242 744259462 265927067 437710065 610851976 458822589 126928360 455353828 61523130 520474555 328341295 83623746 934800275 531971129 31276509 650310222 310808643 812249222 900059443 704166646 261363724 255918972 102238219 624755793 677048629 786909204 406968395 716450166 601400198 719712615 10866193 160858497 355227885 793644111 416399846 72218341 383121359 327080225 782969249 669762804 824322698 586937288 223772456 466858504 453602644 591607120 552880005 283441709 46642026 519544812 375190833 313565256 906345562 793721636 626059146 569337313 593691234 643100431 658919335 37583573 541652902 824037762 701462908 140297713 416813614 343265957 196448845 323003501 23209900 820601727 823995855 154399956 713354651 379338474 655685899 535113164 423419572 623328568 726850666 211446180 100362033 642528266 969572943 629211381 977542269 610681578 876542314 958364930 665259323 619987661 486411597 567637366 102233143 987887249 749534064 147798210 768404344 209161468 940660741 320881016 852407871 851712820 777520177 132538919 745603530 61638947 378108293 90371570 813845090 864883686 397546503 864918240 624547782 368316578 731098168 994810974 148716066 978299217 49649483 189390184 232933112 190061060 303411153 75278678 469247875 858904923 948980579 814019266 817337553 22924357 341577007 377933211 940243495 741136740 367778956 24241429 687950415 989580372 479313741 199763026 542793545 771247355 970096001 814788631 679299744 403758470 715639654 820339934 336241892 824062648 252647453 327089845 232048419 972642954 782318001 725905827 42487256 346538093 512412988 775814746 482440554 582404863 743988394 246917473 915770948 523069274 987884100 39719069 585163168 832884215 602170174 344063983 364074325 812799211 232935329 837163198 640891346 45264347 229175827 539096225 906419177 369809880 995678431 244850624 52468368 893932463 655950281 609523616 900915578 171768067 188320567 703710116 948627995 786490009 744651510 860876548 841222856 768017265 646692794 729959851 619924134 786296506 471390167 680626793 846304550 400155876 206052153 822867722 249910074 533488737 709247987 144501257 4985888 869338623 35201562 109410137 903938491 25439539 835845351 833762109 428285764 465272737 110691793 541306813 9637424 364594340 90028325 298033547 926516374 252219202 878610161 433837737 146836749 467205782 706249164 914516726 592842625 85664152 409161113 627562524 621397220 948628356 288036538 381065262 157572155 369082181 767200964 618185117 234642194 37824916 846665190 446399298 176280652 988257127 839764294 327236447 942791320 907818545 455417457 321719113 641733378 483638996 612060735 991680220 389591775 99948249 571135592 31308468 514637680 286491142 196124950 285952731 230787010 288091328 75030404 421773806 715548469 890682271 263470836 606786371 252167641 643565023 461060747 452989207 430890389 114784840 844000775 799370879 686230937 351662542 395923459 502835064 643995861 870602595 688044847 784683064 815287540 497677900 886376018 230338035 604228852 540814604 729527599 167313793 321400786 972134250 634900486 857461148 781848104 444796849 360979225 450331900 131636509 570291023 71386430 813228748 868634797 195232135 934142309 695808667 193566389 946528967 196438485 922384491 957810446 609534331 599380091 579212326 924046585 661194164 667336066 98417225 576946592 810406582 610712450 976981248 430746425 564932472 349846434 85511056 845957131 731792029 604370737 304433174 370623129 168456645 728182223 415026317 930759018 703207764 233499250 435694156 502154146 881834043 779524881 587513958 747301052 59640093 873932411 58345126 65852200 254278205 844369535 793819244 274651515 447725051 242170191 800823884 379598842 296986285 911527332 775424749 311765422 969051467 49466058 685290965 769678760 73946738 490400005 750834518 443332038 481876033 167809527 592080564 359170934 281080479 851066484 286485928 580973415 398736534 385902803 277198173 566308551 321087365 327782174 391537668 204351897 793329434 217810538 44450508 667797196 118440728 11909505 466114290 791625925 375178595 809098763 283689225 768114521 180266159 324279921 754687837 664394533 86353394 986311722 229662671 299802955 562383405 598367138 830223673 769330895 650091405 418423130 16238473 698734512 615856050 935281953 262087014 563345100 696633792 916580344 851231113 26369359 801721557 782417741 716927319 665350994 605588390 920453588 430397871 345654848 870428640 685112421 774433738 674809002 668847071 763434418 284124178 759949783 26305912 104918332 635178404 245889473 859951151 854703473 717945343 578747387 823556288 210463395 614250407 569261814 403577572 625465461 761341071 476973055 510752016 203042873 34727235 18755995 886741725 481722922 705494472 427374179 251523835 495280163 835576050 39157336 150736316 992678503 463461809 602060006 411224250 923905069 58435226 506384389 98156060 294560353 472721197 49082616 728662960 144488826 459279867 432190044 489217885 671918536 132271202 743408786 198621793 142846014 151091294 507373420 962621396 201089934 158710962 917627341 576607238 686944495 556532592 567444682 178943729 533080118 923280134 765456387 468163329 701516931 852134159 382502405 18413725 555545026 496566540 505146507 296714555 647796258 689670778 149126049 977876040 967538394 40457219 357170399 235482380 916796066 780468688 340244788 154178145 466087074 998043241 338587045 278299072 151677137 335917674 200465020 372268600 774721949 184512520 800335325 426034281 19485606 809742888 720672288 265126395 328955998 309008361 8135059 250466339 517901209 941712933 115896010 662675328 185316738 846053388 533078508 458951205 130364062 953175995 130339302 800868672 404944400 399903538 599896697 814097293 304587565 467755597 729414675 438886973 561071132 531448922 295603216 297180173 175481540 637818703 631422592 958442820 253215678 414244296 47181148 866448343 970462601 854512900 632289830 882874211 14657980 481696728 138472834 462918564 2995803 936497614 798870948 630365884 368317419 938877608 836989794 274439811 764852286 487384484 12437136 638418266 33741408 373794433 260073972 690624873 4281467 885345983 695203528 108789310 860443513 569120952 352831242 504927097 286684229 125330041 763975338 561045003 178921182 489826073 843349926 963834943 156951863 858452626 838880080 804307026 180271263 170859967 715651415 536129232 666817985 991071033 645078886 97331673 459168152 30651853 514469668 958723964 720111291 222517950 256671693 199126173 403618691 25448589 66671375 836358104 553673134 584942194 295731631 985073515 827188666 370889541 407307675 143427994 510998677 474006145 399256928 716450349 465384241 648312616 342071414 874646520 291858964 659518740 295109188 774805671 302407025 225168415 625867090 116432285 202247871 48591625 238269891 762816342 424678226 19376039 979799311 838246011 316748363 416773975 717961493 283962734 574128529 601158971 111426581 869936882 683658357 889518946 892152170 250322447 408241043 353645883 530954725 145572030 262075518 361012577 996633436 555070985 606324782 879722765 343682120 3268983 687669669 733375104 965378852 524528215 69571607 897267978 510916282 468620790 857896146 31640006 93189593 815485401 241962680 64784682 652279391 599168738 446224365 245399167 966585241 107273270 582093262 159383108 754345338 650162917 718719629 720118348 46308413 371832485 749724384 752653067 326350598 329809421 849584415 237924565 304869308 920637604 761210231 994904723 173884040 319899988 706168892 542881410 339739702 724286951 404929025 804405250 584708031 17590841 246089975 814421806 775868587 626359741 561025016 866422926 901620111 737308394 631256130 386979672 773630114 111166180 316659621 176960129 444003618 517370076 189006312 863757682 970058097 31824700 392732958 671895570 761150869 701435543 606183553 484059658 583849131 664100760 606806097 493400907 312443761 695231694 753201278 652258326 949611854 921579682 423786696 769595648 742744561 475197023 536308031 870819442 469185834 190571475 470876668 721363629 681103846 21260223 855790523 301711057 548539850 42596055 571907889 963188607 809609099 664648084 56816074 89899609 430898809 68691042 525915253 36595904 243148325 948547664 678395040 365467306 83748191 268413871 942535480 902761394 113380240 255995930 156588837 534585103 296661710 308313326 966095175 689751108 742409999 50343280 26671047 110021241 653428101 3361678 504859863 985342713 984213273 572036802 1887022 520054883 858051085 994056393 594551473 356497983 971695728 576917310 447720748 906000593 909192015 708199036 301827304 892413304 692906689 479519777 448700995 868756747 8587966 38459246 752458963 249631377 474622858 408204050 102088284 187857878 711853757 196739281 510648401 811802728 288536530 699264970 798882797 105901910 624592591 830855550 609602851 19646050 275194573 538281035 351264848 21952497 555695700 924100836 880907220 802073008 703883175 312993402 278829225 846145926 786862496 322404691 911887902 41288713 544938990 454998025 210225535 445643045 62943026 797704498 370772138 775592328 351333500 233353985 249777487 996650779 754011685 981933189 224684789 210294811 763353292 751534073 370267228 730237414 213047195 267094734 393879184 232536184 144711092 393354896 147731346 466223818 147110107 254591275 251158239 814965653 213776934 163519319 559085324 692755885 114645809 907693528 704128010 441152467 930285796 364930508 336990962 100568061 73450729 621448022 951381835 23614256 263851145 210399320 887217536 417842742 472777939 27151098 656894387 906223758 995567215 292734540 20136391 679463195 28790166 191860460 979257700 81379078 388675761 273726671 356345956 291106939 486392336 770429267 108359833 560857163 489441161 119465150 191857655 190749812 950294899 695123541 626534503 88633700 640197917 59374558 24033772 904066550 821500087 789548135 827216439 572363147 502361334 197830343 615030389 150885666 618293347 629184599 657467241 930088255 91907315 32254217 685764956 339542132 27254205 406782325 567226326 680984427 429969278 66519185 910713226 99027971 764700895 757765436 981357299 141399167 278227188 401811242 126402372 789919792 169104375 425292390 230310030 570622594 534250119 682468397 362148303 51558997 938624564 152673392 289546355 125075796 23278645 218682266 933229801 330639611 253579370 690839818 61257519 385082680 796280056 587219850 610701656 824599656 99329475 555076982 290239786 146683803 738225840 468582310 714420612 71171571 491651203 308975289 786286800 575499454 23072651 858790723 497119842 604598094 549041492 200258674 807522917 488995106 804442340 470217302 404796188 433690893 27013594 662821103 757491768 318190632 137801366 230291018 896619940 725913943 935361098 750806780 169078121 238155104 935109872 205122342 864671777 161105105 281841812 623383410 149074724 75464122 383434146 498544073 308599968 370800619 803905803 509915137 136246917 532693775 748968569 990973915 842668520 946489711 245460466 706794089 286845629 336002546 256794763 187343205 806672375 829009248 30440602 883506967 357695648 16345977 604525834 626713617 503766925 410001833 835025896 817330512 138896054 943106550 653163534 552797330 788152171 965548076 661193436 985643418 394014640 535173373 708027572 370557022 619577166 311334014 897937358 219423819 505661464 154292338 495281104 460608632 961021337 250886129 796531009 183594854 176443169 523209588 249268122 682587286 863283055 26106428 563425419 858354615 668758753 755043672 514121752 89971412 93874506 710484947 252700836 817347731 976986898 942577123 785077097 719836646 973816833 741621673 94037103 586039929 827976913 325988666 911413301 636271209 793761410 869709090 159859854 895230425 605369158 370388624 575715288 183633179 953022161 184276807 861030722 402343523 840318285 466381894 434163526 942495327 983449103 262180628 989214715 17725155 926300352 690019327 992388401 201551328 347184609 906004540 226342998 14813857 839017781 301794044 607321156 772800692 14733806 295827768 613074145 273313269 183619056 113325441 218973986 636545441 497685804 9245812 353816409 511366306 99716344 803899832 635937178 998081289 86974209 536522756 15182855 798121882 550232554 1366468 815327176 982586668 334836141 587025033 459495860 443915945 963281083 904647041 910062412 831975408 442160744 485282224 483827120 102709442 254298875 352443179 379813688 164584752 106738990 402956141 541900815 630535134 599331254 27393031 122896453 547337623 674981220 637119546 165268138 895014988 849950092 791907434 327487406 196531414 682451211 947543733 295039860 462881127 559528593 225031414 990680214 91534602 18087878 253341700 261341664 847767139 156910642 263483123 2972722 960547340 470672946 429731478 457604784 909461958 869377972 777039089 439413777 406766708 994138726 169095738 963755223 118991583 105888878 907974871 989798234 571054360 924602806 336800104 663843265 790461501 129136443 144740882 767057031 211969564 556556158 301651964 738668755 326758129 437109390 291789514 48750723 497241651 904484001 951185144 938440634 669285870 466304194 381523499 802114689 807065769 41453253 160810302 671593932 944786379 771573030 288307409 948950101 842606904 385591081 441378564 749292366 283789820 740172414 280221755 556056772 344380404 114740302 801566606 80812442 274212527 783711428 722428686 107767872 367625690 776262091 498071753 383780753 889652598 128664849 228873104 9150284 294189209 181335979 671476388 644655701 391990359 770456040 449047260 943675502 442351446 706637579 363256997 133680022 742648474 190028706 361085114 930433279 469266982 167348412 775976256 919457131 160408510 718103752 614486530 360124718 501493891 797448695 401188660 815897909 474905395 68709926 902698948 334300240 651293738 637416517 660175276 920820367 199244589 965978512 398403069 344285722 768746526 769319457 773505719 550463409 409340688 64730743 697963052 863553032 782181731 98150425 751343305 286717042 160703290 855287066 296265322 159647544 905655498 863220039 995750931 127821559 663545639 605079656 872234388 241483122 108441850 692677304 450109100 90575153 851599295 230798692 437394084 959946812 470533973 379858626 124983049 566817780 799265486 586984989 885416613 51536666 847111772 740691351 651553402 872952689 807918023 285142139 704583555 519866492 13583817 572766522 102467422 958828078 828240202 958637922 306771072 251887356 88561339 930101426 454453905 953504773 617891749 858446372 315638728 975804161 395674550 982341089 794342063 771536933 740389673 817126213 488714168 568138185 18193465 435318808 922791600 607222808 74175719 648008190 563207654 652580112 453869393 442830101 457811968 43822321 865999271 132315265 824895831 514003176 291889842 67646107 342830399 75683601 763393347 218518204 822004325 342044485 44877006 207254545 539847150 810503101 557073662 679575079 176530217 453879975 405261456 606593216 867946722 567059980 421163605 426907591 856097618 183146381 63293291 357386212 42732077 643616400 420770706 593776680 911056478 727800476 420866951 127839755 239944230 123527075 448432427 678834830 88708550 18877890 171259778 871985017 271382467 124460534 412437556 587891520 687532476 23940931 984384852 331325372 223812406 572645342 889707769 970340804 275312795 673939057 19348167 120570734 478972869 15029140 349018587 355491158 403134200 181124505 746591524 274238102 558023895 11407640 265135466 867956368 394085450 443358166 782227301 855317519 908479070 459419192 374803309 838108308 749934403 169019720 499112384 877842568 186079372 996495699 501120765 113444461 703760655 426155048 219866452 545241267 128402478 720337717 67460178 100789237 613500198 700173218 994135292 604386749 307593157 853754238 491920555 215436298 421152327 863966479 859621207 190873643 174712497 784327399 240042755 980562063 274888590 56806713 57025449 816678252 307846834 764756523 252407099 185845058 711780772 947945612 702391093 526092311 532710964 257612570 429867518 485297920 984924948 679625220 65501806 581335943 20207075 382732733 276072997 552963020 112166519 843946112 308429031 350033018 240273616 605969028 933466046 649592287 507860330 774336678 987006750 169596632 279796269 251660471 223347796 241798217 394360471 936929836 490044779 784092295 379281019 298305012 703192886 323989371 931400327 488375276 235414994 201336170 219716019 761213624 311614396 501373960 982060766 779478577 591610266 295391089 513912265 340226051 620142483 712146633 461421208 427009868 544649725 172271280 652850379 909591585 776291131 196065549 176116667 983000553 367246688 894461164 911158870 610065958 991894539 897963741 906780236 224479801 630975747 195210248 371038994 218876870 837920534 692784521 397895960 588321053 334889819 439247767 44138266 809192926 581164600 651862722 377458916 459871074 29584630 594764275 242642059 751281242 568448652 770114918 14349717 873187460 590722049 428454290 799620930 543425095 270354407 999461109 116910628 125600045 415017730 721727935 922183111 697228329 244430834 434325518 479359444 133312671 567404125 474507242 627554978 437229994 439974794 637966352 274956692 690902290 771294448 697466441 81530682 472639182 173474579 106417776 5225347 912058251 583348815 438851534 548578358 246940748 171148840 548888098 73686691 720222297 638558274 867389685 109146155 262395284 592111357 329520617 732281585 319450823 503595840 516929368 741182517 136450122 5977974 805149190 729734920 377897216 538542228 876505308 780754048 627583121 190557454 149335979 187766011 794090786 615996420 242679098 141762126 293645796 449955013 142077948 938718276 829113930 638244113 200342034 992606850 885773601 506797427 109954734 665279209 609520059 239705638 159622978 790684824 805606845 581540372 228502337 578090850 313581380 682484739 431129284 5282275 184512888 951880677 545044810 553849444 497517431 298018265 675747582 977645458 822620983 265665009 940613353 180609378 222629874 479781641 89440145 664866721 751468484 138987793 876279584 263228219 711124720 764356095 468110831 5031233 537490511 751891956 834885176 559755651 209932840 685661810 163489952 359142015 514870122 979223786 818306663 316534621 532275364 373821050 819449311 293980341 507651551 245080797 712411837 23838659 252793097 732766188 624601208 212784729 762149547 874041679 623437469 75737737 956573399 633930489 595771018 257132317 792305918 864838577 560337676 124669912 443868568 946953032 393330009 161866872 659912544 462695247 954176082 952935409 996188660 451195819 422673600 251191486 765199069 893486804 920641474 755007264 710192418 806642623 718545812 725958067 263597179 564773759 685383884 480735225 745765735 933004974 45996556 809007742 785492458 529570740 551391959 335359804 68524609 63339632 980551413 655498259 110364630 898686614 876620753 174113687 416454697 250851120 18667318 652055343 185147287 164897103 8827896 264655703 513429857 1021959 655181278 36782043 364717031 13768473 403203879 522665308 203666695 617671051 251755307 776946151 493775625 686622039 840567871 928437181 267209015 623623139 418088103 851903718 451547232 63262470 696548479 751143808 698344439 195926459 262414878 350610417 522080588 286404799 546692430 272490066 658086117 941430723 129654969 411824017 315248248 253514511 712450995 919955270 382678731 276618508 540806391 279282850 689104800 930200575 916060390 157298605 53721259 908488099 594369990 51244733 905517063 105866240 464652218 787104738 271318576 942343813 937902377 112969501 556532946 298682926 519829777 788196509 785554025 211758549 140079792 556854644 146761773 265112074 955671039 78528853 890157840 208160846 63924859 609706068 423031386 676197427 321997297 18865621 394001372 493824064 811396390 930287906 16167005 459499755 262830598 397961538 637359404 450329260 379024316 60831946 164345937 111174635 168389745 870366689 226447857 350097505 135426060 408432332 350126506 90925634 750393479 954811338 110021659 827767104 220138882 985023759 822071585 728555209 537851555 272910977 158196028 902002429 740409606 212443420 382145754 661189429 238337838 971189448 86616243 755968660 982265867 119639099 271977019 427679420 406733073 195476449 888201035 342050553 330310671 435315404 445044533 618023529 863032232 403203904 89388557 342632423 832493131 430999592 92325174 714305874 77730915 559159820 709798523 215942340 764698593 442310750 514191695 326862933 541335445 885871357 91390477 72625145 715761359 832059276 185117278 174736375 518392485 466329192 145527808 990981137 47613690 476424585 84366497 613078347 180478891 151675909 153730920 688506596 214424862 833049843 570106133 259418270 266613299 497925144 667284952 785709829 228652036 591606919 90431539 993801937 223389714 990531994 323533027 402002543 854008608 537033616 110181123 503702737 993660589 352241709 300927377 699785386 943525654 390228692 910791903 869155709 868347090 458009832 956681318 683667973 764688689 169596422 657159606 211451436 142169438 983881146 411459072 482194619 102924487 217549245 716267742 700469425 121329253 649156773 792978111 604964474 492237350 232692749 838674860 98080760 229161799 873613456 635902183 114887319 262628945 109910304 839799777 676875564 710658972 156133627 677171517 361052192 130119905 664265214 309906264 482571857 383036454 485737519 896829009 968382956 958574278 790693003 949798279 859549593 161705100 985882915 63351011 753950167 602004060 997544164 850570280 692329400 887357553 954376381 992479473 248613989 738709640 952178868 882128329 840653473 30028625 813489181 875157480 657889200 365137916 27706944 396278615 314210071 511661883 40731819 803705983 739389320 222735150 891018370 157731458 65173535 848913445 779327138 565604130 793765820 876148659 872483774 321990894 467460378 922584889 592556820 176586365 681397715 498532820 368756945 226799053 19297478 9316508 713826236 868884478 289128905 107238865 91772730 773192251 796418041 691764664 647103859 413436376 948732082 996779943 904135256 809337119 306938622 30121144 913337623 240809777 148080708 154941847 158867850 956376541 252725687 45095959 5321863 736228328 957064554 257119203 78294830 340773810 838361195 330574025 408291964 217818117 9635604 10394946 651214414 640080890 180333691 33570006 283304191 622448394 271772719 511286134 130586634 656813374 384062049 392079251 2320231 559916365 545684775 857272020 340899486 548750011 259540587 130363466 44443586 389150965 33098243 609168567 845411793 582002621 886360171 612785061 678127896 256688625 64828915 167376293 241591969 700659691 486893077 474693687 77174136 80036920 151277712 373017097 451540416 984696543 374521904 720342905 465462215 516748424 528410680 184940074 749039367 363723347 1387387 924011049 182087597 377453336 50293730 529429915 632026205 216787808 193164840 281409797 405213891 797020543 76014103 6090720 743342567 894731229 834424981 6879912 384226352 286261914 90880870 942714233 687666722 44604385 181235081 859917147 465541519 490409009 167192981 232617189 900963366 147509417 860694985 131409265 736526592 489657294 838337203 605575638 464960320 848424459 191225610 27999916 939128850 712658479 630446891 716010009 695107740 694594308 845813817 249742674 379045738 506341570 186166514 273204654 789530613 264644412 16029093 31103872 694663752 675726387 38787131 206431088 991938266 137599613 297005657 673014983 495767986 757295152 337824903 763845106 788307328 767204640 958102890 855146887 269531613 355243470 62214196 397025683 198908130 447888475 77784927 912456108 873195034 646943337 47403591 611538065 377479462 609061560 862307614 690869174 21448057 227473513 590530773
|
|
301060803 426080705 488446056 456823576 4571594 142209537 647509333 834561599 350635280 57972844 88076486 555773103 369520909 232753204 822336926 470759837 20331126 548754907 490724690 556633189 963911327 743818859 334434385 257348553 715420587 774274491 987404101 319575801 157046009 784586415 662226801 943560924 338632048 827497781 659420654 408079912 799045735 438629249 49989984 737169456 350815678 239858116 172681207 81355120 729901885 679018165 362472064 577485398 712207909 877374473 272396732 744266545 786076424 799895878 77708499 776563307 621763392 665098710 625248978 367007738 33893062 307886921 756072702 964144236 1623906 787519938 519266287 846406643 296334052 31979824 422306145 939900970 161842656 920707747 170609169 843589665 777892717 656720121 375012492 233203953 284567549 920156113 919167611 283820385 968910822 457333780 970080860 169595587 295228889 746293919 291640020 966963689 963694196 152582877 675358586 933446466 918508440 434708707 609807077 867972601 470852282 465618312 289664273 545768541 943375718 975723219 17083198 418812829 989963111 561116756 983490791 307824167 491400736 144807270 421983459 768026271 293174472 712738781 229805208 748269231 329811328 941387358 443901608 939117425 166681947 818527586 796101388 145395340 366466903 158069774 758773682 492589882 296239157 979343477 444168540 102230216 332929622 936170264 601643575 202256804 958553456 807211874 221102797 403436235 66543500 510647797 639276429 443295030 641772243 332161383 206741547 407106356 56470015 601938475 799727341 452459354 602725057 62151877 394244960 309074767 524162497 10231735 718588484 6255393 645129464 110651058 884533419 409355067 504448385 130631836 710451373 726290880 544940616 494415296 820877430 398760313 126010159 914016013 396801581 713497324 780297126 801304821 35752546 921026431 518619710 275316857 628533493 710817576 274535906 817815497 238054910 724578073 644876668 576167065 601910773 255321480 201126198 225855802 862036278 30991787 112390908 548318060 386433107 515819151 827222164 58476368 432872829 709667720 404679309 734865090 614513819 645968976 574522235 145738684 93225671 477143599 496001643 293868765 378605371 951820471 149613754 785077784 948721132 890159255 13385944 28817626 144523128 84468134 782533554 814112685 843855975 528679832 553591004 46447878 507627045 585078784 555945492 350755466 29077369 657787615 90048008 434177892 996780364 491605925 853912951 955008099 549353241 41541627 690012879 467964445 547411552 200967756 228358974 930596714 577588637 854208111 162896051 231370094 23867577 41898126 246842176 692352743 581282388 644448723 375361920 645714381 813221136 754498235 331747154 621475447 630197138 639642224 594414782 837442721 194724836 40115455 426490277 254706620 426463520 261532668 119185577 989257068 334242709 886919774 714230487 47694468 415361201 360176844 511407239 627375007 596336927 655114684 257799954 184045283 394981733 777287758 169146786 698645796 236406631 704310011 22026116 594912884 355343719 354766172 489386241 53143876 688484772 891044453 562054616 273248726 588385494 955646770 35120493 316673447 978749296 855392427 872361857 678032604 875551898 32652680 272829922 921244090 936307660 698487438 880867867 471683810 256530699 137437782 925921055 157224184 929528592 323430185 983638360 831367181 123631172 111451232 163925750 441835018 233839232 518665234 463200071 8334537 606731803 547223689 862227160 731973384 915271504 698557559 626544012 270005894 155401176 78742649 306365546 410071902 835916638 76707640 334178235 278733641 56466989 502886295 588341339 578412428 414760491 631596996 892660289 951144163 812559471 121051823 879396798 653359112 892851719 813459355 790326348 478843751 450075786 547186037 923516272 880284261 524890624 534901449 368018735 189490309 112557264 542874768 557534037 213629091 256212448 383739401 114849338 364576126 449585699 176873521 933942703 601354422 300999655 293941921 964505690 689953738 216649904 197660126 800472471 845961239 566198170 648798069 897897892 595558028 776447007 71939863 26851834 404193348 319194607 667711872 492271939 755368589 413506102 190468749 174386460 464654028 847920759 936748647 823176104 933865017 648385317 872261124 954488326 717389482 792551112 494120187 653513497 289178463 597017968 804882415 838440111 501275457 958611282 820004951 76763712 998397408 689985006 740590459 362599619 657458673 861544889 539800968 634372480 759415303 665130676 644807385 890202854 203427742 903856365 918330898 838190821 142768753 664803133 160948836 533684686 617897935 553321668 195278019 57237011 56332162 220908640 668665 986682955 842642713 402822075 104999216 137174043 753336490 713221140 344145218 393832228 544530679 692123589 233058022 724358887 301067661 984877573 873671885 869584779 649221480 725042431 301767465 313987187 431922288 640719306 588335442 861595853 218841587 102526575 73328857 916525964 780608169 474981534 551153741 764050692 162286622 900808553 471464488 176296477 742263591 635337044 261161032 224991361 807773660 713759343 552965162 238322219 493265184 450907314 674138907 47693632 501354145 418095396 131097125 41238614 848950011 455276934 128243645 127862816 361459084 629406071 946889174 979296344 621649397 846932389 253355507 293410275 305528269 189797950 706597945 814466354 564092889 848918243 172876748 439278493 861873432 599604667 174353016 55820028 373780624 873129620 983815558 977400608 924725604 570180479 222893518 674267211 469276579 504569160 746677941 823635554 414777346 684476908 474364733 534782463 579687716 712340595 203161541 191742901 220204875 608851762 649962246 27625562 900312920 916079817 796930175 660491337 639838892 79095563 147835502 218549235 405431020 745463317 249562701 713059016 885795490 982482176 523915655 213860560 883167884 169364860 930432126 336072283 134310969 881335560 818171048 828717463 335948329 610155218 862329238 566554311 966685353 791826094 610618593 809835054 560709907 96710775 776498361 111969230 528491231 510583286 165533702 793135197 705671949 82692606 711328675 968045020 920834385 684883535 221846755 742812189 270983256 636968239 279342362 932811691 251175321 304114610 548529898 71796471 983130349 679582060 224025540 83036594 708771744 316077583 504990232 875951180 295634785 957212125 890890317 913083200 410803464 796974200 726195936 28712581 833647803 334224877 641124733 620107934 147850275 9540125 422020691 941692858 585378242 706870547 259755804 957747496 852899374 821790061 960888408 954394756 86254560 479612259 466375273 344518898 429563321 615827322 796039765 876413488 953452797 97036890 331557953 404151019 816755659 982931084 12959383 27750219 996616233 537895559 835605736 290431533 159208669 1527834 713596507 644687062 674501183 523322516 133893259 738831971 959509178 31276441 962050062 372802586 109168598 593310785 46146569 692120694 495882729 981668397 621419402 384945134 7926270 165678355 979888214 505962380 627709986 904249174 40932164 508359156 554236227 923439603 426667998 350083283 337052596 674737625 610982641 128276910 13095901 318762591 193438465 55781317 704030374 797813376 635563340 727300816 990839138 97726830 792810810 438078365 602596016 479488922 176818342 868960421 414086466 619908689 354576626 490969596 272343893 177624651 62601166 414735046 477956396 839613051 520161801 483668922 293921118 48743980 505394601 829516254 813103114 945444293 537529963 126256089 780042293 529053936 578217608 690386593 676510455 380382304 465794105 750694286 795871649 239417753 283576865 324350896 902095366 76679357 241289472 591784941 898320063 747717274 170047968 190652975 828759755 337395566 384677831 20364826 913246933 307125734 174772809 257855017 456909122 514017252 332803958 915946360 181240694 159145803 761095528 449510578 545415191 558683299 797981532 855865164 37053195 149577978 917862134 88940820 641690895 667320602 30103458 305030497 913215489 772955037 123745516 506685032 779102608 41863174 558665326 170315765 129838124 927495304 491423593 498300056 279369278 474189628 547897459 389024441 429010005 984601520 121802698 796173496 87398216 181676154 339961382 245270798 217870828 37528897 598975258 337751651 218833152 198338797 370495725 985661120 650488398 976764131 242509716 988294820 728051824 463898951 400107959 965813073 633067324 582648843 973840713 960928565 420391048 870361980 557169749 475847376 709965777 585018928 714709475 394989508 184246658 482256903 692189311 922375203 68683754 939768753 220240318 510268593 674034920 798005339 231298255 727535183 44277552 781247282 258019346 892045344 660739435 613899766 687027858 937796797 471512476 340691467 506321437 418661892 278536248 937131057 461363237 279302582 134189987 834909763 836087664 782599721 730047993 490155367 911638775 928828756 126001185 154683095 84494436 598099639 326357503 744470394 863864979 453422538 470310784 486073529 359488192 822797171 278965981 494415434 728769604 782325866 584841405 458408214 174986177 596523873 21602387 203516140 705861929 597562158 858129417 364451809 209382116 110569000 828819684 756199543 320831915 645281731 431709307 918905807 880832927 951076299 110849317 447139596 267294540 302948782 356600376 294101214 762925699 271175090 707197314 845663782 349904779 191951095 703428659 479558890 727108882 767557394 781736613 490609146 397596418 22564422 806654454 121072493 279441918 588297432 289919862 848709877 130168883 22737666 995887882 1504055 380246622 75147703 784887606 400054823 431602918 664350753 137192529 419929005 810483192 227952614 787341117 171214754 314984969 424580130 772507971 770060262 5900031 700052815 860483687 524366561 77237259 322407919 918260352 104233204 360621577 647801236 237634805 690081359 585988536 901058647 677390929 13141736 624540631 544532037 288534270 874776307 174953083 490293343 390632186 953082192 139121725 629882756 330884858 74457704 846724929 849351710 224190132 912173484 539416977 756155685 515531994 257948553 941330142 396794180 803919952 574573001 19226180 10028129 347844902 636745364 108766923 501120954 158017417 43131785 67475255 205733331 271816827 178545877 662226719 101285930 738638756 90479381 654439038 332131773 773377659 579831251 122178968 667459748 787050339 368918459 626487445 105930511 390750933 474145424 427076605 868023284 977378232 791760691 8882214 43251608 345818657 516364368 144380490 471614142 392742559 956017876 395471576 161869323 514409686 732467106 175438299 950075412 414429980 772760060 619370066 752310710 582232562 160604120 189747016 528441338 614891776 106801862 556171669 160671979 983027884 581690238 498456888 310001119 922052184 56021344 912955015 421429541 563689123 695451407 574450286 598047346 30437083 408813508 410824458 471745940 540606115 47758641 698117668 359581567 566678583 608501511 383731031 524482092 209307561 82344275 177846037 804282539 522228108 717026445 841268809 718545970 339517785 278992846 564784865 518811091 624834370 14900333 659009238 271422231 364488880 987943736 379851369 689620176 324794304 628797471 7800426 297739927 237810573 361277002 920725289 442760319 718345884 833750427 372657489 384827111 470348589 939218757 798911926 273904344 769468513 476659880 523530807 747736898 212180035 844461649 499305872 902318260 76994488 731683141 990659875 402329431 402995887 230999425 472816604 196598311 8547206 127582425 574884259 718108770 613122640 642064470 301674466 514298739 533577528 246030337 829126808 451666865 893199135 180190010 534390864 655044582 214206963 92558391 636656885 325327651 603560975 567946425 251561866 367390044 532973150 739289642 178192168 240614798 845224224 390805966 794907330 412467255 229543702 699074922 866818898 455920751 787342003 633655744 538976015 861077617 746437308 840826701 289215374 528495589 760613324 763061115 969347815 233078578 744901280 773923926 855456987 814256505 307589390 732407447 988208644 168834205 36863945 365856989 851045534 785453581 330137949 320023462 579407655 809580847 915435188 225476727 217710519 486565462 42870393 461676378 736410056 294765465 647048166 641226854 978553548 257074628 904704366 281564623 384999038 351686180 208964873 92737345 233539864 260424776 370772048 609999684 184348089 956433183 959352360 696407025 558223538 988074495 280120038 53007081 565302753 965140041 672729595 213101664 43909890 522248587 219868538 763002074 873504156 431088559 387948650 205782165 318222534 718796217 880946834 13448248 240711399 20513526 228350685 317136316 567173344 967842951 166909107 124266326 881590101 529542824 393831469 181862866 894606417 341591600 462976841 818193446 908599326 613494448 382821163 826378691 170258065 332038581 443415378 444658825 803550757 678647665 251599561 534440223 835634914 937122906 774949981 281393912 413750025 476066321 794701867 979844725 103980073 929888350 770599980 565827748 384550302 278404620 198504915 900270736 939737227 799813992 813961735 228415972 883940307 461985277 137398244 919807852 324254126 597402557 766609799 660437514 189490166 543875894 715495513 88193889 502622969 139898641 818964805 74571438 525224040 130619118 339633295 590486559 586138797 963880820 483892853 896413217 316610513 679153912 483071422 299191533 105947686 580989754 384405699 684671723 191679508 157716171 896413083 84196193 422932233 418716993 856620144 606190132 468404936 413037044 604405300 739262285 674192405 152323334 576753159 901046528 365300877 658218200 693967614 924775484 105427890 684296566 730332312 326413140 119581018 148173949 682513610 960135626 710154606 164763661 410098445 301014854 553723196 609593865 713355574 548961803 737436603 179473128 641888121 24222861 538000256 758660681 719139996 689895589 40727023 979238820 139550896 629570269 981745978 140521111 283532755 330188223 832012188 618495855 105695005 3866502 859220060 23392494 563472767 625260837 487291330 671898869 581593506 744067481 789891416 451783746 865831212 439103111 384754031 942445238 44960135 977069983 747457467 219812135 567928715 785362889 255696195 702948294 769187923 813087836 331215590 817760503 613091346 669252021 234747585 152067043 352658161 125050515 662413189 656219093 493970132 803511637 133379876 547391541 823984377 532415380 184091603 593531238 796625289 857519914 490882895 38726662 523633128 434232490 971528893 202071509 80843358 778342263 177110060 470103908 790479711 378427487 762496536 159491733 689404269 646057454 822707002 776584490 629033032 354788051 94077837 70114304 715846801 761231491 806028204 680650638 636196135 484765425 212143455 425809603 207323632 999742919 715467394 255235848 532213688 365673086 500615405 679490420 40412370 593131152 110555004 190902637 783711497 627376228 326956822 395908453 469506942 232249133 429260649 308284394 220758168 714693796 281635290 717821292 474873353 776150498 171605204 527807797 481294218 848669170 944378695 127600101 694775952 280939690 870102167 762055722 52802831 503095013 785914840 855858718 913114554 750950086 864410956 416799173 335353220 953014677 923404930 576241573 555048542 820153078 30542777 89742409 747382271 147629711 784645938 438372191 402714735 622741054 933374086 552941371 11048665 255459129 823529575 683967666 15241170 491188465 424299180 958918104 528911022 467520168 551393696 634551145 687789313 665591707 533476857 461086659 43331620 628458296 99551631 544915327 860193334 697992772 5533911 690561034 654416139 46456551 476756340 899795957 311722042 318814321 874554264 657160598 756067517 135049034 282395108 746580429 123316065 524722649 32115450 564426628 838033798 462791505 639937792 257384095 65195103 130142373 752532413 648985389 911774832 860592269 851926096 342329492 355866818 627894922 470333865 363504646 442825836 978896881 294133206 353054134 489859610 572541662 497004745 530219054 4639763 938350815 505656963 673562961 99012927 469845019 592535592 578672705 777311690 943504789 171077431 894908700 130045457 497061543 810486209 199152055 724208172 418711554 363752240 832781240 98060735 972043076 698290386 828089737 639643405 808098355 343861710 101476724 279007656 136007129 209427362 682768251 171974761 182592973 493533897 785681788 205676193 784646867 548554978 244103317 22421363 257647260 216294612 748411062 264854657 829233906 490349059 102009528 944306181 204762861 142035776 710146984 367686244 773755981 31069291 808075863 392759107 17734148 997464145 987598717 234018414 660612661 955183816 468226854 346103355 639629347 129317344 531477427 273509097 540257037 657423413 468254632 639947347 688038202 497869704 181937717 743906878 432717917 361612317 233808197 540550790 425877708 766820089 982186294 168753610 899810742 309778425 94186149 91975855 289861290 184684990 780056266 985123520 327853292 392716004 9974860 16189120 345831564 763871325 510829663 402192444 163425604 345152777 128850761 330433908 319237763 671968612 235925123 660708270 653297197 799996070 626800504 576929601 11061995 694700450 297965296 901654219 469038530 785054977 979684072 672090093 568121039 275092580 448726358 344798448 346407284 94255012 573621013 738003060 994595708 306008970 541847674 720276779 365802845 387467943 346240983 620693956 687437715 651072993 401650774 206060694 55267458 270214771 574060353 238527660 316255481 503434008 786400577 926055299 463367225 616356146 441665074 449627333 411280105 436041838 788963258 211469294 996792612 186502432 411565024 64097620 642505601 996646095 845477412 12928172 913586298 890158219 971667278 108035081 96693771 612969168 909108204 250866373 811923365 892434853 166655982 897896062 967202840 33922981 98182525 432311478 35077679 374288876 797423396 257707601 846805700 796384872 814565799 916640176 127258545 939187196 279878747 887163260 91313652 671958392 115323756 318593956 193719195 885907717 975747555 962591943 146464012 193383036 693921248 800440875 755632357 908749642 172765478 844051376 861887623 353660168 328143952 255866455 771742962 131325535 730059425 842829621 187591263 129774914 194746734 326185853 256381515 859756332 999342747 881890901 925789446 87163921 625864743 299240549 742291798 223787076 391051901 111111607 927123553 749952919 442835497 902694571 894199709 85915914 50332393 903186877 741304395 552695514 925526863 688034899 257065216 233292576 36775238 450531013 399501879 622031396 313983064 664495556 136376360 616474097 318947730 108799199 409563589 885839943 461421635 334774422 174732501 623271123 371428179 735955351 569255882 357466082 759099986 341789632 947717596 297133772 302726262 171174791 23037370 833430978 651019116 469716645 113511263 188661044 991993010 58579011 447806598 969729328 67216152 657597288 135774194 18777517 104956594 116990274 600535127 255678825 175541983 146570987 595575123 673646934 776745490 598569861 663572838 644495578 154198150 995210117 347386053 42042234 225974777 171629230 586801105 660090483 694664387 634953886 796897554 851069929 907375024 960978046 964234038 297724928 520083133 328579865 965808045 782020600 890700528 594193960 563031810 236516768 66501350 210907187 830776017 765907786 763841736 961548575 257382332 448864647 578749385 263523348 688332687 230508107 815985056 546546766 413803293 240862493 344307978 243533703 256043218 320388322 616828241 937613520 509161528 378947644 49738187 893476108 846700909 732198739 167284948 625903643 989573675 868278013 617614364 957593528 188861826 948895484 112329225 456874295 126261428 426899971 932053917 416926330 936588233 853221040 201344860 735001223 845916334 780469826 959958638 179302169 545950700 825295738 969379563 975581752 290854996 779441261 534164060 162962327 616452537 911972368 929358772 178751025 777281940 272746598 76035004 273461126 490983039 959680256 843277288 844624394 920807963 231080931 598554159 377696730 978423170 349348767 889957699 732910262 851941476 537883225 974613874 554771187 730394978 460087539 218930009 545744000 798560603 511093619 493292467 183813985 357187211 370969334 942704876 34210553 584291485 113819104 971535959 474037738 413727579 421483092 835166680 249323364 75486893 356436093 27346589 265312253 843652102 97462949 511764498 275561106 217298500 994450657 948088655 131055432 873779672 176472965 665617879 92348516 696891807 940257581 769826654 722413387 203233221 858530234 286084408 996693929 30437898 663881118 275304143 498183069 455489173 160451607 140004545 838397208 685907363 67777744 773501366 353686784 172062490 769047483 772816280 404586764 326401067 863912520 29333114 273177951 618804330 282064826 250515669 191244619 940136500 81857372 940882134 199049119 678730552 165947698 292088932 162358175 839528233 815804626 417303846 571122886 921687082 281664834 804523567 950833588 73718950 241414973 704464238 370979216 189970036 938486121 602155152 238861894 171273193 492108521 448724019 452819653 496505219 419716342 129797576 744529714 923747307 865866336 647660719 892076806 204771412 994756664 189423896 584901947 945022959 258043694 886744510 678241197 399128886 870141667 919891121 995354103 249817372 587215402 429273654 473478407 274249112 63671681 311924293 500001406 585177129 999641149 269194607 489299245 332843383 733734900 825712713 676197913 941189571 371793127 660825555 543964817 405101972 760519848 619719462 102780616 9674160 994935707 845483690 856682229 4420592 872474046 335863579 8030303 205627154 170199020 274928729 730851671 379433648 242676035 246562880 289431839 778563522 147770000 805112658 931669136 743402645 550534691 208355608 586061443 497430090 590431203 563783005 26613577 66313969 548267313 541124101 641287918 142255560 420484868 808818610 640937630 158008096 632344499 478214768 373093289 211220211 198298869 109628885 81646264 836187289 717446665 639126288 151255429 413275831 595702946 297778380 660071458 58827874 166023170 946282516 294469145 636249669 450468195 425806431 278128825 386432973 802082690 984234709 995575189 993479112 403841952 755134453 697116128 858044872 328044352 645561211 883980483 429610015 451284174 734487237 418756888 145178792 265480366 695859410 66409727 334624589 419284448 949465666 342480908 407795971 827964889 486680161 734608302 806907574 293830751 358335727 707679022 189672771 277994020 987166851 229073949 368714395 318633841 989679527 427812207 542860532 18934119 226405249 562481658 570105632 728398391 837915187 327804463 631944950 424851280 490110095 594552188 220716529 377297803 695646694 783592033 216103570 849110780 815041225 362589329 253694494 597884464 164832655 683229940 232084818 284447675 643259840 932761493 936186513 464309669 99121266 490387216 383126455 599490233 367202748 402947062 323894892 716646711 633381885 619748371 742716208 847371584 373315123 610658600 798051527 470638068 470994727 842162578 610109906 469962162 81685258 663177723 397741604 408313302 330773537 136855535 865586885 715914809 963748352 67202922 982279055 47381089 533753927 375331430 39610457 12600887 529883795 122097610 757047025 866286110 616008252 692169702 605585824 511299745 147367735 226871737 459252932 728425302 390956922 761419513 259088344 629271160 713836803 117169248 338434284 242382155 333661253 33776035 183342383 954139738 299814034 705898377 25867466 899731097 246596080 700777466 922447550 181316658 294395622 280117097 44706117 292066899 770873061 557798210 330451441 290550963 789731314 326401704 211545256 632183191 570591844 836692399 142990141 889139583 28422997 174913182 243366626 710333011 205737842 322073585 4315206 666483660 617728580 261855802 32695982 217029020 171880916 218846497 48705773 495120006 890931849 926968299 711306529 280393288 540640679 980872196 45414014 812023459 611426721 709937685 622631039 207495689 537209386 517885065 384405246 125098073 237802395 168515676 681042417 660932394 452565794 407884905 194371922 466333875 802444682 585176558 839878965 5271217 653826176 930952340 158014626 871272082 431891827 489927786 141238742 20174295 514822282 763540974 731677761 513358717 267213929 367933914 485168370 821372162 700161518 921580965 310907350 292936315 715185280 752938655 984862885 832197716 699909556 172351371 695343107 680377392 696763804 963693028 449639681 817758604 936145390 914309445 375175110 502153839 554111802 473594391 370120119 323123175 736990852 649796166 95818051 129651550 581675259 672940133 821478179 165971470 742782915 578485289 209859495 66012141 751553473 502556111 619138050 257585767 523874492 963641068 104593691 78882412 814823268 246108663 521175725 166659229 595798332 299973839 891074678 646602842 262342942 690071132 727521626 722671186 635803725 199519005 128440875 446159404 40344941 311668403 978454080 409731473 397221188 850455586 988497680 33950360 586642746 287130514 601525171 210465798 914056324 145942389 983000904 192832488 647349167 446284720 704541248 637191947 879017696 202199474 504378062 357704335 823686170 51214879 386455991 788501301 955397229 728750838 165409245 312123470 186478563 97626406 301946361 831213651 461066212 601777265 277610899 276019944 681327057 678214776 653821149 285058370 984831247 261202808 353344024 737755797 262982842 159161296 108184178 222486649 786691849 615475966 866414263 911482077 828231039 68625030 348124298 768576743 178078274 690056419 568832426 941840673 844584003 991751539 54130188 223040919 945601932 496630331 386711502 443883006 858513370 556437682 999325031 769636788 942142564 70997613 143189948 882778038 85546798 783084603 742834740 238227538 858510149 512183912 571365595 759130369 680111866 366696279 395687346 546290611 23767798 421190015 470335873 756996988 436650372 900702234 653055562 404222970 660764673 478854704 101602699 80318797 939721349 711981809 713355830 19377326 443490636 4072159 568513417 162372844 516310520 810675477 218745632 931548316 729219568 374228013 121410489 870794803 127691327 977875893 468117334 986680851 53817745 388728788 577246431 717162989 657548699 833044226 872462131 33722550 875779552 117733994 752935469 418002817 494012316 508924406 152708898 917591766 554136203 402723519 966223984 502407046 729653611 485970880 674224177 24038546 232985068 791810734 268549146 785698262 50418483 327156388 594291412 89865112 955430728 658843647 59977008 629884611 291705714 198223415 655159166 874262665 155690997 194388537 937570600 951144098 96898716 428934741 385746233 713234573 976390611 22572533 347048136 221725897 846800593 80410471 391088636 998378793 8982344 741633087 497670766 920979115 981932662 84173766 637788433 598577824 52439252 790178873 596868978 270800223 523273172 262147870 388379163 810669744 656727009 377453726 22743252 716821190 918076792 933070802 550239130 251303164 442830526 565650584 804260170 140660101 817496906 930863998 684499258 77856659 968235799 110886405 726399280 574533375 871088301 51217016 654691296 874353532 727951474 554556228 73407399 128463580 742050503 330711481 930406438 544458061 991945267 503629916 31918660 377653326 997136594 863986562 637170329 227912639 653690963 414758694 243248644 801584455 10527877 533450236 437546129 611014969 410041322 812407837 208895757 725940148 194299317 306298799 550036906 208416022 585745563 306058068 944603816 613622337 43632628 806503633 914074949 620629930 655689677 4882941 898038839 951204710 258969923 632964728 156253093 952414701 839020045 460258921 320942294 70540687 301120189 165066147 828015430 654147872 255961749 819733890 626414013 739568140 778594124 43536536 951125627 893788199 678422237 551869906 811937367 701109744 923825816 765749014 431046349 351198633 388765716 238470913 708918006 705964037 842864852 698690777 698345255 919866197 565649362 828282318 11597894 269804460 676315093 283552128 358031821 100326427 405549945 226017123 524365164 30753486 997992171 926129708 319584335 753634441 439422681 244598324 943179404 894816051 83325718 30334323 802049851 968286242 381146664 122429208 18276894 422062534 122002364 594662522 443048798 719670498 518944746 740054065 1973506 832551820 297921362 631229365 262642277 944315676 820625532 197975193 193822232 73020023 899786142 873864841 852920594 541178640 939091010 282105075 409966635 470117131 661457569 560271789 668312407 735179582 841154521 613675889 125986924 693636578 26090579 842599215 129073049 310242381 582046280 137085182 21675757 936767258 555965314 113582369 858261744 932280986 581485372 420135379 969016342 639440220 948860929 582145162 73672804 510820791 524024860 331814783 115235239 622943658 217908003 522331279 5951668 294323907 709989274 775541212 444410162 934414507 321726021 544218639 38610618 44552284 561299974 527169096 913844571 34484090 907859412 810221847 96048203 274456474 61195126 455408995 344610328 933573039 510517462 448615253 671404395 60475096 100568804 844202293 952764992 219593178 434822528 314402035 32682400 322305524 755108156 578206046 137805210 644866338 69190576 943427454 881874000 105734514 273140892 534417860 33634474 501786071 370705496 910606944 959754911 123180437 412085065 204107306 843283160 648861966 166345394 105046083 493390670 806096291 519398804 675866488 88963019 618501849 881078216 579780963 406973800 261441085 111690505 389134433 183355707 1282887 870492776 341354042 743689519 71697892 449351492 605278799 702633595 491256001 571661225 419016034 527505781 548564705 545583375 699868049 946066830 701152126 427309440 824556530 975067478 232809932 360247166 636380614 529382402 293585165 281688246 178837066 775605601 238021268 364690571 481937923 508622956 658380352 332498212 419980222 217127358 130080927 741354402 707947211 144757874 85033800 432462870 880137764 462997 333611595 649445732 30217854 733028936 846253698 176703896 213752643 223752595 488869464 683162090 610351457 970001370 935961686 552376062 732722229 20624874 47143090 387007464 716212488 916405663 320014722 431084491 355753873 654432378 328484200 859724483 336470185 844262518 570319735 92172342 155450160 983937584 50310191 614523068 128097826 967622377 783360599 148091116 269795961 934788613 920946200 111397205 540552151 571565505 935496544 974316832 323999509 530708283 232202244 357021229 741890708 113855665 943571032 783036355 818184883 628553007 957875447 620851268 866510846 872557835 522236532 758534300 145399584 525218063 197992703 673754321 330950676 876961600 807685625 970253794 328437507 201562859 669527221 457540862 251868277 684170368 798262816 754624105 770031818 761349774 784922713 494770504 652170641 476155206 541099067 329532044 174993458 82443804 33172798 603969460 770465396 206466471 863156406 156710653 751541541 972963238 709282959 540095649 409267554 271425318 606669164 845039826 236704097 310293435 292337707 509769436 381740416 412954540 779975640 625236617 945845160 210839254 250796892 346209048 885671320 947344739 948799608 774934974 302542214 619154017 420983141 672490260 351642182 913887209 906044551 219902691 220952488 993582691 575040669 374002438 354957018 516797233 685347930 637274975 811799137 158162080 968473370 73955566 189305111 365835710 829638458 691366447 985937661 488664563 915949814 640959541 377572076 70594470 11616313 306713656 946141106 937981755 749262531 385985007 239502730 79697185 669833983 765665271 682719380 725170307 267325450 848085331 93315129 442419446 525376389 371806301 320467470 392599623 487848366 363290563 341837503 483499443 385629680 983755567 323785826 214026941 480362054 767524895 281799997 912773969 824878325 553413994 269880903 617419737 310218501 126585717 70664723 493112100 410034272 239227657 166072528 442017272 275636395 649736632 364440034 995274684 41397660 672601687 326912310 906085649 919425999 287909668 98224373 169368617 547239589 308517350 369598679 973943360 102712478 593877259 168627348 744022483 884127779 847663845 384407504 120530269 689426799 168069592 57055153 551586192 62690092 693086873 768803777 339069129 796927103 676383649 511102349 614126313 439290178 926166063 384261783 502985107 161202994 467966790 611232527 780941513 318771005 836165978 657283613 210988967 511384758 213019947 127054061 875834195 262766187 595763366 295143919 771955492 591622669 109413687 407395122 452060004 862360487 827222650 572904192 943267795 951662338 299667411 781171495 701133720 649346796 542997298 9830430 35217411 653906651 535678203 364223689 55700705 394282157 954204502 333355833 54203523 816045318 143348376 604280130 412562591 488667959 999104434 208007306 482399652 745944898 382229208 330504279 167705568 772065312 695340104 945613526 902939923 27063960 680824580 524185320 526392298 364681437 387395980 731813701 551231805 128026260 889446981 334632288 904639182 484190233 48500759 935854590 156471709 682358735 895457976 536585763 139401087 603372958 213732639 142664847 208105684 72298984 763999908 700847747 843559650 442514630 40355413 727509393 660783143 437515009 855722004 350209944 206803079 326882141 983348421 369121210 847104809 46558994 138948839 338815149 733144071 701199488 481110562 60326285 40295461 115735768 86940806 589315933 974073121 219256258 223769240 534698621 568596842 400995539 767414042 842070228 197341145 418998582 716384842 291805963 974435432 656323626 743184823 734716713 348398026 932383516 56219964 108662030 484063020 823992215 165944702 767629866 443619212 569927415 316334414 724428792 103990944 608415716 479000386 945675716 516590063 362931572 74575659 406075910 203265369 764554206 150817261 134089285 768795049 454155619 186519460 547650434 177690887 309887290 68620059 778830767 82291390 722175815 845186642 26434221 142888009 308656105 380184903 777846390 905473920 621217478 647330613 455109272 328842279 910642642 865590380 393456381 504437401 578610665 390712748 912876448 856422836 5749117 615216275 737585092 634352413 304326483 129474676 467153197 904013163 19785764 925788200 405218775 593571107 268337657 251838835 162763469 534258675 917729896 61621374 40161907 687099336 85192009 468145337 340696947 259966685 882213786 116481742 60307495 918365691 82279578 210403386 663607029 78115361 289386392 68087158 670304851 607027244 335481981 296699098 629527445 193245328 687035147 698062458 898693184 661436165 472915943 410382155 303028576 20048791 173867624 75170540 136814698 371556042 15675329 417788684 136838812 136796649 86742759 202011783 558750369 632020073 319405208 395504358 493226652 944192124 432040932 303978226 90610408 716563385 298199596 992492866 60925981 743232175 279714204 103617323 395695204 457631486 22775832 768123279 780595544 597695596 513308987 965461638 69623519 791105316 269276360 545370088 11213383 685646212 861261348 924322874 838743750 466480719 294093824 707628292 751395616 814734613 97122680 494396714 108166929 519595980 97947283 145713729 501059798 831086311 865963377 794832766 148112747 391877749 170293235 916444179 405654762 526354411 54532476 348814355 780809841 216189685 511492709 662187383 839634237 29241767 648317005 821149906 360324271 509758597 963880285 80556156 839099599 384789896 715573321 799946176 982788914 580704895 610676557 679454392 764592209 888870956 393850232 912461382 620807974 244445947 62703648 301075296 855306421 535639279 396971655 12370364 678718533 78216445 918479261 181711799 356701364 306087345 899805454 889308403 891039242 110270299 558680590 46539365 800066415 736073397 786183392 113772322 307104259 950068934 236666450 977274955 79906837 376091672 151701503 584941237 384545381 592276111 948990099 116965344 426744697 417250625 613870053 409451482 653761316 897663943 251926660 595635881 821685106 662142017 222489649 843701243 105307260 519723550 825840692 94105795 646336068 695550809 616333644 441779562 232594534 173779306 333719025 310299801 815590146 109683758 604599850 484315386 44919068 444879751 690584663 464807593 728424492 745091030 204102101 295841481 298049761 383882041 480682765 627907847 980418694 429343259 831082233 42167454 355353012 968679110 832597923 654572159 760109573 121824650 302238878 259486852 571425666 748953067 149025759 253401848 626960003 881981528 304329481 871935783 206630082 937607424 801842357 932072069 862978134 397202103 657257786 771524343 129065844 848227927 47349829 548157193 58535814 121255244 955480247 82148289 459465076 98789693 91280751 541202817 455954549 998763946 646649180 672482051 982502447 321197531 750430733 187074661 862137270 663586507 631475297 366173773 371182617 702001979 166546040 534619202 145478949 125828619 390578642 892725465 880995627 298502070 470382309 311929245 945515423 366614113 874035193 381464310 143003544 414866374 762943288 453587934 122920548 756473410 93964618 540380009 241646941 928939415 292677958 472868247 23618133 244497023 453685145 981492569 136910762 758533054 199048901 45951297 720100663 56943034 825732072 291924278 996714317 466076869 833447835 189787983 740543573 349873048 422587233 817251479 73288100 167107898 220386240 584486919 988114883 189155392 816500724 162657244 647669303 955673365 677914131 837784529 438755793 686356491 244594857 75838203 692131271 467110082 318102746 777581908 993117221 483241997 848456070 304984922 957391886 540447978 916140596 68847560 492142030 500616819 116305625 359100253 955673273 585540685 977212405 495049688 819827503 115841675 184170821 412564637 267021664 9168471 514323592 668660720 953211297 552846151 995123961 931321387 940548452 95604746 200972602 268912078 80428384 178940956 523693715 936707001 429847286 198549822 558795836 253877005 256011760 427859171 293480142 785576902 95634101 868069396 267290764 700011888 664489381 735482960 82013497 526020716 904602578 673466477 734782985 386121153 252909093 270266099 963702290 976138267 206127952 401222681 22512395 663835268 242384853 972954977 180395713 854422351 479853074 49582962 495254895 240231967 114382486 594736222 471768993 509453507 276241515 449523068 289001755 435207476 775101625 281110926 855435291 316130947 917542241 241145654 49086105 988460386 754013443 409433705 684171682 495878965 302297913 991879346 460885927 697888882 695532882 863070295 752179878 975163462 681552304 616049976 455405547 739095382 699865386 359805478 521890019 875074559 914767293 298847179 472276583 73514612 913477863 345916311 604835171 215089516 757977401 297983365 944620346 658767860 841230512 576433613 969191302 742419471 564982581 71030288 320829484 779759598 787947251 133509211 137082655 964950359 73428966 981954680 372217534 560725582 231443907 253898639 285009688 795579055 505121624 482160653 394367669 676266441 320929870 215851990 286987542 18582519 214414791 79543589 531529518 46964800 472455694 127896574 702199773 610229320 294991922 467959568 71180251 312241171 476103690 122273980 781402006 104776304 565231709 241776919 152616607 585264632 555144269 940431085 505448301 51863902 610634848 696885478 816979037 80355501 204404374 309312129 558738470 559371376 522522585 522803372 18016573 908116731 752866914 330020646 188756242 901840246 290507394 756068456 9452925 625914215 799473155 180469934 540844762 753790360 191340086 787574086 52279623 67434871 415736895 304460021 271227166 939797859 594059867 768868782 683980909 563307280 609893191 209190599 559560882 59156919 680157439 178825842 455956762 951518312 317278096 430262094 735129480 496206604 124279064 826927029 425496818 639062240 479133454 429796267 201065068 691826266 626200944 47132719 501926172 378943191 10669393 547706852 984951943 835046886 544050724 736850346 303452778 921766701 661157575 788983668 292697705 756940805 292793134 365159097 468236216 459271357 272226035 24441303 875440482 933689576 320353097 237061042 507437530 858924206 485278004 52010262 88966749 930318979 327914753 742722241 724549218 940282955 37628703 675609984 624712615 443396670 374538349 782160189 966343952 161257811 720646567 91253565 440121439 389886105 466324770 696174524 281071513 846515549 35000480 391449806 877177824 688871863 569723215 658816374 290854932 241903180 596474866 994084548 205131857 462901628 883122819 508094375 254841566 864332264 374770033 397803565 251520932 397185151 462143987 656809240 957031672 845265227 883695666 959412998 398592758 379030151 868568607 353775319 95508791 489855164 557003777 486304815 515230535 106519142 925346402 760460301 469550037 616482629 800310346 612634412 50457681 776615405 700199977 213606749 518963691 876637303 846467824 829605343 978389186 860948628 663944114 512192375 670913786 763809343 858317424 658749728 945139917 970804429 4919831 362630745 778175952 917392120 406418895 515784567 665537392 211188195 837311692 877191130 326698801 110967923 304651304 760663185 70171191 658152349 410869848 120728277 77978533 693875672 398518026 297327661 846634496 187551929 875572863 319383890 832040697 318627617 422711554 847122291 892286412 166461690 694620872 701762626 427375609 466452063 308878030 603727651 603937094 600810705 772610466 321197998 469261959 74254956 639516693 232841771 841818475 48688866 358511137 845716807 950712117 25476914 51204774 535226416 714607808 465293679 931858920 117116791 520880395 635939798 598208633 507285219 929088025 581724875 393417769 497888183 149809873 794185300 216188775 17473968 891981019 577312321 957248699 346386691 109396489 530613013 842778109 314889019 283579579 902881454 73191660 237404653 12024684 174281306 32720361 623575845 491830895 504215850 516414819 97226615 536736678 94056782 94340384 770502007 243941109 442476359 492296870 196094060 237017331 61789218 385564373 930181895 57611375 302579305 838899810 627317399 985230703 281339638 834145500 604499587 16774744 149960425 226447874 359968070 544597671 37799402 660359754 445774498 226941943 382536005 77990925 584229181 347046265 847084490 45590695 284004605 13266904 671152855 454413225 989975294 923901712 302677827 512776320 443422530 183246339 161566165 756397501 665043805 678920610 409968613 172537246 924309897 989211718 595077323 650144659 782894995 509758933 500934279 776915035 272898666 603916465 927670965 916291367 70134248 235388103 147615062 196668868 966971350 773689380 80248958 249377826 321437796 375486129 242551272 95006702 285901833 363830118 565973129 479023728 108088463 154174649 257100697 309590634 512952580 744502922 827733028 525443262 406737199 637230651 716253300 975142941 172726565 790849297 257821130 912890218 238524641 915527504 509191001 662000511 146849819 794862515 247445776 851879363 378573918 378517545 442394946 724364870 220611982 695905280 238040251 783969159 645378404 830348927 722639009 343361665 81042443 990264167 787268118 491372724 341573614 343169775 487708805 605787657 650242683 44986323 962431769 311429826 488490440 183087818 88091934 575239410 721020962 595371218 664451437 783141670 171274131 811008130 709245976 182785321 575005651 224346833 653184537 429328950 708643444 979078359 961856829 420247239 655054457 70959947 816152687 466746631 733249222 844181031 742201774 259254378 747204867 238631017 302214239 874110560 743180527 328706167 884908346 654089585 270449168 678778997 309271702 425464998 103071150 939578816 444512936 883617932 687012804 503293153 271296425 713138071 45831042 515075573 58182034 194185486 59924238 11439240 47935778 482698819 887174354 33455458 177456820 962830711 912287290 587307427 427388234 922228511 305345311 248767687 395506997 965108911 195987263 122019313 384158471 957713949 709925098 818462482 6678453 801283309 462194507 995617655 837879609 755471419 437657835 554918398 84841030 401236538 998085057 988501879 384324783 374137223 170216230 721775296 505746735 929289643 904682727 102999395 205227156 695593463 685140551 661914687 499834761 632941603 314317712 150795296 293358283 520546010 711909410 762345288 307092759 283217021 107159273 262549389 383412886 781226614 164146865 328030429 889165719 217344287 44319432 851857197 194895678 431820669 682479923 663298930 540708676 251403515 335097265 193731626 113104911 944479159 813118167 60076170 451754725 285740066 508347867 846428372 804334723 756108368 626367976 628413590 473674893 372523431 100719071 69555462 508449359 635305048 691737138 936646317 256398741 466468369 187126216 369584659 656012107 889051058 276801858 929044335 887245448 490383015 729809242 359939527 831471004 79352790 96667992 676759775 345071322 229243410 501082283 465797366 159967599 960465871 531058257 620250103 595004348 758177792 754030829 141410751 503447903 572753483 980655375 300503589 944261388 914255464 400612934 137895724 404747016 861072302 823718994 527439194 182314059 315878327 754930254 183773468 506011284 929225931 920169168 896958853 943119463 783339838 772586235 738739612 404929699 447083778 490833929 353132060 145091955 472464215 855290832 167284408 449824346 442489047 527741540 341551114 405962077 526475538 719443245 180781863 667615381 53857995 936826598 682823430 493344719 783155023 529326932 30509957 9224516 334139945 585575431 412093350 141374459 717511253 812516641 998191870 249613940 475906114 976327783 902314978 634064080 24348339 124186859 167496293 861411074 998812072 745402273 236793799 777505878 891101256 372122694 47390292 365467916 685073596 905688262 922020607 449126247 188074972 722863314 217961249 950996187 903800522 461560645 126758525 533247887 69431852 114329511 196945512 520629668 772355129 342901353 339829073 804709021 373105187 313095256 639381286 618021041 422069817 599027876 973677544 310236146 752580083 614297455 903733758 566229633 384552122 160891577 973471709 833959549 909492422 361164472 342557996 174971407 199747846 922950125 180652172 390911020 676175189 138698937 887246659 592675487 698249386 926010952 144677264 394606667 976694775 81342269 723544867 947272067 928190773 123502048 506804920 269087044 316371127 446016411 536042493 257704484 18914661 666901796 337123341 135421763 758781916 323835015 546373792 288142512 113333025 938010222 116144047 66789965 697638123 778487283 989975243 871883627 214566588 525143894 851341115 562604463 191405201 29578129 326765584 471702730 603073422 996284799 917324321 647606029 459866394 784550474 774680939 508920915 801276019 14994381 763926369 568494852 723247522 799816847 362094509 104530106 934669255 460147938 571795840 746453634 470220502 201988731 391178762 24848927 314070433 601152694 32887241 28691463 517346429 834847815 567064425 574080509 711669691 698240559 845650613 780309264 994590975 909630607 919433523 849871312 509618625 321896441 328487912 875708931 929193094 46192001 972696467 641121087 787135378 969670240 924669467 504411622 369081703 810426942 528163271 113799843 520575462 782085315 876905421 871563906 886225159 933803493 505017527 580262565 609259750 766369729 322190261 609075686 472069598 836994697 595986546 840315619 749125884 839999900 116421681 302145459 395892766 401685564 68400611 830185241 895935121 643680706 999176333 689429051 903773899 136132937 933586899 281070723 45390334 997618633 642268364 100671623 150575139 461416642 533136795 508915812 716245489 41612517 278890794 436515635 95670255 404185858 584385923 262671862 871424839 575272229 521553532 266479723 753869619 800098236 349443032 493342201 863034276 89116018 568143768 570217416 437596978 925681314 624881588 442834010 126103649 396649185 408070409 462226305 297714820 724759655 69277034 475712899 360066338 701071030 753963283 228770327 704309450 650752325 947332423 946752010 548148626 30767933 761080080 314520791 785238951 600586916 152790367 966165145 392273400 331288157 645678478 314733496 883312880 90821634 579560787 603537781 769750009 265818941 443516533 25861842 806662835 874795163 748226066 679290770 159253654 591620455 981913005 323940351 971620328 390300834 901057355 88351704 350221730 808353208 986708243 111024445 344182061 63694724 221883498 297052870 887260319 827950145 479647080 293359800 39702821 896712722 247140593 169775862 272115618 211951882 165766474 395770603 536824057 805609692 824893797 109057037 772865312 253464267 935878750 205882534 285046854 96340550 173632746 223611068 25523423 972501776 711636553 780111108 360192699 988363764 628217257 917481918 421032763 571996409 689839928 754526797 112073302 233932591 204244167 719910981 470963825 24985007 101583249 679917604 898983911 909626827 211592775 643172291 493361040 500104492 936553777 316016818 459426108 221961393 397130752 113187985 205607933 282618250 238897817 237954537 623254074 283084396 757069164 554572910 571002371 729949084 763109514 888899557 602919967 295640166 729913819 224421381 987315149 792058809 764256126 627434572 929671703 154726171 405886839 282733214 916919120 645921315 103091537 106440221 347524628 919403753 732284521 71475020 932355373 247451938 462580107 150058291 668547359 310331306 460471150 141578096 572692701 47955901 970467455 722944914 938553339 917210322 96070664 391970999 872824836 69683959 639450520 357883730 779171015 963996286 259008322 263944774 189867481 668152056 218264924 623191385 616612847 710601846 647638853 175717439 168985163 199027429 744809400 436013207 783143424 42797969 396055577 854740393 199367230 765788216 30302763 247420663 112399378 216440766 591120710 92270388 874895088 926403686 219107579 996359157 940715401 651828572 560150157 731156095 634552722 25917725 501968068 114539076 57663942 760283573 246382716 507942184 351620112 725558586 811365010 147350802 581555237 377248565 948381093 467137494 862100932 435755848 821610491 117108180 95727772 846673128 537490658 933591221 303859707 365819933 512622403 32996594 536289021 968443648 532856172 939657920 504151505 796611158 327871706 599732122 787698708 931623384 995596244 535486000 124806922 311745453 73988212 96468516 379537708 950226530 958144410 136845707 263619952 302971993 377012168 288074762 791271927 888965118 437867556 131187936 473318763 831282818 617225055 621334831 531238352 827420930 29392015 731661774 724028556 964792606 792344456 905546340 879808121 92204487 976703236 471553604 21188830 949262023 654964080 821448842 403837273 425164816 973585008 537154513 117131360 769930556 43660608 920348854 278228337 743988581 408997103 882027862 532198609 958527258 661730589 301950771 523909875 215501217 952619971 469400443 89695305 40476111 849061611 971090452 560725515 309148692 972775487 386180855 89260845 898243950 115802717 454434583 102973979 69325788 990442878 615160799 461005165 620492488 787606592 367439058 628566923 270286586 489848039 599220752 973989937 231544702 238325495 667179815 588599105 570879305 456285752 840612740 264796316 760539922 250719215 255226438 404208005 841214999 122958310 486678057 642804005 378893949 51190059 956650552 696035464 612142634 721115621 132264765 232709874 165373519 532741205 738420455 349218682 165714103 844156616 528157185 756600644 192541034 820555706 687169150 348128701 703773593 596708022 655157839 896359356 390191839 857965498 685526705 666128667 779695286 683790595 728706873 381267198 574022055 359138523 497323925 899887051 478696727 914535731 245084921 645040798 786605835 330917964 50303101 433124407 671875835 495147686 1585234 74407084 1372136 307831800 273439045 464319264 838615428 137580567 490225682 247726058 770000860 744162714 686862766 342135029 173740020 253636231 103012365 820032109 526576012 595177143 279404628 677389662 640435404 146547817 867195877 983609849 82400531 629627407 983979287 7499108 381418924 47380199 840356725 132032153 611327879 348014019 171909265 47327229 120518430 92912506 900092875 449462452 721740745 406499314 813659097 308951831 152686567 736040302 389423039 369611142 213114666 92783028 447596546 331726850 38392626 174196897 657776612 934151841 369479958 694419174 55145930 619686497 561278867 361370375 772648186 172378087 101078739 387775118 64780104 457322232 968944044 931575936 671171165 980715760 235652390 628130885 786800356 72355122 562192641 819197689 685981892 719344260 15847046 730320450 734155246 243666145 684209696 804820171 279237386 554681888 159981667 361764494 825130387 151039040 474797698 591488849 517626705 387136378 633653224 970742909 844842906 106716435 692456880 82151740 109915792 968493304 426954138 101943843 104014531 532036470 449830389 62716783 781322772 383469501 675382342 417698129 461900301 180458746 557103472 981406660 568710066 766847047 618144031 248305200 212619503 267109150 538525415 968752040 94781968 106170944 393759697 290609040 484285938 333446779 428847640 377766639 3528177 463269974 537726215 746752155 279678663 736049784 89718415 312473008 296307202 158180061 388924716 482613101 136219302 83759436 976834197 509054888 913889400 922750387 979484936 570762429 915302594 533588688 145264945 662328843 859768386 792124254 798818552 299916138 951615694 3146301 271548357 506419608 61383885 109649057 354596486 227012719 307807782 431462628 304557273 121936501 262144020 250089626 52295285 526608176 351638257 972334479 169893559 177221254 330432806 115663950 12288261 821072943 665473945 74166102 220301558 632310411 624252815 949588525 692768765 759576110 808098329 985827082 501553358 914623757 39516505 883095443 626707908 124081211 394109351 309886120 832819144 53991011 623511646 347846597 246311666 805710969 64843340 757596167 493547689 701710493 767242643 899534359 167772911 415359868 146724318 718864574 965492939 345674721 30998631 908764652 661428916 380158006 940850906 56001488 677704011 362779535 200347469 740453606 943882358 642674605 604785679 120117440 769486176 147227749 849949839 19747677 725642421 311184960 999897013 159988661 960367359 20299994 922856844 180954237 677588490 960743639 686264090 105406187 766077291 168542478 995385957 88282210 696074959 926002444 641528706 320295092 4516080 484029500 753945041 891476646 550408046 587140311 362123872 666850359 109435397 620541497 729954828 163464261 686774029 441547440 358030390 571069614 622064047 270069359 756966556 196055973 830336882 349733975 962044760 883444508 674625837 900293366 24793305 341171454 36905625 8245880 879288031 913523742 306367417 150068754 914958051 486469826 400594848 429816037 386956856 775598195 326531558 594707861 237673688 881256904 240480640 633138016 888063669 495993443 490631550 771488206 371268034 270635633 179146352 911312070 865440519 598274115 615424600 106329924 128198284 782495140 381923130 569611585 777480879 528493429 746971305 499265800 989120552 775403746 239886329 649249932 22096027 477474017 779191441 500096948 797837831 911026627 982666880 322031722 269566540 247921587 428833472 189782081 343156872 780331543 429298527 256935563 148871251 590512053 667776446 714523733 509526929 23302507 493545658 136256688 146712263 166490479 829661130 107363158 497726991 720258915 66184504 670248685 260835102 296156182 812821593 29042954 25531759 96247752 291009773 631877152 812913356 780938596 451472146 312574178 681650236 647320263 188494072 294781281 822364260 162700058 480673799 320344536 871509937 961321496 320898835 699461239 100642923 690726539 181646083 17169997 78174659 380598095 473327613 948751596 873202586 374751669 822797640 825846247 348789050 26322555 63707446 687824981 240364933 577317468 480995645 54767206 256540883 952259113 38870740 357772171 479821289 45571821 6453900 869560611 898710080 534542184 827767035 210770088 162240639 184737480 156516836 713065845 16042067 578876651 767437230 184660360 567032930 427725213 228491418 955686371 176019869 501384755 370634521 194671946 509652111 482815066 844791102 974131576 125866660 330597167 910010360 704763967 493405566 607975098 646010002 70303892 991784139 663995920 171337092 9942672 95920889 431910350 637606552 818264695 323600157 206477907 466134347 805982076 838027885 653872384 293013224 987714794 866680641 789792481 764682390 136512842 908456532 928376474 979300704 49786116 428093631 175154286 509189949 918829789 684594217 515797384 474850165 779628203 785395884 596894992 798567089 905924134 757528456 346262664 726815528 274724264 467357844 444218662 444195732 796988762 292482180 65362954 950695593 840465788 141834453 78317093 115521489 195532178 449849567 432422199 363546620 52670952 599388530 195103081 835342507 226065431 667644179 392348620 109409414 491452983 926668458 50241965 188886035 65616559 763430517 853455460 42365182 167071244 825635646 376621529 335932774 642872874 688845565 26332149 965847549 302209142 605088650 458323003 205172336 808276535 516231363 137695052 439515254 964703421 454752595 658180819 685333156 811533729 474500374 610048878 771654466 830014747 260958605 636089191 330111076 396890804 887114631 654397741 681794073 147874474 710914386 350048668 154258572 949347942 252581816 889614069 901358126 545842387 708948438 111214662 559546888 693982999 743172081 823738599 60402164 994214092 784964161 926373619 607907978 626609115 328660759 927450230 280776487 267550619 595284927 93832551 949031047 544977658 768860293 124085318 50583196 238520540 771807240 756414098 421184747 404096 472954306 577749136 23902888 8714933 115971829 945396131 595532774 139706800 205736405 227928445 219127367 142408129 937818994 223911084 227724618 314556987 513650884 866223692 145062373 498215347 550932235 111207132 130187318 317741210 367644693 703516028 711449936 694270381 570159655 918801234 464327808 334723131 823148256 141896373 20967396 298677653 566011140 519093389 931866686 17877494 546120973 261554183 314925582 242073177 403004152 301045690 573575893 932893292 570745777 12238689 978230494 714644503 631606984 786210363 968584893 48983759 944587227 531895899 660109062 605407634 611926565 822642287 140056904 316482756 60346759 768124930 3114774 974457352 365079993 384228342 873460212 506591023 257271083 412809975 642644590 704061871 909133782 791084109 500766218 11099731 820591685 982938761 910406768 491787206 938868144 548784734 992860582 581082012 544888357 157291303 682873315 653348575 559387331 583203066 463330380 289493305 510112889 59650629 803541853 899055086 525752745 712890961 364868653 225254541 615958998 800931938 244532960 301531704 874682849 933272786 755642831 908643577 389544103 114508508 352580319 538647282 206283281 340744233 924575494 710399205 714213620 948996237 734733176 816854757 301845647 261477327 172451647 662532375 497900128 723059046 912916415 277158580 603728686 178554317 599303560 809769311 124051510 639193821 681299721 659465878 361703844 85590939 973247142 198845881 888275371 119223557 126884764 788459475 864750614 534556881 687999580 578514244 291585973 706611774 476598686 23946541 144574597 244750306 490518940 534080012 952107202 773022468 58880205 850188463 115985573 219304496 677448845 715302984 95611243 591148810 913013606 359081169 736460414 306510546 777741332 451403696 921311225 403177874 270415315 740804970 321371391 683024861 452062777 42282847 615937303 536681696 503950355 465910004 938242796 185400367 504079176 539201785 727484687 797886196 547475986 777786764 446848136 505117340 437288170 171358853 70901737 438157638 464483674 443769530 817435582 355004142 947715884 798810508 839978887 239847656 597688289 558729637 1060375 108069918 33710214 475789553 959309618 819953137 85599558 231072806 979078988 49212866 22916005 819297453 336957844 522798236 479818651 98742356 391703407 904987725 995272318 681007757 95122572 712346980 413656969 882725700 27078012 885325458 349920314 70890068 954981793 96275706 415913658 881365188 683209384 168087120 898253660 758655517 181053739 806126363 571205699 734859564 760090454 664837845 984673554 192124413 405290399 242109064 691010142 490083812 210541610 507588505 154773580 436019292 293605358 970159592 627229238 418722314 575334033 407391031 133913780 788597067 632263072 261197536 469690729 2610389 958479028 377942664 804196594 4209255 197833691 311893912 383765563 1209569 127305507 37603283 45990413 684199849 679791291 775511893 229604705 218316351 201324028 725504063 371076394 449651880 650956599 962311077 994323814 883436922 234320889 932795512 107045305 807371811 293203670 91908504 953630591 96710526 68356279 453325696 660720962 407081737 387808392 313508896 676395460 289021959 949503938 158795601 845396358 987672108 377734432 292825310 361879741 33750026 596037834 981848167 895857241 467598535 950093407 663919463 845773662 816610792 766323264 679184923 891747127 157529286 546197342 311404773 140780504 125014630 575538127 963846276 408538840 750232677 341446036 953388166 412954262 555381665 351141834 993897578 537369104 120984626 157270802 752341256 286275042 395317051 103661096 461738710 779829230 157117326 518546693 237590785 906518552 424936307 622064625 603739394 839431586 471073378 857760890 129363452 98257552 917047869 970237456 36732024 962794454 178688897 997221879 435329910 294138006 102828544 337604666 789495297 97857526 489829601 684254649 142856281 885431330 13650199 454033411 526639069 821530168 273661455 330467755 881154663 662379869 735787371 24693475 931680740 817203696 976337006 83803560 579565491 620611627 391651122 381267822 111471764 954109701 716346374 981028458 900581321 354961368 335038779 44807727 254066999 307912098 856225853 712415548 106182290 673252366 218375118 628926686 61931062 969169101 111322787 613039375 568187536 844491277 21565793 318964096 619011784 273230631 189778315 927369212 312634193 668547638 401389646 234124138 757639880 90403281 457947724 729646380 545482444 400971140 588961552 807995618 455290708 381175591 808570879 51677438 649987813 236060653 482616022 841764922 983770399 710633063 492021217 829562063 930707033 503342291 237917869 463216822 973884957 227081125 365633873 891948650 921577888 729395876 30226487 404387939 819319926 998824500 814206069 762593417 444643390 353697722 392067699 605757437 47223721 141616054 572499199 329156875 26822434 269352227 45856870 87379651 647769104 246540327 846486098 575537213 326736265 731597801 93784316 892693215 594808917 51520831 239293756 355232488 301516754 154896607 704841005 33962755 978136637 507549949 306567020 488672426 949826592 609969640 816312490 72000060 824909323 971069636 26633768 98161526 310781063 939414331 220977486 145521123 66586574 357637042 460779345 871705309 629599737 88019054 554066791 248467369 922388591 870308136 123360270 941275854 647042558 987607573 818218560 584452438 390452731 439507940 343191555 554435991 354105514 574527137 620964842 564934082 162259006 87343590 49911438 990922433 662797404 443183133 138982082 453828298 921677446 22065953 309260534 11923799 870201941 537860076 238764517 594140389 953036961 745913240 461032769 949504213 587631723 255381790 41990898 493374095 738799350 488236702 298012110 542071355 652974499 294229759 858618071 67621774 964578392 646792914 349906373 125815673 35624915 881090708 140066566 250604496 554416738 253154595 935250010 458526212 667778581 997680703 27458737 536676796 414721473 463849451 816895184 910037732 648623760 386010570 306732822 30301028 918083607 961959029 849490482 52830382 588610723 353950008 684785510 922327237 458669580 488337237 936519817 933924457 667574513 323923746 20431149 7480553 304771999 233777959 845566666 41582343 929463317 185927354 883431551 180956221 673554549 422400929 637670404 635013334 871590838 299411081 56363190 545352240 65050605 613283729 458346994 570292848 781901089 38344552 810527862 33627276 496758133 692527994 476106653 819100680 813990607 86261756 288532085 210942649 461808028 224242157 973180909 150969695 3539865 880857215 839699652 492280670 484945920 706313546 210793554 165398223 773827217 703097099 447627012 192690831 661851810 305685339 102722841 909241951 998064132 410556705 999520071 800848646 695329853 445018954 841695655 979985952 864970860 427496391 180557476 883554706 601239581 16374147 412625817 901468965 463869200 517995972 205171469 157323197 418806158 935578884 370976959 616950610 110009257 223300628 548493689 190301255 377719289 501625837 60882414 557136225 415093304 13338994 39032334 243844538 170432480 807232963 240392365 944695517 531410575 478018557 216829028 964643854 469815196 198831769 378608972 191519415 383716652 574472150 326477427 872150392 990618498 717498609 487506175 98656317 647198691 905392666 329861043 575370507 782317290 65073280 106519129 532403917 235756384 528378892 190814052 708238041 453185783 189267477 748658076 470702320 311587367 453893792 332731410 916475961 601879937 757360032 819687674 536038869 554540700 776941074 111527778 971767081 280256106 256676093 278564851 383029734 682337068 963579872 76007424 791789124 656919248 576560996 505300333 636075831 674432921 547370744 62684961 51466543 929453050 771965270 986488130 52144537 868310367 659024008 86430693 473452984 579061134 470841368 279411565 602599026 686021685 40383905 718893411 902985239 61667536 314907675 372427770 438838247 984559987 581549703 888614200 147782099 956004891 549953954 43870676 321812233 361788696 666469946 978250351 777479857 339550133 575914863 953302605 764538246 529340785 328385908 120296355 446577617 404958208 807923336 631753526 195835089 610036534 56991744 39952290 517641024 682728354 191591895 400533741 373112015 168692665 757996111 659396320 163425184 167189963 764584534 775764573 181618341 195994842 829795747 828458198 60539656 828878864 674711969 734449795 346099614 8331740 480655705 65838435 956553171 887212971 194100213 578905303 17943698 644551079 560699111 935945649 211250112 57740446 493044157 840050786 124963771 900510646 347129639 990137992 579636220 550825948 55025126 625135608 597011886 511065907 912779636 667611855 208038263 606483126 647402089 355455385 910496392 128074603 481139558 367943254 988887319 7036787 947098649 107086409 439885863 81633730 903557446 238901612 123611515 850524813 102634932 815632860 950734834 199717596 20863193 525513218 308030150 528932426 621281733 134591041 774004455 381028372 457894787 29412293 210059680 240789697 793334045 249295163 226734059 832429524 356640069 835153535 618294303 86579640 994833969 759738570 374576679 310467159 996470 873029028 841222919 517974910 692149974 223195168 665190298 965603045 756587525 835071150 383053047 194727688 738262595 45910052 429167483 946953980 214760662 31234432 121781080 789012975 416330750 995367022 605802356 190867326 447006210 535172271 657728464 75883264 175518358 650024839 641716905 259672558 798855208 656809422 424712989 933063610 394985897 284692337 194896440 366990864 858392535 519036585 871613441 969267307 777288214 248647847 633664350 460704003 827113672 303480578 953156112 879767815 221043262 675519248 515381539 215701673 167819883 544492327 869242890 614605332 653281802 368192070 110092162 241882958 585091591 479780801 649964689 531169752 553184783 502959288 738106457 141080657 684203450 547485592 55390508 928535249 391591361 42192033 420712948 479379607 275539228 749067890 331437434 455414539 427733628 967508931 108816279 166233577 310754090 826915852 363918777 710603486 581010227 88835946 113172007 701131262 624920340 918378252 516795020 254297099 962163714 276410519 322636402 902039114 34773340 131604421 26884129 372264446 294232260 302414620 408552375 719209749 299481470 183805118 437406744 399054417 752484244 225056560 814391293 563025568 615172420 699388322 179627026 245286798 985076563 558847796 950009068 468222075 54306546 20541255 422103564 667324766 910583344 252486526 711958456 361804318 358137964 905337967 12450600 952456774 343076210 949814750 651080396 925466781 678017578 729332926 622210295 833515773 330864184 637525907 511525663 517884086 928853625 294495899 213545782 959737578 694412918 518708430 360473936 152820285 141331347 607473600 984881919 89184111 630176427 40243472 510631282 425314244 255877758 490784929 901239763 1967259 12240334 762102014 938962584 682399435 34351167 869930342 239973712 3182961 212795203 681293337 963287151 502914954 615408566 457905105 431800364 99200619 331996583 361836272 763274452 269924412 872264586 949579541 845053762 202459375 579359323 404756466 114028965 91726201 861570343 289195248 337377591 821598791 909224504 745956090 174008133 664693565 332201228 464275330 292451462 932072212 498544493 368129436 716014815 740537767 38807044 794878045 920299495 403536606 605873233 324500225 610590 459498945 409881539 906082086 640065740 932893190 205558568 969059379 908492198 381210927 98601220 362507528 41541397 374119971 324491795 53057946 160963167 971970333 96801489 304503071 164019672 741349848 820710207 891103394 974375981 380081222 151066003 592351667 557517019 280738410 132292884 667145208 490953656 552498375 650404049 790014436 37603174 68622657 970929520 158024230 130855525 261165737 694362410 266060161 570846615 936504676 942123725 483251122 420903318 821679246 567458726 24664959 735127607 582727267 123870049 861519794 654892012 760962593 797705207 371918633 651103393 647950235 968086102 811116848 964124205 9380613 434685988 647842501 653186384 547613397 471417212 6967537 980399033 233849306 263408212 140362768 179087915 843305042 111720114 768402970 467905729 118186513 702577526 803021881 662944093 681503476 615551808 919363479 959044620 581691134 916969668 517113316 189181092 791584467 935583482 924383048 121135711 975009329 764303787 951790165 98463634 570625096 199727562 695074234 946855924 606408940 316998567 571824764 695454747 541022168 60455821 263482977 429067393 860903850 514756282 735504962 622197598 813412511 264387073 409377442 801389571 277024062 872442261 740071203 309213603 895428 481149646 737023449 204043825 526844083 655163100 661630687 178280762 390555407 379074491 705768318 294146573 561736109 768792446 659579729 457700993 96672165 638777358 293599088 598488050 949787816 329570071 82294382 529081242 179167445 829552957 983247030 176828232 605199030 985016134 655363567 188922799 681023074 275317857 771255605 46147207 852474712 878596828 585680980 668700482 811665754 607337377 497749066 232734447 917060072 414522725 958411182 613704071 802376196 633005872 148661115 53106126 69303200 426607542 888605733 255751356 181968949 301190669 253910387 935045821 16915150 869614317 796593835 59005132 890533152 534637236 483873944 793329422 40222356 785314407 932694119 829039826 79196195 818373382 801970637 127896072 137385905 241627326 119749594 14177490 532135452 514227142 750655726 86011644 50259343 783078752 861111920 216585845 602146186 250173510 270252352 229310834 672336929 202884823 822890236 244846053 497965922 744629395 351248988 208074229 921061669 276750208 732594981 676267795 407442782 132953024 579296661 91698134 559019371 15692143 994497225 358478436 222665036 10739004 838002319 51148029 696085151 74381146 450826636 939518858 338453083 224857621 998084756 981108840 708423669 119201676 335585597 803662878 990271238 612321405 672900112 15297588 560635920 884283732 587038035 643526633 655168147 581255520 120818688 288232991 305918621 166507368 333410538 979583219 815841000 223773445 979521434 700423374 589564388 231701340 349900854 410366646 276326876 354087009 692082499 492666984 294943867 295629441 305703863 492501360 80463126 966859995 366779356 48733873 761115855 26075734 363956767 748759014 363048168 964403319 551817195 64073067 624591772 250653803 343775783 157385723 898699809 567420844 545806560 823080912 957228698 734375168 637893653 116119586 358803237 258749495 951568014 560930903 859881706 564593409 414926615 895554594 961716908 405436768 491646762 194080540 477455382 389270821 495474008 695897958 698893583 536940785 238232671 668000191 198197929 532594567 463312930 648628048 571980092 739303818 413728108 206894755 322936754 690608010 774521559 992475868 73870492 908385926 399703322 259719993 703698148 172679008 18569759 852399432 874476036 335727933 126931790 170879397 919487250 598820029 285304756 485503874 826560744 606640911 819774741 955860347 391679418 849637125 302437496 710220447 126745931 951731778 333206414 993072490 809214717 45876052 295225475 885482012 113710977 664813492 965668630 173635622 668101909 396316921 266911588 608725783 297254119 165438854 93804911 906351431 253666064 812230524 9467820 300642659 27710436 873424802 984842181 63851737 395433381 986014829 869283443 397910657 101114608 910752176 550483643 769820421 110625798 711207221 985449051 938332451 395957185 144951718 353040498 802942192 731525606 594599330 407816060 151536927 620354588 196892695 242573110 995581842 327874002 113487849 203737308 388401868 594907317 771231989 45303518 287880294 646538039 677335232 470246432 966424078 762418792 397780752 798681313 683151572 228317137 392821569 271125918 697634202 615864046 778808106 290816295 155588388 476065911 598495387 180210738 180688015 34666906 522137924 550189343 299281234 889457630 987574144 55415952 487505706 330315362 350055317 276795122 93069721 782448876 580294209 871371173 174301047 367647751 932783620 804176653 635031669 283967000 245490264 645611268 820126989 288393622 426113368 821658579 904638004 750974517 28769147 209331814 139377856 943848570 666389674 828296008 731085996 135166779 952352755 130179377 954417662 800271430 638618356 75219926 764777786 661885697 878868856 601387811 588910659 462754053 620141623 498327180 604235743 927021785 727757820 78327993 463771665 762356713 826532485 830869074 335724442 389576736 770079902 648835834 122405520 569127903 835419062 323111242 820089757 941201095 505593639 281746752 931479665 588299027 605797713 919365369 35886527 512606180 293107924 560329870 102717784 381235644 872994494 79985507 737912352 988068727 286744019 605590651 447526343 565448442 670534561 95487667 327659040 35738049 694318687 549673335 326985343 45212386 839919406 747632646 147006748 449489374 978457883 275136038 146015141 674981071 24650531 418526018 916940430 487427719 375243066 454620690 183789224 154457475 950550862 481054601 64628052 519848106 812929808 852228682 133923775 761028879 453099535 100281881 572567686 109338104 66860892 212501359 303063585 255465622 741084613 419385082 638699149 459245171 699992924 963785955 593125440 111449268 242360833 333649638 995116440 237185362 527873753 413955516 12029915 690999175 863630147 517704040 372775591 574073402 153937210 946928377 403938334 856427069 578586998 797547719 884387649 638699427 894484393 625414603 673804741 199492867 790077184 209245899 889031179 333026981 86173578 408093624 945333773 113701473 66516723 623790199 140770491 991035244 3512857 416491666 888590500 143214214 805116561 174472793 302312532 924151181 627070171 61931295 579883492 292505045 143710425 743208481 517766625 874354071 552692801 966314517 100311101 660343684 559007657 465134741 916827378 897881261 885982468 740765164 786069663 169266353 237940748 500918677 32285526 530996981 130813774 379615477 515517770 387685664 482215767 135579108 54572986 988082917 458525492 155180331 56736219 651738633 209920649 777940490 634998625 880771675 588242727 122454656 987305046 666797250 360404161 815407117 23512714 184880874 191978146 953933712 592721867 425517956 315684525 949625308 677150290 647144682 899151027 444977446 121697457 884833766 381727060 323856554 544448099 81933705 646889240 797242971 899309402 885820910 750923281 326627866 168257431 727106207 292766661 400088627 690918204 457352661 737903291 160277990 251724143 52481024 563051505 291724242 629119108 790846489 45959870 400929946 157035399 305389005 714829268 283961556 251200993 455669571 99281897 281272968 509456447 519137868 290442364 30557071 724576973 884415991 721079278 609093259 905001822 231644935 641282381 733649038 407268900 753402837 999489777 52104579 168327265 702658908 798169687 723973534 571052612 741455574 268095545 674373497 201311338 4203212 162613280 512855448 479110934 3379918 259336980 178362004 163768327 821557054 275819299 310663130 649742954 252165552 872965785 870234847 740116062 806909254 290719454 51376912 431237542 835906162 290118635 485832414 517410397 262189664 326972021 13618313 782457197 599374300 171122279 313533035 257055298 703114800 320588386 169250705 264685653 49515608 274103690 577918827 504384697 380596483 603893719 281893641 293062484 924413193 495909998 604837512 408977679 221061531 858651371 486179104 436520632 146968300 105024756 817803409 544228791 637134078 584757073 371450617 764030319 598242204 485687094 777084441 465409331 616906784 941722605 238147146 306251792 612183561 913448749 601489644 906677916 787913649 221882689 488363128 674401493 228181427 767730558 852438934 201503608 288035163 563062546 291953765 779201138 335347621 458857393 838950311 892545894 413418538 899773635 255949541 387237813 358012500 563778163 683997978 11259609 26591492 242615469 121560130 727356214 849423440 358549542 135957626 698952304 471172793 8407429 672317939 728745672 142378763 699757169 212830085 442030076 540512793 788750861 146743278 650509058 559929774 71853662 586008134 823733781 241649726 202972962 228649876 811823923 232244512 509457601 228789952 458478057 969375834 673725005 914892942 365847094 424995532 500589990 239770370 624673046 173842080 929954593 604632258 527038760 950801115 895399570 843869033 439387426 606602841 209974361 172260372 492125200 625784301 606351895 13808003 978949188 760925499 270563710 640718574 62355658 112127919 830911387 757144630 967021798 350100883 797517278 496634875 125114446 574658399 738743037 274385556 624091875 427075918 20680077 657160760 350354471 32691056 122072170 917010920 444052521 608895729 129818677 310759804 355251943 677178099 808830813 552031211 532653540 751639094 377322950 252050930 193568556 3046473 194941499 404125946 548882901 284488282 322173498 688368647 639529049 521353108 107382019 177607947 805670377 611980993 227507852 226003380 333867325 991530487 356177612 644356912 573546803 365877708 972348239 533480367 511905419 863218845 690211856 534646116 531793576 979496560 278416389 273393132 215459502 611399768 188360025 266976670 851668353 496567896 543841517 737095073 469819744 286693114 450809435 622601306 84314413 46650332 488009416 897465615 788467422 371910221 39103110 891044312 731088895 491492109 618659672 417873654 465850484 280500577 348377668 999520790 213878082 923711500 400576555 739678949 720577361 887219761 13164180 371942328 570053222 952375902 551181555 138517961 96839492 930380220 184875800 414050616 606526542 270880121 383541224 604840708 3311133 962206930 639149028 461886130 563551389 118129526 790612540 988733034 304124038 473160065 394737813 603148129 732361733 460874359 420839064 703893541 258627133 164623489 882776149 912889794 282955457 221382385 718794907 199029715 179132834 924891958 357761132 102491728 970374944 10383112 281597495 116986619 685218439 822249899 22017340 157067934 420370922 528906500 189296899 749961084 401274320 229913250 280981241 339638224 139517510 360161184 355339069 488155603 850027908 910126803 721957145 267626111 255122188 435624610 267361066 624742325 61900008 981232385 655087115 162879240 309222783 740719825 444301646 214654457 686838056 166967541 516594686 267051568 448672515 342963948 221917943 409860402 706744927 687528917 955847900 409048241 21185157 504652494 799474095 964950940 333524917 326647517 807026416 144670321 331247401 612414002 793434550 815366437 378289601 16398471 854250379 646299689 810785026 716600888 71495777 48861598 731618751 421795411 130193653 473061479 818188891 471409519 844959142 82347217 597694582 229929929 314081615 730480365 243712784 453193508 360107894 674395464 897758805 586904119 667129205 89248358 333916084 897422687 475397992 410352717 501397733 764577135 805415914 781279606 371595898 67978022 560335256 548195834 385197283 391594358 155510654 807841495 289580294 409707928 776015101 820540933 153768559 195716120 878416170 704216050 35473385 714236170 262334772 597643501 225102512 811319733 843268433 205812974 772468898 360540470 151263426 666531693 393288920 309320238 617375669 154671621 332728891 84223111 72475027 965701504 628283013 827531124 837594271 500049981 363623245 247315140 690531411 24725574 938779974 114285564 720234366 442179467 359208975 215537441 379206354 67288817 273508797 73791052 508861659 85208354 295989052 601774949 567362799 707052337 74991372 988174071 927655806 668676890 511058647 979462623 487840942 117325113 389387555 705632578 255391228 281997087 289959119 721065709 577951302 23173898 561744364 815511503 391359229 399843979 510316280 709812023 338830452 501396586 886569938 11568183 974263716 264399875 382150777 839634618 427419627 259216670 342671937 847401596 268664648 553728021 918027443 742538806 655771370 246397503 417170029 11482520 193067768 657588092 167123583 718910922 176942924 618171021 319677890 550406023 892723112 202751482 880617498 696290834 382231805 58306854 234173458 684749417 940813994 729553190 750127040 63449144 181385330 190592904 580403310 41975031 231130777 742727380 95266689 266807652 175816565 873940303 90043479 34329501 281616079 604886128 765373121 190929214 284263043 180090695 459839224 103610991 803991809 357609213 283329414 399122444 58769262 700003018 246300327 573505217 296535449 492351843 901224772 852962216 517027785 66727668 844930862 275915510 716685161 50785576 465078805 769378192 928746007 234685402 29725715 774210867 236136660 240022483 695185252 847274466 760906092 242564815 856889834 953131536 140697861 17129000 772818869 591886299 981009539 405040678 553014678 160067886 683016546 937840475 960557494 461538218 888885455 401841330 297767593 990557066 942354524 3950240 821189659 325113525 747362158 951768426 362929561 461776249 187737021 293793850 333585199 798103827 906960554 66032827 587644388 547484153 887239438 216543539 269340297 935740321 309768212 408169997 178102789 868433165 863775657 85841983 847160472 10413384 930642121 601334317 724244506 122952627 564787262 324608838 415706789 678843075 921768266 231843222 447771447 58939277 417104390 982628115 794669937 174688744 3053034 750348740 34898194 123545917 765855139 72477234 184154577 635745115 458437307 536089266 139377364 168050154 412570039 503294590 323468336 770196489 382396507 76551625 310520779 577443317 768130181 250620378 415895999 248088421 979534480 153316736 587041584 328791634 326333177 131947472 401138645 727897691 722829606 786825659 881703250 46761891 402412982 832678064 215991121 445600319 623816888 434373317 369480492 727913320 467397092 996259851 949310641 97510450 620293789 610599201 950411047 807039992 781268988 923174025 288058421 682151707 613965558 9819582 15481857 303061675 469809208 43396192 746571004 75857667 278371517 400571601 540260935 630151236 505967154 914053339 956691681 835351597 46345724 468375554 299222038 703747809 215178764 62811854 401087947 886904964 794001555 325252887 609905364 533051383 525776002 911380604 883562874 575614156 247438796 867520801 41320354 972216613 753030988 793238494 301892448 359662063 342070578 239931565 859437507 792671391 20913738 687883279 185674177 98217690 34345386 771256482 149329639 142952784 60710303 64477447 715387057 181555356 772863712 16329615 869083017 893290220 728677647 6680948 635240245 102720572 22467521 676822362 782194743 445106223 697932473 264595760 443700794 888973625 125459756 53191009 826666553 118264636 419197707 934232941 750883111 762495939 35279850 621375424 913728257 694189407 317719716 708645335 64292181 738414232 153571599 550001808 816565815 202613709 985043434 415338950 202589977 153484887 838490118 943040765 499486134 112951059 200722676 963809708 766253151 224560542 507673228 281836930 76207413 373449771 274273690 93335595 951325730 470345628 865207464 203090026 617643875 131599501 823357823 252926343 65459708 712579100 279270856 87599907 896368274 25678876 898248430 271122270 184328463 975435370 587598733 92437331 138088792 671207756 411445814 123622258 639272811 914129686 278261598 137697198 939760401 714580590 24770525 12520670 436231511 263007205 680119809 7041225 525593925 304392703 227227937 657640588 343976895 29451296 580545396 798492028 912614360 549331612 368221616 989666943 593294536 419831661 744271304 377864763 262119913 865438388 858370392 679715594 169084258 472954923 313871414 27181558 23322073 343942239 647063704 664446790 986700938 21653213 286175059 253063817 887987814 870341337 595982267 156610194 935789700 114752271 387998514 731757960 876072789 827885310 599936907 447997923 474673 710274164 73980852 907055325 461798851 809007148 900348743 395232671 548349731 295854105 717620884 790908166 248463370 679274974 261506566 316230753 853458687 578824204 769311206 520474051 629572497 847212560 61090329 220323679 40981990 566942221 623064557 823730677 66654622 99263749 157192460 731090657 22520004 601319523 748913400 999162689 649534670 937759348 992277870 596548860 3623193 964144339 1373445 167174242 558464002 560192725 609542756 457449468 584476611 962567265 918296503 231109907 145690174 511789101 677652886 282092165 834162685 685820368 950897300 763375213 159553914 875407210 744564915 675127098 769474616 556061505 232925264 575276446 665078378 970792437 546832052 610357930 755751604 630435081 694468283 248010170 55324194 659054472 784824393 681899891 778046251 856129905 460771282 481020685 520338737 449738722 350944623 9453793 595792637 665037994 453333573 775247593 588535316 616813889 244457511 381337657 345063587 410797513 303329517 25702563 320666079 240320009 299638197 467394278 356776806 898374534 886573373 646698039 698671969 578390492 801925767 654041263 737157470 963274715 795526402 107259694 197317651 924321866 720118099 608115140 241781844 968377443 72466740 245373077 539264403 381311474 213360454 637818258 518327286 193772343 380927601 764574660 266845115 479829038 96439106 176001547 152114504 137633814 211196841 683379846 551578014 101578898 483418674 282636017 759572915 911186054 510556613 82655768 111106028 536300331 303840527 247699644 924601781 275613815 79253002 508210842 81610367 941213465 668193377 784999934 570653272 785479819 605143477 140757724 604821693 702265167 244746486 290791046 915509875 267255477 682169270 859654303 438722719 317896396 352021926 122773594 832617386 668296178 418806264 938774127 788180181 413617717 887709912 742923154 480249845 200660124 753008941 318338640 669788835 625415723 707443279 961636341 803706 929721855 2348502 956810907 996362042 445072941 788794253 83019062 458360396 44703560 372657409 497503626 63234367 35750428 934670037 673493364 172793521 516008888 891066286 734622584 233506638 872909926 604312326 99698584 131836023 525395120 266164273 611734966 219770594 342099030 944908429 165579625 717761026 529164891 477920073 82592231 784079539 786338825 475174595 532643664 900558379 69827082 133569468 125591027 15195964 980013944 923168415 13776230 944487739 540430792 599225399 82381115 846766168 616325663 28974618 503403381 742863370 789905794 264324952 882587845 493289374 635616897 507630701 583044292 771372632 122104579 227054270 661478033 45639587 777813277 605839590 986414022 184470008 883685443 470339822 783241818 136004823 850567253 664180674 116838637 402909453 471882219 949179126 358851266 530339864 849991065 546677673 892882401 385532944 905782793 559432705 486843444 787175122 379648975 728746352 780572430 305232553 78548919 374245792 729475272 617316810 771659285 997497644 960826715 256787136 821608004 278999760 664861810 954154724 793805287 992989235 280738620 472400120 559353232 155556524 501502099 919054339 101636861 984472089 452123908 334316222 153086007 603672903 605243150 793465425 831648019 990825044 589137767 234856336 161140768 928013292 564362272 533166581 995917184 966649689 313739587 281044275 890213550 741083856 458977782 319681968 597364378 567148770 936728391 602498234 992317778 725854443 528801553 138307868 273287210 914611450 480286801 688244656 998816019 345272216 114230886 689419984 862233012 804948324 380719054 267255454 226673522 836687017 92301215 895828635 369156873 43831154 711803511 183691477 481452553 996336671 624540096 740792536 31670244 833260877 719937919 843709020 730146956 782809609 769594324 280149410 290216686 577187915 717538614 139467749 396999699 981238448 520816708 361174028 348074339 493021183 22913166 831730049 695849800 535825108 555083589 139297091 919408143 370875365 530993158 441050841 990172071 819853209 37890596 34104128 459730860 421075285 483244434 397849697 389592698 817621233 423685243 188597333 892895621 129615165 552211058 112174774 983023228 683379518 751495092 504479724 472053802 229622782 1066178 674206534 363539993 734460239 580177685 274284483 335895285 466307184 618341869 144418525 414204467 592167 145163417 433089026 790305752 450573284 487412705 230551691 765133521 269063562 483303919 501376116 770994391 701897479 794029221 823392646 569526587 142862572 461090747 70861324 53189944 737434311 358015079 689160091 280047385 209911098 537127523 475391984 155424782 573974752 284321778 246308373 330010102 510224175 114699807 666830424 437539111 724186434 626037580 239140804 329619838 266139859 807990606 560516475 393994861 520794085 379845472 209634256 782996289 366900661 252560633 238871943 909144177 689251639 258587693 816902694 649572309 74835430 912442897 366201982 185602950 245982426 807679644 819914145 445525876 414052404 200532446 571161100 724286057 67293985 866785914 681936242 569720193 78321362 826222660 89251394 441278864 711252063 127281218 702176167 316331865 526754067 378935950 585599294 66426871 639199849 163993798 409585367 729780839 761372435 715191988 297793569 369879412 711631834 251766493 215526184 5101718 748245134 800850999 155222889 642543686 678374513 398517099 72747885 114679797 303820672 900146651 652597633 133657807 135802023 34168972 522290333 695239204 371996400 811868962 895366150 394113772 647369090 769414379 909523164 292439419 48369142 853610214 109894406 510232405 665033763 440972943 27961795 328568476 425892960 675639848 587432060 371626055 725249717 468665821 646780962 555051460 352389654 435869317 381350808 268215511 378206555 251765972 540735130 200713035 733165709 558672695 18674597 872383020 699094600 271340425 625254202 531305628 501434456 582586772 179921470 44738861 345914396 809528563 478937731 621965304 140922341 675110255 644228533 610553264 831336071 338951616 876300164 831581565 139723050 346037586 871949938 123742167 423085992 620504920 354259339 102711224 534429089 230396743 499556015 907966873 772060749 531881351 219392902 779274023 537774255 433995663 584519031 452076627 848438846 489107056 246883398 929834801 540282234 551619807 394117064 134553739 576331449 338850210 298861970 746527768 770741127 34780795 452618840 646552710 487166859 182756005 710246170 449534367 436937228 289809828 572475449 871604616 729317396 315552007 817234386 583719519 652932645 432746283 993128463 651367783 61611829 49689364 688489387 77982293 457257429 158164200 931190446 184594904 882807667 130628144 826825409 532235451 945477565 184374003 305994457 947436613 432003728 601857334 679039018 68790686 268929591 61543951 997103538 236020404 232821708 924055512 988316241 214443363 874469963 304107006 428096449 778619986 181723921 807092212 726171295 119609262 54403806 303376556 943196939 154937294 842606611 884483155 618031599 183831138 195386728 258059806 274665907 91351579 594190890 814898022 340042019 483938231 161679004 440366421 332012890 495184466 573745105 580023088 79017662 856571014 973517080 964107578 220966075 480950346 146736002 256638289 449374419 789304910 912292753 655298323 761610127 948391222 468514031 61367408 302338351 607415049 744213659 155719738 221098690 417622983 99251010 644797873 695321432 288950854 314711074 941764578 444413689 497798173 408168751 56238090 477417644 392134755 835431204 530421075 497636128 827666359 747968468 940065932 976959421 470469665 268166958 435534475 366759206 96752553 997720640 117192679 370907257 538572292 254160088 333288520 36067847 698299277 729505337 314990776 359985831 685294209 584648003 828361165 41065010 89964216 712072853 43858330 187602746 883792509 418339703 55205236 26330286 197258305 281866835 732885353 492798165 537203224 542523638 341580103 494073180 543598414 480463047 712886558 527115556 428559909 141497835 596023423 520608780 619712902 104775387 306146672 453848964 417793347 833960200 887952606 508908780 831354792 542700008 692180293 54125912 549092376 507646192 974185124 326506608 712368440 589659170 371721841 208427812 465164347 911589022 986842637 720263071 320201836 254019314 440703608 19429331 802083737 861485913 596650596 948973788 427942806 294798834 274953976 864636465 856558623 201617328 246056313 683067174 522111223 68586982 273268895 269143411 388605469 38034293 556283286 936769267 304936943 404944755 516639604 161183379 967028283 87547627 141314055 211044585 236242914 605401355 362821999 30569228 609432571 336024884 380540408 291459839 924866823 520299303 754931536 9328220 533929548 700645041 552271422 700159583 853400324 869623303 581816519 958526039 199674778 70161408 642393997 482820588 551917662 187514225 481332499 818435298 81956093 316392276 817691734 83196381 938528780 321491825 387056251 40685355 164558306 645734576 305883384 504725855 335060862 7840315 705291597 480688617 272225209 995202680 170606955 25451555 209670409 347537247 246940516 393840233 523774026 43639456 908591336 709610940 518963866 930705408 962216730 905596771 116052389 441685478 196107894 116922310 220752595 442515010 926768082 902861525 828644087 898773533 493535327 587762608 853766384 506883071 706645522 725261779 388557655 478476952 402134680 593481037 455881224 58495206 469648940 822432627 196298022 907718119 264662918 986147002 574163400 902288837 52153287 570819997 998597611 23431559 79082174 110059733 182966563 330473955 291794907 504439231 477231238 873411331 416007032 390442914 345550173 827917829 700385200 850308280 48335214 67096453 803957139 39982750 944271107 986012764 827882930 705797995 934881648 26713915 488973127 65774165 103508230 415563690 419636594 296120647 946458068 491280633 715599158 531020004 782190209 891637471 713207503 456426954 966218066 571185485 596693180 980912435 674045079 911031408 261390793 329458456 646456550 931599128 558721338 912203882 652361754 213592966 194878903 422339703 486152585 874040682 590634072 825562288 930889756 775553287 459807967 317108462 292892867 304628650 155358631 351296688 91977676 161329985 3203874 577719728 119113286 882682248 29000977 760689279 491119786 63993108 943704823 804734081 805562993 777082492 365202443 707018088 162386018 415163890 533888462 208179718 665650712 726900049 16460820 958274471 981036104 490602733 433548633 61902319 155596545 143056027 923378961 19227725 714833397 575953208 813028009 252978073 389354317 443187242 44647264 720343502 626859918 923185298 534498448 776286140 672428295 713838347 494212476 339363550 18414900 418860747 984198783 718557345 293662511 621564157 67668560 189943470 681582490 11807991 541713150 528397047 557151367 324509649 530443807 672793966 696090234 807599323 478150213 591410333 832807227 260903120 188663741 498971806 842377535 462650394 32752349 210062593 290455116 477633141 476183299 858414789 559343474 599129180 995793870 461134373 938050511 290092696 497520933 904210008 160878126 418524106 865155443 456414054 188445082 967506392 431738828 94663602 697235884 348960290 988778340 377362904 705988684 123227634 558859168 810644391 409316446 155592375 356107358 210818556 6743503 986129228 743647686 124648465 834365438 23310113 268984515 913465426 970742950 581405206 64344572 900149765 377102064 671788250 806474027 588578609 38694264 824379660 516563787 949115894 511196258 804498502 819664803 369948334 253966626 184723862 500652551 285647584 818686862 341009090 943598697 146844013 522279903 306869 965963431 872429343 882999498 147121984 194611221 421197772 219343003 132686454 580945036 649857425 730421646 603050359 45325158 697959983 451298663 581871335 330873493 516500237 120821824 171149950 708256997 660239386 399762984 694732884 874226095 886078585 257257306 365920166 336502468 734190753 375435076 488547819 425337107 546421388 691755245 165524915 515051206 432386232 600688069 50074937 610006227 814788150 168339976 586333389 912599160 377813297 770225050 924774018 473801587 299823841 653148157 456713816 275433344 729115363 796942830 564111856 540170068 503697286 41800787 411687231 466476416 337424731 55397169 235671348 143227192 138633674 709958977 273499193 616253027 267726450 356807047 891334662 695671827 642732978 857395356 313745077 544129385 392036374 48268968 871775077 405080161 671310095 455592281 364353042 659184328 612152690 64851284 712436544 165248888 943569270 457893342 516737974 264327986 37563791 7859176 100048930 234194662 392563463 371362297 748361495 278097531 752930204 476939053 985949852 981777216 755104665 797653710 370720618 443777996 770409011 481970223 599684082 97072785 869700068 956884433 908969026 604255077 36321815 522304380 202531524 730312651 360733385 94764599 416367093 374931064 135129791 221159118 504770194 595254077 813822028 288043199 579672282 729090293 285382577 161980476 888341214 921689104 586787333 212288771 391087964 603086020 860618417 939358768 676851162 491442762 840123978 276085823 880338077 524172242 774859522 698632820 973635561 231551556 788076411 802563976 271007676 396966745 909552989 492323462 744086710 937068098 737478247 523140033 588280425 1187245 420637069 973876935 527702304 108123426 919141657 938225586 699578881 847433228 794891813 141270401 695289814 931611199 162097491 636106459 165887710 197745965 802216087 829250052 324538294 618945191 206799765 530988700 460611650 849443690 454678354 553728917 360396981 778668272 723291947 837359779 231303008 796580446 734825571 201288132 72478366 686474709 313897301 427379158 83099401 903771206 629452525 259475644 44975195 536594457 407197014 506598263 226964283 626414816 351185668 77693776 591780863 515400128 241438629 910352786 620845308 679061516 872486641 645002161 400435159 645267453 310412282 582100775 600636041 618102885 492069285 365562019 658382631 282588398 142210515 174028632 544741635 979417175 78127631 595162201 175492261 985258982 602238824 136461596 540707633 880263990 941807433 640726086 258584831 183739932 478944255 479170006 557825240 831459200 663587375 281246620 865399728 774186809 263341456 231469503 575114806 357013037 977381630 19647911 8598246 794172944 408271919 100086976 809558604 111851648 217268633 520223457 700227927 141402724 199438574 487273713 888289840 123745182 612126986 586115628 977248136 692630187 357126989 728563268 670888415 991304299 252308578 815157285 563951146 688727612 371520691 922143469 427787843 647946870 742487585 532424983 203388311 185716409 540301709 728384107 147942923 183598972 261904801 625596823 921299892 862111465 525264470 961753342 384315813 240626345 257409929 960005546 186338789 420106297 30770054 701065294 594417368 127877429 39697082 210342998 924376793 333538965 118430301 686200143 174012883 325892657 361118587 811948257 215887810 480154011 737631390 609958639 611392467 705162111 718835156 716059870 22694203 499429553 513109219 671239430 992631366 798363360 546950548 426995468 526121145 445786470 240206004 947833457 908999271 212041053 692619617 458545728 543791378 581469826 607796203 874081116 137540669 707412754 273488131 551519258 651907470 451286220 977512828 58183988 331720142 799276471 559178152 642833015 352261896 413749115 65115501 49351309 971683326 556568419 94631433 770621884 624835769 96209938 420101029 980826462 913332827 896584167 627424462 516547851 471191553 94248917 612354900 803587232 249311431 985974379 574767614 509330329 415836267 270229013 855674356 597227353 784884563 201123876 472506445 590185640 791540130 35472759 253333902 211773613 665793422 536107079 701415915 610032962 673131519 20857711 782806108 962979992 86004668 948865804 29251752 645249417 669042101 721725200 760407679 893837247 732651003 66041639 985807761 926261498 602428756 790289804 896156049 589630405 908969194 903711560 800019636 705629027 823843238 319759949 706791063 129106781 635173784 864480648 770197101 251385902 259261975 291840945 459461621 666523382 973394156 450705262 406292632 605506740 633384953 124129014 143587393 717282653 627117932 84574989 652693809 853973966 394648969 567511681 822516987 929089316 958287260 487310178 202066125 609800689 703491706 731038986 445344966 239291788 70859411 905645640 126601993 533382934 736988680 467789466 697232602 157444948 225452424 362146335 986292924 558230522 472557525 839550915 491706741 494711724 867258409 493111906 912934608 988391548 484017517 261637445 449016271 54489333 801332002 777969770 140433588 189038876 901071965 506109081 714133014 632002616 902777723 577399791 962644996 517572489 679674221 943980764 41240577 900267608 537829221 533146453 175829731 99075802 434254495 834790586 653068756 370703096 943013261 373965108 545633623 152467864 107373984 518435453 735095945 130784523 744424503 316965822 782590767 854711332 620526033 945869484 829233726 82905880 11929554 870600035 310276846 68940404 877100670 912541831 35189403 713748490 574752754 942660153 668777713 209524904 417777319 349790093 103589964 143291248 984401340 540743798 305970504 260168889 820493384 79718666 678412339 896096597 975183325 255888714 122436068 386805420 798367931 218679940 217763925 684332124 271609979 834567312 284169892 488929706 484695943 348363792 170487940 499851877 164169262 77610741 246380182 987939019 151257528 394290040 260052586 525621628 181460320 413004502 792288572 422205397 302264380 95101812 781620554 484047273 497036654 169459086 315661053 523151402 836151110 109750124 78104798 525848407 622716072 882707557 537182506 645379348 197494599 844258494 78405847 314988614 840091970 847070598 893783922 44990600 254719592 590067648 11269006 477375726 922322432 263463061 333960958 193947625 500450256 511197571 871725709 690168876 689123095 669972496 85381788 863981792 965438582 836101496 777392313 753290544 861122994 366129637 507387534 435421786 998105726 109302806 345980442 714598335 507633095 348044919 905793897 915359641 627931344 468988417 220749339 68486547 431858368 624100451 225817829 613373209 63509075 239592368 322185172 773307357 931403952 274540586 826905805 457713110 152081076 516729278 333163463 876077502 577798423 924248253 577714762 89939090 203413329 293898392 738242471 209773994 892958261 64846086 101097506 155132981 204796439 507558034 767173434 327298244 683598924 905993641 295973629 906434240 353566071 834616340 200793129 422312763 815455297 399980475 277323781 517864526 864641561 398856881 720491370 322695015 950458458 264833002 46363104 233742306 636735393 884903074 67647178 492083631 343825469 854601029 68820195 13694037 878128728 741370537 231623682 453642119 149912003 656901244 911221083 463542351 882900958 464670948 603109504 503883684 812081148 620224529 562914677 219741543 388324831 890482581 74241664 726692211 478436019 555632589 377701900 936984504 97205826 259246034 251179654 797973669 505064664 224155711 818344001 152533685 362010058 793187872 169789146 595536257 877317971 626564122 880159128 714344826 273605113 114212727 402933119 725814304 302930622 240293522 16971163 438898938 361219194 871692925 36761016 507801912 939152183 910205932 686872962 717813628 611191446 866502508 649663090 743095188 260621571 196132907 865249112 329288349 515775452 649805482 976910609 971697627 954445933 698054729 595674555 671328277 400012203 829448834 112082135 868913314 736703216 846829214 492678930 920500091 880647062 133274459 367105488 214876863 765053319 735490272 463659294 363924770 990228372 736688722 127721156 5459921 213525007 292287227 469701163 817059250 987145220 273127413 985238118 396113935 809101194 79897738 977357888 13827231 147193220 488455027 293665106 68941245 937960841 276133065 533411083 740910289 799141733 856715532 659958433 823648025 574265906 540271585 684579233 941590547 255984905 978978258 674514378 596238308 985345997 808515800 739948741 136431398 212697906 220222556 706485411 466598818 121577442 661970904 562481968 549669880 79847208 965636200 588198013 852364498 874956128 608257775 443879617 669162160 516851333 545903029 113121477 986890867 83005434 260456382 465566028 901373603 320063286 732336465 56976173 932377049 81940107 683650211 621840949 713072886 58552393 554596704 663819854 545883744 949131560 857843792 6637664 529034279 242825126 865723423 83580827 846287374 703400380 616337772 183228739 155647619 840727213 983908897 999244830 484987786 88101846 166070398 871847066 393576408 290353770 455686762 632251682 768891560 653205152 433959355 862382231 680089880 50873119 449693819 918692958 947143240 834076503 245339157 908844334 362534588 418223666 686241134 573439944 999739789 843744493 877533580 666733409 82558283 703452178 605478293 516543593 775046155 332196439 981662356 823289036 372150941 540740268 858857768 666267989 730212148 409907507 506992426 338119657 183260877 909336904 978822937 884131414 259447618 583025395 464031478 248070857 127654247 350895875 266822380 710246898 26759183 167012454 82282950 516271587 481605930 305557323 120483117 121640913 300695996 370301417 224542280 383227245 802382504 282575293 765280460 558965838 89594769 77617819 120015005 307839487 963624293 436691980 45287236 604240686 458665683 925730328 230026770 120794769 937248064 3152400 519067394 564687506 29001798 137540115 393475740 160358454 781882803 694937025 24717292 492488657 859586893 399246263 22623189 666495272 248015260 403306354 161061655 979990464 893383801 111903355 410206074 850107675 481928356 49060174 314394709 276883469 738514239 51623092 168899842 784247556 168279369 406934184 737598673 565318389 812640362 571895178 416116128 107190912 469713472 527776285 963160910 780008078 461214848 677176663 289966837 99975762 470617394 528113297 719218744 235154251 42805824 514527126 142974039 891627224 937014041 820054212 246016719 572496783 653177133 277553456 443801222 957732037 28780362 826462390 482572978 576805426 90982483 693497737 42177389 794140053 568285374 198294495 932991252 166266156 143098189 250370442 916477836 746898456 31309350 57440575 812612815 290242317 561308738 172274286 566657092 860270516 393352828 313249351 561645317 555694811 704871090 475903600 987190307 657065977 916197709 50734383 632265661 239243748 567143668 576012072 922296890 687061815 477451567 310159755 815393744 249362456 334411098 541860061 624685363 441728440 511053253 263721182 641143273 646894270 785943647 176769070 873006576 716360084 346359381 567105773 27507370 350527440 636142527 7579153 695107720 268198568 200299504 497270430 560379357 357249032 943294531 771591071 579368794 730300830 729362764 417605173 179842477 770925669 579763889 159202771 908249748 526340803 971165909 214075555 845201576 561419304 957115318 175590471 905171680 257907009 849464598 526766473 278186350 395399532 425261109 7795830 910350527 432929954 637109629 687126333 555739611 318833348 579171216 30230034 979408780 175402837 72823371 517474910 735471319 398966795 684892027 48168125 547107780 310959791 232359970 860795407 656633683 822762020 846194438 510841682 990119424 980683840 276766311 23328437 74080024 509304687 299382717 689541281 786669006 943817169 947906311 397094806 265992346 202126165 82795477 734183268 611070829 620855818 626054769 6969449 52824533 329924381 465479856 514781212 719107822 605279413 558676031 781305107 390054243 504164607 315350920 62641615 774436564 420028159 65188115 423613539 668920543 471475331 240673784 936025782 311736666 136597177 976567664 941691167 737326782 955322353 520441396 391273168 37499847 483223647 776090188 850876348 860820617 989414322 101916332 618080745 845590606 816885190 903072139 27023219 971962556 338484019 162399307 270199933 933955360 933583789 294088287 569252540 719426975 353238880 680663084 458682763 357369906 549688836 304008636 373406145 995100373 155013527 683403254 471055637 880711437 545296839 342606624 957156787 894168723 456692424 121724383 269894380 776030768 471298566 932969614 132646348 363100349 107420393 15759239 181736401 293736893 181873162 662117594 670197349 574764704 979721499 375071317 533526684 210855427 509493826 459250597 793467904 835319445 211985289 734485287 161114218 922756067 52426579 79046975 115147889 834423542 622915422 544993484 235955054 546708219 476559839 770175204 346520269 564550048 945677249 868555654 319505648 173810958 702949820 102363425 433272910 592216683 863613449 94259917 701051821 94400205 736394801 292385947 993562067 882291636 667264365 767562505 458528819 399472735 265115828 380017296 608982171 771628703 537277177 547888583 802480829 214486630 924758211 234273633 614711769 541685125 653941598 537956478 519742321 430140406 485719273 15771687 192741760 113076187 894909811 306110461 671477040 621159722 239377413 133551122 323273468 486769881 562253444 825012038 731229031 110021950 195146436 757590635 212659690 254626330 577082094 487005059 887864855 640371808 776248712 767053822 226379152 199173407 711281654 655510586 468691116 557079188 113025113 695489623 978277265 868832648 908134895 380666523 954121314 660151095 117890960 209868924 63361419 680296703 502186401 636702854 362683039 970512664 840433228 273941759 827632048 508940712 506915650 579377649 593094103 991066336 7064125 84902264 470744215 626150457 899913821 232814302 369088963 375740872 144396383 248955267 90771677 995208931 194180525 360541128 585798334 972389882 279073570 468500968 519752636 41776829 874960003 764460133 884653159 419033678 747301894 906862486 988205284 995772252 247918588 698973847 826962682 954818906 197315386 736213165 736902173 407611772 297101091 868466494 65844491 164282803 993265158 202472553 223023014 700240208 728530298 639358443 784130165 991845981 825792435 179681012 209620840 857906339 908945212 136753055 178120876 571494717 26067963 751492515 18599114 138992823 600848493 961074657 250936921 764404445 761328321 170273342 851964135 860141414 799184588 740307884 387103688 560770000 899647113 798627618 264482321 757037645 143440475 246849296 7577741 159673318 841782542 921736039 456787863 624294705 60819041 782792846 146281486 546334253 352697995 546084698 325723027 265179501 203273245 303741293 256863681 520574277 967993395 570706562 935841462 491406208 836524790 466053385 137638697 971218319 369260885 758528349 587522753 386954217 802969969 136195862 646234494 849344249 875581616 128855812 687645322 939488509 931977336 994235240 279992272 993493626 954205204 622361625 807657977 412168302 574032261 919836053 179885188 132995424 457962948 638259471 890620578 302827185 457350780 626549694 485526349 152776954 487897076 539646379 291715698 676724042 421977801 133512645 538424398 296020599 958308365 903491708 232723056 331163212 490543689 303998532 225590643 249355752 825993468 191560629 171517978 18110538 337124663 325003475 363448951 20062442 351627447 539244534 594710902 281796162 911654133 218684334 50958343 265016302 363240779 555082719 205969596 277378405 161895341 326329551 752093287 609681780 994690073 648328885 140197843 860115748 490814701 604148885 108950233 816756176 272010251 348715139 842818110 553603306 665700898 426580316 747634960 955108639 577402670 680420933 729117658 777499504 91436457 437235938 289394262 290534500 844291377 650693198 871926392 593170660 105049581 168094561 542364269 106181493 276504334 951214184 967128211 908829737 139980926 305794751 692868693 640063829 926466470 489062483 664219536 476763506 95727401 21616630 117257682 63155964 65169627 157485425 190004924 595460063 922153770 849448402 511389151 207925023 619612074 928187655 435686721 97859352 969146606 636873257 605945003 209497808 21923828 111172687 846538212 518599946 701970108 882283819 153346640 600162995 761110257 59867199 268152746 583869813 789693051 783822353 841749316 467713596 658119851 555645237 27991206 121484976 625940302 791630758 810786071 325024267 645096705 492996475 721302877 856749450 94883161 227013707 285126733 697706377 814651727 564847241 931847168 88886406 749201836 611119199 85470403 170085096 664709498 239852499 182321137 227951058 665715510 478019935 456383556 764026575 109071641 492293951 526783283 497312660 821447173 514639190 539829883 181305216 773014277 798234873 131826511 912176978 125407805 877025580 915972987 673448333 8907363 329705658 982913684 962913615 569402045 944345441 917878132 490636130 168891247 94577158 467196305 720161027 357848241 414314782 783302368 150015545 493292358 357657527 257268330 738798096 123381865 281336899 874331087 493815835 264975710 403149581 724039636 635816839 275326238 75873541 641476880 326180552 375310971 182528126 550133007 858365915 117176844 981009219 984857331 600061985 98296283 712903191 764427445 641660805 899702116 856501461 648057430 613735722 575513309 793839025 970094801 665662552 596892458 342552599 821572485 608784967 434980270 439309633 355024535 710721120 237909228 650811243 460872636 614887377 980791401 27443794 732657192 316866397 176438911 191499328 706751051 592306642 196388484 471822089 224347459 921337033 253736333 268987730 298145330 315083700 331672356 759556689 408152719 769661697 786640523 497841845 391912411 902054667 348935477 113360805 361562526 857264083 709461774 983298889 575811356 82776456 562609408 190792704 471452052 765877387 113133452 973861778 99241153 794757775 348594683 625833015 71470207 252743550 832393841 112567097 989651941 761503216 243284711 702461412 805564581 969234257 156144621 661466603 963601868 531905021 155313513 577764102 758706570 868852140 246121645 555980293 227210745 11756458 51044997 90658788 15770968 181111008 860912729 342785897 870035927 757876144 753942089 240020894 865631692 691891922 436485283 668565035 165265616 909811396 668595385 15906018 999678598 598173386 872460480 806706442 634337428 590935992 526655799 30828238 974685326 91197620 466176851 11209535 626057416 111790099 619606853 222877932 448743759 208187182 776040047 339420929 410797856 765360405 885037580 218215547 280958205 132682647 497487740 318719523 973543105 216663117 294915723 139074331 788437819 456537575 631554576 704248191 349919894 489282137 944385017 948286591 422204407 874891674 756707872 531799563 197072799 359011392 336536165 662872985 178951386 282319244 394087380 544644315 932251029 926382927 464900525 541042882 880935264 738971610 485640034 565437112 784231956 798985012 682551322 267759678 678158415 1497774 649291801 315582592 447109288 196594462 466180928 108423030 319793952 35098471 707002563 606499551 21782975 847032918 671845685 352456779 756970687 741271344 909006500 36476954 10380831 108134649 406821885 779952675 438300791 600645236 559697983 918136381 754241123 19102381 899090328 676771032 531490085 392486875 488846694 663283790 416270509 778672357 629287404 749019439 202178649 24191794 653803539 416371636 933096200 591139181 629434476 402663602 369408452 744369919 582186212 749257391 96307303 556131351 983135438 342072507 167078769 277742257 134996569 194328920 535776618 210931872 290268525 286819554 584751931 286999867 223419423 20591475 686750148 758014143 226593584 652976999 988768345 846627722 250135515 674381378 182162694 804617596 378522747 485771054 926382066 244124871 487664784 769881633 101040766 280530469 819210666 914036193 796967889 39869628 343754004 278411677 193720536 77661249 9917322 235540028 351455542 229751299 748210089 182651170 66260956 919441357 381046290 76164647 440877662 556464409 392190322 377871872 556368401 800893874 226770960 312550629 167572870 514195901 748362349 638446856 409674117 529618142 824278617 865880135 626547618 976364272 832150589 409083827 834491715 588859534 445049294 829828345 224404180 297153740 406755272 372148083 546192183 265084357 274436873 658874689 701993595 173505876 973084782 994513264 78691950 493655340 199130240 561827889 416420132 394942159 472649455 334474801 407167040 641562318 979489554 294806273 323471682 360334210 375504272 715286039 94520943 164625131 209752702 112698469 647096538 121905061 378680761 817131437 194235433 460364914 794219631 440723525 427929606 339814110 7123604 909418887 466578536 567983399 934440212 724407161 692095581 249576745 408076209 832644618 98881735 401158304 506867581 318030820 358556508 72418282 542219354 336167867 177767420 992738534 766827557 527775840 485221438 486140395 298153765 135719269 629011152 323680817 416225675 706935090 394234533 303695784 542833907 231139674 957751476 887006634 237228547 775765640 16668769 121525445 408710569 295880337 387751796 582877202 386111522 375231543 150951222 289531214 941211119 876607843 787273311 542186812 487834866 453527421 137327561 750009753 47803623 506738878 383041640 43522841 269220765 341525229 562174222 571451434 231216328 286286157 965806561 310902358 776020072 124213322 106307696 451106834 955368905 580639896 409602917 25956405 438459472 636825351 516048506 77073439 897801785 78583465 108956351 127212990 164602527 752197055 802050830 423495690 464435493 455959882 613140898 54536489 641959136 115338738 936730970 103204641 615078825 895437250 129162584 731526093 92392504 736063741 101632301 596514650 988128920 901041804 209820626 919838712 468744429 851273721 840084169 422245275 964323978 567844540 780061782 745865303 132973541 439236585 854137724 615985383 403416542 297176672 21995274 872215171 797146254 612561113 931875788 151642099 954300387 362535615 664211027 412533974 329918637 578355534 381746997 756050001 977023867 606235229 870909879 911206111 625312095 154058633 495895567 698438104 427511023 406302639 119636581 420601560 590440536 519579028 307566742 970077411 256565195 831518451 328419364 823205402 675245951 817141169 466169346 696859950 11643644 620013292 870886818 138072725 392218416 722140495 583219443 701738687 897139254 911857577 873920911 873378004 107291498 523027832 205264233 596129129 703464433 550517881 244082989 405902197 115217936 681823329 33555164 663606067 812499155 719892847 282020009 656279526 201168826 136843021 808933953 97119108 429652689 694065441 386113767 970764000 27867931 334623067 729593480 747575433 236907164 723918376 851093393 226744329 609170296 473724737 503074107 528406448 496786136 924535788 171946644 403047529 754370617 326117318 497470114 222730954 456836788 243827349 212197948 190360177 824253771 712001886 622179831 840224976 84111253 111383215 901810242 23168054 140549745 246667809 160830834 439882485 464217120 32022650 450781672 190338958 776974918 754984690 717185032 735579871 590148023 550220026 584070695 88129930 368709051 188020678 816860312 760074872 494029743 834855617 611852497 990610631 52167372 962555395 395057770 989055245 584259418 992441407 665850101 147442701 7548209 987905849 753418875 127265391 583124437 663865782 640970053 308621668 169603677 384152426 606332706 691842699 803547508 273503801 71278297 65867672 556022534 256698090 391529967 261983674 305019693 602568646 944379207 222244803 649988492 660061578 759006789 607991273 290921192 720544908 840865273 808268033 807431781 307288382 867674047 488541136 901538256 140187619 424865466 443059605 440815164 634535016 33832576 98577072 163031202 720145165 690229479 85770074 265261509 956857671 52554969 726028572 207452108 439676162 101892775 25674691 948528880 471809903 287696131 343678870 770891580 81466123 347181175 419478333 179677431 157539248 297840360 241409395 117147164 67341087 576579788 145863216 358114234 124815372 117692139 251599718 873581309 622576075 362753179 146612980 633623353 404973809 637614200 481791918 756358797 213402936 144816043 715455050 255937786 182055880 923194225 693482742 852739640 938546576 638499535 374069576 629041679 597770003 990046313 894497640 879447388 942886977 502934043 769854249 85916379 126932276 486553030 951306235 521472626 300193795 604675032 664092714 202644294 754315564 705091670 571078001 112118729 226426719 821563432 533868082 127026863 985667311 567255238 154508885 594950595 645379791 622773932 287450522 80302308 31121646 676423877 803740494 796104067 690607115 747377344 481932867 264260893 995027064 360186314 685905352 702846521 251713235 653525580 702238777 773336931 238247124 614176198 336871647 507711308 496233141 670475579 939497043 712340836 782254061 678620359 969103294 512108751 358206851 471642379 750826791 384730378 833092976 51921490 289209901 870536672 476943377 356011518 222176807 669302817 601446578 226188759 895730021 364726964 840909415 727193133 369734046 721810363 550699185 500864753 681571447 205024637 24928992 346197502 451478513 59782009 126717333 291594738 641157412 804685207 168443630 96705237 590772575 859920372 641797457 467026359 791686188 901963293 461061042 344054190 896922111 91698016 769713189 750516963 909138411 368822960 96342677 965189203 532389592 872503683 311061714 675536655 337641229 826114418 109730188 319885257 375957259 643566175 722408731 732311881 6031326 390941772 24009810 273728223 302092528 677987024 666027628 379632332 179904460 161793343 553392950 427839564 229016864 990934091 537549006 764248357 886848373 200885283 853882514 289556220 893188025 638953177 892537968 3504470 496141442 27030362 750359114 402428691 816147616 643989756 527868162 516421657 720228089 145635514 127593814 660852037 32919980 467602891 709283404 448977245 651687801 546053875 906487736 473539347 696850218 954618548 95763193 832190526 15729198 538423189 220028011 232944351 166559696 391858436 185433085 814866614 72247361 315605053 735081419 28870692 431168427 950887141 644219218 451681648 553819076 981544407 46019475 180947789 998319364 643316227 293745321 709986992 541084868 568437225 737527654 23737978 162218400 764282015 14352837 485265652 544304702 478271669 54426705 12205698 566271932 505963151 186543371 404639819 844691220 349903609 575697985 531459189 100826938 120771706 604540064 497802596 386772238 786011571 846175080 483879345 82518261 392514839 399979626 197701314 210446886 704361114 283522999 671515435 178589525 660702701 278732705 185197565 679245175 892658000 513299823 173687892 893460295 606252294 272975903 607571246 944237428 567335332 544062581 54875761 894048992 55474214 705495845 234868073 496897279 581919637 211897958 750890 164559968 768107555 606357878 391491984 766653209 490051425 36324555 44921756 893523443 64556539 123259353 92756628 37789219 169078658 479198229 76008586 614202826 392398565 177840685 564471927 546483681 492779902 77417231 827225883 176158718 46193278 791961550 463056667 369177773 345233425 731278752 23040508 660102620 827324589 220477745 916287125 268638315 782481438 76271046 796166304 115999142 446023910 147325420 380211520 730953584 204516152 535401589 504964891 58453943 224265313 266238698 218431199 160044690 361554875 194539966 531722384 505169406 891594480 932941326 421418000 909347747 66373728 620688482 692963495 577027593 512686916 77658211 371364298 598099439 659117902 982762543 930964281 203916206 6730654 34471305 164746051 543189194 54306151 480662626 961714720 940275383 104621665 288004744 314460553 678982047 786376950 47410269 71295412 198410210 514227492 268513575 223669844 935567872 186656513 747517548 327520985 85299873 128961194 284095113 982184108 973266402 999110890 528215029 424958224 41991549 974390729 730704644 909463376 421162720 279254836 680741506 994494753 28608233 860003971 105950687 124181974 748755917 603075982 164207420 166727542 371443971 6546759 482546192 630452623 497667221 330738380 196378767 619494394 412091759 400563811 872201379 234400962 459731546 397120765 920532535 753812983 415640997 941343493 942734872 618836596 857745161 269369090 312637793 443193654 76124091 37192661 820372904 910175733 393490253 912146351 922667505 542425579 432858096 275995130 17002672 346172853 918569946 422742659 841329998 923375103 862368609 829070807 348921167 943360188 169629181 831650310 322190373 33300104 4094850 447499640 739765502 216449044 676064458 378790400 265086917 303545163 429257936 902155084 311284449 485233699 556979688 177090368 702835876 169386300 526950376 995379639 788212997 871362758 633363278 516807838 150810316 927818997 661017124 844691175 227422057 383482228 645576366 266326424 881963456 617916637 136715530 448961060 78928607 394408575 319264955 515739541 400597570 313393254 446671477 415184753 520086919 628530924 8244714 357783762 176389923 253535765 982400732 294688939 116567188 287147629 766331111 116231212 209461996 901963039 61228668 508099370 254103753 347833175 355512380 625332640 174448870 100547627 761883112 442294513 208234323 524200658 147285420 50392792 635841071 423100153 912132985 133623997 476178530 673973582 731651434 880946966 251048795 350055499 64040628 347559245 93518768 140988310 883201463 142404111 828551494 703053736 818228903 393342822 796944250 902785612 570649289 907993959 350081093 179653298 211366818 711809904 585696023 446038058 376891158 322238642 901907998 499310095 439699901 868173858 180773168 139713244 595174816 116294695 31883949 442334811 3465894 436541465 151670460 466065680 252038496 294376435 461248055 670476927 590130001 159001981 946586504 316751737 328786238 751449483 751021852 397441537 423306112 483850313 91678325 294699162 348621960 88240948 784430560 208101588 945175429 269203226 385797513 87542625 253204186 43129056 818137045 972529248 994092599 249666126 572389957 795974057 141491410 119797215 176848944 937000897 572866889 578963120 177158145 720445470 617055303 742419249 660105744 253157588 584875452 641335863 395263476 838045929 564749440 356590680 954209941 358295387 315010004 557604576 133016471 350449648 740360816 592618673 111365887 245167600 450023461 406951515 676356657 17411543 945453223 385325548 744813322 851313667 975325088 442948130 482753851 886489231 98968634 484480745 956425822 210636483 805627301 704454024 59856205 49596918 123203303 245053160 193161342 956194139 997958751 455040548 704234911 897075490 84408510 460577970 383139201 826496514 668026978 606768622 695535294 625862773 490741067 841784469 868928314 329670554 402583194 488579186 917830969 735435357 632830058 480054828 728091574 883030469 297720705 227487909 24211848 818372466 403173245 644285441 793688400 162568428 310835511 954988620 994252348 31290368 316921570 505902313 333438571 312880306 714423737 659484321 337817281 196141901 149079453 402464848 120145516 308025508 572718829 23957816 580465378 192544273 563344077 196632703 826837747 540248278 178263269 737493055 137160975 339009856 476045479 609061627 511321162 505932627 39475641 260235252 553648325 388611989 350755070 156229493 579318936 838307345 326213843 116614885 147227519 196353101 720314210 278291746 326959919 634533699 334571780 986159540 231849042 409625961 461974548 360744979 707991738 181599926 145395768 222225089 549888615 184133561 40531928 958358389 705250556 361473964 996619929 749087399 12797977 983462359 872269588 747473329 555010766 647223507 498109468 321657929 790764106 220303815 725856485 887921356 802424381 248046166 870272435 815925620 942971645 864375970 317799657 280064289 80027616 601617174 11463056 500282791 347909058 825673176 250199263 81987771 108640544 788045710 550726653 151180787 427710518 146391999 390442536 861269256 471288873 665116409 108769160 677674245 939703102 418247708 568684449 593924436 445349306 25159749 729390903 598622604 288188064 438574612 688455202 460786817 854607367 428160610 682850678 198219437 567491936 12563827 558498386 482806114 364265519 49929318 432918146 482087678 860096912 303253003 79885294 333085516 233023791 263491053 578756229 832528336 717548308 992955509 371591803 562943710 32990650 178660810 836212536 415010531 958693149 753265906 238710360 697299164 961693763 836649939 827188952 863673109 491325060 437391229 512121741 112630277 165577806 154508927 189465190 793129058 563910516 647814931 884184894 604237814 787033490 189701423 121055662 814811812 461709524 109860715 425924753 990777730 234079606 949174311 534823983 802873415 875104651 172227203 995264348 705491895 781762263 949128926 146758693 212613333 351809646 127937267 85795239 500283429 600116247 491223647 374627728 481779332 62598720 746247295 11741306 936605746 89757899 335719730 469405833 860396190 597576264 923477388 412917717 466307325 1608813 480470798 175077940 386735663 491831314 803752909 423599917 149361044 816343790 68641157 542439906 643388961 797328478 565216697 701302617 252724910 19702536 528219381 372627187 707412272 263682836 92023681 572985551 265684445 292792443 502883893 409124124 892332955 95198453 166976114 647009698 409297387 185771496 554004529 778101967 697446941 6540407 608317335 90226474 369642630 811299918 920712927 830423864 195177903 470963903 84418562 504883955 192288920 332006722 492797177 491586745 479607030 229942666 534640945 844911155 557983671 665225707 213185686 833049461 555244749 462843742 506667068 717703474 769753215 529772038 3064813 51728683 461687050 331619687 429122815 140987802 246028532 906431714 42008847 896387292 132620542 80040100 188867710 239064993 351557469 598436693 761565845 838178920 77097030 771631368 295931890 738457411 567500780 989005287 779505124 453015561 376025678 328203142 512065356 529359014 851784699 667639498 361252385 682340485 168768046 231577400 795182837 472889117 816000835 265579857 944931467 78982894 689609111 851731416 805441933 369574867 521276000 924867119 234549600 271463902 433687889 235855564 422830612 718082217 393498193 101618935 256472459 800666496 161949348 134406744 914165068 809541449 382873278 26168021 319936781 416243065 97029764 798843286 591773597 822063166 606504270 740572839 466037804 207232650 501436921 219488134 218208410 469093804 996357298 305546969 280998121 460157366 576123779 681902551 316938281 146186917 560053818 165039822 673885645 167508600 664183036 202705582 948695213 879550349 878467615 178913352 659832982 764988195 636267150 987832071 754790740 428876101 697181390 542818207 584113879 87284324 529654687 630135594 284240399 32774209 627176632 666054365 546438045 591979303 231421514 960795195 761850041 634022047 357982429 816917968 77134401 957027400 714819555 911594418 443420165 343468557 469256094 702832902 92009739 933038498 900923402 976050549 684531179 736501387 220192774 268648245 242593928 79846683 918555492 403679782 613268970 177873508 338182931 729259487 323754875 79210740 161527843 686032279 498213275 978075126 113613844 461305201 684862020 849876435 640538089 65639834 933476544 842664305 744933757 107705889 252058554 204218602 100390986 424146007 817123185 435354571 414776108 736095781 692131943 963176740 159660182 525944652 736632232 171849916 52793916 450848487 310406292 769317460 481649679 943503833 686632866 444249921 410082911 767505574 307268298 24909309 473878692 362352016 858233805 743714577 82062253 440820718 501819935 875529431 215078232 20636281 427166031 84243195 226035619 267930281 569201704 223185372 652038959 855072885 512415746 450632372 478283415 534998433 425271343 58087677 989510261 18693404 593100254 764064667 915175064 277788203 891091871 562997791 964711919 307946990 185367755 78912322 253159038 987243784 678914898 544104011 977394343 5114247 418144348 567427066 963044899 314803839 133072568 396987565 383030941 63604468 782867788 296246102 892796716 58666868 342177842 566354784 597345544 863322226 733420046 347145809 431131405 633613310 747845353 309226300 642196875 261324485 674032235 994103060 877202110 483307706 91222178 70693840 692510375 438472232 926772609 297794256 397646729 970204786 312562132 696901729 321602527 810690481 854124897 19353361 963882243 665124852 749959606 796835966 218585334 677643230 210742798 224157841 832671331 361303206 422160648 159841444 732577787 383896106 22738757 108686201 48827553 779444071 247380274 838421714 535379536 491251549 63831967 324091631 246203663 3546858 792404269 553049994 619586880 753042920 949548104 439581744 350343165 783611093 750724477 743586464 742632830 627115040 70230550 860333051 356348070 887855591 303969329 304293745 993248824 200717008 83146401 207788077 116888833 969012874 457403500 641816891 849261668 478621867 462848335 459639638 893902720 779677206 694655332 344080693 714823771 331287721 588788423 887561252 689829634 81003989 842230068 84801455 739490179 986848081 232910774 610290067 88168909 272335484 875818476 860816291 170679982 945657853 545683775 825074735 804528225 968466104 846689562 992480242 894444083 169752118 893911031 636563528 860400067 67832809 207876370 306258386 147833328 503644933 795315496 4295130 507297943 313501234 410167605 1200711 50532234 203696608 830483551 889109314 372040508 834707973 256043272 128382697 846867321 534332046 486035069 39343280 77185437 924116088 916672777 353059440 480535652 120529234 746283351 517015608 980214550 617959401 669751782 960274851 297372855 130609419 759416799 199861025 753009123 233410925 692742856 352908571 827368017 78618967 270808695 997592020 538266825 179156210 56309841 105441642 213318399 648930011 910631148 75347851 787325440 64315810 649655402 465147834 974292653 241635076 916522480 142154022 328318992 254249612 9010591 987064918 400402392 669771196 107737922 140805289 890096296 774055516 489634850 83178639 358686656 613218137 157729206 220728830 886998118 416319895 433037891 682663663 530988471 853141798 49586095 854750662 70897639 564579906 465769134 268588953 576068490 636438169 260586865 134979785 797725549 695044912 561656184 417153772 619928062 229242239 713435033 318773798 278314396 802211518 785464494 345572264 481675006 474431909 391862301 652768546 178506381 353912156 105577038 254668266 694009367 327226036 944846579 199283308 602443154 637200560 874814388 251926795 212436288 380225270 1287695 103178762 637165551 750006455 96199046 654259400 774495693 21934008 495853989 133779740 27471308 960235103 311781421 214874467 740433577 567986786 161671048 218479193 573449299 962353603 908567903 734964956 267050965 408580790 683176452 337086087 235300004 996473886 164510241 576446820 168934689 313202041 645967307 416324615 492174291 626651669 675209649 827818482 516132049 411031688 188323643 865733426 802952256 551272283 321817634 422748863 930875003 883878599 244715906 133977575 192790352 705360979 724738101 823508074 869828357 716619956 126424230 386820917 241440804 370516606 841578340 210946370 135363443 760454874 338927889 252183912 862122657 698006751 874130786 350415223 401469636 174772867 500945530 33811033 602471923 534763581 552023264 430173271 865687017 88762018 598805168 773216127 450711652 763119562 325325337 105063067 387189504 260564405 897642417 145662135 969622303 681154288 166915002 344921207 456884745 82863674 867503596 379821101 132002788 314699303 509111062 609140 458098968 152604878 414573622 14270632 752802469 420112001 628009041 551369403 859223599 857394508 1647481 573452440 533334811 403519452 557487981 279062790 697247214 494663281 990515188 962009482 974804039 904786503 788101944 295974989 781598601 899419925 557066083 150368922 222894408 97007898 715563260 292456125 371051042 870018464 559483359 796267698 4629574 335070764 862696020 957303372 470771074 205419066 812029753 667884802 758743715 968559740 913551314 984477567 737244876 716456133 607760201 287908919 870958631 347215542 143878653 547618935 547747315 902305802 478562695 356252970 305761990 866428624 344338194 816838400 31011855 102961241 205124661 899918700 817993912 882184340 509577564 873710260 936467108 602425849 475260998 788100901 837304387 3015793 258765229 755357814 744777770 773326270 972331462 26355039 647668652 125432422 781344868 796668486 247991237 292618535 409181486 111332625 861585744 93256183 623248068 592780081 362204669 216834719 995774095 866330853 115467845 941951108 34587231 834759452 460074762 251784814 143907024 95868599 663405758 566856001 121131695 49283159 202243297 98802286 600565193 698051377 339549173 133125132 958418848 695215858 888325158 417096786 199655643 874584806 535492444 436249492 277917664 986067679 526402072 22641329 596049039 618530369 477261156 272633610 425520966 219864268 589348510 954482537 143716396 548271428 521879255 897507689 969449345 259856824 623295657 433561294 926096992 636281317 273837271 321785343 115639173 659105758 532852853 880957634 573708846 236041050 438859378 732471974 472291032 247716434 239356838 422940656 473061855 649780847 378353325 362362459 162106333 68524645 647556927 516272469 4822782 437724900 401279172 541128665 170151529 228376979 251583328 985616883 898658395 890045471 285235277 775335165 98329064 202098912 365432975 888214864 600229908 717556989 962787978 387769552 9763500 365129872 764393131 150881109 875703444 274870071 541264057 887970948 33384316 587792778 600991654 477603375 639082293 424842508 125938587 939008314 192897973 850130362 553310941 970864170 640804213 757335824 480972868 594588253 590439767 746657619 504746850 38240546 498437470 804901741 145285990 189709927 503826563 951875888 533054489 376923223 162640930 558757646 140877836 507866240 956437031 233479325 637990391 824290308 112031984 181708815 387015316 553367360 471328370 718738011 308663767 631162687 265358268 866253549 911288340 631878731 496882906 376272630 642515837 472386670 210437019 37530601 227973210 179385312 107093292 206866773 858217783 164177561 79189576 149054220 195773775 449340746 128272614 849447355 422251046 384891266 838302916 710282177 65483582 291082215 117699230 422081180 611777100 410689137 937584656 931565195 793016204 427883049 246250488 960786185 912971455 732619178 237482577 176554143 626295643 869668249 663449389 780382374 488190824 93283621 602285536 4718043 507710775 835142370 723679904 635189733 481146411 980158467 761979980 468412791 236661061 699197959 408070128 495709883 621527617 347526257 259858870 278347347 791608135 26537321 397038748 31177860 982292392 273584933 82849982 892020063 451071894 960487991 137761102 363087579 519137942 822140843 676030543 120831001 748096103 622617635 297155546 233414560 165444781 341046292 225979155 698607108 296577002 415078701 275213967 693533370 754260157 621859558 141330678 479015435 560661505 669253320 164602920 275225922 52464920 962245793 817816293 39992641 77858072 698636391 423823363 690771589 373763936 751685513 649058582 64108935 4503317 408056225 955692782 666413156 854259028 922568029 793551307 421640880 868732543 568707915 683415298 936831331 911060991 620290515 180490823 381165678 517464881 730277079 656435179 3088504 94141158 679784658 987920349 131063107 935514328 933612592 104131257 610394118 338091547 291090102 570493731 289169306 351623741 701984502 317811860 521444485 968966996 756945958 477587894 605487181 160254808 277818121 702325228 186926975 101674013 454334608 478196245 482431419 295124125 462432195 110594263 970811614 676767808 733147301 502749141 765758650 988809372 407544601 235808199 91579673 388115852 883912773 467734298 732968257 193419850 112892333 854174951 108936093 448054715 19794213 133992351 291747372 697154273 304377488 498225670 15305918 840422016 454569504 548320533 316779421 860422085 215687147 525615644 781324902 220715391 268021425 27853761 401207009 866649317 964716070 893179901 556064209 317014426 494014249 10676033 156617093 54585090 754789521 621124788 517769290 602134588 163555087 150249148 744679913 361341264 843503851 558638200 915868995 727125464 780133831 621634192 7956077 862474030 506734405 429810038 436019436 223043663 101050232 378681023 937307753 846144670 337655289 672870703 306170898 528723843 731856118 517426698 925014909 427525678 17165968 366304965 402732889 934408113 995995000 839435853 91431669 242217259 463016422 373293446 722596277 164881993 845599966 367935959 519725684 708126655 135387884 349372755 16397120 978420192 933354042 140376662 637532704 627941879 507563469 856245529 245983880 815518516 696049737 226106282 592625771 781068202 899507794 238716182 262503321 349295739 13702964 779758008 703275672 873023802 883041374 610682039 982907803 241824154 708356218 509515668 86520953 597309857 698186465 991811140 1999521 279963957 621802694 909865477 904826780 57907783 651749525 760793443 500012418 871296955 807400273 585606648 622120628 504870714 927119002 962590129 107790911 258978255 445675760 878148511 56475409 396749483 195582536 824617338 356459656 953078339 882963476 951301292 283497890 255438335 103908874 506562264 484661409 417346517 590145068 874053821 82285932 855433088 651553256 85062123 891876734 114458327 928537118 934157271 801257029 408817913 758191806 895460450 121566596 526937225 271263530 667300541 97396813 548670648 995747911 9140757 255694270 22236205 445713618 279709627 815917170 728064029 377452285 248232494 396949793 348545767 436781601 9450796 660056202 269718914 465742285 987859625 454670403 348654867 281258854 707879520 631001878 282785543 352771628 356857208 45646148 790490494 132513435 14942998 212298645 524151822 906271892 256132055 313421234 495010571 111780922 152681228 94103432 120754862 626931022 68663000 571953022 219070600 778700005 326064642 271878237 764983893 406403063 159104337 296859521 853683442 514904812 448724316 455154465 603800760 75412925 368213906 900009312 580508255 202031904 683469829 926379593 197772889 724075309 793278646 448051809 75844018 366208628 988064980 192552203 864030932 237370770 919797649 680389834 853962802 39374862 678901510 511996117 397501748 61522585 50821126 526719339 130913222 481026980 849834053 298368318 340373281 393271006 143525959 663127628 118240661 492377628 460725853 496394913 641741343 595408139 339949810 387776062 705691217 925132496 118130504 638307487 701412880 634742051 699252148 860493757 384139337 97136331 317932718 822944445 643964533 56924117 542947038 696832537 110106977 466625888 537679018 978581745 232687398 549959592 133487177 528765369 13536739 937576780 46077392 468112725 662364688 38265580 322283272 875605795 468648104 547979884 926683999 590357203 572693257 287285782 695223531 289187604 472138171 167568424 705983308 707434941 902647684 789401565 921546212 338542256 313623925 929210530 103264876 825621370 631804254 10254020 62482582 119566275 790554365 92680746 378284161 994309393 173908482 215226332 844958490 228163151 153064646 820869051 617147613 377766783 272110743 860610658 525281591 619731201 520723920 451292289 443693775 477170850 972392703 175022775 346109486 416530818 770072650 495568289 544456621 58893122 623742124 541506635 443842886 855673537 338717522 418799398 929602899 577375435 255063135 343159056 306906722 326948703 9159696 110741786 465107809 355367547 974083447 912300530 406432036 138655967 940091937 206116030 71984508 330567500 762804338 581096779 227942046 508051269 169322099 885856900 555055328 386302030 369779077 791124895 868604521 578107790 298949928 548222247 465898872 589931917 200009389 330775640 1684954 271483873 803816688 409741034 947010939 446172754 674233324 173479269 46150461 126810847 112931173 244993000 576169091 698936368 802756009 653976999 101687069 292698711 40189541 653724596 506409176 392470536 666860819 457069557 309097711 387438759 242081187 966526806 748733764 178103692 360566167 537498530 415367641 659065983 35045444 651935221 8058738 151646810 579570991 572529589 162396407 248643820 187294175 973030952 642160276 340691133 369606293 911303024 797071154 56604519 123393592 605452225 175744227 526817657 793006438 463127081 666137570 886571273 460487189 111069044 968264735 624264003 25089748 336903374 837280179 875220671 375430171 620862227 817995662 990341059 850460319 124009603 996779805 757724202 886105390 388204359 880721191 359467995 532918029 527872148 239207327 693513245 281620222 267063279 268650191 806646983 324393197 851648977 711974819 687353317 483900744 790215740 8226206 299700153 717378437 342439395 213007283 20763322 171060222 667333790 574167425 897397037 265542831 829046269 988681090 925837323 321176292 243100866 190784737 592442616 116590302 921631309 909885112 792381225 764515929 403526165 439783147 68151401 895665401 466320816 233530839 504064830 264963416 502759761 331760396 857106667 926310863 747186297 598213237 292108075 829690637 631015841 667492516 459715337 919217278 168184164 541228486 613158262 215954871 79544981 627280830 879954374 636720726 785952892 36181821 87133722 215020026 205538655 622173039 707550585 467245624 789923717 329542209 17941900 685596372 371278942 630280900 513849922 689862994 707302286 731495305 719667715 312654026 529467101 835837611 342835942 428082004 453150410 862893105 327817883 347681322 324458864 392384126 777069771 715501113 105715576 57705337 302890608 576837479 241390986 625767117 311045688 765343069 812274095 930494540 574100258 803230763 564212500 494162590 842613928 645016096 575435228 608753652 401928384 118889390 824645891 535742528 153639512 590295013 706492545 79309704 612455203 996865533 308989632 649024808 627584508 423303351 906468277 105426856 751609632 569494904 495246623 819592067 234596596 820934996 595202893 471004006 890996815 14980285 742461876 886632169 6884116 642184060 263117684 975090418 851839353 370455867 697855398 745597972 251675563 956604268 960321799 783629286 69614244 224141507 859557168 572427595 770270097 963182972 416417535 406340998 500784035 375106596 793162966 872118494 547285216 107987531 664483540 467027861 788522376 70426139 752554729 896077489 833575299 9773853 961088061 735095680 134875125 595037952 151045837 75669703 610283496 608818470 551962344 599320141 438381424 121624425 336567032 772003727 558782821 279334782 958663688 488240009 796091463 560380217 292526656 495083908 382479999 597428663 315645412 201478171 549766991 439034800 223897963 185989962 931537564 376657808 261745215 603143231 961097999 711201573 313602023 12682945 256854932 190483944 241897081 904229207 449100334 152203846 468024939 540268302 812821658 719044834 653906205 581352899 894646860 921857855 551487658 199064947 226908246 91267642 964693346 918082908 258822543 217841011 935219285 605499134 716340491 61075212 797629625 186000248 107635162 449671254 494043965 467351197 562221124 743780006 427364310 613302011 868482950 566100411 357995384 511479650 22652046 512360606 169865730 48228397 969698899 398683713 979042294 477594181 526670443 891339679 376878720 626004869 852578753 691429684 543998797 357912578 327287856 35835243 494935798 85543972 524526940 340928731 630046807 190534146 353166722 71364502 85101760 466020969 476513386 151898048 619739903 933303371 254211364 557122645 555816997 687388855 525327613 182720534 262518117 169841848 327813331 58777028 352332826 498203401 843474632 551400648 957197824 82432883 947638262 276073170 246513384 708499192 330961278 410203277 617141330 864758241 973489990 909474959 172845708 313520919 990264467 141394729 24387185 654454826 264618574 548157048 395799689 736927275 798270550 763165241 414863943 942504167 584142692 452505149 174882541 894202138 720024868 688984061 453512615 382328975 556863075 449111808 522027376 795806951 238951637 58088699 28268859 366879506 978179337 813401107 386475599 841163715 223262966 877891660 874317205 817991991 12192199 508642105 98170793 364805112 94234587 149880339 671759255 194925286 444547608 322959218 6696209 157921036 881835458 443058231 680091945 156802509 372058643 703464614 652253036 593463050 903513892 884488058 933098759 174438297 284687854 277881121 895841557 297768275 41826034 521909174 548979874 369817788 758434110 753131856 698173909 16698110 691575293 778646417 124611250 56346423 875989258 226468263 593408345 907602427 672626985 334042763 100633195 453609995 139688766 546708325 106994312 785034802 534692129 861877853 672064087 322429409 378656884 477517153 138769683 859267743 442904626 576508074 971107028 285714030 278520663 667669963 229131976 5831913 227861672 520316014 730464101 879626946 309848026 71303321 984891012 56968501 73515699 514707253 948232666 4833477 768682991 626821934 810415272 374768885 898071990 81260183 858014146 456705974 795412076 447350906 416339155 527264913 455490233 721720090 406766923 772712864 846774905 662076747 484135978 639263236 809638412 46666917 363326474 603209192 177081500 469876374 548181416 493140065 31418661 441618345 899872699 862361106 642918399 649828878 122092112 470641838 671889022 298896509 122881880 18251519 149436348 598118903 300137046 797263775 876020731 702352575 936223205 533878938 376975352 629266463 470410275 942536095 683392810 992341308 135507843 871568645 416518153 552915412 693107616 403418024 375663291 33993437 689337459 866354185 410861552 991240957 159277611 280795461 636044886 263289603 42505639 11226107 941855836 953980845 886309606 233699113 40822962 534038657 151779027 522750065 489858295 920779046 557686935 83243767 551981228 474829681 696220803 187732024 666330352 646742181 766665932 809453905 893659507 150651608 392594054 542685130 512273090 472288910 459678397 604440251 907145256 601479573 441076166 422642069 964471589 995556735 214032655 844861798 719493091 787184988 241886800 324237474 817439078 448368320 997039584 632692390 231755351 63631768 761963814 633190443 107243092 532533711 751096386 60970638 630011951 782782432 542365211 296249452 133411275 821220799 770795948 145428116 646716683 579715164 632174630 298511175 273810391 790446763 378741451 700498511 159459450 7450913 984232308 371184440 262616083 257958192 548032194 941367893 495602238 692428065 687862 264947103 760546318 458949283 733071654 700063181 10236409 507723662 589122244 452131197 537260784 237645750 606558416 78967261 554769780 383961551 23334477 187534654 586214422 644358233 216686454 341502991 389933401 487811865 592247717 100206919 922168429 175451858 886123275 369162090 966020927 116659762 589856014 251053870 288936124 974835266 742143469 249298346 883804703 994234760 156313327 316790211 953409101 558644951 23897048 132471827 970108494 492854230 412443672 122021424 491131778 79904854 210295245 216689873 201397400 905933304 62075538 187763001 193008740 185434158 289716388 531362207 440489312 934026853 689884681 109998751 371848905 976011544 914962215 626670126 716908831 150127811 680015917 270297400 164371550 960617641 274731038 994043773 912023211 231720772 51162333 571524619 300961189 321087607 647937262 813568724 91658382 358823022 612053358 884632406 891713267 484987384 631050719 350915896 712969791 86338548 291276572 25467341 140180847 153878101 165584959 328534049 716174182 443259416 833488130 838242561 927792338 707927645 956444401 69251797 170347938 942405348 509187377 133491946 274377346 928146480 927842188 66964105 319004216 502141250 208446000 311610990 843182067 346245150 751856386 294571965 177994060 929779672 981321469 636432924 231878083 791039350 449095035 630752544 135098987 483417760 868287871 670346118 400598370 632760246 37102012 969067126 870599583 966745703 290330588 396605491 566950899 83336883 355659408 452777969 662893944 738997797 268450637 449007640 402184132 758610753 598343554 80002424 774013326 781762505 519318706 658081566 200776436 708142150 4580876 896204100 80439327 682482258 895740085 43193761 781769926 253881015 23385290 636594607 113827986 603741765 115801110 615744115 868829594 131563937 404295206 675898426 692542678 774686626 768084208 990513001 335400397 41625029 1318302 917560950 318189392 958719010 454661672 568443288 144027114 223350197 946789080 868079577 593023062 481654278 928611174 533668384 595060557 223777860 464930055 479416339 570191170 820701565 255787321 846487971 178973820 322509761 836235137 779838732 818617757 805849829 692630301 380594541 283639076 841330878 609892979 206265222 311489243 454807325 596550568 834781175 979715647 822455260 989358835 953300586 181398934 230266161 912116967 681285179 222139279 811259761 464281220 591835802 898121303 946765254 948564983 967492996 322218426 426875965 959355116 951010893 447808506 151907665 71240919 841022629 277984275 232700772 157251633 418410513 92590009 257807016 436352775 486878056 187126259 881970427 564227317 681278632 835699472 406913024 938960459 209853230 175447850 136458965 484944027 291437803 443895395 921186096 650389953 904783000 120096490 459365700 307764970 811079783 329558803 532509114 424681651 218419084 390222787 261446042 356128669 895501028 674260560 469909600 202390356 419327362 259935215 911305510 631923754 688916333 401825979 746025293 477774488 856692647 289726694 317021091 420338609 223126215 828226580 754898193 774420731 388181604 169114707 603398706 4488871 212066988 998426913 230093149 82411912 968172041 780898673 40204 149000898 256976457 222417285 55027130 174081968 589052371 421392786 918889615 862503631 600259567 343835809 568314110 416737908 537692084 15918344 297115807 934176683 818633355 543634660 51247115 895823752 464744214 796949104 899407966 142427899 293864266 346108784 529094097 357601135 517479485 940997799 790880764 203823133 43137124 112614549 305887548 218506014 945488848 336701723 766662778 591048153 577286680 40598832 198733284 111652404 93581088 951001148 875989373 273446721 293834480 775144902 236077215 157961755 799271049 266723562 416924890 888498535 101134835 243537303 443470878 95803879 547791632 472756120 903037713 688691877 346738909 680607429 386449443 930191600 381816459 897226144 217166564 97282021 61394964 620314222 259928688 525714524 430890364 158469475 131240812 372475669 519155143 63071493 740814095 654213559 152545 528511362 560697189 234775617 967776209 579435461 725060079 342937116 17720075 590907160 892315098 495837697 471814743 658870291 136635456 220697879 110778940 423368063 64653436 515117359 592827383 748510371 160506572 828446243 582023020 713714741 917962545 163861473 206906163 746986683 512299920 261684505 449155598 68562926 149332252 427519423 613202847 970004912 790573024 894938023 376503916 623487371 356272623 855175594 493120090 63910098 654294632 391283713 973450060 188540134 409925910 48301997 666246602 197395676 368360685 205769784 685350975 563298892 195779219 328435317 411241313 663024398 988139494 385706803 649038554 4796761 384384588 10966596 70445810 67643438 313092119 951834932 119532087 774284417 271160389 867726268 308449401 565450093 581015525 70381054 491679028 477088140 44043207 347150773 790754563 109009756 967089537 100085980 312605531 64864348 449309003 63044539 817625753 653198095 885345936 300917036 855198321 948947839 81907606 317632545 336266805 690122954 836373617 926516516 569197343 272704377 767539548 411777364 491293588 877216097 242588565 85481168 187458715 132008748 241430009 839092227 254093757 884721114 673497179 108230513 531566625 351227412 611938961 162429977 209041701 419350840 904467451 109807475 715560667 296461985 980420768 415329899 622358579 444786887 632532009 591731370 62549848 906156483 114139081 703152310 436083179 589252589 343873350 122695693 156924165 903148189 240044268 666305434 757002093 636331395 152206032 203701554 166721125 563580548 349008332 616033259 603099929 734198631 728545127 4536650 364893435 424579392 424023636 225761576 108268891 787031439 793566207 369703151 19360969 204291699 481774102 206424512 949955537 336553276 15121691 781965364 909549659 814587888 420255559 675206183 274999389 628951735 180421933 65783714 527401517 964375118 107026808 237146847 252061835 200612625 669929108 385089360 823107806 814726863 550680335 262705611 925798483 270422315 575800504 398585061 842436098 270742554 991045730 142662061 984584263 194683652 743203956 815782608 156038307 948679807 699261316 727379966 185493738 362593805 356833579 696310416 866183139 691792304 579487790 354656669 416209962 884311431 393224820 410162324 941961590 666509180 786113002 552562071 832893197 660508601 121148629 153656248 402776134 530570209 391470096 73865970 345433994 642984285 613065213 708231390 152912570 805546811 208053725 128274879 301708718 649559011 617750371 420572865 744789753 5040480 509320843 463684316 839600248 262054529 789418991 906430054 149671520 488947390 995205304 492608717 460675892 485806256 480865298 329199850 19247942 973485864 249786883 491948666 290846788 267662636 701944159 989558041 894286825 980034766 253376485 524445471 344296467 964671377 102809240 528145240 837786510 923932304 153562803 836915227 111225098 133565275 740375709 1822190 997940705 961272356 910701310 600463874 236294174 163758919 382193604 27855850 449530310 356833890 692959384 411909362 38254685 82428188 828416243 877693309 121894260 389153369 981614441 245743631 801359515 145717834 620282709 165071619 860723756 105867047 318816930 620885793 277879966 534718434 338715909 803055799 44922792 289604721 19367661 549503270 105772249 313074902 478977966 874939403 610195402 539540387 422814155 499827632 131502027 316994092 148459373 320881759 167594226 469349569 466285837 301727868 331566940 3320295 964298587 654205572 90547121 177093303 576363385 132426674 585792295 785409401 332218709 962231959 34393489 972364339 788625101 721163657 800958501 45946335 588569371 309728317 796253933 775022081 287260616 773895536 886617410 557880801 960026754 102987635 888343494 304692064 735244697 66356195 286491028 632598836 608022472 34009429 670702280 943281859 155314266 271925849 310970490 691365700 528733864 471873116 133967607 86044492 78930353 56630297 862739948 30934297 834686951 548946522 641325987 558948483 756635495 247654179 798373896 390245168 940120252 464468734 415086125 671036221 827911632 277732097 472157705 778743074 557636791 352435218 842938166 444216070 355190139 778101390 179036510 900462360 394040959 337793434 333989187 805831068 526527902 465498560 316156005 385285851 49011555 686074009 266811680 613306547 311975770 419613430 742183592 588435296 23823719 528246967 367593441 282639470 850198552 985758819 943246701 451708169 989876590 420296537 663528566 226742635 572951223 967049960 240139022 418596893 196895556 351711175 403730042 393223609 750950177 287377806 769108414 76924879 172327331 856301022 665679656 281791228 900193510 817599578 199310109 344605885 69850050 667976810 546673050 401435044 664139837 170922331 817449572 534935178 588050494 733890297 727612113 967093357 68639724 813530117 714118137 835067698 523891525 722903329 100466407 433900896 811426090 897103191 48078154 233115346 922226417 519229177 781980270 614143818 753729215 606292319 897469579 800757634 937838949 462425876 885677208 167375826 835376425 919036258 768107416 226342656 11337586 307986469 802674022 47672941 806965291 446466754 253691939 28509166 392355229 756011431 417420510 802435270 95550726 514652603 217397153 66677714 44087513 250474396 90198384 805906628 470359688 951946423 393446178 784348571 842715566 835681355 374659949 252400149 64686526 716572787 653854289 997277451 690393338 723096841 222027114 568151320 513415418 269244705 798365933 551327078 904753806 555241657 598885420 563727416 246781379 632525567 942068823 914603494 504608823 861503292 752482815 872153968 238191185 3857877 611234514 185819015 712259577 927301817 869325432 209130740 545793756 557868828 879705622 478084489 986591519 524555398 892925564 160510236 247479171 944175894 932035758 364890098 482356088 512169836 615528555 639871224 44773857 785686625 782558237 10651549 68800913 688948589 110517405 556582915 621899651 621523566 497400449 809128535 440687157 993023860 840375038 115216163 560675659 991664790 941709369 749470902 457865785 359620177 293229310 402491992 207783511 513635827 12140189 513760258 993126236 437175306 657104003 805249925 998002621 878400946 873299259 532527347 362206717 166044406 519677195 51478085 226032173 351685832 541364112 488320089 71368571 475675186 532227426 540196760 168242213 603048709 454526812 40953545 390526582 399377347 73731470 257980525 510801977 39871895 105053086 84077060 589358197 7071927 192074831 421849420 406752609 89333672 480328615 290663354 589502743 67858927 827661718 282499506 504575786 296293457 5713534 515477070 373934027 847229404 915307992 857816136 708212253 233134726 414171990 201945722 732986419 877185651 352098926 351069952 630261492 176664145 229149603 973075733 171227426 502905515 789719616 142638505 45039011 151794199 323094232 922841050 416206155 831502189 962181616 381150890 568466577 906852058 992261052 795859484 16596582 507051894 445403893 23970793 778324521 441730709 576520616 520975268 769066088 72910950 818846927 556183265 71018873 700677846 704199483 68331785 903948944 260951186 845678056 540801708 966874084 437670213 81524808 235773592 253759748 608075209 268786449 905286210 55231200 339707118 205942284 344405606 688929378 876138998 844142127 893374252 68575883 582023917 699125693 787168808 783603375 75823137 82217014 355667976 649838476 735367737 426801108 421922276 301880876 399347952 679766871 505021445 895017973 661170442 519797060 439667784 336461233 11643115 599318244 982959981 421850833 403177134 516331211 885013305 650620545 538814520 743017297 293209337 861763013 240903500 720418178 972347033 492486963 442217145 824020052 443035276 72303132 302485063 329816580 961525093 30769372 606297403 40462207 980956186 363378151 895799816 352386256 721635706 962356772 658757976 750708376 467473178 120609575 795028738 685664772 275983012 603077762 423482789 345766185 813298635 343150164 761136085 900500206 19425215 918924098 236346017 587813752 987229715 705554370 785455785 988734536 660048370 623790 828970654 817883695 30935181 880133182 656860063 496175415 293666695 301117767 589505659 866312459 860329115 280496953 838195645 693585388 37602340 883008812 263352130 871906608 129514645 465289520 677925906 286207785 136853943 285499321 525024898 170950597 294224280 553579035 787944808 752476306 118821969 827509420 917284326 526346441 495811007 181812594 712212557 495026365 262792677 787772505 651969777 200747030 257426782 220768718 266031594 494840148 599294192 709796543 899909888 478270673 500055441 359750516 972810586 215389834 475763689 96037317 291350406 703050317 757039146 310175847 793888037 34089374 124159557 274718625 82143492 507306613 152616185 114278782 281858365 543299772 289744211 397863574 981646396 565626873 959226340 719479630 21677331 511916848 125983157 770462108 627653996 103580733 646758351 363081065 122884856 908478155 234092799 149306237 344062437 716864643 530391370 681583562 947560343 834334926 71917075 716226878 705295726 395194751 395158532 167401156 539649828 312109156 337717553 282760098 989714529 396253128 947308447 143977209 916045952 490275118 329426525 873206878 68143017 485165679 897054271 570816891 638761794 735699425 121848823 279019520 556861394 802080872 955737160 895590688 21588243 490638957 496557671 459361795 857730352 386916640 40995641 885985383 477185217 367346169 328807699 187356800 726796989 15781147 824593212 538124886 325077426 864944541 583404506 986298011 866976107 543274430 159624119 35785141 223836877 11761067 858836576 315046702 901870235 488199614 366660547 878618392 678642045 508413155 858657889 878095747 656812941 507936086 149918142 591956967 915305796 864236012 580124323 647495368 795646891 878921265 386765322 353751877 802318470 521390532 570766805 906777446 966880455 569171582 700839859 876754340 976985614 310604395 377365414 577445428 633789763 585274197 47988754 89812474 514942545 103384653 677671621 107740920 773438283 79568099 226156923 445086646 684114159 646809179 779824578 106049070 251903590 71628425 978962556 809064581 270362884 143538388 809790905 388077834 771251744 618858414 596622168 677528942 116804230 240347545 616721640 415750143 511832483 60585749 582180683 858335581 658112892 260206007 816366077 483557977 59671388 30204976 192197625 474412807 241498989 407777330 622344285 12656081 959860898 478439638 536267110 543731360 970941952 144406779 588477291 233263697 489429509 520665078 608616297 679536706 440686735 275930459 508390969 44546183 464740946 103889807 288233904 746031201 674862574 445853834 124757371 180903063 517109128 889613411 120211930 460272125 950010379 141328960 579132073 727156631 979222971 496757367 416886519 765007358 175443021 871599634 148699843 794797027 992117469 776918567 928088671 620083876 431248461 94177420 54635835 923868885 400240167 596612552 335763539 693671690 859952155 608493318 880133933 428070380 565568007 511645873 315863666 671634063 638172698 884290761 953951843 482857129 255794091 259626755 671848129 477970987 233809706 144318517 162620602 744513733 603846169 486872164 921166425 148643494 265233590 672187132 468940331 939931010 176939926 816824570 779355263 94356836 808108656 168712565 808268492 132433592 374716805 140992134 621875320 710580421 896421379 927351618 63949227 721837258 907637966 434008237 74670699 604589052 584402532 621592436 529561835 723643973 99869379 211013969 711955253 300490143 662388913 419989518 128576047 222695423 873245179 285222489 565681489 372686150 592320550 253795014 819845200 211289121 352599560 505630999 508548860 650915539 92531624 170746061 426454922 467775033 589506840 365591558 891811644 745961468 387141025 664589684 279955860 218217258 429675329 477210453 89268275 144105435 833249348 96297583 797223551 913853673 301937741 301477 933644445 248155043 946395904 669201825 855763315 812693873 2276457 393224582 227544860 311662441 174598195 963512514 868312800 980489604 982570537 671632866 131631393 218472488 468459093 711724647 455561230 311247413 26814101 446261035 50314415 6821855 682692059 932435589 775068242 694052990 585502205 44042033 919832414 833058024 96501200 271789667 363593661 57681794 928527490 979597158 180792666 664763300 409538794 170715494 260068246 213515680 606919024 46478074 648804489 34302374 554766052 119008891 511247407 664101298 172162509 552977087 78182988 176996655 430688923 280769458 482874120 438295185 157686016 540200758 100351864 452981238 752394992 993298939 475887293 588084864 462674401 775464816 564936373 836100013 366993968 139282564 742990047 477925393 429619855 187435357 911770420 845043059 60454175 635870062 145539085 583191229 189143181 290623399 475244009 964861400 493445863 83640577 453570232 688866734 318488930 296375767 264174279 794230889 420330629 863109956 159792292 824004450 659901896 258543902 164863133 227250820 320080574 604679737 791084870 511728136 610924468 176376966 146311548 420745850 416700147 94938468 258365833 428314562 670589647 731934561 98398082 765025279 106915805 63876070 919378821 861996590 798455520 871667291 192975610 637528405 275182142 918055108 540983364 61701947 322575814 2132257 898402719 24554210 79446636 863078324 759766856 155688147 949696863 776459836 288236221 844830041 960443623 431381305 185132862 943082783 794547073 891600088 246573696 513192225 922396871 741651894 731152358 439233237 255045734 765014182 798953714 791126056 679650313 802419232 630466251 482304091 243873175 533050597 33188698 567256695 944893413 356185634 351707032 689847564 105380740 966343079 143005917 459110245 718012883 377646624 369219490 316717648 372493062 701395292 545349622 730714323 406427708 612321311 487525686 5491981 635123130 794262546 289319395 887676641 913263845 751052916 221451256 75124545 789320980 880280779 258869518 668604009 494539141 284047273 810683093 441344732 229405467 406438790 650263109 344924223 475068963 796971641 475625615 144099684 707361309 569824866 342445666 771613976 127920621 61845857 755791943 876547759 103442803 321314108 445684088 997454574 883714306 642781906 534287701 710369592 961362557 46057028 805867162 514065649 932485737 704687596 233849053 338821809 532003316 366920391 705096497 802974625 495175323 904351234 358377291 604830745 136592650 503103351 753956343 408576710 736838306 377849381 655026990 323358549 811564793 44603577 648660723 450313670 569644781 361401211 780675558 653861506 213001415 618320644 552774168 480751076 869276480 104077141 978086872 824525681 49883211 205677233 589569118 107870318 799671259 888160662 229857354 325609302 20708356 415715206 553779497 562454134 875223849 783707121 991890513 716336584 241155415 735020437 913434168 374968148 440197908 790772097 42323700 351184776 523533016 108669109 537277280 157996073 995758372 810232723 113277673 476227332 597232901 176616335 536830555 228016322 867136650 327555119 628858879 723816579 988001904 912944141 686716820 617899232 679463012 433029973 16386966 457685405 587335676 862076637 389564320 504001914 139326677 346943941 625247445 136322690 380587259 885208043 887023531 577107251 967457632 451617776 434129359 818354759 892728584 138398500 944998802 517437812 34832568 391380252 854039672 254596545 217975709 258512588 874907135 969822107 400840626 10368613 975471926 571048189 303727177 150391340 941080790 609806854 755144219 605434735 763552300 823904416 35666578 190584953 506682081 310691595 8466525 581138609 415075919 451181770 7090797 16052268 869835350 92338434 168815093 38856764 855048779 200166779 482808776 572045820 849555859 548436849 447052416 609718902 205436047 313967722 28084082 463272403 760413764 281748338 169204377 589478042 520030603 330030299 420399553 966143586 633174584 974974227 684108930 728370085 287724397 717397275 896833724 137082059 816039513 686553303 561560539 944683681 21852408 952432685 689232242 652823993 685474675 936161460 157247928 826980989 946171733 868931956 238653312 204851606 456928198 521798586 10572198 380952461 647427784 516759845 676655861 108611554 286910697 73129167 823629617 100126770 199872201 137701941 794568100 195797582 600086920 260749298 516121278 475952856 757428368 273549723 833029071 320927191 650204907 19976128 785524346 780885561 265678884 611367271 123518092 287254761 316492876 20353763 201982731 349947011 53405746 837105606 860430100 243176325 296076740 637910097 521681189 412719154 84751346 914487999 74827843 162567730 939156956 121088090 391914982 707528687 430456500 256575853 800147967 916917766 850423770 308174394 383358268 892889499 351109336 269425330 477566220 182128757 734590144 467906288 365450017 769407029 371393533 688986830 486043583 221256293 239929813 508828964 659736008 52576913 653647957 176900162 981894413 570024829 166126569 437608488 711783576 831418782 965348601 853782598 214268738 474700047 881871356 344344801 148832300 891214475 787350175 437699862 495456256 706996063 494037388 774019906 797061141 794572764 122323298 560994136 517896857 716410111 188637849 634961484 159017616 739718619 925791423 104718233 877325293 556676321 460199293 857062923 400935944 24097161 185141121 153346235 264528881 248215903 902453572 300848862 21613704 94047130 146364447 694035514 179687373 201349601 485408310 435172404 237848050 698322884 612720702 752907085 859586252 976703983 220427990 74963534 124861725 120893340 106792819 684758739 712104019 405802535 28921217 203402288 385032802 631629316 101237748 594607077 827129908 988812063 109599377 193255645 868157462 500941306 861031490 576592872 116203853 257935492 588704720 89887415 297327429 23241597 260869952 854581291 340930862 731719406 230969782 884013610 182143906 835241552 204419711 721298321 798053204 747630547 351902158 693691049 893155932 107549930 679558331 461680409 500295797 76882765 523153366 492570974 888952568 92028413 617498742 8736104 885216338 500635965 90847774 619200681 860960383 827076430 973591256 242654298 93320281 410963608 561933192 488762317 382141305 983344921 836272188 41139039 232314225 454036507 942611537 95631983 962011091 154419463 209819179 752562612 722169052 429390221 56624059 757074250 994360930 435426613 246160422 169940424 400528997 891754359 897883066 637002822 352374812 479039009 561732868 79712486 938089504 452745251 605331672 161540492 31595918 646086578 444443341 577658014 614222270 514831715 88956879 85082634 204696576 946214093 254780327 254205044 993171567 309055431 955840568 598500612 231666056 964198227 294189333 430891236 160788685 10510556 117192365 980036559 829491864 853008291 865938398 650546190 752133597 825503052 941261578 628125036 874983943 965785556 572131766 607181303 225771462 459188862 920950648 207461589 857436975 171923886 448814232 696199575 272570524 106767504 986451213 232569189 778178613 529847066 161462957 820052561 445444012 734647554 730735905 67505136 540246200 433241483 568492279 545583351 368600422 59574862 578403597 694801944 5725714 463004551 120417627 824243659 827031805 226064977 341534473 470408942 697251631 247112111 242234421 500311316 651665383 726890650 802061241 919320718 645483673 301615025 890521275 162777652 718622221 456546772 560378047 786776622 631669825 575977046 447190806 667975035 345667077 175294640 865208184 315489459 199389876 24782226 549234206 720545460 139245124 245252084 544730363 756362183 476149216 583104644 74045738 414220410 284753419 584127160 436646592 423104192 677324537 223167496 487104969 442781145 278186792 364185666 172798994 79530823 337584399 7464609 352520490 739172786 838268258 749340673 644347003 993885874 855803881 625589239 952256578 460366261 475491311 322555085 88303503 461351333 90628115 235816125 273097845 582485479 455462306 295978371 12101754 491247891 437039373 544621419 342860701 186369837 948400465 96405249 520283044 133203058 117112812 46140451 716870968 276686146 351255860 352984605 959821653 514929148 827772953 380830812 790606286 943443826 80385383 863814560 356896770 84109286 547497233 421366594 654547246 278040654 307540049 227883446 228609886 400988636 624912042 133921607 493283534 781190997 481607359 579917715 20563768 232072481 868665167 408926827 631231525 960923239 155899419 113808951 598318847 59013971 626151409 647953482 365528165 482047254 799152253 728434593 58203188 303343825 591737718 586142484 59214053 586207346 874022569 653529493 434562860 162907560 461704535 454824229 792835412 139461998 540679780 230782562 876088932 558607007 495584793 503064052 582940469 199936954 407811755 478615472 858032376 157166292 536067034 898000913 790881088 853178616 217053951 920970114 927854751 451689955 612652359 712097155 114490686 453528050 710073634 912622084 36889842 99207332 721909208 960171554 550620114 852612856 311647320 120930550 981585773 376501998 503498170 539764430 337297687 791435895 271111179 798579032 932243761 812362744 967921179 839508860 609588204 808451264 345258467 348714834 740495280 204217830 202740490 655013149 986924230 399654979 858919621 126543518 310205783 450096227 515646052 194539538 193107831 306124654 348425759 907189202 230405182 721307112 365844550 781947717 156077733 764757534 208183370 391074329 353323059 508117875 128825062 186527549 2543215 205778535 706386005 428981441 121452800 802921600 230703502 451725368 963691417 369886342 97912277 961073087 436156488 149883542 454128495 713380865 91065640 253777552 721383626 893621859 286366610 21968676 893614062 430396122 366283851 208502876 902320300 297653890 595966064 259578649 334477852 907085375 316742732 31951038 52683373 860445534 261884152 307033811 200427990 368795677 121751202 324841594 941937704 740487875 179972966 857841954 380150580 145538652 652755723 763132335 102355502 59116669 681199048 479187139 787111843 62879888 856908441 423696709 380233104 411623886 10206729 45598083 312234607 195274248 639870957 487562975 82360585 296906785 937320615 283640513 955780023 477552822 385342305 207909302 138201132 427984623 348792373 752863342 754439438 673674918 608692464 919188044 373415935 810727635 739001148 18713157 509224406 49588822 120858743 465527634 388197002 987786659 790968971 984117996 788280246 526137924 219484672 80212495 524299352 733328393 692332302 111754300 784739586 735030058 413666542 317585558 745945615 864477649 976695370 607649144 758802206 613232393 124861826 653673467 201100853 186610513 869972082 91143348 272156481 695492031 827800277 934774916 264919141 453634198 656082030 199204711 825411567 808780476 635391260 63632125 81004875 585257812 568182364 57154842 404531783 299862914 735776055 31591182 425427132 989790813 320130408 274325700 686104760 753613489 67816664 853330699 945283218 646524683 968807436 536167055 118161072 226061777 767227699 990331834 344577816 680535328 733110016 413495114 829814363 211722228 293400031 147719306 804836686 494600087 641828481 680425122 778743331 895781262 538247164 134351252 440119038 837619096 986631271 813297512 238126749 700318047 748391090 969304086 278833874 616042299 352683186 53518237 318389080 807868592 84796656 146518415 304069784 393505231 328779238 754434523 455328959 576944609 552110917 269060533 989936337 629160065 301213131 976178822 250222727 721788214 800647341 50433241 854759543 830842135 409329343 842829464 690783636 422065493 757134671 74883058 598051427 761763682 36500206 152885573 103656635 395562366 132200065 883778862 361533132 828082782 699125273 692573466 231571740 905265598 685501183 807822232 487020234 313606229 534733469 957529550 663725699 270441383 807204850 450668339 174418161 950835653 526491545 504752620 957057200 647070529 867529318 203377993 331059611 1189228 808098081 358235661 289071610 129215688 394382108 852629010 55160153 580547600 637443822 835598871 814400963 660417781 543874031 907566196 665547022 808304691 264976305 710884293 930080047 124699462 396780183 444107295 21556713 367516487 789713362 777724655 310714748 563254988 554937028 102075265 37842027 900651166 479242057 845423942 162968023 521689841 221326480 536425425 66846121 620138905 740696104 264346065 333070818 11026401 451114039 316626531 830285638 20092497 500599641 300144819 64279055 315871721 979098291 622792440 103531588 51096284 896965405 196665619 911751370 82571686 929085649 787506229 74327006 163452201 464142097 802426252 38963079 732811579 709831495 577511599 904643744 214505419 418814278 692437735 837034557 862017965 144744989 524259389 439984919 23224343 711274504 904927019 277046389 446886144 723599030 245637269 350221366 28635400 876460664 707780202 748031647 93311538 910150232 749258946 978083367 913433157 213913083 430334383 319047778 898954094 710898457 887322525 551700651 616574263 242731832 684208036 618051753 137123137 583759710 749555362 205488432 11482629 705386660 485621001 832708138 679193395 414812096 515744341 236786773 115085854 306712553 317694957 509852024 65589430 927297731 377816 245506779 945247866 603047409 709496576 435337755 908861221 479513003 553077737 446727206 762433567 513542701 715484958 265667610 843208380 655195967 462230909 542197879 83668205 682456568 461550046 884781041 366447567 128465433 984640660 940955970 126218885 662957779 394660925 145483125 155557615 843704005 35513424 867962928 803453262 467855287 188950235 349527701 179471098 745494374 213347454 638760200 1078379 775095519 777721595 160571769 771530390 818746616 943700034 778793206 973437873 236442293 8499621 371312468 370531342 511679132 923757041 422762946 416841294 447397075 732656482 293953549 259191369 351878425 722682407 435103374 152226743 908696636 262930622 927422742 833355859 283419194 117548258 913136549 184314575 588451018 704245671 876075385 101267434 56262646 127677507 522624591 794611246 475649051 605693520 596251520 187775083 205178566 185622504 576352987 97642328 499772990 875357346 266638864 80978580 546642400 770653542 155651194 614959559 408493137 298244505 782271872 408084044 14376610 582428164 662359898 862725968 901814733 693691088 393015613 205183644 170581638 694697592 412306400 233634482 632752913 556298289 586011960 386593351 234341515 441705658 406072414 245999085 77866379 51852511 868607904 949239211 955383622 878426414 466208431 676725073 170157132 412358457 942378759 257870846 706234992 2479709 447922140 685399531 793520866 471233130 362067291 281700442 906042514 123742371 489644901 579423769 995731971 831791911 442802159 183882074 434805706 74032989 340724521 541720761 595360377 955544419 943299792 122135387 840432155 29856590 56807857 513183362 714702135 690856445 99171031 681539742 186259039 830301884 709006889 340776728 312343035 788773669 884774653 436006498 534843777 647530612 3832898 600170795 559667011 640778669 230692535 653417686 31945899 939671409 752866856 523608723 271962402 700230972 858785201 707062561 136750934 884542817 321008960 874870068 46755249 265575906 850006042 596715895 723698100 645375148 206337350 315383839 347562780 523467907 458439100 135669628 144544634 887722079 279429122 65009852 377293351 847211683 810461082 167320270 784911607 909297618 5040940 777465612 469890997 214071619 511224790 171238818 6232330 604042810 623589150 758083038 447279395 193547953 74022530 274228950 298223598 1394412 265705960 341600145 554903338 795913980 131696000 264463517 65612747 545288172 362121536 251327682 894701856 280150550 684750231 979104747 594293297 374916224 294966528 737977470 462552727 106387621 911365845 620812431 698823907 150930307 434381994 136471492 267579260 946715987 937050949 778355794 202586160 827458673 854122554 300404333 784477080 555206956 502464943 456609391 747662450 125588011 476088807 900055567 329956865 740158640 708779218 243375961 303612161 813861548 327407121 362057796 225356669 282079015 762712009 276165990 429583099 708929800 618959016 358669414 192022496 604267007 215817248 653251519 302715204 605816720 487337281 951880221 283419581 938081779 423662752 171876937 348133114 85579344 939001169 824950159 572998499 568432281 143816199 859565062 334465967 961771246 734326431 487692778 920219248 418097732 448137859 649655351 240431751 29366532 416302649 697693249 362738126 236384034 913680087 84868746 601658967 360942051 612999850 415706029 546449585 258557669 341556578 279753832 171404438 19799179 741049066 815140642 100812536 516562812 311218377 18649687 920927204 395395992 314843611 754596433 770420687 807030598 193221337 882710101 917896222 349277697 648906407 289045191 341831765 251859328 358020312 19019294 215775748 2894806 603442341 180900527 774539619 518802161 287043114 449219430 484355900 318746235 402955077 240699135 643298909 44608713 684791972 637514078 105011883 275914708 676803887 593538375 562374259 538086699 283852594 800582132 793486107 27300568 274849601 21045668 885891993 996511677 466038056 13367967 799517295 377215427 374321433 147935186 32181157 466430776 283869035 286300940 407177626 832059247 596692730 904136848 7282671 631824383 615214131 953813953 493896732 965357990 762207798 668813440 600761566 953059636 108770561 507197460 235762504 24834334 680492249 738406709 180247264 233316543 851131568 335698670 376926682 749687582 918651107 998962024 813198905 686807229 779600755 600088386 988027122 629217658 903932145 479993627 507013690 588102183 611055790 126263740 204451574 736441469 427408020 465074587 950667573 675377801 119390890 606079930 902268303 400675239 33008511 193780591 363580174 349303611 678206464 447909692 716553150 216147737 909526481 89552644 448887423 80563209 370899522 860122765 862351721 129122227 876006550 66588832 770798845 144520417 561175380 409612041 630672732 815910507 884425505 162505462 401626943 116032010 634912566 529922854 997201783 643736838 740795018 805077717 480463745 627024569 78662092 46839307 909024279 59459936 862836655 119630496 69432387 809152257 97599036 673091112 546489079 484539063 99385736 375696129 305232152 989579197 105806236 625130843 974643839 781096599 165866171 48432973 470668266 871021145 415120003 742212809 770784405 769031977 620682055 325433848 636985858 822307897 651456905 846979056 12173545 308790860 50048737 242928437 855228846 492214273 553251275 172774019 339149144 645946075 277085559 169818617 865457519 560337727 927759370 543465485 718958074 741879829 212587711 908076864 316500692 35336169 676391749 64992443 621755741 554666328 586481875 597515204 883270324 332169571 479175319 336237310 720914137 315612475 115014508 26017668 719050223 62287429 448733495 308265147 271520558 33199762 871477939 247393520 557421048 467550981 810956863 480219713 628695472 100446834 24009929 44853171 140563158 88021026 949250210 239736316 283708905 175632066 20075645 714088974 352935202 125554962 233906168 990276734 610235097 689080208 831302134 599791584 136840907 248291730 504260379 464604013 802542829 164074233 107960116 817333391 136068400 456799006 11297390 785311582 597878938 590666103 209536630 849546426 274610681 802202410 68638135 795213533 816475705 126796030 918770767 15734519 807566134 993864351 659604351 609349213 499968447 300707685 611275734 878095516 901262591 775419342 523464767 792202501 561173652 595458305 641497008 438316350 80024077 179662124 881229149 774602735 835497586 598981883 200276203 541911574 454622833 68327612 571097729 907134793 193655525 983253340 545169525 73571264 55773032 326385803 347036265 245748712 393656482 942575276 176799182 494823124 300576342 408658943 809497636 546486186 291016748 134735715 232752301 884424967 4337657 795071956 564166986 633540077 831224049 689043635 634850859 34064685 854492656 942203092 658326886 142086442 145223326 420951839 362940466 345874105 610556423 628020997 310521253 313272800 18038446 925071308 270071665 18015010 570121475 483660910 226910455 338598313 707194609 802329115 250174240 79813174 349615999 149167262 207409436 906901735 139732083 953100708 876480783 23246585 160095817 678445208 905251345 534544180 694953585 697093534 151852725 339716927 996149529 129292655 611376420 106114786 46149927 855549949 599397326 332687784 402252864 769745890 560036126 718671301 213487409 976165950 728680465 544598739 531251242 601986539 625271555 652509287 397228009 85217028 11766218 793858455 30250759 767510031 791711167 902955437 152739364 761862054 673962589 515285007 261742162 269367550 109333720 109658381 262760206 401368106 836954834 104355213 163723346 852022319 939734377 580314475 637646662 2128499 915867579 142510473 844591313 525746386 436179748 882019289 730730482 227798192 380721652 724305116 229184819 982679386 206744354 882239294 958233786 338546026 666083484 952644997 307366167 271629630 747545344 130636607 392040040 75666533 838765903 512304654 543836834 187975263 215470870 346483091 503842301 248656446 356752089 581687127 910851147 749771294 459410485 871501981 293123165 457981980 434062986 695475900 916691767 435023539 954408936 695668097 999571596 155536573 232566122 562066568 231498640 852947202 413860034 586683652 120779294 40296711 578767712 452306958 801546238 734451233 626225805 542566769 337846599 622318353 256342874 664101856 474958163 549626724 521879781 279948009 685813104 848263857 794501377 294354937 66111736 342016088 988845554 404648913 369995789 627184448 467247531 266594068 944264885 161441838 628379201 68986958 954250218 187143131 328570805 126941270 681909295 691648231 716506328 231929029 719759407 573179484 913095779 394022474 527680934 955901596 951671608 595477716 606702848 173897090 208647791 174755755 755177684 471030134 606741212 427319945 255668357 103757353 622687701 519403344 723830309 165137477 800786076 303716309 229703594 977033126 285426692 13666612 88878694 82681930 178576983 87503294 627637925 68965121 410278664 206416657 939061697 566827388 720504973 694185064 746585931 728566561 260347173 299016167 265690745 707530545 259734212 225210332 458887548 676188457 95283644 110741219 356326775 515907518 731422654 247302575 196875954 714549452 5049153 978078680 476726508 486967637 439228701 324920215 841361157 970532136 378643907 537481215 359352926 519502696 685235941 173222768 475877101 451904618 364116254 357149470 946645318 421428069 486337180 179184753 830586784 486170395 889822150 576893467 664868816 385576014 255352367 188321333 13872260 839648545 889866508 913466633 687100383 194981996 318532983 30381297 564316440 412570419 818196452 638857872 877025272 390289334 176418524 623261325 782952838 136227713 506162114 588945753 606580097 334081378 13347100 145813680 975532406 438195614 313615214 951897755 710754656 373602496 675130736 929887990 987775520 258421337 191468855 125869861 431181077 603785498 177895339 995504910 693393137 600272332 399398747 371785172 31526307 654170415 459405677 751191346 347286116 262684883 277314272 426717114 219904541 824650216 433978451 832295906 84898825 421927058 964585944 728307091 80898593 348682609 110395787 282479925 440804785 23754776 931320196 67799831 458175162 775526427 560962995 892204366 419655911 857895897 898800194 848333696 452239202 322733986 302468131 364812976 441669927 211018021 415197766 291323316 600374374 174128920 902048341 624944175 788853177 622575367 129005814 360288406 538339436 795418091 401032514 201145712 118923882 913323600 740402179 99251264 377151812 521756619 896437566 315779279 261705347 655600963 429491270 797525379 375968135 416309826 789384462 377423039 464889216 89222921 759587965 219064735 947150961 578763903 713615349 757630987 736356150 43037761 221947364 528422417 629941611 71715285 501612645 455448060 92463346 46994583 791779550 526407696 800404330 895733361 7422939 264558782 444300175 870389347 9839519 408824710 511067001 413409775 293397706 768233518 331223578 562341076 303564430 55262563 430926081 143570942 873069939 281592507 848241933 761139885 70330879 410587453 636031698 43097151 207112054 348782630 715306506 101644294 228622564 39894228 887025233 19011637 171225701 945578974 943977163 109325778 308566528 168144719 185052161 49816600 757756852 65767753 358200914 70513142 7986873 925617194 633969198 39369305 62938959 665144582 475474844 648158133 242300540 589472064 472406200 428971663 678118265 673711140 466303128 421049455 738254523 164833463 280393093 614220421 900536025 923241526 36479892 222997664 770874283 843806107 551228223 424289024 107020735 292766028 883069360 36879651 878748905 664955577 156311030 49153676 545539153 454454424 539504301 135917822 688569555 577879929 489269564 233087455 947775988 371259193 724437672 967178096 35942990 264563280 276665453 632484772 605884342 619530461 364544587 212614065 83898618 927061806 268018109 257514278 68901297 510281330 918050105 511043926 88398264 668262852 986655762 101223625 742223071 499409663 782697373 188892092 170285013 215514872 64135608 998736700 10139758 271927719 562623753 819249713 498021566 672476618 94442172 922129212 969811887 254729783 654007772 379656216 53679644 66682071 830652273 768527598 600434987 734268193 148165406 941130544 375847539 821018780 270013109 134751491 260653367 4269534 504375799 792724369 175216230 536030120 485672807 836257448 440336790 322721317 87426622 689280741 603973922 38324990 855315539 151554201 432145384 73012298 637580938 36219167 632587730 466612204 210164161 758322569 214109939 695925850 498408656 31559761 980218228 523263182 351179047 758394278 157207457 980364054 882738885 455993345 580821669 212212136 458977392 3631133 843428004 624306244 820791456 86341691 71244154 741379134 761504237 971458843 645832777 411997203 704785471 118584001 445431426 713277291 623443396 377765076 270183216 882305654 249727005 146813601 360528906 716782544 994787155 363377464 823554190 881542265 784605423 413621921 799508384 344190238 141870765 914080970 501221221 683151949 217455153 592070675 795442357 616535972 84929923 151581040 573851299 855616625 690875979 211136481 638556284 828202610 993181901 540380073 643973636 460800375 866012834 719661146 599648277 102132577 765367683 95784484 789844794 895410418 249071263 732196115 339556406 985139888 655984103 379742684 447122585 246757864 272365883 727946084 578651049 306782122 414466354 322745178 732621348 659546463 999403445 782001161 262735395 36095016 291646547 865191336 660745894 74793908 92174700 120998894 503130845 25621989 719546968 909252910 239395228 422535915 632843480 378866447 780970991 218947401 383660772 801155119 324666411 591376113 993141422 726779203 280187688 882382424 623121510 736688950 708028927 583295521 329421918 131496416 699381379 346662411 96916425 916756437 414508938 179432299 374903593 477890025 69876359 295015225 173400277 577585873 565093682 607394723 207644910 970917118 19895733 420879978 207349521 18599448 196275784 584625943 306590326 523245546 11774910 176649642 530939811 930806291 571576503 7349238 442073955 424057095 768953488 107409345 686345714 884888403 763385966 575031503 914707563 666128646 996733924 432907271 880272433 526124022 309518354 286310815 769887356 161852725 228372202 376112947 339525266 808848572 949461946 318829939 242042453 527317892 815142550 8839662 391588987 91238257 468358391 429189086 101878777 603095081 254968435 196802574 594310227 998639583 240476417 788209486 18919948 14002765 712247256 559912362 179102569 575285814 746589596 502751812 581705094 731870281 473092897 975617497 388563591 863547146 816053789 129542985 562063616 240819808 901892746 800963753 198490173 808389367 939195492 753910613 189619432 332559405 163846466 366961469 834446829 644200652 271621266 45845357 384093505 135588356 772689633 959516971 49874604 479879611 85478470 440458030 97522598 372089574 9113083 480909032 24394249 868255661 145886453 804996144 590364349 240279152 528989916 38084635 957069337 684398641 580686415 952356589 427929095 198127750 439875544 234431699 86319659 175114893 86675744 323955326 950888661 213510747 860349008 616599889 867605136 451843124 893150068 664852713 80535887 699543117 195068898 183753487 837528574 489138485 370238107 97666218 491341644 891313570 955770327 366761762 497727783 532090114 977627105 11856323 845174281 763920202 964854185 672621790 107854749 432942579 583839698 17108637 735810911 937294424 661798202 953824134 93980017 37941712 476229007 217934224 197572452 141181717 928539381 391062237 127241556 699727376 387802052 315235398 201681773 454829271 653329377 487285680 354315173 144496342 688806849 878775250 986827106 118655612 912783069 288609824 568374420 29989644 429199792 623807388 462425466 411405130 854109431 491707335 51973743 454001901 593541888 463154762 700791530 984974848 583600172 67951993 212020409 378174051 879976507 422505428 645742998 792160605 737666896 622830637 660357675 881523877 524194001 410611818 341896846 591847867 242058417 855923544 554748580 641981680 830135210 36729254 336742128 715368605 392953027 736591350 77690366 961679809 879503437 638882353 89189743 941593892 708026360 730082743 370478127 475765110 779412780 429026104 721058420 577112396 656137618 190722105 690627803 288464830 264805705 180248894 17988167 538120784 680571711 497381576 657374887 900184603 243593610 180367530 269314937 987152001 451554841 703090889 901033369 783867174 750071994 414399564 778323723 180854754 895609263 207358269 688169235 176642818 9082080 60542221 47755404 553491174 464488047 947314729 964650029 212641116 819896885 371079464 264645962 957778051 396247318 963639688 928076923 559179214 144543834 464447870 976074476 268272630 702095807 306206840 699661723 377891122 497554211 601390958 249108934 389724930 316316749 502651463 709702683 412370948 288158597 315419867 493850308 292988186 708129789 290560444 492015240 317051204 951489812 745479637 711974785 804483986 709326042 7496462 62705112 735594673 961005613 959437891 899340776 958656064 123545944 69272650 44795948 16914036 184288452 919313340 395448825 93732369 352282134 252750781 474071656 211784509 939827777 140933089 333475430 724447833 903423222 694655596 955019171 642160029 303350090 978442398 395761894 506871061 459230560 675390895 727599347 425909706 273648598 20332552 997144093 354440359 697196070 127452769 398983772 879409853 328510577 679406562 599989760 798336410 528728634 925482225 79708079 508333385 46348383 364394378 399178466 398595410 759002386 344354485 722668429 804392343 919365559 260316221 881621765 506615316 167128535 326524307 282709165 867774658 521094971 354878637 35030969 925697880 849692725 870990564 318107680 316937149 701586312 522881298 106352098 719278193 74803822 505603762 907355364 670702779 17098508 675817847 458802528 544369402 877371633 997359014 979560971 512033792 251384665 607192607 830867571 843128661 349483371 769911488 9113412 118950403 437806652 284279537 773759350 775877601 82451821 211439489 346449178 922970862 741270140 21421243 246403842 259782401 19721324 816936853 295106337 79453716 325983012 454545963 70729928 647458937 213373318 366357673 515828169 65001604 795580335 696136693 110037109 39176667 347504702 928190490 264375558 178459479 801062660 273981620 145762789 958734858 764952339 874698759 608079567 345054150 141449213 646828473 464080779 685141820 148455818 183746232 285196580 601754714 597815916 860847077 337468164 927282524 794891757 192663829 510232593 27640279 229145327 745602463 568868613 231295108 280432072 343156641 146610751 367910726 737346301 310496899 788095766 536501885 112804735 542708954 614442855 182100270 245727605 544579058 950200472 444118414 752562297 445271945 642716795 420426075 270338878 511502436 954057455 525512156 941468977 48602369 879649390 269064433 250351026 769088517 457576327 542655932 169192617 532285897 586619945 429101799 487247461 857931037 692495209 478785526 637217598 612912252 708711795 650153785 151089949 964994978 285585561 977657138 615376622 368039879 87787571 477270708 801923326 789847041 576664956 689735817 278007882 825333261 669320030 162402187 39079758 133610659 735332721 853159150 270577098 419691254 167225984 56511489 553748623 385509180 856006052 909347479 504125612 521873121 226054617 654253009 846900639 967637302 99937322 997274279 349814173 106307824 408244509 96883087 788492463 231543896 815233240 965296491 894957291 458100870 162206752 977383670 645098764 621240355 616990634 141248584 252397239 777184524 999242812 745637879 566986638 125454645 588169009 876139524 449097256 140270284 627973560 414515976 767534427 61938207 195347258 630392312 356801764 340323559 236623365 338410057 716343886 878921977 845258403 776882092 724308195 732701638 261798667 57143401 108483992 377947021 992462915 445288716 55781873 833919216 565591394 61271720 488758753 794398368 473227027 296796032 623303647 993936826 252637189 648916466 404904061 204519723 850418897 735381887 847938931 639067382 783969565 58541659 918221533 301225461 649790440 597370158 448108749 595461692 707307113 701714424 948360119 71287736 873599455 611871047 75361964 435787856 783005457 662758212 577241009 970206821 128661560 602065646 119716299 201447072 958870092 158948954 300051403 984277765 460009496 577080079 513917794 231388128 336691056 962864889 313359882 797433654 53076996 692113384 512646881 409955221 770983736 144270580 452015561 33802751 262308930 645474457 328475585 796126889 963774187 214779847 294222669 335585361 25765418 558938787 303258035 338553515 198583179 20867481 331200929 332212458 62396470 283153290 950744602 965051620 719628188 44200344 702439887 765567274 905742658 769823673 269833392 119929101 236415110 859602845 163524341 198693219 61224161 845542328 639810544 954273393 169596374 185024971 910844841 620033498 285183689 670184049 280739528 16927727 304793425 276700226 62536014 469693030 787164861 920968081 899102238 557417862 392588545 858506640 865874735 300653024 870591553 391961180 225938588 949380783 999374149 949438148 40906190 774948043 525112980 383945738 413667632 214821607 277683082 82750581 543793742 679734940 755373512 666064941 839090797 517828339 318854947 633465421 983431216 578515955 683002108 800542862 301399707 420626572 262209020 823969541 327663412 654119401 372381833 6355967 537232654 709510107 337662503 623362133 443502792 161902708 560941041 872954876 69724037 964788249 291189346 816433557 78358452 71801904 323453983 194758031 385463984 451231929 637521745 45270378 441447196 946358444 307254432 321201696 727521283 469567080 320290901 717267189 1055096 81939276 271701224 920998892 83415803 522573492 600469617 503400000 215082819 633237313 900969795 608346915 587770268 409322899 227284746 220193653 860049802 953001989 424162044 536640001 156521018 750021548 28105896 372192384 74077109 952232145 855214109 752166132 572001731 357990611 294395824 261714149 692214029 933622561 445610717 971775255 985005658 653146106 381080541 462976493 767688568 786773415 9423089 150875576 182453012 21021031 668648028 576997837 309757393 813353660 581757187 573331437 400794021 372919120 602418459 38808261 21719222 244704804 487462013 447923382 23877304 812672882 820245173 926332534 1352214 62883902 67627584 693993044 364712522 439897792 422139408 441979 316638968 861567177 495843215 14709333 407652372 749323854 388649665 773608771 350383221 929461493 124474901 12409116 412735390 733535675 792456655 175171749 35862462 542930312 943949217 235945827 395749794 56861900 752148471 229398202 705883254 559956713 414837911 264824976 925487896 934493219 746582334 527604263 614756361 923408153 468203540 396724511 113614886 608077847 296796276 976557487 365368584 463105667 957662050 284648293 567757898 246395180 930393052 310232832 998373696 893076319 206717936 865864945 965417655 61780985 925792880 125013086 800479131 512300245 817620187 313632232 405295289 85103930 951672873 864666539 362076980 941702244 421748107 844417 302596100 162854884 414604322 767382553 867521147 329913337 542817866 364151173 956922884 51966108 221050526 172929869 73569955 276652656 139550983 23420968 267360551 609427084 594631359 91142908 989036993 773461052 334761151 484496217 604105190 872736729 350505686 239479143 486520500 464167385 210988997 586657526 36379143 333557285 659242259 124905197 938014366 501569167 508501912 375519748 392950784 192409160 922860476 213591171 918318134 951308239 288641920 896158546 937717959 788983111 55933643 498881289 821594109 675491941 656225447 579619086 33024180 877065738 971884507 690073425 837266679 66491190 771235205 254178302 725516161 860753122 310654161 218958315 625602037 835448943 5186107 640715021 966218839 245479142 826636039 602285016 714493233 411740510 36567033 501500452 388146734 72647033 87966055 360150676 332183798 477917551 110072024 676870917 919778042 765070943 407751710 12225670 540854410 261632232 733716448 332939571 123878102 99952872 307233929 478162635 545363319 596151051 817508171 426931836 517978716 611563093 137327255 227625907 952345199 88953921 392103236 506033978 590343528 580177987 21274626 214649776 120406204 849443436 568487577 162979362 600168446 204857383 859492234 334629224 594746624 439379183 450308136 427978028 919563272 394882844 162138229 92898660 2150483 310236132 706807644 36119021 597551175 224586444 35085211 565783502 241807712 654881815 22623847 134590116 858586842 269985751 125599785 767945393 219848003 598099691 378270807 998135645 633997879 467191173 485797024 588893207 774771257 969152064 115913632 207803058 517114474 896216273 872740313 755735941 673811190 354666613 970322418 63266319 342571055 861597438 758484901 650032603 201314590 210086458 433714267 269450045 843300153 715789449 694798226 837289765 553009073 72132443 105246076 182865839 591217287 922958207 149332889 132298341 713813706 298877207 930527258 374181112 707725508 90978397 440741789 504558327 830115575 246759432 762799557 494187863 201136256 93535777 469285147 92108683 582647596 878345939 456016983 603476258 735008638 45250547 164471967 710164773 409462960 54764443 827043247 688469606 167624208 684907785 137439257 719874416 101502862 122981383 257104133 529777962 95902172 511740000 272221809 528564258 291830327 139878232 890308245 337165589 984309666 362876484 483359908 301293432 251092374 258718360 747693822 250590775 86772821 592459685 146360047 98019160 34621989 709163844 277962581 903846770 955086410 419937874 924217418 402175674 774632450 724775226 852200838 552937769 366436683 508632108 573390050 242207585 20375218 212405989 225330311 601459476 991880858 983749011 107608939 35147760 357044430 303842215 499523353 845468115 4223331 779887733 840858581 695437599 3012334 42827381 775701865 640327175 256259079 222617430 488439301 115540168 769580559 619200356 442332519 197155870 668510314 475965080 455602243 508137808 229488620 156679937 376933025 702997468 3336345 217182542 158591009 277216098 893275312 806494567 93031377 77260177 364418460 684740068 626637413 86690125 620036667 859242792 165045007 417418487 757311225 427128935 125943650 385136254 243300302 972281808 284634086 526767329 267373073 137317869 127838635 35670833 338139609 577292718 278572543 895895142 647515034 39497477 125621506 695138284 927258483 790744139 239039211 78207877 112952956 761488779 292156332 39637331 272671948 630186111 499244803 236710643 218973506 794164017 942929505 597096917 650009436 795729235 230878110 165209430 454729041 543250141 502850916 845075305 539231994 266483341 294903029 948491240 760578874 306679336 432360798 652428417 108117353 859229538 306431838 796695898 90065527 135357698 316602306 334820058 969060032 177852687 650112352 621431576 490437342 19230330 95095639 614821289 340764912 290200527 175947553 770012567 680127478 922502385 20766709 233977067 653675188 677246776 16041958 144314548 954636018 113931205 410028460 977332505 576158823 291742838 254432827 920048668 900675184 949254704 11324017 500965178 538778950 171514736 637959070 977286883 675958320 392163113 499614023 286335353 332733144 925938411 599487043 382943719 679905652 690954826 370974679 481383713 85419260 755373425 906926540 406053794 928449870 887301782 641672209 528059124 455474337 201459389 582608712 316947306 217748691 658415939 977346958 254235931 328579833 441523496 862043571 413305922 131066353 24922024 958135100 701039536 608672361 73202195 132440432 223160965 614787310 973183523 422110359 968967184 148526921 410019745 887176414 520474622 191305950 809381405 169310707 290144128 671111667 239390681 171454937 995293036 843107601 976262872 285776752 861399814 539394283 395273955 398526243 211732889 907166014 166076352 923807886 820685749 374609703 178840982 493728649 871146269 626622058 806291457 726030794 593412630 292015338 223634924 394998435 495913775 116851293 629861591 369199552 923707542 817123824 181523644 486207476 764574755 410924727 634928933 246237229 69032719 315393466 768276181 422881729 409547180 149010204 386078590 154591478 875952280 304949494 471350643 603907476 873851829 257483428 264127418 777624926 709848288 772134498 970081674 641980326 116612427 518060301 852809486 482688776 164885798 420974184 503951693 901768428 959501484 774325481 812151429 641363519 905334806 848935149 215374779 571042053 745983383 532226814 178872735 19697278 285782959 837591262 252672399 745823056 729202530 362550365 458007374 869782779 938661879 136200186 208236898 858239190 896899318 887112376 548377191 323940949 656482039 812987435 788101894 352823274 277971708 558928307 334377328 416531846 590094885 709515170 460794750 763062078 160179691 433458460 545643408 650241216 752212847 6860455 439882200 417519371 28206715 370785409 263619855 983828502 218427589 720262840 287015908 395091192 397860100 282322414 152062237 134805583 96830654 153565257 571573705 581188164 584650729 438849791 762035203 32368884 879428318 512764689 582695031 143944742 519541313 489730641 280409850 211539971 182212778 794612529 844653117 948389782 521252728 356139148 318493731 930813022 104422635 563250396 4152339 903076593 448339953 728090401 925914498 41342259 366849540 795041669 714608263 505946834 79407502 529203269 309114368 178520481 155369557 715380542 783785956 89421797 89434055 17726509 528491082 317972470 396835316 768096070 744410580 513150896 328020275 860435337 25353537 479867349 173690708 20053966 656975433 680284496 296664262 897773178 306623282 684952038 890746261 205525999 489715546 193108629 336874356 122613108 255956257 382436410 629109486 524338336 75149933 99493029 151589043 155073178 495673810 13876132 738705436 430597503 498665148 30203898 741458571 692653947 723098683 167323836 429101591 157840380 522289660 937723642 206257120 968363514 760606288 175280607 980013108 942282345 357295165 744382620 274353963 973542141 580436709 878301170 258084537 64398826 722050114 618493491 258486836 391272352 178055608 11424513 461494292 767179982 874569434 833122491 35968021 658240012 389286099 79889585 851638958 43929257 870482175 296311566 361426382 756282930 32313035 189273133 568337181 58535089 605850158 840015738 431507072 194684309 658911748 589018417 136594164 583249192 243042678 588328308 78180170 390265413 529973988 798973298 453511020 229848103 417988531 171818500 606435378 627580405 354720595 344265674 219950172 95795354 562186625 74167016 77435224 142301942 257633069 209553601 702641997 492468312 118366378 398765405 805106073 831636503 124976328 161135677 981317887 547843360 96029359 905290453 870885722 746291085 861275316 821940481 285336947 702416655 795284458 988928530 986360130 755889348 906074189 813506619 60239516 86808945 573831808 717675351 732838113 613977385 527056638 471545778 21060980 972527080 310786540 800189485 250992853 409422789 497709483 583802732 880340582 249344001 117241241 881649384 734775275 22433218 941200317 99761446 637354729 105789188 342817575 698338822 705455878 818621046 991146675 419952523 251488135 55461074 377293210 647845511 227229368 534481034 140449086 226652131 618705929 779938231 262109162 819615691 770793555 274238947 992179352 806187481 65818024 908874583 49980263 320883666 97681558 626392821 852490787 593773145 534834031 518721006 700553225 618219535 131215455 35938326 473842015 398643668 775466274 638168449 65794754 491678822 939705576 167534395 724005140 515685133 884082635 853411336 531922473 126393607 375905680 552351692 543812729 574124827 807030557 229479976 170388191 963842789 463180792 792851315 494401825 455631902 666690799 112827738 583655215 187365115 755269987 3742219 295073156 448489207 222686419 970637473 295517837 265829770 265482321 733885363 980360407 187740014 886964864 504409092 272822243 145164965 840644358 448349186 357378953 388664596 820990079 235765332 148689351 131836193 769990379 829404415 254739352 375704798 655082114 211408101 381469130 53915637 845305810 356138481 494428234 217722402 167546954 8139758 595104636 880343998 141842509 156198772 891221803 946417341 75505582 645582659 676739692 597771795 288951968 513072663 467572589 418623728 925085168 824644910 980843647 966792858 177866311 876305789 425342133 874782903 434652191 962743062 939265230 369760287 331446101 155338672 568279500 553771652 239633603 542979366 19482015 197963441 358386077 34713815 636044293 207028023 863259975 588825431 284750746 8022762 964784695 362951332 204604118 859890672 173555943 939166764 570256999 60254667 251615312 325861876 57122598 649091521 934909241 133148899 872797741 264329265 183750505 556878517 418494534 529992636 81215282 269715516 447700243 254899358 196687268 189756629 916395650 897941942 462742878 485108541 159044828 537064659 338427647 72720262 568399386 291275179 989961527 754972420 742981017 719568417 932176737 143428908 173853725 113795467 79889924 286903319 279932894 710554304 355406691 852732944 67304039 414455476 119260006 657573400 947071263 439700492 203926769 468107896 907458972 659727485 522633041 847881036 423722733 52165566 96460768 794243754 515524645 349612303 758708836 223048926 534838211 236000940 111928718 179635954 97961396 420078539 992507269 927165420 420547454 979567193 179585800 642272946 578883573 943560280 344743661 874849209 654865063 399573885 229225995 901003533 994553683 683892195 681011776 241433957 904762841 681479828 974000710 78121412 703514316 264541777 548442368 322995757 239569797 886470750 444882789 238321024 269709300 390682248 323710240 212923984 20410098 656970945 85093687 476804167 200402205 797980971 46253631 780662386 909299954 331154321 478209029 993476087 278390446 20523045 365893269 873476524 65577192 487454566 666513925 734056812 721493314 412033069 664916383 675672992 860516237 335412547 273195925 338425629 508619108 46070281 892412517 275505206 69180076 794944647 491941129 244736935 271069086 370428848 767073327 125069327 396165862 961731557 151796953 404042802 289757789 897027705 663121715 861571975 644365427 667372407 287247778 851161273 347323343 388826659 535490593 287828124 427640816 229241772 157338330 703930623 598284099 86042399 440944441 777937012 668319478 405847690 759606512 582724214 417347927 18606659 349542090 929173314 949192109 761669917 262470852 42220775 910264298 799671340 474382496 547547804 515773618 288465826 501040356 55796365 182337664 749326938 88381895 607671713 270935052 58710737 433394591 782694053 780661484 261348525 22218046 91481035 574346115 392246104 954080488 332290306 867177593 833037289 158222750 294064397 478275623 921709927 824816171 954126733 991051207 783118580 774351409 69707132 450963881 590495980 560082161 814706668 618648977 305980914 334631612 212351683 10049609 304450101 108831051 929019506 110291806 60572687 303477792 689514825 912343455 653476660 236990603 648068656 537588482 688898109 711774089 218065953 10919404 7472180 37766003 718935834 88372747 443595017 964934352 343572990 776307487 375750542 976430449 674044058 59197398 446573530 789877976 515290179 184175214 197586570 153993023 811200833 284085892 89269003 139028385 242431048 202534430 908926912 53507429 81939322 795817255 97066585 232052855 478761210 640747510 827237394 514618139 23552043 192345234 246719557 314207072 635496166 390677594 413966134 543521242 373764996 542221460 147747696 858073313 412698869 135700150 840650030 51761903 549912604 187891638 597487273 171243621 489196395 862424134 266289701 771361640 161072354 631500320 933642647 352104548 112198817 505246457 472974555 530071199 712690791 82166626 701417523 472775402 655374805 197975160 637533132 228246972 9073630 550342531 977186017 770439646 145362470 73175209 408821991 975749005 254244725 806168562 883298780 550442194 586752841 544711751 136159741 68450469 664337762 108929562 724163075 355729681 66614860 596589857 690760867 895187969 244382998 314884314 996422608 326827116 38946558 172487633 536975996 34595189 501790707 983619466 718817149 557019598 966742480 781647255 196749896 283679855 711341500 902770443 630185823 712544155 154855975 556629018 893823158 279632846 623988893 492426951 650007887 107000538 715144812 286957540 590342747 586191456 62223391 145559281 293598182 542188429 241953890 374560722 668702873 438945862 339163419 249399240 432441376 657828340 142952283 927188094 627843265 516539624 25243273 927801160 692392457 504029608 830512458 481096405 392594966 373382108 508628704 519796750 94417695 643516883 705977367 268577582 8822075 121627408 59663601 312755113 449701774 718872394 596700457 525977640 957368273 736025753 921881140 143339653 834367440 339634490 373743489 915116718 620201624 722181483 143775824 700935724 418911220 962546514 375581728 252812152 17766369 384010143 897440169 625309526 583797821 158601895 92384080 880668779 918819785 823224449 583076425 702386307 119534661 843197063 309324148 740166013 648435049 57178195 396370321 620277863 527148482 178817603 754510785 810696239 98541256 894080823 959851314 415661455 477907420 447531115 264353694 9797807 238099849 815884266 819768647 312590326 836180831 686076776 141635771 147321139 380255589 653802861 113315046 714716502 885920395 319910614 192025448 855279946 954635843 623785851 847588896 558073206 575308408 472046371 981877440 587668217 412548200 694392905 364313486 857283330 662201573 386469911 924266584 315717364 158440224 270983448 930169073 570134923 336104252 152691884 914502757 102800814 969681404 711248924 834177867 341378670 778361008 575102211 998252731 682995558 120073634 398808841 62773937 333927670 651768227 618339624 168614211 929986603 972312959 216378459 86915680 451389012 502121545 496485993 503879083 339684861 689589822 435031588 128290032 667705799 322969495 344626271 781219698 162791440 227155744 686761790 423024082 714866423 829739038 913298527 671178174 679878449 865111505 239915240 187246307 874548776 76558451 861005863 5158837 821946268 697834175 144029559 986509615 686984594 444788768 562050027 237961639 760420583 470978546 75267184 728676566 669181529 756498721 996036105 966808307 432665568 15544331 372404689 677365544 792176305 744776080 552966123 765195539 9187768 124290586 819784974 306902358 711049895 335728190 487258174 802295626 209936299 38225176 191162602 897372657 233205914 24931880 413860325 126247871 105428256 916919171 718334396 943433897 587245393 442409167 293786767 357512654 143777630 6559473 483698253 453311228 14916402 971480241 315126285 793564815 109101706 81467510 944965704 377372925 142268828 656677129 456114871 673579874 766625804 492134731 785932565 283519804 682855036 948795033 329026777 811985511 819015233 916449892 676394916 217424093 771648844 228559703 764586893 396763545 965556342 643853707 504465986 272307992 51260942 262595329 412668907 496475850 772941275 463065743 14901117 682090331 32321522 870798890 407902614 713866895 62906719 526500519 974469064 489784355 889399662 594317267 404744897 518337176 834905871 299803410 876594998 703485500 419306337 326813519 500079003 304523789 648627004 857143940 780579232 362358584 541129887 766048811 20485957 605936124 419453861 743809780 735269425 6341086 483054011 89049013 526327182 721478754 422380098 341237862 146885197 967202586 846285683 519241953 276854562 948257376 719478346 999046076 117864773 180316899 562239295 518980138 407837636 263574944 208520837 370634813 923639772 426647677 43869338 445380398 894776613 890683714 952561564 646574224 683203875 129011386 79332597 494255499 585884578 635341220 64752074 774059272 28309927 559305643 767247178 301975467 524618641 378342142 221946433 29392787 872881505 24210235 779664699 755710638 10130134 851000963 14691319 932333705 343318427 240636048 334438973 915549941 679411261 551846843 348713610 946850631 850125378 120266522 359816190 949401780 342309819 651601159 743606217 649396710 254382141 462897916 699688445 936266448 58219720 148963395 835620627 745033196 985707843 113937938 353607689 816791024 864638347 964118301 111681228 977130922 162486155 46237974 912390134 53657670 724519714 144589357 449944280 552322451 844867805 365920874 700581580 475094835 812845595 889422797 548157460 866615422 430279445 358931076 72705315 988712666 202782650 76652008 827478467 968664233 781379244 721534508 795446034 25216238 56852162 218615699 122159098 287310039 448447653 287471181 300027136 124932608 391967932 379417161 383905288 9381444 658468567 422140252 13115329 764599343 446509410 10379519 560879223 191268448 579113579 761296287 678628854 242174 699944558 391365201 475039952 599545792 551213486 710172961 846198493 243171620 19753968 898916181 132168202 608845403 67601750 130117840 689689070 863952178 155586237 478274911 999774183 874103014 559564840 744225870 232689388 264995617 792503576 659657098 748071031 659665002 640915585 599625803 615838185 616773958 142618252 530450523 229346113 40193076 67288093 514951902 680449021 484430945 287029366 409824461 10173881 762585833 957155691 253556530 123216208 345585841 858783210 231742376 70099407 510014730 730931599 43145391 200208087 211060087 347064414 210665317 664418757 57087047 870149118 860080304 686354360 536399624 555669701 186180456 200343026 440467692 684972934 765899282 482410642 25691047 18960906 979478726 210292786 717949544 980825734 535561244 287786116 603993820 757114911 679041436 955618432 263675527 973533432 617578084 152711056 36492803 611624107 361903645 532433601 236697984 780231646 887440747 863366605 232183419 710000324 262004828 705605159 44194017 141604275 455354860 472150070 808907883 839355889 705037453 140727827 874399651 845967559 222785163 290397274 94496762 526232821 847845674 664215892 87139300 71149718 230100357 862019121 638119486 249732178 555222137 441216289 564846132 53465033 707430512 78005028 608503450 34223720 797858723 91105973 452118498 283686330 786479935 271545363 111814391 289104107 839132529 693521945 516281187 861708042 502935621 824974472 511754659 640996353 57506599 678673005 270184455 705653952 846268689 675029750 432490826 854885899 951383598 547364844 273878002 99718108 124401268 973865353 922538050 250673079 538696105 790544633 593049213 19919624 712613996 819547751 451045746 540583910 363634557 45749504 942396186 323627044 341183466 776615938 223080535 219867344 45710043 421921171 548039832 992917381 154713033 511752405 77109532 87742857 874016020 560808351 297228703 763474389 292777794 812543516 966042813 722646824 197638142 349339982 385770938 739545529 48996247 427325807 76966628 947145558 410976357 922286237 4928270 829682237 361969424 411254936 574007953 351209384 63219682 187773456 688711418 623928718 757777615 808499069 155979339 70685787 290171636 199225407 900033065 312412149 330822158 782736847 41946846 735651354 920876196 396300904 85526811 268950503 157689713 88118327 344740390 325267102 900494029 585659212 260992841 558709929 96371754 763486051 636831997 748895416 308326515 833915316 411684236 107932594 188178572 894907540 128459311 822375969 893309831 742539352 525130340 351235347 549442983 350562655 624982543 824967975 539522871 219069525 455684529 457802052 516641000 648954087 551359545 413264905 534054848 94885910 198169627 493189338 975988971 239312102 525836867 395879816 955423512 112007517 823124512 857127193 699202452 499135527 475888844 36604502 399699339 390154286 25257428 437248515 745080118 737321788 574262592 584936918 672075670 892951699 56284542 833960876 820982893 496208008 470248844 796395569 719726741 986118002 437551573 378074229 970617110 591332021 51017518 196773277 895298659 124893887 225070147 561197142 851010995 412657114 551443167 133203097 574989748 565314386 446709495 385248954 883744437 435165355 572194835 967874044 139024623 229436724 472309470 216729340 588241304 371835575 713218502 916300418 549228595 614210929 161726133 381854054 852972610 128055638 647686381 358979579 783935197 659541408 479218595 665309253 171658064 326505096 472645630 147785460 864042137 441246118 865249118 297610310 356461302 432727031 853115871 442691639 433349633 483799920 314966715 302158514 477232410 290501199 187130248 924709139 498780879 450003599 386565709 320850399 303351444 519462751 178362279 131713337 847689314 918091842 464291054 836085986 545650602 388683194 979784474 400108418 467584010 673527854 595720921 194803627 379138303 107626037 716298041 740386800 81273159 562743481 251245270 990061658 628668690 925507950 437879611 526751818 577325446 168218809 950106525 144489842 445167635 223869236 60414183 694085946 698037999 585835260 739041945 927642297 282830818 722367092 589017625 630201291 572483391 498671238 918424695 556105074 813067007 1130661 985198051 352429401 360021040 518971786 926989005 486514865 475750459 194460172 51893156 692078249 566692895 948047548 887876421 647598549 132738838 898337472 64474634 137923802 18793340 29510724 421578339 20385010 729143508 389616376 447189609 743246100 237133251 245712680 830674689 592700418 232475259 967597398 558182771 776685708 786168576 459175107 542921096 56022203 360943985 452642884 935077016 772485047 540791047 891105983 889409846 309278912 437050034 965560333 67841639 992648633 986459434 951316370 148461654 143859362 83539641 786538782 497553819 888145446 865551609 175652546 901182489 812854877 406531693 656901547 449236639 933964380 436289351 492862910 476731810 536085127 459604121 970050558 974504810 791659086 991836533 609301302 84049976 137714112 189106124 471901208 120792723 98160325 859498687 63291041 495595037 221334102 456745013 144211287 264202439 448956529 681163075 620984370 181513640 142820140 347227926 444737962 339729228 356391670 383456213 593837793 989289818 380971471 892309657 569841753 465834610 104434195 622126205 510820019 899128589 984680368 398696481 900940823 468575670 908063827 989840683 625112591 32798373 146027574 283754582 90079019 59292606 890562320 329359944 271817645 278572064 348776751 373854129 573316944 664032849 788584950 169228865 672121812 777115827 890372043 485753308 675015799 711680860 864606859 746199138 590019287 579027249 839667780 811676121 737959410 119908264 920581418 812276702 291054383 717343936 311744711 196746104 706734012 374292449 453048823 676964193 193252851 810296293 447769004 734952059 307458422 564285586 81590843 148151174 470086761 633250284 28888871 734090680 404874514 241749296 518591497 846157612 364111510 521850817 68378178 780849383 880052688 586812058 368607042 182486884 986067896 647322605 848348910 35216464 219169171 92713866 27239795 429421115 267325201 69684055 829893455 807536700 127327486 54182685 323527326 574655344 248057238 332078762 319954853 686119664 594698857 840061753 226783717 730947491 306326126 87913858 110965160 137121512 282915099 479731341 631906951 957843818 82323706 437385012 723724451 787852936 928188326 625741486 121250925 715620561 635658514 456209810 444035203 884016756 213063950 158297390 580204002 707818235 104920367 506115447 870053027 604496794 770325591 109362900 719908607 949942682 584738092 969848204 359207897 840635168 173661074 992299359 596313818 772154460 207723755 846830361 387710517 307399947 371918329 888635084 404270006 417040170 689064827 366771229 868412688 104157155 992219339 820329665 671944768 511787478 30286769 550605740 116225395 271385145 741264823 956112688 641101305 501952189 375723627 430577303 842831533 40279894 674261702 663409285 584741489 165506258 214477652 244032872 276206751 132378222 230147770 387922693 174775629 392542786 266959264 603171089 21481917 945600604 21882426 37980949 576971456 414774007 418126266 497130510 141776793 581627477 708679820 647903760 288630643 986653926 274136721 325193668 740661880 892061958 829809869 80863366 963619516 503722929 499035079 596155769 602484277 666980389 491015462 10141894 68426574 490506333 807306955 40237098 816105212 351304649 798112556 637287294 876969507 151347810 621461016 358275465 92880804 527960064 853415346 3569436 135941734 418512383 215075954 974104192 215468430 580925186 745305784 161418091 706000933 408521400 875400895 715662552 553925390 216668636 835587036 744022662 444385229 598866914 658880741 892614992 163697443 100921289 385095669 440297413 563251382 811498495 120323508 920820561 977542546 22105794 536953983 394136970 56514387 80998147 93534170 248270724 99287001 296197597 306654623 611145922 596035965 743778647 840814688 869049477 185261919 142377280 329401513 438714225 30866006 40017812 123324508 38816756 444869615 723609077 769972421 183692264 709743369 718860840 286397205 47901619 809669030 706322748 775623746 988815042 761627745 588475393 757132958 795120625 740814713 682285179 929049200 665106294 192705981 480084817 272181402 926947853 384745636 814397712 834730993 465656073 16198574 197748249 559191851 383989216 455233268 781051138 264127487 636494627 493568138 617227258 101814798 405161079 779750141 864306492 772023292 830739530 459330240 604456128 674641228 929995193 940593569 844659732 879771245 762957508 964701050 809852862 525921842 598804932 318043513 144855540 67849471 59666576 220676995 234400865 519343579 572230899 732012482 783186612 341869071 723371446 554253652 33681358 413797342 834968854 303114148 566991367 210219953 773415133 204034874 332490569 85326268 504623551 440691205 275272318 218079727 364677345 54395009 136049883 858156617 485252431 140375298 686074558 517672875 167450184 386182888 654880397 14433328 240264243 643785728 303567702 912887646 959410553 569834845 516997013 61715403 208205360 138797451 170721837 935366032 255781328 108102619 230049152 781688666 892661387 585800532 297336858 633113058 694582817 398171614 152936703 809881361 876902670 173765494 240871286 891392580 995601049 736807634 416777499 27546976 938031437 170039680 99228706 566416839 809027697 998615813 231502834 207347101 725557015 326906683 392484670 482045976 729610465 432870825 860541954 371809231 997920442 275825360 620935031 53327769 487785696 804651047 634157468 16930885 994038262 649765087 247034890 671083775 828390834 933592343 686022311 414345642 25738054 8771680 751916614 690598853 314327929 845240930 408671685 157291536 330874815 746272320 930862661 293767536 340130107 615495740 70694447 411318678 383540797 948247566 831393459 828608539 862492015 874718561 312722004 552089835 276491804 491077253 466626626 527995084 373342252 412601841 759000198 701040094 286479607 876202301 991399612 930633574 677311440 745196031 298760681 248827867 387579038 301501187 184118140 556037224 287086719 966176778 369250290 901200152 385888821 52096623 782869308 293418282 134544921 241174324 112522219 435813006 597094266 656976771 211417263 970899322 371717826 33620910 550674378 400954768 172127305 151009246 307819209 263783969 335611498 622067531 248047496 522212422 663479111 387560455 340353079 1162291 682381429 210377717 365507651 484826405 863628394 954466808 912354739 9977802 373580782 442623235 323196332 420013024 415676601 522062671 846776431 874652975 15190069 850972222 266571065 806064703 345439066 100498929 201738003 212462716 482943771 844205824 431436839 724901530 337536578 530375665 153433004 695536081 110215142 35208220 45518065 359696781 797724374 107739093 651264915 925642081 631287632 414833005 13243119 280898095 232272301 916093947 322803297 324058028 666535230 200210719 627255583 758398509 172631969 715946418 359625250 675524498 5742937 699667126 580433039 304377855 948901016 675717658 598123932 999769234 774241533 818395489 908092129 179797988 66881480 995492713 803390568 202791204 947251111 133230249 331456747 654045777 871898374 192565014 618951598 410734730 58783287 666065207 714498482 353599674 112408106 160438413 259152168 932715134 74378356 544313281 925803153 371974916 151575183 449294962 551626570 440825248 852669075 496887838 749733651 966272676 278412415 82733734 478140156 921472668 828270742 30959395 760270330 148559669 576137244 794770810 970991583 785417462 765018518 785267621 302555031 593233378 131365788 833757344 178137835 340582366 765400790 869763791 445916425 128560666 606818704 317911147 676397334 899540182 224481579 902344440 403711390 111369443 546790784 957102212 975638836 299125539 285299726 827316245 442883196 239882782 762291681 139925065 523443331 309836645 375847075 866317207 48990636 147680198 888162629 637022009 406973119 982551110 727425047 822416360 240234838 227065689 512212074 126092500 869191924 113401961 499433309 705883982 654563282 265711490 668880072 166757020 720801463 464438435 970289405 974607570 267272213 273372250 138901485 142525034 64839453 998611329 235803648 698869191 573946331 766027938 958689569 445536406 459321352 559289402 711993562 883984670 780087411 875457847 190515732 248698323 826000578 821130935 650371639 817163948 459461001 395242887 597600101 793990679 101462007 895962925 368299320 670284419 689441281 102477214 20100498 602330733 524313107 266838892 514881322 556634507 435821752 267268274 938568940 442958595 503630010 637012509 284278578 414885035 562610912 2833840 516726660 724337148 600463214 492093323 168155271 655077059 68614153 113618992 53857336 266663342 498586854 65625126 304722667 856467800 228095731 886805542 312275406 11676486 420562899 799041095 205757249 20948944 457276719 416189405 397962057 764671899 644064127 473468448 481534256 923629126 833631438 352128159 354951901 26828018 59267983 485179481 653634529 17104501 972821339 218725137 135749470 365873652 910141245 577705927 906378198 975000592 691033560 525202896 928600 560267209 450919326 291281942 217540995 265798311 660923188 156219231 503000002 521615288 709898697 594446507 585521297 228561851 622112389 522364416 643307834 737690749 776505941 610919506 909945291 105149990 853624508 256830189 133634323 944178621 898036681 613028411 574347774 432122554 925836216 649578029 339718823 640658213 316665637 580039804 784734914 672552216 249429532 944097785 682580337 985634169 157759697 729512704 168000247 914711684 261398633 316345847 788359945 778209149 281472539 14071027 693479869 244652144 753940040 96874100 115959984 876219010 93881799 381659689 682541416 582186512 822634710 252862551 489540165 969823970 757990232 525764804 565121051 512836593 84461507 133071306 213269635 417994144 324458292 81344568 141777581 514124133 198620936 461211444 376764951 527242362 635061106 500635770 660914747 145133923 284993507 686200751 371802574 916501605 953130943 510061855 876532829 136839232 100314445 134353618 615637198 535557083 403608551 431882048 968042928 608999850 39221542 307254108 353582120 744263992 52178881 276043378 436383134 767306662 135612897 599394884 680580542 657188053 676271309 86699075 702889968 444415980 134693532 996255424 87599277 555221196 59047275 416989024 681739778 964948400 220262926 291673119 619013113 791516132 901089303 334759282 473203451 958303858 566128895 704881631 776439243 630766226 818334105 147693668 310897769 532794070 731557175 579996620 808912102 694070852 204614604 732951792 748536684 304854987 937147137 619088240 216121545 178529287 829005392 317771036 576278069 109101890 94228099 906616677 677563216 525532692 920029938 936218068 49572394 727668573 225944308 370410179 257198453 381331693 984736600 137587485 891211579 687270430 303359683 609053258 52026261 145318266 34672920 275555529 523731346 395966439 977535611 526076447 427919949 718540644 215589458 746461955 375796062 155059548 55461096 666781735 454842538 388497493 510591903 628791737 290332108 551772374 162268826 806508065 65239391 47463208 139833665 869268158 971271123 649599668 132344120 346332135 162929796 929565785 33364082 483593180 1021013 555112994 493277863 738300748 594995543 789747384 950098813 274851454 598013950 324225335 527021836 191402484 554672678 176302094 876657712 713044782 982476305 362957796 929246961 903236866 670991341 992360866 722107903 604003424 841126940 681001368 325624192 23753402 173205193 661716321 832713488 823181921 121141399 543879937 289461625 285900853 420393953 978319097 139829240 216506464 484993418 707930248 622510941 103962906 138971166 273567759 99886124 655916728 456356036 288658536 649191758 987213066 697820515 912839922 101088376 807278369 279632377 318166649 569215791 777958296 93821288 595644565 279099686 47715742 471543432 762772859 338399772 566024300 406644749 643502257 644039241 619561481 845337167 537360597 543098588 42283556 109854277 913190782 903964846 872845056 422850050 84874189 319738525 673217720 300013928 618625534 883509462 721744574 279318794 546274168 396921655 114766442 40486568 193722850 38120332 354894177 213608979 251185239 873812896 42160574 468677283 95022134 551713950 293997121 859050762 423107730 594817260 832113880 414172625 134046924 280626031 718955872 441933140 610912591 684430034 924024072 973692199 67891205 949574763 949332119 265412795 467406966 56580770 225833020 193189330 261007626 773070023 919830635 977704254 209048021 548815719 416761961 107619614 230693191 579092842 573323893 646621561 959617512 769937363 834093888 107889376 138662858 35541518 442961056 601458871 325356430 2121279 240662401 530478445 581039406 671607942 14868491 2609575 594697104 586184272 336335971 830131569 727245784 96094133 551776100 444328891 977211384 940874982 720440968 997494396 176906142 194181734 222189771 740457412 362588458 690780361 302696249 543296746 767656396 952222653 172590406 584723916 493786210 299451003 367214683 112655691 149828412 916175589 362032529 190762190 978041358 919305354 362443603 833383719 797567821 954045304 492187614 696707493 531291357 922508437 673058651 957306104 163750794 367286912 373962582 766156655 113807482 980902938 960410058 966241300 31132143 195393292 102224231 553797916 314648226 286439897 609752480 719130769 77805159 970448221 871407657 546879439 29949822 584558775 578356354 536933416 251346126 898055473 392325738 732366695 544140257 925132960 787071542 297466608 649775282 853299233 576419416 859461843 942785699 235858641 67963834 785350818 133430269 743957147 828701358 18248331 626756745 259341554 186312932 36337455 288189410 209026717 32911454 935364034 145588588 534711642 461646973 415460223 160228065 159680811 74562543 630254624 180954471 269040912 987505410 946140098 655990393 887272734 296806847 292685561 748233249 739233975 606083769 789442259 760194488 663553182 570427178 677926182 304564513 708489403 764826501 90424717 365636307 164463249 237097784 698310339 900319420 706846015 654708825 266549330 397206910 701611901 595873151 839573608 724473621 592853885 978774550 760815163 723912580 294612371 976187202 619021705 388345419 818054738 708241972 420898429 605679273 732222682 371592760 700873592 79450701 573893995 357691323 927072454 395560249 477074943 446900685 337928806 561775011 786434399 206038090 890051729 77707387 549550512 914392415 56781979 335363217 642332745 276788545 529016219 135263304 842610981 697158890 398492555 994245212 280885949 275485791 151142127 519948857 516526163 408845847 965762372 242811137 390195028 476135343 331490769 54764123 425761089 575105704 685483855 599248791 892780290 369748632 951514579 835763432 862458418 180669476 597514008 150515796 391879342 352251604 445828012 840844297 201346487 107391557 450599571 84659201 727090401 273835775 404226786 803788091 308211758 146654076 828215355 978284610 460325396 223956602 369342482 920642287 74481632 727552724 246060188 366579195 120262457 108744424 133987613 937970041 756225035 225817258 911947318 911469852 755992647 671923571 608198588 591744635 522805863 882165854 587584569 197119729 648598567 989763927 882526896 762547314 736067313 609183751 480789172 161303131 475145560 441701803 588458879 574180922 647045665 215409268 442194522 750068258 256089286 805777154 503504975 362581260 298057911 197300300 823039489 112547973 822266686 278559469 436427290 370715060 127681226 553468834 253044805 448415568 439337457 644858975 164992273 446057224 559450556 53137207 721688969 269566149 165627991 226080888 510640192 261491005 876189272 434393520 331869735 677617871 307709403 358644940 690213438 691980394 504887264 119012156 71342483 229963845 346394553 973613198 609228762 9640632 555179454 906664974 830011009 774345105 752990407 891256771 948712210 453217786 265866973 155645849 357695503 948597816 524774159 897524538 895773688 571416833 336637143 688124806 126083306 812396241 7744548 549658789 949440336 926664207 422009666 991754699 654793769 646902779 168601914 351155409 936443033 435621365 179510530 851370080 611434132 411384261 749680363 333395050 977832704 641042890 383928188 530306129 609884953 293007144 166692371 535028876 61858138 508775205 703548307 585385673 262269265 241509344 957763931 155490916 816719035 362035856 299680344 690839807 42989669 512392633 63430186 360648929 25057326 946322333 861030807 811599172 104072612 699481236 792979724 371165167 923980375 75317046 871154781 66586509 257544228 882885579 581103687 360529608 63886961 31510974 326941563 290094351 872626043 224792417 168010960 514572245 696710733 818754346 193509314 219897519 402052331 515836362 194688591 989172880 521082835 890966386 841887472 664579734 244282261 689427550 669268428 532569245 920065664 435738425 812504923 862313133 626369646 815048797 273881416 724577611 860595587 977379400 766989520 817425878 68355195 238566073 176311757 584049698 592004580 894836197 461086128 87198422 404409631 326857493 760697085 126836521 500620805 993193552 17929316 162777910 75323378 286738927 643644003 289147880 973570437 887970876 790581715 792284297 517551600 214247430 865993904 586609944 593783830 558805202 199976706 151745251 942271035 792534171 766820684 900998585 634144840 611362276 659103186 745968495 979431110 382231785 620763049 694930146 286619987 948269890 653989533 179988893 578287569 208383377 522482673 436972204 397518157 386546331 754339925 287858302 571897869 525342998 843001883 548403128 451364586 710609416 747223279 993089482 758811986 922104018 383839317 475996003 355533060 123240016 815241355 90780273 567566492 670067502 308974575 240439122 858459729 85085231 617367688 264376046 198056667 682490893 30038629 167958222 652521063 59478554 565706103 362119507 284710687 929604594 773727838 766878489 13201748 776911729 181940516 194941700 234336125 600419614 832711390 442298246 200971854 477226919 686494080 789362118 465094037 566614612 372556787 472111587 809096525 49946992 992808858 733995792 481595077 951997845 914418345 19296601 427684687 683767880 836896759 17933446 930016071 21061185 111409605 432120007 341567327 559311830 904152757 52633124 373618240 932069067 101993296 657608226 213181938 635253343 906562180 786258225 675116990 643287050 848682401 440840482 893716696 130001193 552838741 451357541 711033335 610957056 953195815 541947462 193118183 411347905 196950457 391601881 540943486 753509448 909401017 523299108 398235487 976742644 439348203 269810480 462747788 707089399 382458232 793675455 125377565 986901676 751218056 503610591 65519923 986406491 797163587 735350270 537030365 862117341 130278383 928285867 845810943 832125003 708284151 422914133 876189385 788313335 999214120 675967373 369619023 204973339 195849465 712754187 261967237 96370871 663489881 242935999 743220877 198019662 968295785 245057691 565003334 74022449 539011011 39083108 395072963 494074771 214353356 141015888 119444289 739663165 423574495 355803977 572450515 530894480 35381901 89848972 62061499 213520019 369745291 268627982 676111258 90305472 160295461 231950810 659967576 18732802 410693627 718583773 855235395 19821369 679140335 906096948 75215620 957778994 712273614 616933480 193420289 654761871 391457245 583353950 815687287 286366480 448149834 2183653 631823464 72531431 375351429 568972925 318267719 133828164 328407575 272671056 485018321 458111459 123292183 265125431 931243907 154082841 577005125 131628708 737912762 149253594 331452722 525603918 49951608 830064754 540589391 372766466 260568136 384400637 148429356 871133038 850319369 434895086 589627875 695018147 403765028 716835342 145588442 149709756 293227607 913917476 891336040 130488091 548552670 709975705 389925280 386832095 745770508 324699133 661246462 706720146 613781763 669286138 893765637 438743933 198543142 15867060 438496134 412657784 725701233 634150359 792322769 698043327 616010612 745558468 244349792 455678603 476783334 737050961 840462894 190348779 144375833 493772614 888820456 326404246 935409673 197306857 748299751 241853635 452559116 716369603 772441819 5747073 983179193 359358779 662593067 904450959 652964218 474389426 842446945 179733894 5085821 911202067 363037711 27859693 794201883 388469134 677709136 128443075 211074380 191663715 32890887 426036192 647965659 73758792 279649008 447795603 35586160 276092779 867120053 324411168 599036818 231717427 443171203 511387925 746016935 56231802 212971499 834412674 444668244 683909975 419295246 90083016 588285743 956538507 849778916 406025588 854154805 896988451 641960099 393187536 397545474 123251667 60083765 53995027 922752621 577971690 208139072 704240831 504160006 837262486 82715302 447044653 878316849 507136469 607126296 430040666 854938428 346084313 236729678 852096392 638457080 59737372 530097371 928106202 503983448 578203575 911729730 398845841 889466879 904166011 755513319 392261547 693551040 600621951 884643386 290617589 955755132 262180678 961788220 555351652 103119921 878375395 296677745 675222942 563070154 201387105 629016234 501801824 210713320 978999052 608253792 992455095 646121766 523503026 351850779 518306836 876137891 477127418 124193048 203421794 445408943 252816555 836011503 882590028 81350053 864058052 510642761 467874460 638808080 392379156 253567640 589501460 385908783 396643577 629954370 324958679 393265827 836668835 318206313 810397451 223693453 614014498 916988326 576480333 898995720 778013355 826834004 222017817 933011661 685524097 349276504 331575522 159818460 68869083 97491768 62270835 159658515 132046659 80806255 925751207 318678707 995562334 384899919 438672525 94230534 636918582 613408380 349670815 869481627 321570228 195093777 720686055 589013536 371347689 210769080 999180003 625719634 5070255 71139494 935071980 935633674 633471383 535542007 871498331 97558678 823257018 856599782 487644897 965211997 714845774 840483077 6733501 637853464 562226651 349271387 652330946 69932262 289864240 6561367 370714009 913088088 759999999 684123278 892118140 401756034 401645841 121307755 991915192 221191688 523893385 928172873 571658998 921796293 851927013 14858392 991758023 572574416 279440199 423639323 671473132 350521641 53938275 694615742 61698963 470825199 150008632 421488386 725330777 738512938 998160638 713724281 595828912 492788985 413831597 229385231 465619215 186646194 730079927 984888922 449289960 462704506 177647314 940442507 550779023 267943365 493123835 707346252 191175978 620995551 837854274 120356635 897237057 572188224 308118796 182770691 26868458 578628201 70266217 591641237 336139096 19326107 618178278 705560010 183194263 456980622 558994838 477860479 815886928 654403107 70265489 927102626 360388346 332611839 85849534 470792124 990399055 967052478 42395864 593305307 634863598 861466840 824632649 362577607 854161069 606745729 949768812 45008242 869518032 613190399 698234476 266204009 265575615 316752837 16870704 531748200 931932721 403680994 979104701 649282438 129916139 500095013 741409605 936194429 359627385 951821754 568232690 374416479 112900085 348984047 526653893 842691450 288507629 794607955 412361479 110685517 563609950 590651026 291750174 545852838 71723465 263816086 564952252 738908269 360163000 371887338 616782492 934576689 152844655 20148285 589950994 900434764 575070939 356271974 770370807 735714745 169554389 749615059 201487130 655880845 444909577 877554866 842843877 809216746 742332241 682253232 932453746 587879437 424929244 378354630 561694177 236962064 817091165 285716899 129295248 389463993 778608896 615207118 13932733 102844571 830152124 515907816 292743469 337499318 863722784 468400048 86225840 943920452 811675654 571078605 348455600 220270973 873561349 230210846 163518594 830098327 366032441 48145189 411800285 65818235 367377633 52998865 808476368 284441634 89119462 704630058 830554438 559071491 310072630 279592028 980121396 7852619 6539333 957455867 486853832 85341083 488566264 646369729 663408936 103765916 823716057 837981970 108727324 538258205 698863011 180167281 973144056 838826063 682326010 944699206 355056596 693228056 271893832 627570164 75150104 664556606 869060506 279509059 869799912 343817270 926423061 623628447 563408276 728156675 942227496 441602104 326055078 874588257 577749811 523770772 67582341 350773455 296268526 644337404 587216252 347976675 378306983 910365179 593583404 670283495 736413988 547974735 345736596 223347989 524763967 722951409 797077258 554994396 951243430 280738283 339891482 622454851 982514272 38869798 732445186 427082433 297826866 938034326 636388345 572794419 178349180 433243503 219312664 748989668 371048352 702769679 316506541 161917841 502134217 698394638 260033822 586779319 202127268 714783985 716763190 428128226 138195523 824270481 856723107 380109328 773448976 3803007 191952778 907881108 793072408 222092884 645882349 56639052 705449714 946093465 517616722 626372897 993693814 389351825 759039586 274270962 429579480 801552358 609157281 159560111 390517269 850242672 84551392 181400901 248067882 778777741 428666371 847870582 956703897 75166085 294695477 968217036 187929606 831074280 684406088 465387279 82268950 39695929 581998120 519070369 26216423 67802308 929907799 749489292 696266453 506473638 163819200 806853128 823571635 539929704 804515810 786059735 943106673 568065774 502619131 848473725 231556900 272835790 135476568 540871421 103057173 745453633 528025577 228535050 854262756 465716143 775342084 214974246 975186438 839922263 712679191 375671646 889307520 323769005 630415799 107527532 957448172 901290323 898562894 951877201 619982920 162604168 932979320 818541289 840180834 929023434 495537648 913864516 519946245 744639868 912036056 427306271 803673889 80552313 411369874 787746318 242405070 454827109 785388305 108815130 564159852 567559346 316041461 363396178 390942366 500924834 704594437 551708488 205441705 231926824 275862702 211265944 352590804 819381022 293470359 287952922 982552626 481303788 460727154 947782753 998382013 432060722 330589402 713759799 126122014 715325721 885139428 464774136 994992020 265345646 944329625 153542093 647536770 510689306 961445006 963326956 446524769 822165018 453891817 128596733 175578840 27894425 264925219 573567660 354693373 168278921 295484879 111239348 19766894 356564501 973526800 233227780 797875125 202974682 75984616 746207800 760382181 985008885 917795891 87006710 84769482 459633338 671149455 808572238 399530657 694995788 366809963 106098293 242986222 223581330 526374268 210934145 946615205 12877068 355332720 598633757 5049674 805052799 473777392 362065094 256069211 244438272 48222721 841506851 624238187 427670794 758828130 729631714 484054221 347110643 700998398 974385588 214686869 454833168 873849969 789523084 457151652 206083891 158972334 318459505 981993001 730892492 107987830 928273939 355405503 143777477 336046730 261869253 602463239 135800231 503853240 969508308 232738147 677128689 824298408 999003865 620739204 297360919 19376048 224362203 825183437 581767245 66513627 659549800 717380975 94360990 421241913 584209986 142707605 961537358 42746782 547886359 722106894 537830430 284385895 614507538 592931555 373376293 622331541 478734624 636033195 419940099 7339269 329575101 340757415 72041061 78394615 661640200 105186468 529056861 164982747 993667951 172040517 359232237 611802592 564486213 821162510 928484655 908331053 343779786 989146210 815373568 995664737 735344948 273929854 351741764 798653758 993752012 394504478 141016129 218494293 354692211 745244338 507779898 10228362 990504990 254102657 340062463 737811252 537207715 815960937 362918293 742678690 494705452 838269172 901967918 477573859 746456767 967177308 248915419 759222888 620080689 939205443 652512617 33383599 696795413 505552073 300398355 636707252 411919030 74002246 615932174 635762334 774248425 935820730 894279000 247483315 227398700 836881774 638871113 739489763 842143571 513859432 258256195 423513640 432667661 9023877 693128991 330844849 105796258 813500068 770566697 430332415 513885422 241667205 608910573 817198232 784540540 493576581 93338951 637435322 106164883 260790617 609018328 73140815 481409410 975985690 572861587 728748241 843552470 138095642 909451020 180920766 349240763 513216000 910014924 700360454 749609400 250993294 97037324 917022202 853857653 336260504 180150275 270222750 879442608 96280617 626186644 632236696 594845752 623279710 543745219 938607581 647730625 79735892 712855731 156145964 87094793 570891918 254210096 96452555 956086984 75707244 257921045 552679683 617219970 846533434 382978478 54844706 91895269 651767997 958373818 720122201 606778957 696908740 298738238 780344180 708701802 597761072 465368381 419912330 670998615 883845711 515204633 383027327 272069410 332841560 286951663 960037907 821051815 627982859 703038350 562796315 199176845 828566001 912264011 765791913 685465763 261203057 111974199 626569505 704738561 397382580 515032835 888873348 267179687 208170566 482863514 116990587 609242575 971109849 167791816 862564309 416486207 336554422 567007081 692957825 480715770 537271715 130437260 299135375 277394881 313458503 765644573 907553281 567551215 417435476 928945811 517058774 360556167 728775479 256502568 4389841 655076961 232110174 567539941 71634762 166599060 673855345 745455016 690667947 463779975 321655641 796791426 205922106 618358598 457753724 900742687 296600806 643678582 419608397 990594772 843393008 881477800 717298178 752374247 622479736 429513221 91224198 528936615 659928405 832126589 5934294 385090837 370159766 430531626 258287222 334313758 616873498 195223686 259433204 708799893 976201720 619972185 379315822 214126446 459656610 511694259 656500391 207478672 276956361 429375299 921181570 40607046 70932235 657253807 168941956 288885057 675721592 643102114 527145180 188729840 813400376 338352544 572141198 572425907 654988886 381596063 514108207 639063264 643868894 828001087 786022031 810013955 940328600 350191698 410052215 834250776 392816656 70266732 387887573 331002001 387842281 548316140 323268751 167012376 29686566 325798947 553633657 8612815 777894047 832754247 470856591 465051130 492571995 496048225 328524555 596117422 643541233 91825658 69604281 554065449 427745812 997310501 422498522 667147743 756343380 397460506 378744592 837300388 981587464 18403398 818962016 621030274 575598547 809874648 449713387 867651976 666269287 508240547 777184372 221178374 345474171 296685470 308968618 601382187 878143186 256775280 226304593 631240148 777241535 715932424 529200745 157690988 413343855 590504752 797013244 928025275 185848316 981995094 290892549 294564505 64309681 500323860 733642674 830573327 234176688 674231953 499308331 981171204 200532029 760735133 96212503 15507407 573769234 804901401 565370558 147824770 606126830 275250949 286344493 69753794 395195371 276328814 836535358 964451308 25559444 495913035 412639517 955961573 33867874 931617890 353387792 321726248 687211349 169781383 741482338 855495678 268595270 330368189 140625369 504660713 455998148 906763497 453416894 550331721 946863286 362480702 961495291 581428442 243836843 814155766 907726201 425660617 97395548 70981320 197989260 743647104 808862950 183410977 148364315 867410833 358950907 405393633 778352312 633521849 30544795 186216086 838608236 567295867 29129473 363081972 377806097 221890581 461146804 795452772 785889066 754061421 143700175 720689199 887918410 44130764 93510410 575983869 323798671 104806967 389769412 400089381 54960568 368712709 632439890 648793730 97994137 991824961 642921831 534232268 360022117 7869878 145227966 509612705 952628919 513899267 612701592 718939489 533925683 411054773 596536687 565638433 626973377 304507438 538287745 798184190 32878304 593386837 743299488 920536268 806385825 399675612 76509262 154949832 809938064 335694379 587124583 678256935 852812944 277535717 447438894 946290582 256342160 368439494 498405394 165711111 772859438 126043919 50985570 723622229 743450212 763193285 554179406 842256295 518171743 778760662 870207718 724859665 679273552 928684573 180443688 81482218 430916412 621555184 210765394 685835594 145597389 556001980 70852687 574928855 77031792 840276699 776596924 589672726 175096145 583264099 133718804 938093626 764617137 468229495 232963640 685058389 341915934 401207426 534558215 776067190 810256422 559250658 119862363 817095067 424879750 184095809 649032195 793532595 778591692 307918599 235842424 357347076 501401225 656208057 75606658 475404967 947086260 524913975 941855417 252026160 254194100 914869618 282020260 792624048 219801954 746578815 319148012 959259360 309543994 576044662 778569013 435930572 586784735 721306252 994416328 149214054 796362587 837467336 651076572 604854706 226353883 264217221 303340062 644905734 501180090 472360750 930771128 909411959 607001294 434889234 565128443 502813878 278154695 183929371 728217786 263000669 176387158 298095943 449382321 918252168 829858881 335644808 124819680 110701530 446623186 526312968 612929283 679177545 31491761 765371965 847456340 894759366 688568639 754072772 845634178 526337539 314726597 43206549 536659878 147737730 480209168 424491962 762563398 353981217 26257477 423079716 29449786 784014388 698143679 830881856 145729934 418488962 559021367 768295236 475337574 694328787 999522882 303556615 408070105 82369079 415302698 106655616 553466004 353230068 831355436 420710623 145571020 491163122 190573375 834034763 255302653 551099497 389873474 413701296 816062687 200832176 982462706 271991483 840702875 870833890 129903720 150323241 933230099 550078499 412448059 647647290 122703431 850486901 462544149 724671151 23488276 299856405 607775937 591113393 711830093 253519600 613567759 868648010 683150314 618409087 720578625 231855472 286257650 691781258 681272883 160281804 184999916 56330796 418620700 731632085 11429747 162341444 640930060 683146252 183447435 669882506 405337706 402736325 718395627 104823500 859974443 812024193 702828736 347538058 925562636 48600592 610798190 881872227 491781299 330053434 754080877 864067114 459161896 305125391 787251781 228922942 56656920 277719491 522695866 325570786 430576193 293931980 793095798 273941259 891323268 906907397 243818749 364577901 450651690 118197565 288433403 881754502 24852353 470603576 849441326 306970833 540812256 335526970 403155946 145790249 314499623 608113067 915678359 660830085 118794407 113337773 794413905 487780163 558635447 990459258 431330563 846252703 546863028 572006347 435041985 621505098 887685626 110631121 229767549 420781036 368664954 987225326 990635871 185675775 62338337 170153772 131819138 924001553 173448580 561573180 239728208 588479976 282720338 668643132 822200506 856111422 284419303 729844975 83159737 537471215 12176990 465119010 164078972 40144438 102611246 577229157 94923619 386202096 730339021 679419545 121999004 678949340 51242339 809049994 840835568 100879579 899587507 418247023 445571407 900742815 453138535 518283841 611700923 941279591 16931289 126313797 543711661 375046519 765008735 432909777 894183284 332326887 603853512 992599076 59560420 782813637 529100735 381457782 14893952 272611473 585659379 613934543 37422971 249693325 94505391 769620623 983185641 14024600 269763795 327259836 46040099 400210092 656053975 511555803 31407575 910417749 629018665 377222076 892050887 340741847 260908815 787290117 395727492 430499385 458896717 360523953 967296881 490523254 252999720 311847509 273783347 621550075 731863291 322211797 578887372 699205243 620235308 517365658 440151655 917570823 300101910 34863688 16331534 508133104 932973519 328273842 412270960 197088363 866801000 116760382 337520703 748756156 959876790 958075203 521792465 814692608 195848189 170472411 720910005 825668576 428971311 602377933 598181424 33893416 732256080 313803617 232934955 902293128 195173108 321275729 72052825 766606127 862201571 516015429 980318062 17327374 450200141 883017580 142618448 933307274 355349743 817223212 575035944 915163102 217890510 188544596 831199281 120521514 212278287 231765374 633460657 827904728 505035576 41959607 892384014 16267376 666297058 326083744 625320745 820551673 984135327 741167121 834527264 466946108 495306769 829503982 227726277 472912050 547167313 567212745 697385698 690676737 790986151 152307705 743886319 855687321 478330270 430280336 799939530 144944770 216391611 381755970 56733357 824173151 546924705 974723577 628398468 927979620 915458170 83732558 691893773 975903391 20265112 611024838 302085427 829968608 623869003 345001108 296060815 285351530 259531298 132700308 890721613 229188762 28301737 168855408 728450135 185186866 662656295 208054656 394312169 409904318 513041356 686192748 617254963 561256828 740280344 998376325 910373902 953858213 519001723 619517461 907311208 957490407 200028605 789532429 829274997 727455046 262105425 979820444 25422307 374732353 706575385 693459432 810445116 723025427 980834787 353640900 181876510 395915629 440825087 623863857 498467286 737709057 678624234 663833363 82900419 420206583 795006047 279637969 340998095 265148057 580305755 520193853 339197567 109036645 469443649 561949291 846578913 174052503 428585826 716261355 351346696 672128014 664384683 584913167 535874291 824072570 939399003 558069015 215294018 903269601 308870690 737267620 507001062 151374807 375115783 277504760 350605937 810489174 199709887 956697909 639393234 154374173 75680603 67022735 410789127 36942564 291692690 207621306 534009995 137260481 148032992 830291021 417894319 770828728 780381791 176452624 194312656 644634313 432422459 952375193 291891224 311916651 218434500 216176266 340920655 926462094 903881294 253578989 599469642 835862576 452951478 641663842 206895972 224212732 786326166 537156807 292249090 709208252 582351940 959409997 415717760 839699870 856934574 746209252 282662613 802521108 616978269 354369897 769201756 178390830 259977976 577724498 361280123 961613875 453124847 82247598 868331873 910657153 459384700 233254470 367456499 199679099 81110691 339249418 55053699 55396843 883140873 401388947 620746266 841969542 510343175 8500017 122920800 964589114 889182699 990926761 911302146 96389119 782854984 429958616 156299401 396793449 835658787 916882081 251370604 586869261 655480904 655424285 694064674 957665782 909972123 847464530 345831340 414216130 632605732 909382359 402054383 686619323 985181924 392054295 146142885 754378710 225036105 837537543 484303003 988110243 283349174 335827512 638570646 531565875 940183497 873127055 563836311 768522397 446081637 942669474 705178289 290990606 208438906 472175076 684563057 496266187 827838880 580487272 296460833 401117591 556968051 556200119 970842551 299781519 166729165 292927963 481155249 986686737 418545271 193142132 896927930 434749525 410058747 544956951 568238010 632612569 169880106 292198965 653411188 769200618 82162923 693923568 664610984 384522631 684598420 460918628 848241461 633292458 816361306 351952400 941980821 248235209 613112394 733636843 102087808 598925725 230316094 812079452 650873431 865866396 138472655 827616852 326149225 77397991 430826569 458328067 121185082 791281886 510608812 796604580 121757266 966373727 38174767 444692049 711105866 803870446 402194766 50739594 104137189 189701634 276274769 769632540 286327288 168599169 612155434 193086642 793828211 69305451 722312738 908610919 191074816 858309060 700461443 927855940 238933797 405557637 302748724 894759475 380459459 307173345 224745106 560857588 209776680 656037494 891518523 534843520 976431863 873763957 211762007 431467064 121996272 119145257 956030274 535457086 685081658 615559401 114547215 968861852 851372945 234035147 924289903 842456110 492106672 195428241 573555826 169945206 987071346 190174637 207057939 133041136 559715368 995250762 898762277 390797354 534007592 689752322 9403641 61186952 3869159 491562558 756762799 659041544 276497551 537976530 817550925 107754087 321016457 437988943 922770225 48494213 632330191 292801540 792431151 895393412 403374028 669618236 979568487 716779122 548294827 629328699 60409836 335063335 603071228 822830774 545045702 432733770 623423566 139709090 791892909 618666986 905363047 496821005 656003870 756572338 6833873 858670190 710312270 864888869 577778718 485321043 312141881 380204905 503933212 986574384 637449243 322924462 229964223 995497312 431934196 108195665 866519770 413956906 952207583 302447973 695120937 630982462 922550323 644896083 161566412 909274587 447475380 901938747 448440899 19154227 444484108 143803512 147838805 172761083 34830313 552337054 892450999 573236180 662764591 230945557 669064735 301139395 594433048 245513275 599858010 135034886 689725830 748491122 487269509 841165713 64221072 410698010 425991575 634580853 381697226 918196513 417585543 880147523 195812352 25093704 785245148 874210547 285405388 681286819 598337642 43715243 927054183 369955527 785815341 680365182 945589897 935061781 882469785 325657294 901723196 237852289 789048515 251324308 243106311 332810806 368635100 202592571 389098854 877447772 298211670 147323163 248728850 614323741 632283105 841928523 224785731 742464315 699301673 851115108 500843641 604962801 55965160 390330246 534754594 183106278 410579829 311223958 865930827 161311975 141795306 335471786 196239361 675459239 111455810 679533881 952345205 740562289 209242785 916387845 778553161 755435980 698078458 560391112 457511196 406773240 793971002 430387555 348991228 526711100 524106047 750814972 827392640 147973597 796778658 913254015 295739482 488586901 592180254 728607911 546430287 837567244 298489728 578057233 871720512 436667415 751301576 809341505 108076493 862343856 370664871 174061109 61810636 818780680 362021261 952089265 76611167 324498997 559499962 856081012 750871609 802372323 321833813 96164143 615442522 204286532 788995403 673383549 400292232 391593532 395779915 370165622 948195406 476507180 273694278 105771768 63286553 737130394 817482861 817548210 697037016 207980017 273093975 17712694 741406915 305702644 26521051 899651892 928375782 488393618 650557773 944332533 3034969 334978005 368093754 357849571 246648728 337451270 660055014 312610106 432488061 56689544 1104841 637785634 216464291 80401626 333514528 879997598 175867119 676308823 995231356 503021713 533332693 808398283 348620273 364880304 703182871 288114321 668155895 316237081 528855491 713053249 640344465 283593935 659885434 222469119 696255074 611279990 616425335 360707889 329122257 416252005 679133997 503728311 612152957 40027716 648929559 301789282 698769788 678081383 572698631 100937631 408205031 101323425 746232382 34088455 883682565 973583850 358445427 531568112 737252205 768140547 394710799 978683248 1051446 707417296 971732041 441057177 888983240 230701016 169663518 13767570 803013993 889147664 672525262 317510780 530573403 926500923 358895877 279583404 168244396 502634690 302937375 921713389 892759337 802164843 5479857 111995181 793404609 176837319 167598982 627954753 640215738 712903788 849012983 937972579 183661688 318890112 831008752 916068604 119632683 609246907 403668507 176385166 289082667 846861260 208855478 564452033 712545844 302750928 135346870 457909566 394984007 557712965 659710684 67298594 613180898 424843842 765621945 800104737 932922664 381708835 917010547 503196526 814871346 729041821 986515044 991516950 852521812 208362420 706982714 892501891 785560082 72716470 957493885 790031391 193315508 375101717 338948303 101321440 409522836 454646305 209800269 115870432 790586097 355759723 273678550 125078585 715732874 102022892 756642152 898492462 843345934 320040085 646407515 869021714 130031126 143779568 24576918 518015016 943333058 343532273 728858368 985610842 263415080 13796856 927094205 344381176 190701709 108770909 290828735 642430032 957115788 727644759 182184762 285541090 756660091 54063787 891617941 383931942 7984667 264728306 745369588 995790124 737782431 856196675 200046442 20215403 712186024 837798710 308269951 981076845 386030889 820671289 582399872 735090442 320189266 417917632 52321762 920597177 149432182 71048117 223759282 366787257 854683437 415967699 391068257 825854918 63860697 455047064 935705392 635721950 713555651 214270101 50109600 443167300 680545907 38269647 578014112 26589815 942677519 315747445 733869858 709426417 866009198 36102966 938649281 301822485 963686151 179759276 332266880 835871657 146381620 995147327 300231367 724709877 141706054 814282312 420575579 865819346 851463569 48227727 182291963 913817981 840211837 308382406 979206553 668589413 738214123 747352362 212351191 678818636 421077962 594647973 126983342 984945636 701947899 403396334 902806180 504455253 612088784 839610165 783434697 824981730 422200056 144671961 107029120 655390810 11990507 667012486 904502765 630163569 571113094 395104675 585399044 614900807 47931402 993419858 115428468 417797965 284289622 145778562 301900272 279133651 507964976 629603911 78953338 944240531 764288109 534945148 251489978 823807669 348107582 390681585 443316330 179840045 503722940 834437636 442670929 13565816 306303063 235693464 221389668 742499036 189099401 473609916 948303644 971562810 207981916 47385837 722061482 745909174 866811850 549983642 750417190 841982626 23471736 40055428 191250314 638461153 208554114 418762325 503666400 789575807 506437073 539931018 786846876 711196330 559183189 621896522 706641533 18381410 726820709 703887889 960975540 775046106 710008879 272741471 754706448 897900290 802835314 446597701 738079565 456047032 17054510 976992378 656067975 189228255 600015506 45454200 841321160 697231934 714372597 400326219 320850215 76269481 893203401 801991517 469300596 291440240 827172186 687049522 699745212 475153082 832146666 823366921 156495756 489717982 838692578 318268714 471832381 766269708 73835097 383328499 50315851 266996567 533861057 67477809 89303313 273769206 365739601 570277337 133571800 165106337 569206936 792110549 250773416 554536961 543375503 449241979 306758539 940901422 977627726 38443481 345482030 227673174 963737038 667371381 193197293 306009696 338322593 199364680 550177238 208412169 855044129 16553761 350434615 170187026 871525290 679613519 412826546 165901064 184206985 388212901 391787843 146660116 217672844 382768081 487525806 640004142 372277028 335651009 507989332 267067527 724754341 506262710 169190127 21496642 957498422 319760822 417338087 726961026 864776511 916141788 869476073 789710743 773550269 10283417 968217228 960675774 303898736 640824368 240404481 185669652 819154116 10856565 327478015 828138235 239718912 634621524 864111898 805416016 758276088 145932805 64425713 788874839 748698561 976703172 192342207 978110765 290849296 956689982 124544575 58955343 356877673 901921307 194079350 12703506 583980090 696343756 764446878 265876005 299136332 484089941 187612572 777481049 33843067 535790154 694304946 885205230 627132930 363674129 308813842 408795482 518719482 133672805 521452208 627928921 593542923 749703524 729339766 126375006 479616953 548314078 262427433 695056159 47440089 606929956 844530651 826537260 8593882 4392204 30725358 799648584 115113193 845369810 507233972 97512076 142855574 276710026 986016663 138043300 149169741 960235168 543998561 27944531 763659436 43470999 137382191 896169791 103266110 121729502 830504784 560772137 354472929 774725015 574246044 568257357 325889297 662341100 392628656 621348452 309345342 671567601 247551125 483706941 678243014 894924442 665130033 811563372 647823932 914496340 425088025 447952841 345515054 507621504 163942900 68894162 756625523 972490062 327445050 749279832 862551008 335854171 254923992 870180748 558822813 44001909 274102626 229701171 392329612 502804115 124594654 75242638 44446335 621255804 914476122 719657739 752656052 177248965 943427913 503181856 845961380 16328626 663130347 492809062 95501620 426985267 176236623 296333009 766505746 759016901 998317086 85803431 369491395 42192980 336724612 823465962 139228509 293091010 846627526 579251881 89839786 196731715 793260155 708968053 256977498 27992752 69830039 542665175 268649624 169337296 243661205 473421947 634509150 225986106 416184598 12439658 384102830 826256930 409441793 750314657 325533536 288683234 246914131 731363727 358629454 706237974 920809781 679528541 292249692 846425808 109868306 242222811 935715712 264667479 190587387 200029173 793299614 930191616 373851 512841169 3600813 776563429 212303857 6578460 288973563 737942667 421797679 44876323 338038064 330348652 770721583 45112712 122320276 827439553 829905712 46179263 603225636 997710131 683965618 138083417 841373510 924003538 449022004 957638884 626456241 811145970 805955473 682589992 479501520 387243165 81616550 36993590 305461065 391755291 900849120 664241416 332583242 364860632 231194657 385970080 187315773 68998520 302571965 332083311 25246620 237175170 890256898 741413091 994341135 108196045 484068004 216844980 302891269 406184192 928453886 638969829 321223833 225087966 16163636 499278568 286062313 642776575 577362473 25093197 471701679 564204261 601345348 987674508 913740758 972477719 522018771 724136773 960811620 640520180 208132460 481707785 173261811 535327981 321074031 855638413 944637160 520947168 454353083 304719870 968198099 823060526 346605232 382132401 402815729 600897527 766949939 707678240 175200082 276786704 883064145 472088620 709381897 845596286 407335428 968540111 144244587 796808401 316466964 687765546 670853597 771402504 701952351 19805060 333857025 611166142 760301050 703825228 35190428 554167961 326270782 259154339 283468213 67482184 820003712 565823881 863637682 720969955 98359553 790650258 341012881 670963826 638181664 29616284 932076975 114020955 786911593 548785960 280172044 771046005 572511268 544294634 455838756 828171485 116243837 604498965 853634358 39634209 211356168 747574099 198590490 311604908 756758094 681059875 356874946 771733992 990701038 943372364 9920935 886594916 532273833 798440290 912254704 893485807 207027353 468997869 144569165 696416386 683452475 901328790 391495301 276342042 697786466 681769682 744340370 233415268 983356050 404875062 309182990 648803336 691457446 138446300 328308581 358095799 537099537 554283869 365022625 77669037 501404442 294420038 160710245 279095539 391184375 798645432 124773336 143196512 405882112 72268978 235006929 751588872 691528139 732635157 667880511 184645638 743143417 231408424 206840460 566149072 830265890 603234852 76513949 564601365 208572433 837270658 785826323 529728182 529677239 968857642 501071159 816035152 179278446 322353631 422644632 736181509 2914750 163719351 121645768 37867127 969378581 762588667 261651859 410534816 345421247 371134975 812004140 962818181 58491050 427409218 25645730 673474256 485092125 387817822 752216639 323762476 772352615 265586569 537196008 854527299 624297961 441567867 296497520 798553526 80393358 485745872 438138278 370631337 58369920 350869316 832319770 827628658 453509663 887419288 341074542 936567043 893511935 758725325 2311128 430864217 346136728 187741219 991815536 961773459 316880517 458722338 4997406 448097879 462487490 714252439 448499536 764484863 923439075 902503529 689670521 908706441 223098337 853567452 513275086 740846736 859590397 230974842 77561318 210750339 561274588 86645615 75761261 87061585 536764123 929596368 124907637 718228703 445931739 351956001 392987115 243613850 151502983 85455422 824107930 483915890 473948901 426037571 277994260 900671522 864167563 530948471 860952526 536953087 236539906 650072383 550866288 624151864 397301532 622720964 159205207 372216134 692194284 701096224 908284664 937138413 56996877 877498503 991002147 573409051 883556254 581416771 949145686 305127940 214039583 388674319 478648152 922550953 418399089 950120548 341028998 523321393 845591869 596710717 527519115 26554522 613364056 289483231 9786246 291972643 284513267 203419023 956218650 856350911 192150210 21286883 684248723 24073622 911011596 483937567 566071458 555330220 14326504 102571015 877660902 623795096 714526332 88876220 414506125 888169085 236696962 921244582 734138380 300366361 426924284 975017514 131346624 534890953 534212792 224798339 604164441 159069008 914370692 603584880 663223255 514403644 286701166 305793335 376343192 333376185 310872022 247281303 853935602 940053731 298895425 187269516 822304679 868093012 299842455 251763847 517934565 162220862 669675148 639782401 885250013 569285017 677381366 977294018 376096705 79104575 240014365 711357710 777386650 200278698 680117763 315667318 326602999 241189939 914300517 717133566 282114082 465718606 952171271 131078197 544747332 668233076 826021631 19265482 541603176 269303175 531520762 869741726 254344013 645914398 919740283 573330541 653546847 400138466 527006674 303592691 663844901 949418027 20455473 689091055 638346067 469181034 214937111 228125049 492845760 455983255 38499801 717347720 746761553 222904987 489595789 454200718 477671175 325108229 270205023 441461576 553033953 451793911 736278644 949833991 190077078 476050614 97735972 676982976 253250602 790095373 207305638 756904762 896041166 58108116 345747982 84513222 981329543 120047769 269904037 557001060 347944595 780165597 503837339 810586478 458383784 189340930 2244876 240883225 846381984 550353305 454571486 341323431 630980168 700332821 631404504 686451253 607112153 373333500 564169271 876754984 188310329 508260259 360985965 722154579 75335176 180942744 497231114 556776627 617655023 120006036 295412187 991402757 643283720 937495943 671127286 226377734 423452928 989753223 53318463 152357573 28045622 740499535 63273230 247400253 424628298 117068551 224074083 449415439 931208945 222078857 421722083 784559310 524277114 337168142 186329797 136080104 414688799 120129977 327674546 659402844 737786004 792125860 182767350 985903272 39189229 762827707 247007418 705427935 4197499 780799151 362414948 372326166 458617972 534779854 511176915 894632387 938571536 146476619 239898200 242383476 974983053 140789653 693108601 838183684 715291254 27397514 791400685 49530468 311429824 86651385 372251316 232668811 571854566 791905936 835239511 567524799 307038255 789529912 887003303 406916779 315658369 817822512 58666712 737376526 394214944 661940914 117080279 397409383 418181663 197693952 514308100 676461420 540921251 11405734 719996343 390592337 715108164 812124317 513454168 708522862 212684889 671890420 567304724 949221610 476933880 507182062 840753792 205610667 589675072 904475 572511420 395746850 473618083 943939365 194875732 257249085 390105894 665138655 245424561 929125108 675240493 914931081 308091888 901021872 181571386 969607209 845529 836713980 148369879 142658186 997110383 804324343 509048979 335403127 996393058 801142119 529889172 673243102 362099539 743403982 678058977 563469021 861653514 91302006 569778104 688755399 829184532 655526891 151346593 919557782 131886583 240529184 714703299 924977978 653666330 251236481 897332424 15930777 282241708 918755648 83240464 213726190 48380893 169962577 503509710 120402548 431758047 888746965 981627074 479053489 646828537 987255132 878588623 249963260 800253238 994135642 438222572 551892742 760463861 244592564 318096132 432294954 329545681 657812066 870207956 333078090 730673610 543190027 577271623 542168330 74200116 54136417 314366012 224450265 68869186 8063229 234982746 977841088 695982393 506377735 201372405 603278061 467870032 950480212 241941667 807605731 438075810 994538481 446129099 172912303 511782641 154949768 159271276 627204886 636703806 847920628 369709555 192211830 960554816 48996731 55023492 439416588 989149619 12351912 907534849 836591885 282836470 761267443 881342891 872502636 107968056 183664740 998649105 428073885 162658013 239679950 57902207 390952946 631055817 993458028 770260089 928454304 847746661 399723294 395334635 730079997 277909177 411401863 363465769 158128178 575892280 944980150 472488997 990959916 201603461 858435385 109810871 606901838 213863593 352670304 777510753 893784808 562142359 339987046 714200820 702159176 157644977 500118735 606804007 232188671 125547858 619171439 395834014 507647792 231196803 788927613 629285693 123413615 126617825 673551568 710618162 548023248 1610 27852897 637302999 188844129 516905106 544662862 930177838 948076325 561867281 979660134 236310595 995919812 288316112 508964756 115666827 153277575 644651255 238640225 801709762 880816898 525744006 628498170 323174550 137619797 614765289 447489741 858212060 14544285 774024851 833751002 652523831 468493494 393653182 328501283 882388260 472297226 339926667 394752714 170308722 3476915 451413941 360976811 463908880 880067741 26443598 742867249 763601523 868330607 855682491 428577949 884620765 723720687 876103639 720639396 100421720 255681790 606312945 408839319 831822370 639374325 824628230 971857043 95444281 423896183 557814447 994447928 433514647 18620409 420221636 7695154 946668606 324309180 725978288 850492074 828797168 895717301 696084289 795349254 170590104 321061129 209469324 435607147 726796639 604528713 997496640 445830966 295961756 221305698 732826680 875363867 421646657 715857075 408945680 594674740 354961927 903871388 225241338 621749123 647000640 597369692 257998937 268436572 473769312 521119010 866307789 311236536 657952220 557853655 689701564 108148676 29571619 552399319 969469301 265330352 55758779 277798 173181076 17695996 986791571 877090100 276978857 153319290 800593661 534921861 440608774 465475210 121204452 432222647 985819875 74096495 79745470 756949079 517526379 25325397 627047021 229259799 252300753 804864613 779159326 657297419 623910650 568961791 670165985 318820561 502148676 467877171 563579988 423543969 546603609 234990325 300740837 15016076 260809637 271147517 15928081 856545442 687041354 635191737 809677078 885091400 94426559 716721047 193425069 370360355 436135169 40718519 799465434 209524766 108593991 759531805 520264904 123239078 360970385 86270004 238820068 209966475 21767284 654979680 111473756 502359292 667647037 865422537 363930711 983366715 798829155 114809273 364804604 896295510 41203336 810740297 653926358 218597552 44808467 664991126 168741390 474608660 147835626 413454804 565594626 128593737 815418847 657400100 345390115 560982916 498876981 892918369 857968786 705380883 319678088 174333301 358446862 68679307 457109642 872165598 329151660 781415289 511229424 446875634 153778509 399635953 8749897 645812880 168199329 368291391 138470021 171361005 566883616 218369845 897388490 551852148 387898610 919198723 689056985 761233204 162476437 57223502 20450170 948906611 430038238 930713271 588673483 770714942 152084193 740753214 564269370 735774044 623791969 768769353 382224085 689011042 581286942 984336640 901026458 703035523 434975044 226104137 363111691 710179906 561540254 281862304 346645418 943533849 305774333 210084954 138554723 706835255 75709766 575674551 35117603 636603233 165696491 649583127 12898402 374478408 25501968 103213723 800085246 665098708 604052703 691850546 741537166 136762198 887841029 516748494 231123018 149419275 50421926 10012416 749546408 308286762 508753240 196226582 593394770 559812030 477629713 295829942 110677375 663997927 366404986 400320806 184759170 976576344 796425607 472494372 723277664 214972035 204992064 243990820 505392297 931447914 198914129 500710123 145692400 470428872 260151958 802265330 998057242 994171072 132915675 225114915 783874190 993768078 296839886 340992721 309363152 883711465 819584619 702544513 573441225 622979330 906336632 233776574 192863308 426828062 936714001 513418561 380759725 211383128 447934295 552478941 649315317 614735693 912315363 59351617 298541625 21641033 372013865 558313472 217708516 948086629 811990636 338611497 998625492 732725576 925746104 973806669 335293424 221315124 931927279 333639621 140110034 461564905 212359837 180034377 78813079 107888202 595259333 988935350 386946653 159272019 33767769 300998267 868240347 537822174 492344062 862155866 487008499 486058594 619694192 580927871 395476108 665515587 688249707 958073109 792947487 246199442 711340963 183652853 271159078 871361227 812265222 426957580 124420505 363208081 58918006 718804916 742540216 967635415 151495929 337897599 797156026 794221842 40668690 743112599 620590777 363511067 88672143 675575360 679534659 943300617 977196075 434597483 745641021 856681946 627479653 304453167 39922717 640855376 442639603 81720637 369426829 742306676 961134124 449966743 188408497 805700780 861102139 757814853 824808693 4727995 874240359 798989022 144369700 49316874 112998144 802031322 575645774 537493841 905424394 732651959 964199723 772805047 597020055 123179355 243524589 629249204 348692988 671648432 556160937 205781791 516743561 301924428 708430145 745863279 328205312 761114632 955733646 895216097 282645008 247513985 731503327 385009977 181450765 608032068 397799621 958393404 745182689 965960429 479710941 374444287 205777270 431109288 886874765 848126497 173882427 352926418 659566468 852680833 591636164 427839920 398663365 113881870 675236786 706934185 294926748 403181882 638401611 285560072 933468397 858671711 32141840 522676512 320229111 654064069 104039554 70677098 302845185 122343019 634543834 996600969 478706037 731324176 193796045 155233959 684598533 197612363 812533308 680187423 665946353 518663570 342028177 360966523 953137788 872151512 950554864 861648639 922006045 483963301 601836297 63617687 840288581 740711243 578872210 848846047 37890367 481400703 597276119 80838606 588369689 74592595 343311742 134647204 917025359 950603269 211478499 86519160 198699610 928802141 333073637 627656321 954522889 620237812 656400190 745994647 306054508 85239869 660924909 353075756 869216780 632436049 652949310 151629979 352606000 676601096 992966014 328146551 260158510 927155145 988162243 470004088 909682746 547884606 927851636 197880933 921456916 761695010 774830087 941879184 907653266 855012085 583521894 278136357 58307437 4927554 127510834 142155182 470712970 529201368 824553117 994722304 119994525 308349350 21552128 722536678 932710716 489409588 243007048 45356190 305477722 489591649 497368715 389224637 472163673 771492478 304806697 841112294 480830193 757450946 199053933 348395397 537388501 12439797 638446302 767012220 1303466 748066658 250872795 611880188 315009526 385414418 680963407 544137556 389070406 286198549 758769608 595031584 124649492 121908907 964896937 748180196 689030067 596781782 30892254 753941874 469818383 305929097 502871775 682407840 316419554 129608785 314007087 767074344 993013886 391463774 194896990 677557217 63799575 39417817 732826616 748347726 726341549 142358882 151983637 783847462 213885872 415177488 872623057 740638156 745065626 844729798 542150817 790621327 668706258 681824694 97421881 996191073 379356306 474556551 406834975 489304271 700395735 820736636 441467259 252344934 97214602 258249234 491676842 504225396 150310252 474518886 358867369 760341003 566841261 465577650 77786789 637280905 442346063 402556792 263325304 555927274 889674801 614324696 159087008 338907396 828228316 836311165 516375928 2562734 647370128 638954364 939258293 627563310 675913376 358028993 45806905 441085593 999627137 334225880 954037327 652200459 175743555 363008761 411943965 695186171 349232536 690007801 647982907 135206742 301143225 94522855 421972536 777995109 936340844 248996302 575736438 351301206 338788725 416429435 325129342 825439130 585808758 402947539 419419799 456442910 67882058 464572515 731602442 128481815 478000673 677071452 909192266 674190094 165573478 871874318 745104352 477624734 954140976 530112895 683423548 726539382 519848902 877324829 75816472 592100991 379750339 918410924 983259292 85301601 925409350 870865530 674689032 914736376 572869109 802834974 600982290 172263995 402509767 910422987 833028632 431396491 186763903 35102017 834055942 916675456 318779934 802461940 574665690 109416338 975257462 288842628 828015038 418642431 139550344 383565420 290373770 90224765 799481719 625351233 375697993 974951494 632687536 304562718 898855737 427597696 78091 108780965 969764304 740190284 222248207 402506475 682605837 197440927 661689351 147653191 202369036 307228786 669191391 205618344 45507353 969550705 466778964 35130597 667484429 406625546 355123679 952766746 15620194 328495846 913878547 172292306 497403827 461399817 744175839 531862772 641537257 502992480 404829185 387282443 981078065 318037372 707569249 423056481 578826019 673814498 443307569 99080479 92335900 682723238 251430921 470097157 194223723 604481670 190256019 506179857 404267155 762168569 15294879 398506385 121023186 853880990 402360583 775481697 740719695 291921551 428840061 745910280 893065981 867067137 254371890 803029988 718508550 226350760 121912838 559386289 876978379 658400638 83104689 108784248 846666137 170427573 35347039 716425919 143028759 513511250 788291411 474843643 769212355 113857528 152231643 355585123 333180828 13942074 122876169 132392519 75412617 51866018 934588993 726440408 697099280 225247499 610269920 579109169 395615331 772834200 21901567 267478787 525691228 260158108 235208415 4872936 985276588 619744510 438828160 486880068 306165793 387858397 71744658 359332782 840640823 680455225 35282817 766434460 597062786 804749098 715544945 239885689 920011135 425612946 165992917 273318631 234519032 651298575 696720554 788325203 683152391 636407892 335058733 524531217 46410748 526760992 936406005 597177295 310599769 144349210 172493976 36890499 18496786 694216673 752964851 442119610 853605898 980665565 382186146 435877472 974375860 281946205 922863947 901535097 878814552 722290736 967019592 238042255 514352418 53630963 155583177 22048447 628698250 907620251 7338332 599559008 292904754 792239310 972296155 403052796 507653584 284899172 397415629 72204582 678472223 195356396 435480394 115391768 37889366 913677206 426123890 436449532 464254426 748328079 830824367 788054146 795097847 262070014 250403360 792910898 211733739 137171339 744179255 485410308 117614408 542068623 242977635 114528107 418208485 90709034 839588140 732666759 947993965 359734878 263641708 697337147 176004430 988106719 892115710 632422309 487485475 918043172 949454909 222431996 228199692 451270248 729869218 59213794 866717927 141148893 84592493 143424612 953461126 73605714 18000809 557591621 942568586 355711517 564912493 215476787 881510392 561385783 410181915 317793283 648390529 825006078 871223443 120097649 320731808 238403633 542382026 999907729 752056205 528830861 665011385 272148657 386538382 837964219 695241266 833736185 978455195 981935326 201351468 438865409 437503947 555132445 626821854 379792936 579056574 66617430 527839480 296765451 194590836 71998285 402472149 633364369 688296688 530156689 898329703 740452826 212105181 106624515 544429502 333446692 124009614 848615281 451293779 9201204 350031042 485855196 127937223 604120404 66687654 963594524 450807143 145925602 902068719 252839090 403950446 908450391 239244110 449587926 123467855 253691130 418456519 305204473 771139835 367677744 382676791 870112713 860499344 125588795 920630537 632884585 519490825 575246605 334151436 468528167 809631361 95524548 709162683 2250308 274934912 334968107 851953404 778126631 236448674 820545226 698505209 675461086 369635009 408520621 505239316 296174972 414929092 126446125 844125439 450674290 780231386 923382004 952601787 972125811 799313783 688310943 152035986 339551552 928784284 310149449 364618113 83288611 743395173 779403796 375085960 352227620 474475480 199436344 947838155 91576932 75859804 235062235 13825185 870474023 577935218 130715112 617816749 98113956 152923954 739079418 658930981 947879566 238332977 235981407 863559230 612913588 619988749 879732877 629002164 901008629 376966151 982508889 585888720 675793817 501849128 42726068 445436902 682094435 492396730 225235670 651243470 533572201 504859654 161702075 466109516 860574754 330021445 535493360 983775309 777230073 530008424 204224734 746656292 716033598 692194526 257320134 335329703 31717630 272098446 10193407 486460942 836754594 304730350 111355202 218268154 991032064 889888847 128156400 580482472 981445930 873599613 119079761 473488775 546824923 341286460 520585482 122358822 932321877 914483463 446343038 460859523 230032253 20624552 966843713 483076734 584228670 440434163 285214820 534784092 214729525 829583231 813142727 642847729 151639416 570151336 959442895 87781989 509791401 265480765 99203536 576602125 969495384 54953969 296904062 24920243 85466141 840373432 240283373 775127688 833462737 264288197 619466393 9388082 167980257 907656671 689411061 408768072 63559424 568601238 222184634 483703033 198091758 6280922 871440746 7352053 473515701 369996911 818238814 894626131 761521410 20348099 645608789 748563580 165820461 782151836 633400758 494191360 268127799 711178402 784105453 60262431 328893151 70314896 441821157 795070868 120055332 530631175 919648531 190744499 73282486 280144641 629622508 829683925 270558973 7583652 135291667 223790109 114402411 702998876 819211957 156968712 515414765 53318238 579729592 520345344 734040026 600937032 15600798 204101813 314376153 443680201 769857631 350718803 468164193 48661735 502957457 261403477 857643195 947297598 498510600 467420112 34661320 267976151 234197543 615485274 338038625 338032469 108516206 460626782 663687257 285354740 4214372 619848176 676494054 79257870 156757248 409165106 842586355 444701934 747856836 404106512 14946064 830780836 21299521 969200192 85415409 739413019 771613590 463801002 386244533 946895611 709230538 435282711 351873375 902475703 796906104 775608765 675264915 139790779 884867557 73803041 191824153 348071369 237520937 530503220 380725481 112371774 537544609 551549743 56466339 446687341 551364893 324091264 54328127 319600050 21274919 38577656 266766843 123733547 812970683 407276621 459494927 281523362 999256422 964753983 996529218 521053048 435380024 481786403 564974071 303617218 94669543 756216887 628547752 512281843 137246669 152912210 847696982 519175045 435125088 114377675 240499461 418557589 307681702 909113627 830770154 816658135 55783717 163784109 392144773 301095050 727059608 390878548 615243898 812198733 81719759 852223335 898822101 352658013 517520557 795980556 906969257 392467207 960496354 793555282 40411458 740421477 868844562 30661900 14453601 121031278 838084454 539146436 625425764 32276261 508899280 864517327 137949400 548626398 646885018 898661011 933220057 567920056 262311120 901427338 427249459 740759249 909800095 686872741 466427284 88552626 651306804 807089613 76425896 912249512 193260093 494447268 192029637 839379850 492883133 747614279 649634682 555883849 60743866 727442145 744247896 436587528 994666393 89993396 951360168 962045312 719946492 695807673 87432782 123533681 463880814 710254770 108341106 714073364 854423332 474853639 289045223 584353927 476556314 822897505 551478884 183701392 472988895 903079103 554304699 909686252 267268758 934617113 248374177 189619681 919745292 128730680 419967375 470174565 514304742 643632047 549702150 96386077 193001826 35725310 734387518 463599935 221768786 369557912 928220542 861320714 319226873 472903426 220546258 244973798 866648345 539127961 130965042 192564513 655159281 36004783 566796418 29994648 390867157 996009332 75864826 607148426 342058747 36973387 447123692 777976530 713404921 436610024 84313537 338617676 217488926 117068691 839208282 579836495 54735071 364401962 790549666 126184465 486124497 42750301 795056250 724908914 244314496 497684980 159992474 321006492 112297709 938406109 610030100 917252618 873148137 243893986 201619916 789880029 993602922 474979292 245800610 442759733 199974790 368934813 559041720 240472478 470647227 698565571 898483171 285529477 229222733 279502189 791037689 418161879 406668867 424913290 355509708 169832280 170182720 870232962 613661067 11478159 850340714 875336870 187101641 497481403 747031078 379565266 792363474 46105918 520354146 833054558 524829582 716198957 84079895 613654927 273054295 175985168 203401650 197907150 864185411 740785859 441030425 433867955 135044850 801463019 422677928 250368391 825419984 250701293 149131068 267885851 40684577 858980757 637971651 203493300 543592218 162958307 523331680 215486413 983215485 591129624 957210153 514681969 901576190 567651792 910347993 675596522 778432382 822406919 498078134 505768154 560873950 367691822 15417979 662398768 812292489 700073893 593451899 481921486 46407660 338744844 720009754 479793214 706173933 186966919 206034096 224978009 562708866 607408168 531689426 839007967 442775032 164872894 819554587 671411935 426256660 319923907 987704844 297700891 714059087 548692505 994449018 562458140 638022529 942052357 239529576 873365303 258289765 418781845 278324025 195766362 133266640 280430158 247817029 849542918 136732699 720004819 239980919 716514658 447712124 258491722 611781736 410525109 768683266 990506042 819951064 726441711 91679889 748348175 582810864 910144191 140943590 872070056 373819590 131603784 514882287 208958138 595621817 975940914 27550480 309929689 641825197 282017369 180499089 194661651 411298208 574162543 448102524 949970872 37181993 433684198 495570609 668011343 907723563 445915377 934635261 921547613 247850455 215523652 862130729 186730858 351842485 472406315 353397539 140608547 316486421 558005423 421471465 480648129 238498206 573906884 853247158 401625675 235049649 198728152 799842483 268876591 517851256 422899434 140113965 259469303 523682149 487834992 76093754 889005904 110933891 390175777 634327520 737706340 213479117 983417849 503513761 142187034 486519008 772280713 36268154 830487209 465183733 505868194 354322109 144219380 686240430 899882214 441604135 186544332 840365905 812029742 889232968 73655755 422690824 429007332 749127217 221263955 501840751 178772239 893878079 949409872 325963439 286087320 695137957 501155520 29456515 893420100 545526416 552423360 974033879 654388775 367258552 394866100 186239248 431264494 679914983 834213288 410554349 395967003 533733993 733501986 995618680 450571731 535873428 261589127 890589462 831326896 152771592 275488596 981163600 627869397 54426975 546996223 409899568 658943716 595862822 265213030 831044385 482016838 308066575 317583156 90305126 851850396 343941807 513913340 121797472 809695224 165474303 288861446 310294589 177514327 345711937 555740123 45890837 588829080 157449527 465035127 657916687 869783488 362300942 166597694 735606899 524093185 478883120 772534814 917326350 167730403 723731240 179820239 930547161 271571986 614959848 95823846 872446062 948576224 557485087 636803727 863093067 79985345 194646500 343123942 636943970 599204579 922196418 815995149 705037007 260659513 17500771 96568697 364249378 132957995 856234685 742157633 389785151 224830587 193735107 206784819 796965741 546581551 302761820 853364532 242808577 487565902 275504315 39640531 292522536 228808522 208566965 235475959 378600368 76921356 937477364 728246643 34805826 520261368 235314555 518330425 954369932 181075014 258028775 885895655 583831627 251477707 438152193 113390839 835535666 813193467 801532555 234462461 400486961 294321171 159265278 525014687 415036139 621854947 857401986 714640276 273827221 802263909 354203756 742109109 726371710 465652351 649618589 221895114 748341800 740001139 157470713 231392157 278169820 890441484 948778750 875717251 171652826 101218286 462753113 493613842 506010074 31099382 219203860 431090368 965526577 753694805 942693771 31639812 36959060 947465097 348987264 409252964 296693251 288681162 118850858 27914121 702684960 781792407 58306222 382998950 57340077 873263433 157362770 872750473 448647764 915942620 933060843 561371990 106675071 794723113 664141344 904660929 402865363 621033534 91405474 450259965 554104704 919059159 21811245 396154239 513248001 609141389 307034542 82341761 763557709 665623939 635465158 10385118 596741672 476265981 14387624 126994778 292186823 393489659 450785798 343133247 943604906 885239456 901132084 303525789 939042973 651167303 30275933 218525511 129036716 40088056 482712615 653884025 860580904 429516005 283551772 1716837 434643751 768195450 258319607 133454411 637387655 464144093 273941333 177920565 337628256 899656082 627622769 772869824 264109421 816785256 114919906 213501704 120749533 588055559 96026859 487150224 730836844 315874919 756342435 858609355 210530230 712087104 452133749 703399142 449678293 726944447 347315197 603070771 745711108 804455232 640471949 403958070 870614473 439264382 971509747 211657065 299894782 38089880 575237445 225491442 82479006 963609174 587582420 426219196 544798241 50609261 959052502 180726094 121184569 853606760 685171978 633099638 472711288 727443039 362855146 383805299 775993416 570584131 887029405 977182043 738352773 123032453 559162016 25872607 913988622 661031005 524585685 139365994 811532406 628619181 829505767 205827708 24605901 705363465 846259069 31222360 672402500 921210106 530567716 977787918 629592364 579430277 902402822 16250919 15808077 707559300 362979748 755764229 189579068 595746194 380508604 936854673 816535689 169137299 683922597 541758807 457214100 381448048 974786231 785426016 59258314 269599688 838912113 544006122 110972056 463765251 387950755 30868463 55174179 263932203 841320904 499231800 724393741 738691691 745984046 636078753 431177307 829518541 819880004 28516991 822181971 716213419 797764352 78935636 62386180 583912847 121180078 907564800 111423185 411289606 247654750 827440762 500771786 276876306 765820162 365916260 909942188 432553564 969503019 366489186 254922977 342737671 588180933 472903276 843436878 249617632 985193953 810226904 710139961 886466528 358081968 346049082 220037806 611766162 242536846 771245279 262335366 791495176 262168266 522098716 684645977 279432992 433032214 471984809 401230922 111984653 371043821 638424222 755295314 372889171 108684973 555716605 25640313 961523460 683970501 132964150 725531099 616802815 127606253 333817493 146283753 882862353 747182083 176855419 646493947 756697753 578753980 452427539 945894584 551631797 374421290 656681986 928599036 187963044 896774040 653456545 794758592 97068197 420057702 432397670 896983232 918918424 643962841 577093232 741702396 953330548 135893469 464676251 143126881 64036219 266237245 352638065 875563152 853824221 560428317 34931164 852261565 187601566 551469518 322579285 662329118 427257852 983204893 31105116 386229735 172156586 497119882 319635684 848889408 656596499 458453689 792393860 342374193 425689674 171618558 786726574 562973201 485307763 912303796 752345838 217360864 389017121 824659071 787994654 753861375 705440727 701216470 504759083 99734397 563905737 906060830 480098057 272283356 108540584 22870429 735473544 695632902 841328621 715158526 499045046 322744101 69266839 313628756 607949120 738310797 707517955 90887795 40338855 170007214 160906761 597974611 410978487 965391027 722539467 785079780 772304756 594979865 13734935 32539787 636572452 32336384 490135520 346476256 29404424 708766263 798914100 143313398 95814202 608457583 381187991 587259642 897853030 5419506 709008318 788494787 225629980 305748253 599948193 97937098 785774585 737148048 344716277 841908559 388682231 226295593 21805206 12096896 843474257 535816460 55645521 563732574 640517631 106568314 124844997 226506918 985975289 461861305 632649567 522679802 966512822 394414679 884397475 564445987 561824790 100859334 631946814 512123957 674816120 350550479 687270788 472620918 379890276 464602449 771071249 605688995 874504964 203043169 328132079 890119832 904633877 196558538 348975392 88801246 69316136 2031981 861812233 870293937 985968216 762721998 592597259 437158588 66152821 428012716 544210250 848238960 70990447 342456835 555240692 123692768 37180738 374074360 185533199 327236558 358921426 809840809 655781759 766805730 376113391 29340266 498130267 647384717 294996331 405534227 21180263 532673557 793622402 226642777 761151806 791971488 657864145 364122704 110675493 732852912 970518438 846529662 410725093 663533966 646630117 323605126 74788192 960630504 325208277 197610195 73607313 580753458 402103483 294750521 989134684 237940210 300293753 573435685 205666389 184985801 678419333 517365782 819471691 942434701 334142066 647749562 789234930 488397013 956255043 47757033 339222967 930595273 353814359 16830755 200537569 233235564 459450152 692077034 819752843 181298004 157628971 246317293 846692799 139078817 460356977 108887776 959558175 984797874 689721906 12141301 922654856 249679252 124308303 93560963 789213249 397746237 959946935 104852240 990867991 288005650 346349524 47042947 957514534 813678310 614562748 364470340 670710384 11736013 995489041 642368879 123713801 105340368 653386284 659731615 629070062 633752892 110875762 607590784 561685698 616141928 162028223 161822990 585718492 163596263 168245119 576170367 12996852 177802714 891896571 274899245 203360680 918680379 686604257 561029677 635010098 749393522 270105064 175077853 150190010 754269985 486420337 507553072 252256052 996869507 553645675 523329122 180653897 449265435 439720093 475333870 541000178 22575440 486677783 281289211 701514361 800233934 589864794 284833947 325190856 899896844 113042979 654173920 504461852 35402324 857257122 329265261 881868057 622031124 967983838 753665076 534894519 231796045 965495822 17211655 127522132 259364922 772107899 288416148 122188938 577437016 778756728 847121882 483945849 42996451 452314114 789146456 316800561 292403072 638319284 996811422 750494612 354137811 708243126 59954661 45553603 256237118 760327123 816613762 586254240 838483872 532721469 742205085 403199575 565057366 979004202 337897028 428709716 593802996 947873116 443030722 236346443 213333100 534499366 972207522 227919490 953942257 222955459 876402422 596956542 823352465 741347688 721212402 118909024 624887805 378372461 84015942 737538873 667691751 101506400 794505361 285295019 437499271 786739822 138818020 344476482 254500514 62501763 359493430 40396449 323975964 686341876 167975097 439294296 317014885 428638679 764065545 864280189 35034342 615768106 860773542 843091238 687366741 707834411 95446040 361958944 201387222 977240884 570539125 578794319 641008489 698348634 850855356 541702908 120032990 809278457 68516035 558970763 163834250 136660175 928567221 761560163 886464462 250897031 803181180 509392849 200871566 236083041 404752978 706172070 94355038 954297641 38868429 395815907 610106194 478152702 482745854 117485443 816670768 642111189 673048506 824355024 807019695 665043950 423945643 283675744 259036621 375486310 594866261 1899116 979368944 943398775 711467489 368519952 549069490 303747670 336247564 74668157 577708318 406083166 408076157 993908984 748094966 511721842 389224922 772695760 407292758 205740528 175422436 504519675 740979866 219492612 716005136 339213812 151922018 448793581 649564734 922469813 447255098 717423863 507806358 145455574 168275836 248747646 240885252 572958493 413477386 625150757 265099508 812047904 723383606 812597443 120643535 188862928 575454290 976431123 127143536 905147982 987191725 424311430 299665556 324687919 844756775 970523018 378100398 675855745 653329797 757309571 11820415 522923830 519212406 457015878 142090856 510625397 699967111 3251277 300804236 913789660 876371935 329884893 83230430 675328370 114245309 110418212 831072661 532255758 235112984 715468018 722263896 456066739 955285891 862271960 589124911 553914895 862878715 226309571 338268578 685403255 877286957 391455582 433877842 48076146 398343184 841310341 166385533 233901485 934343210 587589899 883904289 601907610 967513595 101562885 29181479 926429975 216128576 144102200 726268486 45865836 553034682 791907476 536856216 95286172 467422572 582382155 860750835 174273083 591438084 986692121 474800304 972241664 890583360 935193155 38057538 765219944 605751854 341005190 984200846 437261522 683803327 843078358 91571242 485067932 392327940 233740311 102487718 762658983 489438865 186533816 167015109 345571927 520906880 639344379 306013598 153718681 515490648 156721007 243445752 233996893 820593157 31275578 96464837 950469791 842442808 420167836 754749783 458582731 431024548 665269854 871172864 794941399 698493167 259799172 970962357 766820755 474259350 773827464 695705949 774896374 460219036 233600949 532973115 601470557 842211293 188142807 904904805 720955470 432488835 890453347 429726421 139640401 756534959 12297154 842336120 906822870 810207424 899058320 578434042 409211457 141608913 778674727 994728308 167001171 220498935 279072460 896956591 87680153 373471851 97090885 378825505 883796152 583394258 656357715 521380208 302297304 465301612 53164229 829430726 965620273 354371328 418248772 132936957 714910355 328088809 881082837 133189843 374125730 48180084 14484969 952660220 189968970 450353125 75069212 85999854 977072240 28522837 69192958 674549371 991070952 429979020 752603235 495198813 785301357 738311604 610545193 122638723 558424629 298988974 286264405 620122756 188387936 678811475 79847003 505415385 788600150 66915044 640164297 715823502 205388424 764417607 136510028 883892233 561345534 652992934 829355719 231782451 37174621 588983984 590913504 542940103 659637815 513524872 140724006 972787137 668837869 522231722 69146310 304214745 979096958 347871630 304094057 660086009 483308209 803875271 945574960 20526762 192039625 691856764 87295433 877867723 820170802 515912967 897696264 557259878 211038885 135187805 409269215 944387771 946077683 450161156 111423348 935925833 352089033 992804853 265907064 523388203 318629832 780827861 350583950 129480309 951145045 387874184 635066632 122476691 170816029 268871726 456818756 32879055 478059648 505952618 224809077 541002161 152009249 352273616 406576813 108029357 162955480 710103160 819856450 851092555 27386352 884087340 925126562 249126710 762979300 988580209 495079812 263137608 552842814 71490129 6501268 107241484 391482115 423578131 634641954 345561376 645323222 146694140 314566342 430655172 333218799 13299177 629044633 216207142 254072137 137395511 461805704 539906463 538011049 1164239 325279328 927382617 157315875 551917192 502731441 367890044 332581009 547597528 45760858 287214357 768358181 890562736 221565303 611577551 368210887 998850041 75182665 72989495 525776190 230773357 587443662 735067407 10161964 371269386 575685540 668974518 631827309 505424783 25364532 591080866 815465691 966461986 685638688 363055275 219909652 448920525 963645554 772344604 516513189 176821502 413277024 178311774 772771718 908729589 492461340 791711082 804508131 655578508 5543278 764233272 420087796 424831337 485337237 201637947 105798420 435118513 408247818 503889661 589896198 185871520 995105606 228450834 978751674 801738625 433939485 317898566 440779472 281756571 159694504 329037174 853442276 64510441 452468162 916326393 813256510 545524163 316693757 254924772 897763771 937286937 803441398 519104398 959050169 507553848 85706573 859612520 33457135 426426428 647087372 199564452 324817621 427593876 665751019 728854949 607154568 829731794 418553127 557378263 252978390 993949525 722263719 242186545 363230403 566079479 123240272 140258553 601721611 932818179 4273007 851698516 574597471 465482479 181105539 645070046 308352772 890242784 803341394 667384805 950278283 380284105 540021602 879587231 339480415 246281730 685234073 670881557 809767076 840005575 442705897 471236661 758951451 386341985 430700717 991399706 940628885 785298820 121618773 395492867 12771860 292950191 589087284 297878872 125503096 170256275 777685784 644573974 463925559 305710542 612794014 802428118 962126296 386854774 509963545 90975657 845231143 632377813 45417228 420464339 279683216 676619467 530038302 213774546 685319684 111071737 557361488 994741754 634495234 552315550 504546947 647104209 215031500 850503137 499042787 367379426 654670828 92206140 876775767 373900759 497906865 64379511 736068943 941727004 447732876 347821014 693392058 815559704 297623053 89245699 327337603 383620971 954782489 821110045 487621660 413329980 108827145 871297868 727884867 874626372 458149094 178013825 283444772 49638503 888170861 249195567 762797938 723122071 146685159 664901118 481192026 853054481 601288305 633219472 67445227 17902004 857698943 166829749 179170489 637621738 6939375 855430193 39978448 197058224 257430134 654503077 646538582 574726331 54238603 741574102 614686264 282299337 411383604 166046333 690315072 285746182 136807765 210802352 436001350 699693168 411032539 734888104 131915524 828619468 531498598 729843661 268944032 112280512 759616392 209137513 926561478 894327452 896646068 397954189 681263053 614539659 899056996 178704312 444800442 914787795 608351715 923268251 656897254 430076764 94069451 912960194 241169537 62599736 213536345 582469992 284215656 538806089 7383023 290271482 225240323 783282616 421378167 92606826 933816267 417822284 281361946 794784433 910280938 133796768 400463075 350638277 25054499 158734169 305951440 243513615 800886061 939176184 358736782 465076196 597008215 641778828 65081359 188422876 663394797 808916255 705764258 87985115 77073235 874258836 657211199 758823024 738157382 661922562 134259672 530605703 808926198 8917293 452374883 73533925 782255545 927637102 990235672 827109055 893289563 505357643 676638795 978598501 415878596 123048295 528686451 651943656 913128977 611459212 725231074 236292091 1671493 937581625 296763427 107792675 442715763 416357526 116380159 620888178 61922601 135968395 506329143 755558194 553497440 305293542 729396135 616521668 586587628 145598689 873085043 145792196 31321441 815365382 844725111 772642200 430181121 368235319 406494771 242224475 905297528 609295497 132968644 106389609 294217900 117333102 101155210 265849307 948780795 409485436 275596890 141357539 958375621 155145053 459294322 575931592 246724591 246335429 532662725 208068436 802647529 300948897 369111965 669852699 833361286 151047580 387582222 743779536 164462114 479900674 9786923 921761154 831634535 930809172 11100751 383307829 785391214 30807249 140619035 207694204 800443127 561505875 998874228 716764317 627368887 568214440 681706001 757751505 348544308 246870099 771238351 86162653 135093188 92544110 46521184 504208086 383581639 886964154 470022137 580188216 580890569 169011267 883429065 113563569 591997528 857515841 65102554 900899769 12693709 71341493 916038523 928344840 5106419 531018870 321508573 926500927 164285888 36152192 819537754 828852849 206254019 450676396 158853132 202743541 571468691 750933560 199079467 659417096 777064106 244847211 989447685 812223509 169115631 442451553 177046028 324839649 149558335 720327600 918356533 63791419 759826109 547943919 178118475 125466638 599152402 623891087 646452323 617315262 267675089 447856837 482581323 422568834 618990830 885686640 901034388 885890257 845202798 13813481 413657648 578500915 892201372 626137699 142212005 702640943 884277822 358306748 229410025 851451915 272702220 396768565 804560066 697329359 545554900 751184496 443138913 507916952 584229301 715310849 904121200 479094939 422409326 65286336 256833365 465424915 383536788 953106778 609730517 790558172 167803374 817861442 247029461 53992724 61189434 314543875 431469599 473088091 251366159 765140235 598496943 658141473 80946941 969605952 231718880 601364937 773220966 448320104 676559741 885727594 599590024 698936529 892398865 176860592 990817034 797506863 198295031 578440529 355903047 178947117 320850158 894742362 687951864 692007565 8364854 947926580 827370989 799731974 791621616 205513438 801941844 845674957 386439814 606192127 216033107 91244872 680169220 704895572 63734480 314619587 598606117 788154290 784460768 742847209 924367111 744976492 28921594 583978110 345275420 520511295 143467094 214334140 258835331 677532269 302228507 693970122 811113919 928884625 989762128 551554876 949352560 680769067 787583406 124275214 618197354 663654786 824021831 817700391 26772036 924586317 664880582 220518009 528606226 288139100 226689569 588222766 524713394 219581283 651576134 8504368 844615959 249610424 990653661 917658967 777644536 836174029 612083202 589578879 279868606 734248222 937645155 777340557 266099471 689256086 170697363 700454548 607820362 721315495 882496019 270800510 212410443 517313603 57176197 758893337 64188477 911966509 682449823 889162405 582047990 467811429 99820622 279409728 529639812 884968259 872004976 313328998 351434193 71257992 57622837 676324210 653093602 508975302 501458344 542273970 296554068 216878056 799651167 550214707 830607466 393587192 115217180 199009625 463545074 807834769 664336296 811855729 398128968 486619993 827339459 479196047 73189834 793090927 947865510 276576349 499239625 510625373 479601456 190191810 363166127 804970991 404831953 558995611 473510303 648573067 795242945 67269056 116186624 525164633 392940519 257392763 597760126 407349045 823824243 672267297 608305119 98858296 218451507 13806756 850255975 192080464 284583539 583152662 681439540 331074168 539727805 202300622 324397753 862638612 942868669 916262142 869684343 551182201 220997289 462208351 61990174 252774653 221043313 988000188 509179081 927333567 737439276 754492544 830713336 910955054 680197885 705994797 2559758 85768390 131209288 615749445 640216292 164054659 275076323 479837654 384228611 117888742 777641208 337788042 314405499 138208846 991513339 813762114 579980369 653885219 871387162 277109440 3983749 804045656 190421919 940453773 859608052 506077158 137406596 428331826 661216202 705347956 307569488 920384460 355616754 655294977 387692245 663526344 182430224 341819590 92811800 528662515 52294100 533699502 250204741 132464639 507724273 485638115 288000150 696566267 753330268 312096500 760534865 525471263 891204083 328947137 172084553 607742981 693191083 852750552 783876565 294837215 312368995 484078153 26802056 653680691 67398791 86848126 417582469 701743788 538080120 450790410 482807624 651350528 393456622 451877067 112431953 756397901 913940305 544377016 382816645 86364181 197661451 984966009 566354246 329423007 834360013 901991951 991243069 258967293 676180150 920960693 206371954 900312249 775644134 790842444 551452799 668417023 166206704 780157354 431763471 681917719 808347941 336627802 906463636 633739832 552934515 97112986 389073334 957534496 392660641 678470000 946203823 488441287 475652178 733719025 634118480 563526663 737194548 293910242 935994434 449855607 209749275 696954365 373855099 420892835 92869238 499636820 934362119 38319870 627153392 193529740 2818329 219897037 431210137 241471558 745298739 404794056 894460131 849216946 77679941 534927250 726323942 668040570 236151807 623631110 363128449 393411159 77379629 964074774 236600079 689739965 372063059 28968185 170718154 481160145 38634541 153761145 578242519 453640722 961254049 221998298 599970509 785235509 766975567 141265625 358611675 365133732 357600742 954914112 730748683 500856403 130808195 564802744 740071861 594422319 501966974 160056602 757926060 538316625 4260861 30698741 549955580 572173219 302089956 942738542 674083438 784560094 49909711 470627828 897668423 435137613 933039169 208092286 435770876 820209360 331310096 393635380 508485606 860743521 770771671 141962774 770160552 140648233 629221867 928812268 790455671 606568181 385016985 423852157 225886554 583680800 118731005 171931620 461242793 87967932 91772091 750269226 607373572 410223097 242400378 164384373 555064375 609930649 270255702 452437993 927224530 457508971 504447093 367896032 656396973 175103646 398574823 81130594 855902806 529238706 984321907 43647430 560927658 160389260 52014036 225410993 200682715 756929083 757877595 234305434 572468957 31116073 8683433 328496988 9498178 906964169 830508994 406811643 381111560 475925353 413431217 946302072 172869094 614703370 926077443 981750002 448991655 848877238 36045095 395381929 15723214 230187440 757607085 994214240 377215096 163963505 472957434 726465885 718170009 22056641 949548842 295802658 747612237 775250334 588162629 687254279 449970340 301206117 960567454 794526712 907420634 72780356 583112060 497718136 849043219 436996860 978148617 311355050 966529601 691981262 758677080 848315537 998330811 664379497 88774180 715584249 292744000 835496994 388368999 920128534 393643685 512520948 73880711 958605706 822386263 825138410 573565450 659531267 663659659 213758031 247474736 392728844 632945253 183224197 664611040 167995996 749628887 508301984 883209353 666788656 550063404 860738412 722953594 132403319 420771515 212398564 516153942 862520513 443313248 954794642 279800793 575662515 645385523 483244188 486840072 808459888 95041290 379451153 775016788 493901131 225927334 177927173 451150057 889208927 945702874 503652468 588472988 612901008 220023657 853807104 162368411 312817510 368151181 69247436 940153505 253599360 232357613 431900244 689187577 251465000 388727416 356125037 931724408 122126348 97246008 131766243 415855417 75552301 10714647 217137271 106749937 278007652 723910356 414035622 718998132 459040495 193091023 850301112 124556384 952304590 552945006 246010785 290333466 270816940 173625778 917749086 330136973 470530145 714648602 355578445 848599979 154673828 906346150 563765060 736911950 375460662 857944983 296156048 952617000 846465424 984021981 548869798 253391177 728903943 901576610 175754080 580745274 927625453 145523121 519172032 368071732 251789332 615743705 932870367 391384059 215399611 80632941 622760140 897927664 556420415 928550831 890138530 453543732 500704050 589135683 305850147 378707592 238756456 370058797 17491125 824530785 960798169 898342756 117991028 575440090 907842124 77443418 555183474 600460949 583407759 373977867 587333869 464428649 751023943 479820476 604965481 104321707 505970375 331456691 217874485 604546599 156438691 895156455 754158166 514319402 214727376 787661894 537050597 87229186 271479109 12399860 527459941 499282090 230083410 311121372 603852597 159337690 17947141 73609281 838662798 338827843 77005861 431914918 32602077 68321341 756755432 765636699 188899567 98618291 219642561 37268719 140232694 246539630 584495560 506422242 47011088 901645028 630179032 553104737 590796474 691988752 549435100 186805827 296086621 651504080 797995240 317256011 147574655 445026302 597280629 641491924 21544638 796606535 833201474 965174901 314065266 840030276 339738212 972405730 152112971 803178842 812135239 959798427 421494095 63323954 284875369 348117329 187053492 72817551 734575567 1396548 932937636 431604853 57835124 61490837 476664814 992725945 327655651 458550917 851310837 121888214 788107627 14370266 127941961 741828685 653898981 278175465 56273004 930810192 125841324 843012484 227631445 253314467 44611120 137933660 134094797 872697221 168098530 823078466 782198978 694899242 686550137 518928754 627526187 281136548 984920331 499235885 616781547 644024475 652287192 213937531 27438620 761554080 966154376 731135769 771988423 219806608 668349885 973843653 796029947 997383215 209276517 495596401 521643759 283983436 952751210 606293274 486304311 124995379 168367408 266742733 786526951 191542032 307305678 952228456 826740399 738794929 289393774 927344909 222115358 268131325 605045823 995197680 586865224 708928961 616489200 634334139 285375584 704996916 465120958 965390919 810959233 215305099 567932096 49767062 282064970 510546196 771112494 192720912 921667855 840560758 966490805 614441713 281666974 917803760 263777882 374222126 62678015 351308842 949071631 445178195 866916339 136470242 841951196 974673545 36896191 373126441 440432585 29787258 945536399 524660494 954407763 683532593 540965830 356487006 142640114 467803229 235130110 331241993 193830013 3175654 47712833 9309235 58537470 414782247 463012853 505746210 240202462 71623195 487689385 959913912 214331332 353268972 419458459 83964952 676586248 109395943 452760643 80967848 498185186 346516876 561118664 821192711 329422322 174193008 351599388 686792056 633531661 712005404 694993240 369537467 915026615 667529418 338493476 710071854 625822326 299241042 687354052 716580194 104613313 810881205 680545400 921192548 531928135 866655890 122475318 517700897 617796501 382993291 524433182 836831460 649367271 956932816 599241564 414793830 999866357 145298562 468402225 93539544 229241463 416081807 378196017 555498404 119965812 637629885 241726027 329677162 458651264 596291634 518033225 740121146 763843930 205805189 809893426 675407467 445922260 930771354 249324728 612138787 642051108 535536159 362783013 726810226 91572222 354612644 651553258 921006712 850077274 201845033 908740797 819092869 892402254 284371829 577433946 460213962 317483570 18013248 933500523 44484939 634476046 841345297 1035730 742501377 807632173 854382865 85857501 936135353 784452724 352206001 143297639 900120203 154692070 623080104 603216423 158523055 370588775 740005159 753753937 348123619 39419849 386551846 407825882 593912878 99856883 992667734 571693671 154969173 934503138 882664327 250887327 648323498 953353145 199401224 302375222 945228243 711558816 327231357 764387442 35849773 641236231 229824022 303085681 452162187 732097345 899248254 594272843 767167422 138310367 159448513 830113345 58343735 555550812 262912979 60299170 712135176 615855347 718751330 349880790 655020192 893579164 92375656 807380511 993213025 443377433 302320434 672646986 147302486 192550177 504033811 62316435 529295890 73651029 399323992 561731082 375478960 490341778 696369026 845580311 289221196 906291112 286139711 122859196 614405413 624590604 949611241 913905546 773149920 308749511 632859347 364282767 366963679 637199244 436531716 241542267 26248107 952289354 897027889 236803760 428927449 516375126 536444709 621578783 195038952 288877515 109355056 333883768 298890669 794535854 797423890 451423106 832782290 762862200 960575618 284979248 358124587 71750194 753964255 445676690 834840003 690977845 386382099 297702344 830254851 717794155 133988124 12904113 594500717 923712730 891463021 561716075 392016716 538269971 369396829 107912097 385072963 91468513 980085489 495131785 344051002 352451980 113715461 11199129 302411901 76645304 911371449 104268008 12202512 828728602 276225652 576884554 310693564 643692962 582449962 855435835 573397474 38694218 40918561 629348177 437892881 31880796 865109391 376176765 619718854 678937479 204680703 560781942 909456800 221896487 438155717 965730873 809773091 276074493 524348448 509933209 500969665 18255304 659633280 659481059 20565117 315292039 899275258 118838281 30345693 196669726 455051980 244038212 348552391 330236623 186395655 959251491 560326335 718578717 200948782 454807319 279873284 197673785 246858267 783002628 544667564 877520358 924779482 964480048 466349460 90215276 298268651 87970132 140552182 165145713 995386721 473219972 416080040 13719916 818012473 791049402 687713697 290279206 813614974 476355579 793831711 960749727 978045462 663449967 489021074 403205403 605021046 859796515 8834356 730345139 302664978 515540969 198376141 334049650 865325070 777214283 462842642 160833635 842568937 800030647 330806183 537937278 262703289 781332580 468564094 750304089 678932612 365733116 672402247 217229840 652035213 331337441 525857916 521256402 759314706 656302629 258790853 839152326 279826032 388086534 22709475 977478158 770462888 720915110 392663709 70616943 89617679 303173301 852514034 563653337 525205800 115933457 256019569 817252959 554207020 775068470 683946073 879653974 322888179 325564866 747392859 351819206 320989279 703768198 306555657 80353594 909466757 129446287 667828688 814598911 574950897 895093566 633668085 790560318 186220058 11284178 631815657 979984986 607970692 565265585 397049501 758838350 160774451 669308288 532898289 817468706 90351623 129925703 612092920 42341319 685437489 521317960 820977784 581645241 257911089 81236191 960971373 553658442 498228245 796233836 102760422 722174934 56788376 484059215 831712803 45073075 533172179 457084056 484867672 944054838 216801287 499444638 397322562 499334290 259518631 843913954 642496855 832811593 490386591 648056113 872333560 837885569 996277253 519527942 979472923 168950391 530179319 571456511 49278916 525422017 114220799 731134662 956201258 717626057 3374166 667382361 486066087 673472162 781146702 475779862 591963479 19918186 880792552 307015062 875721380 499515611 571322352 378024322 358088551 329626441 919011502 859808323 822949565 743492136 388658480 665670310 446316403 963130755 85140295 639833866 305464137 414742735 429052359 721897560 744978064 226479540 784539751 546485610 274336287 300751896 831489591 484389114 83933766 982116255 285022460 786815518 970629142 214441312 859329410 419616826 171188169 666920695 694197652 497355679 304397462 216360361 543063381 852373727 308421870 51333906 290331223 708144832 529552099 312034644 170150751 647016844 957536653 137889745 804795574 475514729 313495490 81221391 619543435 928268517 109291565 980272208 306894951 181297615 267748617 120060534 782718055 745824591 402511338 932238667 35907678 776651044 819126626 307227414 584467085 940766846 739516767 297997148 644775089 989910596 754491979 170979909 288154323 126266377 815781 825350721 225064850 677743365 670609895 309914300 547811523 826971745 677440728 654657983 740720847 566554572 386978856 377259285 582634235 267667753 942810044 605437937 769431335 707246886 21833920 306932890 929462266 943269627 361381278 324785241 265015641 378980565 513526292 263429640 18265709 798098790 444475609 98179015 633415450 637769101 426669258 109329801 10089256 60801798 217337209 550899359 847619701 712779650 39129401 190870773 919194255 908009518 994008260 539137739 88004538 685985540 12016364 14588028 329433005 641526499 324661433 230900322 43256875 44441019 198140735 990312981 413358761 106528973 435449641 35913123 403981291 58389074 337600802 394586239 113555 150663112 372374000 589778299 897178637 493579415 988012096 503394946 27631387 323208684 757011469 811832406 998011 305743857 981127478 229046699 409969196 682278487 948535287 76831882 831296339 289624702 129427293 674516864 443750298 751556424 268304032 951312359 596472368 653875472 585506553 687342814 379673577 559334530 583949862 899137627 453077925 51883539 485792924 624727167 815359527 348776045 626481259 513746410 961233015 273505652 1844730 884824067 39908211 924312116 830332334 411826519 718851181 39223516 679648574 160404164 638532869 985666481 223807698 491828569 615567790 54704458 849800902 29672274 82165055 632783790 203515318 392569862 245981605 458407153 151005132 516307234 379587400 885280054 682359128 874173208 147898903 470771386 821879049 448521141 745665503 725936749 66036942 851983060 598785191 389022918 462498521 145652611 402482908 988774 705992130 760647141 84866668 735321219 98325830 57001792 927284126 262770004 815150282 429628513 907309481 611072103 420106092 400469699 518195942 196277616 263907565 873537114 100511199 45686323 511592750 180563332 933253832 501917584 337717309 652218134 48663605 261956571 790890992 616418773 660631502 721225462 78794940 848140897 705819435 399787747 10862401 806710402 49420989 488408843 913139638 561529176 776867037 77355089 718289875 393287018 540120663 706533182 932969058 22642536 502959014 957562237 721818894 614392191 157484599 166052121 282129955 491946820 791722007 65813811 914424258 717145653 326796361 71544893 852901980 548483303 155034211 512376610 673193581 171559756 773027580 265548273 855160853 787792481 518265511 101845046 206171092 6221758 882822782 613036313 379519334 155801945 125490264 641013314 472420331 640575293 378372241 295530749 406513565 321137418 431338380 111531456 756509843 781014608 965485880 138114629 248404852 222428748 253704383 904083608 186749127 655007071 109327067 524977556 850833835 993000129 884750576 123644018 855125108 707988413 236992058 532913057 927671569 44240097 669903409 73364261 567594452 479383877 480062563 138275856 906354255 82796716 381847344 277208259 301580697 519963652 642488745 303312537 607483761 429383744 239443779 400147704 108161682 160855681 119633471 399707179 696870667 609504786 861425327 361120370 851703928 720607420 576954017 608591464 511559804 617845658 754670771 345921638 742985994 96260627 360604444 523974036 774687984 611649400 126779954 264163637 704691640 774674899 927466464 983865698 873859387 206071641 498612958 333393366 219825103 660736693 813688047 831224989 226407316 342352205 811038198 823623333 717737690 235746437 569415994 893063461 41059456 10523010 757407932 576056444 705984048 486557700 273989807 899142838 203427748 541968582 671428615 995110860 889220185 145203430 182436096 77991650 904484741 953355960 503980041 351388318 114485471 369318437 965912168 959590431 171400072 475625606 310349477 828663060 581968466 652932938 690116985 727309183 505882809 764115185 872483898 826842618 768936197 748917844 299349400 341210433 428438821 572321018 603488313 327017636 877063979 850314299 293413365 714531951 419202154 867903110 270132879 807960712 117641525 985365336 889390300 775584513 139478037 102845821 576727280 957130863 807438125 522432072 915917582 37315482 651581453 250247720 403177327 971526712 470373653 966420804 913185818 443484580 625085242 581952984 114936318 473840086 447417368 832700895 382801221 569423257 92092653 410538953 76026014 884980300 144622967 731225514 320381464 20919285 642231025 439031020 435945924 748126598 104517325 47803787 605395540 934712787 51891998 101259858 760413785 410932109 547866856 670673902 800121268 671626656 199800933 220034101 747878298 770188987 597303878 736861105 295464875 677711501 89503757 161284337 579004245 801067312 801872659 131842730 470743187 657204673 105777245 194401688 743077566 134503181 987925289 813418910 962502568 279832572 778751177 228235509 912640169 206013974 385085304 62452633 678842364 127005322 233635676 206204333 627965734 142430969 639990786 824986163 493857173 445516236 659384835 379507203 179365375 513689886 25426280 12005030 719837357 834065245 541802528 949248630 359248693 416860306 538862209 26988357 577723152 898411585 8924620 553319620 240103000 696965156 234438136 931416162 169139716 187174538 253871622 354837236 327678800 114428378 81385595 107823657 726997305 641032033 614406038 698638494 553230464 307631603 189531885 428567543 226710701 986221260 101413052 713607938 149807614 195793875 477527070 877455601 881547513 884911969 791668052 343817477 467549960 751802588 35957600 97134269 401315738 256968753 797824958 34678232 884167937 331688129 402150850 722285719 42262724 720144207 673756768 358574604 971380974 174664404 475763741 602808207 627205670 284722322 215337778 296685472 584883928 770876834 160131548 503679617 275335977 671529303 355626355 84973392 421135341 931316712 893915895 347916918 123505191 400716898 945759304 672499099 497486688 132553228 383369399 553367629 359632057 34763297 943379021 895034158 819332834 653920709 659884624 578269779 710109479 112148682 355394465 246852114 88115183 646310454 127234378 286298423 536883998 442971499 100303846 802248976 72149155 857870271 215751680 783427561 659581418 906575841 854600546 763435653 15085679 368004882 365507254 526841036 579602099 549987030 241204467 189777271 638228262 492856875 19116308 809497712 434630343 446290408 251702015 239379917 557992483 32924051 937675889 922152427 132739727 637350629 309937085 986401352 985317056 115305416 510354065 421738740 783549850 89342017 186692644 417951485 148960957 477243081 49966780 676388853 851257815 216809566 346713992 600365129 847869368 936428328 467669384 696385770 680315646 251287047 22322864 969118527 839812404 542219223 741576974 223146163 983190337 430858459 155892172 713643659 203218893 209919315 944941381 378939452 533494593 763260206 330534203 568360843 51744944 388730212 907173117 499280580 310943896 37279638 896916220 579796235 973853890 950864856 385518267 871818061 358505810 997961219 769196422 754346639 806835310 448924860 652660277 409479431 522670902 364954718 409937165 26746350 844135226 684461369 460821373 97567372 399915150 790607293 543746330 224612738 623639609 766447679 882835860 754311412 636610455 105358611 440505379 337587206 585521953 468478892 761016418 725171514 902830645 271583458 904847193 62709036 279498678 465472611 919396977 182360281 169339878 609509883 974766353 786228238 506377851 828025574 416846629 491166975 754819196 152205401 988132057 28263665 927433624 133350577 247585413 674419477 910538457 398514859 574376790 19436662 480621996 843450372 792288866 394229299 766829961 421734149 827833570 212477683 714009429 928760211 55362796 839376952 72982491 283841380 148139412 95604768 571918689 581861324 956327793 741190420 920866657 978348834 403932157 723747353 867653034 113020170 521580401 14043878 715983962 129468958 446631942 987228081 191957618 62438645 396922082 806570021 495646698 629031307 712142946 76558563 317431799 587480624 890167528 567394196 45859149 811257886 420496365 991029639 924150622 592156550 415530586 728902787 399352673 418935361 167313811 79204305 34751386 629566908 453779925 717041308 355076457 161838584 753350436 640768563 505456893 712755885 861986961 611440906 749418939 31608689 61654499 652880928 130044419 245842443 478679117 864464090 801921758 332813780 938458671 674824663 638090297 122012307 755540067 927174731 649996589 534129820 952824730 375057251 162935576 402361438 134526833 595910974 797170583 387295075 796784681 933732709 315406487 701345574 74564687 852684193 485192748 801839636 554829094 499220767 168012875 184002609 607021837 179920864 936925451 974793196 448465782 962204436 303668896 619691876 601062699 23105212 720658255 260544857 381200496 866978484 928782660 792150250 479651223 917814797 79139811 295352144 985730059 365170309 245305048 985799560 765201916 527731212 708543261 353132726 959202213 101837063 311006038 538868991 304397050 857478362 639055619 800775222 845306713 639320276 255110099 606074769 831418514 40546659 851440531 280604198 302946203 450396870 902920057 373364924 382831112 907940228 459441255 324205533 340728551 68766645 465183988 554147358 857536501 390182065 680435441 701444964 110927566 243637605 713174806 418271961 316462583 525636530 210483296 442352243 902632209 53156780 703645964 204863821 700846153 30321260 336105524 176009061 388822094 410728049 839813073 804427566 978422983 468758968 964261228 148864311 18475067 326202938 605688442 537442488 448912413 145825949 496794191 623563630 623344726 356567397 464676932 196310498 343493475 215221563 350290029 211702005 636011023 428344221 175221969 308135398 939933242 571354265 582108562 663468477 368219957 935128405 755222714 372838526 913882960 499885177 251906614 935577773 578558959 771279490 35951853 48036510 996121355 847486953 146445658 426267674 867211711 550377810 471647590 227314738 847470593 259714578 681316018 328296936 150682227 692324698 378768566 940560545 981888129 248070574 95190675 650974486 695596091 61722711 828660996 296522004 149485080 956861926 506284171 948042390 973425962 62386830 492148213 215140446 24525299 456030690 846924347 271890258 315364381 69264029 960464518 243596668 608922653 650475758 476047808 807219341 867490301 232899999 4404226 680511689 992122202 630392204 224287220 12833498 259465810 952921626 790154806 501278061 95444167 113120587 533717965 543950117 41797536 741986764 505037150 284577221 587093559 157163658 30532409 757076923 561297154 329503170 196953825 738323988 787477539 353858225 407388567 905122482 669411237 742095431 954988310 42266941 763194944 655152263 497004933 292032029 686642233 994145838 152794468 254130412 308618473 111006389 53425755 662934775 116539995 889063470 139582291 675746249 264106533 313573821 885108395 860965884 188500646 178306614 177931665 573124514 109155254 209154482 814341482 722234807 920099462 85405737 571249035 723152949 787575405 71332693 927643991 512454818 607924322 266409603 360188777 314140252 349752792 385046696 845066854 505608465 869865601 806505287 493502912 392983774 6018798 744582060 385631056 897012287 488252915 824253508 405449256 510458158 698654116 758740088 89952737 556015899 262075956 439772803 16236251 426167520 3218141 429185968 401544845 17271994 553241654 905155424 205016094 53567913 201354062 715637939 351883706 653045586 680103508 182632007 82333821 102386298 491564226 107751146 123404431 364270927 627359694 274977881 314068457 307640611 214743386 507346220 612071387 789903232 171451686 312228342 505900976 642457348 435751174 752228754 920319038 880655189 559705810 254296850 776036189 685534061 754560268 307620232 206584872 124496332 415235036 670270844 312346422 157411293 432114801 882887732 22614501 3431338 733568787 473952027 761311812 441594365 225547476 973941411 770128477 880881188 223497200 315405547 207128766 27135768 291549357 635580978 110677684 230552958 934785419 498623671 238818933 847711836 988360924 539250227 575501821 758969709 818175613 711654243 583670716 784299081 189012065 410813474 899111920 625673786 78700400 780747301 198237484 177801686 955117301 543497474 733668965 715589285 313660131 503918850 305132585 575114601 97681512 963028582 357726255 685854802 155481832 647294635 769279278 653430371 844835557 878581262 792724750 186360247 692712696 444356036 238924056 958355497 437623234 594699795 858886377 854211838 758831515 492746784 622601006 84306809 897346715 80249121 13746467 195456700 318409530 340145680 864592673 397470028 192152986 778887318 71477399 572972999 584025921 129002383 844473341 459085070 307089495 617947321 692558080 396303470 825795899 283313034 634365863 327300872 166364016 134545884 765367238 358713675 41411391 488931696 274127844 275497363 134380516 543632735 515088389 204852820 780939631 547475935 568909523 975104587 169732919 119340961 487564523 803209905 422791509 520693019 121651484 606950433 696359716 451471586 667007167 460405745 400649411 816246891 565245998 172891908 349795523 849874064 264600343 478780090 682158757 754675048 321806573 383908607 160778816 481016449 246748682 7548286 639842030 982827253 961817350 455563981 154124632 600999027 848310536 694897118 18654628 379155953 337598281 994280280 374089108 711971909 754807618 396110769 485365078 731646071 902443089 722277369 552709152 317558865 364080476 224511313 798052634 562966483 793909048 430800706 684912203 449532530 877967032 120232835 97203978 63309576 756015758 446967634 377196653 599223927 663694514 79498438 380323773 215681572 431184196 25112766 604723275 297837944 392458180 622488632 162973871 363349498 649667301 110066955 67131159 532231707 141330776 871505781 642510849 644302968 197318769 869567199 720248673 848428956 54051652 962201322 919973 950354384 829736250 327983045 880592176 866344423 223101764 114676387 919218312 966592196 936784594 246948914 906457736 335283790 482321547 880925492 196901442 600022030 207768794 20959267 723591420 998151232 640236684 358395395 388986145 745272583 115762202 382818210 566715064 533437897 979792484 38826252 935737253 606826162 926732371 188756955 956191508 137409675 33999164 348971553 854005944 992230230 634951113 329848455 296936152 663365117 182075274 876042328 49621804 145292769 553275869 800692484 201940481 766678699 808660503 229117068 691020800 295695031 811374898 740625723 67558297 221085113 15011130 85085775 655525300 712494508 434429974 842560256 516667466 842080979 841204885 80552889 97160692 406673917 234593334 328151931 459970534 195062229 334705208 204057075 763496358 594930959 79756077 683317768 331861976 762939570 731901868 657926595 992164216 625704393 961010385 499797690 585032978 806392071 323939639 340750664 409496190 434635709 593507126 288557140 488849277 559154446 72622870 100658965 853122057 612693738 234144013 271287342 831153629 313001203 460518875 776495941 600340314 973330017 967614961 159686948 800338038 648097598 311896874 455597361 578515136 862497618 490638504 839458361 504662184 272774079 473694634 719845451 171790989 23990416 51038139 718376079 243626112 592713671 341668719 374016684 468118935 999054904 286103434 398234956 641975092 389898300 931861181 422505435 282204282 763323597 966244371 627082812 710660595 317839253 566702654 28831674 931851287 663488175 910755469 978723715 298839465 592635243 910717191 328939428 613613277 412799213 164911412 286902456 728637005 907602003 316624861 220359663 693177743 656272907 628194442 43870015 994897993 855208738 599599612 891474074 487022600 400019109 509927330 868268230 733538815 335612770 769330994 221986921 162792490 185315460 581707037 544286591 394883296 199018499 188953188 962457056 149632713 999904910 67037828 410142252 590358296 265580461 656857871 797857271 333165423 971828351 856394651 231463682 839740171 229469109 107123067 20471365 759044892 526094687 72423626 16200729 169853203 224634332 627656291 86949538 623205796 353370347 944258347 358977794 66082243 734152953 351913701 335575680 444221368 42534921 659598090 790474107 66005445 9437127 801965808 193271917 255115991 676536231 404294743 989539051 433833970 503485360 355323604 771107854 388322677 822673594 258520168 319771664 100917731 624443709 404260873 391252940 45677266 210855007 572673166 169025181 237117112 910811770 981291335 102125556 532901903 146653337 536683389 593524724 387439085 604011943 261407045 208197272 285975624 403106414 891114682 681008452 651053012 530518663 784497448 826557718 622466992 518406920 612253324 577811693 958275197 558927498 158011116 163526137 461234150 19891710 622681749 138678004 556208811 69703756 789541871 386833876 894292354 152204512 958560576 631437790 166200370 791152546 310288932 224642322 125430479 366147952 818013392 563935064 548602252 182798382 238467451 890715786 344758310 537212337 425832134 673186196 129773543 341723725 306008954 237762142 588457841 646572902 499101735 113175020 58155937 684356819 819510376 596938089 970364841 302805704 424641705 215889946 212495458 80160553 767222090 642000327 33656964 545571616 185384252 193547485 601625533 814186499 216840549 339882352 533337640 302550179 437301329 452344055 820303883 610462286 927456998 401882915 861673810 42385266 262375389 589723006 140351300 836534685 936176017 881692487 976682990 748543509 294916847 791889292 284040051 596742503 780150269 507280061 325010270 219083395 202562448 554517952 247938468 582345739 404551036 370611641 810383801 739595945 665738330 422378375 203956827 584697637 108621374 890331482 244402079 947646963 518248277 517002136 363991493 355329579 183618708 548269116 86317545 831668484 4915855 556976546 281854658 220202194 401203555 791755109 201001778 758950795 180900920 394572786 65255140 181997344 955448759 381146932 317966592 205587009 715756650 654168140 116615656 591252688 390718948 360354429 743957641 328794385 84369035 40443201 135968850 597556278 886004971 214207783 44977830 825530305 354789756 209269321 369119961 480116582 296313799 213849616 890453682 757294603 251653087 617396572 605727487 959296927 316104878 572446171 639412878 398491156 68310516 115625996 231750636 474394592 345189074 30763127 866399062 203678678 93386936 359270298 347190514 759838412 482055328 571656157 601305599 570491436 944183349 418313122 969716167 12969850 518326473 324203283 70818058 709015254 728773478 663197348 103808042 345377338 619459586 369769932 968098755 124330016 817460727 484609102 508633899 309399591 87504977 850586179 803052795 560755614 924096027 615900285 689287302 262628119 462241460 654846591 161473684 235584648 389057978 999064752 943653103 276214103 236001965 707172909 397827866 428418485 692760632 361785760 755739693 657002157 952139382 653409094 397580229 358081527 494191589 589930058 271092053 96211107 567939046 488051563 447985711 49801379 283164568 112915787 955187928 935633976 602653324 354377364 432675097 62506750 946276189 94114110 188968354 916468828 939899621 14309983 791443244 44718688 662447529 270197004 150163906 131644530 481562503 374639265 440137294 845360503 975614867 42539049 668443092 228885211 641544608 628366842 335186619 816898217 40998580 436092471 709076355 367778050 286826263 27497618 325909354 674244086 618338111 904492955 409467096 56785717 488446423 636712496 735800712 401531316 333448684 854529799 25148124 116413005 78938694 989737675 947012834 523480998 133467194 186224962 173937345 637380944 705711727 830209502 102258983 753708027 232842236 855797465 495200004 475029836 56444905 869606268 195767176 749465105 805367431 185966001 337490308 785314613 871351282 996116308 519917683 79347087 358460639 738012016 91093245 472411596 873894039 764498819 566895914 842334865 795273003 117731391 141262441 672649146 766979534 570276612 718139080 352297825 854534746 645760883 755489674 17654884 489832700 153580712 844207897 572870519 854109507 643277173 766839136 100188474 569056551 432814648 348282017 143620646 223460214 618619267 352039292 17041927 705364379 350219467 138857508 699622474 614653658 730947328 622812072 285441378 696489780 12651206 226929969 67805701 210600678 859695252 267896806 517943769 397136479 100642289 882350386 73372964 985245623 943185702 516629411 419823814 922500898 947696044 884699235 784848071 11815874 566971517 761536494 535874108 98392891 910818674 760941911 358880863 337892635 465875715 188784973 150200634 930135156 127796860 233430693 961802276 672539274 785908483 729582038 865134734 674184586 962070969 621262128 589524190 455278314 464768022 130358174 333462567 164232064 850084276 166108435 701570129 913865273 838439104 953826633 804992441 391318309 84052366 511669447 148974965 591623063 648440558 301888431 972968089 683075240 977410766 394769422 565518279 837463065 649629838 805078916 541841513 589335781 340571687 547128735 659544005 934988011 650433616 437634154 365410529 89288157 739140854 661260301 482283101 211767373 875028581 70290700 560588765 326415386 146851032 432901336 491610987 26884496 741067566 24937875 135561770 167326135 557416387 772571089 450542758 968224783 480197697 758128967 535161001 310172865 487555816 961502943 972913228 120141717 957863847 27819602 787305658 143937402 782705973 518452637 598516230 231023301 927883618 830429170 806165986 709303981 101535230 943282067 609868663 178855028 537680364 555233818 429041570 108533067 66396813 252774591 491094768 507024348 255580620 667585581 814857906 979861148 287308038 787768604 253881176 722460919 383551470 857161660 838249196 678939024 731280872 415575956 982564328 335732753 793934503 997086469 646763563 192970149 355038305 353409727 357730503 172165104 616209026 853001237 621148393 665443199 158180340 946992762 589204994 490354405 294177538 670330392 793917949 836173769 108778115 559362019 463471660 347396826 274445457 465587584 645519994 903450031 262354677 136520431 439353615 848991910 678344044 494230136 228385615 372509883 707825162 369245730 795216776 348657150 228603123 97653049 180414148 503025934 708172691 195639951 966870011 97285293 470396074 521639498 207052764 147051050 340843187 659236679 374835622 8528557 711048644 955922153 42664545 587581086 193911943 299874253 541288148 357991502 421198940 257523536 970419569 32124616 317139016 761598787 21180397 264050346 202713246 564325570 549669878 323974307 270397360 46957452 908644503 518251870 275857328 573284246 239582342 791477894 744389483 673830923 977595342 571321361 346544839 769031891 321261449 611378477 2837997 512355537 105519506 694629170 484996857 97283530 446989579 265953073 773835029 962191836 321625431 172562101 874180436 534916977 316487381 415168508 57079102 663169083 865479230 359960086 580815953 287606142 167450351 854367777 732663131 206161495 882056130 749385134 270174439 904596320 842160196 516247149 661712894 854725868 222497383 365437998 922859739 338852093 468819090 316242165 947898253 139303382 941473302 582792335 452017554 252231596 500952124 845262309 449170396 529761703 799098121 546041336 568379487 937586937 44175231 352961123 474606445 348316244 588520803 19772607 185773402 416707033 755020791 977758401 279604329 776297587 827300027 368067441 920315880 571797726 613796930 889036594 659946138 106496002 417025935 18022045 710569625 361622505 89728049 37817535 798819131 372649669 92169825 715450667 713926575 584225020 303300687 186045214 895766241 792823620 445021415 124946633 483860976 990543522 68482889 346845981 910503902 387322596 366812982 308987282 549523043 88648336 921954348 782431167 2679104 718605505 503405586 966614412 992857244 947098713 663732780 224965296 819157211 767790868 648114956 225491186 211806775 406312586 150065725 656617471 24913079 93168532 427534173 770476968 1996419 624667230 407570715 244882614 302138335 274402862 25212048 499889067 342474704 419302566 963619438 86887091 391512227 122241863 269146556 945554889 490781416 189826453 514887349 277347196 223076707 477418489 477408207 877507983 419736271 834586600 16785502 941307519 987312649 933517016 589918337 278842321 674304477 6480585 49671849 545823677 307862108 700372290 214504969 17736015 379828387 38338347 107179377 47610236 942106414 660344938 181248879 606426462 712950651 380414572 529505896 345739996 221837870 484300336 264524896 614861195 363049419 716462757 188903123 834343511 780475505 643332460 857326417 114604917 169366487 247356292 566048752 149924325 809635084 718767281 616304912 916785209 363840371 954601963 345046637 86894652 406209407 649837946 993615281 113551350 401852594 354289429 674282764 36130106 253254306 303199332 912007306 85229670 809031400 74382112 839594026 311969308 958188113 387873539 58603090 554940000 352642680 500052272 843409237 223301873 671396851 269282121 878945648 188778352 31968231 119393577 323237518 591398896 790382694 135426138 154692599 45141012 555770154 346808783 967708957 106946813 159105221 804572955 587763444 723469141 96071994 703941278 181047043 567681360 599580144 124766026 749896481 29249593 874678611 773087264 562335206 277236597 85283734 573935686 511599216 626032613 936202076 531782138 994742006 767716167 202800757 816793869 13095972 329058959 578171155 511356301 82476419 91907726 134553245 290361626 467829888 792348841 972442323 796967455 512962627 53576037 297738333 98720965 4788001 280121826 810155484 435575020 96465317 991483251 177389056 34518239 897752081 342124457 113955758 390094036 697343338 301467491 28479299 453539047 996733163 542480113 651763832 200539920 934451875 874620318 679348235 51905730 149376385 826683074 28743709 156382498 538758764 948423572 857275606 129623210 440950939 209919387 613012267 446733891 215989632 115753850 260822352 490544457 974554533 805746117 371869925 985148680 407850469 506653139 795742182 354211867 33460667 199933252 526402041 700540787 480495455 257846516 606309869 519997209 257226485 163351293 488985139 504689878 371857901 976070054 870295325 778864586 401174060 787197747 170161568 567451301 103823185 725488606 672720371 481688093 958445635 627308443 54012293 595213734 850110683 960221878 404728130 723252697 366723531 109426493 392376246 107158341 275584695 893551547 782932793 71418496 938909526 618409391 228185621 339664388 131884988 239863979 881400996 518835679 496088998 665645638 160029540 865011414 263783471 106093282 438996633 7641394 410938978 759396436 978989141 587542364 159405299 454164794 661751287 311469525 343501253 992261600 710842492 754893925 753823515 215787303 651345049 707496054 310445074 496514425 389644461 139384090 927104752 469147837 832727781 644854445 681607238 576579057 61273517 43791447 679643562 338366112 390987645 457964198 367948039 166475462 718757378 593287285 368068080 957219588 265933495 659202275 334731782 964915547 412000339 660375324 794143645 100575108 269899981 609748581 142007146 179828451 449654019 338394897 921102762 168489402 841341368 364649961 627024042 948664339 638581994 906005975 919434010 771038920 832306229 656457860 878293141 936447165 494366240 207233535 184203532 576454114 924124962 789431637 559092157 608909008 973135799 266736569 296416165 552435189 273306505 331338473 132671581 890167530 414209063 73776913 580438770 625499588 581514132 801980108 717122799 206291986 340614239 356399952 660376859 351195859 428875980 639872910 907545549 975979221 329162853 974124399 194495062 847416252 674161189 997759714 67566345 527825900 594005648 327742953 697166813 220755917 94119144 356540995 199225184 379095960 248341521 397993999 373698828 178004661 276527976 878463778 206677974 686337638 439414805 101472488 30877359 587300716 840718181 784447763 475621255 394720743 344107712 178818890 122978837 660686294 888530738 306778727 758530733 829394004 965125657 105968381 810379714 294726271 300185424 164829426 836438425 893209717 153176422 60207519 39564439 198295213 176555540 441263044 705504570 53135901 561171794 50381825 700815879 562516515 760527813 384401458 948395195 947643759 380641380 117119908 59732996 126798039 25685015 439019162 48757589 230889411 30232541 930190894 78330259 854624210 815198307 648762858 780758417 623268919 711115035 648438808 38341521 50476317 929563910 137305625 213901295 246860472 382982824 640036322 197415512 491860046 429184501 340688822 792947079 702831456 662546525 634719242 705378836 723951614 588881367 483997368 380394854 632641895 957708898 700944208 745271630 361140752 833750465 518038898 646697554 27814464 56671655 13808990 62083692 553182846 487568773 267359716 998851680 347640218 654391167 822931515 785400877 256647587 132261349 975019770 380783454 905664646 127204023 57681906 702658713 466252472 967569958 387413112 120111143 990559211 839354755 554462779 189096976 665058228 476990121 125545518 937645353 733211017 909882441 434324458 226859802 955657677 13281598 205481925 25019345 276487874 378175429 896932859 692842546 782583476 760782363 807877325 514663430 812203045 175179714 796975714 887198899 254803894 933003100 78942992 433233966 547700190 557301141 516884788 480093168 725541107 3922851 191084041 763668456 509070965 263181422 78887094 250044143 624805112 695468578 128670896 201125092 295186296 499398613 242150170 141146305 988026816 111661975 167488587 112297942 703006034 738848344 631040583 560393887 710985417 640289024 996890070 101460607 314269087 155504814 905053002 475347072 642257958 246126411 476179768 780196213 433705548 203224772 876990854 704318106 245417082 876096983 421216203 367422525 16990038 545818084 260491493 819664548 499100901 749227738 219249951 866229595 952959769 729653296 164713520 787026409 98300933 288996332 189793672 987359356 467676274 940678408 81734631 44343879 525763060 343873934 437112097 995109477 136961579 879449203 291017193 3642130 211561449 58077096 141877397 881168996 78418782 929288378 449959572 344945554 780721499 198064456 469243622 98259146 562739297 647046104 889428533 23158505 920627744 232113419 991635162 257126663 688619237 126044309 278385188 107959935 239127242 360453968 112874352 10504692 984782086 500433201 693345353 965412200 988793985 723830056 468917378 834548890 631619730 734982864 704655678 261104406 447546360 1726520 64740195 398458116 717540064 588979442 646343056 365722244 296285491 678265757 878263206 785362899 898714169 270436019 124190284 381054043 98657200 662861859 978463189 6839896 701810141 742901752 237178067 502655532 785089066 775602936 742879120 403104995 482377293 168911466 191247852 194043674 982100924 62040102 657636612 143165604 411146383 881587604 151478568 547933702 844625049 176220278 331784806 626609103 541892232 757248461 830292776 376915049 497519177 943710321 139289732 585236095 383759140 559876153 234752242 316306299 844933456 378351815 371832944 596816051 882199681 862829062 483780312 395909840 471368042 195245475 160420010 360854366 356228988 914326185 394605988 688637446 952368903 83839362 64085565 998337012 260701877 406148213 516671268 641032251 568594707 555003107 440488196 40543883 905155880 716017782 603918402 127333970 706804021 106612369 176440578 757231643 701380436 685745361 356091244 827932535 738857087 263616133 577640609 362753150 396296283 336880150 965075852 614567179 743544319 159388595 737019912 776994067 528217086 897114883 379223662 447675764 25144186 384946013 513295556 592229317 893090789 607022636 633147100 769609289 28099232 274667577 914368346 144863782 527488024 669857689 149021774 117653693 199168939 35528747 900139540 178422280 538481785 30227333 873274071 986590599 243636810 333334134 413514505 803424255 70493014 375972795 331184496 99363712 559862755 29857786 491340138 375408026 895383734 284916923 351794205 128718439 377314871 958093879 96837435 321030805 356559529 289702131 88684336 901896686 483012032 517343813 664711700 289378231 504049357 180907637 117254040 423808305 904531928 712091484 852028050 928313822 489126503 597026607 429663535 54825130 91360776 239738819 348973197 177664946 102244007 547188914 608660296 394650821 84976963 99355731 843468467 840143980 762837192 741507834 869671893 10512642 549891226 375072631 736401663 564976200 284383792 653356647 426151555 363113080 97597049 750657461 486831626 79335771 449788133 307549724 440328843 817768567 432889858 406186338 275297989 876095737 181471289 339509336 250200124 144472420 37028713 119568258 435704075 632917202 358950704 48519284 138900883 1813076 924600910 67748307 548480088 197515672 982882923 43431539 757593449 862666475 583822953 48307036 106514628 8686279 543201991 282357870 991675222 717447377 544349968 486422256 709300071 553845054 431842003 949799632 812669057 460740518 385966613 385609415 129090697 344381103 743995112 694099577 932631096 470813565 224174232 422916762 743140302 749772602 3016353 200202042 137724605 627984923 951396998 37952531 225409623 23176967 793441414 248524065 339728616 981503258 648769668 203214286 714168134 122359107 228816890 19533934 50351362 190000246 548251205 349276160 55843583 411477032 409880730 872920870 580734425 594086163 834050546 578674214 534849687 963376355 60570519 530248723 559838069 807986165 384258160 683335114 637286819 765705564 873061757 158688883 871643737 896164101 156140144 426452745 845056107 892352525 20579917 787543046 831244110 492750696 391958980 305531353 163631114 178698161 420513292 887376582 559568214 183205488 559362308 49220004 592419656 684566856 34576098 924240545 59671359 570129920 196993796 9257181 832513921 426194501 997317830 707555438 42446131 108153390 907170666 710533191 977654397 954927652 793209547 92253595 503229647 67237745 397251228 465148620 677825535 484876930 980074011 911810031 658408866 344748065 361837252 127563797 74275298 734205721 337503725 959269810 590035100 181581589 992938379 48086747 92297357 215348652 84138630 958991044 466885256 309575503 438575390 87737798 511043076 412580198 510453069 632307022 3392573 814678746 542385388 311524120 535531477 3464021 719000521 673537643 112997752 529766628 585469740 139371061 263680956 277157788 82057426 81232400 98368572 923026699 112533714 75338919 403763637 488922314 12635558 198368255 86821483 818248589 28748050 448150322 967070414 957031082 664570356 340096013 420972002 686146338 486980464 139893305 691229215 980941552 406870582 700425259 295210659 445069466 960070230 654113164 296284308 273702636 128358466 517994185 93685983 720636709 236925239 120641677 150744562 500994750 90886614 607187292 712275856 753008496 804392086 69484127 922673618 722255318 446237350 491264036 403999951 808253572 885379214 23286851 901883788 919190763 735935788 168410191 984191948 776417318 913019731 664084945 80544785 691502203 455056586 724278650 686250190 946236792 730694025 395636577 723809935 357566029 591371938 433444487 950106067 187839479 19049894 148754322 775104211 800961709 242962981 77916543 812907856 664297305 886446152 676432021 249693877 893244685 434230115 167216754 701978101 206098181 801659257 670449271 813487847 35347428 491641109 624617815 736103969 763564542 900992061 772076430 275885690 279630934 458214505 535458600 575130877 323207935 850380638 308939301 211661632 257184383 246565955 73522734 238415113 769710651 124639641 146902231 551632099 204056433 709269891 86682213 893035232 657219406 431573368 186155404 55980930 243113481 853501241 278613952 535033705 452777472 408519374 295079507 580314958 566541250 599897504 672188060 936204194 288637828 812920741 725876396 899423467 497081035 663876570 949069289 985516571 972520107 971983082 797244848 84921510 3766288 712813123 935409234 947786355 251819443 216664958 889640687 845298440 681053040 945566735 745708855 580785022 876810553 359574579 711637179 822204393 845602735 774726320 593557302 845847458 855368768 127784800 999787050 248875917 277617678 725573180 522830603 96981325 956799351 349119494 225783076 857130077 524446159 469350574 450811209 905523538 87236712 294060717 497764595 471105411 718729928 773982614 677424155 814706571 131419585 118440851 483839019 404516837 648575376 845556840 105548326 812653507 135824081 528262409 986954786 247439536 605873292 669934949 241795106 66215157 137363755 75057955 762145456 171806102 126270054 759098641 808424122 575562944 294559584 620418389 552799632 221575720 590447055 597737139 146534405 228974028 733786469 264236523 254335945 9986545 158218736 515349385 957831935 774890417 986174214 743074702 657057290 907557226 764062426 182298068 450116934 101690508 886719359 502377876 257872368 88134559 767027246 922422046 802908037 188913778 802447016 820846387 449863708 208735517 280759205 37279127 345304953 925075695 770723293 228976132 289434885 154262016 789685629 597623296 128610973 959736083 140355068 554611520 97263056 262240462 499110758 143379362 595907192 453859439 725665567 252718662 953717186 588610698 856761622 449490462 639224491 123374198 33021695 555728227 494934397 666654676 161873305 939636585 532199564 127649836 327179926 719345301 162533986 938450044 473161254 872436161 222242733 914580856 223166102 188024522 740007683 454295592 241812394 993689108 471418404 624715185 281681390 2863512 328326024 916854601 550540197 509536086 400701982 139507447 792762144 230871101 227564143 117416565 88238302 395708911 662009486 423138805 884304557 342945457 611283529 651153718 82817233 927733933 164240530 415981819 166788288 740113980 238668941 725721567 827340659 646814663 527950092 328208818 53433616 687825105 778442689 50236811 405114285 328149071 275680785 76796591 652406268 460631188 437185105 95006951 427755896 461208064 147586930 189414973 897618268 640822817 36394158 939816658 110738861 959752300 833022492 847219437 315334765 44110164 108880760 92267279 653469750 40808591 3214253 854603644 754533303 915266194 725300123 792693844 216217180 401506711 54105634 591301738 273892455 450538489 946446980 518658286 860632303 191412598 353865343 123882196 490893029 938403543 416145275 507718046 533484578 954565102 754037493 940567143 424578660 922977093 346424190 366795389 986840445 785264453 466501585 568846710 572688922 989301539 426577540 84141042 482634835 776028820 867527357 501890925 71895588 482645169 236487612 111640944 479864849 377031500 155295469 55212516 946786464 464394226 331740588 546991708 625923686 956625423 464898485 435373226 776479770 522423009 996389860 643661813 708863425 235760347 865001297 172874764 883534671 346727815 627664725 785819213 628121173 89652339 81778631 516049874 557262750 787423023 379215271 126607177 311637415 131351580 106654528 201005035 161679781 618823875 847794938 632784019 451854003 193300505 171901826 214912466 525201523 997739738 409346497 419822662 817805547 955696029 33384286 471036183 268645009 336286205 517698103 841059273 44677074 982856595 597423548 111965600 650649814 382421695 133386255 217337914 175955349 793185230 323150296 551497897 804144861 348341979 624138174 82929157 137090221 492626204 571232327 383931920 117226645 751401425 141930797 340055813 445335794 505728975 711499480 102350605 681891403 139420128 873438742 406461732 417872849 304960010 679739213 970972758 483677638 331210135 936924688 673182284 455818061 747785104 919316889 297777241 807763103 169118279 200040879 875480646 997367580 609200654 599526589 800366434 125949449 351208218 304883624 551906292 182290360 54486142 504375404 322225742 698738772 919174459 661426934 863359392 496202371 548435123 863280509 972511278 835956804 821779308 302622584 255803162 533741094 310600547 67037951 385931247 948173060 39306771 876945713 919990057 817836902 19814142 937112108 87480560 737432308 987463384 700188335 47926211 130039072 215198017 765019448 388955875 549886363 556391559 634726677 959530904 252932444 266040196 747813380 373216210 782522116 97942820 587188483 915132431 344296619 629815571 957405691 592773610 407069831 284519703 905996946 983315407 934056323 396910563 48918357 331748758 258575807 121814217 296831032 387419913 318087865 793582047 477896898 112710060 869755934 9937584 893055882 925754099 522224365 716076981 477643914 308513988 107051900 886787633 705255805 666901919 249148836 21559863 100879748 690613018 434658988 74678436 630853436 315650717 50235953 90934307 323463575 266572085 346415978 830678847 258832745 728265334 916788617 209996551 72763064 562462728 737844511 27559991 185937737 341769801 247434217 169126568 19562996 695694154 784997230 256854221 928003749 405884896 980708824 257865881 998225852 756514762 736244779 435993906 199937119 295777683 487498136 552870782 133722834 783063073 341874392 78852047 959723264 558671696 412877247 111633109 769360068 836961206 55863752 647234675 867869989 169720505 559349070 792017944 111429561 98530387 494889894 991077515 482364516 359584250 477968585 982900857 668738974 17847399 846044086 793650308 255360702 721461835 673194507 319110122 331463338 764815869 867895224 834881677 443614771 805910229 61577210 810745878 407559653 206356020 168801381 551726732 98672360 879945475 284124781 246133319 451574087 911194669 848847385 732995168 837142600 313355867 356694453 23935894 633118976 547487691 238632126 649546611 559571164 539084348 286992056 758011642 648415339 862484553 957017002 10587662 145894122 662091694 871490016 13536239 826199211 880528631 275077229 896443710 38279 968681317 612604265 877800762 128624327 829549482 295179243 412977005 803543443 701111751 198101001 884978081 565351428 721525542 437501790 819913539 494392324 159362605 221753042 627994957 485493991 573839534 40099428 633735880 152419373 851521626 609287078 950022973 664986548 600976173 246766141 106582949 690984058 126414864 944435639 951350612 794621837 136412816 686614808 969875464 347596893 796464802 537840026 682296281 65172380 61846794 8511959 533657441 476728335 180445075 932051248 306691396 757433261 873217066 683790329 582201234 298116106 583963319 709095928 549059911 714485537 955520363 259579809 615015825 405337694 452954893 751773404 303061025 722745861 471099077 643438192 134848430 439471867 70259096 382539542 717586703 465695156 794652996 299634161 807401348 467417465 362182685 522460426 595028131 975779927 191048637 391563724 433251531 447940998 222573844 788026203 479257542 386567667 371423706 342995295 149926037 374667785 934311816 499781666 391970023 362419521 206865860 330857566 770649555 712296112 951236478 120671994 619461526 546794082 405274189 378763600 407238823 392826752 887720376 541569744 818940022 780120554 952353207 790692795 742734992 570311060 63873303 911589587 506396324 649227185 836828460 8559683 174687393 65501508 366187290 551549763 21642433 728773178 146189137 417754776 516234494 992655398 466433317 643161779 67768044 76708351 761750788 85984977 201348401 510956992 998941242 961254366 692275954 659806635 260856795 952573352 599266957 594247900 947230575 346511174 888826616 987135002 55493209 903119877 744279747 255486230 672844151 18534766 991080261 363251781 388201044 403180878 38308129 317626034 801669143 245080315 266086189 867453756 453293726 99754882 996656192 427007914 519642510 787561466 124586439 84995233 193529101 893273389 515126920 195175734 917817225 553503300 904691906 417440970 50378587 396288738 717087339 82068254 618854840 625259302 63190866 904169313 501080986 601936119 381976969 761812085 144404663 250085358 289778927 854251981 786728438 684049632 568456088 295793613 221009127 38007063 276704235 448776805 527249618 221372976 997937113 925480673 395390740 212218975 992179963 983658091 199139875 366334032 936219345 463072632 20765277 157735200 356091293 594719822 617904197 515514986 685001048 909841739 258464629 789889156 664563581 464474831 330899571 958505649 762004418 412742170 29089505 860231829 638899835 14029663 260485743 478553111 823720622 171776564 841284027 14299692 232208165 171351230 973085524 712657293 686283434 839109803 424582164 150042140 57034856 415198418 448163363 782306688 160745347 841378282 442295994 566420746 42737960 69264225 975122153 239220715 54944171 674168649 659555866 812320617 235328442 49165213 446910809 352303770 799551121 518436233 896456852 830752702 105233762 342118348 585693213 283204312 435284528 744960482 17940745 64399766 458541414 838802027 909709151 327375383 301607295 277520639 951651778 139114107 779429308 285658928 839865511 473567463 595431431 765699855 835402457 292019539 857908684 846667332 170515674 687971153 693691250 347168370 894392834 507608147 507754983 561846857 516149713 383972171 138958003 333939352 857425085 250533868 829104771 349995372 681278221 855198003 899548823 113225738 966653599 833586959 832113244 551463767 97677093 831821123 473207809 32215100 702222117 254416265 437819495 809841094 686177551 842217846 914792962 243140034 82433286 963397504 864767124 305907038 127518082 765690609 32028172 157331711 891729895 10184360 46320647 123922492 818598300 189837977 934496818 197423552 956479144 264038801 583621952 735301245 931895765 650647121 25900890 999955930 461847545 208946319 35301221 356797825 586876175 782945595 145639969 255788854 709127084 970184024 436371773 351563943 532634455 513588165 793287495 680824003 871459440 864858959 510079180 101317508 171113680 141921625 897682565 722987690 577645732 54848232 297551108 826310523 15924922 39903930 913467478 729402833 357036178 587158213 776708043 629924203 196644861 37911037 841394348 949329167 407100457 982175571 788480362 459497035 573053647 625998477 331132070 530063643 799460344 920452738 566512410 693875973 462064165 21357880 983151041 831164398 328167408 449133098 404080173 494947938 261835288 97408070 81783914 181322794 258135294 319999894 228000684 413701286 107248787 637297510 224272197 629779921 668998959 555047550 423012016 847958938 25762215 967158697 50253510 496278178 878163301 482474733 981669252 917971150 263793699 738500662 91624778 623366960 777338769 226243499 875603407 72963908 220335262 157549261 270605341 694381123 461274349 530389077 463752176 887330082 188715222 145136096 168038404 237992653 101136404 544904567 513017259 426412493 473696156 884367246 802411651 242156286 717245032 863181673 98237050 480124254 584988799 190677581 373111767 80485120 426667343 342273103 917974767 71293782 524923308 482462461 61057499 218691320 940460627 538198963 477833117 835143762 324413532 518879738 223699385 491101183 415025439 510719286 964591001 266838023 395837743 82520972 386862963 382794263 198423388 240035768 921048627 909714747 993215485 313767292 501460289 305376995 543885595 596399706 945920330 843317309 522453784 811417998 741091319 891862424 197555714 318201503 688895825 754661898 378342689 373858103 650129314 649950552 525573105 837551367 691785925 757418009 569795486 400498555 158277289 923939474 302948240 930720612 126348857 508634846 20676136 382279762 486606378 745824364 444732756 958989806 167237997 624754176 280941037 351031732 230206734 172797010 776307817 542321767 334523087 892308100 859694221 189597363 435177180 422073152 775147034 99713272 675662095 109793994 416640745 830383554 244727927 21596269 403093679 969379731 937806195 184848834 256018333 641733517 886885750 62872093 695933490 582326439 933964788 184594093 293121390 880100061 864430299 259348603 950705368 683243438 182185010 5301082 681968580 177298867 915302332 644740785 712165059 448572916 801616347 729216323 351455022 262716408 646472010 786897073 49100473 328667126 679788959 964092152 966557770 494813986 726376939 973441497 655629486 441809564 545243678 68369977 176012662 995371498 628457453 983543791 966013201 319036514 74449012 902016058 129510177 916080637 142336215 478258345 639039923 415561681 453707553 963668048 83885367 533604637 751548208 994987703 701122500 395051297 768661290 891304224 881670315 484470175 706275216 223082854 366721312 499727381 867273301 478799492 696451368 701694031 927619252 41559946 731916673 480557420 3243898 514384881 173421029 466852719 823983581 384663041 442237305 806300561 952820418 833990591 943602633 194934391 79053670 293418486 557518334 876739739 772090528 943900565 913409072 522009424 89292704 353517818 833873267 846144921 72232952 601646224 348017949 631203421 850137502 146869378 394117330 807706770 533589192 389078270 79857970 854980915 994403154 979356486 596541333 204279154 972529589 91863742 848284054 946950300 123106907 540103160 269616524 591424068 886497711 570211651 32984838 568277196 569180648 144042020 795605895 399990695 998618991 766918393 276809306 744034665 992070825 41208087 80063244 394859131 915612510 203430011 169156021 303927305 648852065 711181577 137992270 765524265 825209023 153874377 143216725 924865917 391511494 414037863 900000997 197287083 911827885 875744691 713967667 344654721 904449295 822691618 809878149 987133156 200647574 13772927 908210614 117602404 665364552 850142970 564245743 822777723 732680967 880935092 724668985 521272861 703280867 144627346 513073228 945523843 544501581 171038422 18256332 795816585 691276278 604490142 290348232 819556327 196382657 835789563 596700077 330759119 476417601 967702384 51462913 696271218 918437328 486316285 401594120 596413741 944350225 71346458 900549490 60721855 292218554 606057903 303105314 717151974 591269206 220212331 462597547 251633294 330320635 354563305 486053954 983713044 192427251 931721851 493331224 596240142 515406992 257970848 636099616 509457895 379590612 486921624 408241018 336984569 602134187 830926331 743522123 580320641 409852079 585903212 972188592 288220274 921678367 631907025 661016942 269203657 319299506 349855667 598592494 480819406 575933441 928199247 811139093 218935118 724523814 752880178 122552069 645953649 373234200 64317819 717416075 839779750 991067494 663034037 492117211 171558649 57694757 343638966 413987272 664674095 454860186 404323692 461968800 455044575 599464077 957913200 247982549 150070702 701126239 516666170 449541976 112206895 151195863 146223656 233832814 691738597 176689933 642561180 876438041 488000185 730066253 951068756 498689586 968692944 643938674 503849693 42009981 195980370 940050365 738370043 904679383 878927470 275181233 832952659 160843561 980514830 145727937 460990205 300502120 591503156 777957422 297643229 680690176 728470520 932207867 613003513 316609406 163409436 768165906 730418031 157030099 636608620 948398534 958659791 580891784 292971611 571118123 222988131 489459677 673132240 229185284 587164523 809367204 963184991 352261011 288772735 870108619 371270245 61932183 62857875 908850280 772972216 835709456 279668998 92239862 384660658 37160589 835790804 673769258 953786829 175162965 944279062 816284430 354698647 512904530 702542850 266371577 275376264 958176954 311950224 971611989 509841170 518371255 986399924 882109135 170658684 117425595 251912795 668711829 848238555 836318473 420140856 958805529 614101323 42935253 174122429 15211833 762519133 617710411 500722396 298207201 990541058 21456327 536841836 336174534 115160838 866612160 632824280 988309786 560626708 844395900 181886891 193410339 766644780 608434607 507782973 447907236 221091439 298180978 987829618 252617335 519156466 588224048 100669781 575718854 601186948 862198964 907938148 73707259 173586306 100469069 344733409 783255179 120721769 271741521 949883062 283795466 21372897 541195031 802533476 177473395 556554442 412355811 367493598 248563831 455415251 990868842 650151970 492513862 765742863 59367470 271931883 803615108 716117602 157281085 825908342 530707911 885801185 706772564 44487345 122815692 87128884 523317285 868592513 577049883 805671077 429515828 311335517 339002170 811824423 167745487 460110736 377305868 891614429 819634305 94532449 460805099 36503430 543758816 216082386 815277718 129733040 419558340 971851248 331023265 507194346 671403409 943182922 37233346 66506527 40584963 680303866 550791203 806611501 988929957 616087562 484100228 538595988 163930823 983697938 282746420 202326530 259759729 668781579 756637513 668956876 699902110 657108824 861970401 695008993 694850886 856085842 983288173 608744170 732171842 255082882 861697674 963788780 919254301 652827214 79266097 339819254 916784980 263126509 736998757 751808707 940527777 74149042 191485008 674061733 873709958 565413261 511743137 971575042 739014456 783291299 660116767 518688418 760813204 171127221 37314835 902234416 84014209 158520884 249989206 50016799 444286833 497124152 568012821 236080723 224953417 794969152 517646603 252689038 761639223 159766415 213330372 917385890 3257727 912380165 156518523 946912942 643238375 154767976 951415593 136264834 317794644 426981421 859341789 453721867 764989291 13794497 102075274 893699186 622740296 194511267 451238134 309180071 778782060 292091671 228482787 540771819 81717580 791753206 627981675 803650174 399406460 620931333 424989216 80636958 355144103 601043952 285348576 226177711 476781572 310685835 917387037 150968822 764379575 742186788 326296870 45096268 535640609 126313792 751664669 336696257 290432075 529367330 214477237 472437406 401251302 574644868 512097098 160359045 96516963 888713834 925802022 75205912 939036971 999710826 456458992 914038500 788939400 682694878 662183565 621216197 463943870 229285575 877550816 711477351 328051487 816545665 989762801 642514761 712055109 55702043 492516241 621640321 160890213 524662352 477841959 18911259 824471422 621457491 785994076 28345988 408877005 491150926 570116182 235022612 656139728 219007066 847876523 870791037 196166274 455329331 863836324 728944038 575581601 323653068 993510034 197328584 319712096 407873321 994948810 400536522 670573712 867248823 812996469 953703162 827056737 616286457 623338989 720656349 152765196 122708306 701081087 88359828 704486941 63802154 403072154 731490046 607943182 462206124 126626759 303358351 816146024 614418366 636044508 101227388 615041709 35827698 799787584 451684131 167204968 168421538 639492992 818387635 709317618 922310240 910221476 278221449 779303042 588949933 481242460 650087938 582525005 211446443 784803283 489092877 382218217 221076164 217891376 626321750 552304032 718164082 796919650 125855330 344147116 611736996 485343558 999000295 757411436 772523316 390783987 955373540 425827059 155795450 512213227 767337546 599084483 118678136 232581395 475115442 62239420 928850701 644434553 151354349 221851674 236186196 218957832 519839314 838149003 68439649 114203155 575310877 97666065 195372463 4280757 727993709 300430213 967836157 336811631 670293374 71251129 813292709 388263513 21022481 664137449 968869623 539276246 331326231 533240957 1289068 487369515 647422120 949706004 322053004 898437410 182601151 274570280 42940071 421307240 116196845 95932681 300427470 166066136 352047075 765343004 500334928 161764074 399041875 634121933 812293328 784732841 451365135 561085345 326651350 164935613 577137244 266726669 859673135 758547687 488464647 97367220 321059592 52758481 27537061 358293265 718038970 800571618 560127607 160202303 217740997 577117872 446442846 520848848 76636419 657743906 643750251 956963541 202278459 778450581 830303652 392273459 345002704 412671639 762950103 738679923 129691928 209380130 74585301 736615672 189565791 96349761 720637398 961033195 77278455 529990564 256970776 322315167 95165621 19402870 535065517 333850943 496500819 219380960 785264347 668819806 75726092 914727523 786517168 41150563 822684627 580006631 967507933 39441071 187908882 718261506 485889547 967040601 953870069 299699616 442101094 286944619 528307998 970992378 853487390 751948307 773636265 291686449 914298202 577137313 901836900 71420259 774786468 506581716 465760746 509846262 143464316 984394578 106096774 297416697 722510959 536154874 576832753 983292417 753427115 914479775 665137168 508979123 691060454 547724932 394281857 324703401 397102128 211349490 502557115 683324061 936324167 891256693 349613975 55838616 725797602 641667875 779319400 480840258 88469251 919118335 16734215 739501131 421236607 329193156 367439689 127552059 125353451 688469342 866975270 834504641 362548696 725687494 387487853 49573836 947740014 764637444 666097890 886958045 898847979 29379012 25688557 265802062 149247292 7770966 14442903 587603027 315798296 938960910 776912607 428692358 610095584 508476578 248550481 759281120 538638569 587212682 478811687 675180168 73323875 474758597 952273065 486237821 197175503 498393402 662321188 26624919 798039752 233311693 69340916 549771634 549464529 138712140 149638553 357310467 270140960 125254344 987045068 433837465 679117733 356451789 117823531 837765607 692900785 938367146 337132672 943567538 248789266 874128505 945074845 636967499 920664213 320013654 547911314 620380014 276035158 977007325 663300625 408891054 912169280 483195626 350802357 339098180 720979417 160923309 336961447 277010671 237384586 292593197 26983753 231804480 144823592 433724200 314930675 19869786 977376606 228261373 198485022 187525191 87662931 702851420 824997749 737621598 272401608 189808659 677197343 327242748 799395322 654462627 191689937 348637625 228815825 938392268 497232688 295167661 775691868 148056179 615113079 335618290 892885631 975374380 596049575 147073890 22357196 98338183 407595639 199798618 454159469 788408539 645395664 555860180 826546690 82171774 955396252 815636994 814338045 835761735 427150007 648420258 329095034 866003792 840476148 45720945 557876617 803735688 512208577 227743442 662906420 370732143 168033854 758557496 489124442 242779172 60002926 934585702 346746872 529323311 481517883 991098957 358913134 582170104 641399165 31723880 546175985 67518286 825716207 147450815 137578319 629686047 577260562 688730801 322730771 445949031 209344238 928261590 103968344 973302509 701911480 167708006 624421856 857947862 2097001 208669973 680794615 794341246 386245831 565009317 523580493 79117497 360110264 920221279 198118397 944259300 910947088 54985105 798686610 437049736 707745773 26851640 869804308 793744833 35400097 904925512 346363122 78664064 452082354 407544401 954797833 905364057 874158049 915849397 219657316 282777144 959022399 506998727 525734886 212750429 924757753 739841424 604587808 376893253 851277878 272624732 154334327 33541918 615882143 792246047 755504361 257051341 593079015 284863281 676620720 355536554 241913960 741494363 464278910 152068415 551314631 378430666 441701052 563226048 700513818 931004893 808815543 162966999 72864093 692502282 312543253 494400895 530462863 429594585 743666663 964418025 490664844 452047438 611371322 20156893 496402757 728519139 696687693 937699059 267411878 475842778 920108042 174489034 423169583 777382688 312047226 325484377 882908978 511521357 158491722 550258954 250708258 807319985 307815954 631718037 260903983 421063079 277638560 466534240 668563441 589426148 943731171 821043850 173536927 454873863 726596709 854140055 497283445 206337596 468284761 747862585 251763161 346005878 801113005 732913146 639718672 717147428 55560159 95096965 853056986 430745700 415621071 726015744 416096938 796551092 461100509 828941473 91026424 213429301 734081671 602149037 813434906 607251337 281046392 229581279 552867875 113963851 604900507 775545029 329774868 874425945 151622566 35002281 156932974 274935925 422168254 440998998 455515553 432369635 553870471 279069445 890733461 936791053 153220531 750112980 491292462 951701338 909534785 73848691 198227064 49442919 880037232 588180429 580251061 595859858 885170595 411641898 124883621 258149464 1018787 405965247 240703633 150421929 107490884 86720864 754437564 582063259 715007285 727090596 168470975 551106528 785054488 255660051 247258046 37809827 497789318 278645099 746162155 977478963 704816124 251712308 794108848 79622954 233060282 256721654 216774813 50582161 364186820 570986175 269881654 541073896 712080492 117769034 412264139 77882907 300088393 301817536 375277510 264032539 319426084 538973699 292162292 963440147 742979828 612002816 791388682 461528372 19389730 616569036 221355368 591161956 256729299 156141220 831271759 552838632 232309380 996076245 26781708 541302968 314044000 647112268 158743711 362069475 906876545 458516815 743414378 369743026 897804388 117260075 815039682 375203123 666586876 324519288 194221911 666837740 419625596 111553366 304499593 140177039 62974724 598723006 161301929 248467745 645312689 690445395 373373430 522751716 148955204 20166620 441561536 715094874 762491920 623687717 337851523 261245224 912175069 677460422 392654970 981492168 447054443 975080458 275695407 580216474 446471280 919924958 515915828 25526711 58087410 496648640 506144091 100340805 218390809 168562334 785286829 155692938 703559784 33843454 401815362 236439950 173617850 453430893 793191212 756559293 34900927 259622336 449066625 610165208 427138788 518679832 905805424 63173086 201595397 997046443 708503764 476396130 738481036 176807537 516535729 749926254 910066196 904193799 308625980 813217951 542258018 338104453 887240555 917770553 906321310 275396057 260688027 696209192 953866788 407783271 935130156 386944882 295315285 71470245 179726886 748981317 227550765 904975709 52522459 103322331 963244123 414477285 219224075 873867661 445999942 121455501 879475047 669668009 191247271 240466074 680185626 560397017 221068704 365856931 4857564 859887147 116400020 393638265 611923439 414992329 259390024 351697607 589210586 454568599 734487122 919594083 775847083 411445235 448470389 688025018 682295004 681393231 383756306 958388687 629578994 263580478 552335298 439518293 477798016 603452870 740576080 890133879 835765795 34899797 68988523 491553475 852726594 655587829 814295180 846644104 92525411 28880225 681948657 260738737 541545506 568944060 526156099 837711582 176286941 283032875 654756821 639655907 840394039 111172219 641462232 379163798 393223955 637289562 821348208 290021541 222907143 49442345 667783805 173349414 971373021 922784378 423428274 690222251 803122474 796275970 411477364 377818446 767491209 998096099 549963637 587807550 978510902 779653110 747795114 819071629 925620840 9048090 545112366 452296233 983161002 946532270 50220957 644963085 727552699 635811829 646773295 550699993 76422646 553960056 431448141 661901708 709426479 41313402 372820250 408895060 241123504 161102398 526228230 229304339 549495625 162169290 55717491 550166722 682979044 454706463 98856022 873394902 97039409 737738085 287186087 892317509 28842727 347273094 508667061 52223998 493224527 92382025 864893495 646329501 243479094 44507338 494198481 42204905 69212709 864088212 398417261 403301870 255653148 304308338 252588698 125418126 525689938 36912998 925770017 844844336 995358878 852176280 915231926 450287554 351683702 818504222 792427966 62403009 220514535 578591865 967523113 285800621 181299661 220034025 114428389 125035267 670422789 396861828 744518067 581931500 80742022 282984938 679510552 511208848 695516001 373332441 924359819 908078080 856136486 411617614 62526417 733228892 921784030 610293400 709036408 214659692 654770977 644816918 45219859 669295160 478445548 694925701 543531617 776328490 399492181 207262301 708228423 685371120 730549835 518965255 897792127 544565269 847680229 909910127 538409462 844722917 197249840 737175781 965161696 342889590 860904358 960425612 103940056 912998559 797473273 804231881 23384060 417262133 512780868 746463794 655671341 950023475 34965408 663401199 951814081 57088108 313463689 701470112 864839555 732195607 423453867 170481474 752267623 196744774 574818246 588266732 613798495 866532118 325489054 921062155 437360772 248513950 534859089 931615081 47262805 163611623 616253193 701275111 298135098 558658182 342047250 86342758 686324641 553067648 657566763 394966064 24648140 430452253 312319599 368355596 848769541 761856741 346821252 738328447 766561081 725919947 67547502 759929748 993298350 484252447 454629221 738249160 277885964 159648130 857566555 280099170 70715817 479150787 104754514 191752743 649555635 545248640 537422609 68492453 734131578 708741739 967182727 747181147 656675389 469312307 281836711 62423237 852703812 603699399 413028186 496354713 881342418 631671670 89603051 944027201 339876654 810866473 742833232 229118086 56095851 722204698 949069278 938077265 709800000 684723428 524624789 862696916 821688623 753360596 895660599 635198248 53663816 546106629 356377490 892765714 376518065 971398406 193733287 423643516 720897658 20372645 898289642 640968865 502994224 5420717 952955467 169237536 940913635 258630681 996071160 200968112 103065014 135709455 900155308 273268541 451874459 976126703 714284382 587964120 885741520 343741441 171021269 716622364 831856482 14948029 8669671 543813913 398092347 975217953 418985764 842546823 61956996 100562940 749867337 849734709 51826130 431187663 337908404 955060162 601922519 739691247 156151676 818118398 742312676 827366607 187162316 700499643 762535352 283977450 759590252 499967216 948898738 638430809 721982296 299088825 523593939 140365380 129604636 81756121 664561369 17172296 310551846 501744133 6068598 50624427 248790032 427973596 350943605 741471237 827859550 519432623 317535481 227352259 72741877 35084051 196468500 381435919 90406563 23643194 148926360 894867863 309867829 755636115 249560744 46972526 929418629 923492053 328103217 82466485 406082098 932207122 995826966 162230237 777192636 252304365 165078686 960730499 725800304 205067327 640673675 651170540 123291880 43886456 299587692 449954156 729949476 473530643 286604628 542164413 866354467 372727356 96475165 686776118 561120809 870838745 322128481 832893581 600397554 972186368 653858918 857789151 300610517 83855362 39525692 3624011 641779797 730157986 295178384 300524979 343029811 478142073 29769716 322327609 449016419 711262389 659195601 227265335 844444788 500560279 531718679 965564011 656977078 872428682 271697857 599575293 408969663 698558364 414764869 549082472 7289346 399525334 541119115 989877043 293227701 436769337 368788157 81025122 693911027 253973432 786274377 790264110 822512640 137614454 476079688 819116703 549305293 958405654 382754175 897578065 171419916 875304172 999667166 678915534 442509461 892026154 325705475 468948430 517428503 538480062 425156012 409008202 282830380 828943976 691391758 3859157 635840194 823887396 135719150 137567562 694487640 621096950 241143541 282955560 46793951 723716844 726938665 561655401 547485500 932310321 973145062 163696732 303867224 604664776 250253872 350665908 710631970 886153824 212962917 239637325 402908105 470869583 937304184 147339544 861997186 983869926 642466400 91791389 992018013 353122634 647413384 558167029 621534465 225398551 379005467 560211673 560717927 555255811 663632773 978881831 985571223 293348563 511721726 839994782 613900334 841308162 798763272 949596107 278119037 959335355 332539342 513004480 349439516 643717428 479816241 975482254 450262704 995761520 986219441 311927859 514796137 792828806 444314227 296002080 738871881 933014628 170212808 660747798 671572597 9633464 446415124 461462639 977906616 862312218 116278734 100678483 209755618 602499006 532222443 99838006 531901945 844666441 656196009 171672467 862964785 805409308 83581636 690677617 293250698 992488414 441693102 736172742 337385976 343267622 579623649 467015983 920807754 295202400 644224756 687219590 572936912 676772034 179356329 18603803 301458038 861050435 68027778 155300605 951551628 863985704 905385436 350618650 135604934 991655999 211157566 954849406 176498475 392037857 23699072 171732499 242803215 953939062 816410965 709204662 401759828 9222557 941749944 697578213 283840582 443103701 920601100 951700423 13942428 243904438 347381920 890596886 76737913 599570888 284023860 516775514 496091434 274059429 561567180 79361887 913485186 545623671 959075859 172538885 977816124 702794115 181050474 146716605 407915055 568032174 924155931 956396990 760061790 446872907 466601341 980764183 102352307 189532353 621624159 790140698 490418409 892491174 24784802 580492525 436321949 623567614 269092185 337111332 128191436 197071417 246094613 676563899 223315128 751629544 376328300 261199911 434048798 739714336 601544167 761448440 604944619 404961812 391439840 725003952 47968475 229068694 994304244 902240275 400687602 48370084 928899146 498746287 415893423 778413572 80388436 204525973 207396900 18697085 229854993 450892206 16820678 815878660 401310938 16657193 166831454 258686711 640404786 901026894 210730303 278097340 211739580 57121031 584844657 798827265 562931723 541503918 313253111 957451017 510921836 336779738 839895666 494553577 243114323 846067470 326651135 335661489 56055464 714059809 472897711 203234594 164884285 275906487 660488553 479172634 836120282 790626952 683403597 94744821 548315588 428214405 906622066 589952283 407977933 819334852 260446480 430299536 667380606 493742885 860462379 860528804 852276405 29879994 677584531 864406146 781714801 821015247 462334810 181716812 922107516 725462410 470486785 355547681 533448397 356704814 597081888 285394705 152758454 274374578 939184613 370944267 393311598 157618577 339034819 948248047 579828688 583248392 709647400 900795108 425312633 832618169 66234419 576665494 45965043 294846304 658630846 892580875 882976530 223570185 427021956 549179952 992784246 213445949 718379888 620184434 387636653 442279050 107802033 457213994 572958722 331611033 683991286 108215749 664469029 571158649 73714460 946537233 926569460 500655586 553563349 989075692 480393850 137086266 666748654 104323298 766138675 860607245 466899292 605768264 403997112 158879360 553665257 616665637 340715866 182531155 250061975 830660116 102251502 257729133 254195428 351819028 595691903 91559231 247007669 667975140 482290843 61676275 228813482 887730314 616667906 308268801 546895036 11561843 46865353 990913633 326155778 961898426 56386995 92217614 119202922 213724556 951653513 83605194 907086315 696499411 759110763 771941628 930760978 843439488 491964206 503243792 124603496 749201927 176760717 71649246 601183280 634155531 588081556 390905718 153658887 645239115 174310387 177084754 745079200 238210080 19375945 113101003 704144177 403326294 468999467 477663554 811962994 345075338 431587842 941898317 452741882 778777508 304585921 696605063 217386463 48140326 314182018 955560522 842103638 689970813 110133447 472690732 464604864 422873378 244383810 184166059 996760790 292452605 96211081 574480110 59194691 617310493 177929421 147720690 277017840 124684948 481413660 25562883 188764816 937444077 982922266 77882627 703187113 887053665 779563635 954029228 328317326 335217180 272883239 383559509 248550624 427134851 254012838 332342006 160758354 763242046 171032298 385878484 983683627 129382915 540139669 2923499 472347299 174887648 811077524 174708777 417933889 945485567 271995985 270988431 172293676 441452127 167523893 562400168 93147028 180875149 354711677 741379556 848392541 163891157 899155947 586739719 265982726 733243863 254562467 647922382 157076898 961956625 10545033 688482118 238559231 461892505 443311773 476481831 442549866 300971917 937672955 640104907 388076478 800577429 649348220 585177911 756235185 513841431 754871765 540882061 912197802 139597141 253713930 122805313 914832724 70947997 607185749 691616888 729379618 94754887 598385635 534702424 660892497 394742844 943188042 529115778 8266401 465963315 980054820 497345858 937660230 438445555 898486847 299451447 331905305 776747785 197429740 541819023 404108183 512715692 200341472 503827938 449922338 767212575 691644167 584321139 999912047 928055051 585557051 103339990 948191373 841675787 381462120 759002626 591249986 591602857 330705178 714979190 341162012 867811943 921127396 451930181 61031550 313399283 724725146 719081546 170111285 123333914 259177731 513520025 182335910 788468440 654900037 707503466 602062127 738327445 396309898 776671322 826616131 89837384 388225153 179174474 796720302 710622099 257058001 122777736 405529175 290250226 754516616 60198680 136741581 529878875 79695828 31826165 632620461 414043874 686371648 423328647 320776080 878369849 757198298 166996650 304837025 815079344 886444279 450295967 37794150 550746897 811214490 591500954 216704672 951240767 857480551 410579478 66679096 644159003 348754879 11360879 732629662 411866955 938885248 10254303 880839690 83365737 322584612 222264254 960423299 68324143 812185984 704819694 314868892 855216834 723010120 402137799 477810919 499356613 782731761 204921728 316929127 271758628 357616813 954397873 885606296 111840743 410560837 261659867 594437258 54806694 458867607 593781896 900353288 208954303 518954235 847680694 229845993 227897821 891655718 643771922 565059663 887659837 607263032 864811244 618375684 442327100 92982495 622465609 77371246 412575855 665927905 86658916 942782904 68987667 178449420 617192911 17730463 975660274 640366834 528967738 51215311 578772267 719283929 763750203 741723714 360383029 113479727 827663923 789355673 901142793 511532016 569963331 796846547 694734953 620375829 756689465 387057262 173804642 285515183 312193032 209409117 512500660 126064430 172920405 857016331 307548265 139834869 417047614 236349209 661592203 889888845 916793821 721435735 278696428 580974076 722092475 348841977 451358930 684226305 445144961 845154686 322157036 172762156 780183980 698371240 370066577 36732728 538519166 943535124 176080971 377871488 808529741 641207902 782452557 505388985 16606413 200802672 237796876 201863940 734075415 431448637 643701818 627859750 800333993 225765040 478936992 305554882 825593802 694382562 175728099 643672729 270974212 871447357 489630971 419145103 751748230 455101850 694693844 994980640 624525020 87531893 697269307 865936664 354535383 681050642 275169779 766811723 111676839 741606491 979235364 826969173 694614066 414275038 527058153 158683501 674782577 594912568 706059944 874830779 879380527 318227613 38468320 250538495 132751757 218441363 898722540 801010214 719788027 174126812 173823346 611592888 145074536 587037291 422646766 264229168 510486229 213167195 293795232 623707804 211332734 469570738 360864511 649503227 554231258 893598398 76620845 151617084 207501217 61897412 510821641 887813145 771832070 99989569 76524003 939532928 973943778 722459903 521894812 366966514 435623648 694605306 378927912 706212058 846183706 818713414 343479634 814896922 616314584 679788551 737890563 711758794 809613348 768700179 184612977 18922994 961166092 818490491 47012016 993746711 648550232 644009211 221523683 780546366 429669791 198208688 277683189 834831189 118464729 693856008 79214926 546916240 112588591 56066622 968241133 197460463 837397030 884615127 598447229 258682991 177769701 479116039 142329129 110719760 656865757 668679651 432570737 358925238 247572810 260722752 180672423 678827373 156311515 401603897 571850750 297320447 668047445 39435608 211623584 382305418 319454890 326297447 925793791 148883425 675782619 298493012 880781055 973876343 221374588 265400462 140496298 442357386 482666966 897776270 779683773 449316257 344839141 380720696 252572412 592556871 981973879 526469360 122075761 386153956 983132321 653913052 441261147 422459834 884007958 214694591 537608625 81626299 869674451 381540418 806049683 363552796 411707810 92360372 462994308 478759326 807565581 283210136 980074075 979411301 969386807 579253579 247928969 776392528 348866625 922277056 533097728 750553340 311962198 719357648 663881786 533524761 51839407 646366112 155386613 550643449 758862733 451492739 315770702 132244693 898106621 253690876 44122817 888554717 238964725 603006143 169509730 486814100 303424392 808204570 283841693 37116155 464427946 560463135 738068583 435614573 976708102 677103976 333680004 766523692 954757478 538256448 994473452 165276868 718036690 531352088 386496029 787706720 258374279 968705973 236019312 304561647 44840969 163439878 849369227 716600697 755392103 103674625 177979772 451264671 293417696 825918250 112572600 988123464 848652767 805065342 809314877 882670402 208820114 315277967 603080225 759595691 983457778 493959483 528416001 558863721 965675403 167891060 494554410 267322860 313678335 912951635 456477293 534076029 986423085 989970990 171320639 606581207 400844993 497340605 318535207 104515157 384297306 264916181 714351707 331243109 503885448 670984623 948075851 170999729 382781693 535414098 552577079 744468617 741242730 886183583 275789024 249198778 643761529 564526671 532533944 953599068 633768967 104787733 801954361 840741429 67540094 134831482 625395760 87524422 440093783 500654464 69417994 269093026 74686513 114781335 859736313 104110629 901074396 234268467 622239030 92608594 795760936 530002934 146644700 121795634 537036022 318456473 119032106 253967762 721729204 69406085 715640724 68603362 748289099 959420341 998032535 880748779 134208719 101215704 512554634 529371557 372512124 228044085 924477696 256875523 337134378 609925000 738816566 67055331 393509241 939516774 946399041 524793226 639425870 290498840 683574727 225676840 539498521 924677034 779148690 597534438 725198855 698331122 476353454 34812939 669009069 171567513 31456315 748260382 118142640 321866618 922298933 786319572 222177975 789806715 845789736 778258170 466899103 899548808 377126747 745845420 892923308 391015547 355014592 600308357 380195633 601855647 460291630 337605175 446660512 475174268 528871135 224598552 752480944 918350892 119199069 695644229 70596507 412516104 365420341 201268317 982167518 528329809 73431818 658943355 626008526 439783219 986892589 864742950 339131207 746764929 958824809 482879991 548858436 632158579 581977024 883143326 176115088 668894729 141160400 472379125 932934027 253491459 575940534 144035669 432180388 195405298 879711093 135382130 662077713 711313108 159625035 40664714 648579437 619249331 943586956 400365214 608658834 5643213 177015746 641459624 535408600 718920641 229949687 567369671 88321051 399821492 566281375 404091768 668592877 692223153 427788893 593029834 742205621 717704252 95070399 117524148 320994537 302990711 974654640 492301359 62773909 744964960 245129470 932947044 850535262 134861265 77457900 563840839 336072195 887623734 663355757 402521370 614831384 69087163 994427395 807011860 641957587 944789740 386422576 574364676 94101582 933453406 392077860 232942166 482059227 584900282 510394316 789950413 719594524 512420077 174570811 992059821 978670784 41266087 576513197 309645031 244985084 779905879 539997878 699962453 431624705 456233178 823556767 387877663 938589057 120919582 258495003 312707180 436837674 882516835 402289248 194637831 962772161 245703763 954749569 842072056 457099749 941226975 897567859 132232124 298934161 336128145 774032747 582111198 205968927 534906932 867812332 859061836 416131927 369438123 814321262 772947960 763520991 500606064 865385552 953358467 763506685 724311426 141141934 248915707 579988888 109841336 59844968 974950422 897669610 345675086 108196028 314394504 694985450 692152705 411634828 441240401 102836546 391654344 217415554 434312898 428488382 454601606 801148262 717856187 822904481 58759453 875643728 489702513 807835850 406593427 174098926 165330637 258442820 582806546 303473297 579398994 301829014 147711605 361985094 380009352 743729428 113765100 304954821 120527922 477029033 23435101 82171633 978675624 504812054 733487417 467994718 464791849 324107537 150792880 806942592 214123809 674933760 588800462 720725829 469921187 825631127 31685523 106889313 442884034 486428476 603245759 200240277 984701000 688982332 30405675 851873275 206890439 93123493 759119414 550624949 947801511 208355011 273320971 495403738 805867960 600121684 896328086 530603369 720880445 346417451 335995334 463052326 848992588 298930216 509590008 964235275 659005324 273931082 557730713 723229642 122117688 817339395 819427296 530670565 511504187 244896361 119841035 472673372 750782349 973581212 849361508 368148808 300626871 624008464 536241317 374454702 194998021 44855300 924284647 705413051 920457667 473302479 810210711 357776945 560291748 963097799 389451702 258900803 435165591 485822401 73235593 694261164 327885543 495235013 447103200 123737720 542778626 976606711 214485536 968531238 128254041 77751986 811759347 410085694 644812276 941297043 469805735 505331104 18425555 468232331 516651590 943538702 409759457 971244394 800403878 881065581 866571245 490429629 534480338 209613034 317931901 377559768 968931216 57554568 806898771 817029406 401145788 785972400 252798781 523459056 477666148 720688957 852791420 71884969 538421098 7941182 180910998 222953872 959791444 268863634 72270335 19071269 970121507 987522276 397260096 738387513 837813685 950831572 649577880 820270506 983782288 287456191 740624382 57448431 25018919 340691017 610129772 88102310 361980512 545124424 669437630 366827144 564351500 88438436 923145221 131044017 557647964 928442914 379063644 818663374 442102023 599075136 955825974 637149032 997229737 959059017 217462683 511613410 210189384 944299998 927217338 613863416 893391635 13762735 761756156 275829533 758079526 489471641 368733771 409374530 581524577 558532384 744308990 624870688 619218231 317954432 770657025 309177009 375465735 916940991 141917885 50814705 794286945 891197015 232836030 413614463 780474354 167799582 112352981 827518481 574507697 631008900 986644805 136454832 437793856 380699198 386188961 232488105 842911328 272106823 958469272 38030741 119119062 83611645 55787529 913948241 802686350 919994639 503292093 117478851 408245471 845134209 36866869 510552580 918418971 967584643 873753208 897398465 7953264 24113219 396000792 863459469 154769175 830650604 429790602 45942726 243267203 977018951 943102559 785688979 804115272 835902488 727110813 958707485 844774440 448272902 236390270 106170839 979089096 958533712 654758715 752080537 542386080 690434655 838713184 509981843 931446491 234497437 614633296 425527746 740660000 153134227 565511339 580552142 246155831 764693761 963428740 784965782 853934835 644231828 572611098 751164442 534139410 224120158 494985204 636809903 489528929 657717457 781915790 788550683 819059663 866232373 447280181 524536438 949867277 326835695 695435554 110156730 458927901 324561624 53941403 669002544 868565128 613003660 325455587 298843363 310575159 640036255 166337795 671561006 537755580 184979629 22708655 40843778 765176162 75735713 204382197 12421556 99905608 746135521 279928266 9141416 126505955 774555689 139147339 149449763 523294920 496721394 482368729 859270265 780358405 672858609 515879782 873377652 133898537 999681834 46803644 90355967 836271063 393245415 414265843 675290215 499557409 438295702 78525651 304949566 246587750 845809838 101281210 206182498 883063925 872117016 135155903 459297281 744304343 862064592 983898493 11466458 950250900 798584726 135102224 952562343 473551256 380435162 655713009 533242463 578110748 669806012 958792046 652699946 777983141 828278696 824788274 837443186 929352158 750358731 154517940 978361845 505675145 63712198 47742829 173020708 11483903 593597832 917619232 509441971 928792557 204036786 184645852 170164604 8773867 564977473 252074443 498287551 563823171 675452037 804335142 502346143 220457475 143974312 648574610 699667638 418229868 1749034 989238206 562628082 958581973 483602107 27279053 102851983 430170600 485148609 602069596 433752928 336022240 504133820 393767158 523738125 713070359 803929588 516953208 381016678 614776215 493786131 175701153 682341625 318441622 278568408 423421560 801676953 714789273 749546283 56659275 115007437 184548587 45141917 36529054 233404589 406056946 116905174 926355459 269066637 406738274 638514469 441123304 374664583 874233239 937935232 343371916 87193793 702476815 327991135 39133314 316606532 227015887 782757096 133431050 940259009 984267696 217517711 900065412 858703417 396808729 118774013 472588382 231930671 817866431 505044447 654806070 998017788 796716647 406263274 321447689 121111326 160568789 469665329 155703808 334417635 140244232 541280768 384612277 363224838 192114633 122573700 133386422 195421941 937018659 780255953 180646083 375927583 964368184 718560696 161163518 229854930 883508505 380782264 605078500 515961729 367632167 582998007 472732659 240483747 380210791 259264189 84616885 185914493 488277675 666174208 735772505 247762738 154696295 484609787 740993281 967510596 263251661 337615906 361535833 786008672 504147389 785089015 854856423 130924286 356039103 322792790 634777149 346939667 874723362 648473274 837760997 121404479 933947615 784135419 951840669 890207239 113912139 632121984 547260452 322930012 486153830 434352590 834355787 139735323 423076867 99957569 945450530 754620276 653687507 666670146 395560955 532143135 339847094 141933554 838200369 951497161 402957911 995849231 715001286 402832891 386769121 156605010 894638016 712653063 705887175 581702552 563864844 112553086 589461714 142093877 18927140 920665476 928541527 195049837 272037938 36178409 425108137 663977842 506102653 458500481 513515231 641368964 378302057 928406229 101378638 32743222 130964274 585445025 704363309 614433879 495583172 105643234 176952392 294853639 541133665 321053870 705777000 688563407 505532835 47618468 69510492 358786361 31246745 666247227 262167196 595515622 586371371 913800897 987396631 44635494 794515985 228643060 801095599 872968558 444193186 984827771 330896346 233773220 50171827 695011758 600060745 909364714 996826136 694818253 760664369 865535960 763989228 518095355 545417065 184064267 200897699 496183295 625236881 662758681 539987864 742232122 395816464 621389530 497202806 481248011 726777230 969039528 658903685 976452463 842628824 862810294 303084412 13528205 869212568 120031692 951819943 760091934 831253108 732297590 231159920 624719892 523863726 422285252 773022416 953148126 923143577 939212071 849577142 990423131 810445543 839316655 939870942 239753818 734284500 612355123 330997587 943213807 907126361 594445591 510298524 476157630 644894736 339013941 854951591 384812221 926174566 876746032 67125689 378072371 267724466 59484913 731583398 872039862 61127625 662834579 240801040 493699729 687936531 374814120 677343901 742516481 712195109 464547778 698779833 157857801 472391908 171305167 859006768 200184855 484903371 609611085 486987522 953826649 474723848 592589503 946701037 620770657 5276022 166092842 199760509 919463653 811689436 918168288 168050738 539837552 341399178 530495567 447300322 44731644 290466148 354257352 912802679 153231241 477598843 74584995 734014714 555249004 618845170 53542511 231013064 886934038 704775007 183078180 369262915 193794717 421015658 994640916 1074110 771999339 236679097 748626533 708073816 235458135 201168585 323085066 420539625 491020621 98064189 327899309 858923171 566788143 832330875 136676136 709079801 687434127 479702730 176550029 181412068 46927092 908073999 22899308 331318908 424831294 896741447 916858113 952843780 605902850 411211787 61604526 982941169 653354158 145651380 852112236 168305677 377287919 875058328 52351842 811509152 56170308 536613137 319450346 224181854 467049708 827380622 327010400 224360725 660336118 778042039 566282424 211581100 786799001 287178358 536861626 229086120 205672075 165912597 610769732 7649586 851822875 299834804 494359344 986152407 801198232 596493111 404858009 261017231 270132397 857061251 154109520 457163653 792510255 154843319 936842736 228533606 228650031 552442658 883705759 638394132 184721968 723751813 550640813 73811252 982460502 524728444 752848509 746280613 913658574 804998844 363203922 529052820 316314312 801299200 832712041 188550000 377326481 640892839 620333610 63157535 165663407 709987388 922531313 894803661 968885868 109722563 143130395 318135693 347878141 84765166 124850979 274610202 797559775 383974666 472229269 164929472 849925564 376861739 372901163 476126014 757694702 566219826 351560064 957399532 101423531 696273191 408247272 173149051 805376677 893200642 213064584 220546303 630273837 321688165 767500340 872700231 481498396 753232898 486558793 530581548 431555020 675256627 620558171 864794152 111717343 504263413 620214961 584602034 597497985 852758117 198759198 578824975 503539774 43961389 979769610 754864558 427679924 480369910 208852000 92549018 395337659 651937984 628002814 234442612 672074804 19673366 530726237 874604009 410432753 905407251 592906987 727922889 652228202 264534923 727403669 567580000 189768204 784296689 588720273 839279089 416160567 68434603 956358040 138983601 176203497 918938673 632664328 119539667 740002885 200497881 310869184 849815826 464344771 531140885 230203231 425417155 715084021 290397674 148633547 591914391 728151266 295241970 657982055 830781905 155042650 824054577 60082399 22269086 752589327 34380956 6157857 4130464 755390245 330363057 620182634 720561832 107282840 233830311 713767649 744294878 945063291 829072310 538733275 13602767 124150561 968610373 25370008 467117970 287189482 969754176 594046611 155975448 244390603 344674446 930858952 524029302 328544048 626116584 60063500 539539309 453136181 799269257 770483544 669004327 238871738 482509665 826306618 519793540 246140089 567617682 474176582 377628582 256602465 409455865 100566173 895758051 293353381 135328170 486561717 115795586 481292154 689814018 791662863 306507944 182614851 730463995 577538072 210195003 248840701 463340756 944007866 985183598 11611475 61038039 295857898 216424494 390758169 451432557 165411604 82715801 817329962 344644215 73107233 763673626 98634019 124502894 550908346 130293047 456021490 197793554 667733408 454337160 760061494 519462497 961391289 631283444 401444063 916709414 510497915 62968974 94572066 966493606 256937179 266104244 155677777 261087214 227529129 514274454 936916641 394003818 56162715 352271972 676011525 731913520 875203948 564998698 981613308 844904979 391501949 449772008 527397135 707371306 946505902 514008219 77665303 56622187 380842122 709508761 181184440 488268773 900456187 888072117 415476426 310083913 908485727 642065352 267610642 360804918 683465655 894564750 227399405 379701912 478071343 328671838 100318687 725260732 295869948 14371460 843814373 901802125 550850192 723442809 890147910 350044071 780117940 737587357 257792341 873652485 248100265 63976815 81127829 4075988 748591194 679951923 593000817 409732236 228750153 172991038 466318519 905746470 946953721 654436516 102332591 528667565 122782803 203586897 958281329 690946737 80673658 375664870 234673046 738526043 799985885 877301535 944158798 290094661 455561690 329842870 573208883 194191743 930037975 864237276 609383267 515671883 40118984 953172574 750568265 347096283 211654903 320946259 988737641 251112957 930382232 356833505 418990289 716633814 840980697 825857239 226795790 993718805 416073885 68967343 635038054 954378827 651534970 36815852 431638899 683191679 497569567 387909804 498870267 861581624 528419853 445056844 819452296 831041998 787559258 71202034 800711754 746726331 273630547 823036967 400682062 466593571 245072410 973125117 569569193 478462198 793651849 468772445 863953269 486631927 635328204 714736244 380726087 265257838 735966991 673861432 214072915 193661601 938169720 882109455 374250699 782457701 839944152 151923878 610380489 459673724 245183846 215785703 778490950 909956452 452965252 89545324 542288404 514528336 260247920 46899825 23894152 784911331 120390513 283339108 960717262 628523177 258385975 812938928 959035082 228705088 780523717 771231960 128841453 291883291 330502710 692547643 542664527 968992143 104494356 647635196 472890023 838397611 390964756 95489930 450677214 774747269 354336070 48718018 657809026 693358542 201694652 248515073 490010033 940597448 636390255 872705714 576530443 230679464 911039516 907840129 521471625 548762386 617359977 258267712 642935515 67270675 293815821 226612295 883182951 868330092 199596203 143378691 864260375 721087128 476792407 820131552 619658832 471370655 262065037 646405308 311913340 954089357 652967687 626831460 729049085 27200076 966342727 649841348 119754251 475764579 53508736 512029865 745072203 642147582 302685542 849052825 384739577 528830953 835542756 763957834 766501214 490280801 124770362 572662445 742506085 556197955 794296719 849401493 708867848 744406483 57512202 475952793 639700577 1415632 837239578 669039458 953642943 642870722 595858640 26490834 677394226 254762808 273163799 744015924 517838005 669634097 904876144 439972075 539645157 376128122 940580054 484666292 390556609 461468648 133350296 986294426 883884751 17599082 474053199 43125456 216827337 19311905 923296499 697250928 882001102 545070210 870073328 275412428 453218917 852714415 856029720 491032581 909995256 259023613 845324840 593311473 577892574 220437539 528361993 345391520 158144904 440188334 565099651 921077004 320154381 358029502 801507998 4157771 659152915 128619415 159165068 612554175 678824023 126105411 879109660 215048667 178014145 286002434 868616651 526584057 100105315 662990809 145873660 688759285 994162690 863074549 504349135 973305678 107378170 653166068 378225282 478569020 218008383 354905153 932108222 237382475 756399605 874384259 210548213 362410640 152990519 506111528 528640764 66992430 447188578 490295347 499785318 263637110 181342241 546831606 7971330 373992474 716117207 363097167 86734369 505388905 254128926 59799913 578802135 871710055 636591794 626416116 44930903 255239629 10045026 202358997 441149673 951172544 896697385 900626791 644410776 178313760 633685337 50810022 904043264 796903041 181990759 541610206 898777436 871652238 524407247 821700517 849111660 170212088 137790388 522744400 115188240 249082285 237194184 144013881 679858646 707340878 893504860 864231276 719095709 981170317 568097602 462782865 11510806 420459550 994333221 660324856 444592436 636176187 746728131 636355933 969253069 876484834 342757053 263477510 821796465 680338671 169403123 97603007 217813751 17473575 54668438 929688907 75841347 60603505 127724761 273188329 234720383 317168465 551758570 464576256 913838693 805056254 687012801 113377528 691260163 634474178 838647604 785116378 456486846 308263788 84410355 757918125 537202790 359490537 207890064 396436715 918239262 370286476 809019255 197388964 362510944 425142193 541633312 383331337 121609312 571836801 639659175 56742644 938898059 276726308 198844310 157542749 130303596 976546275 721731213 90900571 736938490 880871714 219076390 316058906 358560868 529016486 972002282 362915886 797144444 188553991 96481924 372928090 680000216 688583517 78432957 493497813 590352822 848733201 994966755 813263813 889803665 812613042 356346635 664340264 843846040 149933864 833444356 389081397 425061570 953068175 207119406 259317114 326857013 153026829 584453942 76164709 170757749 211495781 385775407 461461665 16516451 800154509 78341714 836326745 461794730 43023446 628377806 272343155 882407720 464831908 902255673 89395030 879436743 91612490 162359983 101776517 525152836 946846043 513033611 656219138 384835678 311807436 570556573 147827000 311449708 440309801 273636924 163021845 841136662 765934834 622559575 30656067 767081370 674943304 132624114 91714483 982529405 359545211 10437793 672297407 844482945 364162543 773611997 866647984 497029204 790629864 879029708 712888293 847201833 622903401 123779640 299651224 945173115 190122740 382874625 187870424 648638379 988201915 404862021 65258250 701098698 960834253 145767549 337097298 53716174 867887690 465188984 639625847 736852690 403849381 319022831 312905822 944801604 573209147 999870653 917114262 315142307 157747208 32932509 324858302 359089142 257717557 861982278 497118419 251825724 88795725 174516062 908399530 784472254 127984635 664744616 463940382 191992819 124357309 765117558 594954349 612025079 732432631 63966837 81307804 474719039 916295325 579942046 143595202 601587138 262769964 517198209 593424883 683543683 568255659 158710188 256029096 831618698 195050291 886384226 312581144 594431079 399354406 988311052 179970458 329586080 268644004 42183399 309631292 492151312 5831218 126170155 784089250 347850565 485362746 165159083 75618623 244374484 632813581 530296473 550333113 539736922 146975651 645153605 14586046 974978517 741681884 387339301 293527099 832084894 729154390 921236319 974097747 163206781 672383474 823383737 975593370 53977472 580952338 384126847 406511866 433987358 893524141 79412066 991380922 657015313 868188497 892646364 931115849 742756175 483364128 910719744 122602428 691443631 599751020 740711527 210151103 164297218 985010175 46347133 87302104 430648622 705274671 413154054 542191017 976128571 900744292 880677293 812677468 691873698 293964835 917150357 959174861 574959901 547426913 382641515 852801803 985526577 985733604 299026877 919461870 107971778 849104693 776622338 621968369 481251131 174214680 534239353 621497059 215893846 345604902 97568765 56986006 79419704 887179648 265036131 371487511 395902135 475599650 145296097 759960976 977590029 149931869 248057341 267305317 654730016 871368065 796958433 983947962 350243611 418082450 241259383 765407790 202317433 145996107 377757833 807639112 380545964 762299254 160446323 318079773 271355045 364109948 86198631 183621799 54888303 867703184 494834205 775630992 886073005 246904520 51852719 199301572 444849491 937615897 893221040 690612602 224161023 678845802 209060290 855133969 257730642 771130329 44426332 551432215 41009921 848761556 771263866 96320985 401771828 63823816 803826214 607990636 212049850 881109274 64407589 969778197 540922435 834227494 941667292 315853939 36287961 107096100 705403898 69127782 779731357 228831684 197249345 538671547 492741578 23512575 763039235 781909470 664223476 279824259 550377785 5609658 312735421 172434704 515405034 825690885 318037396 572578576 534296336 750546316 344133809 557452715 447729292 243218237 721154126 912092765 224229611 739916579 505130607 522048626 710862865 821445817 375347325 959407921 953443878 787548704 576582610 860442443 993843791 657712971 602061605 668501444 128593226 773502599 931104707 83265455 93160420 396096413 647247699 124019984 840961630 853460003 306170986 240752595 441132166 628881457 782835330 490746926 203784541 531382104 260678027 706794127 576919966 365524162 895532033 548134415 611668850 471082017 970351051 437004938 122307333 402689747 530134783 772781467 878861319 734234335 725119335 20420099 254610832 445961645 731331598 96546186 415473486 24371523 698253297 669239592 5251301 567381155 572960748 747945142 252274872 9481769 45691176 217509003 781395805 273260504 345058891 688380300 74594826 748477845 159201467 254949465 283511092 511491075 578083317 852100066 252634473 589792027 75064191 383765172 809499514 470388392 281082782 120291262 390420074 944774648 592264721 223117972 92470273 166708776 444041857 719286669 984289576 632709796 100817216 303874106 972761926 662291236 644189699 929436588 310875299 714544368 25384438 507558396 879066221 674016231 71965324 513169362 775866245 932151989 537295051 376784369 977919685 518566196 508570101 728225427 777270925 893559390 335917975 714102423 147890974 690570588 311236149 959592380 551662391 451738586 961651283 121057930 186524529 10438972 405959430 144854203 666461758 820267934 405563896 348733155 361360450 855816190 792835423 541913022 827257991 726864578 931478961 252594480 53795393 475429982 562270112 513091082 93889442 616299808 755313885 352108700 817449256 124436040 469925144 894150261 776998725 746800780 724919504 635919191 715681950 659926468 578774382 775782688 416471715 639149132 54182785 487927286 96987341 678549582 379344179 366487882 831236483 784865635 2334530 218740068 12960688 600100821 436246902 833755986 738813795 273821527 831656255 890168487 557872831 294289277 674868501 634598134 773956029 843180885 332125809 60775085 822809225 879231639 403172743 368601928 352968410 898340709 23891601 977074906 162095258 683583302 45725719 556366035 134348470 873847358 236516519 617154650 366248202 66463512 432579784 108871013 455329445 259192031 482946153 53416634 32595268 686985745 588694971 78691954 432516467 155630402 984950603 603646554 26813230 175750021 639392205 278911265 53227308 713285408 740886688 300314180 351060488 833193328 991526682 516937998 263972309 569252036 660605457 125812287 716703050 118957638 456527146 397471390 358400736 827403912 740352204 72988110 38132272 142857456 859183413 74785271 33698748 329931019 298161266 677397938 371879195 975089534 865444730 995195822 562460410 214093957 635204049 971960880 338732503 385710222 792254247 233233039 333962746 449793632 277820278 484562713 66886585 950997874 215922699 541999420 959339040 883478957 886245236 490258769 981513804 932238707 637530747 602744501 527008752 897471934 699415440 723064660 462000301 960101580 324509624 302695135 795085960 837403609 916043854 87020563 529598536 650846659 30108330 208813153 685818899 240244444 901056092 941378120 624564248 248258222 224221622 278588608 682016441 547200420 728413171 549747040 186567724 764111297 27327569 508796457 475635837 8286730 508436184 997346082 44952703 476083600 357086148 59329118 935620123 987968059 937842892 297448686 772029479 278177951 285296089 279309353 911289665 371832823 717631431 504529349 292341371 922732872 111177435 24535934 975662989 440481869 294675881 795404974 923961426 184276756 973958854 403483703 853088167 496707230 174356020 573453952 697341586 13231910 961426410 786101046 497372251 530116839 202963071 228524604 96964927 265419231 763204889 568957058 543064389 511269387 643109239 409157229 627671838 52933938 280866819 13567619 727226714 854947861 371731185 577511099 120726141 800919765 314779420 559499363 627119398 13593436 550715083 179837640 445124412 77567694 359864110 120857578 930906314 641988897 451858065 324996756 925285011 547198373 512460253 696677946 760122025 805194000 757438914 695562658 863084934 133502903 169413118 48539975 520332524 164265641 501964707 153993857 175775736 543143961 476814076 798211819 200922822 22161082 204429233 843651570 663529292 79913408 882521067 609103595 840505246 631873879 322462336 320975491 903390822 108994552 472526104 629470172 804717951 949950411 74428356 812477359 658180169 453252112 909657580 45602555 258609250 584139375 330502573 620062941 730038547 401754265 514776100 408725178 448579995 702090355 313183026 635631604 722088268 798747333 654003409 493701490 928182189 779965111 134730519 163030462 448807156 260880679 434743064 507880909 441824796 510656886 776434868 394008755 744058120 816242235 949094668 345887160 138782538 688126341 798411789 880146595 894100458 972598338 279890224 32453480 120173745 209295572 301631604 457675734 199793382 563606158 230304614 353691869 196622081 369696551 807050258 322601549 9587935 696791922 991492889 671095220 534372583 279764252 753097895 43473252 243886559 407478254 907132157 82228536 803759914 880831193 244672629 550283589 802487039 135594183 463785415 577515126 175333376 375468628 186931308 999553035 783097121 688840796 197181315 223257403 209382598 741049720 946367274 776560390 97414187 599896905 283874747 899972890 315297561 950473709 571573420 122165071 52562832 862339667 545876183 882381915 485643179 742533591 230251507 425767337 951551131 39956974 709759869 482455412 58549361 84498816 814338479 541489299 91171792 848958432 868577048 672424264 385512011 143160138 104633349 208985117 501245880 433118685 998970074 966645300 295447288 180635853 650332795 741627770 343575100 558620891 904252069 827849203 680996485 984133411 634553552 17210446 622035371 440517485 560342992 696558594 401536921 815309973 674849729 792064250 287430731 644250331 474909678 908570079 427058943 517664353 724818701 239840159 826402803 122220680 128873751 75766473 194847346 977961813 791278839 671774078 461200919 783468473 600416099 607680774 993316777 591018483 526862953 232942515 667592089 159632868 588935166 604438588 487045959 865299608 927937258 718530080 462566368 763348073 536118583 788060546 851327503 958111505 104415771 869642377 666504372 253532699 965428052 745798451 433113123 178533194 906178063 141020241 688425097 913456393 26917008 700671726 968793068 601746791 482549850 399889114 313710188 40056370 130342241 964387231 210914069 149731773 75662568 653774206 737037329 613843461 627684171 223691801 734854202 329986403 56828865 583250414 81163195 433999540 15019652 869723492 420433763 765255871 682787976 726250831 980287750 708047215 392072000 236751673 637391298 137675180 132669222 765861781 53865354 126436072 699514737 193306206 686387159 499828200 765504711 165950077 405784549 117235559 447671804 689805904 17807541 602814070 965288142 913526590 70321094 379271766 614097710 785510393 948959291 208926774 590352328 698657740 843636779 63126824 568896612 792046069 910238646 987771051 318913733 101003228 534775242 974470197 329465085 10014936 637745921 29553341 6741409 431433504 319988302 211221257 579557633 363573432 809095561 75950592 717116337 563998827 953570427 757165368 124978735 589546235 836203913 47774768 570059111 341538495 984810937 682689707 325804413 804484916 10584075 200459331 610127035 267539014 592521600 792910137 311709336 761764219 652447423 576242969 939755474 599714803 212838969 622097038 76200331 360990349 148063512 512687446 737508356 991878002 408095296 162416556 327433024 291805656 451317804 973194948 94724466 626852388 375591341 17442162 240390742 164108226 980448680 203133974 381265743 676101790 979539154 672429140 897943319 294183602 297541951 956918762 726721696 184918714 57004838 643520712 281823659 203299904 139365758 400582886 639888418 793606432 329135 170247878 102947612 763436473 447359731 365914072 403940259 238078041 554176330 939868228 679896213 892079184 399969430 721373501 949809919 2738146 842078650 594121412 259256673 123398927 989213902 340725769 592053975 351913341 381609651 873134631 293978769 486997938 411033451 780219218 882766369 145161513 520668120 387932344 310953691 482393278 478645717 400771578 308501346 51606993 792434692 234546387 432992487 107120584 898883654 288623796 927967853 99282999 678560333 76830342 934419889 843737188 354825178 660258304 261750421 453812394 374155494 982993073 666593101 307430623 868679406 95923205 558150506 635889963 850076871 51801058 931025515 707261257 415647949 318880291 579457013 549100189 694312157 496027746 814904297 332842727 415722939 55673306 488037114 697787704 407693870 260078717 905947805 609872095 253266960 542239087 82739733 341419483 151048935 176010341 418301910 705606704 702591571 24780817 476222513 113791924 316195358 32501820 770546435 463820921 702536171 267595125 612065788 523039059 758390526 608954556 988528472 212015887 117386726 182741391 51863413 887840796 592375616 482242012 231998569 218318549 896248077 236581540 104529375 285440152 19504326 680795390 47769951 134480666 270371922 344314470 638813022 494194006 208738806 797262463 221134906 369364411 495044204 174266611 986224606 67090914 521787119 909407017 851309464 524910275 814376065 961510284 889209803 861596204 867814292 614444737 844355711 925729329 336896895 438373585 193985711 831614102 100927805 135068385 111514213 48404276 792670540 493382127 277738284 725617080 195958988 600274140 921226122 294993288 644529666 124645385 640559354 38799009 960170841 357966296 467779825 152486041 223492577 941999453 586262563 796726120 388741189 648262342 881719594 161772378 783853975 331484633 417169598 85330608 67518078 630340846 433143520 640785571 852928811 205223448 942887142 780934760 217688837 367644650 821473205 832836940 15837738 277931850 495795503 492292135 28734541 569627992 949684572 184587641 40859810 541200516 732991960 758667945 572062035 721723097 684632982 262595117 981530898 660600694 955291647 833240132 808021281 395576238 809403094 381170174 578932142 743429452 812480751 157064019 998851644 776013293 989842490 580200783 517154097 956649853 426286485 552194472 13596972 213504114 364319168 28566600 735416782 305082451 862591865 453272938 412204835 87210413 412851283 834950428 35638733 456644502 412302710 587641707 9690290 132278037 576540981 789499452 979484249 808488096 535335570 178115121 40299397 826376629 471515802 290412461 118777920 754656227 497560327 698654762 756839623 473064397 759729922 61253304 428306520 372124847 531769729 914020027 255397808 572966031 858799468 724720569 582149980 71851461 285998307 624478648 645391881 579391081 148879281 975255098 262476970 593544079 48907109 109252129 169094828 483041018 457898679 721001083 943784885 681776657 352553622 610339731 666063853 658321152 43432122 196874251 215240726 882261862 253163978 215096985 116535952 130619362 644148418 629366953 556769838 947985139 589186928 911479253 292379967 452387945 215038464 370019809 622914716 718883601 227582285 903150448 6657344 100234166 288831711 145270176 611617599 436490241 113843984 277167469 875113764 587225645 783847435 18120781 553200854 760891280 583563215 234982398 115399038 292825409 898691934 183395623 488398513 473292229 560498812 391169277 457065254 867637792 544345782 319144813 645300947 618065572 853326242 627687197 341982131 724675386 746023951 879024818 669615839 47844893 939744069 753353820 596635844 371785548 69692011 130611781 96341436 475046952 136653174 437241291 728991648 551963523 389962319 737347729 429159583 365511643 629250101 452465894 467334864 983599377 730190161 604990234 165389932 85163740 527583882 222259692 637694342 829883492 813009106 98283672 132314315 252692957 42136728 766386384 681746471 847876736 626927888 754450173 920222561 652157490 13710981 126166664 690315553 972122553 514648433 341155165 762795270 355340442 493531318 788956939 977847865 554642999 386710840 69142334 985213127 860539283 313833947 485574814 502030488 711245358 225152419 685688869 925548166 34452821 420908007 582811366 504719332 116376842 23961933 104698478 628643401 827044494 945308269 867430076 25448098 340256073 914963293 149041906 884122350 360001052 405645196 347166708 317044464 654592911 291778032 345745694 888988447 92566915 98419073 371830838 60159230 338545033 650194102 125870943 162048544 363528607 496844443 308523157 403672037 521254738 702086046 197458538 188769242 865863090 673633764 758927122 772800560 867336945 417635065 562180911 752801751 217495210 44870899 449467130 121539747 569046517 107318031 860574147 359646625 260465627 139149290 221364815 484505235 957375416 241482315 784870790 181636209 661197150 549845448 213297943 547161583 219506672 272830830 328552996 5014677 126109752 565572902 70274267 308321410 244281573 838378267 582889119 423435206 96034654 270230665 454820163 498120512 383112577 735532956 125660026 669460466 433138001 129501916 366478460 20431777 180209855 748421927 262729772 870868191 848819648 449306785 811955241 38479002 959217365 347570541 996343803 765084752 259857699 743245517 83920852 338921775 833919577 394398066 766580356 99693126 401410440 89245180 67430064 493374883 634196043 200862619 172157361 760769339 214342232 442602479 956266703 664639753 543753255 430206923 598212506 79308022 88583947 581051818 614314814 528702803 738275214 145740432 920006683 818140308 474558634 876657261 924902582 216746603 708502387 286244623 899550268 240951533 700376602 128606413 362340532 366672223 350900322 949854130 155090286 881825204 773437553 907514300 825668538 49726655 499489341 480308218 119599354 535245820 249014365 745922515 503392288 475644329 435789783 981139113 258945246 449239786 459344195 422945214 838794105 300466621 457089760 377453311 133897112 720695115 336169002 707725876 792544413 784920438 88932413 286449437 954788859 916758456 320723600 745913911 946610000 554782869 206601118 337388424 786059399 798093796 627598207 974838316 737540094 927895054 567500104 451644832 511842745 201613933 356883801 968490376 10365666 166990522 978179061 874884101 573730528 488053211 703920548 391904544 848265788 919590710 665063175 391047752 488899068 301166707 870577692 935615968 410124575 205221595 164368892 197815221 793350700 483470236 925473212 835410047 819708526 661817277 124543313 103093239 323725322 561764138 603952526 430494613 173625175 41209337 172448249 486257975 723853417 563798023 522613748 724230582 412140792 31430187 977793469 293010875 421018532 566642330 965901651 579863300 691918843 131479381 629462461 988557487 917765846 891245533 98574322 158444172 376990936 831264260 429926976 946605381 133661423 507090171 272003635 853766559 776819375 304033892 795656997 397453276 730231491 208751789 369412629 888174727 812039260 643462819 413540341 471266522 452893146 333599592 370744227 207494526 74013110 56394108 417605076 411865638 458522431 284188793 314796834 551669963 637586054 909371132 337993078 221261341 807213299 801172284 207713642 982090328 744131682 711583849 464303245 21734513 515957714 343536041 391089088 952479853 680334512 399928860 217558674 185842050 496154562 628553691 168746470 447294311 819700069 214611644 937883973 136749490 720471574 445472031 975621141 371268963 220232675 955033405 780520369 764540651 924779080 416189069 400706512 904098250 380095020 368043522 243878158 691014731 498165730 745317390 809205449 296793355 536086928 980029754 803695678 140113284 924949598 998722761 254672870 168360450 741636811 456239859 307427581 962598344 221042110 124044505 861040692 810193820 512491357 279302029 825528316 978598803 997501567 314110562 786900523 31641294 2849994 280326509 296949442 210521508 757997094 823784012 292377343 71341557 863551299 10683500 504237734 543264503 340189902 518302328 517542451 814474811 178837311 148301430 221097243 577579699 5185811 114665455 561515764 839433258 299067680 44150375 132952430 970799661 804412823 336425340 63916122 556315356 842597824 196053118 971492129 571582440 384689486 557886844 57050370 14237973 425714455 571253868 990440194 577559097 976623812 539448660 288885690 379418336 199870688 884957071 445622275 635615920 260365137 427135800 678130538 655048109 753916124 532589048 184219333 884249116 330628734 387949575 699931126 500280545 619075319 830970952 764722070 318571685 985363659 229566899 647414467 145787983 702854681 763078864 329268863 818792157 409597807 368800393 302163682 655857406 943717796 72089971 895567121 618237249 411710548 554432779 667873019 567414434 171193440 809278075 63860248 855969136 184735125 476969554 828719313 20494379 118606434 37596454 110179084 349865387 665750143 685081129 285830460 506881022 775462440 17718719 334032975 57917435 436550361 763248242 379063909 856119561 722714476 109005567 445484430 121368297 329843155 724584412 236734644 94343328 895709533 85400972 877311827 179869433 911384393 912746677 872530270 711264733 750204032 613094997 473301461 371638030 910424104 786350138 916033194 395585806 565524978 127834669 847160480 469462360 45289 222895250 417921798 388901339 900280683 721967998 286795420 346486842 251435711 781037062 683956605 184214838 672210343 741889638 520675369 769581374 801463582 610853256 944397432 224859325 794642338 783842483 788383191 209706781 104553852 639380817 877803069 744807044 433209693 686620341 281409557 473783364 630259859 593641593 101078845 457539101 522798916 462086268 356373890 601222247 902504991 531380447 269191340 827626818 92809669 242497278 290702926 670156394 140943572 27288149 490267982 502944989 597097096 780516400 616654063 611180191 52673408 968317053 87105416 899602437 973970157 728507069 767149592 335926894 756950583 48927800 723110535 272164101 813945115 538265768 284229616 750264326 836119618 34297958 276081569 110493330 442816237 742294971 336751441 225084196 773080316 174466047 496579163 765145397 67032875 694505175 345149259 879731367 286811285 714923323 746094477 985397461 960922519 410399600 193440594 666515471 285409304 231398404 303603626 951166185 967401652 221217918 816897225 369646286 522070090 15853450 59108444 25934975 876945221 735287569 819940211 921536182 309354835 687105354 850653808 452382513 540981329 246277652 584962900 775319745 700671655 165269730 951621259 895623951 145570099 522582047 931849990 691105969 881684147 216731871 428646573 703300497 993717234 955405718 90414864 834456102 284772720 662578150 145518437 524839780 423032443 45889339 23730911 28312997 958017429 733782679 812396826 954476029 28466793 259582184 247885916 718386978 717816164 234777524 811668154 270029860 436989442 192175840 611627254 783071973 747393680 162679368 675387230 200998143 56567678 813041906 159325920 150171281 587982841 148929516 652117275 713691295 991299406 752216867 480299339 726617024 750840291 202035085 703576472 811831597 416253953 687189809 583634726 725988806 239222922 828301034 205665492 130882332 257248355 785254407 648289741 737834158 589714502 510530924 132789349 993469927 27467547 355514651 854340824 455202201 631577167 246969941 826273317 49407903 626425978 598979362 409817365 240319491 487062427 408520703 639073273 478729770 752090697 801941336 355817092 105492558 771356507 473011611 273077404 376858863 15040532 429685262 722802214 240241776 425547540 328400011 829316307 609906538 425151577 430576031 792994112 113081057 448163184 206250126 734088124 203816908 162350693 10187972 865713233 937702309 428501180 395350559 672084169 941531086 97696366 222133677 991423697 887015994 69277730 288232416 65361838 430731162 510492602 441008841 871960141 963667114 277674993 636379634 925934018 617280043 55815856 887434048 342192529 978586759 115184869 597642411 853328617 467312762 497230193 729118040 193497327 588444951 446670168 708707279 795930324 369456160 734466872 325236635 363900053 482104000 259462281 770068418 249454669 848314257 838725156 387949892 880085799 143115434 882969185 288545676 703435252 946560190 36357286 235967000 647804720 368940596 700209589 565216391 207808551 491414816 545212196 576422218 188368250 202012739 396168662 745108457 536171175 640006923 708993099 743828443 580227925 530086741 572982233 218033885 633596972 769278904 933489741 746165105 548078263 28706460 452364309 237184640 396182298 919278300 636104556 79877980 209423963 770054054 478084717 739554628 959253718 361315812 296897853 208833423 557134295 731554009 19029968 758835766 375090295 982133892 108014476 88157601 891326778 569744937 423536233 657535010 452482254 821566259 418530877 402456837 397353718 883833233 387222390 141677475 484566695 472053817 43678512 935317525 365871843 308999350 352867973 700282831 694713000 774832080 680471472 976711698 950077012 539979836 436404897 422940753 886733422 626058532 633831975 219328944 868472516 843636211 557680635 613782448 84835932 129051708 536119134 660105881 854568574 426066464 518117328 702221794 349309291 418469043 305905786 769033713 569329041 729898983 149559286 318531230 961967612 120965770 781417030 183389837 962200826 185243252 141586223 614991853 645916487 766113592 410706734 234017963 736413541 121855413 442377492 507803004 280576936 231288430 359309786 675508611 567771872 503344178 830180472 23162932 66254813 148715137 838309679 471610999 230369504 505894836 102010679 873985632 95885442 614651762 886957098 708984855 597563879 286177732 382562632 610484659 609457874 827039927 502290602 870467581 824789870 548770515 626096792 167870115 230762749 708552238 991021404 805436312 199537952 125734560 983842806 643776955 764389304 399103804 799743192 809502843 768859652 406189309 783327920 111584189 593290902 675238414 750790439 173804317 817244159 463019732 63466006 853068733 331605129 911540955 896811479 303766924 650710438 762071710 259374589 144335026 560679127 186145247 813410829 315435089 502654162 1075593 592827979 414940346 480979778 564617911 574750678 579484001 979209570 891599067 354919546 862895917 294209809 400439525 337673466 769029830 549155867 509553554 157039535 419611202 328201834 808848888 820893448 136903754 678011322 451239848 364066072 565378936 561747302 112791049 673943681 29170461 778882448 126549059 753705813 723524734 353350894 193215179 954723644 459541670 893274519 623116747 631024555 661603805 68284481 307952873 717711073 738056907 784397114 29872195 166868466 641289115 774447967 792066212 879272308 587517834 656058341 54373736 71529325 642435928 571229256 894507144 393166906 378350716 967127308 831216198 924465787 91096297 669972944 267969531 950998695 377608209 166805903 826238979 952425753 273877926 240446283 858767180 891760586 672393365 504997947 34619588 227333133 81508008 672221272 860574135 280082987 18678165 883006604 1812935 316502624 377891140 643728380 778445178 765479543 901239126 864911849 364071980 783800685 358697563 409558478 371493397 302494274 708480869 343777564 184422755 573701754 561434296 156981866 564537661 39991230 16428185 158212340 719449221 948005642 584308198 204047719 39839802 999637322 211424326 788941916 818422460 890915636 242337700 511468375 596386577 706793343 512669635 525698974 890008923 763401577 799707138 12046126 806015298 686718234 905096701 493816134 447153157 92643755 301184623 778335651 401216152 849144946 525333068 469351083 158759533 152082782 61537782 966951454 200318588 941190144 319128230 201399135 259319896 951794907 571141390 213089572 865730220 601940350 756778623 594449783 780646926 454038708 533943566 735884128 920600030 737411443 222283805 477729993 58501697 410393108 899742546 690055703 686685694 936037994 323667090 423900497 676414547 521480501 747273293 732240836 876088946 326311336 721401748 831961788 324656405 809259153 125384994 740968442 515290236 723403489 178406276 731529319 437258696 320566698 226642800 653910600 929449959 807473897 149131762 102902536 268947654 122692159 394877001 836776665 860214589 563466789 39356616 192516262 786330250 941090795 541691183 746449967 353567224 191537972 428510473 368173275 311677231 543067732 521415748 840024501 887948438 93638995 974460028 490503325 516474230 104028552 436273158 739458488 194254777 700543934 286868134 195371105 564863684 287538005 505262609 839392505 822944440 111724360 229089950 99997318 28285081 566772202 819492314 611933767 433362823 352952616 522565537 920561434 766233705 855040902 34043063 363880038 22832195 381915286 218288798 167047897 269784951 509491241 269573531 596832080 878177991 521897037 52531088 908689537 185126780 899838213 38566583 94772553 860682095 627425396 840144222 622710264 70957425 866682470 16825130 74742661 809293405 328697279 787649855 809250205 48214880 16781757 770093895 599929897 362648022 12734888 837029114 113542659 798628183 206680521 693508744 627284555 959352693 929807517 125331162 648735401 138603986 791393622 686322468 364922536 286962681 966512115 229112140 747763508 933377571 418604007 495247206 948601011 233907594 451963965 66692071 169795434 936199609 73714809 916278864 566219751 917838066 385015802 418140696 192614179 782806622 384745623 743218288 269224455 318605709 233160381 894288405 241258873 646141513 207798609 640844689 787784802 39926628 958167070 953420403 406542850 584028292 23252060 333757576 181689286 794230379 509493297 208388320 404839662 59008433 654927921 55232211 840334345 271626629 989353556 361503894 947534993 362997235 424143619 765866193 344462464 706269925 193381137 845278240 270428788 258451760 683681497 390438825 537027096 348244067 298300765 507093078 856896170 594378565 269433677 279914440 782308511 761770816 234172150 712590094 573238481 346602487 975957517 122965 714628341 901474429 641037383 377817565 827337717 563110283 786020251 687060503 411754625 248487684 622987607 598016276 535342194 351616790 892334322 539588370 879534283 895608021 642597554 252924552 337472069 192677163 760940017 469145621 829637444 974841141 589178764 673871347 996948843 650800675 383880937 538479602 183280959 799193924 365863645 419548915 589377539 654012745 463537846 122153779 1823659 595080052 787245383 624195832 980838233 894055639 272250122 371842986 46075993 800090887 572814415 776112071 550405362 378322770 307923364 365494525 949158987 799978955 65823695 545980322 483390436 795587667 142808577 523317946 305970684 103220350 665866011 980950311 580534631 489919406 564683765 853926354 408263157 584100486 331446410 356518470 500939404 759617608 727341303 174477791 555668246 769118367 337910182 57970049 887121879 117021729 316397149 80623420 539169871 530134377 632610105 747894874 843549020 796363425 294649130 549633996 172401323 806835503 259200083 384529214 601438208 273489441 965701554 354924700 611212013 993693360 616660486 21805555 251775473 479430544 978245510 547433390 50307031 995839616 859921084 495957750 625773090 610989165 410894579 306171946 686376699 366003132 909013462 177738062 996106781 603552734 204609351 513842934 845343343 339650319 561010615 624272906 829628625 686265789 612563013 929895015 438617003 121116687 706685507 953140377 571761279 550801526 947299606 120697042 357091529 753387198 455173881 984465997 288387128 137119047 329514135 863196765 228088616 181933792 175882924 855376789 368851231 723191653 820796884 669690459 518644572 69692894 986801949 342489312 210033331 687467158 943956420 313547158 468571003 873700591 251227877 397992768 792577661 3743061 300117675 406183012 254136206 617014631 933941631 858572094 638288715 803875789 310045007 130920093 173188315 26057028 824238067 94302361 424915739 450477232 997086890 398679175 873069980 513185825 15442905 103577789 705602150 628481356 850595701 615072751 470714082 931006384 133273688 27461103 867677255 527440895 990280312 187790787 709561876 234508631 611667536 926890986 406405676 959129786 40478381 304039875 800958579 967522521 399461924 121867245 922369066 837198483 626107910 600222163 245201497 379329767 285875146 763983539 379145038 82810462 120729137 600466410 364065349 480854292 213817858 402248742 32618771 946353992 886288623 839766110 327429043 902318125 541010253 313168163 992812465 605591346 883951827 28078192 837044050 513901651 503485812 738118348 642448720 177702073 715237514 703464858 818891269 202322938 807662147 263688578 112578967 221893971 707427540 102612626 122180659 955428908 224304752 401791883 196478316 598376939 842161182 381281623 323384810 777452430 632251179 774847513 783195785 894089601 674068435 111485932 758178936 584791027 814124582 934733182 150056207 346882147 150008285 791002800 720964816 360672039 912947504 204499472 524387697 297814420 692455610 451156187 740823752 613863966 844967763 553759687 888184914 781486049 658782155 12211841 22201364 339923809 976961530 510771067 807236221 874703603 836992904 285599934 573508288 207644851 603779417 800226120 900247811 905824430 403435538 662549285 131081978 731541336 670109155 717151779 744583223 941104952 994881316 487724461 848576142 360388356 739501665 104608126 109977081 509512806 129478370 302280714 981668803 521057178 382804207 138752178 963873753 972360512 702509636 721013725 892801041 658132741 321352984 687151450 553720917 254769229 834354971 401928735 775462094 877422148 942054030 632546545 424027926 309390949 596911779 247550219 150761957 408345510 288055577 191313539 495999595 356942540 43417984 205717385 415896043 855989370 581683366 267791710 434777003 44217273 411804187 677609758 154908642 983879546 925738909 267799276 872426451 169315285 12675930 457760365 522954494 222846481 295424712 108745641 482845800 396233838 104576669 227094675 813808533 926798068 58814545 670705391 673512929 230511919 295495006 744365154 945663819 461354752 472144185 142433891 946275318 386518936 29368732 862737482 114834382 963983338 594854242 429845836 821821095 768409808 331511881 327183116 495123927 162845775 261124043 525260638 841782809 715737499 636320212 120057719 310582144 533086869 359818330 343590954 71843605 286774456 243949448 200828126 181258455 759756824 334982352 288016766 822569843 455215705 323604085 693739288 378571073 160527391 419978109 338890870 36702776 381513246 616502794 508476456 274544545 488521541 198514455 689912575 680837355 712241274 981089529 466712890 21788798 153729381 247957876 227620586 856270355 296541411 841660860 958336754 144584080 683451993 80048225 176736689 834164575 279364696 895995023 600768592 53955966 870776025 697214585 355632655 456158 267738761 308566262 804240818 785096469 423834553 906426550 384873410 240321457 798597429 433383020 80376819 733903869 914531829 588079079 823327242 18973610 894513804 585187711 441010245 709956366 304286413 618989851 891442726 988756751 744073392 357268524 645168248 820849494 749481038 355182348 931138673 51412457 879710101 837604911 955915788 198246146 471912385 329850424 949914511 162949140 623446047 431754442 488300304 723648928 413943118 140183696 990596852 741225612 387446950 94017129 141157680 416869585 930670078 394561895 102789617 800062704 370844915 526865419 765104787 530628554 218578441 552747139 905893268 660668141 768112453 14444341 508540479 941281347 91773939 98439012 807169555 280166301 911425630 800356594 586090428 288437172 92530408 637404638 199841514 838839937 920166068 485744261 829600822 699036368 619808359 434211710 428958389 890793022 515526576 712216782 854520033 385122181 644132638 488452043 222200914 166834222 529256623 114922057 305680950 886814271 831790906 123005253 13089018 464704663 922687182 577160147 765560181 280272163 516398847 537966380 57137459 953657414 436391770 261464613 981228906 867077867 17766842 730579605 513965920 371634950 575323844 414077467 155488277 400061634 641899750 927806048 530124751 446753083 326932236 420844182 543737580 126669833 767762871 646018228 78399721 249530406 106036079 908731991 354990618 515930924 290773029 996734802 809611070 645363715 495863806 192636905 159604021 752303540 131676058 760658620 214631653 983645298 741416359 674804997 647598804 662158327 334466204 656694001 47194140 767409662 274680829 227393828 531663860 43582182 327132208 885003043 560890569 86001847 67674645 563307071 641468044 774302267 237069774 495777873 500838735 506574531 676726894 172097824 489573712 508058979 286978886 80092598 901544176 3153663 121297697 655761819 792586502 639875842 482230809 921461723 620657207 603698215 861583558 742753673 411217444 137976027 838625402 710566055 444716175 806595404 302767121 519902438 899201639 337983590 557242328 246955296 731448643 189319221 18287729 323834103 538034637 119338714 936197816 920628481 4137865 915116201 558467595 21621858 691919570 861755583 49714753 400789659 264178418 865082932 80702711 833511553 865094757 168747882 674678183 236572947 770098057 468805644 655517966 151866084 755401162 20122468 728678458 128590490 149526704 2475401 519928569 588705941 543959360 39447897 573695853 605473577 624116181 632079183 426353792 385118399 701739051 2227972 587869242 942466752 263625447 552828367 75294803 270904660 64895978 201031904 814023696 69533083 956969489 471935434 758316532 986492781 590656670 835500288 500062720 3302314 349559394 226078186 763573088 340758419 667712409 411020911 244187993 779516792 619173486 106650688 33266630 527623258 952838701 806995202 966591685 979154992 853572933 242256010 502864967 863107870 889002756 447718019 746788193 192437776 105818356 533888268 362906654 732983128 695961209 608194139 995743347 626975249 218113614 476506879 349870250 93229891 933181550 732483108 395800722 943320068 506019433 437246548 160153993 223058710 632941945 608171130 874166588 834963712 338485470 478498287 94649738 962058153 667274628 110820681 561774504 172867306 196203047 216075977 867098704 321980527 553944941 313259848 54447084 698759945 936284380 357548946 788625858 256918029 135289901 849313711 116158208 553768350 113663292 359988484 652403843 882266308 371514658 274075122 237651500 418147841 854219289 531499118 717200239 453114624 548021935 110701384 832215973 120504894 594892767 24092419 324913725 901640023 173429085 45256619 892218257 541039904 768510795 868747551 572471582 276214932 320933666 187910385 248951577 396470133 227347408 986743370 275769128 202816396 657892392 752934205 215487623 387515586 321104257 242034774 316615183 7865993 302896904 671678743 394565247 617934291 112264474 586516364 89132367 142400173 805780832 267933983 887036713 632390782 96146062 143937271 473934054 486045072 313195743 307963006 588275128 393819181 107276162 150368036 507593991 628343549 326946687 857917437 191732991 123375106 238729329 253733859 492830416 869939793 11824348 429776187 749499606 332958256 267549672 170176432 814163957 559833392 819074983 112271490 874928992 685039765 300251915 488980992 656506263 669898438 728887306 849355053 670730575 507757896 56481518 142378933 898332723 240253284 10834417 271724372 671849462 693326263 503735733 338503343 701934166 337987787 141072105 80426992 675743673 97484849 845817151 269340384 699593338 132578309 419195301 194617834 781775294 413927604 757447047 449586282 501915667 905630110 984673751 558282985 263850318 580270959 596943558 452938226 886913827 1108664 106633768 475089857 892411562 984168278 258905571 57384108 422821026 971359117 90378465 935939245 518684946 934854978 551424956 22790300 806920195 857981109 161282394 285546121 271933912 174766730 555175625 336980178 854372940 402935585 389610176 707445265 800013760 299774402 259155447 439977293 138816875 831505220 378553057 317412524 917729246 518092248 634237112 732202433 69517503 468932285 838235478 800984855 682754380 170779642 572840848 218470560 863165389 714472508 71565535 195254419 725971595 623272762 442166276 687555470 258118616 752203392 129531717 680694426 382646415 702831572 108409799 861986229 777516633 573068708 857318543 101523077 373072804 352958629 206029853 554135767 57407338 124026599 201002531 219856795 707916090 820479308 513891145 494536708 42734663 647922183 751243316 648156797 991431720 303608265 103631096 31449509 192370546 976573063 684864709 558964599 40812229 785816980 62369258 339480160 638217724 675064092 747604937 172202332 988013379 449377763 712859185 443013572 864928666 317030666 866846984 521686978 474439671 5036115 510342183 166169644 477324632 69978452 268712888 825043061 690058787 927113959 205362093 908856735 780671848 495950041 165215348 939376358 727473957 898157054 135063752 261914941 876029817 268440970 622606783 928282478 676509003 161723423 492093301 122860811 990905905 344242226 919932250 4642260 797790259 359078023 587660458 259720583 459290032 98849721 196345363 614944360 996898799 71708595 101278104 19888856 500147951 125228769 622193475 231668954 872618993 794008955 369747823 431441144 828666182 401387591 674640707 942507989 478209705 453957992 577759248 571293975 670971288 518352025 982522818 259291616 148368815 734042751 752147200 381902875 174212817 113684804 765307720 50935524 740699397 406753685 740329251 288371706 704343389 425978416 227804652 688412501 168251970 93815451 217091500 753446433 216525452 429855281 391362107 844676695 214023516 362578544 924322836 446254887 566364230 366933736 762691688 137293667 497893422 341366173 45905606 320949375 725853763 748818376 553425084 467778584 161460978 883460103 714757171 677104374 178185373 261744077 908604933 864332541 997180012 705887316 356128030 10849343 416099378 85809222 326025097 276704400 350600095 177709792 949710783 312619514 336853289 11904661 687681380 126124622 700004959 128797456 479184783 516490057 373343946 491417692 515001981 364713114 948980115 787054160 106062318 343371711 805801164 417696990 263918849 603517929 71468122 748946795 220561399 701157340 715929867 631226218 43706692 61046674 949918114 271131902 814152824 800703879 528266139 807452679 397888781 852067314 515857892 902436564 966652059 113184037 581219266 373935233 426171 612504045 189263936 927751719 490058878 207251501 500977519 103925685 688633417 942776479 618289890 747331056 794345611 227988890 533969057 675882856 644735941 416088125 480696814 797472430 310443525 559110142 103956676 983087302 181633542 555721179 902645386 929478526 156823724 832153324 692436867 529931403 131861799 344808646 616551593 624829717 978862910 892279140 994466193 515279656 955354614 832955293 718520721 293973158 378324130 899451692 469451748 716417668 257457341 669263275 275537083 799327775 126737052 194405955 850576476 409820964 559437469 736796803 700584774 351275749 150532673 39769157 642154112 877685910 899551992 840463080 957300826 566049201 463016994 253394575 473530668 818702471 275131468 680080549 698647856 328152469 324510395 199183706 911531227 827751796 909166358 348014238 721220358 773898876 338980272 457883014 410116508 332207036 284418727 769682916 106968441 617042434 277640701 130929219 748670319 959009642 428715581 365129965 422297545 906155711 159231361 162186711 746851123 246161727 203468620 311791514 486313503 984720537 35464270 379378493 432473406 958631091 632465100 405550854 129832089 763233553 596847813 365720574 19424307 146294677 122324011 933347704 378393669 784522327 580604838 787687252 548442519 18764496 56875008 604251481 325289107 996450033 525328038 524802986 995669862 504689661 831620387 672891597 828771678 175764145 666506246 83260887 480341178 278185355 905434386 418305958 944728463 946494920 199901834 752751078 228158294 821899831 836689007 54423610 773289686 25273751 228444646 909304784 118126977 734178419 660411198 932787015 848219722 554261380 590008956 968422942 234714622 931492287 329492018 921212082 663272332 288331081 153576716 125101765 654495107 593491945 306292840 828058846 877488275 191057863 311594371 105598551 132808715 71888700 495040324 503472399 243388923 926107786 929296295 816921455 990860397 417275296 946039065 482689978 811920112 749225632 319996694 23999208 897318850 421530579 262768869 985968161 668434498 715687283 45303459 801852320 790460589 21334064 729612802 607896472 699713752 533281483 488980113 753118687 675316734 298932740 550669294 609376884 379468481 251454712 794709062 228064630 27161397 795974408 351095956 170117113 128362124 778688216 671218142 146885170 959248500 152655299 137394663 859256905 72733329 981756251 475163764 893765063 296869755 371672040 874633814 655427109 400055182 802518561 27280382 682627119 143475517 896182298 256241070 267912094 793638470 107839518 131359008 964916155 518613906 879173299 355819227 541071252 250825618 778974899 585696090 430940619 356274289 396839318 9405203 684171466 917316092 673699350 49991446 591246473 131229185 31276056 39288352 617936798 25820765 465349146 807885295 309634783 622705088 721350410 53516787 37732132 424371487 587451394 626255591 110326984 669783515 890873990 347061472 888642015 236541443 881639941 410315342 997963593 986869819 656575689 525776173 55191170 516308195 476272915 228976849 659912367 903926541 393319444 344390076 565507389 48375515 944678802 485870647 803363335 571946587 540077877 698954366 140083265 860826597 690280236 482147440 380008353 313619115 934052741 824513826 814639965 485585703 80553397 709420437 514553329 527371623 947854149 675070187 335741458 269976767 30173447 177620300 880123478 113648658 456177432 956615199 243495237 147586233 685868423 550032198 428562980 768305196 756435289 466723123 976114338 680742395 31957012 738005363 755086279 309312653 582920436 499286348 657685195 846762255 793146761 796305404 717590093 920553136 440046201 986896765 885403213 847708793 196679173 783451106 585883697 986791061 43950855 684216042 700800303 473289309 967230108 489371723 979965281 231193978 925332955 214514844 412944247 37842716 913644883 927434854 806647288 516280780 728442740 738994577 474713652 767838781 663166732 596622038 210952265 611355609 424895321 495409608 597009434 994004984 951206272 629350318 172747492 63854280 907023070 581775776 290290985 561588858 854766157 226230399 119941746 96338657 282603921 881048086 122612563 512315383 928592861 404798865 381491411 679623044 404410769 70168568 649339088 686666343 620241737 197135126 781010243 292891541 90195447 841998241 35551149 224448147 246495821 137978511 423411809 576950155 225988613 816371687 757097737 305961942 916440768 216136854 734565564 52552869 46302896 913867751 599903084 979574048 342813341 922852339 678543458 164521615 646140408 691953491 533124563 757908590 143370436 772113939 929922214 244365073 306742648 302387298 298456497 748688908 40373585 364408302 391695953 506147671 794026002 511612106 982227418 955636347 748807693 97363158 132639095 909740950 206412350 628452823 668384682 546303937 543642079 471651646 61813321 865618110 519486565 804834731 866184006 438610286 834899394 541944891 238384421 516803464 877638295 370699076 222906304 765218255 388941768 410405449 829612212 277252855 718098007 70080820 102861538 226464867 110473328 947524571 540393652 520563714 889058412 186807289 854967515 115136019 962963842 228073466 49085648 855725718 417032800 671895071 414088299 737420771 989471312 216189930 88764478 792432579 746779905 724730208 929251457 875661086 257825944 958938614 766893222 17852009 292867478 630719878 255479487 984251655 212232898 825702648 469147000 342284212 624688613 660641535 787691916 391978783 840203731 613484661 377329084 841472799 964148578 483707268 444018012 684644250 33921990 57376314 520549922 67722136 62725021 90018971 50672687 523105191 420711019 361400849 53414022 222289705 509103683 559790225 418186163 877374865 355105284 266341382 706422919 142057456 560694336 493770689 150140053 747955159 721697407 897205625 710444235 899132459 78115967 260074909 647445825 237901124 118696590 906641903 485989629 450563857 936157054 638512579 234030892 617188497 771773973 526368042 933645382 527142 437406582 551231485 113632694 559830578 178710419 513432458 600791873 882846847 300742749 735175134 427701848 942552813 551040682 155293220 597317676 209135998 35318715 952083748 764640319 324457228 10635479 55056144 500011206 559747077 283760863 452482347 605969105 887638364 48275165 968952228 405707879 885619853 208822522 596345342 92171435 593554858 280029498 562579072 581314402 751279930 960284469 847035085 32108279 123067444 323233857 643403654 666012704 439169896 4331569 709846540 173900186 96096699 316497970 536375525 545424277 209293404 331729487 825865789 30230678 718181980 955162780 107636023 62765408 9283580 671417749 630392997 627461203 956185527 346392055 386463278 42336988 427025461 668152241 225955442 618766430 267550548 128073972 577642736 933162336 381561983 837110325 769246352 862669387 508066111 867812389 254934459 25096195 21852858 900682777 202315269 876364119 867191420 367759253 707557199 569846144 19633593 211963642 108570982 146322666 39960517 279232493 920689215 405891373 215775612 764753075 89876371 807323149 865309452 309051038 614050304 41868676 396256935 718579157 151673561 517266409 737326691 746383117 705253974 218847417 589610239 725668842 658028463 177189119 224515939 505671229 674943131 549857653 703878701 832113413 230040406 19524143 834910347 302978666 816816087 455754825 158566910 601363996 333879151 231678874 478607530 679009570 482132387 270757938 893884432 222499254 598264969 393466451 927642203 913296288 990276551 685903576 863691450 362881826 585108740 627636783 767501523 237742772 41837009 290627584 837653723 497949481 941655446 534655025 172750006 680720965 159693020 878318508 299563374 47615890 246105066 850546605 7588076 15603652 460820665 572602597 993518233 589220847 159665767 382088237 848822646 950461481 530611587 78480226 132912023 677764616 73830784 391254793 297494544 359956708 126920417 394749142 443291810 743495310 574672819 300214384 649343583 47139361 223147063 569006539 522486070 237262894 465672833 236423409 77196172 946285567 214914215 831204377 67460884 612619448 258712312 989423854 108145430 816637426 601301316 125000278 659716689 508483437 795083998 335599280 597420986 668742870 293470325 254334645 133711947 378111446 809279647 846153198 578282182 380546609 262784864 382253179 721593127 482387126 995564777 320915012 673819713 651302832 466330239 564610863 208149380 47502226 495429973 856568954 167976008 122816483 252033855 747613853 441185605 25991789 900279729 112987397 814113770 771601906 626840208 950381983 998288175 492897155 491894967 441675382 46792768 207885090 235715747 809761351 144944584 118378541 138389867 657985030 987982000 52655435 486772522 758808731 998637348 616409945 297918916 428955644 547083596 550764776 856414706 532717823 629548055 529016274 545841758 855417164 798633869 982324735 388963784 107102579 906022822 453297840 488240254 299113811 588274803 462578056 788560667 353522829 535830743 67728646 103747983 125841179 234467128 646494768 682881923 195610995 577601945 267142740 56450201 731356386 67325470 503709294 73664989 371069280 707294693 235176300 217707484 120480318 542721629 496289513 757337530 810690631 345774641 203025734 27688138 788302393 476497868 200167029 374522958 321142895 649183637 21643246 911399337 143903804 885307335 810443535 458681584 831639162 551731083 638078314 43344490 540177959 668313515 341486652 247983812 490887471 683307045 765936013 471413647 44605447 96190347 785895590 143235147 127274172 169840267 473106381 65611139 721738145 315624327 271886267 992246097 210440705 890367810 123160834 805478705 393136829 557573933 509805527 723542790 498234996 812568160 151095628 732223033 377054290 402547947 842280467 707321104 153227395 652131553 804607118 763557117 488255040 887831467 56787344 808615268 225235142 533604455 774483195 586614294 883878002 35703417 337673486 710189539 364556656 911757501 289591504 339000428 803702334 97924265 983457434 379801096 463477742 854427612 594539241 724259255 935532580 406770158 603004297 19120972 272114464 504764513 636288077 744922401 684090972 813060970 909777161 92867114 600672115 45108287 765924797 437927126 890523900 151684061 39260282 282780937 445650237 659777708 333628044 424391487 195588702 138584172 370701072 692091425 602430285 995330341 402892956 164071468 602668553 813481222 549185424 972614075 617173885 577447726 903858980 351898646 494677570 808514263 656900440 250577662 35688434 696815688 636091679 59968893 449199404 926190507 717895168 414936616 520290739 223920330 949420571 379413974 913163362 109381409 683377355 365815212 430327832 308437550 305137147 274882307 341588598 860729875 539536626 218773704 992976980 666183892 719312845 907182790 455259699 758455145 67640008 262417733 455760970 369295604 629314049 853910168 679867517 164094423 514323866 891936124 956108989 822212693 727835380 551359997 310815788 401267520 445159346 859669698 889156779 182212860 846982702 893098217 380549526 933842653 631925538 244598918 5928541 621272043 580311299 383342018 743867947 305374050 742489163 418980614 351254082 158260543 847168366 192809854 320214814 492323784 660929809 278676481 150931933 546481367 46276375 438315620 805426345 102964137 893139298 751547881 642921228 128492717 816333684 459583790 787962493 608347137 359495276 826724986 255105416 948083637 817638706 738089046 123316707 290332595 120988157 126131420 5470575 549527723 883022959 306054597 860933632 453027128 570141401 184244200 399598264 768614904 428466669 483685834 254518028 252074347 318379278 657493077 105248285 403341659 316806933 19927689 693200975 83653212 244881240 838467926 999154139 591837224 250409076 385007088 495848667 409500341 838050322 845759146 995946701 333429142 571974698 93649770 76017519 587506236 39144415 446513634 244781888 552720588 737599518 487397207 411405878 248323310 418229084 584439046 57399206 729245724 23103901 53929433 119609060 890828342 751149829 583204151 91686913 351893009 10173414 951094456 557818292 669504010 935135273 450182861 341685816 327920070 325218451 875892032 275740500 338628774 161806803 780660743 16934698 116037681 819159453 194703071 427372871 255847168 329534629 560351358 574382103 802774847 576648828 803933313 549534467 322366697 582050807 164161785 192781731 54410595 501605334 596338431 490994468 432532543 502875809 347695461 153383040 664471616 110769408 923958959 976415503 127210842 303592142 76240110 215562144 675107799 130760157 246598636 294972291 868362713 455207303 156346458 873713758 163358105 974130431 827632760 702342459 15822728 976871254 19855639 736959832 566104702 21529800 282224082 893737885 727494091 12590354 216373978 594868736 360129501 637674314 86246504 403603796 703017592 838384637 312422758 910849286 612772443 326752760 372762054 568521479 746323802 915538406 952777535 552134086 80471224 550807772 38403797 278004630 892016296 399931869 871145655 291220581 84781634 162146220 540166490 99815595 669423353 414060038 755631402 292035307 492107799 926333925 932158320 436903818 329528152 516753756 671054295 835764015 996122490 600911260 765712965 169903290 542680187 560298670 621375713 121236957 214032138 394897670 94104615 868535295 415794814 391645227 273857834 658519688 262218444 411563254 359679974 892574790 476245821 622073837 793820030 578663564 715798994 928976416 516813088 306903995 535711587 54442667 435588404 719035735 440326020 287284100 722551105 934906431 758269986 669179438 241898004 397885824 634313686 566583330 119739237 636103642 219460902 979345860 364454648 159436799 539221669 789951145 847414384 995359295 799162023 66597293 780935825 949855494 829288751 706939983 298165333 679047278 975421541 594633173 457987494 314660925 760081666 192685835 72310382 161864885 567818240 716499742 827468461 474857881 363505451 484875738 40897062 282570850 324373680 88752433 564468012 283875021 38943569 942673597 857235969 532464173 425843076 852991031 654064473 607643639 853559346 443407169 414103600 233097542 301107959 909627619 996921637 452840438 509673054 820623360 92211847 412044916 25019152 747312411 634357940 777296861 710260428 979301582 635551502 69174044 438932821 893960428 246648459 971594374 872230257 898119419 443261921 24612016 634808229 357670302 501269361 874145270 388313186 988580206 777357642 743343703 930025122 132419733 840785669 165715552 898200759 408134314 31678283 818189550 744862075 301080608 474657481 452936543 240862392 425950555 937617997 811696050 631876366 237921131 695951281 496538597 844176528 649945552 936935072 74552179 71177489 64381991 777240380 611094454 53920881 105221509 824679171 333035893 13059812 212505009 245470990 929023610 602122565 630506777 451012908 950733008 948060345 951180594 592554858 778959634 872600762 732248827 943772776 652761153 23421661 39549780 700280089 729920707 212384303 702896147 708727154 47822038 928367040 928108593 306911086 987691504 746332439 230880511 784759115 793924414 420521995 591370252 893989954 798352841 864263504 512418559 223405284 11714680 524691794 709841677 5679456 493799169 454232043 374166399 801984602 774432772 719653995 860892135 369465073 32803112 939697732 433455164 261302149 225724218 611095458 126742825 140236253 162777059 770628997 936588107 120329799 711432168 835770599 621987435 634733014 966851397 961795591 904578397 285009451 579187492 967954462 645362948 58488821 718498115 158853672 886755351 425876579 926465441 127932358 181979427 180313134 609568743 243739428 603699245 543070736 139559726 855921694 877767301 230134038 55956701 232000568 924050137 963569182 892905186 224521182 501953813 841532464 997124886 324314752 744267307 100261252 301759694 124743227 520237827 542570826 31191275 301339319 764951502 756436227 78674739 931502355 122182025 862544244 186342239 33330695 701467558 778089576 996761984 263688599 530564103 973052979 498325902 39283628 115314188 656929249 933286439 838749432 840084595 917288615 748301501 585059510 303790549 224544000 262110241 64112583 139189635 562219357 999532273 123772426 417544933 808180789 389330545 503740796 952604291 579600693 352835829 932015322 188823773 453107307 331462794 139001160 251985470 858775960 492377018 433246009 241023251 658037504 493557528 901950407 819478522 780813011 751773620 970470071 950605044 277011964 659815428 275133587 716122788 580731536 584454514 156657493 35680534 552791123 284863741 378786896 96553722 7693706 665920598 396183816 551374317 492753856 85497805 505364125 138774442 372388352 656292338 96429403 326679832 394317715 490291970 438765121 562137226 411367845 804858932 606296577 14841932 304077535 69748416 368512215 639676579 861040011 902677195 911679202 967971738 328104764 575489445 791532603 164692537 801296905 922122731 980308724 251219530 156339058 23478788 123644431 318880398 758132114 709066888 247375730 187946385 401684306 713129552 824833719 475524483 469532449 166181131 370512625 919817202 149004803 129133773 619989065 257863919 633862285 531110432 923439471 672365134 612167821 304973556 610964307 109358078 215643322 383881558 732187287 813622778 116944187 945093310 522031188 802018006 9492168 920694496 968082327 924768586 666337974 781677317 12738082 76562889 334119777 251703930 627290124 621991844 619609518 550302062 259819998 163776783 775596694 33944814 79333690 954765063 357431620 677989076 791432632 414176287 731928181 878683290 265221538 679090786 596558645 338351225 62167363 744800349 955708411 58756315 110030077 850715887 746166225 890954126 626754034 278836597 975314832 177983683 40572484 451388771 776851635 60149792 306954894 387697884 568466252 786308041 540395113 832248838 270647735 524297171 502624906 387772424 63203047 439268053 850554753 340528170 402488821 833363658 872708106 215445963 641136200 685027889 112313138 408422658 884520902 182753315 604988510 836693463 804008715 404722769 713223648 454671129 390755577 781494241 860532670 251615566 106548259 520971052 862323434 636950632 889521629 598350720 487847517 949953067 266650608 908230029 42775429 500315727 850381444 606462421 432879424 400473175 219442333 332941149 576711513 459660711 346746040 85889374 450792468 87506354 838630750 432171249 716650195 504174269 43790548 413290266 98941612 273727470 788159329 508761588 270612898 31837863 968556233 451957319 311619707 791555444 468052850 519030645 654336718 562480380 205866832 770171795 656521706 952527439 830265269 861208408 951041214 833428311 88901878 597272521 526109507 230724683 865326220 2675166 309318803 520918931 491696760 976390440 864915061 644564676 123830869 706254566 56264385 806377948 637710423 180888036 729906355 130567618 268935560 642484943 784427404 329604174 352686 410439546 984666802 590384338 149280610 48537189 985689778 625852362 648114992 692586117 403058656 402234138 910079916 195188135 860033275 928976082 939730179 227974873 381496291 198541765 205352651 72555618 631005835 357535651 144904862 185129019 428060731 767613765 392009615 297038741 838427243 862846736 200501111 279096746 359120751 593938364 524599964 20101373 85704116 218346415 875063211 1452648 974568448 202722736 382775613 233596807 117482309 263744710 659545925 202134269 471410681 417750283 689327153 206434525 597113875 718724720 417973827 710427953 421539150 167060848 73373618 231256779 239955782 925301711 341948275 451583560 370809921 352428257 420671581 620788681 3996070 850389893 254580427 534366359 171327502 855409534 756109672 203391827 37018984 861820766 691944625 291745989 929382489 415107510 583660501 970761883 300286738 995906148 468983982 88690379 322506440 350589769 288974290 434423889 801851350 556953741 199601196 509129531 700023004 658052979 859956159 954215451 14517816 96710295 819326424 82793405 562138205 508889423 915693809 576026913 354368722 373624671 263562109 37829015 811116249 807322611 363429453 14957824 580682461 194955502 273183084 36953056 880963509 991226435 171774015 116357766 369764517 630662092 6204177 520326156 969480967 75627487 290049189 261454862 747179544 91779492 619967537 212346461 201351568 107446198 48269159 694112560 30473273 781084326 348680855 713604702 624051662 17427470 896258118 408581466 751868687 984385362 310070049 518432708 192046893 971989070 749987574 345996141 495099006 939407943 63103416 347839701 159018759 25885785 850353135 964691273 76556421 110873973 642850269 582690324 415429901 136025527 433456598 865153011 528197714 882030611 945870980 766962310 351346572 53818538 336539429 430527094 718119666 518500089 915450373 768234839 680515317 141595008 176388158 260029426 21843306 576684008 407931353 507987028 315276745 956120515 39149365 349861542 504736445 816264881 307205331 204186609 944389441 766485697 201237737 221906896 412557746 596015845 577080950 322769775 222420448 487884845 453557969 443067614 792305451 129604485 207843027 67749630 331208418 218751555 568407903 875237047 912419130 142254784 589416923 642859520 302021871 879070942 638638305 475642422 506841600 385309589 23549892 107913449 230255064 447271643 529550870 142765055 288116648 272839766 897746756 156004164 630563604 837634495 604306956 186441378 713742481 88255921 805498939 121180165 931672501 869606868 326692104 509630506 637549033 786315314 141020030 483155914 204322195 471274401 595490397 359500666 113902900 372716419 971255754 624607961 782237782 296684965 388508151 216691006 509303663 384203395 194628298 154923379 913789924 351913708 751686327 907908836 271406542 313916844 319987975 955719283 626884549 788228104 79105602 519901877 367118085 478400862 58677185 583858490 450683651 589433717 50765262 379008676 655176164 189502801 322764609 165030097 766027062 143658857 28323299 861115027 628497653 993908601 143290890 304834269 230046713 941400197 199050929 127921822 251539115 218959984 143455144 640281504 403939894 226620782 940577578 395994827 643684222 203658897 983653439 300261912 585339796 11584217 57294180 25515548 319032015 766771260 245093990 641577914 240509627 391410748 361938191 931060513 249443696 289934101 88844932 197871787 959428840 291006953 578185794 172539382 467688455 974418938 445233210 922656527 70567160 12537135 921299500 653757275 804028173 834408821 839805869 449305770 164167511 677414016 105109624 377645847 705557483 332857589 469694264 244148456 200961033 486535030 947424682 902558052 713325644 570295556 622436399 460567132 228411874 442434397 870088338 735155769 739540953 187061916 778534299 749485655 418294841 999178066 829651565 89151513 74247136 882552167 450652605 37172892 803499858 231327314 371376413 448263553 163276700 910833125 506729282 645106976 1141543 475243397 856331027 352491490 784535449 689232707 94275332 891597945 533747209 633551965 90079068 891240180 155129272 178981062 668505714 547356058 143476272 535086812 952365677 865402211 643484822 204960287 731848199 60546022 981528647 217842459 299028588 902126317 804412615 593872694 80639467 537413014 167310337 130646362 610091386 182451387 505235058 206363362 538649956 680449890 943382803 675248208 915113642 200618545 272311777 632242791 968206587 152408177 903904081 453285287 600774380 685375450 490279232 887712422 569551669 929616400 857837658 202962064 569518958 336449352 580185008 972848856 136278994 694281742 365969727 800423408 254699625 118631484 524260229 522187298 53486523 624182592 29916807 282682389 328535568 500989899 647674799 721548747 874732619 180677843 737638634 206797738 623011973 57208153 351677765 568098409 10530497 533031171 731178600 776647786 84872464 648998391 346327506 906263386 578998413 687556659 894588846 672360280 988922272 235538168 607213286 806251316 915737000 924283497 195010019 607313382 844161540 280826066 513705259 156954587 383465397 705466134 115053254 970166867 797762558 188444710 406716533 716925820 659531767 743744310 447085798 312046397 487047543 45711091 554868325 918625305 39112921 985893948 510688289 159945866 262323599 932932192 951274055 727850276 21914669 641846733 485754174 208086280 224039184 616801633 489427134 448242767 222342017 165632723 295550901 383042963 422995063 103740236 707431376 30865106 928638904 462447077 311177723 637586841 74997804 679298816 930577361 706719486 464093750 355402585 487789218 70004128 190220864 469408926 513575846 43262493 200421425 533264533 93072636 658171382 176658758 247267152 686618743 926152368 183737386 454066514 646457346 626319252 568747272 457774381 394026566 37560235 950183600 255968173 151599375 494654377 122338014 469166034 847952220 653949990 397708193 876932770 822628452 213631756 699097974 874310145 590940673 193517486 724989175 473573824 376964492 530617512 588605794 594925054 307623649 471932756 576371868 792019359 592647908 637099989 305805282 551357796 898835594 982110174 913288429 310130990 876505030 593989075 986536946 588707646 812606371 124555559 447021139 40218355 497641153 1895295 621902539 363117430 853874474 346456477 438897441 96935211 194778561 582544549 262217925 409815758 197595246 45373540 939200572 469385501 201605994 241288499 833111121 270649639 831668518 441846796 610762397 643404845 84986798 400416515 37509672 919577016 114794205 76722210 929312613 206963750 90953245 408956802 614838504 788413744 801617968 424247489 483878857 221803744 366782278 652123036 27358227 765974088 897108825 151527045 724851140 966687843 762187059 54813756 373812243 164564812 981355238 443982703 274376857 428376673 766110022 267479075 679387151 249114628 251772577 976941759 505177616 228648427 734153373 71617510 986503526 104475622 75878171 55477972 77768128 532399583 507117985 279021266 543088086 561025827 863916868 836114043 760244634 183519642 813950763 337233490 783752036 258539472 463250996 590019410 641991093 189604502 213504019 91097171 663351697 167309983 284667015 661823698 498907021 951323799 130956778 370661716 477518516 900995204 117373655 782608840 135963507 644229338 500198487 253398685 685678096 857727549 300628782 24374511 222148616 551772590 85786113 971393131 794544753 4039956 192489626 286857153 97005448 575425013 817609890 719812656 457113609 576366942 661497936 35838709 363396208 397038318 759950328 598296185 333709962 239251337 637749867 19659382 255984634 199694102 953420268 839449097 630760860 580920016 45545829 322738168 472740433 50280179 966293829 732952726 243686502 340383550 196183427 11054269 1280958 253840392 916218853 934093470 585645465 793184317 382779175 911464073 305977804 766153779 770301033 657086717 479883322 869746536 410639158 479998828 323897357 336370494 530190524 515114313 751769832 146345046 876938375 169444657 522828206 498454490 885233785 442443843 866786532 874583608 223046190 665079792 327057199 145232535 702270286 980329105 87427933 950835227 513568832 765517887 325700928 198337190 794903213 600250799 689445729 9288280 472790839 45300855 339203148 245397680 2103756 821961905 769870056 288242620 569080155 937392069 186198610 535463834 481919534 50232879 873378033 26695271 686083437 957719588 235881875 781527722 817827148 752718165 899702445 255827941 913154778 225157633 235305200 162332671 948498720 919771068 704226853 758311714 97279153 425593888 824923931 503090549 980158346 388162136 405426584 741535647 250945017 758539206 158049798 406816399 40445530 308735056 67198175 163775362 93695457 137843890 884092864 506906135 60335048 547348451 78850003 780858073 380397588 604880403 705314164 322053589 423123068 869440604 973536926 737251272 620895608 389470082 446917902 182055642 272264138 361708335 978051653 635668586 781878742 880268074 650891879 483696934 258499285 855677586 274699862 785825970 428422997 968429717 786708193 214970920 116538988 168285751 681514053 896703396 413035765 581139440 430437461 414246986 370862007 600940622 492796421 349218395 198788195 668975604 116373672 120641799 316215412 814522465 118843412 577096816 329026955 236554792 758623857 659439347 916505 166595253 732553902 986015054 127371321 24154318 453134695 555580000 922121579 620275665 338541972 228206077 653428256 575972364 345258741 949042584 393128192 526413906 722355831 547891855 550381459 754695914 198589715 982441215 765294063 340752963 909207831 666274614 73737901 104883746 61301870 213559003 333041158 619924687 448991122 240056506 466532339 956620284 999898675 956727368 281326553 166582585 554267173 513747322 40760145 149071130 913211314 685889296 178251232 748812979 335198390 626636604 520525168 126321795 903146342 392687005 773968327 864651140 210081809 514503871 138777461 180711412 859943674 202790334 698998555 111106250 203934014 515712017 240418743 317758280 462021060 226617361 557394337 514182446 158733521 857537176 292807319 367617137 95867566 75612433 570120537 64942217 953827335 936263115 322746689 290664685 133430912 70267156 304017051 385151795 771554109 225044591 96298872 658308417 512999594 852371248 786088572 335174498 919400479 42916943 75988306 802042194 651668158 618774940 652749638 761389405 325337323 569196522 171630091 993821107 356708282 476226496 481369340 694918319 977963083 706844922 324445520 691426154 933313828 318143046 437635410 911850797 401675543 570203671 89619329 239173495 437682344 698052589 989410539 830227633 467727622 20782286 122580460 951612393 724238513 502448983 577816728 683049425 287135002 604264140 701628245 168063619 948148619 301826745 90629391 694674500 580743555 33346249 827430620 198148699 864466957 883943294 691639916 883004285 793812855 304411944 900456907 370344993 849133467 740399680 207810948 658856112 366912211 468721829 245129614 943046431 552013693 337094024 668557313 984667437 7180647 125357878 79773692 987389651 112641183 167951090 511210841 386453172 58580401 184078683 673133823 705978649 858741876 478191954 995953249 874911923 563552306 24366685 351645974 617247689 625411719 415595895 854129176 735355634 965331543 626058889 102974982 890295868 382784602 954280373 56489832 605790870 276003563 159440688 20664535 108384213 788474335 688940244 234957035 811443247 448571273 330551218 12095500 79139344 386531820 528578848 401430686 515558776 310239622 186527215 209786491 945319042 357761027 884239530 51398995 824623259 832290375 468913277 606470100 304604788 747297667 357887809 940760008 113897988 414880283 567339333 872119605 183592199 589810914 122112860 247568085 514823500 866642750 146437617 323721997 617545340 470710049 167684452 798066 172036770 47213675 792322795 571158223 279549194 839462683 678969294 671167688 291743514 397854209 729508590 896721437 721157544 872758695 55100124 416088408 876043391 985625027 418810134 343069425 869581010 429092869 422788643 369321049 47756603 949718201 546531059 124603300 213363920 465819667 195971496 660275449 687785581 744694549 171317167 359817388 47360121 982751888 879621539 208664254 679045904 891575176 391727540 644598875 848303259 815349288 404272107 633524109 699992854 356385918 318041087 155885587 175581206 22332804 886101131 993660854 740884399 999737591 639336065 868072339 403952276 387307892 551390897 222041510 525782059 711666856 351297160 732501138 276814996 654092695 639890136 602550187 224401 457484100 488113728 218528953 486759508 462047047 638773684 793879659 957717641 536136090 558797732 955076864 11724384 633595973 842265375 113479191 506066359 485178287 494571871 239880803 895429461 678398013 622203386 747544508 939271530 592013480 63708385 98230785 24764418 116222507 897782446 418636110 803027843 718546707 333747727 307098880 73534703 847082048 956756929 182855236 687825633 237462993 395628552 391306450 769931340 195187555 575402083 553354543 297191553 593271338 731038445 163704539 274961733 360758553 622577272 316277439 894991444 55273053 320473540 57576998 515632837 134788060 23223226 128690718 795467720 374268056 472568574 342745133 883994524 377228110 970344963 543469718 492161173 360101694 859294821 77221409 119347278 922951589 470225063 321766834 335843557 641201793 663389348 845128743 946066276 516404711 64256053 496766500 913260914 125666419 83966081 271037674 315604022 639111167 787342200 275709837 629666350 325070660 615698709 67902777 984560106 844572102 64359250 117929494 805132138 930367228 784521445 482954366 543124745 65582106 354175620 51047410 20323056 741300415 478929467 974100830 138527871 110562472 517398670 520805553 564647893 511823376 155820993 343993734 213839043 749072021 874155182 863834261 624862076 526117185 405131902 479402437 738373787 925434416 783103524 680112676 33420262 529607956 125726721 913177375 739221905 56659500 988680984 278905845 51094746 539311803 734007203 915193932 461579463 284561176 206982234 597669798 651827522 545408836 610851043 980730447 619803271 154734543 690389932 477552640 668930373 701533658 383498583 857683609 981190390 105188143 901961587 808334358 89932040 247908525 379471383 176015038 849742271 858532427 426465986 387544696 405712071 927284765 390429083 612667394 98515238 38938715 651582965 376413118 700127532 570589521 343714060 634618680 794822778 436614883 983098619 413948823 125094350 176541899 124937245 804886446 540782759 891718663 275636728 740252703 267512326 409927036 959468485 553909063 255074377 76126212 591257461 592302737 663135737 886358698 56906416 703133051 936409197 685615924 286143251 924410483 315032084 870355986 630763859 188638670 833423371 297739199 403053848 70051487 719435712 985144315 225368477 849072323 688047047 989251073 362814137 616832724 298782102 661761099 226918503 322131592 843258894 671169949 640221353 937438847 87662683 947948857 696661351 713052876 351416699 117413860 559505473 323790070 992448133 601265169 363722188 831528791 873000191 764981635 320720732 967386738 711067465 915527733 762921311 106251180 205109729 186392341 596700587 394002281 461520362 970452215 223431905 732317459 337117160 820993655 634538629 698673464 487387276 409793115 509145766 194790096 620015329 23057918 94704400 649823613 298873150 408280484 464934925 554109416 613638060 390167795 532966588 464085372 649434606 455619579 639861133 1412830 559517324 318296962 143871488 865255586 582758143 419986155 971438405 408181109 46863886 30925593 473281249 665269523 939939751 296328384 439732891 552948014 498283157 717479289 94638515 906830202 884521892 245970480 549277384 353905934 904213156 572824305 234342421 354158070 912852263 684626695 69498166 168420747 442708494 473034148 405137709 802870421 899606734 689881987 493731698 456186423 285531246 535298966 833641811 815200162 561442755 416095633 546802862 663128515 198345440 363861722 971583141 438156376 35025764 832997024 158548109 517258346 805192926 567540455 683771657 193854308 751964166 778710972 843511653 202224692 433936949 320611531 386475012 5966688 234281247 503921186 245177016 229156386 770227891 769210555 392513209 519387351 793637378 557643415 488815573 596733332 806104087 959007925 923370045 971544026 414009434 870217816 331541464 342999513 236547284 780095141 747651098 29563522 379540697 301997387 762205428 520462914 450127213 401208641 27605904 793522046 14869821 456915032 55191336 95690497 370227741 626841438 581881572 351136714 583393390 377913487 301437871 855860875 860386928 222517207 523703365 319864126 533533359 149513600 618614719 385952287 222483051 963790638 393197542 898174756 267751198 454756852 623611073 116268119 446383039 466601796 783778653 988628982 601157913 465648088 781667295 350612469 148003898 38863335 549649727 871237221 825390836 637736467 586707375 834616122 178291587 63443616 912287326 110096126 534330119 146901939 971924598 655044521 502714342 339707785 316533163 294241865 252816085 574630917 676428595 108923934 797520965 12850478 403290407 555361931 46346395 977508766 593584575 518015459 411109309 4908032 185963991 199159653 577775804 866701372 220878496 485135006 976295678 736695497 875906754 344708991 311197994 185087666 710238495 381998414 275375025 907504986 616057183 231655006 155935556 234157416 848445212 770757944 122452648 185652834 549214066 227140532 36349005 301512729 406134974 52803214 400617121 415038874 671748362 820652330 270879946 11078977 816330984 601119545 444547073 283642585 653971858 194827312 7274598 391107428 570984503 813600883 786293835 77106482 91911324 847293238 846918220 896703623 254590253 403385135 701749179 371076456 408272120 854856341 402897637 858997520 517214018 681093125 579238424 299934510 793940716 747556735 902797837 479490800 731306387 744405187 937758604 619018294 16143273 379499759 785374758 633960932 4609910 961847918 831932466 854505806 472547543 164126978 757125712 112403200 189149295 963903980 609015348 246004183 604939159 128072359 584380150 262802049 468148666 289611451 165502993 660770508 643942428 44131242 31375689 61725962 665005602 783496593 771916154 71245949 273845784 430543014 865482526 309555672 489050993 350627486 388492538 105500815 839234696 705353339 383620390 892952985 766094396 429726481 362810073 927824614 970013512 915159265 818948931 543466801 732889289 744816282 274328035 585226202 641544141 476121706 888841237 83953875 869901358 293764206 476395804 437763953 241460256 284769361 991710537 741246367 288518176 464550356 127688115 525659376 759086575 122174897 348690057 259452970 16678370 662940852 524421132 159375085 292012579 918279300 235984584 248544565 972096404 852683493 571426844 706869759 15818410 431171373 713124123 522330091 362419310 235963452 109261696 79035316 50859136 292969857 841351998 959760437 12846325 278068836 77010883 162612261 972492542 874424150 396229572 376963698 65878544 659015405 294347264 708772063 344447865 237658439 40264879 826142951 696474408 628305541 470058677 226336046 749149035 460135426 409416513 424451212 21431122 246492813 930508618 383578185 451256137 727774922 972220680 807353207 902461485 23557257 428471976 437801987 291204290 951536174 677945156 29566770 531791406 664872304 87472190 470390119 855858942 706846903 487783639 731817897 115456143 875908358 96079796 548623580 477669543 457917693 660441250 382605037 498550291 322918929 585725577 181831857 57556408 727807843 268362745 340936988 389116047 982326313 800856785 122582604 349118089 280187309 774713981 288303939 642972018 237791503 223524500 339657511 967387054 370359344 631928553 235011833 710421973 407848587 647771681 288047153 87647712 56304441 546059518 627349296 173487763 458623903 86014976 167516154 253138950 219104946 154128646 268033178 624729609 985099673 98032399 742641311 689438192 504947040 552759919 751573448 563503272 722806170 629347619 685000628 857211660 102553879 211877272 740710804 555858197 636118438 142431287 814129057 448975498 990019130 309894036 529882851 297459543 965752577 100530711 397297495 945616063 297383626 174821983 105554021 895022125 350075031 312195169 34323733 483850128 391333406 125258031 865918994 775408103 891589126 9471242 524565635 62861998 245387060 535950907 864196719 312347598 9868541 803742696 986933952 770334849 892635909 579542668 859196325 254491619 825598560 37282915 448336009 744358064 670359595 38517861 304863830 730406026 57615034 279888890 986171912 604196924 962500629 639778432 103266279 559008007 612264646 855973321 422351507 841122388 373723081 578357943 325969838 488634888 219511849 426895659 134842394 218696943 661648664 556073054 89240993 550643940 471872317 946955345 938034758 328924566 85838609 35105390 711792124 681263802 9019882 121664944 829469713 289118055 301880482 439466029 322779623 999342884 808508330 330662484 260236372 157699073 361278826 478174759 993303333 38568397 61365556 524442954 376836351 566581650 438875504 967996060 576396524 577916006 721601660 292885104 408785243 12574544 707248625 612252322 994915759 895628459 798689155 102001931 946606811 195806868 70215025 299301791 829744602 804808660 942036284 813195356 975645463 803760805 623006446 740353808 926380918 702288612 124936066 404215439 104170290 872007308 587063313 942237328 377404849 719843042 859637794 982943259 69848557 807505627 806952962 224278031 557070270 143607254 983470845 935889023 442954357 147625032 259333364 810729516 312993836 463452844 313891183 461677985 352704589 119895130 6160651 870114256 385075615 319053514 739185247 754194335 201399762 149825053 404818365 528729716 533598884 581800354 305758565 453116666 864743523 921550579 449288525 316307638 810907850 145420024 895878363 994725456 151157140 958237915 900091543 816531887 282507192 135735047 564153875 278862252 380020299 605963353 25406853 63284099 956230765 557599542 34334180 288412618 949767017 143950028 928713712 369321032 196118132 291754030 920591577 961632194 530617002 944267024 30420577 538707482 539096156 984539413 235435418 910987833 146356880 234688374 557857110 658294772 191916782 460418498 803519515 913007980 956378758 768818582 956108318 490555075 373002657 585066156 655653917 738766785 46594192 753829450 726272182 50435056 271440953 180981132 790209557 56377760 6398636 436589214 970654103 941356240 741321103 63008942 790477429 82653768 393862951 217829386 11824875 224565676 630276172 562977297 522650769 106719424 115622969 224332358 142839201 364016306 773724284 860004942 685599415 857203555 157382175 85452771 578206579 801956093 622967110 49799403 761781869 567292253 44543490 714978140 157412288 341169058 119257248 145466245 935460407 155501769 959653677 698431356 335433763 259882584 519830172 647528427 680259859 575414187 657785383 364879119 898536638 432299216 835540879 884784853 723560839 336843516 916170395 327951787 526651082 431646795 986126064 460230942 603957325 211345878 740102109 555775046 30517843 157133250 983489672 932092118 862034365 332331149 528519160 79172131 446669334 758451506 432574013 71194828 190102218 884058657 168532379 850409024 429766063 951090372 168265318 672837683 635178152 732885283 217995563 871868590 250576392 304720899 700357541 71826573 24403254 188440645 793561379 164829511 909314563 626113574 577984488 864709066 577280877 384005741 338122882 646808924 909061105 83700924 27926157 493240088 753719413 442308223 443924015 216705815 133853615 128399728 799991015 713091340 228900386 422771513 584531906 419512534 543014654 840881599 430059007 263012054 6514478 602040120 345303369 637327055 575850347 611924089 85173017 697020297 939201573 526725654 618207689 288110822 827494676 453323708 443943049 718702207 260596642 396270044 725764725 792250767 465547810 56281318 388023887 669002515 498087929 24526655 223291825 577043769 771661204 848295814 767985655 161562232 582524728 826858997 504434227 637507507 761631896 927658376 774987311 902141521 465808571 8639678 490833823 914938650 23931583 869116255 960254375 98564398 989129124 513658324 773248599 551500261 614286197 790325694 695570631 734846173 906763411 495286141 927595139 767967824 318448969 227360892 995915827 707228794 253589336 262837467 178667856 561859132 586806729 70866646 998992003 79103359 122987357 127885504 982130326 988730738 696757178 437073948 715088664 40711714 555431393 610364562 497536643 323985193 687832494 70589301 914993322 950097491 241703318 768423470 538561952 381245127 47771571 450580600 391228513 483554216 555634141 200254352 122562452 908920451 896176976 700914107 524484472 712637556 909474866 530341426 612974652 49725433 682850953 619581519 379075554 159716987 336048541 140132473 541380702 227262301 433272107 663588558 670816984 120994260 536498240 480130609 115611773 478061047 988883111 547704682 256042633 525022205 292262791 556372914 275648982 81215235 290552837 68222860 781288848 251682742 259764135 800401055 152448739 704763334 855699098 111306613 41107840 774874954 36746602 437497658 470184848 534037015 882717093 605759981 192061968 787073322 578933228 40527773 595133197 846095165 937117012 512243040 142120831 316117636 71933190 15137682 571382988 192027924 262405218 736571746 340371219 97693410 828530068 571648384 92319570 97121881 738224596 15170412 895302204 330446384 564476433 291756652 146867810 378851657 345230364 544390751 817660789 200144923 666525984 738345012 541215742 89454384 551141438 891747588 435814168 2251336 184126458 274925227 777712543 479843552 593033282 493091935 991443954 743676078 963650595 406579190 49077188 906782244 807496781 918779166 914027212 701085741 16990111 811231737 256192209 662745776 329306526 389124663 326150724 58902292 273075369 272523 822301848 170223049 293857420 124923969 761149626 583092760 154684418 263807312 224083175 826199313 61090386 58935348 88878454 225310138 519214144 223873531 635380717 176159387 60981785 836751487 297833811 290628943 944003823 105447974 817707759 720211539 351003276 843145127 381544416 557053003 597019887 19202922 293684348 278271903 212444154 241571108 151186902 960077571 870342093 533036116 984552634 152032475 976291885 130975944 514650723 890457795 221490525 591669965 51161917 35739349 370542244 737180456 714638463 672805506 759404194 128020751 669301423 164635495 635106371 743009253 35152451 221757598 792584948 355502442 536620840 407171113 454965769 401149820 85433514 978285268 455467971 701883762 605297675 559907272 848617345 142994156 468235137 87017759 631646985 950520128 542136840 125887612 33105776 140116454 597102459 723762717 657420507 513393273 29830047 675009509 537574459 870110435 535464669 887951817 924754259 430395154 153118529 305370010 145289808 285283560 427609624 701324365 703266824 447888202 589524624 101177319 99546221 686506198 741929158 206783714 302049399 723503394 560669038 796429004 534386231 680044047 19922263 741662317 946732582 614000639 837729970 935604792 408392485 282857139 592623341 3877700 2260357 413008618 633690362 431455231 548459886 638090067 325646330 361239884 847177174 411966605 447653010 84119710 975804907 509946062 199822484 651947510 373852924 148581328 240756134 986113143 396026369 801107215 404936154 566722103 856258711 802252804 671191351 492261032 293148567 716914085 371005656 565385387 543321589 500383916 651758991 687540748 761127593 983831419 983739385 618901199 61053423 640479035 634071154 338228381 496416636 660667310 694652576 583406219 252980012 507775407 43914463 615791301 932128504 76512525 204177167 609621591 197275306 792669895 474493820 785118637 66193150 283796526 86306598 957028238 540746189 382861945 664043146 828319854 652893280 737649853 574999331 924435361 964613443 552950248 842559191 921578833 363767150 84524005 942671991 729380479 924651670 828786920 523903653 185200828 760936526 438780994 74901784 498809205 785125260 273518242 79939249 802615871 633664555 671273666 546512052 73083946 443496671 222348641 409943810 597911710 129554955 834552032 484828476 922831711 827015989 143187455 552884649 830149699 909473293 585440532 467326014 693460609 19547938 856097948 814028615 701014897 451754361 539124161 229985020 728891952 578130784 817595225 708427112 246049505 694474674 835568413 548810357 200647054 276911324 803522177 604556986 659518668 274491349 738785074 249224342 930945194 72204620 709116160 164716950 745969678 835796220 306066721 903769282 471382535 807366970 570284649 29157588 541305787 908659514 855289422 456681774 467149312 833236297 589710151 263927801 155038364 999474250 983523732 607831381 716410932 337157458 334428786 455852187 439991132 114567205 760047670 459713468 396692127 65419502 23519970 634256841 588539495 886840865 323485169 648112962 433211424 165404444 166493888 931259091 802958199 707239202 182562956 251468770 449450427 801578286 400810459 273483921 812700658 189495070 993965967 715716776 817231455 913006818 546825309 149039096 538137812 817485287 692308734 164861517 529304709 924007539 445482806 1633260 950883508 954558692 49640851 657270155 490010796 624631159 253787707 560273275 436480628 783400774 221238154 776938084 706099559 860609020 434999502 573005966 314313832 803458033 171573734 693775571 283968425 482591217 217111399 992187170 740373972 115179090 700790218 480579411 354140619 148998585 204162461 800395670 606590986 99193478 990782853 276274413 572202852 382258461 17232848 424394183 21108534 1162503 98159218 639461217 933961314 632197612 828955747 900327443 452397841 37437562 547364818 780868643 830207647 857271091 10426422 702954361 109492361 728222032 858693319 903711667 214503421 918067369 438797084 728882700 131951841 753280022 74921049 458076901 324009358 940749280 302391622 164101246 187594329 697915511 828158079 56198520 800533026 280255405 408323997 618186238 748707654 763275514 547130689 900276268 148317756 52291339 391220965 672127000 314944191 937770952 769698496 756439721 811596582 425599090 151552541 675051191 680188156 763299470 694370608 399144317 751409405 310919585 869575010 461530926 659120915 903084960 815630404 703660888 200352336 105604313 42419739 867067925 644686992 428554653 558710244 736831364 360843758 888965665 125108878 64046810 540277136 104364533 576537599 601219247 25418447 931313419 546349800 988970908 411607529 987506723 948973544 840223590 937628379 648985237 920775968 149117953 559249882 648281854 846595020 817806910 632247218 355880798 694762998 986793590 155361645 241688112 29422092 91141899 731967122 297153626 727323649 488566547 87759665 46761047 372422169 75554775 748543389 888133234 551516605 899857706 444193987 534812042 721849914 986485582 408601120 874012176 411371004 34687504 954506114 836630633 230579600 429435770 222772381 347123106 211853820 859017365 314281095 700860739 258753106 563942581 848749115 997987219 419534838 172747142 2172521 637077335 999104704 875885196 249436094 616131141 11819227 832169952 545805260 885428264 707174874 18457466 494833991 50275500 32849811 333060479 309998415 453627707 178852505 612996315 643413195 14851967 571315774 797060219 153323950 664141662 90021655 589606431 146702170 399348783 513528180 645379342 601554366 584273002 267987924 930609337 984893864 572131932 706087916 782940521 852018293 650323330 434904563 389872398 485299299 358472052 212673626 322437162 1749806 279054019 692152120 980440675 205413490 908288564 434514702 503105075 106644209 923361541 905851396 394943657 568089261 122775376 744494319 726629671 405697348 235027211 540704886 999850818 73440303 191007383 824550204 727630985 805054073 269680223 878622720 90278499 920679506 962582624 333305936 784554001 404017310 672577010 69580351 301143890 75228163 229410625 822661323 883453586 915250536 323502382 632493537 283272666 91531131 120225179 36211397 688640609 109378451 760066696 706916856 69604769 734828074 812305927 708638660 124795690 166519952 83906328 232024779 440020163 697692096 65083739 492494879 882782013 925068529 166100339 101104905 29159456 398528324 421068783 717412616 886296588 22174183 361881514 543496172 520525539 89370874 631461417 358434088 597484378 898791133 618228071 892211232 117822329 632820351 942857615 464785524 783760180 923612694 702493870 227780319 151565837 455637567 117349501 491891372 785461347 647700988 176248317 938269356 336743625 426920949 287036910 632988079 426595 857607375 13966582 304891438 764672531 64910325 862250183 237976872 377164503 337542267 702660690 764580737 340401588 401701464 51085098 650626785 405302989 797163579 368430616 769063588 921705610 61191843 707828872 580235260 370008166 283037730 965400344 63382096 20296093 347367229 883138862 876935748 872881217 396303806 600135187 993578136 125574022 350448098 599451614 53798306 331439827 369845534 281960034 761128003 582276122 621647872 938038900 724493375 518573452 158973728 17801281 113121376 344251685 809879715 453067913 391297624 653037933 433333278 344507870 499725807 222421405 526509722 892202064 245773448 418715271 480721112 885999279 134967135 720571107 847208281 543220292 798661830 375823361 264767070 279658164 245159344 625167022 665348603 632563305 24125479 125213365 474342332 219777752 417121501 849755815 859665867 258204092 522589955 797297328 132647798 865825183 464641790 14883998 435127995 493003834 644992340 145826211 779126254 847497582 615329404 208266249 549223956 606099277 504132708 28024752 279160631 589195661 453468141 926332178 729800400 19328913 390298164 275209929 713122851 162811125 927553543 609146834 695088598 827053150 694085928 709423647 177890499 822080441 600849471 626507644 142543921 191160550 713492468 119662876 876371985 723321871 900403614 823223381 760658301 186843863 771732765 814714058 727709942 215167952 393565909 769378851 643858536 19760 311498908 593902254 197755630 31432354 898868392 943808407 461443788 592561815 471736984 217723371 305097482 899757590 355341186 864405954 711616157 405825490 734794994 239548651 374121437 377764132 248349482 608093005 812741387 722939003 323685699 771241443 192556402 488214157 565824337 477552855 726682694 180406055 799966471 800076738 855688215 966638741 843810411 921006783 279860358 722643591 597272879 975261484 353776653 399697789 922989654 160975468 918704730 227014802 903755631 80012835 133503226 268561569 463968731 274930491 88058558 459427444 112881475 865490857 334274091 42946921 837127520 276317993 165279940 206204740 792547772 714181998 142563437 617930467 975353718 331786044 948445035 662222815 482221437 246678072 909712205 312206878 437801071 355388459 390202130 894943912 702699822 598575272 73222982 670173070 128243983 180455600 864666609 279353387 936232653 77790816 569781388 624542676 795133578 863662642 242918454 265547462 809168695 911509192 441172343 923339952 226028212 272692981 208561873 576561416 646869178 139523257 279695059 531639698 565814880 101602786 750604149 62709341 385638633 100474061 409893924 550623963 939357658 583468925 182647875 855289261 734346524 415201820 569344361 988337412 826969830 48143513 272682308 733030154 849068644 857573453 45569196 357814901 435813762 427797503 782114412 920868627 417948985 145565799 636023503 240469466 335889680 673188239 83772323 407714062 286571510 278639852 42052697 993805506 389779602 634215906 605206615 548850296 558739539 584066375 475956395 720435161 162572507 503842572 263474624 623806155 289495746 837506434 64433404 172699446 62333718 56096471 960761811 780213500 317265918 266541587 496414262 195858360 645852532 258175418 639836652 822842520 503637852 1509036 621348321 459977298 744336365 371141481 290656932 543511135 278733814 466729751 577313331 104816890 56501073 959547420 76933928 175999104 797741941 134603711 671757489 900653370 67216086 51132481 997934669 154218371 465068139 252974143 735741665 593447033 467746906 85554555 819977042 334137348 515263244 864268768 608781864 199585326 996915973 928086780 357851509 658906037 739930049 649093529 32202284 759312154 526442077 5873174 552419895 321837147 845767244 611599818 392391954 630036008 535219265 105555895 994198303 613520899 808865941 614571016 673266592 226331910 181299478 39537426 921531609 829135195 68261498 538511095 947302057 590658716 709363355 802293543 786833113 182389657 739331156 516037342 228326948 608262130 684102975 104065620 18444529 646347876 577900487 22256174 951614489 461858554 732815775 830279280 371950388 911464175 323705648 788894867 205065455 159251388 345258169 199542750 105740657 691627171 144333544 848036560 784647079 857756933 378806291 948728583 222268819 458570583 796321970 307189826 44469436 166635778 428641657 364949670 611477255 352705498 705590618 770607046 836507948 175730887 148775616 176265495 91130846 881424267 431821151 491539078 241107435 292101377 143198318 408963703 657034817 198205692 493614310 547194743 752247307 559780440 583027102 50460327 781916533 81512660 724952802 884152786 486171521 504115113 374584804 369713568 618435489 821700043 319494418 375004682 1937325 601374241 465746961 523958394 805266614 691566505 567630375 970899892 246093364 681962802 376263440 117319167 355764386 448739572 908335908 143097431 172359004 436631440 125249368 513708719 651602118 87872115 719782299 244368716 983410416 104445446 345345038 893391641 409831710 994211690 585484983 584572776 811822201 376408912 595968064 611133375 728089677 169066764 829678051 693006034 703247191 662605853 755917853 153504788 369403794 538998771 816479726 576098854 239723588 813813824 403657805 42063730 22087172 57482886 424189664 810344736 885460248 91549132 450671899 898172286 983102841 483706920 232056116 926303969 299873829 82703568 585389337 351298319 918124312 699261693 112243196 452061480 666085599 83557523 42012881 15259967 657784276 888379590 858174554 991481767 910081306 601167164 180356796 953208923 334841533 824343450 998429264 332191187 308388389 953861253 704610318 419480534 429292223 410513498 697468850 655256008 117466519 525892031 965183580 652646161 721426378 259024600 758354998 261428373 166727250 354464517 36389149 351101922 769230975 685901498 155840678 194882646 427699663 378312874 687709798 700068391 554484625 4871204 327719819 136093227 691375755 615966520 63095802 350529066 520259444 697358761 185141631 448863352 537823014 55701058 362969207 466992531 969062024 666651490 641255593 950545844 800527174 592511760 89922683 16842265 830349884 476192861 46614102 68374340 543480144 252397181 657317080 645830960 247750830 288828502 688169495 935028038 383436052 288732413 152132462 48561175 267134291 916123873 4209916 510750344 968757263 610338680 4851745 191593713 502035203 511427717 597050487 317508220 567419225 431805461 112825919 271330939 767270310 906850557 805608041 809734112 910970974 100139032 515278870 109318081 768043348 793806307 803197866 126711990 953379171 310834250 998275138 193621882 7240170 348074368 208768341 873526055 346662636 101772157 695771349 685979367 644065523 518840397 170215638 504073019 406128983 676589475 905781521 51253194 425821100 24343290 581408958 262751247 57620918 645659063 854079680 880750077 417898867 560219871 93619077 755534088 821884708 79109830 706204532 94175252 482402043 31780426 653738399 188400272 358801629 764887120 220121508 658493254 549920757 974842270 589113171 357870833 479457986 497789874 412119858 689963000 45881057 533973405 822517096 92379481 860602282 195569995 223430022 79499675 441821167 895399999 855613267 199637867 554964289 675790223 656458465 457260373 500388283 485910889 656510978 851490866 319122988 305847569 527448173 749646956 449628422 294064148 992863512 88153803 472124291 476405864 338856167 543538960 956483879 13132597 321344961 768939613 902247670 528855950 969617970 623877427 320091588 754439861 934415890 467460481 15495595 889376705 597616817 89398148 282385010 646883984 118754232 655656791 182745418 702179490 738083405 832300026 295467447 387157671 804125270 495007273 105747038 718105503 279195215 314687639 387166893 567102993 626833120 264955708 587997412 926834756 740142693 686516640 565701814 673503814 655608995 682210538 932566498 816830767 341587206 467470921 324561207 240932968 954567889 320322961 636912877 441756732 461093238 823478339 59782512 92414958 351459442 456663711 366751384 551444316 643396422 834540480 177129063 781750057 792874297 636616597 670051572 352416881 112228005 142031421 546174821 953848295 962436042 258822149 977014593 282924042 316166620 128737156 608575715 259680069 450667319 213287726 343587231 391213891 729907859 744072770 244039049 626294833 725929770 123940633 32906127 621055611 921052829 592199115 920509029 786110081 309164367 863754598 771878365 702739293 575274892 495479887 897775888 203550694 837111777 249846885 963796869 91061761 150006154 200769564 837355971 103792866 597708577 298089697 687819797 135978806 547280056 403925673 797517962 985796462 998260017 615372395 556841191 915406124 181692455 995466313 475565956 625317941 63113355 92122003 950657551 135239897 328295062 84631570 808689207 430022544 835309915 860093328 740269247 169357700 79951898 476963599 971873210 874069787 659735220 154140611 966572534 528350263 59905370 237564427 772090953 949636106 3996477 800137266 390765518 824403612 640849298 61462815 471964008 763072427 358660779 398552949 618891870 53109142 662107781 477065834 315861796 570801747 89964805 302804560 972354204 194440793 358765843 394428913 860486488 333929450 539824247 680579903 969272357 205720659 854598226 186074382 442613452 831462665 154291380 622959017 253727540 414269637 496395678 487152392 255235264 255078086 753502629 548201 574573427 188884993 18492665 616611977 186154526 82729909 297739035 17393369 962042464 78336580 322088331 111924342 673229077 806475306 382164075 490781088 913384193 72637073 11431049 679621927 939335968 287698854 698220684 126605561 248077736 108459732 215777988 881308411 463533512 940595664 843508169 442314411 957744200 490521458 472614421 283220718 789156829 276783539 319194674 682100744 775496381 928515908 397476328 430777696 682814485 954519287 748231289 124314841 3736032 626225247 430464011 460650598 414518462 246891885 959136714 207899183 789068380 338647688 8128238 437904179 239429559 710088097 452324156 329689741 510839854 697168505 120035270 607104703 374083632 332019531 351845593 891059200 123254285 744989219 548399790 678683521 564778726 857734166 23548539 239080991 381714112 135765436 912670739 323431549 342288038 958334523 211783155 989065627 104436850 658525456 246721521 866410232 435599498 665171417 197609809 710682736 995948980 385979537 577821604 262538077 697560563 355209793 887164601 942803455 744279401 509860951 227949557 153834633 770092659 946973364 520521232 129678424 892680114 669291115 785504271 266843233 826780261 286698997 897778700 548690754 844770893 840881722 150141290 831480220 588896626 317416057 258361109 121148798 720520992 643138730 569757646 988428932 135682983 422048205 751948188 584824613 675855608 491724960 97587669 94328602 518575711 816928466 286333287 21727278 805056940 767769947 826139060 352915282 393634953 26546688 317224302 153640916 29622609 137092566 107820643 601642282 668377000 430062564 193080200 790165870 678177660 590033110 130423567 827878174 711044901 179401760 437574285 464121242 778844552 457093370 509388816 764663008 693229131 397914803 407738184 154351315 95243169 31671710 522624075 648077396 142480935 136714264 287989617 829200200 384480300 108507487 982879550 241742254 377865172 56670421 82182878 117365761 253903745 846481130 259292750 916206259 976693661 163491401 117385989 877922196 42966958 279810207 996686404 499084060 512481366 111958070 360331478 335151271 94418660 832891689 52375980 756633035 387120493 89355511 107041316 841236032 127303070 102163426 150319318 195194415 188327166 358366864 966652537 48315373 636458494 265107395 899149975 514865748 968054531 705439782 694928260 908928233 856462306 636424055 756308092 707641761 691657214 624838797 420920104 682427490 883782969 756975655 262512974 626470683 927907240 859770512 10987101 275209290 616377409 954093550 864986888 954772003 158821487 315684384 340502484 440492083 426616354 572379806 292852511 26584898 345640547 160151195 301790156 172115538 513560786 765364775 944528883 392643870 405927619 114502050 881142386 77421909 485667593 567308180 325794827 417839997 574417650 385083602 48223537 574141122 220015581 71997171 710704551 841495727 926274757 221804950 783647995 488695916 819358080 145915895 847741959 527295063 873132565 317506310 692375220 556604031 183408437 53006411 643079783 333901952 746377758 988328995 546366376 92933020 351815873 565598838 967720103 535814102 782731509 746746974 424730375 677126469 608233089 843556018 81175289 309771460 971943613 890398676 422107029 146393448 518970102 812830784 58850164 322694563 787178422 947068201 367369195 606803888 132540059 261979490 132994826 251435356 285060730 204542206 739238627 646670014 887306765 970514736 262187834 525292175 678823651 135278665 94806004 673067667 527645568 135373759 842228957 541918224 808096193 932670538 165774003 321868756 373768534 305988506 79357703 937434821 185533988 66627218 510233074 971213078 239282343 635340755 298299526 156389406 331784194 40381243 324134630 688500008 355161264 898883158 248176232 369869771 139806754 237023801 609758457 207016859 170221150 373670770 678002989 155598464 343119296 309256450 824052188 3692951 500884813 128981983 982122190 207020062 437129128 121451513 200011281 22641844 627614058 309228770 876699752 779523261 723771382 758081271 236139511 198921716 767579439 698639349 855845101 998617721 725642263 478568415 820882782 131517568 265955996 831892892 920862004 469732920 887868604 949163815 910323773 378014898 732928187 977561222 858963054 483983888 654495780 274443400 554536395 567604936 395909204 686618089 304468550 470199142 788023182 724847606 891202467 639332606 115185784 805753467 732279558 749734269 877538395 340048125 330167628 258157247 571065590 451499419 107729544 407051465 247120762 457652491 668328723 103982913 958075959 448378915 832421127 833884069 9136764 294018252 395277279 74338648 267996867 408378076 858022403 412070666 669827953 47607273 26606889 472585273 571268141 395176750 565908472 130385024 622221712 956816116 938414319 413025068 684478699 828828650 898728279 735283555 103641416 76280373 221833557 644833121 685550037 699179088 190116942 642545640 955482024 695255644 222844834 409501072 776322046 580902125 689171723 346950011 857584511 812132446 822676143 933535858 88561723 479280588 33135968 765983881 644565407 813381360 809156290 595283481 347140418 417293509 703374332 648238628 586262716 776097078 379579854 83189196 168129450 815950619 609338438 697611360 208344613 284516402 697029502 369816847 414790196 775544675 300885651 131420032 751313792 657999123 247480140 444461882 799723878 202236186 673960122 117056412 314370918 94523837 640808916 127566770 647224483 909029277 394071057 974104737 196172630 727855063 793266368 566659349 396429549 647065921 994458976 913554875 219178048 843463659 864290989 561820487 986551120 917031807 270978298 168698616 12706414 359834056 156071293 57981911 364978096 485061484 501671460 298563351 419884363 984940863 108938140 759737222 182284430 159506024 159496890 946281553 130559831 352731505 73955329 143891387 613269523 889139916 106308553 862176747 118985879 639908332 965015385 322260746 69009390 414700114 191152600 193303839 496208335 307113744 307049983 271257517 107026121 926176002 108619264 966321960 18091751 637755925 504717739 885170991 939368171 553437741 114231038 581571113 754933584 439962377 753167665 876652379 815547456 31952996 994055808 4225673 999508107 468906824 754119773 677151176 430568005 130560439 994547218 298945840 951130940 410197351 940336832 684893709 677741587 826394245 926813809 569339223 942513334 802365233 603101589 808073672 364698164 755960799 738338436 252396955 749983106 692908694 556339868 895611836 332301056 64453190 899381713 783202858 650896663 107770070 239050994 369166583 454511462 645572777 210244351 425372755 823061898 565350662 945063471 724444074 992935202 608402019 415371476 526600611 1103267 917905370 648080354 367765573 61063317 81654582 85994960 565434186 369960415 336498827 202497690 657209471 943798581 593218119 708808782 253188222 381315003 394897131 944835606 325145099 980056778 896166665 823387472 277981731 984903262 605901166 739304521 177470095 986053170 485291738 712233928 102991066 989449448 297928818 940680652 221801660 16177984 345951506 998629705 359322102 392617652 553009281 670573378 43058045 770851496 980631682 978777774 512781447 446544381 33311709 468444939 164641699 578925240 40967349 698205988 874318631 231695861 455639660 302822808 785333875 5913490 537990318 473883698 857865207 639736722 910076664 117210102 347005923 530978234 490242002 37855180 881496245 670357441 197117692 845841108 851791716 176666440 184335810 993897947 4666437 544555257 637446596 6412261 778611271 904552337 634567123 114697575 155563170 554406332 621897563 379888668 559659900 210406856 195332129 249507149 830420322 234408368 266339435 135453949 275362603 303046543 315654346 6896664 252697633 680802064 508050815 652025058 815318063 732532927 830146231 257542993 641447981 736467285 908748223 102226585 887615875 428203166 861319788 871828476 835809538 448536626 138276419 713773017 361855559 931751262 733459703 910753094 454326209 441540 955446255 722560268 99673186 555346519 55925551 443388387 109546717 265061057 297968568 532886094 310226719 159139562 953918899 742244176 592853192 102949778 121644666 155076069 974969398 700895145 535184842 506550835 843027930 193763997 426698345 818845593 374116684 789510332 219135246 470385313 829877024 912008403 845261643 612916650 81389255 68945939 526396765 430991222 317572849 747000663 589744495 108108633 628871011 639123257 840480191 420833579 249004271 643518359 474983897 55674823 390492222 990790735 826919131 362715217 988247600 302670470 294558461 381417353 70444862 678417116 579389880 408785435 291013651 385732075 180695904 590734435 708823929 803740989 203257896 564167212 571616256 766133216 626245555 677996741 173498790 381084297 308344093 327571597 327343810 806417559 693598628 588488462 770073149 712942933 446714025 856172715 240422686 232067305 833147229 820550234 741665811 181145592 131044831 203634693 121937705 440707953 78577047 130058940 433023210 661856880 178704372 978091933 843566039 9749857 92750673 492420741 277288670 889953855 507814788 609137051 862133224 529677324 48230043 415348172 741578628 768342620 561222703 744054805 667046842 468518724 343774684 823661815 586138800 958694289 899836325 835099621 351921350 258949467 368923795 981769856 895764310 98025813 392646345 98892591 999016696 632931182 439022522 227866566 698739758 272129535 238027709 595918224 771393560 861760363 206810798 44307452 371986388 516326271 198210141 973121072 406993910 43621795 952005076 285537901 662520375 150174330 927714202 316515161 376783480 322471318 857636783 216781132 54865626 154754411 517867592 514094591 368595223 747792917 315345624 819416485 866973193 684504508 651957945 602211688 273118764 180000356 876139684 116445497 659417610 468057431 375615699 430843791 601648195 535083350 436981746 887284687 818984116 209569818 410840992 51010154 166130644 559674159 332163457 508655806 591533534 346033821 952824113 617566348 419735718 131092082 898713262 561796724 875311975 840000968 363515761 987833221 169194681 905746980 318772648 386998509 321682125 837347492 374978113 806234606 333609043 788845013 696441656 791851981 476244579 326322984 47336587 332150412 974998447 273679033 572904609 167326590 682234123 68808099 85128396 598053572 166676727 926395993 396067615 922042716 977235889 895377520 286008469 988798100 11504938 367004779 539193213 358322678 12220736 609223950 147682818 737306735 939870809 881353468 792736346 491584972 298662753 929466640 727978351 404138132 76173587 719796777 136612248 886181649 97299432 697801182 811388523 552617549 728584062 516079309 553110374 121007751 720238247 87105383 862500010 844718394 621483906 491076304 513687625 403797008 269635668 760888308 82443114 279173561 669649236 729035861 971864048 108436718 177536909 350302441 343977230 604527434 593273981 726542637 284599904 42932332 791389598 371502549 12855889 584714121 699292457 365929262 633884272 718926191 805274945 696986442 766262935 902862253 178528320 787174444 845725153 988288645 333611425 565684193 156063387 674476451 972616685 53281407 731326548 926890628 46846160 55830924 706719475 782521726 984252560 20234968 917622244 646126195 409382536 300725551 678314149 747854331 788470489 677119126 143168976 874543380 8918961 307464911 588807071 395139090 816606339 733960292 420224047 303298988 785845105 653432230 342943410 225876179 797521161 781157937 2316525 297043278 361852186 2271578 435039004 656861789 221211332 741627569 685383869 628441995 78806264 515553465 321862805 305588711 528623360 777850074 351521915 841019714 793230589 773311452 972933828 234762166 225500085 51114935 364737144 150632434 379168057 646447129 418927406 416568959 48826681 80726768 974856433 758431420 924304767 265307209 766158995 970515062 263966418 597351577 724256466 996960120 917243186 81095313 720453726 933725216 300936909 743204730 40874416 737546558 147532569 921545614 841121227 38859284 943461868 185787668 943217120 71878242 310324698 954191844 467855610 646491435 738280071 68812874 305108823 957071757 644028935 966084025 451206671 32058211 847744030 519585703 399631551 216383611 506704085 163008557 824523954 985460192 915714324 525875499 301534083 895914411 421986685 651146981 928201376 119479526 829853337 286072189 305556419 305501947 411917659 322197819 365506742 277169217 75455373 213190595 991133562 178437507 126873788 111460094 692136768 877965113 738810732 751835614 54314375 605242027 235868742 747342775 645758244 362033386 274767507 654210586 974585824 18290167 727612251 164215540 826425536 894386427 60005995 616937584 494721724 367590065 621230016 763847061 508453989 54147304 400512354 971716026 990571457 999650511 522754131 370817919 392894521 348874896 366929349 150887131 446913596 608569063 309179335 712678330 4820290 741043163 429508564 917224034 422823951 549839645 471566775 427095136 405676086 446228515 142351985 584298651 722557215 994419578 568430318 781389574 329457246 40147358 69229401 722370659 406724704 67553514 122102356 914649775 345784411 368250730 597007345 519733001 335704947 153069267 809134150 336996008 739924930 106267886 132135486 332333071 366366454 360242888 552857299 308854759 992562331 177517397 663011952 932747480 823979547 996274339 1173394 535034279 290390971 637269663 139163028 277913555 7759553 31025424 68937353 71624121 991125070 711157258 391666464 345464354 819045620 551935374 284745023 922796360 779370577 65112861 649656306 979411695 512843814 959211488 306993866 180329358 729821792 903867266 414950247 2576771 757924895 355672922 906125489 659563964 39557840 823909652 80284409 139036994 583704177 542560232 102156298 896837020 167446796 445281712 63268210 950771959 826473373 895183014 581015176 716376343 363258909 989490362 860605080 991892072 583970310 866824497 781974878 421430884 732158495 377603336 406727183 444592228 736460260 248700397 110609574 331216430 860050344 267182958 309935154 397904146 839833916 939640738 499582077 458310760 285598092 105733755 447265755 538661869 260444585 341795336 778135804 235682292 86465500 191190442 581326982 70356017 848752532 813084787 816992997 170504165 557626999 629764258 341711116 962125598 449787978 140425077 905814922 919578293 511809200 695655926 183248103 392224537 227770645 939481075 566466227 965080068 467809636 29717485 129460702 303572092 455237170 249041795 972314295 310343776 148677762 241657453 903443397 473017514 984209996 6899476 372413930 354425438 282095291 188214814 322961342 503078758 377457208 835112151 760715555 359534964 223825653 70427571 706000515 525532685 823138749 240763922 943485086 287363797 246267592 648779100 509603748 870160474 515002721 41076626 345240221 154164409 675827222 402520970 223856715 23605101 858014461 98836703 366241416 259726120 16925077 754410177 918273868 208479270 146705795 19651188 764735301 956579938 494917866 873698547 644719812 769359594 387497454 758000484 491689514 997462972 476066974 491016595 491310376 316831578 475525542 452225133 770005792 110389673 590795780 673262379 59614375 804638591 257954116 537354185 685295685 641227599 793090735 891783334 298498989 730990057 14899635 137189327 621098453 395565686 271380807 220451613 953967783 650129564 311687760 933191247 563515894 693244796 300332127 760464958 404357809 597515677 25969555 834357765 240874302 686109450 620097090 506160451 243599004 106703039 237349777 128514091 515819850 737811063 226718424 883419090 105507578 673373253 344624279 328317502 253722214 9624452 264157548 807788119 774034926 866145734 559850628 949603301 687217651 5752486 914441488 844923413 655957450 747007820 366403435 269843557 734326345 305167597 846043273 310825827 672035825 43364042 469594806 693597897 116380411 269710176 484423954 759280632 932367187 421265425 291414113 208347812 270333744 739042911 66872095 328209656 653293001 234793416 160596055 668561590 906209204 631178797 939302551 584162276 771368396 131284079 491245615 129411743 846479662 123208609 392496479 187966703 923493199 858525636 320033787 59386756 270700730 582345204 276667146 575132191 338752178 272230864 759201517 949125438 694530645 294448699 560302968 839822098 277562241 224049040 294673830 392285522 102911984 694048347 928493965 920576457 276501584 969344751 839769100 657148486 210105977 319564086 603304681 230874232 598680339 944660872 837452176 195876133 934928096 886332788 799673753 364433219 918663367 975090711 503695546 28606275 555325016 30044039 137740454 57964333 64889557 862389722 133365049 695435492 495267128 349115027 275186171 139705559 995757396 891029264 213739506 275456675 100835472 474607919 287135808 936777350 688039626 193600807 208542768 401176322 378905732 434661910 82607517 642165472 149212177 412600299 731554743 695136841 863818636 76489957 24973380 467621886 676994637 243303692 685227562 713046980 580143574 502043757 679286731 425063619 170945042 85292988 567164026 261230153 674446335 306154360 60950460 410236845 281058100 82126013 176894651 223316191 855866574 783499329 427940144 20406895 314334876 71238338 879298051 175418261 814287032 664954317 537471921 813893556 357996920 985720372 604522774 657683369 490979719 336748437 120926857 123555584 242585622 664544530 242915227 133443691 158135688 485507104 836709176 713162249 269995858 802409782 690128785 879556904 600208708 622969839 841178025 276983406 345964099 504784760 379576694 103513682 731822587 949569924 158222909 218434061 327294187 786084831 78051255 144860249 65542013 982089500 448748540 873768392 138792725 38289798 29013009 11356474 218533248 956921286 800942573 774324986 869927101 226174907 736138729 528135415 163368777 626355253 955437186 147192540 789694336 239507454 869122437 506831603 418652699 725317118 32995988 492899138 118234316 594617828 109353020 389258053 50590517 912633596 934939901 449798891 540435436 438186610 529374563 309155819 471717813 822312522 208596558 915806184 383730900 881142900 431878142 84577641 943012022 681668739 250986471 114036018 765410568 708142554 838901441 139862447 904303194 752081469 424853080 426463597 549074267 2522827 285885286 675531308 593710158 684787722 597866549 217918332 234305605 614024229 483771869 705131197 939376975 397715278 842575191 144593527 97174710 479107498 337487878 522070828 816573880 450352345 630690858 81313042 568870074 517693607 67864295 618981532 146388514 613932514 825925160 550561786 966445918 557546008 795690807 281756017 97709894 734905863 286393456 794913002 816744516 213638302 984711623 664748433 5982010 224757593 226953085 178683237 37953913 659456082 791341079 384892944 210260326 615319921 825409572 489362714 726095273 326422448 742421122 210907891 38577817 687730654 900922307 423155436 31883108 609290595 704878548 398204565 642705266 731418318 523144519 469646225 972973827 421972519 741129149 230972140 899513453 292487901 757020503 809157637 845111689 137694972 317510563 478876062 350483689 368757204 233844108 424403838 464595647 5962244 230356148 725433909 503253468 44341576 85009317 959966839 642996909 175477536 519623528 872373073 283646374 124802310 460150754 948874626 77660750 550825086 718969117 143483755 838520701 312332717 330814938 861399419 76868542 189239664 147845405 399557195 835917635 866611598 250085496 759684863 705712084 169115472 542839234 289298910 61758127 947626949 541691439 236539809 170158890 462455829 689926117 278810423 381470927 140918200 488615433 606676511 503069073 831755102 364009454 124856327 246282594 85662712 454417903 315169941 465807382 676454791 150888509 706174262 247387524 906820689 155877292 665827283 290591828 952443989 634371847 460103221 261760023 254213457 986835541 203228712 977135799 359464965 695801874 70053389 813332023 297912022 870643948 579225492 236036556 610899626 870442485 215596914 957485803 190818125 226598719 712049783 143844227 204150419 601922369 319423953 37612518 890884409 686192667 441977430 600913175 765269166 862608306 338343227 465487871 949632980 847464417 278092746 505312820 849668219 218629748 612125097 394721561 192504048 810028745 641960469 334954674 252856393 721158362 251371258 466307151 907231493 217394110 763971071 836583971 225870895 367632144 298593187 114827132 880156862 932603590 513874936 938322590 978689825 897797853 509600815 564676234 318495107 660096068 297924252 763646 636744763 823306951 242945348 490466366 684889630 644225849 662196934 209591851 620790255 425748770 829358336 467673271 502475976 312929852 900929029 267281817 496575259 50167457 504119218 338478264 777115674 435214585 784070696 776723536 194587227 328473577 319139881 542221584 708801262 379867073 544105283 132064632 99743502 320077341 211393434 981405705 358190739 152364055 393097985 639124236 227679172 287600141 331633277 772399985 708937856 835050137 201867316 376400138 35247277 147889993 116373799 379827080 175211364 413426537 179566771 268701292 865422447 665750358 250580916 347148383 521846980 187750517 501859559 547200744 990041154 431924858 435629405 146333899 400740739 504318513 431719465 480172549 192866920 671952271 80084091 258484044 752332162 669405923 891139173 778895851 350074881 866083793 72247743 582953254 90688148 456622715 894126243 983990938 492566216 152019622 711814246 89426691 23799573 846379012 956108266 964628522 821683779 156976098 154101854 916140767 34304874 619304938 39498629 616706265 738960718 3509818 273160598 131248249 482543312 882206811 535362793 194605536 936627239 825351502 856371842 44238319 521599939 328919475 198174310 798197929 289073834 528399693 806211699 303857421 374239908 38036318 465490956 578766281 772144443 115874862 514750126 269959003 662633836 303819764 24625653 601241277 836660125 662282146 170923373 377479752 716963286 483915496 266536150 978177636 386138782 114992644 914858412 662705864 171954043 574940709 905813964 684511534 954957816 520699908 340687174 444251606 49830622 713877347 473642463 946429451 262244081 785518073 600965681 956613276 631522752 493387485 681391799 660882392 567744748 311182992 955416835 644614182 526518570 841618661 683714573 910292976 493541998 541984880 83920530 969933387 400864171 185955475 476049629 413353849 144240648 657542748 502837032 195775336 333862347 93868831 35425114 438401117 400556995 542083496 847932391 330350152 138726985 403522509 286677153 35858073 401894844 987697920 991789433 67112763 332666613 142118782 447596358 814124115 819840667 592070213 179822498 289557076 948476593 313144464 734889828 16222222 537236060 640577587 51710753 513024555 688513063 509406655 675330116 461262312 554883536 890967624 125161274 940931530 700010057 870363441 853208213 782086321 453108176 744602000 705309114 344822704 797133807 433214811 982538043 534429215 961564966 7947821 758656796 275426874 513275386 861397216 960216861 878110780 621077868 323521114 58547974 726659504 949093238 20068910 927923023 908485959 147067428 777688596 427524533 503036223 834832566 688223801 969605603 328670846 828846687 27262280 168241445 820909489 819334409 494414829 364953976 52966314 76209713 5281947 21158582 827010040 306990948 211687274 370348696 952732632 965568303 428226003 937089541 672361540 349429090 867296695 914469579 217515309 695230681 183070007 499378635 172473206 929986124 81634508 151567210 58343762 520026454 879997259 899404617 810840600 356221693 16370680 369265591 695071596 909919457 372080887 322638194 69774845 594105840 935391918 618184790 890301526 353706935 137458742 973789086 391876879 341268465 972165150 736920611 624139640 821005838 49661324 767762757 636755032 376009816 981108414 7038018 652160185 220381016 580546638 349991932 78349201 542897512 960758807 824293826 224024441 212882071 909636036 260493563 249403359 543511093 723317248 579793747 316177070 220542114 350195243 962878762 853472304 673511949 25730061 880348843 102107792 420716376 493289928 818118995 44883922 73013480 475255996 40779659 512990349 5993348 194779201 613228140 76723772 963924373 755006318 675813423 785860347 941122310 929591246 949485368 882156782 491763574 449149532 869051190 255197966 998641676 715433555 884336373 812399387 27632887 661223443 409891863 689580441 287218290 688045905 786097090 799594665 905161228 30463089 866129969 68066058 611618771 526731801 867989140 727043382 311994164 829069256 10061451 386285881 872347316 229306073 889758645 477724330 621328918 964662690 23239866 843095333 29432629 463102707 616015429 221312175 518631259 195846239 934348430 878232094 883746471 273260841 99940994 947314993 72821736 783338314 643819696 612044604 154725230 7907204 162721091 15842432 112559870 764719576 587799607 674847616 544443739 321910104 607545592 527278212 613737705 703398671 736060775 683405362 742250213 215984646 255527812 322146384 264619922 575608562 685827110 112864566 590541938 197819735 355414923 582170190 84354087 301135951 12266010 159407944 330977813 194075733 888932237 718771697 186639645 92408262 984323239 917915007 129641076 870201163 153452905 258502505 595205243 164381796 381918578 250707057 37541534 62929208 661772250 683107994 6171326 325144963 501284097 592989635 67258533 609832031 305179920 119788999 997878525 933886124 379568972 180667960 470281043 807250810 40328767 293140561 739044465 364486261 951509136 745272381 909842183 348996253 85234402 598306063 388400267 790930682 344015390 224280476 958564879 60691878 179542649 679612603 57645423 588785022 640042913 274124028 144906476 867102755 211727099 420482811 411047321 794563650 40510610 392956134 183754998 388463262 46867613 287601356 939429050 308897726 825474608 104021006 69404276 949274022 98174435 608880994 242077066 84067024 539704503 82853297 858458184 734800863 870037363 254559295 953366175 530891363 789808916 966917322 656131310 499425539 372215572 51549115 405416330 580938065 40698968 912668553 248233172 291854842 837346567 335241370 902153303 385706993 330770875 677505222 408865287 901905690 511603184 401458104 505114609 329504150 141672062 21106516 955507486 247258903 389153669 384039460 572247491 685268794 100010403 976747752 727314518 750047306 266319451 274617360 848221248 999782991 189616547 651628503 801963984 636189871 125794451 487445791 1515344 947086510 120110971 124324511 157823759 937495827 410985177 749859306 296319481 500320548 100571664 153107378 89798081 950681140 283093419 748246291 908013974 569765853 236126346 802411942 662107013 332466337 728273301 837434199 739056795 445169185 329235830 849130396 471616782 766786596 860731234 754792972 192728536 803368434 475519441 473140522 292672774 904558802 761397150 741338650 50729436 201562436 901539219 369967838 843419019 207199357 98845084 665452159 71803952 331990751 524257053 616917919 471264966 537097464 50335255 408144486 14382887 975991355 345429107 779665712 684746690 641009872 945497564 987758469 217230621 913715654 776039946 332999223 821913796 307060150 373953515 113615288 258635198 390149146 610484787 581570178 66575118 520023751 204348055 24070919 354522891 836403087 819992344 132334263 599293647 611964809 334970060 293001981 525399988 980621371 524612320 590538565 902265500 375963604 781989083 447912198 962545534 534169755 985179593 576624832 376267662 943994528 11100900 604210735 356937558 198128643 832256585 198014762 421136809 584985455 754512372 597577691 49442178 335681395 993104703 524796477 508975258 846933557 289185873 914449742 184902339 108221745 126176955 753661611 752647510 388410297 817369889 936985634 716434541 583370101 431160623 659378619 748550622 859606983 744681125 684118150 933810302 2472777 162285021 407164528 131794502 253019763 417825544 182514532 381200748 255026407 497175553 206345012 290773549 390337708 564607340 544106032 970931667 547671792 202476600 147656247 650118410 779295529 778323563 123538731 11877222 669705178 175141296 54535867 70081262 283547858 954022657 444389957 387497625 163660275 284490375 922002230 632181336 346254617 487722103 599607734 967687686 564540660 376423212 34516760 787852158 503199540 624744421 910011068 557901336 479896916 517086986 460014836 982455067 341950548 322034507 958809992 588530374 302228516 824103110 169382282 226453178 32173112 958161379 11030663 544910335 428360697 901988944 420555920 35802332 899424615 575357660 683551328 236012876 4344972 1373616 157619286 214431124 977472088 523410108 321996857 730902799 187748246 45861782 576805817 964014917 716003564 888299756 565368770 439144510 666429032 16482463 323472494 138499452 390645577 778344474 298285309 839613671 522377664 843276779 917908421 760471799 547181127 163134406 232449652 278258701 37166455 399798176 638038955 361809946 880688059 563240552 635296193 35270429 779507433 708221812 19151467 462661922 385325322 524875743 666778777 998886563 51277316 994573365 556575082 215069115 92235960 785762509 853695422 825190260 896705635 735018666 487234221 11445118 837566581 187360185 915119883 812111589 417920742 208260985 864051740 389398325 228774977 799048920 637024199 398560793 854389753 647726865 373860044 272189371 196734547 763553626 864692814 307609565 364350319 887747560 561465292 40296391 468543374 849606958 99622268 874002153 674332989 563466817 939352472 408332768 639495037 204777733 570377682 200905265 709294104 565000113 382138025 139752455 731054279 387570772 741336683 568624466 537238052 209671837 116248032 160961527 780341356 853121097 121285828 393097772 394676890 20833584 288639432 370203209 483812688 834242393 758990176 915958391 375991016 884520205 244302619 773149011 89547451 150353668 844463393 754100568 690975545 1740614 777901179 779521629 766538691 547260792 875918374 529213336 858318464 91930524 703414426 617937368 643286924 839262491 208758434 879153494 648676465 558768885 344696083 794596548 926461602 380615315 251980660 793577206 52900698 328307199 748123258 800189794 989073124 18330707 156237542 704879315 587052144 852715720 490642049 453216816 108333408 621990459 647508960 467931112 562913059 744297149 793338908 621694110 225567388 449601246 699416097 550845768 524095058 757982375 308106128 895945467 514873037 892703075 660025568 415314875 119605821 344043385 346155547 527507938 359579634 749857728 432236879 236163336 835774476 468242421 618967211 399738988 757819997 922016946 964233025 564893889 220782068 369614692 563210801 77169727 290684624 866966991 494767938 446521638 354259079 694086628 431306755 976807639 794963612 310965141 428724533 755877426 43422109 781833008 241657846 379295415 396455910 63333666 675733262 815630045 272298097 269245601 21747466 377584447 803297550 426880073 695181851 542251004 997175208 999148538 225614708 919246237 728634842 981977891 481635112 238537900 904945156 805803203 366081428 78053368 674721366 141225273 165388327 906957638 688477661 270277144 630013983 562483666 361733779 857916296 889751145 472806397 583306047 873443788 443421627 217697934 698281268 979117664 546650180 366040042 398125806 972008531 524906654 140385109 268609352 218963324 104297549 417737629 510855034 271275047 463156657 820990679 446405861 415846921 852942799 695905 133359232 38376219 977535290 622307922 681157832 401473073 27889255 456388625 164111056 759634102 6634165 476326184 602482143 149643931 982462627 885839203 230522765 330171643 544030134 974854884 899626195 360176088 777131664 871669279 475530804 237669622 754335161 356889974 499365033 731128900 945374521 611894364 947770517 742766950 481368932 765690931 1405240 895122775 893686512 374306320 392450944 399289885 332525623 307156680 225953838 405908403 688720067 772328864 528258190 26265182 546321669 685066960 8402194 277635156 279685169 551160678 529456787 444383557 526269267 403534650 576868551 650797640 863486057 292936233 583458111 735477032 150380179 664778885 76070714 472652018 330646282 504538385 181600158 683409067 972975652 493512036 878976115 204168054 617014373 238014407 117976912 527909832 625843486 280320967 860163852 283804756 655342575 565536736 315144057 228687040 156573695 947459468 480684714 651654445 642680069 56583178 600012328 599179734 27216351 836571409 687879944 312295422 936349225 522761183 858311477 756551236 793189875 92340805 558528154 980016752 759653956 295704028 848730071 998830472 167816177 607360997 256874217 636963049 56975560 231960472 918641981 65232274 488143077 467631909 658567971 256375415 422806674 694131433 81673512 644408633 734117960 541953264 774859613 664254423 148628597 835420946 177834442 71631942 986933650 673577388 530054985 494924244 345505518 595005040 852617751 85457517 845476386 705529065 645324793 473460191 26294998 712252043 516832474 746520457 433881930 694256214 801442026 579774108 763763210 371958720 506045040 759609432 697073691 426288769 152682986 856983435 105203987 917088463 477329964 79897851 787270636 353293605 786308973 258825978 551183393 310970538 946040891 947498267 233138679 277967961 708190383 30060892 512850578 299995447 994296021 457344816 68292102 898147644 459024278 395277283 693631517 442533658 935964912 565081766 165087385 310704676 212529855 710472812 894965307 143862641 929345129 864166780 996133226 9010224 349243196 132628304 64841240 261982161 11675976 24102027 917874103 766781256 113629737 262939850 267181134 84272157 17287323 613207307 692063161 588204000 775114273 195276417 880114946 148221935 604723454 237162102 642520332 408387853 725276158 802121237 427801444 681739713 933347033 499044354 161315788 279343436 547222091 852505658 326607731 98669087 486100588 935874377 654535033 389059599 668703719 803199377 60867196 134227400 808940941 125787007 469770370 447830710 8247058 893646958 674974479 413246367 859179197 218265246 752448867 896981640 21372881 482270884 149689680 778460919 930753366 111184273 539989453 450289728 739931593 998617179 851684797 171236323 136544459 867067508 363433045 86573935 515537395 804326591 900733264 553216805 82691458 63948933 295273618 748524530 64046195 79769275 858638390 867319219 299053749 328781976 809657138 803283642 387175590 304057062 929397796 812816768 27135294 851601220 182496575 589448084 999865519 693656011 26388067 229696782 296359811 964087264 877757432 663379301 243657182 830298070 729411674 466982846 248415879 457423013 258337066 671345097 87007796 300912188 819571627 497915033 431412041 835720402 729931181 660503287 677057784 538342259 130460657 573688732 934865950 435198277 726827865 534411002 237121963 9799990 944993089 614543439 634493740 264495603 847778610 226623399 42868280 959879403 464504818 899974683 870508069 469941187 356960348 692442624 741768257 612998304 934697032 736765555 114960397 960419825 701791582 934902449 482494051 181953632 112276531 886647287 838328362 102367687 497836684 372941171 687635066 79022593 77257666 367193306 584533668 998658555 159577738 547399580 378252709 993883813 930418431 793980446 53883064 567090441 163685055 34096630 335468982 338449325 364105010 517120473 515217955 77992352 350169501 685039710 486728545 586480500 186052277 290596517 406039575 236265669 541115592 220241356 43462359 79724038 746814135 620148011 338137140 305774375 856222770 26804498 576295414 159218507 527488734 14672942 842763241 707509331 676955099 701732026 403440623 217411024 395688613 241716351 157139737 674754256 321043272 578797262 472724421 113105908 220398706 655636642 482605441 794239420 573541277 921834424 80477696 441995889 789236449 714091879 235687248 831154148 647325862 752803904 871350007 951668703 500442875 494335023 528378769 332357422 829653427 203255264 569861031 881194607 302075580 33525538 904557683 383506793 81812445 604750246 205164495 719364121 2529520 42134327 679010218 311277571 43766050 897315862 84804045 592723341 593451525 583109761 430729221 28845501 99059574 849901321 355557008 572653011 475583713 101189185 844285984 643920623 807275902 223954651 751582172 566833371 51556786 956447907 859033089 839500817 310836250 371118018 314249674 771114998 562041540 108488546 518526850 243543110 583439356 748332060 881335574 98933806 696598456 502132854 646270771 11447259 272215718 387419399 159333561 367131970 877789797 226885139 210492537 912973633 616765314 238287768 265242638 818358406 9844716 417285154 631496290 653393189 192469666 4142464 104042376 451403126 331177332 922131971 325782946 725628328 399587535 427255737 642112057 338871212 816862302 180606568 236959819 146987127 832291224 406142862 693506737 760517963 998318041 758292609 895354648 859619245 272758339 996395634 151090619 908339512 151508318 890458731 142009976 429619422 607687987 191790998 97189861 443273266 458865612 748523613 580246427 469201254 707124106 406042203 759548840 58138461 18526603 370984883 50426061 656023387 49202633 266371733 898887001 472142223 860112144 64574238 406629597 474537754 481779827 6846942 358591789 203200852 646343570 709173866 848554513 562523909 353918910 459492983 95254155 904592705 879316100 433345459 374079849 599736089 411287430 443935629 365015018 370097314 917076044 533172042 419545366 933786604 176681998 384739373 971901353 469752410 401710585 934477719 965122691 150311534 249107046 552504112 617445814 212585297 478860029 803273365 980916500 540407579 538926875 301100037 291006175 485850325 297512477 311797325 531247652 504456800 116076169 518544415 11137923 911355460 796408876 915820447 439480690 100197815 780593543 383657929 274204630 615374733 878804082 735858209 630466529 496910209 897442123 837039498 334919413 965906569 469882105 899698417 300744079 707321715 239807174 130037327 887841358 760971961 963578675 416396348 36052862 107821529 932878881 893949913 407235941 154387870 216281062 66098392 811269372 460094897 865784980 749747647 994226478 698756998 898301400 919019705 328128150 450466583 67243618 671538536 859325730 811043740 172262044 944944374 972582109 717473970 281241408 937444420 410731025 330809033 915321666 534579898 648813963 846570785 430624375 557869695 251044845 991245932 607719631 654169512 364456782 556312409 64672660 198994691 409547424 138253019 348818521 383298319 705150800 455109901 653940204 533123331 65651267 723073067 612774410 306323346 33651601 927348403 206911606 662231574 124421436 19827725 193339687 159766201 456558390 747366926 719539616 134063627 964865821 798783139 866116599 640958874 446999991 334729350 532052688 84688344 52088628 116663361 586951511 734088609 452275870 373927160 270048737 375215127 16664958 171952983 120652522 982728845 715795856 265868085 833926145 388994276 590597702 551608936 15941414 886258783 614278669 616980895 697814761 574694850 154801376 581694591 538115199 232760833 957478938 182038212 936474533 11481856 883049106 641829383 845166975 129121822 502270691 979576029 494143815 600610063 3494181 884510878 527167573 567982128 416951262 864364422 782875111 770327686 199679831 680844982 652448411 55597427 936012275 185737225 452659967 539951150 824349625 612852817 73180468 106982254 557325623 344772183 322529001 512975783 594718068 606215813 874543171 160855938 602468526 527594303 110394735 163282445 681010277 893814278 141532812 580241349 300043115 243920666 555498134 809942521 537406023 832106083 511063329 8522417 284430049 589850591 855609 174625102 484371803 35266466 50588853 145640445 268787117 94427115 729307669 574176426 74627857 21596570 923096655 529307382 71975266 194548747 865768369 526029348 783029057 144074094 532857653 87555161 18532311 137971795 987031243 43181779 491564710 186926693 597130151 301734322 708345340 3622640 414214433 497169850 858739958 539762110 676507175 775209758 4227764 432921937 65141021 409911084 814069008 798886340 148342603 394100324 953362863 246765450 587095315 20265101 653093181 759480427 998358747 851708790 882847871 602435044 763241458 848146335 832436046 806552825 860930232 809930430 261135043 295803513 959409693 491095377 17225919 404214911 780924169 752733187 602132805 969715065 479789360 823840040 14590630 531749616 906912486 109858384 582657467 234582422 97547584 167490838 116090911 410202833 456686268 215550062 968565856 353471189 598312381 686774341 608626093 365676973 875320251 771871921 875390739 553330760 576406358 355867920 859002900 540869418 766950312 242656970 667761962 692132010 44813911 423771237 947569165 165374211 102647144 579131511 977598994 232775506 830854215 290277719 57395129 234999491 137920434 742366253 515743443 716335607 631919063 511748973 485080044 341294579 933710253 368757364 506012423 863318031 202366369 366365610 951685686 414471532 845978441 848618828 477388883 782924376 64428052 744161942 153892790 10010711 853448020 181914149 41445216 526471520 307531508 811828153 818441583 522259405 336150785 773113240 899230829 900266592 166773167 436405307 15847608 7200901 712569646 401020587 719380260 12530353 943926743 651904762 799596499 84492035 951289736 346265501 376418366 996442411 806980842 573834564 665696673 376215725 21390997 695153934 847701510 926066628 667076872 680002223 606712539 905552910 807228395 967858318 427613481 28665261 194660495 253096707 667138214 97421011 599841535 880186428 361969219 533121890 434057518 236484605 852009365 449691124 946263798 944814533 793946863 953741791 309257146 320576697 366757158 195439502 576009774 726657778 960135041 189002272 272281118 816224262 660502142 961648449 787620730 625593792 142597941 830022408 834601442 637785353 992010068 770167079 316906819 419793654 998727710 929310438 323082382 208932377 821353832 361462239 572516327 404629513 182780730 933005251 883157008 795727542 668945325 945853283 404537149 573032268 396526994 918808372 994751534 192643003 925758622 14694823 682973356 425714917 810315765 856564742 338095352 683628967 533650107 921831997 327956186 805849455 781554607 423539698 861082194 862621385 207413616 608718471 304683414 545442356 602373678 151083482 910671668 413747851 325965392 282969395 333459736 837935792 620853988 150425796 968624361 651377861 435670194 81102203 164007592 238856375 823371639 776589273 680554989 277884466 827483668 452848834 692497937 36847093 943398882 326184873 739076839 40820036 505733337 718380979 62682869 26520618 439056893 847712603 776197968 319255322 145569087 543653813 63350527 745323840 356146120 524046578 303791626 944361645 806979078 232633434 263042110 278811834 163793247 316900421 765589654 629265918 461548778 569849173 240603073 617933052 655374867 983585367 227910659 909804716 351454904 326804354 864538605 68992821 528548261 877497239 537272076 395762208 993016650 223375788 547799758 429470343 618784283 816424960 235870988 540845979 755457311 199604472 571461582 316334085 968753616 428800775 545747714 674396301 264865002 186208232 800975028 669877075 556150773 988756416 537259586 550867847 222527187 724024136 81950532 332014717 302119238 481756703 761075204 840730376 551577193 541959503 441494011 505497041 934871583 693183641 568145460 662546850 925357845 106371928 911505944 529711650 302109372 465856855 193893254 383901880 852497294 461697941 151401710 345104580 576401196 652382906 118304990 675276725 500293691 79028233 724038737 28740819 720894475 889396280 249427531 253039613 542138166 193887924 743855865 430159137 926369078 287598382 850824549 861842675 651749269 454000041 683068053 392412992 358180417 614482238 546471265 755818575 644184728 966648735 106494976 285973518 398960606 722995137 68800100 632317766 984598340 373975207 237031872 426178825 14530358 485771969 679556566 823811601 445845860 7053037 482144420 45630239 319121275 188830740 540971402 633946718 472972820 86019743 321501614 962368919 527491278 931546842 722837266 121473227 286044474 257071297 705022546 322367604 230978641 997372647 514807448 950654305 378541328 769066148 655396839 586302184 221865950 435432179 525017299 71521204 909710543 124146995 265550442 346265158 109767263 364544036 890151186 753277323 240281736 729668790 287880337 134487146 739044658 912128006 478357700 363773194 749452036 944319329 431772485 745483380 342394874 112275611 637764198 59964704 535066956 314490551 969382282 160488121 481362539 199095578 792991860 532479458 570281096 979529389 340982026 109742976 378620891 723675860 953272551 928059959 484932916 302308978 476936279 324337276 177618556 545709414 552914504 597711836 858885694 520627760 796085583 519594972 139124193 998364722 231512938 565056200 59660438 375002088 614950329 278575200 752784305 328614223 146529041 75386235 629825107 347782980 809246189 425426336 110190507 480135925 815923005 408107577 46944280 128223017 424873503 704763115 646816390 658059414 712384655 875895011 464810801 296543569 719939843 651394420 990354350 639702703 584488553 808301540 948773202 386372214 841981122 587237597 766184296 509735510 671846490 567035968 170470607 428529295 202045478 559703493 595188571 253876605 118366264 129622515 269158157 871719298 63337868 384038089 67852676 402624377 447025285 192550933 955292465 589206471 129344859 755571626 686523097 958324116 507762430 929274647 573665116 800467551 78840029 830171265 101104339 176263613 68651880 625673371 199979504 745062372 970612740 44638056 623648777 824626035 401911422 865060647 165969798 136941375 407630859 487281307 310518206 230670035 229931144 312130450 327683226 140024229 908444341 956666229 2579314 621475384 652317060 823546936 639303522 12779166 311717877 417544959 534779530 67525212 567351137 712708999 312562144 152940611 622356792 827967521 883253716 580317288 602096599 892137159 610111612 487712824 420637171 185206049 602713874 462258524 153312939 975127284 389733950 304125713 383276759 209114465 917546036 121456415 82633422 151214762 565904458 758595078 968003277 743152789 545128446 605964800 325292948 629910097 534602394 787161585 142223138 558066536 792141296 595377701 898277151 911389197 123213164 734501473 385456413 21237842 979609119 612743525 941961297 857656413 396672409 890244248 855967637 266306651 564597781 821254956 464715010 66793948 119543166 740840653 275550936 586211876 634907702 6897336 220980071 987637577 163173394 504843032 672946821 687965433 605409521 663377460 927583899 354885853 26088999 248542857 736022639 196208300 800501341 470371084 823467829 785361500 818481363 769441686 854211676 917957933 116560423 247815254 594024511 4162163 742362163 804075030 181995948 122461273 240340910 764218781 275537577 549519638 249380077 484474585 609173700 431877178 614252366 413982953 193106829 670133090 985020952 981811754 991244616 73657229 240903186 557132740 200969266 260554544 810706880 243563275 206974997 789242938 92177799 190053660 582404347 68208067 532050090 507080919 244022971 417565001 735488314 327263686 133941379 688059887 932845061 730502902 377098329 318742331 559745786 786453497 385988803 446768862 621054499 22165132 603089357 686610184 518091800 428210748 929275756 925967445 40312781 196698720 315129286 965709618 689083655 838419517 867750281 949979350 578850767 90022399 898104416 200708069 273951330 60003250 526231249 891371892 29748938 796042273 326262998 95752852 203600359 717042676 495994386 964240620 29434221 723326717 917279060 937705661 371371972 67004407 421509232 902320164 457224560 810212298 335656231 561404008 549504222 167301140 9689049 894760890 563885697 943797631 351697433 322251930 818606786 861453627 144417117 804246309 538564940 270481557 289504406 133925691 636285254 119351927 764998251 821946984 101624295 236927750 611382655 330804021 598021781 488143509 92806995 20176154 501230910 34412037 854344848 496328517 320657943 872069047 60120691 152504689 59069964 584196633 308270934 617831849 363163549 899154680 270268107 658640711 796515821 319699955 217559993 749496047 330179670 577376285 287761713 896879518 581574073 806129536 512791506 324925968 151893917 416971171 865452752 837535059 320036740 812329703 964025625 298892023 462158853 351180865 680392527 745726415 960054405 674510614 75349142 77202023 287140594 555306687 770382346 876881344 748206418 642145925 450346591 781301921 896368957 788670194 230248100 356255919 124022884 614376227 593881258 182524184 28047785 772901291 117647606 337037212 999641087 131270411 711887096 541257166 710465044 794070227 912293909 505454126 828927949 314991257 109771375 697800094 571768368 490059995 898601244 922540891 501342724 610377590 962802060 950581936 504683286 5547799 186828340 517863616 133496413 57472936 43428280 579262688 822153001 497624976 548689564 920893091 560379583 687993350 884921691 633200533 309776951 329509043 50318844 581707216 307818024 616229268 372712461 781225434 340792015 125033225 882116974 955625520 470694159 183948266 270702953 338853761 678960449 539327067 856459812 343585794 501470241 23050528 931177959 133400382 939569466 203621987 459217223 726040230 506788165 545603153 10358644 466060810 98319238 442927903 639477710 662642336 940352543 147278737 482952155 773072740 411233545 617989972 242634327 80334489 480942117 55585607 76268982 963069311 158582380 784959480 998561612 587373302 979765110 149947104 382096261 954268442 397391654 201170791 505383874 361632239 116138068 33772343 617902293 418191381 215300008 396253344 217195602 298158336 302219885 183135012 519749038 775137583 89545691 434543251 514786207 422333837 587932876 184444680 844456306 532132576 509010077 244195290 783124156 610366224 259330669 342087683 850698013 961459950 531739374 84645655 729086361 96529088 652820133 991521552 889802037 935389864 11415152 889153791 255124543 213349574 86011045 733864503 156341419 882366340 328906285 304599126 57171845 686897557 736476827 732451818 944763283 743945860 248181453 938376282 549880282 531864585 126882738 609759167 145686365 101553178 422554098 32436014 452814543 156066286 329334182 639962212 195839980 315933999 695283980 365450721 14380499 741278819 374371820 439955252 635241243 99543752 580477786 83225620 912511283 166488016 776050502 403983932 650175723 569570200 509830829 726629355 179132865 88093346 774799431 231554736 191238081 851081392 195868089 594406234 299914077 592755800 89306780 387607618 241622911 588458296 140595782 648952129 744603349 276732644 578732091 617423838 72056886 577139399 693127085 977416614 93747006 195458608 419562642 155421889 520076957 97340797 627092164 951664149 768865370 388330928 32978469 988780032 188531528 954322735 689106384 862515087 376000629 171315226 379050648 882248787 19127953 524104682 700598747 627887705 217083363 961333851 910174350 479113078 863333019 617804693 625434557 541356650 100837849 977226274 154990320 615203624 532660100 963260999 241678155 990478139 299641897 743027379 592926933 273721292 186077364 895261518 339808698 631624667 834051574 655665110 871911070 210325828 329888682 397714749 465317985 274267932 127555818 310562446 941912453 857041990 567444435 419886786 845553137 649537008 381555699 225701953 627993091 56122319 818674726 131345676 611081345 513524449 654845559 821492833 116051180 339993006 539931410 154399372 708634598 258719618 819424483 901323045 45489141 723888990 168794875 659965139 602191220 639242608 9191537 893221772 99463538 103007699 375265218 960291562 462005651 666383861 681742268 799622687 67504794 138567785 775582178 117819766 761720876 146717703 508765927 870147214 5274075 370290467 972210384 437108301 124951031 768545341 731436175 993329379 563350214 277290795 153245846 203141461 132464248 243666413 85812142 654712164 995601080 132428804 314473943 443167581 870535908 248047477 594834317 977049595 846017867 707073900 732834294 484799091 778164152 708620657 74151072 899297512 671767311 755097868 489152921 455668024 176381530 693499905 852796647 139666503 223921632 959134388 366459516 981324469 843957158 343897188 313513382 967117856 849831720 287239918 444889429 674877287 853371691 310524942 435929471 915625830 791187079 950362090 646226646 577012354 658116725 69260826 2931218 906401625 222471656 690392103 178651900 60289819 53694202 26712978 950244269 937973757 352310199 833109859 589160607 533012980 193170038 305365973 940334681 193564031 318079540 615872739 232723838 791527198 701993184 705218831 385047326 459407214 684688659 629029843 82501939 236368752 324901205 732173824 736264227 452919153 411606102 899274415 785329494 251479990 90862142 394964538 342754940 487890523 801863017 952747583 175160642 986686443 577523628 648476833 524396911 747197695 295727646 890410960 253203368 505089018 811734114 150559916 195015701 298190788 403701268 42886097 777299774 908246178 995050005 869371505 947181925 968558308 990234284 502764673 491983804 245206171 400176309 623323842 914030037 922752731 899697404 293377092 159092028 930446430 58141770 747162437 329036305 748483037 142276938 624488607 740854317 440834142 311689189 485887060 276804634 729698518 188877084 130391151 558012651 170210030 120007632 506149400 348314797 412544565 639972210 404896126 524776242 774890528 335477157 958747794 145731769 835521302 510567078 995425777 134746512 97954566 72929460 355624017 30897237 947017012 330526884 536435060 225229353 641178975 265942170 493476692 110720254 913846051 782263069 750579540 610637532 292203012 438566681 159820947 253111472 562656707 358595271 981273906 739589705 365727392 392440561 572313755 56962131 7262460 128149968 609513857 446034976 514722728 652010788 724691192 887384035 427307685 183838558 293531260 629240895 976277395 784495629 267572297 141591242 841421722 422293724 622158269 710285185 332150009 133323958 144945140 652366710 363166359 324467981 898887019 482646028 862826251 956180484 219731169 429802967 343716966 836991739 129914394 747208011 268618797 862529827 709984866 899803345 407780641 283710596 687000230 240466849 369196688 614078339 30691300 115131098 983884118 338695013 753327921 662440332 2508641 518502517 381519639 620884456 588154493 734400754 291537823 715018941 105175373 661211117 510276668 596350 401857540 755400343 395300993 580280855 872277304 982593583 306436734 692381422 666340755 682294105 329877704 26613614 864228941 67312218 656171847 349195618 30602179 192289944 242523283 758080948 590172505 832876543 654373097 918797745 533143257 345322448 78335883 877047122 913567219 365065156 549058360 863071844 89450466 63854883 24335678 398284392 956452703 352375884 352619068 747515474 88242810 490384502 520120595 52615501 107277970 979221088 59998042 492970900 897316382 374394484 640042388 158815830 64570302 970658458 16788485 564377621 807570076 387612125 894066094 403486799 273218187 447960438 204596967 338488330 214232221 191924791 712696621 377728758 54918395 882278446 128701248 547236774 892262013 779523559 615519456 526668942 115610033 101660860 38114484 612444966 67351374 508764375 276254638 568009004 435933704 691124885 846966307 138129210 932056539 733185465 137692306 363327074 201106879 262572478 430803368 202214643 867511021 53276410 238630848 887297832 228478334 613119975 763253733 874814444 572094030 375743416 870098375 348551716 280312084 122927007 434647888 52322362 850515792 343883159 711968015 750466938 233075381 493136836 436973845 958127167 224684258 202455915 874337561 724188705 255585178 903137831 36253757 716734353 873329577 836406044 546239287 467625270 815174557 414133738 477643915 430221453 17539391 78679766 889637915 725343918 684133996 875665181 750020493 242524436 860725790 846927806 461516090 935362979 157246657 49578271 263594243 755076320 500046578 733756640 496023752 164177348 959139777 835638068 525926678 599183834 888553572 395257398 851125552 601846401 606417313 752860875 116920411 756328422 990114727 652733095 68895995 773961669 677592426 105180880 920666427 77189779 746580954 440563781 82131796 111632795 95441885 574035585 743074284 166470224 340598520 904164982 959835608 482566256 121797963 706973978 322775133 100626969 346147159 244930598 722907743 512167984 738189074 709509800 307282140 769396002 73220009 619706962 462416463 138037051 992132911 18561828 581121607 153856217 929534909 143644756 926340683 161251930 755048470 927569602 383907026 49303232 153425278 206853170 106218331 315397394 93560652 515782207 95610742 223337440 27305592 601026342 918611952 537988856 125562088 719214980 449248199 659686883 204752356 257394409 962458957 680500477 667002278 425972643 373117230 740200647 670142945 757653057 667723312 93426409 763745707 3017868 501151656 861874840 570178819 943785565 353507094 706516688 975561218 522660864 841382808 278573553 214574775 974710912 176336897 527602818 177692463 783656537 497321431 819436234 304288306 703265669 17784641 100638578 762335545 392792097 353397382 992968869 702161011 929135624 87775103 444228078 309651143 336270400 39837510 995267571 333154205 422062637 125281511 778028602 818935547 58173016 959014871 602956626 347400622 152693135 638453082 535039124 885247702 851543824 609858394 27935382 712584034 94564795 750481659 262106571 81185338 783278785 899206055 274435910 499860172 784656071 664684776 736856554 62623040 436589726 672696599 624919340 137921850 549345106 150605915 106358617 732963424 415521944 37156246 825775477 325848422 140524634 888419342 911877158 335882232 514747842 669891302 920513157 362804475 173651837 511572870 538430997 405153838 686216080 453759103 335705761 603156795 38925060 686074572 978044785 320433436 801398389 123184659 882861667 203589519 95429072 924375294 248930888 869901528 884996591 234061428 800575995 897445295 598144049 62973626 927062666 198878177 390710511 382728265 602117742 102406995 49065309 281443571 705824741 793778509 107507197 864385615 127210537 372658087 680881060 940376018 31683302 550115665 193581557 785655 794553300 388203330 637215911 476828704 830764470 406226207 218176369 696256980 680002045 144956387 14918089 613311335 261265151 824639423 484186176 506515086 115616839 171705695 594302601 468287112 958181359 415567223 441531270 441283613 430913293 25248298 808426993 897150355 795809227 489539941 188668846 56629873 101632330 927378611 97355990 960968357 833142419 195316307 116756282 996593875 806610227 643714740 558610246 779729377 584980176 171199006 891828698 363644222 64289909 382762219 984784794 982676718 758249173 255760708 201759164 422713920 781435088 354923598 674667713 759106594 855694777 141678962 872144453 277350883 158454551 477680232 172399561 851386714 296189048 260485442 854834976 972756096 618267181 161677935 129252024 305775390 544849592 682245724 741973812 727881789 932561507 741633538 437816991 974855258 26571102 255484515 372911160 899752208 799076981 154118876 195015192 892823851 812365965 907809110 143782684 146105465 244624135 404278628 937733756 316197646 741809873 717577208 260592310 747891818 606252630 606015446 146504615 995324911 675295815 6931327 812116775 215066397 501157236 237568894 107890450 518247611 309007326 989997321 977841089 251431659 481817548 485562249 774123967 630646217 61081918 195902660 311626002 951799654 837479193 114173330 177998079 764414200 601270878 824010235 979130435 830073268 122242691 254886220 301968498 670838573 539982071 323775132 852396589 227164230 218562704 268290260 413897107 801975365 34261603 165562155 791272701 439023446 726589328 779811437 959152665 591065862 392071103 930245412 972793504 502900477 417388015 345762739 216267003 494283439 487313892 729910401 796248656 128778711 662529430 300819176 493536660 568310562 42987411 45401514 364526127 49821452 547480415 309390810 462445750 29525904 724525492 696764358 447530197 78516135 147299250 593055898 584024459 438074869 278485098 530707318 697031139 154223871 217502821 860149458 932382177 893805339 680317671 856420740 997135280 545882771 454685731 505736512 531562940 138358151 579306957 757065527 767686437 399443324 530950667 35799150 354111408 67981564 238648598 804963295 669400332 45526539 635130329 898966838 589231142 556876209 887810745 664225224 926487475 609395078 395146309 468005568 373049309 718551618 274973730 86870197 555384758 735543373 54111442 416451625 458244305 585910636 475366694 349512732 55660000 950994990 352367058 995567125 64301215 293688261 558941030 779612483 83429686 426270171 757027050 988334888 799952826 378034871 253573899 741362595 510080838 821333209 414252529 969137840 374810236 397062985 518747659 952497401 639688854 86510725 81032128 811480401 4639733 833439894 530126043 915158730 284883818 344075023 831586783 633496983 323257296 479518396 23268405 742497277 454732990 360363179 732483386 476593198 269205795 973326821 653996440 817061186 429666481 242656048 675263378 951971910 10093495 788402031 104870288 966326058 444577383 629488996 367687315 165832066 706639646 840556745 803349804 867503687 518239466 740144866 256975798 291796186 73641199 658140141 488071815 334892429 908865341 360680213 28953537 697683969 10633541 142755491 194896076 59188136 33439933 985103208 917235009 145996887 795500397 603895308 324412809 227156099 297667124 616333756 284355611 685825793 295244762 51710680 936850665 311958214 263446483 127504622 54604082 251780989 662802723 82305468 491687287 520451150 604970988 405933283 207031534 406855304 443090974 252672970 288141283 527144202 269268743 663745523 871566457 378392736 554592348 82414219 166947607 221918820 107083357 779639788 473218886 601301641 818052084 667235390 606137553 519104391 105630646 871786867 334046788 940073527 449557379 90078876 842139919 968005229 647725841 875473635 504746072 37918785 333369618 51453648 341495072 974241988 447715347 789829795 834016421 280689063 993418345 871800794 676819799 575579392 630689864 406677969 645849957 430598179 318174454 543878454 807722922 528234944 861893577 218446973 155928339 808934604 661919237 352953733 721119926 811008398 713841128 579934722 301552136 15874277 903717365 855074198 474659740 487316996 505345062 460880440 390822193 783198957 117367953 209035075 94272911 388009640 93152843 958407990 484792675 477463770 171603564 22022675 82843733 231138938 249174547 349676969 537978182 599392497 141779747 741199946 642408801 45133116 782117704 243235772 979474727 664846233 135832447 685350935 646825818 250624271 80996162 293005059 664364944 329892723 520057348 959697999 95070430 291107020 248906375 177528464 703782872 874892193 696711787 239950778 985340836 263940 827346967 776764003 179050651 835088061 228203821 780476680 240805948 685584673 455679866 202075367 297432942 655774095 999513833 304488412 341532092 245827341 692075435 652119406 461295248 512880317 620916224 363548280 948377373 271339520 568199029 694067394 602578094 947935168 852204383 191330930 222853114 759564788 503825454 830912328 963770276 596126315 388841538 835535620 751651565 926375820 477660713 919118538 825336641 310643505 121444503 355605304 324039451 875515664 377887485 834528514 954609940 219662254 924706850 838652804 801893180 766777545 997801690 303889570 196435045 92608726 996881233 764886480 438131293 611007754 29750477 175965963 901128945 631973583 5194065 645006661 48678107 429116967 349742041 870718648 900814082 403773232 731455753 639700913 954941393 678737959 169798182 789721183 70212148 691048438 879299191 684374235 38868986 892260682 404537964 612382174 38844147 768200318 84544919 526497684 591823926 86895968 922246114 709620086 298829005 925402687 571865047 552404076 346171736 725816784 173412377 906471670 714870718 381849339 157553422 352767666 435251275 893631827 888954854 183727913 505585980 630720521 226198839 820658554 156810942 684587410 656029272 718676357 691343379 240785194 166561096 677872510 931334259 652522283 704327169 848434669 534984501 208154509 768725762 74062618 15558660 622829879 964197419 707794797 139496104 983564959 887162313 798777573 59327644 812120170 914094086 709782939 836978392 882750839 419200831 556142950 435558148 705788853 878512215 955386170 992288130 254524069 894257625 75099728 530107731 11531712 291659770 20425869 840019848 373988732 938365284 825818518 559247573 523860866 168033605 968776219 359589720 974161224 459309443 17313032 143361639 756332144 154583187 403044510 108014023 862485595 711629833 783156377 156837429 438567563 117720695 857400577 244637162 218516766 527506613 363482760 549626693 420939691 142429074 943341346 283177215 516833991 303836061 927428763 953578 746741874 153416109 61726666 249993749 723881541 422406897 938763594 705029187 21198866 458143095 692804907 968941761 618674659 360076465 382049585 157808745 763191343 179382057 194473709 263066283 305691979 316212017 241653740 911154021 587601542 431394673 771713719 519266479 92467938 755381663 828541983 722605842 489850528 400125663 530498880 451711023 986611945 532811074 505084110 866116194 125292238 40093587 543479585 864769572 135693042 257340985 401726598 317313007 633623980 989287957 684833481 467610071 518587923 572915896 921905676 304565220 589016661 752574 51741276 404089276 952771599 580051537 400342267 468199420 313909763 988394932 769411036 742512356 583479777 376098189 118297406 507085488 897399911 804312706 825329590 793324751 689181794 772634451 467403213 176670346 723340861 411842306 830820327 456305122 478172440 105058570 531234270 801093292 958078047 944634574 641715330 48713927 968201306 865728945 469739831 955690748 549447253 814074494 976067470 317156926 991975348 818512207 766998140 804857228 773505499 227562218 325067052 573547356 706894012 236591832 665224965 918283606 951453891 582320741 33787255 31405180 275745147 858651381 748925008 242982014 213605511 16917061 328410489 567350544 177596255 424172204 290895406 183679409 994041554 479449160 487265097 512143948 357051006 576782765 813384486 443247002 541828404 370434211 884635420 715487503 737326946 30839217 928349226 264597641 617472823 997119255 117232031 225076134 55678891 349013449 581875899 840050920 869478880 655127158 537758496 422810985 90834373 873570999 428092414 892913037 535643852 604606295 80061321 509285751 718375790 342130841 110390100 775623328 805877194 847330566 282501806 11683863 740081709 978002884 588146640 602467399 431041958 259642393 553753064 324547795 21601384 767863995 121451292 971180937 245244386 315970992 606364413 959500742 661280969 14771927 257173736 946959360 86415950 868153586 301536509 263097707 437661116 917436768 231973445 273282472 399857466 995647087 401081496 154361918 105210365 427800384 598448159 311031612 35161447 470541553 86902581 919428009 136267158 61169648 872024247 190070190 747241641 399520133 751410990 656467944 521625491 939324471 972471692 98698479 939667947 884950583 319732608 97590907 980012160 594120425 526462565 116980453 703334236 107467139 990706426 181352844 10035879 233117994 658434394 212941893 214417320 651126986 496306635 460220893 544821880 209148145 332272522 756960218 370083452 144717769 732278634 585514561 784954952 50477014 64802384 40045609 386444757 157724951 568032958 33045888 763273073 281210004 525297130 326875558 225446190 700888734 173312022 504941779 193207612 807386346 259221447 910945569 784330463 943803094 571861400 684940288 252568817 764866388 423318165 832500271 5540746 403706912 971666393 645329485 799597096 388815308 791997433 970994066 62980924 87620044 404910117 737388699 219152745 978247022 200612770 80366103 601301462 509210067 532857355 279538684 32308667 945133749 568252715 622425663 825373249 507724253 514907024 193323083 679598658 144570444 167275771 523420511 803389929 301711758 193791421 513583358 761962062 408909917 119252054 933114210 72144623 321207275 357008460 661080059 466610643 77115532 411878743 758450221 523909327 652577307 70507542 148244567 149745927 76409395 401334237 10417459 457161785 124514694 23694235 169579306 889863951 280045793 184168750 918373538 768677296 68784563 844736145 320073788 627727643 282044807 515920954 200785730 712725333 852107107 94889139 109635436 501656273 255471968 126866670 729298988 588614925 666366636 98723312 744964147 563700650 768114218 425657246 962268192 886451264 781059150 984087211 530260415 75794097 802381750 490597689 139081100 724414345 260702879 571846744 273354219 443020215 48645456 129957025 398150774 619300118 965466819 922399080 58846021 49580672 434832668 852189244 465334886 819645354 766045047 610268286 388108400 297666392 294320493 738530551 81233576 325555683 871659568 304309667 551436898 298274033 960512732 223581999 487412938 195646866 548279256 636585361 9727688 167484992 718910977 32066231 447003729 285545399 842794670 120952485 898094475 269142178 986333907 140735347 198364070 281445667 120974170 562118901 854845765 354406144 392530629 459294754 906199121 408572554 658523094 364799190 799754164 316962938 277944295 55024330 992931344 824359100 444869667 57068198 759820754 712282219 707077538 293962352 328994073 504014583 527841783 943067947 612968218 292939560 178767138 424178390 496255629 128503441 680954014 603193543 396786849 722834608 859751798 405697770 50180132 510564064 792585909 364627980 856734468 661914932 65318263 255970239 141963986 611172027 680819625 126043123 173208858 406944144 470151852 655201693 410173413 271715494 939548626 204897369 140013241 36881234 873792928 788547187 135258708 674506030 877358713 733255240 380323146 649346722 133486807 40276728 681521715 999608245 1890305 437173325 31750525 94243212 357477469 703089200 350189646 485434783 597316042 163462027 165745171 458316567 970210764 391154042 986916441 505442879 477248833 244033385 493318836 660817815 788259797 254520048 643028959 855140378 171994037 846335327 202843 285225279 555244335 858905450 307333673 630048361 274203632 984135803 92013698 716017234 673033135 764147014 166979522 405896643 296456584 363842640 996419671 873175186 164845572 830035143 743266405 227380171 992029831 796402279 161201236 374135684 275462644 993458156 226591397 413827608 228906006 953605003 896440160 730624854 30440520 797678804 644319087 559492733 738591138 751604048 946061344 307700465 236002335 115757509 655195801 993707217 538459677 760829013 52876621 841165216 115121903 516561529 403077407 559372433 843831871 657424686 510252070 177612522 438312523 280144428 576228039 789835029 510853016 731807930 487426733 133980320 102150765 686096043 236408221 692755272 486290010 668830659 942614341 681223644 740897319 676797564 58847841 884048986 45020762 542896442 614601244 263571672 742621464 222872751 984058446 754509880 460991680 4427464 316785663 336091999 750020084 625521444 948031020 82914649 235643276 677552756 922003796 903983874 246996665 991267047 6970072 755064290 622869781 538052273 551931024 109412170 989205754 856740250 352736919 291489177 38450324 952795530 691758780 522230260 797464149 224138539 887930839 191435391 986051605 285119440 916675001 149853564 139279036 503707138 744746096 85881167 22141554 691986478 944487797 264790046 259280332 516672105 777850777 558374709 775195701 50601418 642712552 573462450 236067718 712875903 676337147 674183518 365092241 611035331 971179886 589020620 32587982 173299652 855397581 783140957 32404495 443450382 92835828 31513244 708455024 795802724 94496383 797633675 577306805 318397907 741163453 139668976 83799261 412841918 925564908 317940843 949279588 732542832 887858546 978331450 109395241 989147725 794006189 829360027 892405415 985754186 255935331 933186639 985420659 42419815 562313894 658483350 899057174 962586073 797719939 261391635 4782148 117536261 564429231 561415253 86069291 955074127 670723500 415057117 441010597 652705432 28633225 168229234 670365701 414084590 833299153 815680240 817867588 846597976 645181894 925918957 810133043 154229278 618835810 9304635 207906207 608728138 30361032 796486445 42505273 995924113 143863931 178135677 440890004 829745404 969679275 865263044 815952327 713404892 31198394 953759448 853638223 659952736 737340206 543416662 292943868 389087297 891279922 255691183 27996264 621747726 365357570 109061496 991345384 655530658 851349206 92523817 702440107 321119565 424875922 211018300 885339198 302559250 406383076 541154403 582372862 388039593 426976059 893551306 495003128 89455858 401330951 723650381 499151829 809714183 952929593 98973488 662691944 740510815 14862551 997592015 725626164 61501872 116392623 403362566 523115033 925577461 141955178 875152885 646790447 470727868 801737533 58938729 292157649 942663360 823489350 153113875 150201253 203003487 444845670 375840573 607799963 466831010 392180983 532702266 684275824 555995456 633426959 682886880 189300089 464552925 359868360 406215638 368817296 407308736 759814026 344668568 123053974 967789021 115160361 345917089 687681948 628312314 450118615 660076698 755810379 473477468 870611514 80882112 235736550 357560910 195257177 290864148 119296323 104738104 801076017 121054881 770848581 82105787 923091700 597749586 56405251 448354925 774872771 361158316 792994625 100173409 312332978 337213838 891351964 192028695 64786546 112440560 602138892 870877400 151356131 561103531 9822538 940281430 586128305 856421463 607410285 123483612 616932874 349537058 568161864 649467418 54686922 806279437 936868060 590299803 104137874 476596642 855199057 95592923 751955220 889635562 739057541 575472961 711086714 600683993 469313896 590206813 124506750 998806126 146115098 329203067 636329023 248695629 262026156 207800035 292464179 771705226 95142188 268779226 955089960 686213050 709396788 586018391 453653056 931273896 631424597 452946355 146321640 498529621 932206201 124578990 474924498 20392822 493539177 869096815 169738774 319130895 624078622 172596893 548070895 306376594 232428579 60037188 798686265 258714023 757841857 265178139 44915532 186844854 433003109 66705083 740566541 252800072 862707714 622226067 211653034 729971359 514746695 322411722 648943423 958929718 395448469 739931510 588587405 583711419 398822486 400985094 872005932 326313117 609331108 37306758 643313618 694048177 684271361 917975609 286319195 592686571 433872170 912427140 346675749 204480436 188892502 901752772 529501211 691738167 632312272 447805861 675367723 188643655 26445121 450227292 489035476 160946701 313114659 580509278 187758009 538975488 704873203 253177046 52638566 889152808 552123324 128767172 828105332 424274505 366611352 462880773 671097380 777511892 671818638 758794446 874375691 441030333 34655760 281390670 496153111 781747782 945975103 204192387 37872073 257586363 60545191 27490860 375010205 501918499 903873907 573601897 804510073 263375247 444021341 374764988 370589664 774298223 714832334 328627625 237626953 678812255 169671532 686210152 117666701 486674310 833254802 134918704 199174185 376971040 986125924 720558697 971923899 704715701 683213294 514748950 823526529 614980573 124968959 283718786 10240016 654134295 306506586 22250322 909635159 322553358 624591836 172860005 79211571 252433973 309463621 544706701 970761553 434839403 238202025 925834788 535098563 527283364 883434174 183394190 778120950 2584180 468689761 515243486 888382663 781374247 186653096 436668633 18991618 371118736 69544445 838875307 973078950 886636582 867222717 672229080 412847019 525718800 504125186 491517147 891373455 590175557 819503058 787268754 594668733 556982024 970763951 569567344 984151320 842868674 403910875 983474462 168681431 864746629 718582245 938794048 577515030 689522680 66026389 607273623 696968511 776399503 851314874 196868066 996298378 504864083 320239845 405974402 219196829 595537365 740997066 664082567 213856997 456827097 810682820 470208003 718581015 838860017 372956185 671945504 30030903 809595730 216581792 47078003 563142155 667255778 159616457 159038517 410691634 784778055 87836289 230626410 151480979 436652869 691141826 606235118 403870344 862439730 72473525 586605955 867475332 592519031 875137445 331367101 399026377 486274437 944597392 365442479 978739434 19334574 751220061 65920773 531677627 541077776 509422692 670708474 573455501 309244776 353417435 641022266 824875337 814370806 322710618 293969094 535249584 753009751 991358463 691985354 529709414 594319686 890698683 562698420 781012234 420824601 999411240 607519134 471019780 423607627 613081133 721911238 842208136 786833037 443018472 477115900 87213256 723039195 353753741 279043177 130968980 71587295 444863202 89922970 574723734 806244967 116744767 878835871 523038516 744535625 924617571 760355864 134657746 669969018 937576057 952747601 767390135 780774537 104135727 108775978 643914183 80159249 282992397 209351454 989932865 552056552 762569018 392778037 181722446 178096414 722712929 136666655 876606789 934551315 94402987 67664351 646755545 921918352 7972983 493066904 870170223 539400392 216119106 352675685 515452645 491191769 328024216 325948188 785238753 193724733 721730943 70401051 598270546 850913957 443269556 642432516 655123427 134725603 713532564 878018245 75320860 74279274 632869460 206309999 714290982 310051658 2006622 534428567 21528798 321563149 868965491 578007494 927926617 216217835 7908818 481659527 384460421 439482761 641519872 367113969 500603773 906839804 280799436 754050724 801100034 7072251 862724722 463123557 722602635 466957835 178799838 546973696 833524795 574514025 180850849 860774948 928992840 673391470 227278553 513147520 767946392 246777019 488999868 40590633 470647665 97554603 565361966 808497797 111019799 255270894 888473346 152478847 922818949 32017508 415922186 304141747 887000336 316648397 945703197 733835356 960420173 801145238 862921713 555730526 931426233 227671119 259888001 352768768 427229201 932385488 883548279 287703841 695064188 248159800 593417991 153035164 839964159 597976018 515369210 749641434 76530783 890601202 288803230 254021246 623668545 542407462 239363300 969262177 185413179 955281314 325826887 187194927 918417986 379165896 372970683 753744973 938070365 144465484 9815868 495095357 72493224 953802007 348926879 462555963 3500997 172450616 746702262 784189287 591808469 317793667 965982943 147534484 610819799 807245281 525113704 245338142 8456251 572888158 874105040 695505079 406891669 7924496 291661022 529309178 944789052 729838907 6524799 881872613 966417274 866397455 616823418 982694581 170806388 232523254 135674831 586905961 583930915 59138228 511772359 65034728 447075869 883534345 190780221 970450696 105679524 906948001 166953929 730570859 858926121 148048227 604150245 365708812 120753275 778189953 60694501 23665031 752006500 658986027 903845045 287003198 410701123 880260651 572470540 475977435 585093036 740945778 528611143 832399040 756546446 203351693 851671177 288171496 895699136 532100931 721391882 80253763 484916646 986947385 593019258 244308519 289121554 157372325 999986146 797933573 652724551 45708671 232667078 798602666 761680725 987830987 401144735 366656672 752048622 655447231 670710642 780801686 903264124 726057720 487235716 487193834 76098544 330337801 538123428 863728032 622046912 529148979 885442965 166446198 176065475 647834193 354793480 319254945 718269115 642269011 129884464 210562525 102279660 787749005 750056510 644867074 809931879 906265272 383276642 977910486 716515107 591552118 80200194 279068772 290910563 436517025 742970354 230149459 136525168 258477224 592566920 450825239 128424729 634353382 188747255 488407733 201714342 18053917 314019935 957865453 122763681 712289175 313503301 68293364 717193029 275392724 620015256 665156918 134541639 286348118 317967482 205892316 36603251 438434689 454554685 728113290 848201531 124091313 351359451 707891832 116179958 180397118 704352489 686502018 301891201 795657346 544068148 213145802 613154603 408057837 295522645 156666319 386087948 535531681 254851465 303177735 990283605 638674972 275099843 392623315 7837868 261861669 377134431 920998974 275201669 429483208 717119124 33478162 695337729 132183367 556414257 899949532 52972020 310826780 875718105 319453653 69143655 83600013 5266993 930545621 506365771 185479320 409600380 93764963 253294752 845183672 207891170 763443348 897837681 370537210 555270624 681589059 969227335 626828426 309837574 102605731 846802253 985822751 648426240 483107463 224950206 620403997 752447315 168235811 145855582 546990363 412827020 498568898 194832297 95439104 172642732 662914883 236138270 679879052 638921924 495333331 535866427 525379530 227732933 345102703 774316404 988056503 742615176 4454118 878800547 796685767 97525693 993414892 483415100 637364054 967741467 330966612 373363742 43504407 861630668 153842313 381619796 578941066 610376778 748659290 865436746 601383544 729836934 110632764 743654649 425926143 370207444 648784113 139146331 3266451 612929772 370801421 213651411 407704644 532939812 175252271 612668465 638387091 264464140 894086411 747420690 825299898 562823740 88694638 307855441 406837795 83403407 393131796 668461486 485726748 844420128 437908630 120212466 817276664 883980888 2925452 662613460 599840708 787367058 190155766 434545696 436638412 636578323 665501900 563410506 394327988 943850550 120608865 349917705 511579565 839240744 312891968 74399193 400881559 935456144 225467510 428146967 246959305 299650039 513491897 345736649 499539881 223807818 25499403 594737382 107269542 642073540 73100819 851821894 65317073 407262771 297654194 944477424 158487816 692383036 538751325 626527894 866825148 789235814 741536889 946461349 793767145 893672993 278524376 699469450 258900298 81430936 727600612 11354776 93874385 467977764 607109003 44305793 264993720 804247346 61221381 171451946 771776221 693169945 467563391 594997354 545063987 416810049 772047637 459587536 887075562 696720835 801403963 347275173 199460986 130764009 370391143 84403667 785543390 931574251 93646530 112389815 830029270 151403913 181101779 319365444 375319461 81026733 172297318 520880275 857314690 934378145 411983316 5174036 124388960 957981705 409163204 201543458 122220593 634900350 130305891 631298605 953933482 424274123 473749001 515482720 539430260 430579546 941823682 765297488 51843174 73033701 493125093 580705892 123328231 118919584 398870717 975258149 632713905 87813570 872927144 326668403 824106536 806473211 241254986 495983224 441326013 886841124 690641270 328347901 359833896 148667114 238743863 138519235 550303957 932018039 62651357 110334069 200576851 268730500 944045733 21809329 3695462 180043163 397445452 247756965 942948586 410030292 293968178 905469741 339288873 862220025 844151347 816982081 429590873 105031380 512329271 724761052 552855415 122042355 127606092 592466075 360080655 723017864 246008180 97003354 454953457 436924619 52892110 789700929 786163238 579937862 44179125 903239290 290907400 374807856 599361837 393567054 559756073 124871156 30047806 494754261 827162402 822551893 485913498 365255176 913447350 45337318 541621017 126543100 827068405 631570188 684663866 669494019 202676708 282758474 858688093 689696972 41293500 901127186 505447852 446591867 30169057 405132716 855770015 880021212 681212185 162732746 808671445 989928390 686775941 132010191 691510556 593839150 167687022 873615689 819873082 501218047 107804684 541004056 288112818 947301728 976219875 329086595 336464178 106768164 183986214 283008397 256689283 844051016 749364239 368207059 322885198 231652563 780038632 447043675 807526337 710103192 608741817 464463921 620236017 514193152 791321275 214672358 532131936 938949334 763957986 793993314 138748406 103222102 967224219 943433916 96084791 234363455 661389169 411896793 109590357 39578319 635333090 823336589 360332584 552987430 53590075 842009715 34586504 458464603 593176286 212363972 96189375 445848724 693844136 98522094 494077932 714024942 134100569 261095618 361826319 917978067 112657584 172956038 248103047 820093736 216052177 790299688 473692381 462653028 707512834 76336015 707540802 4233022 816681452 346195105 489637052 280825295 767222913 591820034 20144522 691896585 881983066 883649973 709881333 540701697 576827897 65826373 747996575 605164435 581385010 712693825 619126467 844721437 963549198 234635307 615840564 862931976 913719979 924011107 665638106 796740380 663266234 52404201 781047314 47533640 384328958 297737568 1706241 152831045 700400771 660729464 701963008 455624218 450403710 427876476 252477959 396019350 511579457 871405232 41822494 165307365 563528312 898110038 815211781 704350131 48286786 271382715 671655128 37926308 598812090 536223615 125828517 295320976 793375206 814807088 764362471 40075943 109145984 930511530 714044203 344452154 116491392 488684451 565486990 553950450 831983153 584138485 911170629 10792212 147145818 688829512 346301919 44425594 556669805 918920152 463243134 911857487 930417173 841039980 255951624 380179787 237570401 590332142 647620754 210832483 560521613 756005540 482235982 565644478 281618763 375970393 586426633 922250662 66764086 777913028 165536218 136222559 529307795 480583965 547432168 269887430 698036654 403047506 770589887 389592496 36511835 987337714 892325826 21097250 753129039 874829992 620514858 974856875 630011944 616887022 196618286 795287970 422155072 398969148 423964916 957551815 649162872 740780077 944934410 695515902 817999376 575938690 596783142 12590531 348151381 775825808 755064814 448834149 584788099 84130613 577097472 983139572 604233146 966626174 64068216 404146250 301031680 93930567 541200245 160136146 289625687 828519511 581408933 426666458 541197309 593848078 40468033 36078730 191058840 606336648 653051795 279350020 525556109 98001036 691056489 96239178 366518619 273324619 236656113 957837070 884459980 428699647 765125046 171815711 727407007 672058131 373227524 576882534 719751458 874448793 547258010 290186709 938355804 551710515 22077452 160938659 318211772 359579986 939340516 170228749 906136471 251442903 406287029 656091355 831008562 262424867 715705726 239823272 29252380 610101922 29047412 993146039 888888588 388091155 510072492 783863097 862816667 10750506 430806863 444758850 523696423 538513958 894229985 643659621 831958276 842934192 812264653 529671189 468902081 267347907 395793729 445762160 206727505 163418592 387802524 866958757 120431680 359898675 881473585 511497662 764365186 741041110 525742202 121062252 862559693 552909880 322910955 918208307 66495649 577911727 704699361 459846431 118415060 439944948 752734148 652662615 952076813 967418 906467679 788172906 747767483 846294960 418174873 878727624 911938019 280470980 235774552 166571734 449030684 497326308 858969900 102084902 237947162 562183217 811707155 193863119 435912471 533416106 708329928 404792572 542519791 753042300 481561064 969532649 116502136 205376106 172291128 401811218 686656429 182479907 463451647 564759663 96512388 758822548 472805712 592588566 175781022 299285473 36794597 491702324 781736449 970825322 411658802 212795176 344012901 723387999 272369801 536848088 255094600 840844173 364247478 1934424 69183488 584464612 352438811 787716813 624390421 716836345 489729648 178097223 292573269 654462540 526185663 309221601 232083904 387683846 480719918 872415398 130120611 39555796 836326967 313372531 799486908 946606921 506582971 226686684 621562634 938904339 608086338 113129946 778911031 90709952 414238745 797551702 58563138 735173773 552605918 750165110 111883333 42212690 782353698 585218227 593049950 650496269 964306737 685875560 452613093 250371744 93821564 695017145 112023900 868986486 41314843 127955574 35578075 125783943 243792013 180626210 608173703 772882797 335502544 232012396 214106736 651902566 488116937 298939717 586835102 337461627 206496304 617333089 77175076 752102066 959923325 707525605 749843121 412162447 38158135 66912289 133770774 474406232 907058505 12846793 388742567 362650010 387501191 186970615 625815581 411824479 870452312 512762080 738543741 509559528 766536813 882461717 334457349 57308945 432249420 776220900 240160264 422719228 989830707 754658740 568780425 512866722 421902907 59800853 719071361 30126918 253655546 232427693 906551074 730153044 208113771 810999727 163750483 800678840 698886681 111479469 313350269 577937103 510977647 974016858 416126506 638922636 15485634 834095214 144605892 998424806 633311627 815554577 162949401 925000703 232426932 735545046 795297789 432633662 312726936 579431286 800455198 42450063 367003220 550271836 760817847 364498544 125545361 840353807 971339406 570236734 222930758 511534094 357142042 822206135 146625361 367944090 688561866 303033604 64384413 826696909 850737823 330342499 834825563 743925830 105861383 473370823 917970073 179173498 902106509 640963364 306766580 176855041 628326255 255483894 728937890 275920656 186346294 546908267 184876343 625006468 951495631 587998832 575723443 819594207 117942168 649461589 243254926 75202780 713550876 406534543 117992478 572009112 69002965 22274770 359096761 85495071 458240225 714578639 703937821 115704593 943575324 469027602 360590208 446991477 192658278 529482245 491385922 9723803 996232602 871637837 969269957 998096372 433353891 423056215 201871574 897731184 631278026 278031973 711307978 986446280 827216466 667516104 263390763 596760636 804438329 968831721 676209975 394058195 24799833 727488878 630737246 843731624 317346960 444595635 992835017 598851685 609875454 580329886 717204911 204243828 128861588 936795464 227268221 208053301 91393874 314667214 931986484 656211977 405577716 549266523 722097977 407452376 213595580 259882334 635414467 77472945 528721008 701687966 564333893 773387310 292827064 968058532 799408498 738586232 873689484 34042594 844367339 745633713 60607193 843240924 208412472 861028806 699361156 742312052 830241704 483056230 805925010 656434211 321493169 743948599 87741463 549396179 464219774 574236098 558999650 796134611 742554022 791524574 390558420 720082256 65664230 140657998 341392453 286600584 935645095 433390752 609346291 956631231 796457241 850754989 61958349 655025219 566419978 561716289 82505537 1508427 447039358 415747769 896236912 710703673 900958078 38928205 967242233 17596280 626146792 47402197 545097984 938939564 769472740 831754118 134376530 501423448 709148535 195556748 476506284 361629418 814720288 357276138 464776009 258848869 187740849 199455372 191391680 659133865 605413506 257421780 450430138 556852673 699929111 143932322 879882599 750758000 158093741 242438552 238554696 468117154 840119857 533464876 853376306 862072884 391701926 515163400 222102291 67998020 116482380 746783456 723824594 258429550 474641628 135531473 351772245 949306615 789362230 776703252 906073441 815798862 451947202 553672135 137876822 400881510 594341266 577898408 317341953 829098588 751179622 582114092 20788279 577589868 101587602 515113492 320469190 12414396 472700722 863358371 188097079 973799693 705589791 640051270 412770885 390223355 169408618 621505374 199668747 507603178 992115511 682895039 793381553 486199966 750364567 763073913 951873230 92495569 818013256 412349912 679799908 617290734 711011759 385762602 197014550 909455477 180740310 677661617 222853273 663559898 219820340 64623836 743820214 757720342 74615102 167408569 895757991 991760514 840166476 267951699 388207618 315510613 518863496 752380039 521079381 13677000 375903122 518364426 861237997 824509812 915981965 181280963 15371727 650942723 521109644 652066447 426616357 770384232 711801286 731292846 46218190 645915480 252857771 416032619 308707289 883367522 200859157 572325882 957224928 533553942 771306771 343788159 541459094 594616991 34297085 612270895 455704283 96341429 606759257 923310400 157841733 385103257 285745019 269263137 429539107 275853595 844183471 540910451 195752875 352653317 161564659 271040429 753927608 339660251 691415467 500115797 109766280 450630801 147438876 705251206 54147700 326442545 310392826 847749144 696368840 776152109 886405370 367866140 981783417 809567538 963531254 179254170 873191431 792169761 649435921 858491444 514829647 605300510 641433138 279345317 602620366 270118112 836298785 118128028 169916524 640038700 732748399 968388844 941414028 472795190 199843159 709690725 101809808 756181029 308323476 604570413 269794284 611599912 986173527 770781874 458029584 682185291 228369028 276233430 79162522 231981952 331347788 726234105 940199015 952891680 909255488 563926319 669962583 305326360 936613900 640495153 615600213 156145132 891131066 768200162 804536616 259296464 466987013 184652633 340163870 723889662 73638400 968164683 490235286 477495391 648736273 742006385 641208933 158106286 481073536 787974480 40322811 503281847 782056912 360544482 275463520 318835393 162592875 962364715 234514788 392331877 330335310 617317764 426135085 202435871 22755875 856480045 544291644 742000586 436924579 534524347 192105546 943684397 812483687 178552355 396422172 58622100 340034203 433266652 396099851 698926014 743549254 919638415 837515209 728285506 485715782 658759868 83552201 348831797 528137983 534046763 460556128 456434735 778007883 242683793 729959659 300144128 819827145 440053981 817164024 232924213 346591665 401674099 313315454 885635051 519190341 391491219 822904472 338024268 52844599 298473748 968135642 582065815 279568976 405584518 50902659 333401606 937190237 872736577 899095744 287448650 961600325 284906920 921771191 377915319 171817077 54152242 968507839 495615087 969136210 719753420 653650970 900507785 664495003 310494019 561680906 938971326 506042224 926411151 557627611 668182032 977513600 591361452 914074012 207171301 410479737 285898483 816665495 203939959 280937297 977968238 756311763 262709119 627672035 458699935 179314591 247128887 759736739 934889663 937484080 382956313 164740277 864915638 304098741 545647246 289073678 536104154 726129419 764611629 135708799 637605568 130493554 280866764 593557816 795649030 121770705 406989400 356403836 750947525 488083977 839002528 808863754 559250246 157690541 813836760 49105627 31081639 1885257 220518516 961923670 635667224 254957209 291600532 277342407 6486833 859156985 458339826 216915536 427427383 817614445 352403620 892255598 971979096 642096706 68578966 439603850 737494821 220570914 738277939 664695340 135528570 429504405 306532981 329628453 128014295 250037122 389732499 20848405 197006712 629157335 159923850 535759763 987234116 992123457 34271573 635460448 150044122 699899060 250485457 820368333 752782731 251734714 196513937 594870769 684252529 287109597 182308071 273712730 960336683 932376179 129661880 234570829 868932727 618402915 221227484 502123853 95744748 253805855 890182031 472983911 886853424 570857522 385035765 622833366 584458097 865943860 509631627 107474649 430671445 4486934 149358170 9130713 844038608 965474907 227566528 987520495 98703154 236700436 539158386 812798003 674881841 662095093 315373280 437690828 151529648 925138985 11259547 171488802 684410288 67367206 373620566 929195806 147529607 812202641 873200229 65955833 443749504 483065607 696649634 451829085 36937054 85709859 66534244 844335915 818431790 470888013 105339230 661102089 32892285 64396229 286452029 459037774 536259422 713264473 73940290 630372588 828894120 551180829 79927138 634962095 793321836 225560049 970497259 209278967 55077172 63344376 31460006 780926335 907465284 730027066 109719570 469768531 137767353 157858458 723752495 718365835 891239833 978374498 909470231 460420017 630834768 870113614 9482698 29220853 660609227 493629084 496938014 742683487 771078440 357812809 625621628 684252502 351382216 987799311 976906917 726768902 336037066 498911916 159419619 787749132 940499492 728639941 201856969 92434230 590387193 787568075 5752740 922603459 10251637 867249473 873793018 757444932 501770866 537394482 57904111 892267494 543701797 7317899 617700774 77823929 511021849 921142270 138746608 16227083 535807652 788186156 208517875 554951108 895521189 857039592 129155836 452645120 167194365 437631365 301053069 432320673 171653490 952994402 43736911 627304033 208262348 871259170 603806647 974910484 712855752 239038505 918601411 920649004 878237821 356830141 628189122 147700415 455000454 1838251 59708925 820579783 632250765 884832704 644702777 148439031 645857050 750491929 30400058 834843375 132184024 960366651 966140972 165682538 405163693 530375064 480282574 652074623 990732244 324595334 357086406 507027653 48375695 359305854 443953936 525265418 253191160 349688861 120692764 437896807 584047210 617752673 400310997 803177713 428426803 360006378 14744780 451927059 376452835 801326974 987298900 992708087 615027149 109783715 996520081 35141038 92311266 552596917 200813154 901950800 652971557 531203420 958641404 778279734 396703717 363630573 783308493 410963096 328712084 451789309 933994860 6011308 363455068 252611743 789586625 262716066 289637157 163297331 456758630 986825631 80444796 645180173 856021893 861796776 607736830 472969651 218394286 343215848 63504740 358974547 588306338 172287382 592128321 768914847 609096792 973191330 405920137 578118813 168402578 558585871 444705163 980951775 279825075 929674963 919756530 554480905 459111447 662220641 770803590 97820209 544714274 154380228 470351797 96281434 997674470 423579657 904549438 909549261 546522416 847025334 715183616 657146777 35569641 162562184 250152172 225784336 733656852 966832960 391856601 626423787 448589801 300368839 879192484 772420943 873810312 690431735 251657519 530597869 899367684 52437634 35637858 793596877 9353054 434619399 71927699 997512424 111078179 250301334 809649592 353167390 325737238 747783881 731014175 294109430 760613213 227010127 763836632 867686568 238786360 107450990 495944869 737098442 871513015 296756462 301746619 833423779 329757930 705754133 768946634 413706042 397124856 324141415 992389951 429115257 203602326 718483127 514772261 390347908 490927746 83494913 322916883 515912676 453931421 364847050 173647231 414561510 742066696 997567926 753752393 947993475 885912012 68720779 876068647 137469029 971630841 376417947 498838861 430585008 905859861 958965465 456784295 622379705 47381715 817002066 761743008 388181980 802710482 16218210 8376379 815139769 980798552 976285693 158070702 65056055 939545533 946360375 511589359 799421146 283021241 650451449 733710784 861954808 138127813 104883896 403220320 541332812 807928728 978058590 252478155 121207334 112411927 855166535 174311805 102936825 59763324 1031448 668634430 411691237 5630653 494068569 10731264 868683816 993070583 909513291 469595305 532938638 590765174 357481155 117621466 234123856 160531428 418085709 186705390 338450150 952808606 175174421 430669682 325207253 502624997 554487277 458192406 447516206 597651117 617561728 862153355 988018174 819468842 700351217 180823039 469210160 102634728 64430854 325631118 927989994 748741294 849221971 282124050 317517958 603739612 337528928 624350672 226775210 780444545 92482251 199613905 67554609 240256148 467726016 622716520 568900374 962035688 805036242 363905782 824967842 926451831 377979083 335803140 506243384 755416103 340136619 597078352 884914855 600295011 128485647 869924471 133128025 395156603 637528510 471316608 31862382 18268041 389639666 289979792 386047758 551736026 352022254 672059540 954734614 834728826 534259502 614026266 209229546 315600636 817458466 84039536 140897302 455639685 221720567 224480902 13031639 171452254 39979342 337581422 964887285 891055397 360118630 2500453 175497306 629887053 807408760 991821235 225219136 874294865 134088589 325335323 671404362 550174781 363699937 740558827 939215448 65459575 548613466 446527405 383066240 897836089 391144932 467296241 143909481 31740363 832644965 866223376 456958082 541335444 566974682 973466252 357028894 528922652 841188877 634419847 16597656 138099547 327595638 972746242 975051113 620654397 14200429 594972477 547267956 212118362 828806268 262226601 7965652 73837808 184072561 593345205 786304331 573519321 140535450 730546488 583912338 870832942 786331002 760958531 353317920 784862152 929840194 113079433 57255975 306034493 603936899 312086865 881263461 608155941 142447399 379923558 902018338 855876527 209436750 815286016 932029674 84781277 277004559 492671767 360573774 838606419 841740185 862176844 308689266 878989906 308901851 104735965 13601507 358982013 924111360 363734555 87262219 142776925 678459218 857526842 731010547 913890025 946619344 222013119 780657602 674215198 667030629 441237607 464377487 694333806 339336054 612445780 979480638 627947736 769718728 305269595 113831305 602718716 820516668 876610839 642940738 57591935 382865388 670862431 168509569 960760046 505744759 497894495 165878298 782346251 846042253 515661929 570747174 828827861 563017194 316936573 97466068 462248741 561996813 485524566 573769480 778065221 556922175 543904054 292816502 371196715 502363044 259955525 417848932 849116260 503299717 913320389 970981221 740439315 473264629 544949622 353056414 687193735 175371604 543917374 691971925 287162162 681855221 488121551 942120734 633752287 497629077 456446143 526898984 961589139 4074772 699277883 325141554 151107418 447732130 575886348 582772760 442232287 64753189 599876818 427371455 247255191 899868231 385428708 411065625 569531934 162315708 602280358 940538589 769363259 400589409 893645415 477579339 127475000 728181625 773332042 825078162 8601629 37335638 464532314 315408768 971829646 680688435 694441753 227956922 319174629 97117489 338791085 918551045 187048791 239910567 508860321 733060792 468896346 656058539 409445888 503625042 220855980 295526279 218661855 838161329 522675858 179298076 366529326 323325258 750652194 555054822 131076971 933528412 12695762 895392093 230796071 455639732 147227963 467702777 382413898 483286179 337873202 126275028 191668473 866422671 896840551 328930909 539530330 41192213 33957755 691176575 167290886 13131595 787112415 657606508 278428900 116189255 322252500 406345248 200951540 181976680 358951205 844043356 863663337 105954096 923321577 112700727 518475527 662294000 526543699 514754316 535910559 509403528 921521100 761912500 370835218 259233738 992877067 82716407 634192115 207823265 280656278 899723911 57888583 279367961 772525255 782317630 639289842 449457573 146906384 739333499 443771486 358016545 463025045 371836630 925753940 581971989 83994196 93711689 991311022 878013500 323615116 899748588 554708796 920365322 810118206 552181609 495657828 606255316 907481168 18227648 188495577 656426248 783468165 765150370 310825730 55429657 932658223 270356758 734944370 230806935 447118249 679188043 257131265 723278152 20437790 734178992 595538761 825705222 872638820 819185511 809401788 73006360 638084714 15933161 996448070 152881933 975197675 535201088 17915125 818763481 539329055 212147005 708771381 478582650 90139068 93061904 280485080 973073370 932808741 419148394 219554493 576879651 976657378 503052885 394071371 798896834 495268086 241250649 911590672 520929033 329128541 882023426 20392647 499749405 514732105 522669386 659743243 989616188 926520559 333270849 129337799 610458353 795414126 273076825 88899753 325376405 512377329 625324364 502731000 40371964 532357588 670850918 794644721 361851615 895695482 809227718 840583735 411407602 249040376 875984707 790842061 940286919 268227865 763488541 7612084 223047198 503867238 456871253 881968491 402169343 124068454 843875516 977905793 871922815 994475763 521380683 392457351 309846283 604390410 484456073 905723163 457502736 136482768 413757700 132968702 691492530 595887716 264066689 485304742 211352485 704325045 247970230 968440390 6687831 436945797 197708308 184250718 916846698 787615715 467429327 708745543 138598463 894843716 810502278 27106104 143007575 696340456 679257465 793973172 266841869 532692388 177401473 770266473 76237140 696704745 66995541 444513313 576195740 504552431 355184458 143245173 131960846 81008289 41306310 41902618 256334467 465501829 140122783 179605204 843808055 639449554 613921657 116271810 80583165 105048282 740113067 860147206 762083184 307158802 934982905 448033319 289817892 588692946 628443662 815130571 301662911 176364227 861340151 83107028 168113551 273932477 754104790 599025093 681591439 362985043 180792469 967564785 609034089 905148832 45904861 593735136 300149572 488474289 369120479 619215379 205815716 516303037 415510113 346645205 977482424 106699390 974649361 989401459 673812700 49843920 925364908 959317077 993196002 552503564 776573979 487538515 248832296 305549687 860816869 710712392 274242642 699718225 960931742 864501701 785161481 660806502 613223189 282250076 410270643 186414688 127339348 881647508 39050698 838713969 777397612 967255637 122184994 273530307 174886266 222733175 918610738 978575744 461097972 91646360 590897439 992362667 520781638 628155442 35914200 887011674 272284502 345765906 239184294 996509426 137962296 396681682 986404974 366258112 373532910 908210275 59477637 255842138 476132986 657550898 558676724 290090149 761426965 647201924 119984473 132174220 579346692 407618347 607595004 236943752 920130662 489145577 714894311 300218671 435523416 695954054 889661525 980350786 869395301 433384000 351874967 878863127 843378687 146663240 401791540 157578481 727790439 824502728 706595640 938254977 109699891 537733476 993602251 553629296 327006716 223239505 478491879 127755687 941277870 593853731 582702677 285469144 831377668 460177011 572543317 183075880 244305201 810148847 54386445 949709981 590612411 733410893 222567019 734405958 486169971 134226543 760631306 567221982 459797292 605519105 777514009 130138466 264680258 246085895 315429516 740978517 563342484 629958643 527060304 811442327 974408403 563570074 490375099 704407397 68698230 161580413 697508916 327676540 172626113 88756291 509149103 465108648 235803360 293659047 265430954 499941011 90014423 554227139 985212776 977245363 331899007 951112599 214516737 562812445 821304396 425505242 850414825 282205525 41800869 942724767 63550938 539515175 100603077 232499595 755178877 200861943 211827790 862075770 784391143 976147378 59532188 733640432 262393941 615988616 478994519 740253505 98682540 481591655 411453840 148861162 770087523 893490984 370532835 274439842 492878107 895379236 971221281 515048118 883036586 187582187 736825404 999290180 582490211 660037892 16711784 814728479 563838857 368984312 648155897 535807971 48286204 410119930 744413181 857081473 891894358 762484357 965317757 679034181 911935207 302660461 938481286 716923442 790905378 834552437 392525303 726760444 108275326 260621606 89664138 683771804 327971186 192381439 733359112 877520010 891409302 646075445 23498463 720601603 770714990 142896333 492482602 117733796 459478515 559390987 493180188 285032341 144197473 367880661 589616671 664119028 380882578 649149344 159348543 155237210 359093847 690825075 194101991 593062110 86249056 58353832 789070112 809323465 414703052 106701118 802107356 756092693 694781206 941341342 766688578 132422710 60640047 62394459 531521057 396738377 787009599 775864300 479901943 604093632 541041575 628376692 607368031 940853870 292688521 854267955 911909088 366353866 346647314 88839595 429076204 619543602 818000992 393400354 336465871 618904124 243006901 894731909 899463075 791362158 803295232 65985515 648469596 993615606 295493855 191564445 580277530 34354482 32780363 339542399 304144323 434503840 245003199 237705110 813505802 424297636 934638682 975579487 105913339 35805494 821725685 612364725 433383337 390773371 425606726 753692253 114169758 839414787 424181373 603954326 913740136 735855726 958173484 237827733 531042900 632007032 68279409 763687137 576884203 375808517 729485923 691812370 140203488 216435707 738691474 729164111 91200715 929611182 932082301 963820077 534201964 345162916 869151096 26589984 923528336 868099010 962160987 498143852 62346583 597825400 403202607 703729506 947183814 386360775 894189953 252602499 777048307 497472605 278810708 5213064 31554601 857820738 173675821 554995220 660773791 106345705 598208275 459537156 81175686 353338406 607264961 901000551 684188169 421097535 360637655 807948982 348285877 602402558 421029197 851662989 333745258 468067770 15473601 630657118 686984078 392344464 523144213 272354118 549134641 574765314 428935199 38536205 729697319 868569603 429936824 820894569 387123933 33854393 947399262 183657585 11232602 196171718 11503526 632509638 762225495 846547413 885286627 254783025 839218128 886821990 929760806 483788131 725334254 183266860 218857787 365366761 109227050 49251074 917044221 918374281 184831802 90627081 840441273 774210677 412563136 938167379 977523530 819033244 688439049 375122424 189856167 10681193 106893788 580711500 932376161 113830169 718821492 866692421 796354455 949753502 570069609 655882408 780883018 148000637 299575965 346001022 509596268 579759302 425635829 99856812 193209599 703327630 999929831 278573718 427286503 154009861 422297379 410885183 330243542 612319876 683136421 918210717 818506266 198090008 931403592 261229801 515722834 700103206 584135469 498256480 926590731 95490529 579971245 335395530 948252460 987676076 685659553 920789014 937269359 436669215 456370303 961558782 825866095 166277210 177985825 61680734 205034504 69686913 28863605 384880635 342913464 580051075 266726154 871681441 890310225 113267664 439412931 10012184 146143871 427993134 240903751 588112087 971952644 805089352 618040063 323208357 69293176 243434492 975929646 10041357 912396445 351434508 573264030 331766280 713424214 447612531 354461462 413595817 910501004 35386316 982995190 184746279 131432437 880214580 641298284 101668690 761967260 671323970 981863920 642507922 786417041 614147810 257948781 548169964 193373321 810999633 666905263 259811312 880323786 489871216 865142806 329242385 149587439 206131593 266523704 186444269 907295336 906018401 995783145 347648189 210202678 928566368 879477200 381897324 39738756 324470951 570949817 187987639 342395204 582575370 172712771 684520570 54566140 395321024 485261565 59071353 799928385 553491925 982507621 124311786 337967852 46244549 419044040 185349336 347082017 493427074 669457418 58701939 408785111 145446511 258426026 737397137 24884629 584082272 536910965 929275723 409144382 603502893 94084295 776683700 556797446 535640146 20696231 991197846 940202863 27210525 231774304 890388410 470480750 853955338 802104490 344284752 813602989 849438343 354588872 178888318 810186079 225438926 808501369 577585496 340738181 688176348 466291589 519286898 878613976 294554528 620782411 550097938 964942818 985574409 436269332 862408938 828606735 724432237 593528887 830110635 794936418 982970067 446292644 428949647 136680243 742359215 784879704 55797292 68799293 589006988 833156640 105624326 818690033 10036103 303747261 668865055 197936201 804375693 892295188 373577271 765665220 534880272 951000924 341586662 12983750 462152334 586341254 197995160 734768552 417856128 953140773 497138124 580509357 743184318 489956736 836307136 463550429 328265680 542693378 210784760 327428889 357903426 5851654 655664034 427830411 633706961 835318610 743838190 242856254 147377201 825185122 383308375 702304141 311323125 394538029 953291065 888658223 371301484 957219934 981326010 58089484 458542831 760174854 276482319 258811182 34250390 932018006 8376365 232268669 624674751 994250448 923377015 963207002 619947898 571186691 133612317 210648892 270344577 974628896 82922025 10056080 423523756 21123967 655416158 734834005 701476823 786767205 56996563 247670988 554935417 226742197 669301275 124315935 465189117 103496749 672860212 619998718 854341779 802334310 4934574 546536993 148652230 974021440 5027697 400687060 690241151 90549000 1314106 757775964 543368110 323733701 606692927 156277423 125388904 605788075 830494003 310583543 359392180 671492939 3475180 724785163 570415700 349855682 650615626 834865783 869653340 416123830 425066332 591618128 422125904 648113086 124545628 830145378 18166897 474425303 109671232 507583236 724713103 734727840 740371971 248136524 507220312 351662549 965634501 427271605 874787210 599290915 776728332 697026214 565946209 535880688 695475493 590856645 406610890 201711435 42795658 577644733 315558041 828844355 201627875 130665502 619096280 250107127 698895782 659335035 690224330 411417073 927992814 5537507 937151849 553194139 130511810 499235762 269409613 96688051 987049355 72676508 368485709 279883623 665795018 660510084 866507837 519871962 90758225 365580719 486991606 548904239 614606076 852226838 971434762 803416129 523597398 363911488 928242306 584396902 106548488 348133556 237454040 471723240 222047254 547662791 573718402 819684182 683679278 705018426 633463798 79058952 97448299 755786705 554948479 650490414 486178468 612144833 493047327 68500129 323647719 346427641 787330398 155800558 999951334 261209372 657941777 646371306 408821746 237422911 199883257 320512834 350610848 429406058 671289670 186783378 989962922 552967942 110896049 9957186 504390914 289622217 329641628 404151650 578993161 827114966 545632013 183074167 10858055 655413504 192184111 91207847 31177914 7352450 955409928 847767204 119334734 936767752 902451928 824973488 644028812 550312087 975015553 821765753 525822279 342751561 882666866 338277117 668723466 562330054 405206956 824217329 323440300 968541890 166181959 35130770 959209594 782730056 197342888 638720006 866146684 893253823 220866500 385039940 23635196 21020754 363310956 307513720 240399145 831414302 745695992 746980037 785538568 628227500 213371304 304718526 278577322 898734247 641197025 283691296 448181208 796613226 139559600 105754289 338266779 991603287 79253093 216534766 19793834 112037217 996712327 411206502 568670999 237604570 862668687 291829186 452735872 417485217 834725984 505584547 640645458 938934729 989664966 133921315 716819711 188449972 152854664 381987419 134892436 121662518 119625501 240377631 221859158 876993697 905534007 827027365 559706066 575149394 518716106 345952037 965619220 400512715 369240106 715601758 324126105 572112070 846295684 508195869 522164702 378846098 406698245 831570575 788430312 892481817 340680934 326972773 483958956 560909927 666071520 385051597 36095907 128287909 849693376 899300917 962346763 572539016 652989455 807480491 707820323 53231291 190096732 665362300 521741426 261224461 405969884 719702160 303910291 776130788 704528529 695675159 423345200 978420536 745518493 510211477 72851108 632050815 528111723 606774328 723262568 274230430 377831685 141535592 752105325 564138516 237510443 271371513 378213420 261913393 914675349 625723346 80924529 268772679 911039455 278795286 649282355 563359010 44700007 980402029 399796216 90127845 934270597 406175340 367862913 68561438 500701526 222826385 640718169 312825397 611832477 194275430 240983869 676480393 610494577 273281890 500984368 51489428 874274826 614685358 535654239 138169367 522836374 834627876 369410556 211608548 735302213 248393621 846467831 906908948 967363716 382203549 120122144 81783724 166933808 772613453 761432226 341556310 186485573 548686556 517813045 283502494 601815386 642906983 227638354 8718266 414433147 608073769 303542052 823984707 235484256 348332831 146415366 561284569 34388172 796078222 623841416 31970701 229976113 972398145 124762039 215008215 921545661 196745245 359935835 343393732 524721810 375113662 57961305 352997388 763468528 274431158 401357597 18151548 424770411 92609876 362991477 583090444 918224429 786376408 856012230 203903001 272854885 60171321 863135627 517720081 347361414 471683918 34782460 116637958 686270732 604358279 811518184 765250025 572410190 483632863 63814039 239906782 385605141 880340499 437913634 931240847 437930850 523520612 950765854 729767692 562482359 899745544 898393937 992092823 585923279 260298782 675643148 419157794 917514576 216031411 926356821 70188609 985376543 599476699 979031661 641983764 935365282 841913172 450703851 482768553 748969744 717139244 896252449 174260449 625584682 696173831 833767448 533036909 329897938 462326961 608534872 363904144 577707914 350384706 240346049 450030682 21989509 508252226 579406794 32803248 123096295 477104856 481194306 551745630 9956850 618695416 390678519 581469465 874418490 770860136 770456538 912179842 354033301 934030355 813519455 933591722 569553151 84380703 571655244 374811249 259656798 252639783 738642332 729053575 159759187 916663887 425353888 903664181 965505551 901138691 471816983 204069343 390546859 593576479 350587768 250072065 764117019 823904485 662911497 135443414 913391332 169610500 768683681 577959234 831371008 379798832 171010957 432088657 913965075 975437844 85451978 729387220 425235970 270120210 695936024 384759764 430698340 63182245 607985689 737706358 368031287 238566675 199888061 85739936 443165478 652178538 72110319 884952817 302968724 915072947 717066612 185247164 136704930 50652291 372082277 864127266 23921226 862399690 499175027 662018689 22561635 495461288 720026134 66258498 784494547 153847287 404585642 708265543 495508865 75454832 100073920 663223574 507504496 713703538 682661390 999395627 602703709 417995678 654652580 551301345 513559956 159541970 134486667 656240538 716872119 716697358 278975177 965107533 760807602 879296679 593087309 675078622 374418145 697152753 343291675 348394914 571651827 680212362 516866327 310345148 425239152 159287830 59109335 677041631 651823333 383796275 509012489 832185231 740271717 882271746 949782488 832855328 454075934 967585057 822255867 903010358 14666350 283276323 998845562 473759231 927581913 506438521 834466459 123571957 4171702 770685850 853697299 614399496 525685724 671928840 114527047 291012463 409902693 639974482 918658682 104104614 876842958 533030036 746202200 153950728 3085342 415277991 396232177 335232077 327009494 346026422 329517962 361558764 85367296 717552506 39540872 642218354 383710973 517356290 550331124 106825458 369113348 124070414 752654405 383827660 472640957 711316734 871034709 246119856 814889183 706355976 984241303 687307566 865917732 726242599 772327886 555099548 11246620 757351756 568986269 237328671 84016865 618080720 180201985 871563492 330722213 866511896 969707000 544271758 377146394 618622738 138816975 561853746 303977700 126820929 415403712 222698885 478488399 530293888 160425766 723046132 648663840 274953112 695708581 533470182 281680561 568086048 245464785 265280758 114348048 567772578 143944409 725703780 327630067 797110090 588673804 225278552 57311626 240581722 737329950 791865095 201140769 653081061 868641497 472671431 481463225 762879342 889324389 585954091 178142663 291866404 171731185 409306187 346997858 629663799 819183270 620783687 564312199 169720252 18393376 889097683 136620917 392411078 683902874 983806308 603267339 739693374 474295987 401384323 373880828 961307925 643748398 14328927 269202 491999372 926223169 635500525 513627742 353975414 736377228 798634313 460929106 855090375 456657139 198464259 163324034 263013343 137866100 192255449 126050297 138325059 452326349 310103630 623513325 282888236 838833060 264246803 101464773 684535192 389427888 267863562 558140336 854843870 736614925 122352722 135666991 474500417 982041728 163955036 556637031 734126394 41306123 971697261 644960567 881921188 34315084 730952996 397962957 444333062 32980640 927965236 655487574 572662205 130866781 887154915 870713321 487960030 915787516 460153268 985491274 915337407 531210840 328935223 128972736 583021470 566279374 147977138 329253146 534242089 282869858 962013208 808183686 915330892 75124386 729520922 625746594 750017271 28598873 780248765 178630797 185768852 391912349 301836861 776187634 5644200 408919448 154871120 783249947 876232295 193660469 840696415 839321266 823343567 792785567 787638646 181443889 978610719 738834869 236907728 303709529 621111379 817718045 411477489 414063633 179814724 622005951 664666687 9662625 962649371 760261194 817572219 863888876 931050928 233375833 759173106 763992829 698286221 727176941 605819446 14192582 604381123 917042197 934171222 35060782 816955367 992027326 132641551 879994563 450052281 199420127 646180785 417433313 751954004 98140171 829361469 924089576 454796517 539858025 462651279 283091360 566443384 972056466 780244344 188618963 631918577 151696658 990760663 404952095 908626423 79853250 199146555 72502992 38631112 94002748 633419787 523549371 852856859 322507361 14487029 322978754 269901321 283277415 886911472 4098702 900203250 723153793 138173176 59362291 464893106 879757672 134044678 874587710 651079950 480599115 922771623 651213303 32480380 467945088 779255254 596543238 971998240 456708886 90955925 81927933 840074772 284657809 936503403 942025611 49070431 612005351 389625975 307919434 794856640 512279489 517816150 963553432 253579217 938883538 239967320 931623185 377539627 327897021 251653519 737162365 265857164 281569970 628020994 756973115 78855486 818719629 430786843 289152971 146388695 524830998 82929726 723840259 275312094 593298257 978413975 146791326 997209326 993237682 300221676 943702678 809315121 513770080 94725184 702024911 715186097 777684746 962008991 88532049 336569358 772216900 952807140 313025714 167079465 959946314 478452168 6129237 972497475 595321375 891393454 867658249 615487803 632091697 338467600 867251286 498915329 318580988 497085518 945687153 203671868 852802773 395993108 5755232 247513234 219420889 586831860 534823921 699101815 937269718 931537623 818633413 114879815 886995406 274389891 633136487 386039894 547018709 901465383 453017003 61130532 165204438 39014297 373672296 80876985 747604872 178944892 328650544 351836703 399450889 481129496 17901780 672935831 844154018 839768597 373357983 381765870 939424304 956967080 327339961 581876613 81714586 702397799 217173436 790920170 506371453 985171039 832926237 639934254 230371640 386296336 616370604 396778265 506002584 140693999 184815107 953093978 179942195 326511440 730334103 751877529 790770236 292408194 786449242 174654760 407048054 220816675 311373921 995851908 441544511 674443642 611144184 112123025 540351758 206901517 426591863 894077203 737000808 722663454 514362679 966413697 184420589 426146155 310600404 821143220 519866672 864794408 853478581 406208723 17948290 240098721 524278238 518797361 399836450 837660405 679307394 810472979 928347007 619609354 415445708 200388691 253011502 443170018 792634392 999339627 96039426 427551150 855621342 813388341 41363177 815038026 370543848 290665404 863502654 360751309 698909064 526237570 446747964 310121486 518911084 695646414 79137274 471163683 136805238 682490059 56574131 712342714 606339783 456503632 196966651 791819181 906551378 663739241 211771437 116934026 169815924 956737273 766493538 785800913 538755123 962868198 179843890 670508228 585311017 256699108 376104533 512909429 198187643 954020092 866114022 145801098 415121949 524473068 175976364 102924495 799129249 577632910 950743665 284996274 871246356 809759957 126317765 190337877 282011697 873725834 118418455 650630418 161208878 36039959 493015078 881052433 365964054 427561090 723853515 777329958 751209219 885065478 55314277 58965613 119329001 706000636 641764968 93180297 894280156 527256971 563095942 798897883 3968628 473492071 182226888 286539325 514516461 643699646 202718515 668304305 912569616 292586013 782163364 500500855 393451013 318559280 943285390 612736815 368772389 257499293 26619432 879432856 819005617 206269635 704671500 905955381 617729403 118291275 994833369 828990097 508309410 795145653 212769361 810363972 119907628 52706952 146301199 329461941 659546669 254563599 675149545 937336685 625458088 379528748 604642091 550004207 496310270 626592248 334617225 201744169 976287356 11684867 69147221 717490797 164648313 541125532 189709516 682776750 150035825 866476747 790990286 644940646 676372004 396739903 448488302 886299728 830684662 534596146 791894843 477900920 679034198 268976817 510541785 108270996 190851997 319764530 576652993 674957933 845878989 458990121 213334074 414734232 407656449 916056492 714843338 115127227 759766263 981149866 193615927 484501498 931496090 697202414 648640298 398475424 468792064 678826585 726547188 734869881 311714256 257870462 241855547 693388297 587560400 177076067 305964420 333117096 120930693 707392587 945938990 491002663 209769404 547356338 632681076 950176881 81445074 140956235 546280865 649297336 292939304 667379754 17894863 278673750 661309857 278431651 124874151 149216503 217537179 994391399 379755072 232127721 985997982 533602842 116118945 363496659 316193805 491867862 887602443 830963255 866189836 271238282 909890653 52429580 89659687 43298848 24667537 629620299 980395543 576266170 866447459 222675050 589642496 655208196 800543053 669575240 709391292 699647957 229867680 461270743 724873915 223859687 600077084 146431764 862444569 12367455 75846463 984573933 199414660 494534002 666293188 197923105 53082990 54921818 201899858 202165257 54552836 911878075 126978975 123734720 614058017 998119393 555493262 812541334 536278700 475858281 763477701 541896123 191878354 54796040 772384949 639541619 83603820 98488339 714684912 394151669 259317076 582027692 306966133 977655969 814756161 383612858 233898206 601827466 831660778 148915048 959992686 565248525 659111031 540466486 421507440 725774341 933057547 106432549 721145953 918908063 401396801 483130704 119106576 276336890 116074599 600941661 578499913 110176363 506347603 86835710 528721449 390477552 501025114 306415503 395520193 815506469 856105189 405613000 512070010 514509494 354496028 396365651 936607282 95025889 278737598 690721946 231863724 971561753 765930273 149141670 750056485 638178117 430270242 816035641 181950760 184319082 735430214 166847439 757494854 929304343 570979118 616570719 189616663 188384109 796708359 685835042 257397423 131433834 581184696 613431379 847187298 51269977 535682150 900938057 708123167 399890367 784970042 405926992 869387005 279464277 872284145 977833634 920024957 504898185 394596309 931500442 284192226 695162612 544034646 525537554 220970417 682726352 207022777 838004616 834366567 379380944 72175535 765586280 135144523 818432072 804503228 449822962 217233697 305475881 747106132 247628627 794065795 736273981 535568189 933473594 303665122 842541398 692957131 182363783 319175453 708043119 490783339 638226129 659316691 151829767 947205191 325417129 678978029 252441497 353299596 386166192 606662905 798170804 230415230 622431262 810240865 935796136 547982027 519751189 190742235 492772286 600315220 42464923 237454332 880764002 490160627 406008972 635180288 831727057 404841333 746442923 672583414 213070693 123931595 652042269 567334401 266770614 420005496 853481415 286943381 402624080 707823031 188724489 406506254 170612065 891596975 659340527 610354717 783593333 602748537 917502558 586854334 17376807 6815120 991364904 216279140 888766259 896841905 713197025 929980908 108112731 895379708 273297497 413650861 378308784 558704441 548880627 218477081 448549012 128343570 465023586 50265009 351303344 189720191 227294928 254839111 515958887 341534974 463127124 137656586 436978327 854101558 469144450 470854188 698098689 310877532 654131613 607107485 850928450 859559242 188157433 36505172 943113232 335956046 513282422 898883435 219264325 522560066 624899059 919974196 261152770 554545883 20858590 103382603 249304289 149902923 965832313 409030401 736118221 981843928 318294786 277439405 66291738 270927791 861669763 385608262 129429661 322045448 588644242 959927141 51497423 809074947 550450716 23957032 884978359 267572330 16115045 254277300 492383576 804172294 705816984 539784493 75616888 518980584 185608184 491843289 612206995 78909240 799890761 543177935 307901698 474963629 538219285 926784019 259308610 945091274 529951247 935416440 13724064 858543101 524927143 722463246 248103236 230685963 373179463 687274859 124880439 777909578 136769484 677986215 852426972 84280940 878280013 354948821 428392390 742906708 190295681 922605371 178421558 574450136 786548805 236373358 618195594 181776739 608542582 500197046 175177357 72983536 263414041 97148062 240742219 820207957 857014122 497604235 786002554 385796670 737491911 709975085 871058851 541541164 887701693 269140897 791819990 107532846 863249433 3733813 76578589 125084173 403800257 113265668 24316213 867678332 93190240 752566712 872829684 713811575 359825125 34021867 186467473 860153164 946527954 801344743 752395233 445588156 465619495 721859442 259533851 213312611 688376070 696538446 826003447 791131785 467273642 192592038 681619762 529706225 743687952 138876202 198483843 820553498 311484649 743484153 514356649 13017399 526373932 579171281 471088770 57576728 309789312 276789719 535669834 130392415 36627121 807208689 472817922 94215188 279237238 721612545 343977609 834789095 293114022 22747243 603041584 611695348 812755149 213414193 967141959 517852509 18449818 140694924 576978055 297828054 199003126 52408685 77878711 84530574 615548628 578165754 239249796 141230357 641450476 936536107 770413943 994481675 822321212 903096804 397518588 719827848 553601891 596608474 714941932 765676440 296370163 196357646 221049142 192432516 474852875 959048295 776464826 201405478 819446415 432177551 221674943 767283984 767979044 98944681 662714236 940240734 251336239 72150001 821270499 883721645 203405324 861550317 447499712 366040147 548269322 374522604 745381750 205259405 362186820 315463145 969436711 561548013 262104841 403120183 736729411 456842312 68134027 569532166 325820539 58500072 503906368 868845996 464738320 610750247 711611643 229879212 902648582 471442719 447809412 104779543 891767876 958227924 606716040 428510661 368237693 311690061 898727208 153608606 186960712 784050841 682902227 715373508 670618442 52254879 623749163 458039503 651853808 496031105 781028903 884826375 346169452 214720219 674129936 625910134 776637266 229956594 126931185 300495189 838662255 281320584 667383116 80961863 142981000 726064428 676225790 122440713 59779462 57160588 779289844 579390525 670038962 756928630 32052533 326782520 463343636 911616335 946326738 995359358 716917039 153294711 124775372 204052770 405307761 490102610 582210200 395527396 852700297 346713067 297993945 971676568 801641557 519274059 281561851 37084564 499187613 825871045 536046124 897726884 311169413 154426970 548994755 550094456 903986887 442669470 931501292 137731949 208846987 757898000 158146803 108581921 367711568 854098860 625821046 731983666 154708943 93601739 270102446 247324854 345341440 423587232 169449802 88447480 486827843 485251192 370062413 753343620 934552539 764499489 520428683 519646510 12938439 563885439 859868406 779767527 262183067 288861634 491165216 10953995 37666883 697120905 354286168 958568553 990089349 659172388 989907096 679239762 982766688 654887782 841241507 154283783 688279955 660322086 387153696 312806594 226013943 548170740 346867583 790282389 730281406 36683157 6494586 437419384 108599160 871230537 702833252 143351882 533961040 286421382 15418937 272376697 437896923 592641980 380254074 672847758 757272656 97357997 340694295 726987132 928420231 11787908 378901238 285538584 214508442 276880482 164809338 809066800 158247999 463515509 856649366 960018282 361662519 844922741 297871897 44039938 533829156 959393808 62999881 2269072 81189989 434544130 822887057 153493810 104713670 926095995 461271528 775433194 366758034 594245012 127393380 138644152 537735682 36680996 689849523 317232373 454711198 787282394 997062293 841171157 598025391 217111872 763501880 236583689 817512616 678949717 222900125 181011323 10518710 512842585 102460927 850170187 768535744 102589913 94604252 431506207 213723143 974621533 688614282 242267142 943704858 892487243 655418102 109044552 89753314 529171648 633791871 309353472 341052621 280853285 234494209 530415147 111650036 636137002 801642982 353651339 620886132 335532795 142508730 740495924 338903497 672014012 850124813 389416395 569894582 869539861 646249131 801803816 155192390 457299175 830538908 331353073 114249621 8681183 335969550 612949836 175099045 917738210 985012031 313482638 472795296 205129923 323620060 55179125 927683344 956233291 277100455 295447406 666233611 467238058 383944811 812040880 904030546 879743464 636000099 147300299 102342451 565619033 728523053 836625549 114698077 813638664 419676242 571261256 343654170 113013158 247888150 4510177 307893766 202503792 414667473 371878669 282077463 160534602 340640224 456393016 670619031 50087965 591545331 910720645 867601489 674151162 606449806 677557614 86022478 230964993 634180674 139921891 395439327 622836013 305361101 685233732 855091627 591221832 332546029 148108418 979747552 954160363 654898725 981329037 582806386 580433014 241269971 152665258 907865748 380276807 245046224 880399005 260083844 486339473 263816715 925829980 630571497 885391581 989840246 549494941 396789239 652943124 861058214 775683219 99048263 783615471 922970536 764985596 312926276 171677877 998728506 38908381 50801302 712101861 267229207 711799093 889655216 104582754 365776732 434769783 249103629 199879835 467406267 854896392 458240472 195894512 328709893 985917543 492768279 941438396 78196546 274081878 680193497 3091984 100114307 343060014 495800454 539270508 28660113 538389118 535059720 324958615 122056323 586425118 333569258 98302 712651016 711118372 669067273 206294696 427277314 518243920 321994992 376898865 577557717 440262117 656479302 110418933 177213833 910251016 41740014 369538405 526864987 511484587 785965484 279262080 30534616 298523794 877198980 868754503 956480360 461834611 62447214 611970463 448082820 750729112 527694262 229246359 495955743 359949996 99960889 973633134 33752899 78352492 959575227 504355772 728866621 413093976 288411262 373180122 866676863 10030031 833108573 517531018 868352410 88942902 317153692 468113224 329719834 881674379 132922673 153359861 193835603 178987357 246472189 491638645 138918450 238414295 530878671 137947934 945783223 250258925 754533020 386747777 145859424 320100965 432411131 964287360 642390238 307992803 931691974 52078499 475249697 779022076 117744344 269477834 507418128 51804652 338269481 748755107 270347855 145919541 20237567 354948822 586898352 69402803 365744152 162744418 18280282 763367631 449535074 215305898 533744822 607137623 823011911 190004521 247667830 919987643 126849899 281135286 422606672 185759067 644299358 335451826 37372456 524374330 796181006 861593737 285281453 334618910 481285282 842168444 995132626 62012445 393268018 212467575 53186384 906699316 120512328 614540849 870688705 410740444 687366913 690907229 532141427 959311055 895104876 881841439 789577978 89488200 586654198 538845103 354420534 796995938 680436886 656007448 363525628 924123228 544782617 642058003 147777374 876903410 633886752 728976314 280182587 640242047 96531729 785269042 835194255 384527097 855941558 782527450 841167553 329876682 530402081 99815724 460871585 333860412 319355876 297707189 67899846 990412824 866962282 201856212 871103409 779283660 112227772 934944294 784944020 760418884 18397156 542292063 270414342 851294409 993330247 297681809 847174225 621097232 721637939 594636996 82982291 82887897 51462794 265739812 312064516 14472372 932818538 302966700 227494486 237835116 166604053 992293050 929890598 352571667 731845284 776421313 691077210 745187159 445369427 979712875 467776369 579567187 436702888 426898177 489313226 902788784 689968157 440574568 757083136 371027093 618395870 112298448 544955514 667793502 590042960 340883047 159767670 616050709 404616925 222206112 316442389 190861558 179231169 155830046 161592663 318369315 295580443 876368865 145935632 61427149 444426219 933628204 384254744 258219679 953081263 355899443 835834778 671894695 41104805 564676422 604690747 420323560 818956200 562172628 991186572 550152438 415530304 27408519 661638122 798244965 607013173 410219534 851321527 140068469 663216254 182540900 80259781 816659784 359272586 25771897 173664121 141661348 10779433 998929817 2851829 4748643 454915735 423073951 752628503 76971408 880949323 552978870 311853637 680760835 736370285 568388054 504775715 780477616 565566663 421325429 150973821 817852612 255618326 604330389 105980270 942796010 651113800 50139386 851993214 448543208 998525845 646566323 789574779 919391069 250079904 657982859 421063081 408010419 605279049 332437032 471779812 3206436 84291882 549076500 652969461 367328689 44063959 140270743 921775398 543031458 692160475 347669355 518159141 195177 153450914 921840878 550446526 617876921 811479248 251267553 564211478 393897900 124141414 318032510 628333900 516211440 293427370 18927086 582667133 728163964 464775383 142606355 435752925 948668859 989808840 933516993 227749607 218311711 157476102 924081641 363905801 25514590 650534538 323936804 613984572 136893348 962003438 92688898 26428460 244005018 237294366 387026479 228898192 359379649 224002149 858195816 944619358 139552065 932731370 85817918 322682083 48498725 253120980 648151552 953874066 966777121 134540455 15473763 765656193 447199254 336560652 418900551 116801559 597541219 187660726 598016017 983504616 197237451 467664690 386581946 832488445 840307336 819946759 334421513 844360031 858144487 232480707 468140058 136166363 802567972 158087057 213977693 917312288 602116285 201046555 320316716 637531510 668472503 597703384 581412283 20639588 181358751 998545480 215122927 654547487 496117611 44032082 69986529 374752108 559308602 204841665 529168227 678912615 620344534 308188204 217566471 291189363 121995035 933294049 12408947 112818283 78119969 511744206 134885109 949727501 226031652 835844916 706067392 879345643 860710922 396915198 549869640 308987267 93682522 534014537 44954400 857960962 245408559 150161667 843223002 752813687 249629287 182033021 460866484 367004190 596499767 652720384 140200113 374092064 211269452 620729974 330664252 342666056 965226323 799903271 809525988 408673831 4460434 876781328 822596127 676362433 650226323 672485534 897793478 500008872 529997058 169404324 212394483 776159676 123000786 591596004 650793704 264123275 884071836 18983406 251994954 704292935 57575954 886771941 880391917 696109057 18121726 767465795 933278992 763517607 998822974 305543666 76264388 224852548 41383536 236513946 881053657 936798767 253376705 825751264 349470809 4802246 587628902 920756872 11043916 799049511 864805391 160901999 705731416 152215131 474880589 893795399 128342148 698606347 211418706 549208236 111439074 630100600 372073889 160495693 501259756 149698867 423419268 666503730 194031934 645814456 61946322 121711352 911117424 152396880 877964841 272250305 505733911 714209363 966437682 42073304 316256178 589727054 182179150 745446808 130769608 226288310 556998069 303674361 573052034 354929091 96266770 412805213 778190101 409825568 383529682 845948399 408384236 902193067 781229069 891563138 120629077 697499829 279884398 765555378 642804485 655073869 959147580 741638873 388362640 607588821 127376171 504001920 218685300 978770067 617633014 784815510 905592095 447622200 326692265 246296629 803798408 834248408 225758365 501620357 471251536 56908145 771677002 696835497 458249572 678650606 738027737 808028031 902491467 191953825 974473972 807056484 403732754 981060295 279627553 299696066 46860239 868583929 108876185 774854236 147397949 789416030 295188955 747975875 418497746 327569536 578136739 60433565 902861812 128414964 928486768 941520577 246880957 560129369 445628452 187750801 39115498 115010999 794916204 604299630 953838303 129680185 778579325 393455774 294896895 764603212 431559761 542637281 283592095 771948509 890256833 200771533 143255313 488463661 623521991 202643774 787900132 184468459 251976554 138764621 311482759 137588057 138572413 644523416 712335645 250055481 524780355 343743320 216374877 400704108 673894122 145248198 667023328 583833256 595318500 737771044 852071749 293774355 875520088 425343308 916823154 535246436 28863982 828260704 866230421 217597835 158292839 252146918 292591641 449986809 174559593 292707311 754674483 683889649 766785364 908774716 316106276 980802546 435799461 770523309 411192506 58546690 318688253 489713644 913841069 244034578 512672058 537954077 782818753 672742614 767434512 14540121 909095246 531580985 357047301 56441153 584978028 519574053 419171378 599869090 802581380 19953031 767830881 989698662 497780020 10206806 809159670 54371540 117116542 979854728 468568895 655235132 116895799 349290218 628487813 628975256 156492819 943953015 987339793 599536603 95876888 727695063 965874399 551775008 160849064 177996030 706113196 363167716 354074640 65706008 477107248 508253966 877036612 64648105 72733193 251638285 498486420 37801259 226240715 630177694 343153737 533792021 426509422 389216413 430799121 181441366 438309136 999886625 38613812 384587897 584447994 554616046 194938619 810926699 937066067 303940409 447506850 293616735 293922085 567052549 369317070 138670791 935280480 363981789 311149883 50797185 747068789 124540922 103546991 955242024 252522446 992774679 14477710 818633187 582482227 71138714 296023171 991920415 585294382 811506457 602587792 915073985 509694056 587290939 12145788 57725670 702139316 1577704 469198127 450010566 673092816 542027369 254309539 108646795 227716024 457244478 593291443 352438649 708516097 638519119 469647727 348211301 75176395 355336766 647113773 405816276 456077795 911538292 465798925 75335233 222783541 289843321 559350032 446689197 757208090 581767797 719250816 766103553 336861279 299209318 800655426 123799319 34338907 897674931 436670960 584357993 265396164 167503168 856198457 109703553 659208844 68134240 131011006 616222372 356412797 181606157 962483266 413508898 66386084 947205764 290749831 390970591 746519097 836166515 319474584 73793478 304301169 105617634 366896513 377419498 187874072 114984974 282387804 821859022 540978354 185130758 6855871 308750200 374840986 743085943 179560630 762513287 241228363 330854975 837212259 932525750 592292840 581966966 985955222 457334189 699563964 407617668 845797955 709772325 740878305 146031916 618719310 790993190 85839597 219740678 153808988 638292335 740462719 670577556 292071607 905967869 123572017 247702595 38856661 505212302 902428807 145725660 887911058 819228032 920057211 74294810 677381457 353943105 619441314 945397374 215158604 664859338 965391046 497947355 338633557 874218534 598970226 150347293 605199623 227487040 234334636 159727383 334934720 599789810 859640936 279602343 254298355 255176816 207338115 903968560 921962452 487412886 283918757 287564961 324845894 224164368 781415346 583833586 679666016 83429955 715350382 440477655 459945521 521950987 769038684 327058907 622595097 449633442 788460438 566794940 114917534 707521673 951164625 285457956 344954317 555920122 808424782 426067279 533973381 373799409 485578226 808707113 295290562 629314043 72419741 360985646 827442299 392056544 429943883 92233350 602641297 342352648 988122434 605179305 505293457 685647272 483992565 483022868 985518051 716102583 95301378 504237737 518072080 380663874 467163126 977138126 925054788 272643057 808283599 598505503 359213466 470861978 486054705 356935556 424162713 262670585 604584929 448944776 429434134 846370380 972065964 371257984 632427263 33384626 672842657 589755987 163723244 364022510 589245515 86735707 524712241 227702265 462560786 665860052 230347798 12039245 138524788 731488059 570107552 1972068 460654050 55110785 691960468 866200568 62784918 200790824 487736369 613041671 691404551 756945751 296781585 183500335 631984204 780111499 928136366 895150771 578706704 3037772 53866125 511092564 690963430 334696247 410990097 872745328 838158522 853963162 782649388 359880756 597454898 479494079 819368301 217778924 478350783 816495749 216907962 862428861 110320080 194887758 989066103 748045558 486527831 259802961 632665236 230240357 90381472 427896644 451965366 110481277 760401830 156118262 284071767 201390761 381070093 840236220 75606210 443801554 143430069 650897261 920566528 693349486 317485084 544167698 723086796 825962540 361716213 262457413 634001225 772415166 592982435 611526406 420590463 135925362 268367736 710180213 71937977 681084338 790050290 135762794 480127071 16999640 251392065 556041800 796794028 750715211 981420594 791929904 286646154 862254460 886327132 674746917 454742913 605373666 2219041 378522582 37188761 426755774 529481426 381193880 109155334 628461266 133230563 528668093 105385284 853791407 219714538 403472559 607972114 977322600 497964633 983920811 838339155 57874591 173049590 147998677 928489095 337905267 699341465 845210875 581798410 966116400 290561997 236609768 48879893 714640876 273289508 415243946 175471319 161599355 440423366 368321958 942736935 436701804 813736171 843311156 676448715 337487860 641574961 256137393 394739834 960765512 397084968 280145147 519431214 437952597 82137959 752122639 181647403 344141023 182416986 368890187 352429987 612299023 684056456 297846729 429009156 703761254 486199282 644198917 770529699 354879100 138836707 827382133 722871890 244989028 148034330 305306629 507368549 199664763 139285105 422281230 941691711 184689941 328245425 371717245 141365789 929538280 615153232 665629680 915026317 348622205 771446593 298365852 48713294 102546849 809206003 292909757 908063050 914401670 685747118 541750870 306377730 350397409 732282224 198416272 57989011 889779241 696868167 651477598 486540942 822219349 430036286 325572502 752038778 941615668 805297127 570376021 505072682 773489864 336836625 112499931 603611385 856770954 457885720 519625520 710910517 960225390 233013852 862902451 29224396 478037877 525509437 929894829 2077940 937639701 582493313 582198680 31767805 345221541 549890943 196364449 722629596 720764915 447528113 873657152 744580653 132170841 869151781 590150713 157139310 516647915 438770641 892023483 614474604 836304013 300242704 509534171 836844268 308559019 505290452 685839275 478501887 691202378 593541705 533354155 772852479 888025954 334986239 930906108 868000095 75617304 498860490 222094373 597263186 513799749 246845857 761877560 873209116 29631076 406078583 566185762 960227567 149269903 815453450 642608324 548635703 719994352 360468679 739401951 466384376 800924008 847194285 2303763 668272952 773387075 187585529 704966739 712538249 435948301 515109510 201054420 190106006 70954706 255593185 489340195 521940991 507538308 644964003 108202230 812320776 155936203 464698140 838158752 790609757 895195433 356964207 803651027 369434036 984199417 300261247 367842692 993656896 38519789 375792123 154338818 624276284 951518864 302305566 768596042 628063042 156535829 131356591 122416647 570376692 511640799 118973487 495772653 267481192 896141677 559403807 477932035 251879543 485005964 691478949 617377734 657056608 667019780 617716337 499022105 781740522 965143470 791598325 380993117 76316873 900460808 947281823 869600273 667132036 375105811 40138209 934389123 801887045 665294455 650150305 189735237 414859218 477377345 706668892 950162428 586499603 611758599 538163684 762775480 781275762 532138769 473155404 694531676 87658112 368155337 861158292 404533181 172395576 770546773 381113277 735345916 239262904 976839595 521086247 669406310 851514907 533974598 364479715 889366745 635982661 892819096 592666482 172998075 799370767 236109418 953375774 937728159 330330860 542530509 650021213 407490870 694264826 358497035 760590074 13913519 559077201 883149846 808015709 862638934 742071105 6945992 838423079 877716916 8962067 549934466 923978748 802446217 834924453 878712037 670567800 506352488 2028951 301538947 821652431 373549714 861135851 878855015 653833517 278724321 95196437 855709505 240491687 615644748 86718422 828087890 792544 41321042 221427009 630697379 112410648 981955430 12934659 25843704 740982046 527238924 655182394 384444810 776499741 101224119 166321609 147611972 52480190 132869809 625147303 215048352 105748118 559558677 699230754 196981879 157848375 872239631 106275926 928082670 188550402 513978660 51772560 973234786 990053094 302999061 276091364 24615400 671179870 94561544 318939186 516041468 387956668 944135409 591258399 613989129 921907119 103737209 257481256 55756974 564132312 532693921 144109628 524921089 64405177 180029142 845668147 635891998 997158165 24603493 291037890 356869964 948887243 883469987 674999943 737526323 94710885 962970873 557180331 327265258 897330090 278756952 348404629 926349372 279058388 921378389 987412764 676422256 999122958 798006339 716157707 652903662 701623572 971117475 921419561 658247489 145382431 964429896 938663573 219919663 862846521 262152621 451462224 894000132 280640604 459127724 367871594 516029044 587507790 857511346 442540516 802905980 699301497 350838339 73179261 414846722 281619302 578341422 290366751 954321157 127231223 875330485 214025932 252703978 348244162 634000504 37559435 763296352 600994675 212267151 209272812 461663020 745450519 484497138 740551991 381109923 196388613 328425754 310508842 29207026 495441367 423637769 535204562 514157418 936448980 323350562 151980069 261946421 933541800 971766775 724318927 626100677 859139016 785841190 366555519 471221441 330905969 493307513 235146679 716213976 829792041 741378420 510155743 907732549 254730173 759351278 100681849 48961284 697536203 987737954 694557351 808681093 431701798 223389861 490613664 398511970 6093712 249499073 597936587 773892453 421362240 219789420 894514561 972683998 480627225 95009188 787726718 56296494 916552973 129153874 942335277 282254964 784907533 445234507 241133459 597730155 734942877 497401702 366171271 645336854 830882537 949037832 104041630 949130282 377015681 458733102 413887827 681022588 860055202 647749690 985020294 582422396 853296774 928369055 35280107 436206671 946408768 391070042 146792064 655279228 375893259 312627783 785451554 476526740 816412493 605108589 527906564 710891253 542715748 226968238 120036651 701872348 185574813 498862848 647147114 67568084 505823500 239470885 390834485 637168493 55103647 423161929 584422244 797580177 936713601 911899552 344253033 151342482 954843000 706507152 302313034 507008737 165702288 347882566 120840663 135041257 109296831 579522178 876000146 293175071 5312078 758012457 614198203 5872656 559026241 512892799 698810867 434063319 34845892 584841010 510840092 167030656 198405579 368435917 578459123 966866691 910424332 268828666 697886971 851679509 418353752 418289031 111484838 910655293 826043385 589371797 852559814 341286004 524776273 171272578 745204540 511766547 247115433 899092520 823802844 344804513 407276258 735924847 10638536 26541004 410020257 860930281 306051662 859072664 206404666 397939660 629932417 42527655 642298215 295937312 658128562 550865125 566041326 633006403 36454100 483701172 651681210 619895330 34940284 613153574 674367317 613878860 844635631 17292506 842981035 29132054 40660507 627723297 725797132 674317456 168905431 7228591 119163728 86498061 582476582 427744544 267023889 785320172 333583060 844033215 386764317 427120269 785069080 511616138 778004634 699672822 575920081 287458454 78260243 250512970 28136037 374967682 7597537 213802904 795668692 26231253 589086183 945305635 125464148 528034714 471571527 427934139 130611517 551739698 616589865 818855017 617430388 786472855 801468254 594404907 84076641 796070419 542282236 534970531 897257613 933044680 679794417 911423024 316246835 962445256 130233365 947217918 878175257 186521565 540961313 152723619 347802621 685270939 240334655 281915129 948389054 9495291 560819968 798788637 518382640 368914897 920269471 260373925 597939299 526045875 220803132 61381151 240731433 569533570 345429647 11575225 565112093 64816463 75600503 33904967 126180846 100423803 901589853 245465531 948781984 244309838 614583506 810093803 888611385 247467781 801885113 192501977 268063097 506261055 134623302 978622719 23391480 992761010 771091793 406055232 821811232 747258596 178628358 589173689 320464375 422823985 540756083 58760021 40789450 126159115 503264763 619063011 489717012 427329160 575620251 914637410 941942800 700809870 373179577 730341690 400845092 604063129 220773652 521817685 476393651 53134257 816435607 79241271 714915107 686072836 658009722 802760856 103727087 41470860 95676136 683665117 711027043 86340899 541064737 699379236 191839493 505421466 103979464 481303103 401478624 172988280 902748263 45596416 221615912 981105849 333881574 778627016 925717680 246619778 303882486 759320116 820215856 709700890 449459204 637706963 302428669 690401512 360200964 727171200 110051483 348745978 479399829 177345426 525742280 679323936 795483538 130911393 651490212 4733593 664810568 122255391 535437275 703354614 338376730 221394190 108798790 805017752 954981787 412785087 86946341 776212333 865103319 437580237 646604514 978514347 566221624 536558110 833808441 171286000 288908591 56910161 55874356 971030654 26667246 105367475 988226365 83335034 862821878 640573704 198155209 783052569 676512577 579732856 623976622 119700809 580627960 26948098 279378041 318545150 295177607 307739640 863938232 871534421 677308342 830771534 640322114 501658065 114109186 111506762 311825341 262957076 715119288 655851915 937717596 490673624 268403300 494534495 312280791 586301292 2150590 568207439 449802016 221952950 351565131 40106022 877105755 135077723 629404476 174756674 398403788 375018891 908003712 18602445 582783548 283342668 450621842 50835421 696464095 61559298 863179378 262750037 997558484 20716450 489232175 533877437 781258625 40424065 197120774 904915921 131133330 702329317 941973171 953807189 762754185 526793981 188029849 289044598 399709621 428556461 64055570 667865942 561308887 298530345 540839659 677821279 438057603 537573875 6676022 348809354 24260225 176290498 922998455 122642218 417602451 360977573 137354022 962585689 178353633 291436833 104418201 260145683 925903881 876672116 606439670 560003254 367173989 924344816 68399936 509337123 832549658 623653854 815528015 709778991 600331134 117656987 139146014 62638783 639280816 520487725 513366132 547298698 272596403 43745306 921763225 721673800 217084547 789862605 34272081 650479326 661802551 621356670 196629540 575157260 644999992 305944779 477289223 991365769 715504946 177211722 636888194 517971899 294337170 429650192 690239177 302208588 198627380 313369541 795784290 525966212 64116236 237382603 767906293 938432677 315297661 91822477 673568675 377738083 504698046 386458371 180699809 710955219 194324387 976596125 342046281 874677131 504802338 723225799 466461802 783096257 28359860 4643293 932816010 896767259 39498025 474533598 138777454 251839754 47697129 170366450 231912613 328687870 358352637 73741672 789197003 631345720 852083503 407095421 410012339 410861452 443385220 189548232 216117143 151028870 31508652 198369004 591677718 403922043 769323210 968511554 881098772 216607465 840641876 863193626 699319746 955813206 551623293 88360708 726741855 593010788 456731345 678617743 656602675 886919137 550542799 708302670 870791637 378900721 367739034 509862711 398860655 176643728 747982214 954562095 141011296 156415082 727711319 943106640 359890574 450764119 60481946 878246402 137666166 9280061 645227227 340292948 138411399 557889048 233366482 727808509 770465952 397162614 346041051 111760041 306396284 639103336 572031052 435288949 445267483 639144993 786722497 626349263 193330786 606912356 598626293 180475849 114222271 564180515 777174876 970668310 158971534 325061587 779982514 99977162 59558146 902611163 601592053 126180665 982113743 888323358 101127883 474078900 363342725 208523300 529383414 258381167 872100774 577696670 627406151 962541963 678799105 338658117 749143457 391035737 286147571 989306251 625662536 774620622 90943016 358698604 852657513 405914151 472186857 986564867 545137294 604057851 688735954 899076227 998340813 659165513 427320540 997882609 315249889 702528980 409975833 966465455 372389765 446950986 640800564 53282701 74155229 752492715 562771290 545522988 392942802 408285119 919601632 90326216 521812681 106000340 813095600 683526257 360847108 604383777 440251862 608452288 444311522 983745316 433128312 749576881 867425483 809181279 212200235 301250291 351005820 855651843 330071808 537671395 606597765 993326123 278805012 92499779 207102539 444499527 444328564 110110855 531792599 348525637 506948799 451987041 793694115 417227247 273702192 312731340 996026601 439063959 168471793 539612212 83009781 866494019 898166261 984966858 546102360 863841709 967919551 617862891 925149733 865227058 993244059 256863163 944196593 745847025 332215257 268249421 918952550 813258320 948999221 75049090 210620349 142649355 377459729 280343527 928574036 999832791 717658080 338906507 315841043 207344829 398776892 704361229 361565170 76007584 362308669 925794899 860991980 245829598 996559377 164338173 865509933 986410945 215209702 271878783 490989179 459645213 89450841 516008157 992895094 246565451 182270815 499929141 56690054 581990026 896962718 686774549 161072618 847971507 822050259 114907795 434144033 740475150 345206316 123142786 619547161 537325332 606702255 719813155 349302434 448475427 631602302 205236120 271882087 463254902 855327235 617630607 470563546 918797591 378487491 761202451 477434003 156756747 273761891 714598169 908468775 81564304 648315125 56033902 78477881 626513107 191731472 492666774 139026386 671368050 239312993 309573719 767659528 458269640 287933512 552657173 883980540 946804793 620383065 311454542 222341718 940766310 523141677 692600452 186834447 969694857 215235895 276944990 429263400 502741978 466142940 732476947 720281611 258187752 777301915 166722971 916210158 893200566 645590910 388620231 5680081 951580684 186111396 302730377 180910506 228806574 891133224 738885768 340969492 271245667 207976566 200323980 301584006 408951511 219963280 434751368 487504238 885486564 935278622 244056893 997936170 879158597 608846974 804683545 545900082 799255625 309754659 352400174 898651763 884044135 953809116 27919611 514287362 527881694 785957529 319059918 46346985 541363560 508279571 912923294 515212649 282590666 570675802 517396674 275924771 749367770 987262642 486540101 718870752 56049661 941583139 728648969 528561426 271871659 82556937 573402228 329140337 265107986 97156885 327494527 809389359 458847560 246365901 581703242 188851756 256634932 681435835 452971701 750949770 631135426 922792348 609890881 918420548 615663086 611139413 856062448 143453943 826765769 544774853 800417208 804666853 659043563 333742518 12673251 785781666 434287498 166184091 351345234 597604459 493460840 720489763 254175082 707407694 56417445 602347099 945875573 747938750 484259763 591532224 78678104 357854904 36253534 448140849 884011110 888504164 686478855 890270554 44189938 982175728 352292832 895352666 795694911 522402302 569841853 742553912 333306866 717296126 188230812 166100276 941008332 297908410 255290135 561456585 551085669 280399471 321068875 464198181 712151117 76942056 540631904 168173568 451529609 575486868 614017851 504634067 891964214 109513253 190618925 792500121 953331398 61680607 980097785 801314378 288016839 312670321 426373563 464278156 572579390 788082927 28674906 324915609 839043894 938137974 518741535 908854101 729954095 478145584 858335841 212269743 328151004 191385279 359402334 665222925 898792848 380794200 614115871 401337100 954131421 697221986 475262769 840170208 632349418 224933010 362695105 916668304 408394537 7294860 64527274 606012523 657347868 259922073 990681884 594244182 706442388 908658700 166080756 710800079 869894958 693487848 65567837 297088180 28388881 224918579 257511051 134239443 32616664 398922989 2368584 25691768 96991968 69173124 366957194 606219473 204758631 836856623 80530939 361162809 333208502 389505740 905124237 827631054 209991393 713305495 252139576 324272502 194135458 915827861 211551794 690266418 590110131 264644418 874153441 296453655 929594871 189904613 723619289 724963049 351289845 141588195 318962573 413841913 436742782 769599024 218854747 226891038 826996523 786824366 250561536 233571522 798186680 565160889 727339450 456318448 298263957 174443312 116409904 796840642 123818738 163430554 631313603 796637370 836938962 252089890 217411727 982544021 97555642 141225214 115611916 755889636 803002662 487472613 621900495 919543100 380244487 418177928 768620659 466719702 830245611 354990116 871412856 907055927 13064247 658275381 529240352 862527785 398053631 106604434 778234875 106222091 926862509 802789176 391413235 731744237 693211848 356074629 442716249 62529599 548781948 46434067 254478247 29314212 208403441 540723293 208257 32541309 770268289 411462792 792610677 178362715 187565317 25208552 86508969 330855845 769226832 294481797 434065845 83070811 924044362 199523765 380715197 32694622 656608484 895208241 994809512 856539493 234480218 423530192 570641698 478193715 977768658 199000521 959141504 503093136 246862651 151294446 425363343 628838472 567180739 311452214 300371792 108261165 841849758 553715865 272893497 570353942 14332408 277388211 351934006 166852519 396619752 694022409 991481999 275400861 413117118 54074380 632854754 111383461 631597434 781262849 906312290 759008163 940893308 591579137 382738136 418605462 871459004 698838891 340631829 486637889 184275034 735465379 790981790 375711397 507191833 533839626 383327672 466426268 888800794 71480304 427448436 565142434 547896276 628356777 598745013 205950617 476443466 478294916 362461356 696123304 325967983 295244711 417728976 411474488 60829477 273426607 387456459 951031530 787534385 958517467 115156399 941751823 927501261 306541107 911265579 867977545 346637668 608887986 370045671 978658024 412658706 135923373 955193523 623865837 752000469 78475381 91594945 646675761 934182122 735570030 861674072 445393260 596213634 782007823 277187789 693351730 72957198 114666374 759725434 636591827 31550325 328357188 427404044 903234579 930393394 760055615 904058904 926489924 779080716 191881536 43125464 541406606 954976952 767089344 844150822 403332544 820259063 568067885 429592583 631681514 798428764 338038897 732164449 237198276 258402825 266765782 439602630 893348400 998874824 581543380 457343464 978905407 234531279 409716022 465583031 275152122 486245138 244698117 98845281 195354547 385437695 186200760 215313619 269052768 150324994 372621759 380567311 469183053 795970211 644868587 42749181 517938621 243017086 781630953 479454816 729380376 2972224 227134311 637448782 230353470 379079418 189025436 71946940 141049576 232078237 246873936 555300381 420420645 675896664 430316726 388885543 880724235 989720783 324996811 416281549 821408387 412873999 337742956 730693364 617222376 398508149 289405739 729488565 791115754 319441863 785713829 846826385 299297282 278798077 658747225 418217182 382225509 914282985 431831079 35132744 525045947 56879318 927710760 600333463 233964884 402082585 533711957 952189097 789510033 8258118 629113311 412825385 198822684 764783138 708787233 55834221 854192628 708939930 234651948 970008392 808436429 498315561 697602018 245853597 842827361 866407436 969266238 981777043 397974141 358515841 441720156 484438792 668573180 895180854 50532184 457255144 184397414 15006631 882469736 20149092 869761987 415450020 574023980 751898019 635110983 46472393 234603130 138923040 743529697 259358134 21778221 661078600 668207530 127746441 172589147 825502884 97158381 829139479 283195248 382609723 178186047 849032151 334340619 835905464 175816242 300922560 272530695 24637669 351898730 752803553 70995789 263376883 733240641 906435504 602568499 570179050 861671005 977324435 689392507 342443111 504985695 845800987 978835215 944618813 834411872 121784749 977581943 659665302 795577222 417739245 625593880 601350219 740906667 448073782 476053655 826013396 359800518 499023909 513448954 10569969 328528782 885438508 89814553 136876713 780021557 409204012 266708750 998231658 463297083 988724393 399768837 711252078 11042194 720326076 529467776 304734718 140829733 8517616 900148885 648590245 176906571 544564483 849144013 402770471 87369108 85247529 177025239 989155429 772138512 174762925 660706045 999906468 781028705 29782083 430872369 126659908 218859763 355893985 7146903 993296468 621019126 72174498 631669072 733652473 116349635 237692075 534552772 637390335 119819921 400829593 384317517 594876158 936909517 218119449 984784712 708510436 721890533 709712197 578881041 649465384 761793117 623077183 92425825 591845828 165873965 409898955 964013016 65083717 125951495 798268700 924427501 821681908 818250958 641077111 303747385 132677081 164091476 717946282 895434299 872384690 432282398 680839139 318492781 345325726 565147338 980320118 647646160 424884867 466652879 224397211 885402104 808890953 137734695 202547170 377589752 228620818 606144407 874240091 570821627 967694361 724479078 485531984 671998744 919590560 994845103 986389143 305475563 27238938 867642292 315027432 480207785 137021054 698329002 403157317 557542451 687961738 708937074 615751763 195813702 411800719 345673302 777371822 901539154 194846681 920972125 526960747 535123421 349639654 872037877 686064761 990889746 247010112 132072696 992418673 318294158 55389550 283779364 212363366 718521847 305496163 893524055 64221305 841473786 763805667 481610836 723270143 48311170 783044930 973007556 640485392 976509275 114605773 225258692 275181067 474570574 766387644 751445084 89302871 988866218 275768366 895991098 907301199 957108456 123530547 797245802 760451563 268056969 99537012 629135327 290583 584793519 709068750 23571955 548005595 773534324 270200592 159091958 240808502 962837101 548874408 189179507 703014541 143125308 120388822 76604019 762319472 803301820 286266445 785975011 283800187 119975537 501718674 270794937 246629025 232013041 664001989 190884632 849529192 483022730 683783852 281295634 795065360 79198035 878880774 254020334 803077154 408525879 471369285 545549537 394776344 996486441 991615382 995307177 108266750 593986705 843722581 361653075 816553282 743555552 726773019 475859451 294848020 509595489 21338264 382490687 31907143 102982876 925321063 315795145 678636696 653061223 545071318 445195813 405647160 92010937 400056178 311843663 984394771 541189822 741213813 154958344 435736459 167021532 213158366 919932861 528809635 437910849 26722866 204608479 259492243 424385228 811212926 122057026 863477700 982410499 651905393 379584696 648649508 35292390 494638763 825937642 836066103 633126852 125881020 421652774 555719104 505689598 549701310 1235082 526001818 231307292 816595796 368952471 939241863 82649071 576215895 159090012 969588631 444132743 909894970 201187551 672374651 373974605 344062386 541563161 256045376 581897585 598943924 899612117 602636583 359851353 88135555 497529562 381841730 696901540 780381098 482640688 849274931 755176834 999332686 85889784 788064027 389852831 515362638 658325376 422785265 194411260 339788939 757197150 465287289 149295575 45120719 722601190 211638307 133784641 700013430 901214232 482525429 116620254 737903167 467279393 893609754 682151845 614411696 757119906 609080445 114014404 907044076 278753521 116589673 54677395 366800430 811703755 65795518 557563036 237237495 122127169 255545088 555885852 385949938 751725248 218758103 755140370 829242695 797255625 315584365 950496002 294334958 348202062 112035055 981859617 803930916 666863891 962621377 882550457 295450184 504826823 956897228 140893095 101707995 199489856 416055920 424351367 498664845 372271902 628082064 603178301 368355193 161636194 159277528 332119767 212520625 37422831 994073363 430027986 315877536 366479077 674508886 782921475 893391786 817964686 877107942 340323788 962868900 463254232 400302748 758441260 493012488 293862143 188845114 993027342 341537011 542903853 119118252 592066306 830385929 733575153 511436179 908770053 267367705 58980915 56691131 730377930 397842765 307184471 141969194 525032642 798504825 644113617 600926124 611705040 975508790 674150191 781435148 881921584 971517408 380897076 616880155 878332529 647710340 233063583 543873778 404539490 168523245 673518828 611547958 246899255 795997480 98544027 446004487 684900315 258547733 886269327 400282041 787045728 190608806 962592532 705416367 778618585 815730973 752406974 388951411 152103525 574228922 258054162 484903905 688360483 516128418 242955205 610063542 570254877 256263198 108708383 505182906 244407268 920784380 144990570 569009266 935911519 364307801 678327530 504239533 476438567 500471174 247852745 730422666 406270637 825733131 370473873 981174849 742858823 595968444 387344289 88425412 161120287 543781718 2159827 46146669 817949194 928514723 391145624 425723226 887998026 611987735 714696944 985309505 50436506 875962115 547413653 181814861 221620491 135509962 109070023 362201762 973398748 712145702 644067854 449416919 509998682 516307179 294231375 117901937 787990161 391697239 799524729 717607043 19114310 907554699 582309357 250707476 981374030 109297982 953094598 675625467 793450248 836038912 925057112 577105671 522407740 871930329 352579848 602180566 32730946 621445927 189451583 734639032 871462609 346898030 799382159 27526958 768251000 805318791 549541275 116696468 240959960 889010581 968858327 863896445 555941476 170830190 40934352 882008749 684181853 883249824 158523716 337228968 779067572 171832051 314115684 920571974 946444640 697429885 277616677 891720605 936942485 757240686 439601557 2481430 770871403 765601724 860088741 92200276 857665892 610243398 196169694 258100705 865283965 664279165 303389739 465233 223022356 805151974 607038236 909050707 319823130 630481716 677245093 845742555 283634459 901950002 657523389 488747155 667037168 48690944 829658083 85566739 816077269 971640186 242003123 520234909 795029353 146805950 426553368 133101812 827046023 269919572 619196210 347544696 910918853 805379120 608898656 309726595 854961357 922764434 629517523 351561007 259299434 471423086 346638960 800049810 261008588 15415824 507259227 967342153 267971826 231403138 8702095 302495089 760437716 841750928 597647193 756099646 802426007 152991857 967169928 667860248 999666904 461634357 309035144 538176839 333891363 127527453 207373343 299930970 914538827 68469190 320509295 247127467 636152640 799544275 488661064 783495032 246152598 108021078 112064752 240792100 505820977 901443254 261234037 220331777 884572907 867021755 652062408 994256696 650757423 650863142 627076140 113959834 2287345 655846696 464553209 236415160 251296470 654785780 677947059 653437687 332538845 115972978 191249458 956954880 934410326 784420188 498260987 547540813 869513373 704019479 21313516 715626754 236769402 467171253 957332776 313866285 34108009 117357421 822146093 879246250 257452929 451273321 959998286 637413489 230510048 697864789 275789050 640796215 137107214 38366727 690508073 494538128 454787957 547475861 406234372 61357017 29050183 438451620 81488446 557067150 150617068 740429412 434829084 399824226 494109232 69422478 573085313 537439781 481470841 887934065 521293535 333719113 713950769 662969661 363073703 14028592 470151730 374503377 186782096 804003474 852221156 626510310 990514727 550879831 727891517 264834734 463176462 395064835 455460514 16758479 367740 767403469 186649419 404178997 896159122 856928417 260015970 84709974 604507676 649001479 141079051 415760560 93166108 259134843 769573125 440122111 807135076 508233350 378406441 596053472 308340129 634957293 783599703 248988047 940930308 300547656 410968309 310484575 51276700 835893592 554150159 31590197 109094818 278135762 922716525 220451007 671048626 511224271 832669375 674921032 67168588 566902975 274376151 248356887 12154846 141901860 941927787 546810341 716957112 861001352 783219446 919610615 565342371 976673305 309631686 545504856 722220128 528697334 529083900 401704840 741569650 362275417 202859373 390973881 986069028 966371926 771580330 753645622 54475112 9095083 615098492 62018821 442249752 505064744 572251552 929139833 339623874 57753640 928376255 945140218 154161666 932331671 452209467 795537894 903869926 440882426 931282220 346504932 836807892 616677596 564313125 296504680 79712683 643329189 183125726 657019107 386964305 552015939 922681249 359665547 321365277 655026213 940019198 268270360 209048093 543406885 745896966 59173165 63163677 471805087 756587745 928537199 631702388 996346548 143501975 700750529 779140285 485883301 773672261 88026195 35273774 894893791 645280094 608078253 914380831 14803972 98924026 462824147 869416049 961563151 904632849 170351568 402715874 383109498 659909448 614185595 446199000 554925504 12463336 203768245 712573675 814197488 398357531 727212359 237750197 111865762 337316095 6344328 74272536 740188823 154049296 162723784 454900749 992103177 775827519 168812116 114849809 455192868 977548836 167760850 199217723 855390696 503473227 507012343 653148581 786312865 890651130 70960233 593363538 829201884 475528228 461783814 337642636 95577054 434633655 651677565 305271516 492121338 56648301 504596083 889578887 686236508 14718162 263220697 167590594 313815645 89058747 974317735 442117866 158361571 191595516 528260751 175822882 810830640 262637240 668127120 929130519 415829905 183481804 613348238 667282161 851277946 380464376 981582875 912962021 201647702 490975824 35974063 456836540 21093836 621394893 411878578 100778768 107793319 715976425 474120069 337572085 159198732 632053718 681380836 288451283 18530352 193732371 139212547 604810024 867629693 420788685 828906653 153601715 568078441 676529164 795783090 818159085 873156381 511493744 783420119 879495254 688980089 50313719 260327243 723507162 212152816 983119551 328840113 571704744 442607927 338262510 657407973 160675096 181171232 980313221 299633805 573388945 523854276 306642178 998998209 845934669 106671883 237596183 311718416 624322854 169667049 400724839 316954864 266438425 221101812 911022359 680223939 695814998 363498959 472149440 244382330 417737195 492667139 878825807 18785344 336770052 675425831 247639507 286291933 640922741 640173526 717762048 928134236 204669357 889279007 133731842 83966265 455662051 160384534 254589401 204173034 14528483 96695733 913874844 271570131 387533528 439947507 975112611 446238274 485148159 29691473 988999415 339328639 294855135 345574860 376105508 901484456 183329096 136802150 789315146 846962274 438255511 561295979 569397578 922506894 312141932 276377732 526396212 697489355 299417110 189841671 361846798 621295660 880811279 961922887 815538290 965490397 989402082 545201643 805668551 163537770 310661472 976895158 376820134 961074557 140025523 491334541 99485921 895383085 879516666 820870610 24296992 774407247 683222345 820213605 502935028 969680559 449471874 593303963 298929850 36472111 150027772 390431417 548211414 895448527 934403781 668368243 528991156 238561645 245846882 653753640 637422961 683411106 247826585 322827584 90660651 99510575 590935062 612597721 281666958 181636598 496938610 483998425 485551834 869088125 624723866 79863001 200724660 442289094 552181684 269422657 568394686 600567456 832587055 263822845 405172482 149997451 727561945 472823296 347145985 463795685 228703100 845270857 942833057 933391727 704214354 796174881 85854229 902707160 613130324 204960510 57818635 384021698 635728976 418401357 159072006 371784618 751270379 100936810 944971264 882629176 774300918 186607416 455207539 165709003 657854590 36438542 986641499 843989641 222081375 268118083 786881277 479244387 391559517 61995454 911858424 563661776 969146000 237946203 604588715 500766726 703776463 506515690 307251442 444194190 814639308 586218865 398643858 850544365 187214234 184130125 143288813 459384584 101711896 461477884 855722437 327262257 470004132 549379421 843705633 987878099 135195959 501454163 179178080 812493116 428335988 989494986 603552853 431639432 149939551 180156099 660611631 267156062 377571076 358336914 353925447 593327450 769336449 21808931 62449247 530225341 504682511 525357174 461429621 191011147 260878334 766597380 967750677 697259599 504144718 658762605 881676064 674437298 614933243 792606181 50366805 705853139 850900610 376317358 363469214 325640076 288591516 809250683 716544479 710071385 199496146 712913824 185329014 948779691 424705801 215720803 270004002 779470898 828766377 960688094 600886674 459534695 765119799 788666271 863658081 925873635 408289872 789036394 288934406 539935614 242115845 676602270 6293912 169923857 974461667 216731360 792853694 914757454 451050892 943985079 151404557 853718466 975747151 311260901 652094812 547894093 207534388 589936172 882226716 741645303 482549583 822640672 319128367 921611543 554812329 654819713 189111330 273024012 710487697 99199459 741205515 152751833 231395472 65450996 988295562 711846438 642780317 913244588 163147912 984214215 351101337 529263431 22802082 77274866 556847275 969467242 868991766 336237386 785671298 8308240 932795335 121628135 174447340 219838107 370020941 335967432 373487018 856236754 889350740 571565589 841839010 415947913 946317590 454970414 405838936 399142811 617572544 41289984 77674717 521794877 801913523 459365923 836706841 26255086 767903799 128297929 758912741 995889984 32734794 674949385 311730882 608047680 953422829 936821431 298370454 739522518 262568660 189045851 3095380 327601884 1580647 609415671 620930028 560258148 391353086 208922976 204516229 421268994 794924465 95901664 686729027 411634987 156989574 151051572 939468973 55017867 489794614 233224007 374056894 647916097 83545999 537211863 841672905 698871315 697601121 692851746 464246633 361880895 473619325 33608548 959341965 876521716 655452182 32187717 660535416 936497530 523929181 617706813 78874018 35867803 307037762 514451655 748573018 570745604 672102259 406637496 567473362 836690080 100179880 245899769 582856498 275278389 271453875 991251303 755195779 304773110 660389383 437679589 392033935 857239457 862772623 513532792 795392287 210655411 242277377 725918682 607019232 392551984 915453233 701213000 464481030 445565818 889786151 98054590 307211500 700273721 96140792 604559869 810979796 361687159 231137019 252284723 666825773 842181130 291058162 57683644 344199384 300563974 587222212 607115286 973656414 853203421 46426153 173505309 701138001 198134191 26902422 287308297 340809884 675653491 306081992 750121608 135550173 126813623 823664800 171455702 17990179 275350077 691321310 512417173 9618959 344221933 377058641 851347225 261069081 913781850 137839935 824932545 929717324 517140406 918869921 140686007 302640195 759355462 414467203 908577091 255866327 729955135 602936993 418815593 939152485 816178630 692680432 182623677 771464545 987515931 240239736 346581230 625550980 897896840 732620514 38382575 32871106 841232604 796518606 752865721 499106915 256168657 451165311 282827878 43052528 471293218 613232050 520648908 396891991 899738257 723186198 266139832 425701344 372537878 261168102 397604368 692408392 849588169 357560384 287539153 962523237 401454177 980820963 635095312 399331378 113977142 598390857 188702117 345994777 579417115 649832055 31939364 186549366 383602863 55864167 899733770 988913503 622425684 608649915 288140564 792384674 69038106 250366670 891978255 172154896 245714230 257690414 355675484 108677423 983002471 336473317 156879482 83874264 688007621 143875369 142936416 120441304 896232420 848324438 283331905 699100727 724942793 125985237 35477493 133042249 155998109 531985783 399516176 684172755 567608890 115836915 18626839 317172151 673648472 283907156 403915452 736253888 162089445 65403751 79149197 989621200 528571813 543075023 639292420 620200493 118414804 888950112 870586668 989716751 517143297 523769096 281124067 682829619 979947051 215528018 333663862 993368808 129770458 847220778 907520348 905737624 291800321 296605148 35650505 951823747 315130126 615702171 530569546 295408828 822914497 560227968 927661429 9492892 571285773 293592909 740986487 364540496 160445061 770170295 115142524 249504234 705315070 939872536 828113714 124614277 469692694 807134602 530989241 765213763 441618152 815009963 920301811 923828783 434217068 941493709 373800124 842611064 213188125 673069080 789260059 309294043 764202748 606704367 199598050 349115909 636408544 563346737 245067945 729549190 813595408 860508420 476054520 343529420 414470915 227272412 958975065 97059858 201702114 615082950 686866254 29750106 306815764 942523247 165051337 522970278 153773303 298323907 263820982 377157461 966881902 241013994 87872814 223820132 591572003 878954632 497141537 850158504 688667867 161272334 654403076 585410963 667806424 982360968 444494271 438400985 181172759 439206308 92008192 281354953 481018191 33122778 148074447 364454630 170623644 237606791 639488370 657024411 115916784 231917738 825064730 62481910 262296593 531514941 936801551 192222112 166502422 467370824 280915795 382442477 714534905 710504758 730058799 165448086 917053289 691326489 215059136 644986205 441972289 554741001 434975256 414318961 525493199 738731233 452225097 106631020 951172211 769680929 292343740 44547912 80543479 598451132 300585066 706620682 914817154 301991869 936007077 363477725 606292161 454963863 505141473 905475668 778995083 713156441 97795094 156556972 453040224 739848132 581968419 75448163 342618951 172971677 29242328 948386161 200703155 258052696 307957901 422298805 588037774 789486174 390685622 52154248 91348777 166495190 903126681 232598637 771107931 88691160 239267389 811020575 126511053 771210592 468722692 864592397 465107347 949220549 515000717 5521051 512268075 653047968 674104468 582974357 40968541 547693264 456550780 735287843 762902914 34165483 846264444 917427845 702744528 265865954 850943310 108488192 475416201 60131514 563900487 449193674 77801241 69087793 998791528 653046989 509200675 581405334 248461700 725537759 262157302 975777976 29283945 910203261 462803069 953512392 852317054 498887373 741064819 228172776 485277113 837690408 553944246 495007964 871482121 856198577 825799281 286138605 554726813 561972395 613432060 55137823 589099571 700338041 529046730 978294154 618992617 403500353 603650993 613141966 520513563 790711792 681243203 631349404 943086313 516326613 275181650 691505660 751479164 71426232 693500161 817314609 450131432 32825496 830479441 359832952 35964083 377415339 548371074 446949214 950660792 956968851 322672942 317268900 846542637 526306764 32038979 513258121 16420854 47745968 49089256 436777781 213177463 258946785 27468631 798144000 716620767 80052109 155743242 181370814 777721375 110474263 988199833 835925980 36412625 107034998 481832666 733051702 676698742 634166631 846881155 681615504 904682522 391297361 512741229 791840189 653651816 178460773 380697885 553444330 71426027 224004142 450014761 965090960 265044167 423671526 30846802 356688899 930971279 522153320 438638444 736346166 701039584 825965560 849539084 993195667 192105342 221321610 744419334 153974931 535001698 806532488 846393926 940549291 745166610 117933425 967974915 821754946 601362234 672899803 922430154 591742245 676439541 497541484 993986966 726145351 739299434 91486007 132378290 11538998 163541129 986507418 383110407 67159021 64611312 851537308 359304184 784570212 69674829 488163793 569571637 242595806 373555933 585802088 571564201 71727515 89562261 723132228 416690651 666073658 818519610 724140751 515047867 21644525 805769949 230863257 922736879 471234140 352741181 76163326 267280720 754374720 860056555 356094867 189136813 700445577 33648236 652767615 306929479 564896283 19836663 516219037 471560068 675233763 489784163 381235280 388484167 883450105 250737273 457568945 239795492 899163890 592223201 834186306 792059150 830231713 338635463 955337396 863602271 475236952 105718215 884159270 531830833 156726843 402637368 637941011 124032444 842552149 224899529 110059685 575033692 387052820 32563966 518801753 75756322 871143365 779388820 683585178 998358344 526899912 765024753 262891533 42953184 494960827 909023059 389978743 272446087 588669144 594749953 483759918 25485652 34084477 695560661 381513057 542246517 82155362 650914795 852142752 441004663 375947885 363688854 938456125 736943074 952252283 657661703 764580404 108380230 124316071 691186072 844348684 921169376 512982589 80399672 507888025 902748420 35046529 231577234 264604057 974163097 838834928 785681895 950486155 84251332 221812322 986531518 15952320 391539288 810352123 461223025 20347466 953929790 203332859 189713182 686531635 698856199 866868184 812999680 174823833 345807559 931766249 660258240 348019156 803781351 117645092 794257207 186248721 942853877 906428113 525951755 735789305 178333285 3187068 888352568 874962948 849162786 808124190 307807375 835814138 78952212 304787766 405973971 608486661 356813686 410235172 319183819 491900806 539924767 115858565 808538596 988946667 161025776 653280330 411809802 27703799 32807535 151257747 715833468 258914342 806021132 198119069 719433197 828663577 294732000 663897894 671155628 878117484 652509475 345391129 874811787 477455925 284861295 821417177 716863136 943102161 415069813 732373036 781380352 543459579 463209106 132713252 485807862 983939302 582562742 489985951 324341790 256587764 873831938 416242133 239226102 340712133 595529605 725137023 478114843 353680563 988034754 65785299 338297312 986585405 632727365 835943381 402401731 611540186 665626040 125140582 487146540 586806079 547317995 672514306 665371731 265907358 24965641 713366783 826842330 982085994 507179320 70764766 774810056 177716430 892753771 81359000 182632283 445811201 829673549 910404640 9287163 663297043 74409682 886413226 166686920 119263483 64424042 897652183 943828032 85959033 350383171 390472431 613691060 467652696 290896498 284735678 435443700 586568659 702115186 368636310 917366151 181853878 575472611 72128114 901559411 170894200 714626091 431921869 665995644 813442524 446803764 749706190 624506885 121247680 25455484 13203449 793468905 910718983 279764205 299608979 761725053 683313150 883529651 554148721 340979846 142421098 56590166 516241935 863910060 309737578 91735570 36739396 620487174 962594721 558409472 83446387 35212948 949107908 793417201 915604353 460006716 555550413 946737549 111462560 305845040 607869236 862420367 496058930 584584236 811292774 990785415 941548889 328959608 240363603 226403736 882089944 310755242 172166355 920504873 32522399 851875507 455697017 803532969 5378147 63331125 882279295 422262686 933667136 727941865 519573384 314036095 425975843 769703699 140772389 981863025 595422644 619340916 455183522 280290806 56983085 324797638 664872715 307397694 205781612 123996541 819889847 962157815 118431305 599861049 314678394 531138825 564365634 512354242 586691978 744069330 386316193 303681829 289799663 748928451 136279028 902361066 336446070 379296571 143257178 974318284 415364623 240376704 884711227 89692615 230445227 644788113 39509371 928321295 365465327 99767561 717614324 587359206 512788238 495323124 226264491 480020559 770849622 467433305 465140077 969874087 957983227 890578379 89784142 235399184 110745551 626739294 76311151 871171685 68557731 305513388 24285071 771167549 169886246 94138540 41717722 557255894 772487972 562796656 828603767 684949185 182894182 723471398 311805635 158903529 291481637 479347660 951133047 410001216 394376192 927039895 703856759 510033056 477131934 488901491 484560134 874831944 603447179 323412012 747421784 64996986 395597293 572720205 610379189 818229338 319886985 324588713 782471906 619833789 920667788 927030516 561907151 962858323 517710428 62341789 221948845 655990902 643740561 375238907 304800364 672327908 351635869 441079085 116713931 522767420 203739274 863393285 596672796 950407749 329876228 871615311 196089658 872568054 84486508 575197120 989471529 617499360 17811250 788486218 333955217 185482340 597603026 394762984 291454641 842535020 935405870 719221431 718354020 128524981 706716678 879566484 91838481 748440242 537978950 283350216 259282754 951163356 466983194 776313771 588455468 338301424 995863358 255795739 515869568 182192428 575614593 154732794 829564708 578945176 204232333 159316658 156933514 161876283 895841050 10045923 579842838 756701316 979276837 266929320 470854174 868670984 769429042 34132128 719877392 478473898 173462117 51112552 635446682 39995488 93277942 462802115 421165174 410495552 406049240 830331341 518354430 737854017 891625379 585941031 341166084 298929827 246077618 280206407 545864040 56712268 955143759 225422405 147195519 298285965 375848155 795715829 677052732 74009859 229533423 706824818 754281902 52674875 496041908 492476578 194136465 100333203 208005401 146457758 728959132 59463288 789527465 69749504 833842495 88415570 715729959 877224228 641776935 93654611 267089221 194132575 696501694 144210411 536411160 361954974 706036671 788538563 302652047 24337201 853501420 87682594 778013433 207453725 588280131 79807951 824077394 676250112 129068730 839272944 730536358 720284309 461276358 989197213 659407792 831858763 612228592 141692481 35797213 685085358 611325563 911720218 942694734 308389429 979361486 231666354 16618456 278356132 448473260 740664829 530503461 110562060 45735979 182074492 713030236 198878 433891230 434931618 692443486 176275541 63108931 828652095 155881482 149099683 725785241 988583720 924574232 779557242 240688002 696310387 517630286 82994058 767961865 118513412 744997655 503296290 785347474 996247914 181503874 666626462 260565287 973638813 515103082 198391917 266290752 743869495 870962429 36237339 1605196 35189067 356074623 620275330 29130445 303442213 980288515 10579343 758623875 299195322 987029118 770599267 521280657 211872905 78269499 735739524 679180395 801296982 972589914 624736498 340759483 92447777 14642134 980777561 408450328 794537694 837280282 623276623 584428336 427335425 8285525 871447202 190897310 598981555 207210913 548368663 482077769 55785632 536691736 619074369 666931265 758899658 483146882 581121203 973192293 556140541 806502274 856122324 224733660 866254753 886885659 602357409 217676670 474908336 803850924 123212148 861922620 120030755 512425037 86047772 93793528 575051717 520014958 662624923 444487300 212613489 668904647 789408368 138688676 895261263 588098585 230712064 701895227 947534159 998806318 756208087 190411663 123133280 494129729 695899913 123744452 628089414 496367917 691812825 43647519 462527153 232673364 495558190 685660533 360598706 270697722 130087490 458251496 300758441 609328215 199347407 546676843 694051961 491862150 372417985 588473275 403298068 655732119 31541832 305054085 830348085 22497797 913688832 225438831 605806723 845312844 131499941 242864936 809115162 186334652 942174049 49683650 312480034 487437302 359427257 799551343 881160292 353867589 457511904 114782535 273248843 14771323 193885253 309380977 589250302 208165038 684045063 660307378 102394094 563777447 362186139 265909193 510696128 105521098 493622598 177814777 518762723 656161642 191110869 519074768 263722745 1687244 594307507 923490935 742274131 725574396 216062531 273552123 154038648 28331951 505452422 771164126 511353413 755847398 26488614 496862335 327792177 131134219 576941025 905318710 697216678 615183226 834998833 338600757 117583226 852406318 850925344 855906727 140614506 524515016 802279601 863749121 652891405 115347199 325229535 46749528 493855837 361679222 167651162 492748659 227201397 861754208 747165302 80293727 535247380 765972636 393613174 62702296 825184367 904988309 940732711 436589557 704288220 279779530 719610801 183268899 440232908 861956188 582778276 402394012 3914152 877260141 311592262 444656149 878668345 620597770 109883529 118159070 624948353 783822796 428715730 793071432 389471206 788508418 776692623 994653639 65060208 332546307 673222776 636095444 200625108 72630290 203799311 284701974 582696514 768638314 92012931 116045200 703299584 912182945 571847193 615040066 965291379 362317454 594155772 165028950 280293941 591921004 949894863 449578408 746094998 887824259 592075644 50193090 976302373 809155339 272187810 105289919 865712537 507301431 96581592 546333385 310612283 20857879 906103033 281184372 327966129 520687847 570712190 527593580 45696367 645241922 317198264 43165904 446158821 67012803 680543143 921336470 134613889 128580188 815189264 251543042 511030907 752852165 576082386 877536289 312675134 975770559 605336621 544168282 440710623 21216274 926352573 698764138 629592123 295301689 110761919 143412033 936001779 252396400 402175895 942410292 822080235 200662842 112520524 665081130 746474847 165338163 468446176 184220397 124321445 311715735 20817091 593534648 198436147 258252619 969903079 990037286 700355919 362011927 802442048 315861713 958031923 409169291 907401869 776586911 13764908 226878983 514214355 406114814 111765679 984525099 816483561 325968191 769847511 572832597 12696102 433757529 803335373 203236232 71171303 954215076 806161618 263179292 57612596 671535864 137251671 598218944 950636364 499966527 272113876 780899945 802956645 620234545 591036021 583924527 735105772 24876819 903709861 494048859 128852038 162914595 92029295 378349293 259459381 273677995 287961466 413806612 616077261 438839334 845659891 40214036 604502325 589872999 574350098 973814263 782032556 228673845 645385186 802444344 239330257 472325291 48681731 274823127 674113747 28656471 554136479 873196589 471435550 311853237 949421809 465159697 959743023 463359604 106722310 443698319 479987353 690787558 947319162 972022203 939633914 172180947 572567770 42667512 364915350 435036011 330046403 394210247 210596299 828184157 394627551 108990414 696775716 987784489 839433055 860332914 309728763 320498531 597131065 671871960 591175070 341004278 642187605 685348295 666981869 792316380 724828232 519897845 699110092 588433183 699875267 854994780 909896426 748059885 503710250 120477358 242632269 741559981 662398879 363263154 536124476 947935779 435919210 690246107 858696970 323625640 267585825 260083827 129643562 29352839 785827375 765035652 706619576 512939970 816313328 400598663 857454154 112912831 829889717 504294250 34641921 686058869 493232531 343465440 25494263 363174498 986452443 872049841 821918746 461096897 819246727 131113377 311558430 65374124 794308993 996563628 832436649 331513069 626302853 390264892 680193151 489476007 928524784 383672925 884186651 44380977 289726892 442633798 134197611 527141468 283283190 839892089 367376834 584955765 926690294 663324549 300501681 226630342 74277990 801974234 404921052 125981655 585484144 106113128 956586590 344027772 161672791 284304284 999726819 71527964 826026633 660348628 274619830 917365066 718920325 287371977 732250486 990856367 709709089 399057401 735574583 796538787 808383538 84791072 623137439 616929151 395022190 52666420 928353554 174769680 735595179 853906268 558433108 479225110 159295411 21270183 736381864 633150559 772543255 324681115 439294484 327433887 549057615 488178520 235654874 646155912 967504601 43738318 963631914 765101474 70267394 788570277 382330215 877878457 498799741 894729894 936686185 858400561 339334308 182502302 16276803 638211558 448284924 354508595 64068041 586783876 645528338 398182269 866837316 280883774 111019306 262450450 920956722 83660672 894635594 527058087 410204537 683252307 220061711 970407633 219112335 481209088 343130941 842491095 39500014 555048073 535173870 965045731 821848125 859316235 371922830 862674719 340794884 40791837 280550091 66848756 695915804 864665600 170133481 677198967 789668194 441021157 691171979 334366076 86373174 849047082 709781537 842944557 847580460 444781966 153882064 986452830 797575347 224718667 96047905 459297304 102291474 383744289 646827196 371533096 212332465 661132208 389837220 377271385 852543859 65770125 852845479 266539055 537559676 667127681 798773323 90865577 769855075 856590003 602985857 760641546 254158549 29838534 12525222 229620820 873547611 327859757 324433394 322487409 740819031 687513358 368022521 439087455 952266687 81673667 742015185 323394391 886393453 336879050 977148901 68874963 918595158 828784187 695223620 67599927 750419586 419918437 943317853 522800844 314463951 716635164 120444831 867045857 674653129 644314399 224842190 871911128 926021214 496544653 292869756 172135367 665988692 506634295 92476431 54548079 412217709 586080153 315384009 870219587 41283151 102524345 918259244 127617262 451244630 351930561 687687317 847308999 919897014 710284943 22039949 374358783 348571818 133918382 193568760 757778431 833014 971423836 780557399 538500901 921746207 502404905 507181940 635869034 610263028 408613225 908969625 1291219 959785829 406309641 333467298 384204057 193035078 815927423 599144845 640975833 532400724 154731746 482150053 916410756 361704739 403243906 184971987 418266594 328210474 925366117 291718703 118035188 908772130 441423393 548892707 143287547 484747557 999251595 526274946 390376853 490161788 238210603 213468370 103859927 755895512 518813996 15128648 970588953 851745371 806690053 401228895 721260538 481850429 907243039 86792405 32635709 21548840 574466476 952509239 495521474 281256857 997214228 305843632 31445186 850289309 932984662 322388115 26395135 15608780 853398740 351126196 58925363 789203037 170570742 987423320 469585947 214545209 442616121 833685431 175616148 365956619 125606691 883684671 20429635 253829798 79636705 138128256 842547357 375773058 21152485 750823942 77477433 797115854 523783019 351497905 369397807 312258675 424589213 590139756 513623654 446835427 521245576 324903586 697544468 310009548 100006712 370745841 688061489 773417685 457607708 373578482 573297556 753919354 461422146 541906222 965057668 429885773 793449485 134542137 149468992 643894720 199712240 248005763 2571392 826077133 226666693 816625742 45582244 909299782 748270849 423143538 370625534 123167501 359507991 841949474 283079369 801223100 704579141 754696408 129161667 434011751 550564156 653898383 538905595 240918568 142521827 858709824 482352670 822378584 103995602 472602449 787711362 533273216 929924982 483839962 657544609 379332096 825648533 913675363 935566289 122512949 294604249 586935577 142070069 364246938 923316089 172921644 280106169 724664694 254421950 959013705 512534295 844138768 954870805 943561724 110601141 56740547 599967695 244921752 585825976 763784374 642348781 884776142 91724177 202471975 739893431 89076263 572758966 895592623 466069674 532880321 57578679 452632203 686003997 139684199 57895693 505974681 927852735 84891602 166173011 74486338 784305250 92435193 208880937 897212406 437714148 972739849 194977198 5678125 478547112 479445257 715181966 171920424 565811172 378280757 704136410 646436707 641885391 939086431 665338873 506244618 492692181 377216745 545331399 243619953 173802062 20007611 15105301 704340462 977948018 563452789 867849832 656520700 103601276 458173834 80416667 486146761 398756154 53766438 855258511 739330365 184029581 928725081 497482911 804740032 760284125 42969581 722424352 232402993 854599729 815157899 803016218 629391154 261279230 151053395 439936302 444868709 186307469 79440589 211866936 909184216 818038812 584814300 781132821 140385170 421533451 959657086 627554604 877406788 938451420 209746987 657511015 364230903 987947735 116415356 43385726 304141895 729334702 959903350 175538848 569957806 270963713 254858830 627129027 433960916 20516611 735596409 482931595 981725938 541193061 883424905 689212878 80845616 477126111 30194470 101176131 270313347 592987383 751094548 177646471 492276166 508714420 554311690 250204263 611845919 782501831 231608444 506911443 830428698 417096295 362981016 440535535 360524645 520795672 678317744 95530268 800012438 576459888 952246014 85564842 423897973 53590624 999404743 204978051 920159906 10270293 768391034 691910846 409664892 622837720 410008156 943603187 302781033 880429657 284896572 204144817 473981702 869552189 537169692 742937254 471446387 913963324 476603413 82610614 998779970 569001230 532511782 154766160 632941146 365579951 335794702 58376707 536959043 222126355 515057561 127602040 962085604 800789064 704866103 373584622 733359149 552583173 268311709 832210463 375049305 463789835 359388756 755224242 496012027 826196820 594483824 721359546 929557960 96310936 21533178 495624219 760156949 71061274 309616208 82451275 709665297 549465200 591738111 540903210 176929409 814088236 724778556 673989563 123394556 724158950 860356623 183373202 179862812 879510019 216846950 427993826 147841857 544319277 267446308 376073734 406305914 584596694 34593025 811782095 182479169 991893272 617698247 691119724 348511005 449913723 628470689 999827417 145421277 642396243 445582718 913775308 190629600 660509386 797133247 237695926 222191159 632112636 483562809 111306735 351244807 802818719 966213396 486197971 889098944 491902410 77351554 950697791 7272187 193827531 97317278 293921399 141350464 707740023 204147254 279702201 840136606 667945073 769556644 474550927 101452025 529793762 830292362 996082166 166129992 374445346 243742295 164146 910364951 294447300 160261222 686605076 476666960 572093409 681370013 513977759 649393010 851202474 286813088 180977053 913731467 762145191 627315686 277241647 230913858 562603130 629384672 707328031 589304814 482438797 475326625 842038537 18881276 440426800 441364802 825875426 387335741 805242597 757997009 767209151 991046815 645977014 602811 986946080 965603436 222783656 145813362 300264672 632277700 613685909 908449132 98170041 428531994 784307572 869401514 951075188 649673795 484388538 229083787 288232710 538895739 72439857 102364143 823393808 547905638 142874341 952290176 359753869 19196912 616379456 119036754 467287798 466889649 574665193 571596825 646460984 853071011 350833408 16853059 276750057 978040490 739550393 772469221 700574366 825440495 677783878 516033448 812499282 46201075 969139368 528279218 248477363 567456202 159162970 812220538 357781911 352211281 2989157 52482685 128644417 984901355 596590523 815998845 835909291 827230049 650864943 223556305 383371815 528235836 806353427 895433349 273841131 553144848 732537009 432751330 709309458 115367622 263525686 6367867 321349439 148634998 390859383 485574058 849742695 491181704 841751438 614921061 245244316 220381992 742062986 381600352 845784291 782480399 774269249 233045426 738258554 917331135 71883512 171301541 97623594 752738365 369601268 197698092 994234770 683188853 460011741 640078377 996600290 830351370 864630580 565660824 573485954 515751060 622540103 611171764 386488469 756861401 329875178 7996206 384069329 709685347 554617005 605135729 66702731 188411810 614959818 49034227 334109088 370989167 253954117 172891919 931050769 21857243 30509315 956987705 314577350 536620492 974193857 248065589 459289211 450980685 223071714 834304534 610657082 531617696 603333496 446663308 46478045 675981590 893350796 62305660 536771138 630009178 94851219 560915005 584134207 601475868 846258805 930612 687014469 293475782 628689107 712577833 285348721 160315064 558423362 457957193 139628468 612758060 472061829 555578018 246548363 35487117 291179710 226003759 97546147 742110058 208917425 49566752 272213033 723555316 791505049 219608858 156292070 172203952 384268975 375657790 77715900 542029512 34009863 636382365 340626241 54041633 82549630 686867629 735943715 992612551 242098254 674755556 313936025 437876503 495649736 273939594 464172237 554069444 348880665 201568421 205943664 296989895 663113236 802606582 280411950 331425113 720328956 879979322 976921029 332923664 592495594 728674646 991162400 82272037 17157869 256880772 664554228 493374873 7741782 632609824 509677604 612959738 606510662 439026107 183037948 135425908 800499808 989771579 676335995 703265324 129501811 897199711 246467796 18603978 812373706 162816853 710490693 407959432 52547716 224073204 538952370 674409740 610093619 948966988 196042980 757858317 753362333 47830994 640974598 824877853 620925178 810828704 794365312 466678428 793157261 447950861 689950819 634614017 929601538 7318094 854805148 638905858 475510623 224111366 370585967 706442204 744057225 958602972 494218777 285772169 537524504 134687820 511749544 303071099 57600275 307469653 459387374 221771746 670017512 48565855 413048467 904535209 975216519 748233172 425251198 254934643 655130032 165990480 554798851 122535419 836118091 356751752 368804214 975521530 358520352 610757172 814512715 931193763 835565691 444967055 81358194 773169591 542034847 776890355 578739099 632951225 850475528 655108930 501968535 610103051 534232778 202290493 988169337 445746395 289946609 252637119 161062827 489399257 860253291 839682568 295136719 590591077 408587730 592308707 330247602 837646950 225236381 625252418 607648771 421845570 115020158 127268336 451758665 72481890 921544656 214331561 128161174 614932651 316009154 125904705 763301410 489260815 65532693 744038486 456513094 132935141 667766404 358878119 132446567 138836555 969316691 228815178 526921001 635618042 344554491 504606779 668537169 855496193 828073892 50921913 278595026 505744796 29859059 483326855 810072283 884308382 303058053 43260706 848237388 107263908 905360686 550701382 552599042 150463903 280937909 469294111 810868354 856602402 797941705 371009824 862126209 912916993 727314252 388184544 53985192 366784127 807269394 797532752 510030089 882791681 790175388 692252617 236982263 541054860 185960861 345235237 320496000 491358352 604802027 132011466 976522198 682096246 245174527 519773145 745229202 507231426 222462313 544299364 624081954 518256725 750817923 9828764 940061364 129069555 899180123 574636638 684338139 823642675 100920213 256131015 682272156 825863986 297553391 64938237 147130483 992417031 456150865 592075540 896619958 471075199 687088583 157577500 873748021 995363402 24728751 21703557 131525489 349216518 4779172 718522288 696394962 661072740 205114467 797930172 432739046 950021714 496909631 32892015 196292730 797676933 790021070 687452473 483355686 714842295 750380784 643842952 313296211 605378486 515414283 39378459 926415904 178998961 321989826 343855343 533720670 459089541 693790257 867198250 856098642 351161739 147482045 7812225 824200119 324341969 388083104 238518358 338085371 391550579 297337198 500075041 859160993 337983120 637885176 969295242 886307565 284648985 242584492 534659903 637948481 464092299 678157836 95461247 755204435 389786699 536533306 627314005 213712641 850842726 323538107 997836270 805207419 541552504 610116540 157445768 110984306 326152359 310068789 185155910 808303398 106269428 994483337 548314216 617120719 736742301 425997581 962588426 375389641 552981107 102466195 241350900 908487694 546466696 247668455 659278025 863913410 234470898 587342215 919097703 315378430 628665376 113366905 499708701 655781122 698633242 216900086 758951484 146408187 82992938 29881513 642212619 374465944 626688965 755221831 15059971 361113812 711047003 246389653 264781735 729582402 696916009 207050301 594946333 304781806 663065002 678025342 582556899 309479595 785511734 115962133 942624654 165434394 263886132 255528190 460897184 163212941 164247988 610139516 18814233 35482197 572507734 678792542 615959579 783254027 642461662 581219122 103564464 915411437 700957815 419628981 532760643 924075290 849071276 731084184 723630297 76704183 782742857 852071441 362217856 563888917 378561490 145883607 839960167 779895856 123886289 626914828 474385736 16671528 824370994 467553480 129402794 885529762 288482681 383572045 102136544 557269981 554632217 944292961 871524243 927164907 463732816 510772343 506698501 561969145 633037250 679474510 166795001 792122544 792736237 411748652 430461294 205891843 77455909 915373861 506744079 192069648 989116049 826183789 802870490 954202958 828398459 881478374 267588882 204086238 162654515 280109511 431197251 940983068 485475252 632716081 671029520 326649053 711707435 166254605 165639563 578311070 272069623 716620121 951490816 801332682 370350529 538682913 615421804 371506161 763519721 367659172 272485253 362330115 764100064 389097082 653034569 694917170 240127533 149098722 359822509 914106787 273206732 522767680 389595324 793166351 135540776 33935838 634100061 473310209 926929444 233774778 564422711 731065537 647746045 131122635 639093394 172120269 846137163 814685917 445273855 268334521 520864548 697779492 512771663 68055285 263586378 844281978 287309551 50742791 384628573 284264877 590376340 908050463 247005473 894627674 347719720 258138438 308820186 61372269 491880026 363559724 201217259 633968792 913559901 319497948 633098721 782446310 209798837 547840253 993703811 681054447 596797608 117330687 998123976 800685757 17113682 527276442 499071671 800256826 610850218 256517198 672851127 747933872 402516893 66687642 423233841 87788959 557640624 697413188 198803998 559222149 532269847 574963936 286866909 579654518 236448576 254814875 806649980 357610650 912122169 38671536 669789123 63882447 675501648 258634834 21516165 810480751 611330325 91171300 983997576 122858299 471080977 577241334 724952196 616950604 33620602 714695974 954966457 580355043 364533467 208138438 411617172 668294222 90877623 459595594 46518377 474603362 366313315 894224172 864272594 842125771 786601037 836779985 167027835 337063049 230879452 467571580 510208294 799103873 141122953 224667737 615381097 99976159 366256424 154567946 593974562 290962740 487439669 772025135 350114423 559654395 22417048 910359201 526732510 866990336 522992509 433120589 635072935 700054003 221691490 73417299 500353156 26848900 80828547 17280373 251917778 541177742 190316486 897031688 787483312 870007966 279461786 696342060 555463704 162755748 300861945 100317743 217640867 913894241 574341204 86013377 977263683 220395359 107819070 118406135 481183238 367852704 409819180 619566427 7976320 359960404 383115183 907146166 672046925 644549829 276533478 751255989 318557890 321877960 226658822 610099058 844376011 815858324 954932163 642512006 50651976 164786040 384434510 35568553 311274988 680189126 74557491 139536908 944411434 450588221 375206519 537950050 763419721 12725973 275921209 172797487 877489914 513298474 19382903 759858747 266664479 565231080 704412439 664549875 305690316 885707050 424157759 710316363 623411581 755173247 775532106 18172523 941898292 207454167 317829299 848453527 561770728 608879416 751636796 503734276 304219523 543782859 662486681 78204601 523367892 810660812 604683192 774148111 780631730 143742223 452502140 361223993 648600741 663441818 230656392 999682542 687122779 726430689 717687120 51279974 263293468 781655536 396953468 980728967 991507977 406313119 845671480 11194704 348577302 828629521 5171223 482275566 600627205 305959696 341827162 47847433 764409282 478391901 366575652 847135880 654647289 539532172 655204235 979433815 738087910 934103978 790302426 359114420 234083128 156635299 719340122 537659113 743669065 525941347 599258091 977928637 341560115 395882925 257113092 820330087 639346980 774860699 765504308 709823793 786605880 243809527 40356720 959672557 639586313 68737319 179825122 441147198 674851535 413753727 230689070 312577465 990304884 837964811 619664304 727959530 274873752 75799682 279229388 292391643 639278655 812901023 576604447 950649482 112588873 965181633 446190004 700052295 263325106 222901920 187272302 700077480 866003050 150163616 277182970 664444978 558330276 643422385 751889638 37205676 361815228 542290114 703236946 903345700 567708500 106587207 754861682 212152228 338406084 86603173 912068654 23610807 142561185 247348211 412501450 744915230 851784261 733485960 234292971 414956966 118449055 416345637 91857194 724515242 79622024 362482651 169013700 904031006 671647321 358052755 862272976 233214659 233519000 236512130 547991639 780197775 326880939 28317073 212931218 160978712 190347630 682043252 737750911 875820382 441990053 602895208 44158312 249797566 91970280 449678145 580053011 587306295 504062156 55191282 600515397 387475951 47011369 20073554 470290685 693899568 287758033 367999952 85331787 254195641 700804288 605530701 96112158 460203520 179349570 190797787 138382763 743369463 33135501 50627733 331372904 393824101 80081994 306155190 837704911 755441213 368739902 982960455 353163163 429262712 52417576 566870315 767412504 153464491 62629916 472642336 349996343 829703277 922899395 377314704 575855801 388606810 389685349 454230169 268274408 685151197 799036118 584331431 699937108 562021507 225773840 55446159 366318537 56918388 4083113 596086190 424057762 369785963 273613019 348194548 813213024 370314631 333676627 779326314 392637962 442380124 525592337 846417258 513025886 294992211 123719735 348082815 626713337 619758423 846481014 719158142 750222836 141193858 347203501 562247248 71263625 79179259 792397379 328316768 759554676 934209967 426418031 104852140 342536954 544448581 912020609 776118057 475847147 392323140 777188253 784778585 393892441 361732435 446635277 112341893 449540297 806805961 886993690 341287926 648828475 620444680 676305676 79047374 935948581 912586179 119842573 125857809 599177023 894074497 284351433 828145825 783301283 536603871 970558217 864262541 163640267 668550459 674957735 293841881 317708830 960233264 294803443 986715333 356195167 135395892 410887093 732787088 564149489 701849543 360630575 207639628 43885007 458551054 612724072 328986764 551898385 878275201 471207118 961149930 76054168 311205191 303470719 973950998 924115578 191698436 785353328 36269745 231513817 900389934 771371850 654707420 8577728 426622094 918052751 32110347 878920557 790649621 943262616 184969178 687054734 959705693 937283929 133380305 951687341 825989019 156885898 36647451 805312096 554155922 865146978 64338997 839965141 153631274 724729142 347649627 375640409 177521654 124979610 513759574 284232175 861229082 535478793 208139808 767379646 677472389 415877241 297525945 167235304 540765584 397688890 753291014 602311320 616028971 167690722 172052128 394792965 159733543 575104660 109873130 502125788 636721097 185268675 69903155 675503931 327699280 117455217 188122853 817670748 270203836 912109862 969566525 84303744 945239432 837263590 765750684 128599842 253552754 111253045 533006503 949230915 904125695 735743268 594217249 914731479 52103139 759595941 409389 419051894 859302800 75009028 459019522 292375755 62084546 255412855 609460378 274120672 181006316 146653478 504069028 719805627 466450714 250388644 228005410 536175502 333812435 956428449 959525111 702995238 586461209 446699013 390090112 22243344 987284452 239985035 124259911 670256132 753690758 106760421 921048629 925232294 529944196 102417956 71163385 899307886 524245941 257845589 739522285 37258214 236676600 439539696 889632653 154273732 620889272 388297448 936683724 196134345 390228469 343446442 886715257 55149820 277166718 405281984 580529552 983545355 825125730 201605625 278315857 104216365 427717089 270744348 185064002 927918641 672964878 425384532 849846495 223351222 63918514 262459550 437535865 703659491 571232073 762152434 136689598 784477862 189992065 879459477 211621137 37421125 674083186 902347519 417948236 217336658 7919761 764128154 601964384 711906596 385081111 51650636 23937270 409315089 499267224 309088536 618383156 956738213 511240633 485435757 266508072 767458340 999357563 973654785 647962101 18957283 693774248 475089618 347966422 722985891 132742508 640196545 542422811 841171864 855995596 522658398 153101689 180535359 416124314 630479021 714570915 925694261 353301438 189317485 590539568 206366400 172443878 459466113 14205364 371629187 882879559 908630922 169781221 342827077 274872942 740343949 772050444 913192820 46547643 163760038 638380005 469371659 721421152 765859229 225103964 423207451 571044114 853587132 362116255 856996887 988143463 817496338 775352793 686943401 367690996 566858295 684977418 317771774 431375549 574118358 426776813 113073340 821656806 485582375 642231718 415975468 293854370 807431412 332306845 98651683 783988854 602200590 486054068 319541706 584415345 647904671 330568602 51810609 193993192 750590652 713346430 662439191 308304582 912722000 782187432 407115368 654573869 945006257 632177399 329389500 585562807 749439481 117594029 485957981 78493863 593893211 163485773 712224982 622251178 429775634 678197675 775709507 356032101 477002134 430262253 493224882 147126800 205443021 134672429 568571492 963595632 508088231 422655612 538365693 255889733 44780386 582934505 149896437 842835826 694342619 34146066 423255029 458838814 420415618 571768567 400180896 933680090 752771883 862910855 9101568 361441335 274998397 199705531 27729260 479678668 941441647 261316631 866012875 251573579 285522111 590341933 709206639 600787299 411805887 300082264 116096395 785691253 968368574 900501198 303832750 869802666 705401820 881852885 314289137 29874623 193798126 959878500 867860466 886087110 425345667 636696802 148267665 827558031 552244543 267570265 362172293 148037297 574898216 758599230 417654502 29438953 225770664 573943694 804774820 357006102 576850757 544039463 465010470 398659461 203919368 438044158 95033076 400320314 872131673 592340386 798479187 150866625 233213593 912619509 178938112 367866593 639052206 918983249 6249878 321929631 469765441 830083262 91024675 921566360 786581917 1657924 21959694 692019168 414348188 204360863 980869178 605584301 777662502 748104450 459841685 307743136 501150718 322108037 18283716 569845943 784825559 919890556 47377288 572052499 219435167 560568292 710803601 813355758 944299393 805877831 591086523 483670975 422800716 195226740 120430466 230443754 997819146 492504397 291264338 471923207 308878244 802232628 550573018 261678110 85194744 516354769 555332861 268282596 191726089 492631732 749485214 508195432 89292320 880270982 623138388 531689443 652238507 789419217 963560723 953204940 407894058 766731087 461559470 398185048 844837389 272983040 381515630 608526052 142767029 830503192 594481138 154679634 712985339 912736248 220575651 65336716 930118510 57507128 779579583 808853917 191592883 998705552 345206257 644241974 967947975 105723392 505247235 711800750 29368959 683998997 779807036 959427211 524558077 577282684 966970171 820881405 638662646 393908883 219575824 965689030 975335742 950543489 547956600 509236353 7707292 414504556 916914979 649938202 911836917 605159138 998000331 900123594 761860971 396811559 600971945 388946333 318033361 253443267 115229860 396695343 423971624 378659188 528263999 251878256 823368049 143470204 979278571 898688558 4014315 900209360 419972471 358875573 695306656 834003977 523117057 471024938 18122523 845706134 994143418 687507512 991535434 195700965 426876262 876773648 395685284 803513228 531759672 255528903 595634993 100468850 829943366 134696096 272864678 827643294 26163743 150885132 891645978 2243310 23146939 948358832 758837236 696327171 631322662 243111741 113367153 147200792 594386880 294132483 67444511 206365934 359592995 269991724 573634378 667689233 930436214 615942800 957197097 650866573 935177250 117200597 499905416 591429 261872673 378491971 674932227 333466126 958746629 601359745 532463828 732624418 258034327 491867049 404390144 890880894 737910384 612646730 994336166 430593185 702920550 679157685 83332565 727271659 66740205 125536945 797359791 320788992 742421503 453278762 58747461 987235391 980748614 362541097 57939023 483546843 826852259 966393329 189635221 155498927 331789776 453920805 623570408 167197264 669688207 730767794 604297087 237821670 604149880 947976512 713131383 645387462 78764322 425362370 81416151 845885578 36046996 285401842 746308134 358678894 380975260 307489729 814669196 411384245 351706876 776492147 77108590 679639938 924087501 994290939 29263168 789817882 789583201 576429191 783581315 912838382 813054484 156730199 723564631 830600219 126471141 533729286 197687411 580997029 355291242 528443216 304358935 693718317 165724963 534927774 431716330 734508874 943911353 885661752 138540532 175334199 941859684 180359735 430717629 646673639 452004118 673152903 731320520 112571639 546936245 541598414 408003064 828297561 868494163 920119847 566233259 476396232 161961113 487824805 426213996 672869724 913770824 27774132 756514123 367149712 78408031 996058606 740211241 339700613 267114883 850127129 593420116 795413118 48462419 842929676 610874655 902498116 228697989 244711124 305156061 192617908 153702128 555974899 138765063 472804315 71780722 740643072 192956107 392685300 293087956 948046071 769529838 635322908 614627887 827859667 370705164 743704932 662676865 343984425 586464287 568246314 181229848 511655043 611739429 3501393 859532992 455783183 492527418 105026210 418377880 275673876 827913940 932924571 756305933 355099387 232917912 867237114 96841198 656085793 246070069 940255272 319291299 643893880 278786541 133757286 135821703 868275442 899468437 333694383 324874367 480940914 229017426 855952192 390623537 828957591 31730500 58812303 249110327 645014588 528026369 677902038 429085824 160309393 751385707 805296029 828800490 59193791 891951643 575733240 208048771 442669515 751948093 348294764 230924461 928335914 109427623 321553853 802352632 888756963 475388163 979173073 959151904 390533992 581437501 475427292 52855787 647289996 957973839 971395249 471161604 987052763 858609362 299222868 282233436 960113419 307263301 675751345 401873106 983361582 421055385 227832291 979915130 52567559 616499875 895422778 698461901 742274150 104461337 75692340 678338462 834418772 431883222 367274419 58113545 437657439 406768056 377231630 300122352 679345773 342534162 959337966 536891951 50901049 174897555 629068515 400505974 819528598 190414736 259875503 188208297 979497745 826478389 338576076 551334010 871940656 711123524 649227365 964385962 117680026 509885164 699418713 70850268 666474733 835849866 176574962 865282149 835935295 799096027 828321337 957057037 636920671 591515281 625295711 404052094 105109415 43457788 447372236 724916043 272233980 472373288 959507270 909366670 603930429 925490002 398742 920071697 157495520 535272942 626912209 214074084 604137463 338877637 622897702 252456427 908203084 785388133 336004812 302715645 707909545 286109339 668974072 583761914 217840820 834514616 920027352 290788548 256860847 832122140 490530790 355439407 280211311 553713920 74564186 426283269 176684550 607614569 260454427 561709968 264134166 578320210 646563173 244659887 727932778 64521340 319560577 22558915 672723030 860832802 456283328 664011634 256742321 219819608 167387095 20858501 457900950 385908815 742045127 517411433 173268412 320382935 134770446 562111074 467296063 440627751 88321105 583951314 486644566 187693867 104047826 454286536 86066333 223743534 733414649 576911127 568788171 105890196 436512587 478616530 30191822 487313296 815902245 579470764 783927673 654009978 248009080 922168854 294498394 542720248 105081531 917952909 296948342 109328677 299534500 301100131 233720260 128668003 501308912 379044239 111401638 147029655 225258756 398361389 845605385 374908142 546766510 777108242 251176084 400301810 966130326 534408745 427330165 572749503 296611828 689999601 743247660 526085423 853592275 596354644 901298145 126502875 326572802 392687575 815495033 111010590 611418772 896319159 629683798 94416283 486593568 686873705 487825025 732852850 675550804 958474578 581408132 535261526 835332101 355295943 997575571 518433978 354195481 16980538 891618882 134192429 87849470 346025757 243151566 515571666 182896398 242516832 681811664 167163961 368001007 292199952 113452899 933672223 796071990 862439182 580901613 834467189 374531936 203106798 399106613 945520951 24446396 703976450 629444138 586714250 779946520 52574915 786671440 56845869 590561064 636745026 127749514 262699362 572572445 144009029 614979740 102473121 412802113 19699342 196987176 33626326 208400292 931192151 584603265 811293280 456612974 822437538 78874599 211341056 288875590 817059054 928769654 501725082 843711000 668381628 435755297 869887666 652772822 521975604 26115267 637541124 865627891 462104109 662853207 848659118 63620923 978577256 239451589 723630407 242686794 841457238 318106961 45215443 405077428 939504087 138936108 123323080 352789731 368068649 469099968 292510106 707490258 352161150 156135599 246490768 590351859 135515071 727877658 493703039 532749322 122286769 671506995 637066375 488725028 71418035 118582321 817928835 467967970 152036229 645563018 402947358 507058722 176446545 302671130 858530165 210071708 69008742 88178737 388998376 429276249 162717502 284031068 72441386 454578453 920532501 149747732 799824344 724455202 902203550 801199901 70381587 291529101 894286047 242696237 395818400 183716671 288822360 54295442 920180776 891683119 597000406 960864576 364520843 251507456 894995490 254208261 651543464 18399416 371511282 718235148 981589781 480093686 463384630 924992310 614614760 719313464 504263698 778898515 579602359 798222060 531631569 147643277 349196929 869147902 769509241 943889476 651743606 918482317 81946894 921357087 305301688 678670043 541864921 118061516 39145876 437233340 686578966 320407883 415793953 809792552 864849789 505893000 957231955 88519776 203162034 60727062 735356977 465139638 21734916 84754055 426643808 945076983 224806842 420851730 407779595 629176832 271804302 703275855 937371093 720115458 132418681 350345116 57645179 605186864 991976494 974049789 276040748 874277028 497507135 525282514 922615015 88156823 35475373 822566509 397450392 292839729 987537405 31290174 75070587 79962221 683408932 48768791 680966522 392864339 422443991 151428113 324026780 384021273 834052375 297718973 496906681 312244323 222771523 602484160 579959959 619772372 124829146 513786103 25433242 776810294 266183502 916001638 381589919 419211402 41984594 870940174 505449343 747301991 965868857 400533524 849430400 567606413 233918383 59837829 739519222 598134945 172907276 3301793 392819254 482757037 875876041 584741048 222614107 864475331 433031489 457208431 104332446 866531033 954664079 204203990 329366936 167671110 454203886 257044382 622375049 782314128 922553923 546927135 251554510 912095107 475609802 399631824 502647114 461438265 174085196 657738995 265614445 374351072 662183602 214020049 123138450 467451106 442147903 386662785 960446452 208138098 452625377 361760636 877333137 914999605 700060227 813493119 796132543 845593250 118591808 505169492 444828679 322956203 337781039 193913944 251026619 469136747 110201300 980048676 75239706 394892158 221501136 330723473 218131042 181271797 919559397 402912860 446946511 521889859 179686781 345076670 334646757 281773282 396044900 900686378 552039916 71975802 411279069 319320191 985410960 146088818 991980890 808714455 429028518 563594617 630201901 702519513 888119199 133415662 522974487 64304927 211885848 952137205 664472461 114314150 33494131 882677106 512370495 616251463 919943027 473926246 73781531 273601589 268079344 439230822 451487419 934530242 227115078 365726341 966929914 709263095 429921223 601315079 69642751 846938384 379672528 206640808 957077731 625324993 440108885 732624800 290600537 935943431 30444568 298936660 491450435 911405411 74629211 292025482 129359071 130517217 861676964 93786953 322329447 459948766 187500126 634133030 490381750 224163813 170858533 408170896 83274796 733694512 961229457 256358760 614074235 375536794 950088152 793711730 847590767 385084168 469213450 705163243 820697987 223280593 980614265 375017664 801914148 577721424 224306133 384481633 43958416 757954414 801432159 428118041 751412585 834349479 487862746 318479829 431387 530251205 861465785 827334122 150926357 278251620 316284464 269289602 916806855 906785694 941688873 158043723 506524925 464726200 451910163 348298228 686290958 947260612 523471917 328214691 239511814 982188098 821774911 17277380 939597811 533323976 490260339 245790797 188452674 754967622 239266125 464099838 777459889 179717370 699512917 455448449 984436004 971948554 203779773 826910404 472327115 49102229 258190046 540103450 864268661 43975890 29201081 717011515 370856622 966524095 535694137 565653180 546004717 12188446 993203200 417278012 149886780 54505713 959432400 252874520 799530622 8024241 32576887 152606143 395402738 168297229 482868984 891881071 191792022 534883706 691889097 218083303 316204857 339165662 44834051 416258587 409682302 497923844 442018197 414427468 925014566 691965232 404831404 36227099 437451192 302836265 172932601 719392698 751349884 997601923 125876123 477700559 227692153 626635613 387176719 898491555 49447392 328957401 997321966 420320010 623366219 952193798 430787343 864858578 805010503 791766005 522397595 234474665 850597111 624841387 430382739 729779121 845933314 705428742 767373408 842005363 138109821 191563472 47305855 356185166 604661444 467972934 174441291 169492357 567660166 34115275 850945829 581533613 631050797 772432833 875815908 966865071 341817838 520233218 407185846 618110965 837540420 463108102 982217328 283167120 924076222 87639717 393420834 390647499 979415039 246565668 590499291 730628228 51750188 721752146 597646144 419700060 311819113 811281352 926401128 106941594 532267335 539932338 108281962 870333032 861928105 877202217 781439756 575250696 913620824 247551973 966534577 44820193 636246147 183409289 733293589 583677151 430557809 285779145 982555314 874832808 678605357 3816438 998833694 643772990 627116772 229553183 403800938 303840128 722158765 235644258 269893999 784473788 684199328 249877350 456532491 334266352 541153332 277664309 351124188 929607596 608198609 646466227 988275532 694120004 521824464 397248130 96625483 63066944 137123117 393369888 943470220 487218989 122526180 328563329 541869265 612254642 449207988 833051611 69239977 143074838 936157643 951504842 179797687 736355267 815958546 909432738 412342584 821531626 64558178 821847036 382561541 748006284 377176581 992518942 209125842 803310591 972412347 48259112 725665655 916354355 623583958 989470386 641380527 670755775 642348039 250358401 25833224 48341260 45065470 367543426 667840696 77668997 426237913 852781158 857978106 696048003 267252031 983988379 441930308 253016136 609049644 108127660 367151759 315768334 659063805 449779261 117999331 404443751 570992368 759107568 147772799 205984270 547183655 839352758 752837934 531211036 818388088 678731598 264398230 225009356 147835328 504188693 443177533 967776543 30705220 522143476 517679770 890762671 228465732 852628806 675064017 835634187 782790209 594793035 286115862 142211784 480763845 727220689 868610879 354040496 738615707 53655142 599791646 780417013 516525620 764389413 268285184 91652802 603665936 143640731 155871787 797339670 499385706 574890173 753113424 574231208 715407178 986220831 649974810 191679192 230544264 523470920 568294982 541274229 54420100 191307124 537035380 54290764 274358450 114307533 612507254 371042773 502778635 495949966 135279702 195203232 310018575 330135015 144868219 443843551 962302900 172913752 222546270 841509907 389016427 360795419 172663217 167634851 20171734 146514667 906573574 683153919 477657764 274504195 828140606 830584560 700631548 604304309 934787831 3662708 253833018 353754424 176370133 485213093 159872433 854524691 841713684 380666482 543813884 832691712 599235045 891106888 106091048 484580351 151148418 594650094 896751797 963201171 527371450 273414024 879828512 462931686 952917802 84802584 916107816 159652360 229033816 387614815 323719362 315417070 600709574 403130685 472687385 608223426 874192542 510953668 58889848 707924574 266540391 521371987 563004267 368060049 650054587 499296557 446246297 941190629 255929538 802790560 827326241 145241875 987524769 210349999 859133839 772020086 883714806 122704385 774708442 118593314 985750804 831586657 948453560 490672592 710435663 552794447 68261026 565787007 63925747 409503666 330534989 721304034 142332132 767529366 298922256 238783029 399346413 249647474 515364064 946248765 879249849 187178374 518453888 762660162 510631744 606908919 17241610 284748356 842899337 435826504 29411788 249858362 749239421 37976850 247063716 50079608 749694609 818086539 889088011 3355432 576464159 593881177 730792003 29246671 116223050 339318909 188341518 540211695 397509989 726686484 701173229 15763515 403379751 36507371 84923003 666567286 973373157 664602746 193833711 245711878 554811574 299953429 969053221 910469295 143177650 674945381 965751675 491868710 507858737 890802645 392716590 814046498 164619579 788790505 599697129 104507702 41853042 27190146 409356928 259265573 856944313 686820648 420622736 891290213 698669819 917560269 584099919 34603721 885928707 956220165 583816638 504050357 370843972 989850470 827788485 711399757 864292145 582458880 275167623 931559338 558365717 624916341 988173907 92066663 261595125 76155861 760374445 389600200 416330875 913453127 238703999 316576108 612369656 326813386 557194467 280007533 119378833 14588876 789577774 166121980 307766079 12376701 423616995 396043661 258932932 132994694 641888511 147588567 716177570 160601703 599042602 204128414 754552773 935280232 235374828 63070716 464778734 381434501 10848566 636109518 825062329 675341070 730973306 349502225 53071162 719254386 957573580 811799912 711304656 958932777 302685287 824964948 974974143 915429777 118474369 786678915 513812847 709915409 776729044 313171590 646411563 284893409 776475105 815810330 355761032 134903593 835936988 246413902 258366451 839596719 100360 273838874 719303679 279643666 53109002 205575944 83962079 643268153 680855196 261225688 871991512 85624316 902623717 816781116 224747203 644439277 7322244 825002332 761298788 36225772 850867401 292114148 504423316 257021800 229386275 985222680 31286222 475893052 263784431 32500928 362855647 157962773 546999141 918851849 583466320 153437497 441350300 886574229 957847528 235010642 455190651 169137281 294385492 491376551 608841121 897909599 824553338 77580640 404607831 800384350 623363498 638739376 766091731 936123725 341572542 777789432 599002544 603008451 445552493 213724571 748305564 999034917 533031976 623012726 675912293 489880861 560480818 93005143 983630617 727673719 78168836 181362924 929584620 935475916 764435322 624535271 376855961 549123423 449140756 893986315 630384265 703805730 270604208 887600599 197477232 677521021 991535207 721175182 726554977 724384666 684542000 318542712 787792820 226599087 130619124 357635617 494589412 793556696 574975878 409458359 485011855 220903853 686772783 584705679 195035601 862042476 880510947 702560944 138773267 709646193 758620166 452953212 205629956 463885221 3652160 846935284 435392831 859999780 438532245 72122381 561651101 976189526 243628042 815369450 176990874 710286538 77645401 475490672 913733463 435037820 902557073 38414191 392426519 497048170 893454054 700416739 265390050 203454164 852925856 205052127 910895119 334420141 408559002 391922631 578066399 371513085 580324080 268469991 128374521 919964997 346133522 732366380 657148662 600868077 702090540 37354591 421283592 200212526 498258302 814931937 452169757 364699064 362634565 520463605 85743418 181467275 50794389 883671311 151196315 863340892 847731525 943707940 29485784 115444287 118670393 147156522 288961892 453915149 829008236 844423901 138966655 112426747 939259159 258363166 396376895 282753289 782397184 182454568 841832497 736733007 594881593 150635411 179556878 53163315 945402145 681407931 225307702 82170218 970680365 476774543 464696919 106618065 439445659 834937912 701735162 98767785 812316654 310179259 287636341 842776608 554647279 505460240 854484872 713599316 198696262 65166017 689854381 101067908 463766323 460602107 906953324 402653951 906705448 991546770 415260630 874203166 448659198 5568285 772165193 387755719 172864719 686296291 240646380 367505357 944061001 487425141 366696607 993035266 579385850 836779383 222439100 728157687 26181450 377934092 833014262 21057244 293346633 570159922 321800333 858435527 211568040 33862864 653882813 587843288 107149681 314585394 879269848 180775871 958135870 699426591 766430811 270016336 947669877 922742756 437857661 162028455 277680329 845798632 275223544 899515173 533657089 870141322 96405114 436752499 221269809 835097477 196306413 444014569 51956351 5624866 453865626 975561979 223639671 871605329 841996002 450447166 320730849 778730083 242088761 710306589 897198024 299339813 536056008 599802 693906540 360972720 352580671 75242188 208232521 695737102 147616419 456035622 481183513 265737399 433669305 561239727 798015833 627923008 929767326 303804108 553177308 784047172 24703511 528289306 642174330 849199371 304179776 754235322 271769560 156368448 16355908 896831321 616129552 908918110 455063829 943915965 499192379 25288641 850645809 360495365 522322220 36496777 3285648 432351995 851714850 63520378 607837962 194286598 62885426 11029893 132038861 41093118 621155484 29437689 751372377 280575073 333223928 135300982 969870398 793132213 725038836 128029005 950865957 360676237 262381969 188171865 688861759 833754457 376244128 694237260 128362271 314809424 786958742 519624728 917194399 609308210 430974412 767507792 334637699 957584354 30598287 105590485 169275535 369260710 55527610 649782035 668712043 948946505 675579837 4110090 723060456 971019125 605645180 429815298 101660215 349400252 137946840 569114421 398308764 179451217 849050504 563626985 918938035 181123734 908165044 201630524 230446950 331203495 904685536 32039024 75291557 891252917 205031416 658729033 204273608 430589313 423123442 2972274 523046787 376038325 322411001 985464211 27274846 893156663 179892045 12502159 60041896 844809864 444624880 724530141 758584313 476230134 37291131 57487567 341929638 378378697 16896538 144752432 152896611 971845500 660582956 883890549 48894925 412814783 627246617 811553261 139049699 568688084 916263978 599558153 29831975 120803722 600141332 959057304 562647486 496805776 115084076 307108147 713279997 854576167 664727598 454159308 328109395 662726500 730819237 345403358 36181959 762293270 329833218 460703836 782361172 729737020 166848058 532018347 490478166 450156233 721474296 524260852 637697934 941011062 613450120 61584597 710150109 500340899 423530886 695009325 263130443 847651498 290051604 339354072 42082016 636621242 81616666 256969168 842532067 164963423 123016871 231308775 782228323 909720726 576810457 707704189 186285914 502897469 847645689 660829501 493484000 945140865 676966346 897560059 354316211 213564773 819333979 758397835 53528115 19521496 919928513 977284812 141944404 273209611 332411762 416591812 867602207 540886060 840779326 188301864 214825054 994416072 177435638 366093841 105795402 749696530 77023656 221778505 123030935 776899909 491823239 496564449 559231407 306576835 975226202 107417814 736143519 81546514 33314779 640546222 305376522 35455528 715160532 47277978 555446345 534638079 797679031 76483756 675755322 287608302 62914570 439742488 368234542 554122679 411109112 287318359 705251475 360143276 419671077 815813171 591590645 85259539 501476368 176578869 94859579 23474086 358449163 568729866 35103071 51810689 99440180 580197543 945979311 194663750 957046404 709870001 115212754 435599077 103866807 50247099 633243549 819950127 510128486 374922562 684662030 601185896 450932271 332096158 331815468 253424108 988063277 933089814 217926088 137616351 924756916 453838184 95850439 511777007 648035340 320152875 255545367 132352335 893476099 419965726 184404049 964426857 389410956 65497574 887047516 232983718 586569067 619726241 56274042 339525061 764900315 708986738 6148714 17921537 719590925 249922242 413030566 76807205 733095161 154176564 676388780 450985440 799401140 723144584 282314716 999702530 51999629 706829141 831087892 788805234 305956506 357278728 170935942 877559637 217864836 598444863 727623071 202437440 168334384 191760497 810613170 854346187 299100137 816680542 263381212 508953256 855037109 847015685 390299329 769458563 229441439 882087885 126801920 344546205 985220083 86684731 871460398 511205747 286062993 3620321 70722675 854496712 283669941 58479148 111940321 510461705 392582436 609540095 542671892 541867218 372049587 791679289 723486631 240076623 341263628 964095470 260842078 215691034 866824646 238627970 647978279 757247789 477737118 181722514 283896333 692727802 444849143 44377618 182225992 856944580 624483844 731417609 562164814 700269715 523420443 694423759 601559619 941933089 540642556 701343858 164620996 17221350 407088277 337043593 83780835 970361583 655495897 686042810 811622970 313441174 809329048 447907113 991862937 700800646 102931211 599259128 487700369 510889352 60085086 252501983 334897332 347819271 607861782 590993282 589230813 810957638 999194964 682179772 636312284 176169695 460924668 45601204 815784305 550296119 936846252 257284090 933651853 880029055 427981664 281808989 998227695 193232083 51138742 596765858 772528818 676945062 686865517 882843188 196404298 311518356 688360796 762058686 445488959 859302531 408734031 81011061 901959865 992341614 235000570 887642700 203496391 555052588 615017179 77816619 3380915 695494787 310902368 664338003 53994250 156448681 575782564 639159144 811707737 561158659 118972470 4380155 512239284 573534931 531077518 655361160 8562145 305779314 52191622 210567504 706368582 727909491 122714654 562832873 985726214 814235368 119978293 850431467 995639680 296163308 278504692 700720621 976976789 266516207 999426524 641875489 629001243 735511066 138781845 994651537 868982960 294219957 398766193 962790158 322460714 978997842 962349147 735624905 183218448 222920297 380667334 455659719 404235547 813605260 948541205 360486162 169321107 733841613 505336887 859622834 848097723 718331474 695062986 565278108 444021244 462235870 43375908 976358833 667600536 221028941 510300760 576611386 208625393 513348357 693328927 689103209 305895034 370049607 663565957 271522191 535806232 140566921 122068046 38897846 207748133 949327528 754923966 115076432 215315295 53852186 853777409 813713077 286930272 361732705 282704043 820798533 541305639 270662255 370990623 529284018 447617365 157427148 573639727 676449885 248400648 685625317 907417730 42935960 835037942 999751085 519482122 647668624 692989412 69961306 817262194 244183526 715439817 967820063 760180550 953631754 84090250 836396514 401094972 459032153 744586339 561004277 876053048 87481408 939548783 836514505 992862917 671605492 315024119 647576253 800189576 603826255 397528473 825077045 372192750 212618987 227691897 936649773 641047130 402138853 527736436 844731004 208321715 932160944 107467211 928663409 790824342 74447543 851272967 392869394 470029245 964245717 1200565 545069094 583267512 732271815 127927630 26110193 993061881 316135404 963343595 181444670 123986002 63611842 922240501 410919166 468427883 131735616 895279645 977895173 758951214 790186799 699302288 647620161 562035453 493748100 31655995 809229646 246251721 140851012 441850688 700031064 287481694 471894211 27333564 983715533 945657472 414877489 751311201 574272710 346756978 730887439 62357751 150352970 397301654 74951258 135686252 254866525 915084443 926278848 453058898 365665409 938423093 287878539 546944191 865156203 942313081 854360948 948842141 597064409 198079754 925302937 554568840 366583890 828207638 444814165 928935375 523221723 998574760 609841685 222141507 191315480 325477687 556033765 652616149 100667965 902517090 488710335 28248644 880281542 8124064 487548836 500100695 96563745 406819481 313345162 192150082 503276461 580607052 898479441 103733324 231406773 223403599 292722172 439046091 527239631 985580551 804379798 912255859 384516679 50426035 322075053 177636285 599517581 650773360 959448538 318353207 796038067 461532363 509640396 411675656 982313153 588545947 148447655 860622947 466938029 330602395 12999815 700297049 514409089 265008999 988219631 868508899 429319084 570416106 308724059 693114890 168454856 765782266 459833294 762026223 623203179 507147117 13902663 421722088 201030442 381414824 508533383 913809778 321110245 340487251 73508384 870045443 848705642 168578052 377566608 804219095 389570956 783151667 464542255 937612892 223053905 965693001 266379554 191999662 263724552 268134202 321722867 329975647 71344427 687326282 447227701 599465356 24472503 104037949 831631654 668998910 337462572 363865237 415856247 132363234 612403370 929117438 104058060 682679682 799402634 687074532 405703431 637247492 644199110 289384235 514872348 80840437 47350222 358374220 409273650 898172583 271272437 737014590 445506078 933610024 470609730 499088468 655769147 275189082 156775154 842287909 548810257 630238230 174578413 31161646 386562044 150356022 788022511 752536737 698146580 549286892 566986858 756391314 137591455 802286270 290976959 415683160 181859162 928038771 368569267 124823962 822418336 255313977 29191322 472274851 449841663 736533765 468016080 607583137 852892189 383979457 923861055 876336450 984742055 984001563 589232356 305183878 882735412 913291714 814183583 940125848 14499157 370946984 468038176 317283671 901374394 242602327 127959120 55163186 873053057 915481563 590400379 346135678 384129444 953481723 334127868 203557477 995535104 820131376 896771360 162291277 847825287 852352671 719422201 378948012 37799457 318931703 177423563 520349957 742600490 625527108 209090962 336292769 638747258 621704623 147632018 726741821 876154090 449925385 547329537 758298181 312282921 31643474 83960538 512947251 626436076 436391819 203602424 576723290 932375648 881082714 502706320 938387681 623375800 789355513 14914367 477995079 222910457 400280755 382066480 888615081 535280697 330077865 186783964 87432182 768240229 137712559 422377917 498902187 877836837 371634211 523188950 860685338 585337960 633411457 564921820 786710516 365312590 658599461 418103823 625813557 581474306 131539973 260522357 167716075 244298363 752203161 925679926 849377335 801122332 893932760 383674478 804945726 287762181 688721634 823345837 24501503 59156887 536343191 310456081 820692785 471212618 733469992 994067867 665068917 926780798 252224621 706167539 120436134 57088698 517413218 816072039 580057552 989143539 643406448 263511336 451342335 763651975 651240579 298465406 4832302 705748308 6423376 437059888 504625950 684367583 323256822 239011432 629450179 241564159 231107513 133983383 933477644 73544439 329663998 253313185 850862156 218848137 462271675 328529102 886823207 891740939 41802964 77020709 981579656 702894373 322129961 258909861 581428865 928590676 20622637 103317061 239008934 305029855 271024793 992930738 967924352 310402785 619913637 180932398 366820743 666453379 475674503 153188055 248620375 747151715 98755391 573234671 897096583 808843059 418908467 485676857 973390538 216262355 43502112 915565429 952851583 355771192 186465192 462485314 500019483 849644729 227868140 801815376 781206857 661550086 478334846 326816711 351456313 25773173 853760192 224938219 466508474 426452242 306958072 888604124 615835405 756410739 609996336 133320617 590500484 766795802 484341859 814934266 589634534 429387960 992708360 274541776 258454762 588473515 254516384 647326096 498084525 897531464 491765167 234433465 538791621 597724943 117108036 420483925 912861787 387798422 153155141 369344245 908271691 805931183 801644996 399117863 10667699 680493661 242545056 530760703 593660083 76103411 209475088 912686631 954500052 380656480 817539134 867876569 124119765 585330729 218700496 505448029 827071264 808859093 276463198 835033168 137407251 54840031 667125857 150699752 493404028 987130080 608919873 218273227 798323093 582333654 794521731 391691237 560528619 106095433 547555259 232080044 255342759 413779580 780609167 826431127 212923089 964000188 270188309 304343712 528720764 645824299 370768784 671436452 169814650 629187860 679092289 523120496 372775469 408332458 153567731 894000328 689712008 293593748 390968505 343247676 962377364 461792182 461786310 791870729 64017266 404949985 984334028 277503662 561638486 98512292 627185961 532312246 238401490 389892521 295640504 701818205 768343040 493061408 624621603 499866635 986820723 815870844 183061940 121450799 623336811 142528699 296640031 77817171 655554609 855426085 212007509 688179230 583856922 369893716 876865203 742045424 797874805 596100403 947666735 891915582 980922937 920407766 160126112 785641416 255298315 957456131 842740796 829951373 156487365 636112537 649493007 936338416 373469697 460790527 19647473 739427362 565201291 692302430 734013378 833597553 18713398 281366919 201982484 760358449 131296926 669496054 45186657 482077695 299679679 208228213 533716761 636718902 5545038 452295459 778359317 729562512 18500887 962731796 526341088 955456031 418897624 910631779 61474618 259354194 644733675 189717408 849662703 40921365 329475349 114830906 654568598 268229330 985353039 137572827 91525115 234027834 210216935 72418842 371353991 403589205 493667232 114699489 825881613 683318260 681976539 426549942 117025807 292990031 365777138 465050284 588889043 442665730 529469070 28765968 865512912 75456186 505283989 11664041 752244960 367572076 276441834 923368404 478952533 677590731 520991733 536729665 72656966 184615859 1978540 109743520 693408084 892381139 939316214 855317294 782153851 273448090 705091172 845778646 765232021 810958484 964617878 414084413 109559367 378191824 48449631 281714186 928278970 783748104 671823371 309307002 217441477 108485095 56280251 125549237 8525591 79517574 423240692 301674121 499794421 747693645 487957157 235753965 300105047 418619884 792472683 879155664 525192150 238728781 26760902 215562135 196650394 224276198 159610858 959633495 725033836 357111254 472376393 796813784 677127104 608562554 702397532 31706789 451455257 94795757 62819677 313547520 621034072 72068130 134339466 655626752 347348669 986463098 668288156 424257566 780666159 900853011 889293113 222537743 739819039 173510398 11421662 157656609 881060253 382546237 580121453 912097394 814184281 932481437 623841401 153556451 222628874 852606637 353004598 592873978 32084844 437821343 657567793 773111129 328234040 491987062 606184333 683307931 30413888 666483036 85031936 448336881 867507498 210825668 828038048 729786375 467409478 146356536 670952262 323179314 216211236 615591199 154819403 189704212 857405519 157424694 109434623 254842551 904134851 768104750 481041485 214950852 518841792 866012624 589752720 574498877 440595894 394876092 792215733 599939988 548952182 924138259 156787989 680848145 94089968 444714398 191218322 295801392 636001063 813033765 226352473 869561122 902264762 480907762 882913743 100318224 223110343 42217176 47221124 478300093 955204514 221585245 389000923 344850256 442325924 880379503 889555730 641198507 430670650 971658928 255818688 414637176 282312556 449710249 675558544 406160548 557918946 748377960 848424401 493285524 230693679 862563125 12695735 848043130 732075011 900678893 686027813 921030433 876007179 40581134 177927854 587355845 892442995 217361446 637481104 335156379 680433349 603462729 54405669 961972439 19177087 265588907 6434214 725883135 323240672 54917965 456148650 579906902 537434422 2054661 149460047 649494593 836861387 286498451 516940884 950778362 94609711 614278270 295471876 371949226 22743211 92811929 210173838 873016722 603277866 720469453 28130791 146729762 353951670 173633345 327233645 531094600 475425248 816548723 606407165 494663499 162688460 824446629 689457180 148346792 680837009 636253358 924376183 342595341 863122031 917284515 756486080 7873540 215712432 720138195 974258577 842229419 869617622 390754527 302056506 857644516 803968115 563534502 714902849 207557353 233265086 554103018 311573925 507380521 434456961 948178229 590558147 679836958 408288816 618252707 840221254 771145495 899302493 105329753 151751932 175616411 22192034 264995853 319515056 139430652 167445790 275836591 370320677 732222590 425307641 456773599 831653423 43298453 153034268 434307356 63124457 765144258 422739358 644862848 725548352 941604601 427429542 582261787 171128515 593524876 887785470 280086392 115449541 126773013 513147111 399642611 219995788 145434374 339978883 191983305 605996510 861868908 550723016 12375909 567347027 263359253 727204466 60988532 760863705 137087947 167127992 872582880 534955515 364157719 352481175 406131194 674284977 913377682 332883776 940055539 936824984 788260897 752816163 788076668 575324114 14674159 431634194 786358902 61051804 827832557 165472575 303129374 456025002 642212945 620526843 559378537 832433129 758310441 359830003 713346934 327290097 378958409 18305750 186494530 292266355 770593059 916156641 617742791 238445505 53320802 688170079 227431782 542941983 584224050 407147082 442704391 488332288 176738145 578550361 301787056 326624596 374672433 424499608 647712007 492699648 585493762 748037375 110643680 457124270 273265546 70494070 545091975 51837104 975329396 495085243 776479250 763658133 964713494 207623048 664369416 185197699 350612763 847074919 998429466 263465244 573768930 520890812 880144320 958485455 48150700 81926883 948894898 635963827 922528696 180634930 269825794 79966945 532517212 78088109 891694259 335795755 600687873 494698316 79689310 953933077 582893845 677064092 499715631 491354853 519812057 777982443 139700674 64467062 781872572 545964566 941292805 615681077 453870348 235265610 593376047 285891067 670159162 897138322 735906201 957462912 956067425 419440367 472303254 768295409 892101830 596910286 162689018 522113744 972614113 854789382 341347888 670245820 579361555 434109059 197820426 95498382 926124079 204901894 457603823 728164910 368959916 522963971 175725875 913815896 283325367 670171132 24718264 188950423 349779985 896306187 274662481 564378412 994175247 942207302 141202842 293445248 959939566 296806585 104069165 449425850 794440087 987444843 300061596 517139114 17508002 315936488 289315752 205860353 927579336 963504131 875487578 600412468 258026310 321041729 603135796 536207506 456824452 786670581 853093392 75144203 909452378 354321176 177763393 325422643 730467251 566966086 704915303 290619381 348122944 241045580 781060031 959160825 411005311 984044641 895280119 626457194 590890033 424605174 174681202 458863949 992383868 372378140 502025276 444857574 435745818 29853917 566330399 883668176 391150548 779655931 525462998 98972209 274903884 743895770 323356653 37283117 151872894 385504038 378434012 17180259 919911490 408912079 195224109 352600329 472932001 457217439 591679236 491776314 833312918 782336646 991349684 322414702 865600589 903676068 708857749 88763968 639042150 777389050 932161667 221788648 455866747 672778743 212541791 389022076 966493512 705802783 908011640 640163273 798104077 372568954 903187259 255215419 838231101 569766668 320400561 755408374 468899251 417679393 241616760 991803978 690873785 109416460 788455023 843265208 198763336 499191689 341309023 845087684 334467665 969961285 544253872 238198191 501490189 240591479 665584805 936953658 620892197 752015306 157837035 360050382 964600716 281646539 781056543 815266304 672223616 837872020 617202453 932805909 132194209 966016068 385169096 550076930 553942997 443961832 612171195 606352319 206106044 237987594 4961190 23967741 308039992 388632431 539175552 26449399 5758090 868218914 270810137 62648437 453342843 663171579 121279842 984609004 989112854 736687268 830889571 214116792 109552554 767054191 382771155 17211934 337704015 829094329 500369968 645063533 823743738 158124331 314797770 932397793 895533829 196622354 605391907 575011597 553102735 799993194 138158809 950965689 906363556 368369611 134446222 71515889 800170188 929070098 510938423 400379239 261869529 213831973 730817646 305429206 684198917 193083773 768867889 856692295 773220711 523564916 325161690 462583259 948658136 890286310 649861263 347787724 387052074 39735527 494201054 4801125 559511167 644397273 471799047 152405168 994422115 680990490 662710717 236493834 805294232 881692119 278045697 333533809 633098945 965579769 234079075 418016924 763929623 594257324 537959503 379035596 67382952 132325566 58402531 317851872 638370502 941138687 932798435 849874929 56252872 705894498 286670984 354694958 850333924 671332671 240943257 202419866 455817607 534198180 631871067 253763826 555708192 723176987 38033430 313148146 154999025 741142275 251475267 77473683 635516781 762607929 381271514 57115552 937978782 894761250 106214955 448146072 854526017 570317382 300084169 803970871 263538290 1518821 795129431 449873245 993669758 343128264 127881499 314125229 971318802 563474275 333952996 123418414 304435292 521436017 288206889 442769652 916721150 190038147 776625534 746674695 417168345 24367067 791012171 262167022 821126082 717690473 753543249 56000468 678261166 193073872 251451369 797052094 556430683 819247584 278840291 362743775 682288605 745588732 832935067 640191051 852308259 384477998 467072291 788725038 86883980 25678629 641565879 304819450 773934659 24165337 974983382 994341666 945184075 820342226 207780103 887993672 744002829 58676893 418599867 897547744 668277961 451412724 976918426 216506657 713449444 531229285 430976153 152515679 996694038 769784597 294046341 996472872 797941957 784348264 181304329 242727410 484013095 249206063 704392733 364925561 8094498 561978955 882350399 512253520 495659966 786636487 229071277 934404693 143453751 365170263 817134708 457986119 490792966 650368873 406570390 402363049 661380692 95791825 73636324 812107578 499113353 84927971 667307510 149605801 553731683 41945116 154821233 135286968 876132503 32931778 65122360 717643944 59498781 839606506 211793868 824026152 25764338 279869543 965983423 352231873 917198107 595611783 581230698 832669863 295821069 112463974 37083042 258060489 960059451 332311963 635756324 838955329 126587984 145471677 251905890 636470971 586880696 905842186 21915069 144996287 285719271 810788716 731093544 652479675 652164908 957625578 506584199 288436262 193358612 987045357 159537807 169156727 528159516 652679545 423204935 434616330 426700903 883440672 755440661 924296347 649496125 194297681 286389290 442077938 157208869 679946374 105501493 725053057 695653441 531925570 704087907 70176465 978218987 789111791 678527178 768978242 754596370 453520269 269445151 735540637 361794851 361434287 585538479 695575737 824925915 556722925 917454583 926156679 554127001 213946550 731349656 918264354 920055192 962156681 88364232 454235339 167876689 310222775 705995856 106229004 210306784 104536408 834788274 7308726 345289963 759637055 944449374 891811074 267058151 763152730 491245638 706807247 709647480 212457894 722756291 38170134 521381120 381059730 534017740 29685543 135721934 805757200 751368418 788265250 673189052 338360868 950832118 375804622 102014911 113902991 153342941 470489545 473665823 960195301 999183745 883396040 782228608 449688354 108743334 13908125 558495315 669494030 571647198 751552052 147421709 455794319 786969069 234403734 159685701 782324667 336912067 602725585 552242963 609469222 619628970 898431014 188951660 196393262 219577852 920885193 681755851 955597222 235187625 263601037 948200597 969609639 545658278 85547762 287134264 628921036 46921299 631628815 126240853 360617214 956282502 723807322 500606184 655869306 482756788 546452809 523253259 342873666 884105784 728020198 392534579 737838778 506805795 366203270 746556485 659425516 634623272 591958265 360737971 273603024 740002484 867536389 153203762 17999819 297741684 625067120 52874370 934091270 322793105 446705609 65309306 382547613 746232330 927388029 715754104 457946739 112516921 832148373 615063362 188498268 473310107 432297375 435226573 349663765 459961774 35441393 287775391 707063362 154782601 308845413 603815957 652539716 484263252 538962440 828597426 593215018 617164868 41629341 243321765 845330629 453462232 989996809 211790497 356527201 841016235 615052840 840457239 323067201 767854616 56135492 218549231 402933708 50622381 592380710 300002848 202846002 150322945 607700984 999363888 532637324 875638051 232032519 193145379 114064783 508984995 835122274 99013734 927317001 376498036 799452041 980557007 281053614 811442493 940251255 581546767 442886961 219510575 683700827 882750663 508074524 429903925 744223193 921122426 727280434 904828623 363468406 175794760 20353979 290040403 841712198 887576132 12912845 442645511 253522713 345698628 712849572 353110445 53235167 38830469 376585414 56857913 78900941 200931130 173353557 220105537 427357586 350239624 265380308 555768835 818804290 152963918 361190717 635188929 171587703 729507360 187993755 711735753 1789781 216371926 354601132 312026097 844315967 268941656 318055643 343129020 334211613 575068929 790095507 269121927 671877527 489107248 248979555 255830706 308857241 797438549 584279882 346036384 570883846 71420207 599254724 328420673 469745907 234819586 774207913 266656956 795503956 302028592 188922484 664597066 207600110 61576343 593354335 208739772 119137890 444989518 687238615 688841150 719143605 587988721 307139447 496148986 296491527 12569937 309496821 556959971 809311125 917653406 369453341 541638086 359862911 755908867 180363894 250481125 530031696 163530912 887231254 585656440 105730808 457472325 239628245 947284974 596659574 829684997 761346166 670504660 962393123 330355663 6147088 457531329 566356696 731636106 233832847 681061084 516787534 995880707 961469933 361150415 397148516 981924077 157735187 104465049 745170378 494396675 341658429 175899349 401995456 200772211 351314234 725562034 82754678 661639769 677590368 542851555 832435838 118028840 914699400 179648521 152430196 651230203 717461023 527120386 804700458 994385369 529855657 722304148 519934502 566646651 529319577 238978430 949558746 637790168 977333786 9177250 529976507 141985313 583528765 761045112 481478638 927006271 157550617 620890883 350712885 225793519 361875580 800019825 566194558 210650921 832445620 251569996 337584107 111117486 558715931 262849162 830068057 269857156 810866031 261827782 571749084 451643235 350830391 131369458 484549604 770823796 11439831 976841526 843580796 675908254 357145166 348722803 777458281 440138682 594090346 557164858 957910815 503880610 322054819 721701134 809214874 254451962 360505600 677400507 941275211 883299731 616509543 304696943 638962090 534509410 238125600 813479596 259775473 958191396 68981620 100321155 655727259 498385435 729498438 759019690 835214577 407134043 974466015 422315763 369079040 221447226 682565640 555190245 544126167 621651204 113661477 913299403 270125069 499943372 165287999 396022416 599466304 519096881 691768868 648697267 736621065 869270768 147240604 98294799 770987930 265734878 867930378 488936066 899660790 528412566 955719020 457722671 555593694 311995331 679175151 974744428 767925008 143136539 500341377 957118328 23980411 417812045 420547309 830106181 183613217 138536290 365018628 136034816 70630170 805221310 846780876 504623727 357927674 866314910 288566231 849701064 162698599 439257864 42673470 899715091 290538962 211011392 988400952 769610187 957261693 480408456 235057298 394261260 269976544 424914654 211916377 45195152 638380159 587483645 704896897 278822699 417335058 168294917 209359191 759114799 364482181 846984009 370981072 867337662 833715101 789404948 514081459 138659140 44595275 103044361 780492790 462530977 183994631 698603815 974209197 924456738 386087143 488580313 804578042 853981881 952754108 883028756 847217445 655474536 50912858 100400871 823700589 324615456 370790183 661151734 802164350 867021847 525854802 649923701 334809425 771279614 64414679 174615039 285768556 479768737 712746854 635997209 889919407 626909913 855319191 144637933 306836760 527731274 377261779 590277760 58714298 847128442 273727936 438485318 679866276 166637581 172770583 594557663 422592744 863152315 636397668 189760221 11393189 308379631 190817749 318316293 464508655 399462265 788792327 877789187 787161749 896975033 218008591 944515119 672193306 908818345 899351007 808431356 351976457 420791006 974798142 363243999 690071826 740793774 492026885 851305226 697078602 878406909 271871225 484278179 587759800 209754736 867566965 989799047 188037413 682485156 646336691 181927751 383859275 691549115 304196665 366316828 208403641 208425194 799530796 765233291 198665263 896674555 247102595 917524201 701623544 783653792 46686687 125398050 124375404 54776875 190482754 90013525 454349238 220454700 24028440 656902233 179351434 430894335 264339992 502305975 588848286 247629752 661358297 938227543 196380036 745130386 299887809 238164200 530007376 751167233 507664447 692570864 967300533 342100229 289631706 372638408 462173807 608496290 282040937 480509513 296557271 78720421 250077876 905890278 996199753 656229032 598500104 528893207 403644303 911294813 933753257 792851788 155728013 17940575 484767543 514784743 880430726 277322945 770891126 79326764 684806623 334049242 613461946 636747797 593589335 323350000 321785908 427372477 704811572 157214735 77693048 325382065 591119912 4590662 867443835 228564552 892448654 81841959 963267776 62984029 798740573 958224662 750662773 768488751 634432145 493157199 62356418 238472206 777611600 210906303 565678362 756944643 597074643 951250093 110333104 198606101 580484058 67611156 448219993 751847427 425374607 307189261 42114662 486407055 320551051 630647717 199039012 728582549 575142259 736536124 406253556 764176664 285141955 474755525 63765210 883857376 714459231 388806190 967720637 692544546 675426133 38256815 213916628 380410798 418067251 134527194 404252197 308190881 766441461 130690990 113625476 355888485 442430919 621149970 340099391 152609429 33340677 736732901 744285068 621957616 756718012 942359216 568827333 210284213 390191566 624715719 260030184 630519808 254509155 639834695 257428758 86220150 919001030 686595958 912701293 89787967 729201220 285905067 732419771 449293686 158005035 28383958 903176570 587602189 567707018 226902255 251013707 878468563 462458853 135112842 468004458 226608702 87237766 34305157 335434770 971741535 920224252 932945704 464396678 492001448 887758187 75949569 550603307 929060490 87079983 476033324 208045600 726642599 236416463 925164081 712605389 408656519 282897822 487524716 358145061 751561665 215208683 141831403 748750426 791916265 653135830 408438217 390853428 727189329 905890901 961089801 994366336 95794051 795315703 52749460 763926479 253282536 953329045 100589508 138989423 387233552 182535437 66572245 99318785 461529358 11971686 434493882 925565981 201596731 907168803 22420833 887123260 124662133 277779889 160618464 887423625 902084920 230754275 800850288 655459551 375144905 911735719 819307609 366275373 84266364 953182048 963388338 293773227 592381457 600869188 185831532 691616091 239325043 645551679 773785602 530314051 377336674 881387765 12298731 998706502 857888651 392192611 524722946 242969644 669024913 572987055 728977044 214726986 669679246 381434655 427722403 238382434 501119411 339436356 74096997 821167478 28444852 777914043 925916766 885663238 330928456 364953152 352898511 573771207 13644068 489840307 169127936 799450067 226827188 318621331 55216416 227969279 513490307 851608424 268867990 58356574 651956552 746937085 912730029 524157183 62879610 792546996 670307237 172967116 925035024 735849718 743744940 260307980 812505683 619537995 833006782 375079394 327837385 440042712 16531412 445011260 94346555 487395454 678964827 792757117 304238570 832140346 128005490 295819066 965018056 100528052 46603726 324048009 525297052 915959015 793953635 721972610 165666608 93166697 251752321 307588890 807845978 532353376 685329958 738012406 666397137 171413538 354000338 51630354 137121872 461884313 958210461 323365025 293994917 502511469 854951506 211601769 713067818 341580566 426278695 444512973 988317635 744637389 776279709 300418531 199883003 263238221 198646092 961766318 551834289 431913805 783924278 718415864 323300923 763342960 968380594 494094941 753629622 708311954 249898842 140867957 588115602 208920348 414070059 816838693 538427917 938800789 195283831 256148096 343194095 886601347 260257935 808083537 17550524 165289947 299059574 808924762 329745352 914612237 49445377 836974909 437492869 666636799 452529988 556179138 610789585 283806253 843275247 809217276 957467583 824574599 136424688 884213825 85078738 636316524 673274062 811866553 889000885 640357795 980107274 685396539 311145493 190476679 640509223 939972268 122599942 458516644 648221184 485891521 930902574 166813376 561260281 530802688 86855616 184960531 628132417 165822036 79616093 818396278 116495519 183335385 635667556 63275847 233994525 546473912 66306955 17569443 983355605 722481549 407477357 41008020 241114707 476051578 17967366 600250151 176717792 962389510 987424940 632025682 214290107 208604810 280208933 284349538 719378756 8789900 741498035 325117793 912320099 164816961 663893053 919056506 77390165 781150795 79920003 476378477 916284188 951695271 904712388 638536364 297352752 541637462 498490615 962887910 42877520 608204442 517015317 891102725 65939727 427211563 322495548 318734465 830150879 549397153 869659080 561821851 51649665 693172050 823269182 410100092 953566079 333816755 334125179 266938039 753931278 808080331 336215166 899254026 684407424 954859611 49994524 651937491 193648765 801709741 208393789 52709053 333304089 451279466 906164324 64067424 601786694 34883690 866207653 804502231 514774241 393852387 369329990 118301552 910861632 58353500 576775435 658799757 730060399 942907579 876973764 191961021 549392901 750992399 244723814 666321146 62557072 422816580 233188233 438295207 383207908 209040001 290337880 966256878 794998064 240359685 675277476 729731891 29332345 805366795 306108421 451539912 186433107 541600036 454365424 689992452 344642395 65756480 792524787 438179189 81896557 462381182 994115634 780041341 187276322 171277205 340778677 404430988 754137064 199683611 112872636 717028908 332916347 164466676 40765365 406300862 861257419 279415297 532085 195013642 414304942 234063176 120686607 723520230 685682869 60160155 33079599 295139650 682601896 718600864 276612359 312563772 635646000 594977950 129376778 659786072 87775537 596152301 647305248 560116960 713523117 628787367 594767560 679095169 854792946 321709137 724801094 505109714 77775456 336176828 863635507 448113989 311779752 443196359 550106783 349868780 869572 937428597 290099271 969234851 569946220 799509426 538762633 338484476 400848534 150753305 235386861 473588061 655974670 269624851 91006332 448963987 167005449 147446242 878411090 445591664 752414826 869172740 109139859 964920186 911763789 381227939 680320842 334539359 909738980 182665562 305490976 632981674 624934675 847609831 143986820 638837046 599514022 972768363 112434308 938247496 171532366 56429527 565823304 104326977 713660033 22046789 244114650 546777862 438623044 69881149 71482649 349608133 741507364 699150485 811247568 301922593 967787616 395010158 596562964 792681797 289156488 403189477 550930854 867671713 911414078 498305895 729478296 113150510 186984294 246068764 234630920 504084296 807287461 542544032 319675128 716599956 758132982 498709526 238926048 646104827 46018333 711020169 158346976 316237257 311202033 409002621 806482661 900474071 132294820 724083814 655861982 261863838 235299152 947726566 561462907 203527709 322737304 541150932 415459515 898018078 743936487 694230156 605971390 41508065 481878514 361345598 521641248 233342081 654749332 353611803 385513676 982986039 660107172 232999206 933313166 611443565 997633127 882918072 463594580 995894821 327241745 699038318 859525778 735584737 886671920 84544249 219308307 489453579 803791056 626704855 46390403 747285987 423420399 308131210 811913211 939420761 442109836 494939893 757746346 416187503 746176233 282735487 689306795 748446131 920470785 496825166 623531428 276951035 193392483 856216951 380093568 774106717 805960894 388684751 819557427 904865523 143053048 564882021 880687058 969362132 597093494 97346179 72979983 97445693 574220420 269606150 979734312 661024300 431446819 391560335 298607226 445908562 283687546 183629115 587309861 349137086 270876059 787419676 652007918 615761580 911515501 8023037 872125886 476993555 745092122 625705120 95977765 172098830 183597428 741728109 340237046 720860660 341390866 685724643 679335953 881052278 649870747 622844068 961229489 927671778 896408860 432542202 167929176 626281649 824898123 437017777 590331922 809689419 921397232 984940004 562441544 774852150 432308717 602276945 3269946 39228489 711894277 695290800 958150340 149003249 828032399 913493154 463076844 424143117 96857551 453413920 644452833 419654145 708194599 277837509 382753390 229180321 132942005 638143493 497712985 802302455 572148409 743659019 191146328 959560479 276531859 747732000 951303460 875436846 351943502 893512700 626013365 829216904 391333173 824725574 709922354 232481877 867200295 478586835 544376863 692291203 816888533 954975528 296706383 252480483 797713474 626587984 872233920 513230661 798811639 751737101 599227017 53682857 352819290 362346824 323436182 371612716 218912924 96994656 121480623 440810544 179455897 898789654 250953897 371356725 236137203 64595881 52793142 575694957 524327633 532366273 804984940 76652235 701079147 415983370 752721175 440961268 26518019 663804995 703200525 71756100 822812242 865531225 255812184 697599348 26183636 248497333 329170113 207497827 620971525 850269173 996331195 126087457 986688812 808054509 389920680 553597320 746317349 809241357 540387502 891270494 447086464 97035004 601918665 485126888 758784074 714819551 520656491 516390436 246268807 448659875 112378455 54641249 899205491 835687417 390274078 832024961 432112774 901545838 837644349 755055306 293505302 419812369 407522144 251645012 421398276 304698318 680057862 354036615 233952717 428640181 665176438 976936925 236771453 973900499 959041899 160982170 16493381 160609725 953114272 40186972 221779349 361455021 720134762 393247653 916858023 465566757 689539982 982155044 55953889 271692335 610060503 490950721 671679113 519191886 517884023 644502283 27060282 86274666 201636188 953024112 977960575 241772957 648584850 449441179 570971565 235578532 525593140 409472093 19998991 176842042 341078209 291506236 970827530 112114060 954045804 924266370 830139209 237466913 198220163 36509324 244675483 243704766 650796385 526943825 25598863 59328441 85124492 444263157 386054857 391019242 816108749 512576113 20594172 274633616 20942190 745026118 393648000 714632858 606772239 862324015 192073023 988934285 921964617 181310097 814034516 294526027 884472018 328922800 732633920 202245392 811443616 373467942 148727496 11060924 719856462 779781391 200170519 729251344 765795872 483705011 433431237 483659101 97616893 920203884 338253104 676526996 923366046 43677323 774614790 859312505 925648633 87444026 816933585 242743295 379091185 192944846 847114045 3403360 847729446 955196665 863238833 515787745 999124268 709787089 508898011 22251699 465000280 18870058 781764106 104955858 504333038 838418279 681470079 875190487 529260945 812100700 710988316 422774242 650231619 524527190 806524471 976821182 584484346 452171953 425817150 93163036 121747697 527629357 482868731 117496687 196398240 36207335 300486025 301953932 573595276 823548149 353748027 867144843 249766806 431641452 117301976 718393421 378603538 687077962 652624864 338747868 454017744 117951784 722655180 715276577 636387701 654274096 597637083 645781692 295511126 14114708 335832734 809572780 589689215 966971805 20165003 913324817 363248 419655226 949152276 768154331 216294510 901777874 668771664 720209734 716310365 21800775 565049032 21519890 207538456 750037304 946148336 386451699 703065452 846243445 312116766 792150101 682486491 413366197 727288912 294422991 834803857 123939532 870696443 810035228 382216156 52332780 538648725 451127108 814859581 178410493 557946514 933284123 188509643 264271262 991339399 694823973 971089727 692517382 212008894 955420823 928477853 309164365 757503510 455782148 575429601 424957176 188080553 624344453 419856031 53852925 82048096 408052284 948068762 68669449 340327314 504212180 355322111 259207768 181562452 89429208 713219055 255885220 564581708 807950303 184773268 314301896 866000512 932454369 529364799 208026421 974286182 608451784 820290413 93210324 29914289 599112321 408323292 374784595 145583199 89039271 247264233 282239768 193659944 298971750 624261402 954448115 848508060 591105081 315683803 593705687 206876039 214827451 938115514 636011004 10552497 238989799 627590593 648016831 169106337 543157969 781444176 668465731 323934941 624627358 389257247 634224866 337890551 935418504 389341755 596540281 836208933 403944043 768085047 109343944 121834862 852919592 920633218 767950554 773593862 133410494 893052611 9860335 743890912 712182454 426865895 455036008 275890852 178294162 169038632 13109579 557341240 422834045 432153983 985564438 630035261 64074275 366195076 822596984 934525726 828488798 642736862 912290908 383604896 242795198 708956037 996076237 142195863 666360621 239681181 894449745 666009137 478427264 830917304 857765318 304946735 953595737 920020968 206405320 952632820 95490563 875726769 796021076 177394380 321020768 391163699 377939005 882268007 844867261 437647154 684310305 395278852 532020320 462221206 308906806 501001705 461907634 205788529 638736629 716043384 931897541 968439520 848346346 844377977 470551237 882742877 611451366 473971313 271026654 670968905 876826394 280751831 352373542 697022595 414653344 986290635 414296061 524378249 106378947 970068742 952402009 409661972 427984261 315704555 757140357 464270242 817850723 792261015 691473568 514803600 458158914 889845919 742195780 65574328 380296444 565950760 566235920 78658329 287031941 762158851 490589550 255370122 613698780 378613796 315517260 510893135 318015982 430880528 35818290 498800506 373509672 270936707 92514136 11755209 627170564 992283791 611204816 200809264 543763260 163299002 612449893 27619951 194559821 78144432 403232499 680709343 658805084 28249404 703014498 819374706 512610783 688301136 462641904 264533083 628332430 228876087 511094794 988804540 883563507 354877912 13922489 712943372 157629411 21137478 661255768 969851051 176708817 732927396 599036325 622634689 371230106 821203743 693546348 923890710 128817840 492954608 941053671 729312167 451868908 615477356 148405785 162278846 239353306 14160334 896618062 407469756 403183639 769158815 883534454 675803608 854340457 302174109 44789160 326830209 643290973 638621555 991721738 366433427 489204096 931987979 351829728 995592162 491688401 565878765 895721900 105558012 282520797 379079925 705536367 905541076 361392 791950086 985488997 228989102 171393988 503431611 460808679 840307327 417168000 880836623 748977240 353695288 222798805 436014617 427413377 835738460 968861573 560217206 59933805 312098231 658569660 325592974 13212900 409929227 676794517 62023972 516126329 27037328 856382149 554303887 694112161 409020620 802421595 618992632 348160355 782378368 353881360 616066705 557372853 407986020 171204050 510327928 497497913 149927848 94580490 251627978 281848211 358742066 919072238 948347938 788596439 653636300 479195418 882860253 735670596 116135301 191604954 18711173 138011165 862811574 682468328 731893910 430446001 345779013 35924993 296254067 475567253 337602555 409092160 105873514 797301325 884402985 832875792 678780655 116767345 654160457 863707225 183225928 391551925 840467413 697080582 255521115 233779936 333801010 101715050 936806852 364564240 467878378 623860421 519481663 757198691 426563972 304246837 15280099 382501031 224111483 606980881 231634903 671279978 661778261 464899571 673091066 937370440 635866607 35409217 885400782 937408541 467785252 214579771 3199930 279695499 299074436 769194132 855972438 39815330 381712955 76944396 319389456 554845795 608917323 324986916 229404536 427165667 409059883 923911209 660918020 118625853 32525598 139859687 169841367 809759336 581544671 79865684 371403107 641235253 521989546 991340726 133136618 116854055 279500854 415834881 538112773 439295340 860352567 602362974 351103448 540503419 696890025 741749830 177491093 81624176 690830627 787382893 828355004 24572832 123451988 753279928 643799416 197823612 205425027 436047225 596828718 38600806 433616053 490765624 869245827 433790362 156647195 431848886 720958209 415571193 457140677 111850520 92678842 270981446 974080164 187318530 453454360 975280502 419996720 562520423 473386612 493719723 650551305 862757696 18040134 532486655 767692309 297980500 453569005 194989852 626608487 582240425 825717707 696916850 732883601 655944257 512049392 406606326 907320774 682664751 375243667 348031587 957320728 554227871 318221833 686752369 416679890 582962 919555814 989091124 306411520 181488885 467179028 125239771 479836963 712408657 403212446 809473582 927611085 71345189 70407779 622814737 802951674 619622929 494015812 823824579 235209656 173591007 558420123 427257292 397976380 369609884 677173678 338452687 527962281 305807602 161316945 269874215 87724186 108157053 809597599 937333583 320197588 544514720 381458377 538476806 158220961 59450115 321605843 192978091 922527827 524141709 451426158 396072912 32267624 13219574 410214462 155038936 133577227 618708795 503765279 858208188 266846802 701339435 44249099 543604126 984778335 173148512 600069161 294573690 263297838 581311083 226866780 836134662 129640389 234235919 64825751 988158909 971451965 658286772 992593509 53108528 982389490 954928158 110158155 960955192 683724779 647299742 895325034 484870874 881414650 806358169 829769813 164496629 596075846 634437282 302708848 468259568 959281717 627405432 809181506 773743339 281699192 808392560 71947284 87936801 644506493 321131357 674298099 680318878 260219719 349375025 725116418 794338263 715515435 16491936 319133139 737861772 59001269 209820670 373158785 214715711 7619660 294537036 630188266 844180247 839466784 919365302 820689063 827736073 913313439 222467837 202506412 877445265 132891971 351086299 314688931 439026234 836523871 584304104 697090050 320836585 395764522 402239644 609811088 432839679 386844984 31591401 337635843 505732726 544818316 322036013 949053506 891585998 577906204 608482836 843374701 260371470 691699096 758215827 79480294 306270943 870706946 160789242 105060705 967195025 871640370 861740178 443703616 835500017 29230073 70456372 642552640 970745622 292795637 875980049 684691313 101892433 714171673 491618005 144056488 22292238 833482039 162443687 524992260 722182267 900925303 996425750 632991814 843081291 541436602 966497926 271761946 193938519 265830905 92332087 256078125 335734787 109200946 648536556 526322502 482103928 151778067 49846887 621174065 216168852 530789823 767158584 894927358 319336182 598431560 21320532 111771145 251756191 531807965 15742704 105532599 775501883 136482714 154295622 414108506 424774815 983835571 774176451 307871515 222755779 643964548 934191066 141361386 443680039 86746164 379519889 170788240 668045866 465346392 129293670 211487173 798885959 742657753 149907102 721510132 40893941 771367360 313503922 541971580 41009198 628525977 892113824 75774583 422280577 393327025 222221064 368768057 876161432 789345854 881082512 812978188 271998447 436189136 953372920 171348008 985939016 169705512 916452659 819170689 804213149 860828692 299934916 767870169 923071632 872591190 496799484 290073219 407041713 541525451 957069753 122379707 444163375 398629166 637720818 600071589 483690194 528656476 903902967 48899826 435060764 211432816 549167834 189081264 166899584 822949315 134572270 395207666 242088348 11375006 568417569 26064702 642669465 963833394 195711332 92137599 933740990 698660930 471904214 792841434 556023208 627012912 498205780 241233449 197161415 906292648 735732443 728987981 117554976 445912326 279400348 612491686 884799542 659974389 136914195 752114894 194233911 900456361 490884702 27832374 302800355 569646537 32011590 788146114 167944588 269757352 214404797 861031580 919768281 964091996 393717919 989090240 931200984 539059930 985392191 58868526 987002215 470369794 810161619 627754265 363223572 685695758 913890298 183973316 273469315 898782559 570053081 470303239 290715060 581714161 692330078 474992535 31708499 896300053 71106289 19281653 288294821 845707008 359352649 503671364 202994701 571202269 936995783 192344396 159550095 695005449 167712710 587369240 261107529 771967837 821935405 941182828 348157633 434716125 815929916 406479941 409500433 724127970 96616373 662704867 136377468 195198755 854356115 979486802 747000436 288589297 496707903 435200279 197976270 35698280 567287870 33147230 982230046 659868579 166589099 988281162 522087545 20858597 670097888 225244922 574738070 460732990 43367478 759495898 996460279 217748112 896402770 775263918 952395011 245405163 835206503 400649057 465471421 840790434 555275516 764430623 717691030 412365792 245835639 32461956 400179898 151601791 17072319 284808572 425589565 394995005 783793105 721318863 939954081 795490191 762140962 589336261 873730576 52558012 443978911 877364263 720102426 318204069 709691145 950395260 481823077 965580094 151805557 436404718 931565137 30318549 740351832 856912532 418310452 333621600 831031102 981408980 685763097 71161024 965853912 106121446 212642960 716924797 78154550 227091659 609818366 243995232 621704719 581452829 178932766 462922193 4416914 181641246 504865300 5195562 791517236 284491031 706999955 809927294 274769748 390111593 406934365 903155071 156710879 500440996 723191514 299631918 519837499 979279526 90820204 929799263 983691722 2307522 926698006 527823943 64425509 230923887 618382695 354556056 592478103 487704552 336539245 442651122 177361367 852064760 900911173 14814999 535004550 393425823 1172159 61754424 833717140 247569013 312364921 187421210 767788047 551827724 204035023 480251578 286912776 927813669 943134294 651187928 746601733 837070504 160210671 125291620 467544763 374663621 711200725 62703906 357506320 60464672 356380955 290755086 157246143 555617321 909722198 493815386 722353603 801638549 399519833 562887620 786900899 659260186 359594570 44574265 933725375 128682845 719613726 217723209 850120556 924527472 440642433 795090556 69223710 508551628 411895172 704699754 120472407 498389768 57654098 780499012 721031128 55535237 429797245 105224544 645958684 165574304 808058291 126758410 17754934 726679438 442548349 297890056 442779879 613275324 798509822 425619920 644650670 442173691 682316309 607279036 955321817 445398107 656326561 761265320 409897476 804890688 962789459 219855502 414636976 816613301 15915897 518474717 911078588 941988120 177306252 935643618 523499730 301904314 16820016 144425812 104440348 696862141 927471195 410737704 620647023 693036293 991194035 520432760 708339467 490204333 163639320 432910855 748937673 77877407 175978809 565909775 754601833 247266829 438433531 136538908 101168878 655716687 371701123 141345697 313424976 323477962 704209404 79484268 531418874 884396372 469262855 193505987 924654510 929760985 906672039 860554047 286284456 384409003 983403751 167907523 770186825 895769522 271279730 35730766 977242482 555456345 963374929 682102336 994600273 49968260 495020669 37039002 176342220 628094273 217724016 478307083 758371504 670401392 406122963 401701628 521105088 913018573 437987925 668903456 940286539 48997024 60889070 376171736 727069914 195734603 766410609 384459976 632996 306237009 775831000 692941627 225669110 734607394 510396159 65389827 560481680 960629834 512929619 562563684 358933149 647906428 885448528 807741135 715368530 72032658 610348062 764747053 82934547 454019843 598653482 837486179 340883990 522444743 259588907 915027599 810089690 771282945 119892622 855028311 512219484 446575925 297548947 77190055 705323070 154856312 57742339 415596766 94694197 450886684 525072669 517571318 331897896 798938543 676212966 493493949 709565755 644820813 886264906 854283254 264469400 132295312 463559017 663861304 112412506 936417090 472976585 669292848 680375157 126189143 177057461 946603353 500902027 658568299 970530837 816368857 980418575 516373463 235347675 563933679 655757640 282209559 888535608 732825661 741952323 822718091 391033939 546554961 642379304 535313662 751437693 824623774 253130478 128307185 619012327 736078483 289709221 966473382 913734484 771327788 69052890 259058182 319335686 38121559 351475065 457101479 590817983 368979976 413188441 657586418 894402554 576707796 950334748 675694697 605875108 148839775 326771750 249716956 706056459 670808045 158754187 91506353 912205181 655556371 64025238 943621321 711404771 473922098 615197640 218783509 120253829 779244013 641052862 693083400 100923855 626908025 500213170 876221220 77646857 791319414 888878638 647053170 564096827 464244040 466803346 694615529 955201579 765434108 483591227 283880909 814306563 252250957 805357987 161123853 807810329 52902459 890485346 493337950 12448452 161936910 240356767 480630109 135881348 548011390 17350594 740142276 791872001 829526068 989170478 7081907 210516265 721547144 985596891 525313478 917729849 10268694 97476174 922647412 292098211 122208482 642438428 789970894 472458387 18386623 282906540 486972119 181409789 9807591 577065345 94245474 503084352 363810451 190687846 453501721 942153208 345380402 350109633 774286599 738326070 464085641 265329069 257296393 777731830 586346390 49288041 414228788 579881736 571938276 100905948 610387030 380861566 331769998 734931473 320075378 539800283 395109869 470575323 777964566 427527784 831877431 926269464 816156521 334102846 129629338 521619220 420966632 880619064 917713858 923369713 782953509 391223569 789401354 676378335 759215123 605044796 476725105 130544010 131516900 782701228 608643020 70331641 391722609 308283996 903907388 741663008 443704967 652300138 994648639 978075354 475254011 736210563 933946895 146859493 934928819 891984753 793025637 532705190 585869194 922428311 975442310 600661607 951882558 786441931 777896651 814223142 49592798 814314844 79667637 608789260 336075894 204127671 735683274 618427055 224007310 711938843 474616387 354230836 606400134 506133532 645202062 762920888 189888964 150318693 775860996 95694013 377330647 257971612 78464595 128091850 844486831 289316020 677992378 950911512 505377751 533177515 826045835 528374667 179949867 288668160 313725466 840492697 781518598 507674346 646356616 633742784 153091614 799091660 291104143 694096461 65592020 951608955 554968316 372663524 130518787 203545593 842249696 766455899 495967856 357452981 225521685 131175916 886959070 447972589 534735344 307750079 490865997 995983020 566983312 646622216 276805388 818782353 910947071 568838861 332652237 232744412 566177286 57404301 163639524 954631575 36976884 72246898 780852963 862196849 712444214 229052593 813316998 346854112 276441511 356461816 689043235 967027634 219758012 222564921 369810567 293208682 421994231 298119613 979250256 736461344 733544026 936808808 537011380 617666362 539008472 459026324 613087441 238990848 752068969 924566702 274254791 524730557 926809126 546474712 115565506 611767213 317680589 922140721 149670555 530704172 265282654 712346269 553567500 513650487 627097469 601757363 883908803 28357595 439561164 129900051 685471586 425313737 167181742 696777161 33144612 361060268 243825520 49118477 659513503 108765432 358625641 810513799 737014563 92216664 140308605 732791153 699304992 148133913 260299655 944760811 893811660 962758632 106792212 469588272 432144399 526449662 487774527 310525731 373200143 791968460 852407042 119953758 148647607 435648924 915362102 919652096 19428700 501930489 6450990 248479228 45436817 758980881 386843803 687184355 467930232 521242305 995068306 490633161 611442433 604427761 437889907 309061244 908641934 501512485 533901931 681742102 264376258 431572271 116769464 210930066 121195809 20332149 145113174 550236471 12620346 270337643 845330073 624830413 913725902 265420370 148270273 785810879 267513467 298663710 699453282 113761282 340098196 299256949 829802747 624131762 159873175 803782614 567584182 945269093 738197113 657420896 695362659 528893116 157928625 163637865 721214358 349029997 515499541 502054298 101530573 274161 631455382 474146090 167976390 552544122 400897282 280184231 759990790 300694119 203596182 437370422 499629970 921317438 473231863 541311373 57284221 553374519 768079424 966250276 384242914 732164655 676706601 139051958 915667705 711997068 416048613 629496716 12021742 417996912 41570919 521626118 767501455 567811863 134477560 379475509 230860887 842056824 369527191 766114872 230706533 157179166 559526930 236936467 541481396 139272628 271896148 91618553 402213479 635646689 502871844 247295374 836997335 443633189 318473547 98416356 572261396 881008329 853093595 305465442 993920246 379355540 408737879 934822786 487998304 831299292 903238742 698877980 483119794 643504521 917782149 276028063 327590725 40173378 280315400 673500585 593426018 907571856 599226138 608843763 990112143 457153209 338224006 451129660 901190868 806223612 444059372 341573941 706456230 742951362 677351120 238781754 858610612 814380456 302232403 895169751 684363121 143148390 304376930 343322154 611782856 35831062 744768776 543692637 560573600 508619116 389823157 600712312 471019516 181846445 818458681 78618950 686890884 714604431 809935580 110318621 973425040 942159788 788367041 97870880 358987346 230415544 264837383 351481050 731697585 179105999 129719368 328353271 407931933 554711298 196810958 279994682 33385352 470340343 361343623 212167122 450278955 540435623 628001903 160431020 401788408 420508337 295088547 61825633 291870328 723522897 636759486 739849158 185240473 620836798 967415039 951312554 592721445 870019895 560572702 671243379 219012224 120058723 750721881 888248688 989815063 339412594 688921149 555046783 626263827 11097522 917280387 880415711 605199894 876207896 835412369 44296042 448613787 965760459 650913999 740556946 674627130 698344686 979619962 927673616 729667995 855614429 331311874 728951345 677623488 125170463 990139081 776093149 30941593 689782004 863872394 898516300 814790769 73150776 586398603 918228761 33850744 559097091 480237951 964857886 775679873 366474018 359777115 133171662 332422889 97702415 623174802 792066731 554595060 237408776 977056614 589324674 213606848 283450595 518959428 65688273 945400272 859227470 558837349 13468275 739379869 612142712 51178175 460032695 543601080 764663613 589359536 672526318 159552560 968698731 393737648 540656746 946129096 909821370 125653189 848661153 852527954 168631714 353794079 185909417 92707765 477206452 692153753 707381419 884744039 110147201 52225375 620218085 134897610 669731314 279594832 257310019 216128662 453395713 462402045 860268530 234130506 338319183 728726004 964588141 664068377 892763463 945546230 209314255 898676810 63558253 858685034 776163028 923775436 46468690 996914162 336336380 950527437 404770254 395387616 574813912 928010049 275860270 552655904 264318787 905641636 266123518 544496350 68550081 132422777 688204785 258582227 963136098 654575318 60434027 352596425 427122821 919741754 18047218 554438526 618357506 311833833 10840953 29791196 640255969 219917005 93499048 905590648 210349258 265170646 32658398 763767297 907166619 550504684 538604647 369588322 874876784 347132143 509574670 520686667 675887101 990318195 648047049 113817370 673618890 136568163 775103143 110366816 789398569 921689638 55602043 736872069 517006781 493325829 744492098 851341921 326934080 375986604 565939987 518311307 87565874 422019394 816457132 11516770 70756560 187827303 544360389 262515168 47989842 466168324 566629076 852252347 408804315 373816321 397879717 583777999 770336559 879275629 131997142 956074682 606516867 149289777 136164194 850921180 439987144 79716224 410309665 841426615 62597860 571680484 923845625 770012088 762331130 987919040 944865968 54131387 502551457 971718987 674378175 757101351 221719430 987789028 201591421 256705418 977639264 401163722 990437520 434409668 277169660 973718628 158650633 200847985 998517803 431038707 745754907 417877776 630026554 864119347 560086586 429426674 956554976 91971081 746743790 70424962 389568212 307183164 405601759 491651057 586891393 164426276 68640976 786227760 490923135 113301030 498950820 6098338 66406607 400477202 14371729 102562578 126371680 815847385 76051326 276128050 287102937 808857551 125397849 21447742 594439103 336899516 427231741 940805975 584704000 836838643 124001683 867355776 651598002 610391737 379056285 366741935 751881572 470105614 870354624 933203926 166594939 399318575 862324829 661411080 288917155 546332845 63132344 178235444 657370838 922225356 837885779 74452038 611640639 609147639 423814585 220413872 707956720 692243294 631575311 253346513 667111808 727002028 573619006 719764261 550979543 723765960 170816046 795252863 716138764 891839793 605105416 277198152 880389963 786126883 253496964 217648299 886393896 104382552 266479923 950653174 917579547 705032180 26754239 61942528 835897745 247424171 617122007 415332792 990913590 879844413 953824502 824367056 571849037 944562002 582964304 427469688 368709031 915327372 739096676 921761236 46743638 837467287 306147722 900229423 589695633 402248135 480111362 15445949 175490920 661401087 49608639 300934021 714437215 830323964 502184560 120147265 62214965 220581425 494283827 807387719 968750099 473193971 337393191 574716534 297024934 609081268 106168039 522873569 624870941 294979423 501553824 615756460 611885153 782789193 171144254 551036001 219461895 497458442 436132327 238377709 454360673 577162103 724624169 377930975 643786748 302595824 136802994 10345932 790869808 634588482 822414833 356426278 854372810 554960147 508313767 412792415 802730976 454849970 16586871 961550575 835443423 505111388 877789025 164079097 355026178 423379803 385347443 510962604 92590272 918784826 684133333 436971010 195259030 230461062 819099698 26015500 549177848 995953405 467941310 842665653 927295318 810082144 672781024 105108029 35131194 937349806 338805988 618530756 991960056 126444317 187201463 555398130 635884614 749456988 649516646 607222670 722271444 648510319 799711435 838939726 222125230 171023422 700370230 381333699 701241031 17757759 64786290 27129804 553444993 334932682 117564426 73459573 490521592 478042531 216727751 134343331 618616602 726926571 635925983 522072731 159363641 245287149 165353324 763956921 731684668 676292414 627100016 732708116 685801562 245419479 940529299 923791091 180387248 255730135 671087987 72518488 475690403 317559146 398903331 621541576 341641854 672773194 942135137 51321914 217313755 43372260 45265394 718866110 451486197 875650099 882909616 873610711 381080278 39452532 223783714 740483772 657579416 391525868 810415833 374638297 885158364 643003606 318378237 299960348 856053882 540295303 333608059 674926082 549923706 73881639 800302598 291921920 208439627 78713780 437845280 39113097 146806580 343265188 574176757 337280954 224167376 312441707 870522626 783466025 836293936 766904813 173042863 773398751 998401866 631383796 625988243 82000828 72963920 354456686 23602894 851068134 156259377 756646021 558654361 220316050 368018713 98712091 357261366 153552083 491120949 311032603 398679609 807355862 389259381 292924091 431661134 349960584 649604487 943357134 651685914 675153384 822718836 326825389 563760978 96143116 677576065 54227298 977429476 714136604 7018859 627387173 269757679 731969670 114698425 755526491 689485120 221622336 51560509 364573461 962738501 524231454 123635867 170497571 598777681 172246854 579547190 811716841 676899091 576946952 735605517 721351039 133987129 613723467 887005205 146304847 877647748 175871510 387618225 260166268 927831834 348172855 87292542 594912901 792436468 12779735 976997822 632838153 628033941 424384459 998439074 697696717 237499136 529231376 129308303 711005996 736884504 4768024 140314523 863901304 626889609 820640250 13190521 463208183 201260700 65989747 398936549 208989697 97294737 262189724 420359937 489296069 460238245 213461190 682428888 356991702 808550885 847937533 102326179 456973789 583191491 317507763 289810256 695043192 683432760 205585877 897313016 558857263 931575399 739385110 914703650 837376211 203746736 837521159 316023520 232516101 761397131 733433363 893843190 848115401 114916913 609072561 220757396 393541610 258604983 424698580 45846048 690038211 194462161 963014211 540052063 75040173 213731125 405926147 636635769 99672522 713298263 173725552 606080830 911922000 36454083 254879539 809698604 277696478 268924889 172495033 291431399 868683670 23441265 484684942 474550886 782912077 535261655 648354655 829664484 506726279 647149308 869746875 899476573 959532535 510848577 502527712 426351545 879127530 920556843 72110867 656342216 424953769 960432311 915473387 293024078 954450074 831523041 349282079 62310429 773706805 975859903 63185692 596487348 797683432 607706589 848058852 263824068 314811016 32528472 108994712 778797682 104532746 722927380 803307257 714862977 31274271 132723501 854206984 508567988 838060031 495781087 761536325 32917448 293285294 301779507 975128654 90609352 162103971 337775802 113199932 722689694 793435401 730405696 415843352 514313046 950053548 414518645 960096281 321728383 117282642 351244726 613132548 518480693 346025674 946236428 904837648 702955669 989206312 535402612 388977053 393675071 869821390 541802143 334198091 570650590 138917111 530206086 317045711 478510579 617085303 757835099 761168252 666308003 972161024 721159 968411706 921569309 89807493 31249210 579102258 326733149 68702661 982494081 284560431 756476816 367818726 163589220 131200304 583379326 429630594 479285355 968658120 414274300 948191289 726335872 708200659 519223157 370235259 28629161 127678297 503538769 808833371 160414789 48549513 632699735 746455051 597678193 973263933 222905551 324670369 659561345 72739746 532312085 254045712 806328376 700459569 713255511 352886270 364965986 30552973 182249099 786142529 122399235 739522971 763842388 292608216 394263619 447294593 625665712 609528906 215068210 977772454 282058829 829992737 245953616 910196465 475777147 374185003 306614503 689077048 311596010 129341581 529911163 984643876 925758807 653965030 543664925 373036821 593353422 140175943 633797266 61904411 378488471 490350759 542677992 556056586 435722759 409198912 541575850 480559151 259231023 468697784 508786557 728895208 723114122 365768122 664950581 527112685 493164661 328553687 876079030 617370178 182046764 262193330 996882347 47305448 504527574 525103521 515626933 140173351 948542422 406348013 776001221 976490785 288165756 297072530 101289387 108981727 22511566 640165274 612274012 972545160 389410608 429520207 61647649 183928923 401141190 255870371 891135175 611542705 315418943 884318891 735590042 189156763 216559477 360147566 225007977 840442407 255663198 537637200 560263499 567292336 16749958 807047701 673482512 989513690 184902039 19225098 850910209 582553271 701356289 260632086 70246947 698514135 8634241 548036566 285669889 726718231 417125926 800415339 62553687 868626976 777232390 91399932 841911580 865463125 725796977 218207717 883749621 174171759 687366813 558585191 983132285 807614608 617861566 970978513 271277895 513253470 689484482 428288836 589105808 786746366 760736874 261621522 60040622 5422926 235639218 552074816 131066101 467112904 248365514 274285347 808281630 938229576 334103786 178165635 156179675 761477245 755411666 267901287 225444977 717209386 955785638 498341968 983850812 912156734 700299158 495696993 143542695 878273744 697671391 522926477 861886925 777730962 859917149 475024515 32476820 506284269 279365912 864162620 40489422 522107102 996929635 440778095 10346238 129944347 512543868 416191921 322917885 830001525 47263169 513366862 652143678 323279993 381272725 501982060 736156880 810854366 764686818 268068392 537772323 224651154 173713158 600103334 667355644 192603201 139885543 798417623 358357920 534015717 599356344 418152368 879708535 86601604 173627139 981392687 725123147 220995825 885251906 927057559 140507487 577217038 109163928 664225189 475269091 483855037 296153700 867232126 961333322 626232243 678705315 403761442 477374763 522499242 564972314 448765844 809110796 411126113 717212739 200726634 905447266 419638146 266188201 912105120 925428253 876075490 142594575 166788748 854031739 901457187 413141968 509867410 156888738 178413952 118455517 296353787 310143736 919987863 742724367 407299186 813233801 157034329 73323827 419735235 743306831 362262166 738949354 456509039 563745604 609856600 287863348 5839014 626315929 450986541 906330332 796962874 341632804 156074870 601521455 194066331 53722913 390590881 418973671 13218654 451391416 778171851 767725417 861823064 550782851 208496591 71553000 665941795 887627120 622588138 582527191 611261043 479663496 397848936 622998822 141906309 676014490 871075480 859135310 460920781 176523089 279138606 684465951 232483777 609953763 912563840 814116347 362772970 442117981 938586189 298328156 171356208 61275691 681329349 37374663 58740233 811255027 825752626 878225868 710741561 635492277 619170574 853016972 842244260 962698777 990640802 260826429 683659208 240194718 349713565 659328899 318536393 244012618 894471965 663494547 890238234 78994374 332833942 69358502 218590510 898181549 262822090 256795577 43922740 62504652 557374006 537090473 661267747 813728286 554074225 970235719 897760874 813693252 820389739 531514965 459140711 17215062 625466781 963516731 898651851 887728945 543390563 198673268 563429390 770154473 500437424 439656777 542550340 577381940 698592302 918782619 85758416 576727141 752420556 136851498 601314323 137667287 121642180 897713163 394771359 242176004 282046297 217946584 415186601 4493067 892613493 974163455 769239770 923307605 991465849 684033920 927674758 291694727 273243713 703648811 271474870 181731947 253627653 114028913 707533803 939972475 31673583 150955118 194918937 848655966 980378849 409478646 346759967 289495107 313729947 251201015 926022115 950502797 489256363 259406590 853327994 27961775 432372706 539797644 143004072 737627430 835644463 580016530 101413155 483129951 555858559 974372504 582709690 731139591 311703257 729581020 332090629 398659882 821348679 642433145 916696669 657961393 473410503 230155701 595763990 499857209 949096210 655196836 615341800 710441829 863257022 279393781 75759198 282152062 554826251 990732144 502306907 88375705 222708830 41167687 595130746 191485610 317188523 440391327 342835355 699522555 95084583 601027000 256614562 924780772 948380048 991477016 881642934 658082776 859350303 481785663 7302145 833468903 514642613 190014050 307791677 839309132 655581863 271675946 65919077 670106292 697228666 969619760 96231525 233460801 502109814 335908392 968063426 544759312 473650927 661122806 538491425 526162435 650566567 106963848 350892057 399565958 132428869 333817635 774757540 413645837 772586075 783537114 661188630 639656913 886439439 62641100 884416250 127899210 701688109 585250523 833511900 693697565 623742641 932482338 292745957 971280968 709133627 131460290 171742995 643859308 758302339 756371468 683836730 249181206 644363599 320131856 743404283 798693634 956031505 181037693 5773033 79853801 136365589 955791031 291912884 810481246 678354580 465442092 816035715 151431191 191775531 893630954 821732105 171693773 250985196 423074094 735181174 969808814 548072805 915274551 82170906 168310970 653132158 742718671 26126694 486819572 350867544 673136522 952273535 368443284 972784011 173877582 699247391 619171598 358326222 454934500 218517290 765343917 834368111 84580127 207631474 935542901 192915142 136154931 232813333 28074924 26550942 785531075 1650365 79743975 45407206 16893201 63520469 381991901 759027384 139750327 334869159 363184865 539476220 752553164 69729328 629436098 945357975 428827596 858263492 508335788 519589188 212064011 810271605 117273640 228964890 53117881 729550030 317543360 569676986 573564927 778605677 115870531 361539241 698196005 31252502 204004264 908011763 482749072 134312983 794903543 484407878 557739161 744087402 251423539 924882965 874857295 786087736 997027142 697583998 620401441 248857267 295830901 357490313 219017427 904664811 840568893 792967994 685325606 752143528 675868728 759572533 328499859 13279635 755958208 929495447 534122029 99508554 125733917 371323025 287582238 767148960 913909922 207468745 318496786 311125406 434188839 937431111 110257780 889951728 302390018 119736877 663777107 38729389 709114483 367704065 895270497 902774764 984712706 320288343 825842349 452380163 984080634 359427341 653453815 403483212 7635397 132845844 38470486 524721376 817148729 8105802 166656117 356951851 136848838 641112805 985639189 970186169 886149585 908537697 525980666 163241747 906666971 838999613 874451316 199556552 214212824 973751730 893571870 338341156 376699343 752771392 226655816 696679752 427622983 872510356 304728158 859819031 912594753 263831400 209215752 44642475 748004685 292627803 512016599 551892945 720408029 218403281 828402902 95274721 736975519 601165809 668625374 129217598 602990834 680174608 155975353 573178506 896295065 452712640 879737656 268698463 680607976 679443308 600358270 207445099 962626919 284464365 961692078 565703896 86938325 665355827 463808883 453879272 117707769 345232870 23367513 397178639 214492806 644904029 535549657 470460776 872311929 151268531 142220708 120355833 809431427 42699203 435854831 869808833 461101489 933366509 652142798 467859967 648147307 383959120 533127478 982301481 602314868 754292075 981559959 196062734 727447705 146197180 452082524 370242816 429719503 795915361 304792911 266160318 871599385 296149888 852117223 959108995 155322592 800383604 936784559 551070914 52187971 670139421 748270854 740678805 656207269 578154773 418628182 939060995 667218023 842848843 713981030 133133604 868628875 984358578 463514365 288474846 912980383 53605449 61041809 34999870 349526476 264420753 269175075 733285271 890770530 315614143 455702019 130179546 681942687 355375468 819029177 595065153 519534536 487965559 700937063 25399060 433873904 843949856 907064148 150009906 814789296 795621378 713954193 813199079 694736760 513014748 695116835 892767524 932131366 719925859 182301149 474809373 524835761 34674138 406487385 433812262 350761206 385740517 602978814 352760845 281413251 985999796 789149437 890751157 39385754 823671270 631181325 864956157 873862027 264435 516465919 21114039 837465917 869248409 997772446 452925162 803560480 766221749 659223007 807072709 446554015 206899955 713030750 409998861 459914423 845070628 908021079 911295368 11720585 720365711 244241312 608802371 331423211 680856686 258348771 282998815 146726913 256297966 155349317 31479571 16836008 308030313 501980679 552056746 573364622 289378397 500195233 274471689 452189163 208033547 79888241 891919602 345728193 765599835 812551768 48120773 753955276 816328572 272146007 923960068 288059104 655171791 132362432 403217048 901737612 305611284 455147857 150572167 966326757 286019424 71073985 252525641 108363461 48139888 315024583 103144622 90470075 979221095 355910001 653869973 452694763 147161254 23208698 722682548 478218068 751450974 879820597 33478250 199821592 804622153 186737011 938308726 201736770 189379764 473230334 103981383 614371682 820280710 814842954 549659568 361841704 328155524 283193397 547689330 455649596 719478254 245566077 849879561 958475001 317176436 115597276 673109969 351728699 388034719 414765572 501847544 158402042 991440627 575759177 680740065 695105260 937617815 948385679 515129612 8641509 190194534 483687235 819144951 128010013 766114459 507952378 451963314 287822900 787172289 569002655 564564965 39151852 199980875 103093995 86860462 372909368 608017721 889399574 608543099 920462751 450177664 303851334 798315112 425699142 787060268 791250671 731609035 503618449 188507443 456746107 613022604 646901626 231776235 210168917 52195308 272400385 727426202 37820332 277566065 342548935 733538755 403424501 440496268 645057165 294353615 82453710 603532224 60183605 616859958 30883853 90840864 971040073 811446332 374939140 305017344 618018266 565017577 770241502 605521778 926850156 26510745 814742645 168781014 482510202 713469462 624171742 57482244 891883952 690900386 62674168 7584625 970843783 389002014 462115864 784222185 732595997 164914717 529453433 595442508 906549200 619717503 685504943 831210898 283718245 100709954 125995229 178259011 873430946 701035586 971866447 964232369 774061319 6941822 455532865 398735703 65422592 610501504 60085944 823139983 96299362 958486679 872440597 323628740 754671828 189839572 986119569 986697127 174303667 55451841 934270808 954993364 441659258 152904060 291769805 274686469 546369315 915556341 722267564 555815758 516933099 580424021 917802405 277720227 298361339 83431585 290224802 957268651 534128395 92177321 39035448 609162755 551545069 640147891 967905003 110663318 406843788 238626911 885944909 117278363 514430896 22099566 971112442 504584296 920188483 360043057 37652058 924208407 658464227 54166551 674559144 685889845 241781025 179951039 547518368 151223622 283109673 628903970 349626580 529046717 208447884 729519289 618456212 95418949 60956512 75105896 430793149 740858158 920305740 191036459 311536372 179406293 224488958 675556832 395116181 553293603 946655349 894001259 524101325 953139043 314252824 900817793 729418411 464733382 108131381 836900254 755900116 473491770 371235062 606862245 799533462 347358028 343605499 167430590 22404139 211463613 158351875 949014014 529735496 404644153 584384056 391857910 501606194 66236802 935961100 843187295 121674934 432630046 355301842 145162193 483371956 492335608 991397302 372914552 874610564 685296082 244675851 743999557 67788071 945100591 953251512 856188006 883613385 551776723 32307350 16916881 44586072 882067822 488666969 337775745 82486830 589349968 966849408 621617157 822220985 95465459 238407439 712406344 118985759 443169187 887661102 825910632 106515584 164962156 646681058 754012850 673661141 729904926 532108352 345041464 891519514 867910173 28745376 278566533 89682412 961128839 244593757 188670468 303317740 158279273 608358343 446279809 269284699 962131246 156808875 106815857 96854375 127775376 156450081 801367576 801002883 954452391 293303660 98592949 550946907 755475373 234399141 896747740 302504295 982354757 399110978 635122697 535860719 482519179 675765882 463435718 204190764 963068978 370426519 221292847 154726298 703818617 598154450 629823224 939329591 648472922 806452209 483458463 366011830 915784939 586403571 911325305 994699222 980872970 887958571 618470212 415309603 636442269 505938285 488695902 951359055 182973347 287145119 489124244 660684236 501999172 114436015 791097040 75409835 684922613 548395132 583218913 291077945 691472413 603356244 847108049 872667603 492707516 354615609 863023627 768598666 155333119 437001111 199889498 620818519 668706439 141878139 470305700 382956304 348244176 867342504 71791069 874287158 814535619 412609131 28599005 557082305 93770363 611759310 995218241 48974475 962667639 133773553 47633065 894976499 100388590 296994946 837774850 160295274 519257652 516569023 697026768 146919027 441876603 72711080 194578794 663698143 985892591 461389250 561463983 655140914 299358360 721007598 337804450 811484641 700346159 700013425 152158576 917433065 313912670 479596161 133189221 241860874 443997376 533927726 720536310 771799720 70283274 429045871 578990622 461793325 683675280 707046804 609096324 129504336 333911102 837575590 575107347 341862824 577228205 99346915 139493127 197136151 600109207 745799727 826029804 839714982 779688997 370981217 644352175 878225473 902099235 89432712 997771259 622004782 987831764 616605122 314697385 690446647 941067470 139199421 63655813 162254032 804802234 97128790 592342562 122939789 782818086 494801943 71867314 360525347 145808811 838061974 201050436 760222788 221726529 557850940 309039173 15821521 956606360 730575465 267003031 187951104 192407787 491740942 7566853 614625814 360897934 803047944 263107487 113076621 485687373 348308568 611386939 896376444 216003263 521791416 71800171 861116054 225884679 672399002 975938110 627792786 650630564 489058597 429956764 860365398 874279563 169947312 224950693 964210489 512623971 100363598 783084484 623756190 62670783 617938333 250017588 666081815 177513867 394090171 962353134 525133911 14756034 732645093 525132465 188680251 535430842 782020463 162424615 503077181 160464936 569606636 317936482 277355671 647720895 547015073 741914659 773738411 891404576 576357555 586781720 502644033 886691018 885605295 425909608 213558742 979438503 103218022 798864663 680332927 432952065 690834490 459945749 721250540 184049086 324503499 806813685 932167214 809423233 33466035 107979728 811378831 663658822 607893112 813182001 201601635 92040985 622301194 850909365 737288627 776098685 229564052 407188207 128322712 605404810 984994430 864724703 172540913 237742574 698406260 810066765 432028511 636053037 471106883 348377080 734840868 339235816 621750495 643965213 604283257 114185257 683748238 970403617 503147638 535430883 874150749 776490357 665953321 410949446 92844077 434495185 952553612 404366986 663440072 726196781 706782188 538862529 94435293 729738793 397450243 197772881 704436417 988932795 397026273 809905739 921063077 976190920 641671893 707145878 339576532 747763128 114596234 903832154 164091096 755155318 43566936 797282362 759333209 391142301 508765239 565888877 676518786 189491217 692788087 520771540 565476301 585717935 447908502 556411549 28987738 559318153 642904643 443602418 581670927 167089617 852605720 596127685 71629515 881618670 880668950 226781832 365316796 747776915 426822931 657512074 360646851 463345420 511418928 270525721 630051425 225386701 529724125 480318518 759172559 776133920 45145470 577339594 411224339 477090879 593618480 275485525 956186433 27410763 289206403 607371213 519636746 927403879 59144246 793108148 794151180 826319369 790253040 174451568 51280272 672827894 103231400 846983748 189897732 558083954 947368021 66614018 508102863 790299119 683828738 981220931 419999114 227101612 470183701 679114020 70764963 922612122 67454320 368321912 213820674 756280732 104177955 93042943 898108880 63502952 290495561 127008879 475372706 951919876 883827133 931316400 523195561 188382518 775905100 572685344 574116162 209779027 617161242 1114017 400988971 313513937 472920359 912997997 220967838 882054258 359421517 770643732 10632269 510589625 366486911 717486685 570248653 697999830 930460038 233634642 169968799 578563057 669334781 639908564 561486403 153273147 162889412 405880484 985856235 275185383 989093695 38528623 148691597 381861807 380353371 180208228 553412991 791827610 565057424 693826518 520322049 991483590 215471312 841780638 905656799 681236176 122640202 884621042 454305774 827134387 809200592 212337106 833986505 433105642 56882911 228153375 576399271 715014126 489751526 882792566 175473226 520335316 245102767 736805871 723039739 140148357 452250020 467015585 142504776 888430708 134480743 995430715 9969294 323176140 25909470 981884120 502541515 447702800 173305933 266023511 306012707 827906845 53125020 144691832 391670143 509360570 71695719 702695398 566378975 577919750 232054051 720897056 512885944 33724737 996255766 359813064 270160676 318435455 555308619 338443391 883599568 709796467 547565023 788434389 608848732 451719944 656614027 535011735 560386455 936214493 629766243 510319539 29884469 117478330 320200385 752261168 232060657 231021401 982901386 861939351 943100545 75863022 154889084 187101964 910313676 472699330 479164695 561724418 770218107 978289450 173607493 32481574 638461220 925884688 824312915 628943417 726932117 623853648 279887596 433595319 75031170 604747216 313613528 496984438 562495295 809437927 810569601 990681903 313547179 684239437 34307747 543160294 304166839 146267521 136637113 348134611 252760747 350639439 373875439 19350076 63440716 844371726 931367702 111940579 886661622 324938337 777130427 716435947 947277613 488774079 829304584 467906808 224522758 105588379 14646010 323123680 443089654 155398775 851282102 907054346 461296297 511376162 116043931 987591497 388322137 945519059 875346383 539837289 275262196 277650336 194045685 324137035 106712832 217542323 541008029 836825148 262576445 526699009 276671688 88265748 878404629 771802796 741815251 37319749 780698407 644511075 634241742 455499207 561904620 925991546 100623183 357694427 795194991 366238270 168312621 15960 180539718 414338355 459084332 185333688 936586913 418341800 699062158 342012411 463863158 475559307 717619830 834903572 39007570 142837851 576085194 595900349 983736462 950527641 920496920 506051076 875618873 240241741 32263208 199539946 680787920 463745913 940421546 411174992 626955242 700892486 867621614 515871616 463326416 98358759 582714403 74410520 359880840 838645915 147848594 665888879 374455217 80734427 928565969 707371983 602615601 129294556 672930049 388964962 894546468 78554487 256011376 294895013 754727029 347962113 711624834 830004737 399453530 82514878 29046093 100369157 796460386 989945190 724513652 826997510 988695952 424242377 577364986 120779848 623406597 623394915 663148351 457851195 31516878 550304114 982478733 829883715 562526103 908604759 553308207 12285382 330835981 152089807 826283188 281672310 379720791 62134453 967575266 38397379 627723884 153011419 428214913 874786143 67420979 33352009 984512986 799895668 782090359 334250107 403241317 728941213 374670441 215881410 124533957 286359935 105214188 501815927 758502335 740376461 117590180 677561820 793484596 659594916 866844021 336491500 109309429 832557585 398909594 155729715 821552444 741531185 863331739 887992354 784795734 185635851 614984280 811802797 875676873 732962627 526918927 86837449 342240161 781237465 15791881 710017272 576546675 816242049 837950953 385659365 35820087 794531312 704838580 500954601 196507322 137335539 94658125 242534252 749008807 745459253 667244802 478245021 731389468 188868105 861141938 113389762 965441986 926653550 629073779 982494098 868244701 390360620 550177423 464854145 780956983 962711443 629757007 68680238 157848383 47220792 503154091 956218313 807750880 264237885 755054785 734125304 696822447 834594184 409945136 692637987 475191914 458931253 928630552 937297238 675485400 10814094 545117629 645124930 896783652 288050852 355230408 848232813 621761138 496821419 13587924 435151806 178004169 414258550 364369771 476635281 992440159 780667902 650034530 658201054 991930135 467022892 579604839 111548046 600698906 598911967 659670433 577535700 831058730 989348301 948172162 194447886 3146232 602291016 101790861 623316087 322530770 958775753 675283243 772328613 442382419 438785118 719883406 592973573 737203365 169286231 479546043 100599419 42033209 705447151 563451660 878519840 903205461 693239730 959407998 296397833 684048011 280770235 261122975 330557535 250002724 149864849 735789271 829508496 730023919 335674397 925445777 941094040 507405870 256438193 334867251 229954835 221910766 69659238 383033764 142212499 904723504 809625094 965109914 722907886 306992395 824027854 739871726 354897844 468010481 164830394 324802428 80008962 976848203 147313578 236192467 653645822 440807665 270220889 334428117 947576546 592694171 37095889 122484657 19700280 956772299 104762253 465484450 520560443 628334544 854595086 516664246 412107831 750913715 947691082 805980024 401241134 961242017 574548898 466399921 419927116 425627507 770901517 514287075 319438674 676140211 704289594 481983695 330758901 348737176 158882041 567587096 622059496 405475147 850274162 766383735 582139488 770640149 183664523 343697255 79878481 672152049 465598044 51763095 285043869 405643878 788636205 242347245 148317274 298923889 641734008 805735525 810393930 808996333 34052628 717011526 204729723 731047259 717832500 995608924 805440206 51626090 595027366 276198522 457750524 28617710 707532209 98525716 214125547 152185630 83436709 269812715 187993176 246864135 990478730 12389837 288336595 774144559 909310946 653146038 125654201 214635490 138331961 453025540 15123558 771997816 924236703 4525227 20235380 544538247 604238476 868271738 975720877 842278377 359001730 592257159 622385201 430433178 378884781 847157901 623059810 738135245 751124326 357499339 627501292 543475145 885843675 710079104 806957642 381582195 764318725 12819414 863382017 414132788 23609211 665156618 283227586 706247964 161592555 155001067 54108046 737845333 832547381 290006405 627155832 699642772 762831338 607598229 212123002 183804066 376575342 729042835 421640528 772697581 729511372 458291467 795344038 648185783 753885608 471896173 371354717 249567788 311513361 769869081 913307455 790991089 937624626 84244596 764596160 843619743 906831418 301691389 209035294 587902337 346848968 600404695 812035239 554120220 703018360 920108460 834765739 299221182 437947612 54959308 717135469 29104404 285566209 380083821 197755255 582193818 917771117 539449078 243559644 460068880 533828689 935312489 335291340 994801848 619633872 537163431 63506512 743916526 929018662 70285661 813816982 550164789 553300461 981404747 180433431 193166119 620410558 705025401 468746865 852082166 592256669 238742897 944321915 507890099 546046977 484297127 755147229 397302454 487414987 198725912 651822066 778923001 359221051 609985204 601484312 944449974 963954508 724639883 308525905 679945807 754471080 668812204 380905712 21589582 198813727 58150154 307820905 902236150 241629085 188588404 536822852 775959207 545252552 541600552 433892070 118000352 379304244 151415715 585428645 882999649 371097243 414329511 339124629 241476560 16034491 45929197 60114761 569064417 392953153 236982199 458655879 694039974 373392593 177610300 689410619 913249427 551625631 864899896 16895440 808549166 795154064 218583499 535968714 223020271 239758562 474463928 332264095 379128230 876459850 424017684 412585535 814125718 584192746 640567937 238274967 170450080 443200977 498962522 837253667 561410771 929427053 81744073 302713289 654656599 422337080 564708566 948172981 341788942 940934254 932326093 887341011 595820704 425940748 627313596 279209224 128674659 170563564 588343025 821233715 207381232 44098701 288756731 804723340 289332559 508738951 142279063 808183689 792081578 629005799 838482539 458208665 751192835 477762833 996869766 456421366 503242322 614333924 342930857 334644388 551770706 939797236 738311336 754064053 77904328 687475718 619076814 894804337 864689039 390338358 357781240 31662195 494545202 225183280 31422813 150631238 833694273 512556824 355904936 43182806 794430089 902524868 995037169 826530795 147134491 761552021 257579091 241658837 274195896 844429083 213776087 298946947 10450710 685141531 896537024 490701414 494892451 863066605 174378754 650404345 171173140 585050214 260498052 444446477 432615034 898095671 533868559 423550206 391893042 637175171 537032254 133084363 821095376 303261954 870953780 104718119 289292846 478782849 341489544 496164739 624952562 625403436 394726562 731334158 79366363 408748132 560152645 438666870 898209791 717323610 937061894 922845783 752380399 252007164 102549671 209766485 684614929 495421403 427072199 831540944 599925138 375294856 323790515 871293937 45900911 454796380 304957231 710616805 784186621 963777209 62368847 980631549 165982518 841802838 101037426 711846029 918326833 119963992 766263822 787079832 790668022 955777388 536370931 694401845 536176034 674262918 194241232 975526002 649920824 393020227 479155720 284481562 449918323 480483807 759038931 193215284 777296761 145931351 753309311 66549406 383034641 693943046 552244223 411679261 662725144 725271401 851364216 826980230 156336522 293473371 710025996 900604080 242232128 935068010 740080875 615203724 278568930 953271080 608953679 257423675 427972751 637942997 716419269 485478806 177630819 524161586 191722199 835547412 603051011 383014388 328053770 686160105 134814675 161398246 674857551 464925081 249668704 575424402 306801794 711236532 774298382 873012180 583995103 588530042 91142482 1048 872298196 409496729 759511604 131378267 898609258 808934128 355284431 930162471 957752465 871960913 851844127 931734468 945498406 981818353 62609771 901650788 862842248 940745573 301978547 648260486 79383689 340226563 27702500 900884456 538451270 246207102 902193738 861312405 494113332 564060060 671580777 232956779 786936128 437230365 601961438 946104420 925500127 633236057 511565254 445670206 368061248 691805577 820828850 595467037 927688356 205387091 175465678 241231856 315728994 903722822 182381863 215995790 407059896 550603422 187119194 208113672 178624482 981134180 242325091 168579055 117726089 332478060 638421805 505496362 206098463 251160678 878505324 196916251 848778868 855098192 879718907 176636289 301192184 764484624 540580971 805853426 748715130 53130350 942729709 839870353 744220666 62339704 240561500 268708542 242169770 663819210 104260534 270022430 453656201 141220787 641328584 430755806 891991593 199821825 943128 386345000 957675582 446974836 941339844 347796081 880859485 685735621 395795887 255088157 776867188 970540434 951665812 861782286 427082656 989835358 376148814 244335180 726489077 664214427 264594965 165459437 796737445 969317742 681871690 14010312 420841339 877710196 905220896 292237655 696116988 266156274 115134689 949846964 698438396 566056156 898239619 970072899 540707063 968149160 375801755 585441571 172031774 751181068 728973362 925826936 874435232 892368540 109523220 166406868 538323926 998309281 112065018 606900246 377651759 339175396 439332168 474547433 916585854 557418279 763671859 643023658 462894531 938438294 611129683 346175789 326172231 449897709 742365616 957809491 898831809 476203623 191518 817463352 392233551 698685358 278403656 618319537 233369047 33026702 255298045 973565757 46921201 75499618 573909527 539002169 185450191 867877561 464452491 561916784 215932084 638889809 428864617 82157901 73054871 955492198 939185515 209861853 369170533 198787043 335191629 78794268 549954557 506103857 496015362 456613436 563229153 526670885 520334752 906478169 798780689 768308601 736590067 136387242 186374302 804767944 561513925 641337534 285725241 37902011 992866237 609460649 183413281 661748334 661307996 75945432 996374382 63417672 860970807 106890560 144666554 611532398 359673297 741830734 160497831 815002519 373950699 974568364 809453265 577012541 166038945 278480726 467258836 981436104 627270839 895203143 36106478 661912393 37847090 435124592 288645197 72886352 770447265 666315190 583008172 659437569 901012181 872334164 671969723 343904496 865964851 724169140 284742984 731853621 69884217 357339272 37620931 710850983 199127888 206098012 154050526 380734663 289456288 831038355 936048320 410759275 525462409 597830416 841880707 371743719 943639738 282703381 255611515 903167180 792743951 714454956 300982054 826901925 31464392 916327350 510012553 218219713 83427502 112212358 386447992 206953171 697475322 320602895 302425912 236785262 252559479 252759596 543141331 610432805 556376289 568765345 608280542 235874896 551613161 344882061 27316117 943908701 267897732 879550245 30288788 577796822 42473276 220336943 387972794 300566043 203385555 393633692 920236702 321912783 244054616 560917578 53059803 136055191 884556757 439032296 747969944 722318199 270849344 17466775 668209107 573318312 243525927 559200241 774923031 671149178 929236843 590933251 789507956 927711119 118445978 14192003 746846257 487386512 195946773 624769628 186481595 778950663 801135727 943509970 987429854 908092052 648459272 169697275 855647568 53337411 656048565 674251660 460774763 632867473 192804682 370144824 916726802 341720675 719290639 952197713 802771485 757716038 175136764 149671912 607051187 405496776 541624001 671085476 463953020 191947248 389960574 464459683 386319431 280365440 630570128 234559129 613590281 216458219 51727843 406159446 855520874 565021738 780018164 451065719 350736384 488533048 91534255 364089456 88833637 748515882 715464112 490260255 244609090 639239462 602290880 687093140 834587248 520958163 33417498 245118904 131696209 808973108 764252309 491780968 20202865 251333661 755821443 706456908 770889002 947689722 493009298 557802833 270390702 815978110 493026210 631925530 698068309 151194668 491759593 469178848 414012574 491176814 282275854 771540157 336595864 615249222 715966491 122453978 461666875 173449140 539676666 184832107 738987352 599784638 672929492 762822332 529195760 716634622 114666999 627331894 809898839 330965571 166339637 120543191 99464811 565849982 713708910 648321202 656535798 547459027 754564431 552374965 939053422 72959562 676902448 481416594 640202633 587022878 879132125 594683356 677339316 299604860 517792741 786137988 113085542 152599861 862847617 350119265 206582840 226689878 255343825 425011350 411408418 495156012 269316985 452807259 85023534 843451629 724396356 275001833 38068459 247032800 870069301 744130658 608809416 121284691 138322960 489594120 358023934 652256371 46792338 530061838 385747199 896417911 371628204 955058819 343155085 774781694 992911788 675119389 491046854 323188119 997064731 785947005 701629603 471248444 627160987 678487672 867182066 972212546 451217994 843637477 221710815 918610151 714193277 120968957 861834970 13492028 13497115 541882261 466862817 120897395 865238609 360211592 356919325 261568450 288896797 359525015 363747670 225375057 516039791 856691587 21121210 124298181 973511148 764739568 742536155 251715030 604341979 608916291 525428481 158257887 281193417 394215077 446915908 976182438 373738587 122117472 173112374 278166955 634700942 458714467 491645927 914987062 589576035 530323678 12853670 501855474 371421668 148682960 253577304 550895964 3750034 443763818 294506189 657416499 827450748 58686471 816950202 13944101 426936530 565478656 254248167 395899732 589781183 548972554 739219787 322676077 604105422 906214718 483354830 544455954 330412650 804182665 92424487 341517530 332649926 328212919 54554394 37776516 645953698 508543670 54280975 373165560 264971791 511876577 513769294 138372550 986323614 55881401 309123885 81859246 900220121 220691951 904756613 186144636 384910043 378862227 648529318 625845734 237618552 980169388 145718412 7339438 626797414 287073484 228072682 252362976 116757365 853295514 349751742 990453540 630623882 700936739 576100804 911634085 225936864 115832960 567972989 437791617 192475669 156475830 398784197 669403295 450650748 286832881 717939223 648995150 925548305 97812107 76645192 78959353 944933905 576153054 521197211 453067141 31768872 668370790 953659722 760229556 356269556 950533825 804837626 724240992 585730820 742505017 924257749 794855186 233736801 567286113 386156849 870541009 25100331 989317193 617567990 951362153 814231521 833388227 850659130 792944549 738463930 506038918 293550218 50877519 80842895 261382094 530595049 323659373 389117162 322623705 594710678 669599356 664450795 819172842 819268582 819736219 202300614 649465600 748145188 626037499 513378903 120099881 460717642 61498391 435733640 350174032 562108019 712885054 148425987 446787921 244050855 216421933 129475106 367399696 981055083 138276250 263009350 795588013 198696270 352543573 544329225 311593572 18656614 473584216 592381595 491179044 212650916 188492265 6786205 673390858 367237831 752687093 89993049 845269610 57373646 696390567 944960428 801216606 159950720 967813606 428196927 428615016 945349412 430700923 984416539 950181687 244873704 229606003 701494423 325610398 114022342 179049610 93205570 378019533 531835276 835305360 415185222 841019652 540177690 250313170 284634180 881239835 923015476 545106498 67125326 817745073 568821349 936293064 969186694 741606523 524011458 457331187 828927879 780258789 619761741 765526135 38344997 413287686 465510953 545130324 115283786 598975847 819166639 463288846 789627631 410487499 406486251 742819600 314178956 966618685 978248010 930180075 840374078 37048195 230425598 176875340 411487933 607104167 210849282 606953070 667451490 225786094 434910371 528257164 543251794 129539316 365580872 380543755 2322935 282855193 878321891 713498813 68916748 822068762 517313345 564665604 190449580 657780491 267464126 111406401 834774838 941427026 518486813 656431895 694668634 207756691 574145554 476484400 207470687 886718264 861848821 53210727 895427945 280810927 238117935 907331396 629990270 536165265 934744982 769237879 37993129 773425216 468018286 724935892 683276951 453900475 282823260 792875794 569423852 713982332 77471636 161329488 590350624 699108162 58080146 88569136 109632193 973524602 394129993 600197326 209874969 483461258 579605939 61997529 876735755 711495471 217359604 32340928 568298 612018284 655528800 287305845 828457951 154023590 608856168 365097213 417848491 640053355 401044854 35910109 856967070 964013071 311341731 654226865 54813506 787502900 407828119 514259454 833182468 905576597 489401527 234233129 877984573 968654130 905950658 259593242 760699441 876523047 157006473 773744029 156565950 229183605 159864613 635839380 90969 545773133 894078127 655701103 286628107 398746044 315094524 321125351 387385797 612630590 955811941 354617305 54354800 611971261 393110136 141805092 139995483 45268914 749146940 540841096 73054909 289605671 197137481 638361657 565642562 723150353 776350316 263940949 177127962 211387231 263607703 686732408 651010130 440033944 789630299 300430443 188945906 57988845 976461630 59926822 184370361 552310865 599395378 739741038 114955034 45939148 864911644 641839615 998610411 880143266 144257248 91494312 700417077 440394230 979176891 427722637 688515656 981930314 942473788 781032163 914079217 100087071 515821890 805117209 362849183 43708627 244918069 55034417 957192233 342846997 748036103 241076455 403866017 12470546 717006900 362994575 81952490 529169318 50965253 654765293 844134635 312706016 478667167 65847111 6592631 472745028 426909957 558137083 517859833 899674712 64873759 501567093 620668391 681898594 482033744 482219346 966016011 890059865 569331414 194038656 175835084 287075657 656423125 715369565 35706459 543845344 993990730 200445382 607541864 812267888 254763703 102492750 209747967 508548751 64081313 705552482 105756361 843843134 44216333 878590571 128785388 68492150 191062211 160793871 60967424 2656877 525330319 247664881 53624763 615363008 598353061 991490516 986097375 659351917 429525583 876049074 519382407 650373078 860913905 217701335 148957022 169132368 484364754 481081510 573125762 506885533 28543239 417989670 515484199 682779440 571124050 378928668 331336708 965826784 172008124 190877566 407041104 904890966 128637937 191694401 812947369 630623935 126392421 305665355 513994977 34663939 668527857 119013923 708830498 399608284 113881222 220628582 307258977 968882857 88788462 386630085 693442443 882093517 608432134 88318292 523882475 992352742 534174024 487093358 38214120 422369674 516997572 861863431 944942752 870633307 226301787 771384953 141889855 861241644 366138026 720553079 905728628 617302157 357539068 567210672 293264535 629192145 511789366 359788108 756459916 122870364 365305724 613505626 332129009 651083419 352382176 717438494 603786338 846613034 157357923 106323165 723697110 98309204 502188719 159232781 770051944 450872212 285537525 244501240 54951397 631468027 983897262 984836620 875763798 650375970 522146262 177691568 72264054 672891865 45450527 438943100 142295024 489479687 812073816 72368991 263960979 742427139 502916852 905822121 340655413 543853259 720261616 322104760 468652068 414623786 942929660 638288550 845702832 164187140 932026496 478062572 346512213 223622033 718241972 204196725 322477263 56065190 416466843 601219209 347947575 940991506 814345992 778342711 840235645 773229155 115397590 773171564 114086753 933603226 427487992 193605200 207886942 659269560 685300233 280791990 229250127 933149654 738896815 459648354 191879740 750213710 382861119 802760839 381105981 373890562 957989691 548805517 120362946 554817570 575766892 677825318 65807378 173630154 80986062 12569010 356916427 479043509 829197041 761820676 908554081 681386110 470367935 727766939 393237891 838985395 76192199 26873143 51012533 528484389 350363829 882294613 583528499 741296133 823051998 162488173 474104929 176902945 526096986 487038394 764016780 708450228 968312257 815667057 214529058 529857355 922063535 951040407 523975893 678330055 719656576 22023081 658645133 846840747 619500082 666297513 94318552 393155569 146373869 477688436 683743865 231056301 63081852 588656942 454409597 765964175 473269364 908122243 770325799 374807099 238904626 22332842 761643185 406612148 327421595 244590438 4283493 691124581 641930055 213885309 246972489 602019705 430131246 420073210 238717148 726091865 2467895 188368406 187780566 800467808 4325046 361935392 997478312 862731506 169776291 41616216 989532263 762477211 761805994 839912055 65947689 394779084 346619637 915334407 841487888 284598152 86229275 585634483 592429824 606941777 930356273 859945393 807375658 807090825 29809581 990548166 285292293 352989907 136770903 227095348 220826485 435763091 238473676 220756927 908198897 210030626 583809883 53485700 304598673 776339720 537111120 509062370 443505840 753188251 43953249 193907376 186668027 283727659 972334832 326477872 518920219 291575285 950857380 740585413 708889306 502401956 503100518 251611939 307639842 347624108 315922851 502683 626367015 131252392 339767253 249831606 162966583 153426623 15646446 955734743 634205545 360919176 85127265 100383502 826864496 392058174 635619718 361769930 119732613 427134709 27982669 650496739 771332871 597840855 136030981 996441170 45874756 858721991 225036062 273694459 79722167 785128002 246958630 725164613 952314693 62662396 145209976 231681150 126633119 650060384 178252277 431302771 21703974 988878039 325838965 619661754 723932509 690678022 799788291 79199215 410053332 408163646 355274265 602991441 987635947 582572216 192333302 190226946 455888481 439480919 498480273 753698302 34026329 367085296 807484477 965873664 417160474 797155007 605582521 386721918 985564839 37526120 119096107 416735907 724818526 554884462 223802289 358474558 496472204 765599415 757357624 861416340 400825670 673965042 329396772 586429803 11086811 914198055 30979732 35353246 862941983 396971468 465816683 868770066 273339582 707929888 635053234 333647941 53571265 656409483 105604903 908118033 686097661 538259030 143287421 478255515 549003445 654690092 932406932 82882981 859631429 394204243 940338626 314632385 891292244 574338673 900212044 873872869 78677654 916467208 109039697 373946269 332714942 816751797 28676338 131133089 24992998 980943427 588901348 106648236 196296462 4162812 633619084 708087368 750657641 140430280 275757452 639221442 619852727 149654996 428586674 738708607 684417831 436990234 483844687 982321867 248502964 999090993 986960194 496213875 333453167 115198243 89375406 969323305 135323412 818418168 311185199 405961721 853432004 548211609 752889691 870740441 323777069 209374823 529742231 931842915 395459627 865181934 513188813 844238378 99009801 322461786 686248846 858782736 64398795 990655661 575689707 823194877 730002320 275835561 456971841 99872995 406497128 544732241 319877703 13763876 549161721 627557507 850912851 326769709 254514880 868655034 830031119 484012744 651331232 376449325 678655001 910223605 121121345 30490952 221242769 519943098 680245665 9160029 986378882 854459812 501262435 47404555 312866027 645641459 107017308 491663414 670288436 527048103 207947054 476294000 486397172 282106840 594322472 765132637 32163286 110924705 163999129 957940442 246275261 4188092 999945086 500467045 288453837 331846266 447264212 493313239 876490345 550361864 807269080 865456916 745673399 302473512 348791351 438576151 65873374 679147720 557193854 715928649 474831760 287151624 992681376 931130761 354362268 587523508 14256831 825826662 171007926 690768825 24485388 557195839 633359141 151454789 544548358 178577924 998569388 433148991 275337976 910102476 132881311 378002103 291039864 782765049 738204817 833567989 810715724 822940441 472233274 386186680 979675524 807185629 68416752 118904467 38341631 672788431 696625778 442441298 190956693 593632793 973766469 341203195 8828394 422730438 967759390 687208883 619010447 795668987 906370450 87001382 627616637 369668304 172190107 587774265 887241105 428551146 905700826 886746997 116288079 749300064 490525238 601771989 331067696 37181494 920218651 957257414 304863783 574751385 156792394 840225814 684139831 306364394 10356744 952597111 924333242 324813560 789961856 191416305 601906748 388741986 279666696 65887335 521816321 754843756 524913335 947098857 554971091 302773056 100966609 85105935 799403574 192283739 379732952 95775471 853105554 90490776 955767202 263089521 702545883 522195850 371507364 724892848 144929679 306205775 356427741 914543002 911942553 299931765 536731937 503892482 480953972 29189812 654770952 438708167 556213179 174435622 769864144 513195294 503862048 147904448 757231451 777013032 915095374 104471868 760300296 40394827 89849089 74477364 826321365 887822544 539662524 72719668 817694016 805537985 154326335 394266034 312213487 849719087 746925107 671878661 202583135 787366492 243777217 501370005 777007334 946119568 976653440 106966053 116136734 383137671 508977354 647597846 590915310 507660605 628526661 186311641 907212402 493670999 733326024 815404704 536183647 711820353 578902461 591087400 297517313 376312982 542187052 26094794 712863669 852011367 447124275 757092829 406404955 111111925 517285575 181750427 85207257 213102152 138301505 641474186 497278760 589165754 72032557 313245036 626962448 409577212 297753847 252013234 28994057 386156361 701978008 111085460 360205461 611284979 218843998 607974256 792298692 121295771 881256053 52403868 379529294 462485865 783742182 230807373 538709339 813065415 471206514 995521961 739974608 46607331 266727529 381748875 546817095 206430556 224250685 115772720 910675675 553822558 47502041 890291269 81977824 351195331 156768140 945950807 721126997 351968234 684187952 27986115 851380568 569731289 279282062 612749010 452652285 515390160 135645784 599996540 213040546 121023712 470451300 697872688 196314701 766555556 925034773 19450233 664062632 942834846 870856589 159340211 209670982 387127900 972286932 586431943 633091352 708304553 638735424 31696807 635404890 897810777 940361493 557450064 581782027 540774035 305948312 863643897 469809320 283092424 926763815 78125749 160477214 549835304 185831206 393362881 647312432 607650420 578681523 62313588 281197766 67373417 630701051 689462450 195422511 393127405 487716068 22940714 707216505 866965954 763790354 453104926 88716030 385346835 396672666 461470087 541276366 255143064 268418338 437136699 594033111 709431706 510762792 635687465 493694458 329982844 832671659 814509781 359371934 899831858 757491872 114492918 554045456 414864071 43515814 733691494 138751524 129521791 179494246 974251832 860764893 527324289 489264756 755047298 892086071 947238955 362477414 376223038 127015567 980624619 449010839 927232253 108850809 44580740 37820937 308571027 692062315 574874933 451965791 283321495 883571024 625129724 354620474 980161566 230814399 57851372 290543002 493801780 224132742 535149119 823410509 190141432 634327135 296709961 918321634 664405698 320075285 939303206 337217594 658987107 338675211 389443704 974799429 843030773 794098398 522302120 914643878 175044812 40306409 149434521 652931976 350198956 937194688 561623414 808113409 68430638 858890254 571369213 76673282 99433126 597825240 55546760 996196023 410780915 841711256 249923116 197741522 70168700 633413968 272738980 543057759 455372089 940638115 114350068 38854769 328242683 218457943 214266531 130329134 612048149 421605156 365382501 116444632 481404148 675212820 564857327 933044751 499270433 943588286 641483938 351351837 266487958 259697619 808956667 289664593 591795404 173964321 783141934 150382108 519305167 466235444 708485628 514009622 63541653 183200932 369088077 729040461 609309741 140908137 28261624 197814319 670576837 178053016 767368841 645937686 997370704 664612193 30494727 704082399 572511005 21821207 982348059 536227534 768562993 435090223 799173875 778885076 630815103 495238200 933610509 996063065 502701465 738382846 356076505 553901955 760527781 496296509 735060698 984202972 661018212 504150287 160631887 543576994 776175162 341799202 257956136 402409099 879204954 210303764 836230470 193928848 808846115 457891041 616941647 806384851 879118119 129791379 15526368 493325172 239972360 780445988 648098205 433720860 275796078 625576321 486864009 131367404 11617554 398876992 678071219 579824967 544045703 767713202 666108556 924426922 955071213 982177637 27630140 493851096 246822513 877939254 450424571 364425238 253978129 242626643 218218746 196170441 487473493 156913355 868894548 43223949 260606290 248513313 912973275 607991254 168343780 235010508 595864671 552484051 886600529 447174484 659880669 424537025 503195225 352987202 941126759 610584279 788696926 451818356 15319390 698457309 294775202 608668786 723986327 268161414 922120617 51657121 623290480 938969434 484057887 619878883 470853229 378062740 413120119 917525532 922204403 627738505 669911052 198174131 60140678 11098812 372545937 288379290 357865328 228811551 676630240 832792069 808502585 540866915 238619836 611503162 703078768 379594941 995044705 133176574 756158224 813060460 184019623 55796547 641425714 561681900 302229085 384300873 819969476 964582812 601888288 187112160 928480633 401449253 44141526 772395104 294818227 633933995 775983355 624119335 726548505 714371077 220629063 710343352 149798476 205320383 632224472 820623484 700289375 402490593 399218697 277704392 424495570 143914191 88352085 188389468 309063827 811494643 30690123 287661382 248480085 250445592 978083173 268976835 523753614 123799190 221287501 945070798 360136475 997900234 867722362 574460740 694553645 200000798 410372974 117427655 204428541 219198402 601005927 16008740 96482095 515643502 28838847 572233342 661730129 753455006 990621850 7767974 770308216 239810831 172682933 519489219 775903104 372069476 259184165 754124703 558867862 788190001 676201836 821954996 221689944 561357199 209195747 251833400 490936342 878471030 1390895 727863496 173262664 684800328 444752010 517154823 132391306 710302772 998139814 801158065 19317379 424760310 408096577 240806582 808431449 521293584 490834910 259624312 431939299 137177124 330252096 405715592 188982677 11701916 186316433 741991192 807874955 104956447 330778695 486144664 625716376 729928121 3031934 696558420 806018752 774141250 624005335 832612680 462828856 617131301 75097992 346368130 93679965 477444765 493144359 900255347 73855322 779995659 330085239 512037044 891729217 217326634 34847967 153970285 64610076 140738054 78610031 727414135 820489015 774528693 517072577 190110537 284992175 448041169 88887326 840954450 10388488 845571202 470562859 657389553 909259835 444332639 870517254 676159984 699185333 617540171 92971360 719583216 873468101 198895431 417773230 354009211 403328460 730430189 803619509 126178673 574372263 844537928 386854611 34870190 825444627 697313551 172299522 486608311 509253848 359054967 333054031 920959279 675288168 876167201 195916668 904756642 900809089 279449021 575052707 761446804 803376318 102373404 996234626 397600379 291168729 26334860 218792526 380656712 509756472 399027561 565134374 83555964 832811616 289096928 753353933 955742137 98359486 533007552 620083832 993472087 183375403 775489474 314053638 800041159 179197854 676877194 271923569 875543461 713222945 238718355 217620815 105599834 165236115 261029288 458999855 113827655 295767741 372018745 582710675 639514326 80921211 512649832 789139691 724530507 27805259 407307726 279828717 58265141 329959041 774449592 147219438 826921810 554522391 387797904 781275293 651615857 373969780 866309699 610298861 660542256 937005483 939629093 530777356 880876833 820984038 608152089 413531432 677510594 360406312 390475400 354979888 373937134 399415516 354394628 761681149 535213219 471392831 734309166 652640195 958555188 326537246 909477752 140841619 487888996 806361929 978187988 615115561 685748079 511903449 930285330 896583675 823749376 325148315 259125028 10913493 286331613 839120498 737895427 364675894 450614007 614013596 562388494 288998715 303518164 70061675 683391774 31500564 467258781 65357451 606106151 296650203 304913503 412777566 411331273 539079299 103502653 54136949 723825711 188380431 179045628 890876308 359018285 501505177 178456290 346458850 800190652 58150994 691535878 768630558 605137740 181505557 103630531 691437326 114705248 733901089 650858957 184285445 31088839 905025303 532674539 913094968 308564345 829399163 908081567 706261218 876062433 967229246 582509292 65784799 174965760 980483921 283855929 619059706 822086313 973357499 457006569 469413984 125606543 479589985 628004788 664749897 283969644 770077186 272431711 96895802 870972661 465792529 883232509 104939145 526751166 418979131 615922363 638111285 816836808 279794037 813340205 190111649 456868333 123104586 421190316 740399916 105316556 507832319 750088171 298638914 99586681 659505674 273198603 33950202 956213827 342746644 288505040 782947966 206464259 559541221 821719717 897667445 476639839 667083936 814120363 528083901 747176004 201181556 620350459 947896333 162419621 402190182 833291230 130095738 325623888 791453020 260192232 509717388 601148780 732763907 455743322 755013715 294528102 727477439 932967535 241956652 479340576 785137599 930130591 225541141 175819595 255617846 67280118 821316346 899072898 85373969 838078710 736414433 29089243 126211997 564161241 719351907 399151004 576884836 624413061 482786589 853153539 35338969 976937070 408083466 50050440 557245074 386253086 15204499 10336116 59999302 37318453 527838914 731288658 170937577 641895023 414496524 968637450 869020468 63464493 303414518 736211547 545335019 911625276 148877952 663693430 937511838 362152699 789364617 134825385 680726781 263106277 271649981 371179557 179808603 877507225 9791671 569601966 115921499 45832227 281969944 817148556 856923256 842804030 890359553 720504643 431890792 472129368 497222046 769967848 307590010 219561839 875383352 228096612 46311536 429837490 906111379 498549881 100324344 955022326 455787786 513375030 568842499 199834819 446589391 788227129 940729050 791439618 153561103 665453358 143418370 621278636 623866762 362599045 203709633 197716504 853690308 27692395 766488292 67473986 327810289 120887757 240274547 770405060 535570787 270591086 347562596 630160165 86277161 693117169 787352442 983574524 788121845 913840139 229619256 134844606 170531901 242256469 560697104 365176259 732018073 972656434 683011952 73986209 882738596 720326548 904834727 742492576 943954539 711554844 626123745 661200212 980591371 274989151 847678271 191086451 180407386 462632683 185836900 287875654 375141218 313271447 755014404 310922004 804332432 81735533 597004523 826161475 663532246 850130375 67291516 530977758 932112836 932600498 43275626 41853880 675648857 461614258 172124626 678958856 825777189 165657159 465709066 706532496 224841184 499752530 191460776 330544636 361406079 806634584 527522065 894363280 280671503 256582086 644532023 580546148 116234455 872983326 127984643 250137911 613237400 727287443 994841997 457258297 278076183 189188869 611993742 36356939 660793601 709156255 162357020 300669502 227947814 320254171 745716347 423263771 715866660 241118348 588627386 572238785 865114462 171980 169052831 332801012 973648290 719697210 251623747 812218535 934915094 610957553 793980166 634836441 853636500 804307609 198757868 730922859 313614517 675179974 712303551 216816014 595205011 124263518 778769121 517478412 432105052 197207183 528343885 724562660 125356600 317786009 711299582 239402218 731688781 61370405 622727772 302701543 712248484 185635234 942569351 533646457 877174599 777032857 939161361 370142842 551205689 471000955 807585817 625169152 347810701 527825182 829113115 482476393 616894126 673864592 443626750 631528229 819443387 768541581 55283753 689858599 62722501 991589847 823976196 589867046 192855143 603526456 312168567 832689074 883197775 108332217 601508759 912427691 219086542 119126231 181436283 21027929 203428795 45703982 780433201 502548458 729769555 479247548 699660659 187332872 630310587 217116672 422299382 751902340 72900462 521425907 202764913 572852298 99541325 339093140 484300826 51393096 248965609 671190288 748559582 614782058 176734071 706327950 365639842 184449386 165471939 284366102 541137742 845623410 795317997 115440827 104253924 392116239 811035017 294652810 545802767 459331190 244354879 208773888 232492978 804008985 155636236 175555474 912113559 139907307 152254786 24725525 341009142 486085534 442414136 500157430 796809479 455922562 50674232 996849140 810250259 337339073 191220079 696395920 976100895 196229121 528515773 812703415 964882336 169440396 513305664 714713605 709826694 194705349 321564311 675901267 350170931 392875176 625345592 667669142 575045369 377907825 811147821 772249649 248689328 86223820 597573832 370535942 790856380 535525164 766107932 847185204 659884439 443241444 80112626 475873266 167853967 645662336 391736289 300378781 581496629 403629895 767993643 440449047 538456106 447389104 620762816 593046945 673453650 357198146 462815318 864053535 497523191 729666547 885131921 708755443 934999509 176812249 966221278 308252176 843060318 296436118 377009133 229800850 22098147 628532166 87289502 591970939 561690762 373840503 585156031 46175550 384711688 830658882 874921117 442770004 906368459 903816746 202183310 940951206 817914567 41657200 164923098 867361155 315314764 223785730 809818937 686321176 990987697 949222512 130724498 109464980 845205371 837015407 385829897 481767361 594434636 250145832 40865975 869808190 622067647 293120804 65115638 181042669 775047019 506221483 100383020 484112764 412087292 706183859 539123090 557595892 545153803 19011832 171819570 55911089 665204625 185213250 506147490 105460312 650981270 642148444 604196262 484428545 12723464 564002087 56563488 530911375 15738433 589373701 935171448 437582366 592558771 911586991 552471126 546143055 707272588 339929731 418690638 955764325 315762267 741676368 557034254 866525142 510479999 550434454 403137727 465873870 800862884 166235836 840438505 878604194 677488445 260471816 825736456 489126268 451318108 974102090 16357003 389843147 789758966 619947478 856587436 314961634 757916060 155733997 216269750 588289629 481230075 28097277 962915134 287610590 635716034 657952125 286563888 575634293 599581884 72903468 811541354 915419412 366166981 251857927 735381696 442520870 752739403 443023627 720769234 3007911 864673043 481857359 614219637 970510377 293032389 871833729 504033644 787502984 955443023 361873729 710646358 784381016 756616390 453255020 747325792 270948906 49607159 602851366 246847837 32795274 165720857 934044372 341902285 277402894 287743631 458892952 876998528 73719080 696991182 899359368 727801469 651550514 744838035 221009403 957559653 740529713 94177435 701554811 375732677 575256971 525641509 316201320 369882330 1777034 539293100 499828201 660374866 357802107 757995197 996639167 969880188 762652939 391830752 454281418 878874080 346619314 599487082 451751144 554120705 415749527 794150441 417154764 268681921 602002518 282957848 257018125 604797970 606012617 228800246 479479944 27146270 638830917 283336929 442710323 448196007 944634924 271143006 277048952 896673043 643776590 968647801 714803560 543114811 391141976 409869714 816897502 644757618 889162823 568589973 967556971 3988549 419599592 35808257 188598774 95357072 685956187 146344293 655370206 22763594 961497907 722967830 996360575 176927037 246467591 714858260 784467739 921546756 882584556 997426972 584885400 142945468 759694977 901798257 578268388 515404360 336195708 721905576 598975697 832744323 625060871 641435657 236309834 35289964 445447694 312116476 131952063 120611274 776283550 646582637 721439891 640122888 253102328 535350764 490184051 701922350 20767343 964409446 158927763 110235384 730402447 627487467 407847313 236110027 261844693 703483273 523103401 387244732 176184111 451359626 13113999 137480128 111257657 520417332 292334691 759199821 589577350 341726282 646863493 130972884 606741303 108151757 792156506 677406326 759008977 386708098 660426321 146496203 556961572 282728350 543218078 668512483 92112938 300309488 373619513 615399075 167065596 95896740 692110000 491092031 604957905 14028824 276744210 855798615 130896738 806310128 888905776 85219676 611599114 832819758 211107570 894090726 36501253 303602540 700447861 543657721 986375374 596572761 153493017 104384484 338494762 842095048 339418150 784695117 366965164 234721397 666040057 714276065 433998420 693960478 495196790 88875014 472879940 730860499 129944807 33133840 507184399 872972315 9549815 406992514 90066631 215019063 89130109 52834233 228827858 993921421 12595544 687170079 600806688 98860156 283548895 225175007 410079905 594757939 911744175 874055594 952011157 530797242 976847133 205866186 277241566 721553644 724733344 901836653 67289973 444322463 174890223 502751965 497643434 232021590 197068192 508822964 38472118 553381250 39570329 323070909 419055463 263983257 248980013 61082841 935589842 360100608 756416600 632483457 967604459 824245095 270708203 563606293 965009814 437919519 343358533 257903654 444093532 366848288 904677233 110319922 602732212 317248343 278312744 400690808 47764217 911512740 957273687 306402255 809070022 189209323 377029036 76623830 748471676 549688531 19679411 906768778 97320605 641954140 485481860 455914599 862172704 950022982 632663252 211359784 683462169 450437712 995908399 382521537 22756787 175598172 554687747 352930392 107038480 937145235 703200734 732496803 384694142 643749712 755723046 96006813 223827375 413068947 802573596 249038254 655088735 152175827 115200795 982574050 565262425 694546658 853374402 417872382 828678892 697818773 139290775 188802679 913422952 204816474 985700858 609836912 364164337 213243975 904249836 993685819 218678526 425393343 374262511 869100314 835782890 547773432 491872427 271613188 183697432 455491253 622442132 434179424 843227623 539343041 729348823 728026877 784493418 335716432 838581700 198718521 195215210 812605545 481453345 257761336 585566567 908868020 495569802 555609961 649165085 203784301 437314446 238728778 930691866 31803677 484481041 970194797 326468547 870484281 435521030 79182511 279162747 764473049 814342748 29342132 734611961 568642819 545476862 418577356 105352859 768120933 301118682 27539259 160498157 640319180 810246562 688341202 937655537 204042027 290629779 208494950 621970688 368073925 599870102 691146006 341296224 177580624 786601373 558341747 320402036 718470889 800321776 662774739 787894278 199958130 115572093 15158924 909086787 890010558 358008261 76027994 617237387 220264548 80260974 670773245 226599555 194478442 570936163 258274182 626338221 625601441 585615617 535026643 290920952 72064825 867760094 948618934 183160733 2449743 245267355 699914343 213791079 468826499 73793919 287370930 862979488 431552130 489259685 648015588 539969019 574304624 978616916 855707786 961428180 867077888 865318716 440863477 753254429 175305705 590291711 162715316 567097180 475187471 874371569 338117901 761833676 72062763 266223325 338847433 249804627 383911618 915934147 346891493 832059980 989194284 90470663 499257177 247451517 774490770 719111527 494358982 808443238 473763534 216674635 808492456 302012972 998982455 505879631 554140143 297852845 262165783 872585837 963331235 277930972 234224031 69243019 622797097 456690255 630889650 730296077 985689248 258871875 891651838 948232368 812736338 582105324 143017949 304480652 171498667 668544887 537234767 862413313 344268657 630574061 882214654 830722457 805927130 798191118 920218910 737564787 361091108 564853441 682752376 303623355 813796239 630333835 979068226 587662984 680154770 445990001 642982341 107536439 547332713 130868413 382078698 199447640 454687539 758639188 993754135 6546993 257505790 623112121 116847391 678008959 980640830 471594142 66129170 964128401 497831235 838122245 14180530 421776013 737888781 369899913 734393300 911545127 499538159 765974357 358249488 385457276 840764372 959293092 902761718 536287977 417289813 65383173 320235888 478591218 386809685 341924066 336927478 35711161 392631805 321598540 959650438 568517859 279367980 106963469 336623334 651850426 955201876 42975456 316340741 687878085 46269689 154258476 565112489 488332330 582404536 573790460 797803554 722927714 582942792 823866701 839508392 520911575 46186137 405657761 829937807 874609998 951569441 933174915 474862732 395551099 232636942 103194360 646580368 452590719 507678176 436277171 627871994 998778768 607090163 470633030 292808327 897143981 732988181 105334227 705717258 767619863 585686488 269393608 270524313 648114299 994655231 504226030 224103747 18818766 316814499 628492353 785673669 625170106 139418979 801023641 362977603 721681208 651553748 50518362 437775496 90812369 718418661 825951324 639235899 150405638 125351407 737662519 205313951 497114110 83801058 541940078 527900499 360768701 419360809 611992338 862992893 605294740 319496683 848455681 432048905 665665408 246408705 654681079 817622121 755756061 711911640 417285666 332790700 95638829 12617190 461995495 355465885 660706503 762153382 617349537 211165139 521031327 344398622 72484226 83640664 666840221 7009905 452446600 297186533 662850335 742731443 2751794 142191896 419780138 743603110 644786526 837095070 844616283 181534408 668942497 603884868 479646174 200907537 761449424 549397356 506579954 45837917 69137780 671507275 211635733 339680460 835879310 687700780 420403620 743664737 813644859 950161477 998735284 636852734 15720094 395758597 448958187 291336796 660205263 862833544 458894048 272716594 993223451 218572629 831148815 458774170 551649283 824936266 680663409 968203085 635058730 157962904 871101214 54337237 306744518 18311597 9827265 744132843 677754853 475217849 647372900 293808455 670633674 389362207 613372424 437443963 420816037 990995461 983516931 312633948 712747880 743112966 557317404 656236488 740314177 676842214 860210740 712787597 57997277 479902814 106427776 727435581 287089854 424769394 39511896 246111152 938182280 789434511 304651347 455300340 599892268 978049545 211453535 794310625 826176780 812260488 205711022 370102262 76289544 517214942 218282644 4208451 184669570 946509271 711345556 724209246 204125751 815635137 46384111 51659087 264867800 453736076 913722444 915757011 877421600 462029543 909996872 960104682 753231920 630238427 572365274 780999922 56330148 207217996 873391933 82757518 226993047 333756627 268281432 997308311 705104341 879457340 478549655 996091380 204548161 493441040 844757564 950308024 651584482 585052274 595400027 199020115 243070817 399623762 868552366 79768614 303905329 145008119 431521517 892679258 74156468 308904509 540714158 425063899 897780891 279160024 236742353 338561868 699638500 808672593 787302359 639102235 473154910 722217416 492665723 213971566 306794505 129998975 66236899 265472784 775901184 102098966 875558854 301256105 309943157 406571600 843864859 866638304 651761678 877228620 996324209 999913918 480738882 244951164 814957720 508680598 152329469 341605010 117375109 118754110 896544104 132314647 104827249 157809219 917158403 610511195 454634997 601140543 852703103 887759554 473915484 33079084 403337637 352003879 639077440 847008629 65385640 357506485 581208061 563606412 37267121 509264243 551586929 413904461 906681247 567239827 576706055 608199919 749957725 69260415 812125984 804968361 809085542 812272480 722075541 946406953 268552995 802043139 721328248 215310639 228778735 773222233 168384923 526072419 615576367 199750744 306122368 84800422 782985191 235635467 873095652 672421643 387968951 323431318 305706487 722577054 908231504 919249101 432552485 442540217 975886688 525392076 204515919 220115389 439371482 76251896 942350888 994774281 355292159 100497762 279132707 142841768 997333460 459512752 188698992 235653911 348994093 691717201 61169554 190813424 57264888 691964074 56237361 83079501 258110747 271971092 571372755 338019371 938254556 936432563 330848652 263310474 278116243 448914377 405980647 978912496 367664609 389843094 813154079 674149009 284335157 589049313 37720241 748419559 229512573 988362466 260332489 51691943 695119087 373847513 754892031 938635395 793736221 508192160 402531340 197864169 591980918 72590048 49598358 876530566 146347097 436878552 794554574 722286970 872416141 811172068 412240885 964015971 806292506 177699928 697230840 474524875 346833752 319960665 602544656 256088654 400469673 22549257 462398874 862537608 351573903 166207577 663164474 572779563 897787400 302116797 72509027 490289398 164230713 922188614 314510396 444185338 651545817 635386365 769067338 378871999 576835635 638416035 663321078 900999168 669085533 789694194 881824927 387255341 676543897 739127294 810434448 67279601 108076838 996122346 434139457 330038613 852948594 63371938 503740783 475687861 746493844 829359270 755725869 908892965 160518020 493921893 161989898 532857348 403511691 173070245 481718107 15215394 115207180 717010160 880910686 825006826 330750772 694837029 5638387 740624070 640331437 69965380 522508758 630285112 6441281 44397580 889671225 305042315 402353114 604478889 272241126 465694671 518334236 925294982 493435825 397065795 423610236 374704707 612703421 649317635 735664606 673799508 157536174 622813634 80181665 229886232 851297380 319205905 655963774 129143398 625255805 99371394 967135201 143243966 563882204 958449511 655836 547672289 16047382 85296861 332831220 591644458 819641536 645407140 151859661 199965068 56327261 486380705 580259957 735441449 490013137 797486217 652256815 96001776 693359532 167133377 345244023 735301258 425614427 578791226 952558873 60052090 181882198 655749651 958455943 386049236 991373355 318639304 626432883 981516965 634864098 987959078 916334479 980648344 987458748 193525885 722380321 634345689 910922264 85275622 364783754 763890831 955948538 497751463 492663448 51790108 858713681 727364924 573918890 368114368 255402238 217249413 531414619 821145211 456627251 77825250 533081239 635586959 672022994 327216614 381032537 808602209 451765874 385816110 293339174 445020187 206713433 536603486 430991728 413712428 10360448 638920378 514795066 275890936 160235632 454108692 821594782 616384688 846902208 40743145 47445799 503971452 940743986 83229664 478782750 8602337 75244916 800163964 209395477 87003921 259059979 705312041 737238151 689169952 334023739 357358766 435990629 691623419 693803466 663789426 289661527 515374617 296721435 156105411 318566362 927718143 442169930 233004582 649429615 812593978 250852291 810339597 235611809 818523802 757258819 198631241 724839166 707429943 654751643 741875739 894364214 820683503 696965504 411368487 818095819 788641754 763508486 260148687 653061679 943625529 477323163 43220923 251323850 664049921 492732398 578029303 977716441 335389012 766342642 377047477 991091347 562306428 91737764 171983703 238886997 175921978 140245860 907638910 95854428 528575884 173800754 882924607 75424008 940134918 789658018 976611034 832372057 402413615 451708029 328459178 381576519 291911615 840602521 551623892 270210787 679517995 821420196 295264026 376979813 675615280 317635400 341569832 843712126 464813770 520763125 267733605 845135154 149614045 372358559 38216341 5707845 550487483 974764118 548262842 437671486 224562881 533167371 827718238 552402757 981978585 236736231 750666310 126899210 67954515 675497046 269262075 94243450 453255677 395187835 822182557 905893742 331959173 428755403 441883111 277345907 421924672 127487219 399642402 182293287 641667938 991824592 698146493 132421358 429206803 969436650 465240063 850601200 27421140 905026479 218423061 169030585 30850601 111340636 923470482 955958264 333684711 632694036 908678923 744074013 870913782 521497020 195483806 943245155 971829176 74832017 473205652 468378688 593493973 326837457 167805210 269453204 918990168 128699910 368504775 581016700 814678726 435297549 492635142 3140775 943151808 921050281 465811090 243092369 910537260 573593579 909065959 285106923 761893406 857753763 25531289 941034392 478789738 588324708 309959085 594107100 169178710 256583090 391308772 567049434 188111932 772555109 37426271 492271624 718248070 235466775 161951289 501200962 168180573 855591511 553708915 132557191 256552495 339852755 132644003 324019519 576991296 818459278 964644137 431801737 50067122 282421807 349888121 690427993 961502599 187250468 958267972 997065010 340316274 226708534 679475726 756455290 592369969 948511369 211911155 432355037 328644875 62553233 277211650 311470636 80677998 241298913 894796048 857841893 575083254 428570043 85575546 700476973 361958382 105294671 294510812 317202111 449856149 876623659 566617428 434276784 418212821 359636526 18530472 903289895 950299084 410880271 755152477 85911805 90696146 369795896 715535036 98908155 789377471 870260355 359942068 964837957 293553671 164354494 712972840 488277469 887385376 308004474 167240546 466689773 84409554 862241144 919429809 814078223 346740788 356540095 843264389 544783617 785865808 500219246 204005111 511380380 256424843 595392683 426275555 89363168 353186401 368906845 820190299 463611749 26563455 902251507 932527997 300416088 203998097 748255860 317210926 90381332 236497919 219018025 776700486 639946998 561510403 341713217 366913875 190645288 639053541 368179286 792806184 533592536 701264551 941735492 194095853 582037803 363661349 998101574 431211032 271245599 730642938 115719019 152302281 114019792 410858975 392368516 236157309 485503549 574597718 638604082 902585067 464603605 477613406 455167311 446288386 920033997 225633499 752860375 32370416 345624348 86697508 529608034 462575902 382830368 992818267 2971834 811332081 669261568 56237318 814503256 909303958 660647726 134199696 352651859 921310570 97056699 450054937 808294962 669490950 109642677 90049317 804670744 298792770 910581799 629761123 885516767 542778282 294538142 404178888 540184344 121902611 474485992 591770751 47927432 151389398 713763770 270394642 253433551 304860276 68734331 264961354 250937960 849735252 893176548 306916522 311382448 90933534 494692327 307684465 821706118 508195042 502715492 194056270 138470355 716839458 997895637 804402602 912716181 358210554 136666537 234369546 618619939 42442582 299498664 496273549 253643329 42934446 362902544 16595064 222003705 296141842 287576193 178988209 800474271 532008695 685570836 429090142 294418945 87860478 554276271 279246390 226351961 764387138 117034824 134827844 135446458 987071468 696375546 848325355 433120694 27346827 13704588 302898663 343904657 974198154 698297840 167391680 21494342 872576698 754715913 283432450 842276375 77644893 433733133 272044665 522165843 910092515 837396109 252545301 185611998 409325935 622704106 231091045 291973051 826592737 537684819 632275513 554382339 338313131 619513179 622316417 778443252 731881543 984681486 729959524 653958136 341266624 805980486 761256043 564251251 208466368 59967091 42403377 811561280 428443129 514477185 124829265 137264431 762541849 750903562 92776351 815018803 96321572 940988874 49608942 947877839 814580831 404503329 952912527 344307614 493292755 580939308 892297528 316790168 77734173 252699224 109284706 509251039 5452598 681013890 164440677 605623209 721048011 436915300 942744054 769978188 381358970 372715545 668748853 920826000 187413643 636096364 953120988 580527419 630700109 784000087 276790905 396697835 233290267 441379080 774164903 674359743 327445992 95662348 460067221 410232851 110650456 663454201 925696398 772475233 221371103 858309548 128596495 173560828 898820038 457974502 963593867 178663933 470349899 328332804 18685166 684551262 969623809 837312127 715645782 20680542 758364772 618605560 53910549 325196710 83652116 958651441 432618056 501175552 550610414 68945317 851373400 73882995 405626243 96620972 153445554 908294823 276933312 859646290 198871618 515820748 741396392 733656245 628741238 410117135 414493228 525399089 654787436 28078197 412322897 194430099 906921044 297207456 539242296 923669554 168322400 341690931 537119841 952170106 103232896 931085353 441819231 184833828 197080591 832621401 685818752 428057524 676480283 95764319 860545528 539152887 802280375 641072149 124218885 204162723 536489736 355321354 532215104 806025434 155590604 150453152 108652582 298117749 797733449 535981652 213364 632765399 128922689 881002270 305856150 622545220 376880458 457870315 734777668 376672980 240946406 701029043 221407645 687046256 242413335 734600381 683719760 489945908 601967862 350797468 889528525 715689828 73194041 678425897 838518621 18683214 817562395 717598606 182149279 591842407 960956208 620934924 844190552 115696674 648185171 725202674 265193612 107688847 980208920 918195024 939913185 451668522 702211601 326782348 40387598 819374029 387707000 701279737 675143718 839257052 520641634 565453754 496735961 758955765 811464672 944826015 181992760 410930559 925890365 743841169 822429799 273829375 44102049 601079906 310256534 383481348 163560947 719662267 470457821 823046759 475413922 748584433 403529380 463946701 552471255 727328012 300027499 373785932 301359466 433646963 574617783 167179425 783903442 268224721 525942849 105901854 466999385 582445195 866942893 536192160 121468106 137481471 195242363 954758528 763465563 941388612 161806003 47898712 514087936 317386210 651479476 610901114 465556862 930034882 556893035 614428853 486005993 7267199 443033057 561884836 294119560 540675749 53625265 320957972 656691422 698517847 684461370 45353974 970007604 155268278 919187384 93569265 19448025 341472515 736685394 887364252 476875054 29509037 622813081 821767645 56089644 883435252 644887900 160033419 616870724 311475389 458605023 313028792 591014723 354679902 938059755 930140115 19263822 387746888 627771326 71222706 869493009 106905858 498999890 787817287 642011719 438225513 410773493 849093511 400108007 975196824 167535304 105629611 914996857 591698177 774022270 14534434 455392272 575098155 370804454 585537457 795561580 489987414 132282287 251037320 888383553 416500735 844520527 749846770 593820632 704505720 547326931 906622477 52425813 505101090 66979322 82169322 26173924 974189319 563215473 976787822 653516638 816274768 683514798 414435467 553012704 895574690 731116257 197084625 867293353 420267402 463553255 934692778 203253756 347505195 634999592 344403962 207122347 98211000 979676419 204110033 766852483 48773738 9487215 100397472 129277066 183302891 754749147 49353978 250603934 282633191 347754375 56781624 822401019 877967056 355984336 182708798 577721384 734866609 739719061 905653172 932215189 867186890 520364390 383980840 735115756 999885796 325096159 32208449 182431798 757289550 520776689 910969978 179214348 144780936 794240163 523229734 80759911 46863585 986698001 78515918 829707359 652493601 70674648 600393658 129361837 735584656 409970561 178123391 123950739 621556173 411748186 986798158 979630837 141723154 423864008 620201920 511159990 621660224 519258288 320150545 68224599 990915337 640327039 539515035 204637209 578850395 815955373 919238389 416981366 597301498 512294138 112337057 923116107 465596087 956129635 517537415 715095395 120726170 453274351 531036800 705732851 882690014 820215934 154865685 168525715 747354392 377774890 472642957 92430096 540917310 720423901 571042622 168541718 215656631 693031022 409306560 541129209 371559170 129548013 974071750 222428398 166065895 767054603 104270722 894792647 74411514 326256579 289978168 101925993 606655377 552211076 629667555 671794480 672339528 794333134 778133189 525698185 146849342 3074480 9026324 303342553 54283314 241579188 100682557 470265363 122148655 459515248 898722725 929385086 908150728 686533624 49693443 879111750 741769908 815686148 627180354 432189919 211374248 928611920 175676702 98851273 224721665 137844085 429946803 191062791 438750611 651754868 714186192 304608125 921564011 660498168 455721285 593482421 743117241 619206928 604120024 540503593 493853602 45487778 676424073 814762636 823561313 754652775 555437773 479661724 208536225 417898453 998071980 883989185 9363258 96923925 995418600 640878025 328182425 507754828 611364982 585857933 195308495 214617569 309448640 933734292 58189647 686249412 629828453 566830060 468491626 822763373 319782874 719038856 400916911 14844090 90514835 605482295 986686807 543917621 643219357 440438143 230978301 573255630 507654137 52165861 721473428 201295196 663210331 631431243 691347030 933228446 645595789 212809625 401610463 79711291 446439745 970247088 361167771 95298120 267458336 751374769 352830492 524446953 939286769 302707476 948331641 187829496 583507591 231582042 880630931 525817752 883678120 675945472 961421509 191172217 8091893 625166888 773678313 674391686 936939818 344367691 554937764 472116837 376756872 242852156 115810588 60083295 34401892 744301862 773128329 133102640 613586932 276130373 776986140 851590223 219341484 540851762 596146405 395094949 901140318 943524581 782553008 594308821 358426976 336756161 748323398 600291891 161854982 264652009 917864747 569859944 708506434 858130834 41302062 255873870 192121606 962069650 453385876 135152945 153958642 629046132 651032286 164366275 514030233 998502946 349509401 643296086 651889953 868889542 8285796 354538500 810220799 219585049 90707606 307607338 824702173 773019882 861833904 689668808 237290641 295056192 917786630 54225670 785285222 180526384 441349988 298617705 324093187 193587862 491687105 653671931 631056540 391183380 861248389 229611570 796695069 254828264 586414282 509919216 8684084 452039615 767254689 16530258 434285211 240688361 948401921 897965482 908100274 40400571 295345754 597770826 650398701 689708903 7282350 634941812 184965088 929868735 813624390 551021281 741036745 717167230 848099374 892267263 240022860 666937742 666214237 434722735 545468002 157569959 564102525 843811474 201653902 312123797 893406858 445516760 862138892 881735863 639135326 454413748 355962041 602033241 604082877 282506530 527941548 48960348 506921659 50884874 731367923 429126551 725764078 886683719 81440692 60969040 263183465 569772924 511817374 837452740 941365112 808450808 540967623 572199453 784724222 332683970 53225484 427315508 818779667 938570268 483185212 300344262 684992601 805239996 12677200 73601807 783810286 312264073 89665275 875786666 321755520 699150473 73979174 892349834 981811416 371030404 578107876 990621648 476050525 445436599 396183642 248671990 359251911 827200861 697889183 847363325 15183534 317825756 126924315 832675783 188230230 673795365 14804871 207114775 85618647 874830310 130664172 961537310 615519475 930920868 651363145 168053896 690606504 126856193 435233060 249022577 769835305 879216098 837832545 748468490 317083952 924968203 631316237 347713798 946806391 796746167 389537223 433869097 873699019 145456045 208405480 903438572 65254241 619251851 318207370 710676914 30842988 263043139 102261144 792888873 120790871 308609839 377336271 79579125 101397021 111269941 782959928 261096779 642086293 290355680 531693004 512445704 290758643 10015209 833049829 478573924 779778653 470634884 584952092 981446770 556086857 957939256 125742259 309942563 660294830 69408057 12163037 706922681 940733111 224747246 477192514 180191713 977931657 631581912 675147850 578187650 738879156 370083201 284147733 853436854 58933649 577337398 580803412 843426528 90730322 268299596 673823658 398197052 292515342 123859496 52529650 667204103 270331312 928622255 676626131 124395819 859294672 941809877 647411236 889199766 373302412 567522495 231299099 405496816 814337043 430985614 8757305 644171866 645477157 289406629 3804219 583945215 498468121 723145134 974833469 70829990 304240718 417571967 199455971 985242086 773928517 351001942 845345050 948425425 794875134 288676642 449420873 833073953 702696788 228715684 364682442 532599057 900820218 616457239 832402382 618311707 461039447 910285815 635293159 552853206 73862862 853330636 145086085 750644673 273371898 93642560 232398199 259449432 645686114 708144778 43107051 910278898 629671412 460631214 363300894 61117831 587245726 108832987 283122050 638787949 482761790 394305311 444438043 465870452 276781779 749646211 314046471 524073895 635691481 84626859 692104767 286740225 581119229 418697210 616340273 795330726 111412365 906454037 137360020 284853666 529294959 119062014 277531121 648301267 554235353 762581510 653673027 777545966 571145659 884945197 164710235 631027189 459016868 182683360 134062705 664498576 570268897 256653562 364201824 722947424 833070843 887215788 123153028 964693260 48028398 692596190 259835406 338002428 471364591 435651601 699452245 55218653 917223620 942749957 974398977 597388414 873548446 386411808 519975514 81549275 634829083 145489538 245551117 660498033 253297841 942089535 225746756 242862483 518167363 175693776 292187157 909278407 961138875 187240500 985779523 891998463 775672324 440979090 511638882 762553327 96853150 782272458 855511580 349017749 223944453 840852690 961920772 80054471 756369899 999161249 268451457 580113811 240560329 685577909 464477800 840124081 670627500 459040582 461900420 211388954 627517920 528886779 447980897 503523372 495883394 190338411 555437035 366371885 688230466 998710614 127690865 147923823 245563546 455040791 773554697 110311059 469402229 994329123 72399073 772236239 304654651 617740159 324382317 268060575 529409534 572323138 310169826 869207715 580205433 616154419 642530327 722432285 936811266 815992739 958622849 323021514 872290483 670018249 898879017 301259291 640681779 155886206 653799963 990142563 443073039 914368326 215877376 697432277 360885301 288495443 55971329 461452486 389480229 651005951 135279571 547959142 45967645 914183882 671336227 462370927 559420275 152305622 670671768 763411014 484168662 976985169 684596457 437347862 491484186 975301521 707138505 286085620 423090020 789758837 512877424 132388567 758954809 909130883 794074703 111545739 537411718 661399333 315885699 258710160 951629599 136042946 832552192 227033016 855259362 868836957 499457142 860145882 238485269 501821303 280307211 906760640 362517954 780738834 422539615 74566251 803517764 23613373 74393360 318623195 680635289 930548914 988877875 967749319 105756832 290955694 161229422 985124513 471943986 558566959 581597754 700841885 888228085 4457969 588829009 876397265 430729753 267612368 357088229 842246365 58881081 449520855 673240027 402892359 964504156 612298183 917971687 417653094 840237765 777017319 791393923 927953764 380135705 98933646 942825423 489336904 403756514 427981320 655072477 458789817 659309059 475158586 960091068 300502737 983787545 426119979 763248413 955163844 742358651 91726982 259764656 574186036 181895145 775967525 204970774 218430998 955506214 252611756 676116362 37207040 245575445 396127910 631235405 38319785 691658335 235407194 97746545 394633233 600205250 2757144 551866905 830106325 169235467 607524166 751675271 446963413 225086950 691269030 694066694 444774847 846166478 229601933 36267010 985531150 603057080 710681767 636243852 558821905 812827029 775419588 476973547 591616079 20985677 648986934 736898133 710288406 770402068 827454519 844536492 187993357 403827496 390825552 450854619 913569761 471294706 377097418 57082906 250025074 821100060 109380778 87671497 588545814 537008130 526274551 551427154 334359236 835218194 73366085 216574072 111290785 661395233 504083046 732730822 354617476 103032629 320564224 65349154 581982410 114098429 462096278 182304257 860160451 989530070 72361038 314041709 485172930 227151802 407125198 282918686 674064987 242357743 4395056 440461630 237193470 325694483 223591975 122950299 832521827 376186133 636223302 609071105 738948140 130157565 836026127 211035724 444535930 767390566 827795340 908534882 61047811 417708430 130075260 424374697 736504344 447732718 486416155 352475917 123053710 151938578 474881919 632761532 169727971 211569323 562342458 979851006 812353745 23756861 564954060 141941148 894778103 979069787 553367127 236460840 474041998 634284445 546631450 466333374 612850299 354869764 280699157 922965626 849955813 734925495 769024432 849165293 87300074 80428438 790459852 924063159 380325905 359794352 329010767 55456392 18988262 879910069 575395990 718516159 366166160 13122284 638036686 756946223 39676084 801223787 805080507 43009329 831426739 542506338 743813414 122002426 407562872 647582253 266110396 21520322 895763077 37260795 632316703 627792525 9853090 239448926 164016174 899211147 166707868 921682737 793759430 126271621 738999914 903784776 232139263 991122523 323246465 392303495 38294208 192412137 113460588 787984319 473512139 247987402 692273930 828783310 431853555 750690133 939339912 586557684 148182175 793545962 78276886 576425363 120267900 380054073 778354972 137866643 746303486 960699603 129362213 548587340 128201453 796716107 919240104 726191210 474984674 919576427 227727841 238803464 346468125 331589465 369726859 79933289 575239880 37296688 743013540 867033305 108329371 935065730 748432515 239065120 497100839 49179280 999832775 957332962 532676863 848115278 258145933 502283549 204722646 477774212 217826288 906760513 594028654 53524681 530984081 126570059 700396452 477134850 954684258 927860583 337364558 843422805 906235600 382245149 131629409 563994680 446249279 896094076 125686877 702416880 430128682 279650280 137974703 393820012 697859383 870595733 588906914 557735378 907204561 695109378 822217771 206829916 335241859 654893548 45712558 972547985 680910163 368309462 983269188 357503284 856727461 504428549 590919587 460906219 850108614 436651514 714102988 562474287 473772442 61924493 766055533 942705254 472922071 452906485 793849579 267014221 902801653 627667943 648783300 722226209 788207546 175794471 688721526 371179742 371346014 498405666 173012024 463149377 633181788 711499837 783538271 114604425 426129548 277554586 55700012 995805864 817456464 661318395 485216938 851709379 322819120 969599595 227268338 448224547 345879628 869427763 957553583 238955586 22788315 788270651 740072940 342074416 15878284 482023006 318915759 58580390 371158512 363960518 31971135 115654069 937480082 72055062 519744976 628688392 776023552 982090290 16290508 377434172 557568103 719536924 780165673 274165783 398089082 650985813 828583503 724093742 28099027 142801604 243997368 206898770 107882276 752102063 513364371 286042308 474932546 211142133 712259241 95383939 940925587 793214800 92924451 703109322 438276827 839504150 987591606 532915382 573314987 212766205 332988705 747741119 40525954 468749379 615505304 591944319 32204492 149294935 501250990 316813333 634384504 516905196 227350085 343834141 774222702 911068378 708222918 907553010 903930338 866257874 574641659 784288683 283879432 6607296 366846285 787092122 732221271 901969748 390776805 563100872 444271913 415708456 271766731 388850224 614291360 525085219 213009097 471748168 199664300 470007009 428744088 999002584 66126634 533445343 740592118 459320104 135740691 158861563 542290953 81885419 744028522 835180256 304886256 133842005 769506777 607019224 321049560 583629647 677441467 448705129 375912595 135488157 424862756 485072307 542917050 225412220 379978750 281863872 259977479 741386080 717501504 664834433 572385104 396128755 886650390 175370252 880861486 357448585 193750617 849429938 410983107 674662413 721237927 402798700 352012653 444802491 329341573 855497583 92680948 629215794 182271511 585839050 462521391 973771582 572786210 870830243 972657038 828165947 839531025 695044864 842786747 818687840 329106420 838935448 442854641 616288618 761257547 10582145 774327896 860879883 798369155 936465915 623053174 956577116 942832001 950492140 862939954 854552226 191927806 33024989 211435572 606474174 801078849 906764059 431609068 174614073 123679823 926544499 49127894 137616930 112838385 59271934 559966630 150633770 585580982 542420131 492594777 484584223 382239614 699750107 91237187 628357016 767610106 450837116 462034685 161882513 421598752 135506701 339084534 337229244 654294697 946195240 974885282 281023215 970583142 781093925 12769041 700657623 177229362 107636146 49603523 697246152 192157976 702074895 994078141 511555731 722840926 795109536 678271528 64684588 809324785 445413734 668877938 517730062 593154278 106041709 22840467 208023982 917088191 54071007 360665126 587581834 255443146 615748855 50432290 46703737 326332690 832563996 662812736 467890503 583947503 328145384 537133865 869375662 403686045 917284931 350709264 189198519 229800269 374204678 246012678 761934990 418644658 458054706 342203670 884937102 720131257 826364313 319342238 479633511 475243889 525612066 473082783 294877050 279557677 110916915 67796591 485535626 458861601 706815097 663661840 839493843 551457754 619243908 929907163 202630980 19299993 149354196 244615178 681390859 24387749 228795823 709063311 415552253 638058940 360668113 352027347 819694005 1119728 28011698 382079750 454574733 169850090 422468852 248159974 95462064 716417956 849518218 269379644 758690667 243800684 534605158 6907006 870665318 263061584 535483833 173646954 708805387 842879182 76453514 814302843 280249604 381089945 62031742 539086540 899571437 43121486 32587412 350066820 339175673 214816235 677418015 787615920 475537178 558974915 752198230 413932578 881116357 354147337 86088156 96687838 446197517 591366941 61797567 207974720 626685071 634907728 914634608 306933932 340371659 101025578 463192667 895668413 36115991 940546474 939518845 932077407 822200531 970019588 851428934 64340923 482305283 907587217 424584849 23460448 426027632 569511342 37106209 212460078 65057327 880068433 507864190 157332430 727785973 644795239 361247774 282550682 981973151 208430435 454564326 155519921 680034000 396802186 597236673 763230539 807696010 834666137 846729518 7040313 954145956 280418913 438915911 745079501 255745630 158968081 899283228 177838994 389323257 428711442 398541472 812901604 191753667 760726593 48090571 568589386 911794088 275324924 877159668 269090914 334410124 582461065 927269946 122247413 435790002 557417620 96710477 924616969 69469934 466529482 947306432 397126088 798213952 350265842 934288662 650359814 775579103 224204001 990334388 703430398 570302095 667897980 817837174 340882563 653112843 398821818 417607530 415390800 681162266 738477514 559574488 795511708 203416575 664077861 257259133 261660586 755572498 49684707 241090803 562787966 780848761 620387985 254958894 369741108 306697852 173731601 501501317 552287150 435874083 527589957 490446077 663104691 194759483 672428865 274714803 121982857 378094527 499897564 298167189 998325033 444394607 743056126 296932088 136017814 412917557 287262667 417181067 363674037 932024696 103913414 595846219 430015545 232120709 981932368 41731753 817717693 656738936 172167473 72630884 102130272 664681330 996663014 991649793 605429584 770272942 87967414 732913695 86240892 309826881 346612873 558902896 493742102 135941175 638038956 420176327 57383384 691802192 859972431 280061392 503745306 807737541 423596054 297548029 550537860 735326906 452244473 600962606 413924865 57956605 998577063 603809923 863400521 481855247 829941811 802937211 138034135 490645836 503789088 525499443 998884232 880717656 719188415 124921961 842403839 86405495 546349468 577942558 784228009 283408654 411274470 373886714 967555243 255908721 543680574 983664542 148629836 127753425 336666242 569089480 877882806 378643104 22867461 835021441 587739291 329097167 208935118 805740761 669528880 118972264 687308748 444857809 333724629 858680874 678763384 610399328 573626678 862133668 842780788 814046650 3089357 498650073 426627567 483401626 193241528 774156479 52440603 76806412 85199294 3034234 53577968 876933361 999390682 819063585 740718779 53300436 719204356 217920333 959899658 606615099 527545795 24720572 413665946 511471180 826765210 175690766 358959897 724054645 506636247 68422275 343784278 398618295 102606462 122235738 370647945 459884599 100091264 80270866 249158795 459822721 705321175 255338199 257236606 787887083 867664847 41297167 982093044 658918463 432874008 810134526 782763926 760830319 159625139 336738667 923436854 269560801 621448173 464322789 376662842 103799288 36987761 639888386 309792000 798568301 830742495 274524645 439547574 762420428 190555373 40209775 13256571 921304824 586828367 995600140 880494947 317809257 684521293 431976470 836768243 528216767 77474353 297922302 3474310 898238096 785518646 58324381 370347256 819397846 93977646 581364267 926227735 915672248 729515752 30579360 208815529 43189432 939202383 311752844 246623062 441129344 698480905 917178114 956033209 141451573 155377522 344088725 796423739 90838068 497969194 752362985 288618802 653690466 463456645 369576813 493928545 17719608 391810484 3698124 811851061 462586394 151846599 683782859 248434293 472868901 666042984 75694150 255334940 655894458 974766220 424481822 621097361 297505081 182704077 288938486 741297805 329322453 786407877 864590516 325079365 493760414 474968712 334890039 917405825 183598912 461845626 291054519 853986517 783634898 330504493 996841799 786351267 668023297 1073243 591655817 198264771 810782189 712947719 955220029 271469104 856709053 544790638 923737977 368564051 891315775 43440447 692884580 872965730 780122235 691197196 297971990 711782519 977293847 266359252 448854327 97936568 885031819 633751682 386090125 628703433 276141226 973712586 735751311 730486977 978977168 531105548 195827103 309993644 135468949 144122832 350742328 858324662 455326293 112655613 277278915 27464833 541261654 215439671 791614572 360614700 119188323 615589389 176287481 763816950 830888457 595536425 472656521 748368554 340534225 958619292 422074403 870761735 633404221 976222721 850255905 749985986 604590668 235988095 720808996 709551619 332228315 847764861 708697326 222094441 165950346 485752766 98009412 796342143 85444787 590288331 661911679 310648787 824659732 367892860 57154551 170222258 64617756 680551077 933442825 331776268 922519758 888651164 383606267 232163578 985552797 805285658 426120390 765737746 418221673 851007842 53780528 623011338 176185457 640860605 116112249 367619531 944266830 541589576 960364930 634435306 922154766 439699167 96602882 358468135 465950923 344036413 746890230 811715958 621427439 342499295 675850489 820037841 114340695 355823967 842839346 426156424 464664198 862882172 269725704 103911028 186262381 613074495 189557232 989573715 621491898 384995935 365197983 265355285 573488210 517202292 469305924 162800387 821458243 435414118 677508167 799407033 382865594 194431663 178736595 615376651 371503946 834728258 661664399 418057740 398483721 351823223 190259931 793212650 188593700 531377529 423049163 987533405 667289544 343904856 381853494 648959316 132463306 934003628 737030311 409451999 459459273 946915718 883409195 383558372 314003400 28395854 627241913 430082306 21633395 294842353 752180138 63081279 205858883 489577393 474650910 172337818 538429866 997283258 524868019 146509265 819679459 484730720 495142739 897308894 687256453 552549697 422873771 158799125 205325209 604248276 794883488 455611304 189405282 836812782 550927482 713498329 897527943 736762086 879058810 451325946 768806424 566022050 982156420 664614345 304742424 524406649 318752219 741904746 358214803 128180567 163223860 407890022 551099529 332978055 557422475 568455910 651496926 109558840 590972928 136936393 236508294 671155328 366551804 625186049 695417315 544964853 159034425 753532517 17587452 271866018 239119481 384887384 959511563 985344571 684994543 828623663 427586795 553657672 708725471 287860529 470185211 719327989 497756324 497783716 721053525 283334048 540732280 982980967 68183706 479718352 283614457 267936781 359828574 465882151 168445502 212782994 795018701 863993631 112751044 37436273 364128108 19362311 578399968 887450549 946051688 649469470 265146041 936510450 448257991 55860151 684871139 510805591 85229609 889293579 874014911 814343422 681514837 790658160 382115276 551034779 123315582 613407156 197638666 169639606 533564778 744529449 235605742 221644493 878020725 11775656 588057169 841525593 158902420 918136978 503126456 219360477 111669882 797755639 948595949 696351452 655261034 632719015 213256780 535434189 926299590 465031044 662940996 272816742 467182242 3320297 888811716 163054144 214341320 42537697 985959059 228124412 328964310 251022741 613774350 699438262 922933697 457672831 948744143 233436061 442270030 918988306 722690380 398920026 612206199 346750590 453988585 706899373 893540862 424886712 571737814 296397914 799974172 181924426 538884808 833855931 201081466 694589264 700082548 147427331 319394157 653788720 614629790 714139945 695825104 75862534 504201827 109917947 940354457 74295342 382602527 943090243 811129551 713796110 444195263 520118264 69789672 273487643 53588152 237103612 808329401 877257407 418360687 518027119 733862808 485060176 887451962 169272967 805445984 512759540 45783185 222800433 460521664 200343071 982919555 513240687 155365485 632725233 477417835 118631976 397003247 460629970 342265521 234783089 80985012 860540406 308743284 621090929 883796381 660934320 321636547 712180874 952490633 784053582 439595809 787876513 289685502 320004473 497410833 870889597 129445961 443202907 991747217 11569564 86398149 12184248 358741939 815163925 362018578 824817663 807144447 105074433 612167982 334269689 69064884 14382576 576844263 568070485 129945680 584090393 716283435 771331497 651118586 423710543 125307398 58517608 341426799 67886346 266561936 839591964 503167862 339051891 982843562 513511315 18461933 763998646 330177509 577348106 214984107 319258522 161632755 463518524 624072693 288047912 942840383 956458206 352032283 304456750 496219248 567282120 868297322 488638668 394629999 628743368 292095972 672897980 699671261 848032924 843640212 348353503 22344145 389999235 725841676 795610680 977357750 682370111 879984922 115496203 629142553 268079949 909771365 255821254 741773905 253212069 830923922 842958338 50644758 292127386 722777662 927760646 254248476 39015431 740326420 755904462 400596371 118608228 368323822 376844387 962239142 722564120 112844621 349128867 507673798 257707356 801309630 682840984 255305881 640994416 850167884 577983395 748632438 734655566 179282791 107706576 918741494 461488278 200609695 855074925 521305257 968915220 861388012 542259529 716486875 828768342 399764552 8246566 454356069 681897267 188076542 619717279 722765325 698887268 463700419 592386835 6542113 420276689 647626519 888839001 848794309 241240853 188546663 27369189 820875315 436476584 835296836 912629736 938011056 748729884 510042309 690658853 803480665 262772479 529734299 690796321 494195416 899370034 871360872 503194979 320364192 396087918 455759870 937681527 530199194 803916014 191122326 474505839 255345616 257111903 725249352 83966719 72776924 245653298 671013740 711849026 114853860 751243133 787656558 75421343 712598851 648475836 817447081 383675442 942487844 430068871 413523236 783453889 194920835 464842265 233171394 279370494 381064622 908018509 825269993 913172535 836808118 309798415 923898791 555272833 482897304 786150133 81507493 588919381 292356483 323651116 566694960 305082491 902518158 33340056 571330389 246108599 491051184 742495816 602892903 442440589 197836239 953415841 869676931 407712580 203157451 253695138 117425118 617408739 480269875 639070412 2492555 502003781 94587237 483800640 586870076 444632825 192399333 252771475 308028149 271497556 602694442 206783502 430473324 626842505 959982064 755618846 464963664 516390309 179834378 144337738 562171531 617859234 495384624 672305561 961701773 455947080 654562076 915617807 340436862 253294224 780206890 298072462 448936854 608555948 350258491 92321457 397219786 161582939 586097665 839813600 131686117 43229392 453845174 538186899 859445700 143350999 484631827 554719409 315500953 66231718 208626749 792804213 327224462 689720828 481750770 562830835 205247979 248785098 576086740 698028195 487532607 257211182 8322583 30794770 161589270 446515133 572546985 666737380 162818165 858392326 206859112 34780831 86738201 812609805 812047833 336439979 884126018 163914193 868876926 536987245 174794459 226100238 964574512 839355639 609782354 545639573 108366483 844060703 225273387 301721189 821244191 398871922 42795381 244979446 211161962 776375336 266872094 285830006 698640323 930456474 711552116 948682650 378998481 472328169 324803144 590394109 939467869 28586253 305445272 719292093 350844073 737785303 902074823 517864376 152866115 385951554 200543961 895274229 545387781 323803915 409638483 370341374 576981579 45880137 217161898 139126075 24920285 54328126 996616012 19072938 543534321 46989319 441912051 535902912 340409036 151784696 753637859 79751838 411921716 919108920 912990855 233454490 352566008 941103206 981442657 946075258 777624323 619646451 613678178 537599747 385420944 441499180 737337027 701698898 696645165 816866128 486043886 848607299 929330904 974741533 44965024 555715082 396043452 317806018 842681740 406459194 175475510 97499785 559276212 90843731 228585209 572899313 782186358 541417049 313473010 410918589 561783550 918623785 733600629 21191883 278144994 673116388 195835272 937629022 464583852 863859434 991376893 455116887 273691432 488112350 629306048 682310335 691967779 183475501 566547699 115406765 48076302 792393330 593933646 478753950 125391277 544825442 118224719 803314932 922648193 883562868 476988080 822070942 422048790 134797168 832961881 716983628 664692793 603650927 825707718 856682057 541031440 177304015 322277483 168459293 684037485 234669356 546181763 770914235 891452498 694192902 637147274 512413493 635576022 435459041 115342470 519062179 263172819 440898625 299846501 156181936 586337703 794524356 54256854 274291056 295836680 832199536 722511458 120152748 47650394 266337921 664137262 876199490 755810235 473649245 648582931 174049925 23336925 67725382 283608416 839644836 179202514 966477834 342490188 810860860 532085582 750389431 188789925 982353340 326922450 469597624 104358773 287422461 480199196 904549598 754390955 574746487 490557823 893516331 690902011 312285723 633742439 634779268 600014891 128607677 431740797 879426716 81358326 81891374 805255204 837609571 618620341 501050539 752804649 286696719 287923250 75714491 679934854 652484097 291503681 342409361 784633964 628612843 337552321 529907612 6724603 666791338 463370299 503684281 197657867 782451009 201040713 340141152 247221917 556871821 901668894 441273853 723604575 746544994 480714717 65311803 195121999 82547720 90923482 380391727 65147496 368863255 452015288 983630377 73660079 230313603 819838020 890377426 775466160 148405416 448068094 144834743 494208656 275426408 767294131 899851732 801274799 644615260 749033964 224066610 843542581 669619508 632475493 126718184 554187914 886412460 255780022 109572497 192319115 299269697 743588089 39838269 410860927 402828761 23181208 548995800 773596567 73650670 932049672 994226650 9591805 413249978 108464252 722919464 623776560 187134838 324733967 140224818 436009286 799365037 356270600 189749679 306426042 369899124 859552008 789229798 637198923 533992192 598273297 339214896 793833708 587349006 492896073 872523946 125535202 496848242 512444722 644582938 782190090 782461776 216228972 283300179 957410989 271481306 361331146 192182618 897762129 211631210 274963918 254366414 20146940 310876239 997890851 210448415 475493317 269588915 972765521 857944885 294619332 110186852 877389044 733689854 77571204 566402609 174215014 11990890 637486560 356451793 448816728 310596040 800551457 638638031 352654534 588406000 76737542 303650869 342750922 435888826 135458852 720906737 98056874 241891922 162009438 586917480 456530624 70502719 196983452 66809544 910387484 424102794 208339271 20455345 340578551 317609896 556232760 333325722 85700154 253605142 879077820 250768289 485908777 726755150 767170562 950486268 805245447 451099879 868253765 549199337 794022157 420659908 879607625 158534861 650169383 179970283 479854307 602029721 610502534 880197574 773536458 802008934 373457083 847687508 699746556 69971799 197053085 923147229 856881694 969535329 620878686 33974070 78540495 250509049 886159145 176745275 321213211 524888280 583739981 622718492 913739414 35420699 246088566 528417427 358825412 270706679 378567471 566423227 560400603 469299024 501023315 872801131 542404193 877251198 88207709 617162460 662779222 881259314 934146991 946360828 296096231 734011700 268232663 332930598 649399511 457708766 23788169 416878942 62932223 106462565 324383530 203150630 462800052 681214292 638996299 6931118 169407924 791568222 311002642 526950397 494496052 775462441 312712502 849114656 797435722 917221657 504168933 186957972 595981034 148723991 638185695 671300878 883443620 752645704 887468743 671020372 923003584 679681084 826243748 543947386 30821527 915687724 600684826 425005724 335068881 602130394 359346460 991803660 247928262 665123116 736835376 19315544 74113347 833189936 745908392 826239478 985716011 104817070 147981572 642832448 745252949 358567039 774236272 504372877 428192870 610881990 128891111 78969615 992336262 582081702 364735607 536948096 254317854 447355131 942940778 813197186 245660674 360331205 602627655 584415659 444130533 505437357 327742608 424609224 112139618 528840818 456303001 743995590 812339235 259679776 604909070 714385929 789445971 642565202 877293249 455562182 506696388 735794659 517042050 835084823 978546597 5458743 71796957 692120932 776537414 844329478 482718368 723246344 551455852 442556550 664561027 659388350 589902925 238948749 801606291 263335041 475070457 540067802 679765360 174545678 305556451 579186285 975614985 195894586 217362940 517158326 742825073 189869091 793140011 903478257 382272887 141360783 170105146 985654254 815381363 766639986 15181427 301579911 702833557 850355631 737610491 380678851 970119871 579407760 564222870 893693732 226570530 23772921 102725323 724103189 691886483 793098805 226600031 262990909 762862604 792143164 698052221 371387408 963731786 31749351 337578678 662911336 806070800 639607221 539859532 747183186 990603001 647054168 129708072 544460043 365696480 816319854 785776591 928806847 805870693 649623810 397253249 923134635 622075743 349195747 934239682 18629093 27349224 293757594 343182524 861432622 801050699 431189816 209283769 715210260 559117405 509505189 301175029 288384621 680361066 401074389 11064997 367360063 727417508 707860508 516824045 382976557 485172266 528494670 645325838 150166637 992822687 290161409 311042200 558407596 723071675 200511325 61892923 706737907 450343802 339153653 738688335 645272414 789394754 677527850 816729171 414490813 793887450 525437962 189921550 33717436 176880860 716542104 790727106 21747065 446343834 410626385 564437598 930121273 332388703 584044269 62279817 657425093 304551923 616596899 173149378 984281336 216789628 569983769 95893308 238503513 821282465 998719461 793294750 671211391 100207461 650094271 296862202 631407555 808913512 7510149 239325890 163060180 657456810 818575025 395102094 891624700 170832117 368534129 819646957 415895256 69364966 95235160 821561311 38884040 401343095 390432757 981758854 660207847 132207354 49958615 787852916 720452142 979491024 977993656 968888044 977564748 653987857 613872202 304921837 828626595 110254658 149622699 705097369 431726501 239436789 185527018 254233524 687590723 826118828 466219615 201286896 151557334 760194351 816399732 284616005 950885169 199791764 726725092 161955059 252075305 472784294 818242938 893853359 662321261 78065061 396714375 829007959 206591722 225263663 262929849 107690475 857562946 631667898 28273170 217760892 291259059 217410380 52074859 403889265 590267455 351630336 30869524 638386200 743760781 105685806 805359721 864291223 222711972 127027803 386065980 14609280 522565996 119795759 794798689 383049758 632114024 651116647 809874053 701858696 251360343 301086726 17723973 679457851 782837087 952764951 277811982 448934780 315333979 203561988 683379883 587263254 589193990 485345437 406925997 311459394 825659951 94469257 972293736 644756258 604167473 584092086 330800986 145838560 245529532 92501904 967048790 218679604 344410723 135589339 38878321 746471257 263234141 129817354 467893181 407564888 526160702 84594584 863972179 231591370 888179754 225610051 422119859 473879270 414750679 203006110 708923083 531950421 268986550 405697019 345998357 52939125 818900512 537703703 842795853 312984275 533658610 361102750 809950825 566104601 151456120 80884785 532839489 568090073 702623475 885137938 942671353 882244928 865372446 23235628 385024564 189798668 194763121 394210753 13318764 875605728 85224627 976832256 176262638 853685040 671307555 680852772 729133603 595558010 950369335 106457360 795639169 209513951 637452717 768485075 438737074 999554321 819019784 801262804 12663876 445004003 501602315 522750322 789192650 832393339 138138390 257645016 766551411 279470116 624266812 759575096 635199977 16385666 497423071 368162978 15779470 715792860 200213621 128713160 874899432 128362300 440647553 175333952 395140976 892835467 392510923 129323715 763063726 782718764 15140565 715406293 763070256 583004247 89729947 91613693 922598339 912722660 823186052 419659660 213777790 676959869 132199540 333190008 658645815 970435754 190030512 579698420 715384471 164363842 993795095 380701704 250487365 98946524 203502182 648784765 6510722 763772484 928498847 185751934 979957188 454458058 713185381 862166469 191319686 785996621 283949296 997344918 561614945 823758227 330418053 750583457 484656323 721442574 60114955 857750134 599897678 419960118 54573143 719745894 472040030 918400767 565720115 679332493 83991439 767387148 720124503 756556893 274958049 641514468 745732233 55288918 3704193 641285457 895996385 890259078 860290942 961141921 792051228 19756259 993141193 398704973 381242501 67836016 614465053 675566169 926328972 931224243 76068774 925427858 362174695 324190960 27224790 941040205 373543898 924825110 603800072 762164602 863644667 62318072 741471663 315847871 405068088 737646302 146727115 732460466 231631014 736211540 115703492 220614126 441966412 718344101 702697514 274168367 462449770 346193453 909233919 602794948 153593880 999386002 300727529 708330716 14920738 531972656 253021984 341702110 77950006 371287629 755012481 691500266 200358307 660644165 597326813 3438495 615603208 757006698 678358874 503658151 953891292 992688547 147818221 100204524 971302146 419194625 228292672 658323940 411784571 139742439 180452685 91455227 527041483 955205140 136280384 152488541 559358286 578956827 770814919 762078894 982004166 625864737 395568051 910947070 550105735 363462169 680171287 11623098 790984913 328568953 921427300 362549359 416908090 285640611 629794262 233139510 987655624 135224252 116482518 138345813 268494601 726796319 33197685 582668215 667448997 539745875 109157403 673214676 322003380 947463622 993558696 30570132 841657884 770036131 290713084 196028201 353906904 979194634 374374213 862182004 194914983 916537213 1609849 892119136 149781263 213863880 962104644 350291265 165869298 135975052 967748528 877255703 893112762 873029287 592239298 487540731 272758809 906769665 638854737 737891204 143130952 29015983 359670262 235316582 338655746 207938985 880397744 704650360 936805450 572602909 755627966 12992733 987443703 262780572 376279651 561928411 521407822 792217404 874636679 799779702 333941451 396196857 264588397 91346883 405071039 555228569 945301481 427243091 564834680 909843286 747397713 884442342 989594065 261722403 637704756 914486959 917075375 217024574 89694486 115550368 553497718 501784912 385544630 159664399 507946835 596460415 629518748 989679439 139936597 321384401 917551095 442355438 132707941 497460368 916763980 535568250 710569116 549459745 856888760 20259759 832509193 346688635 926546492 226783963 326512262 644708242 153320959 105746674 718852274 16282911 850290243 369069239 23561648 572315307 169228095 736206205 865826338 52222605 579660860 773474905 512003704 842021118 895381155 965712779 653462237 845541130 207621714 366769029 458866306 626303555 217826014 884189382 504943034 785902747 228510100 790881548 832186439 12763441 295201265 813505506 361782628 71506824 346439077 827829618 493739738 653816201 871385442 318014313 888755680 123328488 888158779 123952763 891430633 709226580 134915212 337805163 778876353 912289269 803596762 515635716 527998936 75069368 726304297 6920109 485588038 856425672 187431472 115228651 610940529 195625547 839145106 192206147 787228931 760463979 156451885 247492696 86362697 88017981 167574741 415143579 432256138 161327613 459881438 125987329 118950122 139825351 40962009 665255722 322752949 480951350 202348318 465813306 715774718 269884430 638282268 724794532 42745559 407875526 68736245 836736078 659242695 87095448 499222821 862267459 426540680 954470637 820247183 864210389 826598836 759282274 837152132 145052032 423601745 46906350 871724488 879161996 223491218 455404657 404035377 964662966 793590150 161426423 769360239 268842245 2665848 903941051 235056188 497640453 229664753 319537587 199647436 697482819 44716847 727134708 763668961 904078740 587351993 98339122 50710239 21017796 159781635 534180337 193796001 184300316 275347688 369461083 70074183 713335609 283631476 209431461 220536196 142452074 234308373 873706673 571887839 738518398 265716425 809225679 219902124 292031629 190532368 743795608 474632004 394653867 914168500 744966981 381401410 676879663 880893293 114936197 210718753 151870189 235535599 52175991 669163062 474392549 834375327 4961641 423706006 278258337 328355643 403864237 356962969 614259379 402091920 926635672 341012619 519920026 183899383 235441346 906163386 143459135 644497332 782209786 658009867 730037393 39332913 914376653 972246234 148785130 436366529 180937413 845936408 632277552 427825606 35540200 322376084 743074731 762471966 407493959 830454430 839273124 654928449 404894199 165051849 954180835 503548753 510749259 847824062 405823687 736065105 685398877 509705126 546779113 989586315 470409484 159474904 959830184 578516919 901875341 848567356 242070509 901049166 658195633 795158620 910409025 491797488 27055968 658682386 247972097 226403523 262418283 965390604 829454415 608302484 904966337 228338667 999768193 508230753 219992643 296440035 989597264 433201040 685023325 927136400 110200769 987752475 771057482 661141373 663524161 948740791 51643367 996819881 253490823 990856590 105634804 429225899 602847427 809089157 671851638 928585152 945256476 162960702 833698655 741540378 712615366 348767977 41638832 568551536 485175829 439499151 890143715 269778486 888866530 349022828 17591339 419383466 875537696 938571831 458505438 842902212 224354610 351263593 604356601 898558414 581089723 360396674 188563795 435756176 424313280 29602544 329528947 953325706 677894063 638006313 823522072 164051374 829739448 213515194 434006071 119212683 276274274 33672491 513989763 67372428 207924511 618583525 86382815 706301206 962639501 311130172 685310023 752037792 72575714 540225793 742269939 304904776 557227056 938519487 448724876 404735391 496668281 607567209 531767143 812467406 573663720 96550505 955566128 965143664 169280498 97896681 488431567 885543027 376471259 739721612 68782159 812763407 328812313 420221020 36040532 716051577 164895818 516768105 554139099 153473666 27610578 349618991 186810556 714167729 917117935 579163130 290448874 203399946 561921954 517360680 178006517 518413136 106964896 874636778 117587439 138381801 389121408 364351140 722106787 353008179 810089275 119369184 625810252 271779077 219251070 554968177 722361908 476458920 243284115 767288107 111187060 13610991 706477061 582131968 602432774 322386819 519788535 243743369 967415467 852092052 651317494 479731175 199435609 924159388 622796138 146899693 577279965 403915616 27663298 439440789 606732252 695723162 605360370 344324112 429747651 879995763 308572997 427167804 743553636 73287355 475311796 298868920 524425197 715894302 174126391 571625229 889183511 937116917 691150105 119879394 97198774 944522829 49436359 230309663 168305160 407601679 933601441 573167087 536780088 339933364 391129602 567817804 694675980 167541779 257715206 43995965 114199639 147900967 230437494 478106393 432759168 860696524 348991352 646964947 179708990 799068559 112981295 34119841 500907777 163981122 309450001 910045190 973243284 335098838 877583542 590711751 992853133 430217384 312781605 993012364 226609525 430843090 566772679 664325534 952905509 355168521 749377173 529852332 278304372 62591151 597152606 801307301 217707936 420358693 269966190 386062293 65839841 129056793 397481087 823045186 446452795 214632176 128125237 320587883 143142908 989801836 121723075 672987572 729469476 767238693 387271116 40269011 880724613 832090504 814458886 884190916 719791141 147872418 546915423 749369530 222025852 261822878 663566406 859714530 18839946 738506843 429358032 551016175 454265604 198723344 915328786 909760 780451049 590483769 359300490 845796297 990430771 526975059 897056771 226156909 319781710 597482984 66126815 303613733 459803443 429271646 332408677 795229202 589746663 517619373 336169153 947361614 846507800 993773198 59991562 973040722 895033752 797058898 191778417 802254279 136079199 912624613 339880638 401601886 950550989 684198998 488745144 454870686 582093230 384235061 600329815 296591498 42785420 639393454 701353457 844147121 32941840 446889077 513743710 969254160 634132870 6004213 263089109 105252163 818921593 597725806 935481004 199321771 671970759 368756312 193761336 443574709 489434357 137342011 666171586 514819167 78035534 923249741 938227854 135453157 516070767 255429882 138349247 962762547 667501214 993677408 770048284 834891383 498188822 311322383 154087344 390098618 722064272 776228689 569738270 769108245 44155121 6468926 223103172 361873000 454807518 843004611 382282042 732959279 735932597 74762237 89929250 251500263 980514881 640845355 86745333 852074904 832572356 248328701 836684049 805522223 304619258 112938225 399153098 14389255 271436193 811299041 845193286 28881209 260112374 455250058 44676833 959861799 161752404 165117199 682343488 340559672 417316633 148073393 656800232 522905650 601691658 366751414 815391141 852768879 314314745 537540396 281637676 522674748 336362089 286739582 264359119 228737937 420140899 452499745 61677924 185382425 14713130 689429456 676696510 451725872 735124904 150346347 22777418 544692136 795817877 338772729 821587340 83240950 831816782 250415756 277515752 21741682 847001959 597480554 792092751 263445124 100544466 155562114 508809155 296645359 851741027 40408638 309830502 912081988 728368735 259907814 151623920 982472281 423766534 732636237 706574600 626600305 322110282 893665232 262526430 399652192 365803588 357971710 709554198 952074870 828353256 665610771 169420658 172381545 977257785 612179455 736763863 692689503 350831135 628204155 372986721 948333222 87575552 864458791 633674833 48101455 634520005 300884693 617015357 446651076 62867257 990907382 374413890 154904546 303201990 476392062 108676649 818938621 117887898 712086009 617635850 470648427 40063993 870990478 623351714 852980792 575921666 820200508 247553381 480409411 209467219 63712932 173274766 984364215 216057835 30209275 930587288 64733244 595452166 156127778 20544956 708598578 143386662 487741960 409156622 137519138 779169753 550433523 234625204 265087587 950483601 23627987 846101042 29348106 889627380 552555563 46830224 335604956 327676472 114766902 698102971 111160223 253250302 125752786 869291862 851859523 12049151 612061366 386006070 164659538 749760738 657666565 43406405 332454386 474065543 154732848 665568711 242380866 893346391 142975876 985723720 739360259 322321920 306534785 32721343 155727227 883900371 458564642 981234638 330329187 924731128 709714392 618282474 780344735 222285369 387349666 873589395 915337997 417906985 712582235 96704317 18313056 354877424 37688420 793111545 201621103 2441915 573479707 220527483 401561001 880323290 429818349 620394652 792303269 166954375 332000124 234532651 232338610 684198711 73209183 328750165 11970363 662238369 200526002 6190135 895864688 428652965 750773480 195526122 538858365 924628392 641581361 536695675 126344327 157393608 776616282 404839088 800662418 40270819 173668321 513533726 743891127 247225543 191875431 586021405 59145179 752449313 33275439 828951271 31760220 899760487 844844599 256474295 510249967 646639145 775706713 379089671 438558223 758286386 911031936 893073730 425134176 174627310 183176105 474525833 50159268 777455569 837638733 505781792 889527477 702645380 17435455 414258626 355607978 584810159 102852667 19965583 565800114 424478240 46769990 4843859 782809106 233002337 500199765 326787448 792224854 706051332 34895735 641704199 295215908 674465224 643904978 724496762 952909425 17242722 445031293 913052282 541315314 781934498 448031543 864421641 284216789 481574791 937586466 610720516 370674868 459170337 59203199 8197284 569627224 294561400 510516445 51660578 17810911 767408687 868263286 933372692 322113606 214016405 916857607 414910085 905147121 61721125 153706794 238428919 462092094 900579568 91052858 772291054 738253063 529641994 833053133 743312512 536859035 408398565 971281323 489936604 869770029 441226499 75471486 752465950 532029719 610629459 643727947 755393197 124685285 548704778 395431944 699482207 641399079 315861373 846387673 925327312 900977062 726038212 198891383 773408915 68568164 92544805 917741544 250620747 976172632 946388582 914354961 515294499 550427290 146104181 452667511 611586715 183184765 60711996 514325511 666974690 917909435 384541561 835823686 155400853 198751553 469183261 945130548 780011326 585419959 213383650 133526887 786436782 322187820 679298665 214284014 425526864 32095898 604089898 569624490 467162287 627547914 38333700 698850181 541994653 892389166 156594063 584702331 937287211 291432793 192666074 917574523 511256897 613313038 59299194 470971707 916542605 48519869 908904232 737175263 209258191 677270387 780425236 236382134 424040178 66281325 854029488 931448174 939692314 899476072 919716830 625143118 421163368 394667499 354334174 585651782 808184930 647465958 654308495 805248903 998194390 187620780 99482381 882934016 686070081 539781963 309465565 996588203 981067970 72886624 759719398 766546389 67891236 518454330 970877704 574133334 246085106 654852374 658862392 320191538 496162067 56799266 697609709 369142961 176693415 50720915 726697710 351204488 277822735 163934764 724758725 581328066 816894149 422359163 296656354 423118411 859783580 150376230 415754159 440217460 669234024 969901723 317562571 794359542 33355898 472405583 254648425 583639223 669846646 2639912 158522699 481204286 857765674 896073742 669836528 211866068 254234485 251041078 483831070 133747630 504287314 273903572 149944894 461820715 60838781 867128662 158995202 327841373 950645436 682644858 201662622 122471536 359498475 743874311 394631825 713013787 662976380 710267786 624523035 714662472 866839958 297064127 80222992 682811760 196874981 680512519 353116138 267194985 295708742 928349866 108843770 568359683 762478708 781008788 930956722 149928084 387215204 896339150 189540669 461514209 485744435 32608302 165259121 758299253 781218557 246090158 147450976 948364942 111638028 907210585 137249355 610317192 972231781 885976345 124425100 779410147 358846184 288479041 82051912 924620285 495310450 910613314 539531529 286432524 478406705 532166202 952782061 176742034 728088422 379723159 611288157 810990916 667472653 729030721 832247766 476248824 260962969 435517928 966244120 751033373 696054539 11062367 180473193 383973317 127028768 79462931 600415198 265339092 9078874 67357535 726947404 237347950 7831551 765528841 846176182 239577975 519425595 408409119 742208438 776365753 255552044 9301870 293298871 940226892 611904480 1011753 130256883 670505792 214049437 604018960 417087641 818172298 616150685 730685192 46728611 845838790 301000889 636687185 263033675 573091734 999875379 192417679 393485600 869861491 912283443 311150510 610381617 616514329 852054355 871614649 701918481 493815310 124971187 428184314 342637483 374806295 153768776 919794676 648622447 607198820 227155940 505939405 29414313 659876497 18671541 574771553 998924676 11673361 991336199 771689464 312227575 117885964 136907619 961837254 600390785 154966353 709265511 824656602 449456026 662217781 248035638 955417005 998135765 172206055 819576560 666075506 478625779 119234554 728656136 531138838 640837578 451052501 929008352 726223445 929297148 717537276 494108749 45453815 973074018 1938298 573985784 649096915 915033177 794127562 193886757 60346858 702080586 39568071 827208962 923774005 149569370 838439601 835337256 997087658 181030663 856178353 698766555 95956826 251369846 856256803 567398743 503461572 222325934 846542108 192494184 887184847 628747131 518221243 149998404 834478461 929280427 851488998 962591491 350949406 132088516 848308382 244797878 128383939 250537519 929308529 413769863 922740816 595894603 895597701 256469163 364175264 723095256 405178129 732837699 680647890 410813419 13094295 306492359 725882414 408554647 426847159 999840142 152043411 696220046 309581727 883754315 627690538 880087476 770056573 564611384 574598653 101354683 544805567 132148374 415623916 835193925 425086593 523614684 254057134 153019464 707933991 825725846 583876574 703106156 815541317 69841111 180451160 113144932 501751169 516929008 735612865 417756144 635476208 709837455 155447150 716674788 928296267 131441968 320084164 507633731 747443577 729604718 716158318 403729436 210100176 747228822 1629395 246451559 148072845 561906438 619055546 93983862 117148147 81519454 286028282 325793808 339069984 145319940 610151534 723554134 824431967 998419025 761965501 135751966 552461142 760623671 707816409 417190873 306509096 879171060 676041762 564677994 313643512 382739606 811575665 36608748 698635583 911869123 834664511 805669873 873419005 356574204 57413736 504328061 454521088 18983055 423503586 475280497 525011395 538287607 705065043 406567724 582876381 456501939 573429675 981451120 798249943 732924688 88557198 924639364 584638643 633867512 996039935 963427814 472374442 317266962 911401584 944141903 831704943 253337717 726838599 922501440 424122707 441062112 128671247 686080594 395151496 628811010 107732340 182989274 548592045 594710850 507810250 60482118 805908301 272342282 573159222 787844768 708239276 610619487 826209405 147094175 126819654 904031614 224126947 671377087 287957132 159569965 720789436 29307976 46289549 172171688 228808347 874762431 552214002 595315134 91265762 790928018 102912403 448078129 239967407 268935061 976249746 652281997 619397149 735876783 979985870 994919837 250039055 657985184 993362888 948204508 65498196 105092421 157782896 199951472 797851791 154143472 7913088 591829734 2648347 95947556 190879527 687461258 472434376 401606545 526908518 648047907 984785909 163894714 151532302 993307217 685931591 478751397 413295463 551379579 945603592 882810700 574836760 124199225 187748874 282025910 746830287 814733317 907420862 767716622 943791979 589990489 691942391 300473087 626506003 677131073 73589824 823799831 399693479 504294369 407922500 690006760 399159419 135763602 213466167 741456000 706630465 850956363 108574426 872031981 806360135 538749206 619890331 141298402 278527354 969318652 565392078 345475984 713293800 854295770 344177167 323037712 376594796 894303734 963486913 916986461 297259826 888316676 451450390 812878630 364273512 237057182 68455764 509098937 857277770 766717096 758194887 330356465 972357693 576719021 749649580 885693964 459985839 506729377 340324996 407259174 783680018 146544416 482066625 983507972 425720069 236290895 400712343 261567234 810035036 703484581 126675084 945000641 450989822 90456020 257241379 24278369 358323533 573431706 636206072 890089357 799920548 134286281 944818127 661928078 443557954 271952632 61990840 249978776 147027246 553214044 447871620 897661575 36613311 417556735 133809689 343813548 738467192 202595599 820549152 310486119 839275862 245620201 326661447 304677631 618793477 966385278 380445182 320565470 902801348 15876834 583611768 483988797 623949782 192187170 455259761 63250050 477956181 457429765 132617024 832591362 676167341 641893069 398330961 781628731 229393039 853139597 23198565 359453578 721381451 159645353 63012947 521633190 401148917 4396097 649391245 901065941 682543628 272317434 413256005 53994912 842107557 874893804 771795086 209736799 823872334 658464570 212169077 968849377 182098868 546393957 167601290 487930143 664020752 748070224 457258844 957866648 987500237 820431880 458289571 608998035 511741932 449033079 212225105 596219788 398172925 809057502 932714348 784984767 482474179 564468863 766368431 377860019 593995125 478178395 441222474 674715699 935787688 665504506 349740355 783204788 327568931 548086891 186258308 36127717 267557269 119237578 761789959 633340353 866537815 306676216 528673362 73055557 693764077 639341061 167051645 362573090 381795477 473379778 855052662 739701293 988446829 373260532 888425799 973148091 70492322 873465801 824949316 254154489 983048087 708194289 649365449 390443264 559429746 673556014 214926496 154785129 818227388 444337445 472825490 338681192 411320880 132190561 998185149 149521862 377075110 82435694 528850109 454082848 699830288 886640332 70004461 857641867 353004386 353778650 563905323 732572865 239817465 751719914 623191450 990316293 188983609 145235165 952304613 276858176 464203246 776147886 154592559 252342517 560047197 198557780 851222174 313098553 271044477 235023256 599240983 110526709 228713217 230077942 846647008 323132824 368081041 659502303 862143574 521604028 881581445 929928787 987016075 604728421 17579402 203882953 838099868 345913012 788037911 50178618 309126259 219456211 214000673 197792132 807546273 187745285 626515715 10744279 820915632 540665478 162067204 523791020 221229314 29249896 231109169 926344971 691262982 33946608 915452139 921427125 984609831 204816233 783415760 821019651 83166410 132284054 783381609 121622874 16469117 905267777 804191276 423083848 904212659 499972041 618270736 887649648 744233561 441246865 770371011 930944693 492163830 134474072 790739920 48580878 736571843 476844917 916661289 985296033 426207522 767882093 890588896 504992020 886852582 475781670 244741494 783547912 281079876 992655056 773871554 108736064 689807973 219632247 710485123 606499832 721066323 563357774 85168668 121955639 274111233 857572181 94342751 840479288 897119321 755096081 844806799 580080281 583417203 30055626 58649740 914049818 272669382 613751139 317216241 358428722 419992692 607067552 83581678 615256731 997145559 803763896 141883462 368047616 236548843 298490948 46313304 564422952 367361224 187677012 507472057 670150228 710442954 477777254 89495738 573210240 483084125 801281718 112388338 414129437 991366866 66558094 511704597 863498482 981763050 341245566 830130722 466349561 8033313 657032554 544965700 620444876 713008795 111169430 617965543 748803480 966426986 176748163 358031995 393415082 746668292 209654761 525930001 830821765 383466920 877215573 102093562 833888432 533275171 82882341 291023397 203283511 448997356 56759362 802311434 123437626 231976475 716238042 579003998 33028451 319265773 529163564 202871286 76981019 500190419 647333257 61575288 996904168 538384694 172784024 988599518 435823335 233108956 339331852 701101121 779210655 145562100 839886050 686901544 764393726 317150118 168187882 88456122 659358197 79638178 744289824 868725114 179477513 680196969 287530091 340944305 267849191 431569270 917718981 83514034 312700809 816879134 933092442 706732864 34247494 842773778 269758184 168905411 734442854 406664612 779103946 747892371 732092639 373894241 734604943 99591483 962734169 157130526 339927510 760829289 859626657 11546326 81364326 171546375 72066915 330425176 76878500 218747001 143206234 396942177 873542253 86588472 581698643 962662393 483219070 394214378 499679036 59863620 343953482 31272853 136681916 94870279 964332418 547801270 836374385 327435220 409987667 632214148 196918881 524949640 800597383 350434949 621994223 142530644 847864345 223786011 343797464 38963597 530244383 427377538 534704795 290999125 633898155 866813069 887286915 340791894 583079016 730251117 741603768 10596813 717237930 725826664 154746142 916177351 86153664 567348851 716893222 651273485 302619174 899019474 664111100 730876548 781692635 43759201 607583680 476628625 929182664 552768529 975878155 559891223 733968628 277763970 552654790 129714289 373340294 899584606 813733606 242584663 984024630 407030516 407135553 884500155 973131108 998269341 637342965 491877699 354362899 265596603 974439032 257434026 157085839 410549892 540307975 307455023 256744806 166378988 871417500 238580166 768380661 960496710 995208671 986236334 102401740 183260171 501950282 804822152 73075955 896268443 850689336 403049508 674754108 877583015 720192444 561100844 419084540 23806554 250667960 903199473 321601596 33664520 508675205 922108372 247977518 832431973 276373955 843051910 285019564 807588072 878904200 169799844 799541911 80285295 464375165 94053420 661426359 672716647 80652071 521130515 99129872 726839439 820271940 503008464 339020194 660893446 684170373 470521649 633271913 330074398 541282202 841415958 345103796 224124671 867206082 118044914 626156074 258346888 400598744 805984622 349656024 304557727 110907970 481362347 723072811 520548915 465752845 525126978 581641161 637974599 356304949 458805130 207446363 618398713 354850752 202607731 422796544 418149350 476623703 436645778 998642778 279679898 543100841 941989941 948877625 873017004 119026800 96357291 869531556 493662123 111216596 501527990 559839674 820408389 936209535 486475258 786369027 773556299 425944173 228621473 381942273 770985265 913259202 439890204 125834946 676700383 844983318 523377944 148285706 58434151 178282895 827550122 571468090 559377636 537710192 361875187 234088933 452623127 709513090 953563728 22067167 478231282 981860239 485581531 983278332 93910173 820992911 544104182 17336595 633948702 178386165 233883347 291533710 364335160 242165917 917960616 167503304 712329042 639734116 697830738 396743099 80222218 263667985 732514231 583966836 777557447 410511659 802319076 459226249 440185782 898188294 194984427 861094467 507856319 565484802 390088098 790346863 834712388 781051180 670132010 645937717 152890313 271031951 181545629 272804604 356437538 531787890 303383229 541056639 325699782 408367043 857651551 812034653 129969076 997751 861321432 306863548 903964463 381006784 809662203 292851648 665201180 890216584 611711184 42287672 268043467 909395145 171390787 274114568 162306025 27208462 598395916 828860975 149715836 848986013 42771419 265845770 627889855 32018489 853441513 511212704 755903466 684929676 794797449 72514890 849426047 897247510 338243313 968531173 533967400 222193446 546152106 860523083 142690301 537037334 595387960 718029602 484015800 406353330 568754498 314626582 13113659 369166253 119216406 478624306 824585245 706419881 636408495 380588146 372223205 347297380 453913490 109169820 581844701 553511993 263205057 268013084 615264521 753810401 491372947 517571324 766511396 396662202 281259404 628295838 80187891 512044552 47413274 600504098 984171982 876208864 230239289 125572661 32770151 828904847 793120157 14058287 562729526 379005921 895234601 152688073 271704338 26896007 12477662 90018579 800095720 676109016 60844329 140577787 737065745 305857659 358399675 282693218 533510820 269666438 842954822 954353503 420155286 855084346 360796285 595943567 642406340 965072445 549745862 444458840 76841202 124568919 8244253 442451269 226363750 383464743 354931085 729221166 786473214 241424396 186484292 818203832 861716098 997291176 39668587 194111148 17950957 714476418 588082236 830336438 391552441 27811602 632802124 49130292 889984793 45641402 988087964 563588755 23336992 518733992 986932475 118150026 49857264 752063600 411311015 460560456 741897696 455574694 70084737 409085213 243920816 918257793 619025921 706157432 265065575 488314846 686507718 133271589 572113442 971726616 370507895 48722651 516786512 615204370 586118403 145719975 773074063 818521077 433753581 446768669 3613874 445024481 555389802 238888432 288948784 588600487 258293512 953133203 127618102 78255855 364317111 632499017 577853204 634851936 135992009 901246993 915140201 723369776 761078290 231086647 695778742 623161368 440915642 966796934 827966315 359372917 707134081 723741930 698024324 132471743 341237452 295341866 396535365 291998592 735836117 86074137 110655183 328248321 654598312 663628470 303815306 871461588 913667687 737028899 715059612 574758598 664437091 551569366 342306826 760945314 834538987 237921759 984873007 103726774 274319487 167666729 603113666 599925270 882794004 405296089 339467230 292188694 355245326 918712400 208725717 599943705 74688660 358200098 530904922 66544826 169824976 678783424 638573658 987188651 42112231 120048412 195213599 607533725 634943426 97147496 183186400 690120544 208674288 43695026 823916701 963468957 163693326 936455242 893649660 67123645 605361214 597592743 761846639 149201297 987493144 376637531 725464053 9281339 272060269 217909945 582564334 681605575 84444736 534305668 532389661 164702165 392180764 955396644 377771215 73674089 522566202 571940767 260473663 689538549 53945652 304586852 163880870 910581253 695044223 309611176 398830465 842737286 268341050 454561433 345014894 259134089 799906847 306825670 192995371 731467530 631187998 63977846 929707051 4467230 433075046 688195142 287054268 410332583 748787517 972830881 357303781 736970744 575273050 940372448 102847563 265114489 699739156 692543175 363721099 476206517 259609687 14157030 996166089 375161244 794801394 85082392 592066728 888400756 933656266 845678590 269847019 892664384 979170727 928662146 980060392 131890752 639962414 366629932 817781720 132711158 413495595 77410016 496102841 979808217 624030640 43678361 845547117 850109012 504709549 142229372 57880600 636294 429338199 795981004 325693553 920082775 980231592 754882741 873542480 434388779 232786653 728850660 768301891 846974968 186485623 738374329 405752878 747056102 673972200 771299776 578759095 663419552 107911999 187592087 896474110 807520397 929946227 425392374 435659883 217850653 958903340 143728456 886643767 177677015 355349756 821890206 859794795 267237436 7751412 779435210 275577398 129031793 638018445 756733110 616546757 429824729 930453995 67291671 956655584 658541684 326675704 405500528 255664270 633116226 780695363 913913681 665389251 739843821 24212024 678023698 431102610 174910623 357438717 609616545 298466018 898548639 950187331 695067893 270192299 313417937 44674842 326847579 314578625 22945324 871980894 765535997 165751662 718004168 914426713 705852743 373277140 614965278 429740232 484950147 776478663 85536491 111642093 777015853 209226113 747053121 715726289 325968750 250819287 524585913 404782858 292452513 513290484 409796901 74846197 99805031 829797681 942141326 99873150 513528988 764686557 662276738 615546621 581545283 37509383 671677115 202201999 200369271 152735661 414770959 365706573 77176355 652154540 306132272 617904091 545707214 315777800 969836527 437888926 993394257 739086322 843425066 125366436 748037158 430805694 908721119 890188320 943558129 678750838 856952516 924480975 712541496 259484737 762177636 572894340 595593303 838916323 623890544 883488368 272027431 343223284 69270406 655100539 767050362 10314045 994340024 26776354 412538753 824120249 334029459 572483488 327928514 116037175 975347337 421490254 567220669 899876567 817746656 653038735 28875161 243711681 710971833 856819727 243294920 519422932 776825367 588018772 563344670 326995105 744555630 801029511 463485414 159467716 330288306 778356020 918244104 762751051 354157206 287317117 447011623 594574813 461528727 827725638 367747915 345723458 712595559 321083103 494290075 899263292 484611039 577609928 250776646 267409878 479628030 509975032 783452922 350845708 798444071 909847263 423548399 708647076 404673040 616977285 908090262 602683848 240444304 347549984 826366576 529657729 81308910 126350240 936811402 951882992 839695306 294733245 776133803 979187602 691586189 150818765 567567187 733289493 571481157 969133789 333860980 949891410 849358107 630652914 148519085 998835073 434456148 249978313 215497167 444293869 596344209 930020475 362121120 865165251 973828685 490800376 568382589 193271386 9324427 952734888 302648768 915471940 981698312 466315716 109330834 958623985 78680530 921231947 953509994 210886338 918475127 989023177 705584710 933771258 260368048 438979813 796027323 133242067 459129249 193409595 380308452 280916292 36219051 999713544 457081326 165803789 428572569 160242132 988286587 452167033 723726391 398638353 78751129 740798907 708635518 960075692 73140818 431592717 495632171 152559089 408144803 853003756 851134670 354083576 791368356 571188482 830785765 504023789 17796371 66074734 765390036 872244975 535834385 439949565 545408021 883427775 432176606 259001651 565510150 400989894 416689821 442750122 696053764 187958216 471109726 873211354 906533021 196033244 637373656 243607546 921691257 759533510 383903044 614229680 647197557 587683352 31228789 806847868 387646025 78141543 140233601 380611492 173116213 708603321 466339068 776967662 533777698 5797398 887457498 698170164 677740761 802777820 642978371 457356451 984460864 265096287 946744839 87054878 438611866 133328544 34640755 632600538 23188289 328853398 132675947 643658694 63115134 993588619 653574816 516001963 557363766 501125890 733503249 122443257 910792058 964664865 597978655 156320000 906488548 63370037 679873851 664649450 480354785 59658946 900484554 492773922 329481824 394824133 597134304 267832508 124862325 684910226 553604215 342640135 720966653 368825243 128537932 377245830 389450593 253180892 202850257 722935504 13614246 42007683 456020937 174968188 240908124 137137826 403736028 195340295 678771082 919297697 179682694 652463522 424456067 925270566 896023954 960040922 854225213 32049069 426670497 765978210 804484118 108598182 337354918 137764656 626653283 394527122 847268304 35105312 847032479 771193994 400634876 239227593 147731901 566765642 466966870 498845100 598819208 475586286 99548295 561327086 614257527 13161115 483410684 538805083 764506794 456684463 22107635 844393108 70701054 783365203 685378087 792467173 336357384 362240699 264624557 480247526 227805774 341176269 427680596 190703497 226579939 644670300 817683205 956717515 778911543 118777863 790231537 822738157 251667552 807407998 928578693 694792631 934034288 984648223 456707640 508705366 447294972 230886739 204351440 196631626 461643142 871506451 510635926 925213912 480085131 987387366 503783662 983452339 667005735 148757823 817586267 406041846 641741445 632750880 143105219 393393008 982926076 938933084 783494501 553149919 362796296 872044768 955466639 49056055 899059333 767484193 549904167 142761464 991455936 330584212 296175182 233069299 750369899 548354518 614924953 783736996 682611350 990983697 879966156 509513061 415050848 223758477 158165964 256950194 402693733 881187158 534012372 137020637 10211239 420137326 868992667 313681432 504216256 335272585 270236983 662818466 110072656 981682834 383840549 676047476 660299100 101561548 156422447 679036487 439007126 266217760 395467417 966012505 953718973 220786897 385669977 486279524 313895069 802428969 228385129 171361384 722288724 239000976 234070538 271910314 66985574 321954608 904807846 565677045 19834976 934018120 709997925 819759474 14942392 472073874 895723131 962500444 761906166 998915251 37447304 520353362 176399005 248467727 31528536 713996689 245928393 625846694 836962935 597335409 544720580 477549253 34077120 955240518 544436124 674252302 298724359 480651254 390121034 524570873 961281960 510700984 133046385 773037557 523542142 996064278 851454149 124034923 965414238 637538734 401806140 415248416 227529794 591660473 824940680 35477349 556497842 818953530 585113132 952765711 962834790 848869844 510153131 619139048 57927210 43277496 973951743 754845406 192979382 314396090 659231424 994706092 343159683 339253658 336599476 87648120 834878818 928507262 243328352 416568074 62104595 899162316 888378136 93285693 335810916 640970102 720462709 443897379 377671379 678281550 501035259 638932137 216430703 405542219 83573211 359713302 612644164 343653760 361643161 854671781 84849056 891011172 611616975 702645332 294781962 770954334 150563705 824476437 332500625 862157306 891541609 939528389 944470603 766611382 749866860 585652545 550581530 148605953 469905911 664486346 767029316 846658999 92927549 209759957 718548823 443700144 707310902 284485504 296605006 358630954 404259110 223640686 564232596 421875094 315056701 465905505 244293616 936061346 970468179 687557476 138641670 34389649 132852522 834552709 434687034 132008557 140765503 400718039 711106406 397485439 919469411 182534300 310597742 130625888 877628899 990712115 393637795 937783915 945956354 340364535 887359070 838019705 142572686 442128548 119035337 538230838 122176881 540844859 694778706 81085105 365591131 843244498 259292725 712159834 728615061 911375591 260642063 616288079 892960773 437166871 184893260 642617245 107843983 865215875 9030886 552406207 330838491 284720277 845147456 209269152 339472471 319971845 600020263 576268352 652429563 158079499 971601659 244957352 878655632 333687879 595342746 358625473 144947538 776422809 325268876 362368736 197876658 252137472 321949023 528831888 263578251 252633307 728068260 554497699 718624027 591963384 173570137 414513610 501510254 687709863 179014841 577054241 861738716 579064596 184253651 198295188 438433467 494018487 952101489 924551969 369458148 797298964 642326416 371721622 381588918 362742078 633094572 920022571 439417476 620012153 454214244 380660670 767196987 914394648 341892920 466413707 231434069 366345652 477646415 266068032 122428977 577450562 305673203 439447500 437401978 769446182 543557970 199553748 983390072 279733780 938879103 898901200 405150065 455843898 120643618 718171506 674307601 584132120 654662923 256111526 925753519 592704000 994258416 322086424 221125046 707645912 92495291 530463836 905519941 734931330 492961353 225272022 508121563 870378758 118550705 782343456 449909710 330304633 368404767 884245446 518401754 571769020 777663239 174269804 833530640 156461058 16438160 446977643 30140451 180099697 327043795 124722654 768735293 33143645 895154011 144636592 800368877 99777367 19384870 199702153 824866508 742153467 972631564 877472395 625711030 213258117 893048566 156192227 504692505 181529652 452807630 648577568 117499225 473623386 803535862 864692372 313842734 170253572 918326361 88354853 306793095 558371533 779302097 617546851 680021063 862281484 906711593 302204160 403933713 326830677 81484819 758651521 763491121 744656168 367325495 605136718 771238061 701854476 569386658 266185979 599339566 481054696 920011735 270396961 683655667 358637715 808084143 688658989 484645160 860636565 445034129 338833519 8350885 336392400 278990823 683887924 214250518 455695743 895835745 845067937 320123464 320622504 15955325 4132007 578362384 87775591 72803868 687723316 832511145 621512066 64440894 324788367 787305498 468302640 327649777 493946104 33713079 448758809 970322643 332765598 831759201 11684166 694648714 44520579 959263923 970619829 518514479 7591529 588737657 222572110 591472242 150358217 588513538 829308346 328492294 389651076 395401568 128967036 808724580 189098460 328399945 97035976 727519416 770217128 315626626 559593975 128529440 63109451 852804259 324142027 112294800 699315629 813513878 362966858 920028092 172156082 259972691 180621736 532049303 658683298 37965588 581224377 629012693 527438647 503742316 682676917 763229982 583923564 391132033 950151211 800457872 400718492 724755821 606530753 699536340 2432783 98464370 110110454 458173950 180921961 338778599 677335505 985843815 914590435 170713334 782739457 104074654 280157644 549138563 331343771 367026675 316210603 490813288 212032837 723696525 697558257 807761197 857422649 170889525 933419046 452493340 228510764 940367853 861915282 596054650 546991224 570976979 124949893 76579720 592388462 170463956 274203810 539631298 664366118 617390647 819207792 917670574 212627168 161960763 628028876 205980341 339835196 338978352 186141751 165873382 1157216 812239995 81173045 217423081 167593954 825300749 253674399 789974346 896610029 189151639 62551215 523773613 557480290 604165143 225476936 629004551 565946789 958088727 160808118 403112548 647941254 720606819 498683337 630767389 659098593 887352122 337826391 826765534 397099400 861952602 471894628 644897483 414317995 628607091 784061147 927239570 541345608 701368260 472890775 946949309 198070401 593247060 415885413 877911868 246214567 114274958 797770826 491154561 527767503 701240971 307986089 619709690 408422052 45586596 808104641 505634807 425150240 921138879 626075312 365944120 767591374 774005339 692708900 13498939 464922080 88739875 897790380 471666803 926884005 673070324 62047477 650893527 884805251 659237439 79118417 789286506 286235189 596964613 623113227 955876524 721805585 505650223 594962421 75514553 495550266 718611595 944571672 487464885 361774984 308922779 499563 78997158 316420097 573093969 991004659 142187537 254044788 90031137 181425163 928526531 324860070 806062963 58088649 633117316 662066087 145152039 626217593 649096914 401144672 899282167 656360163 14469486 181827676 686476391 524723392 449989899 544224653 585857387 218239845 886578733 148411720 993191271 616092643 686239178 639774415 752782689 563993684 162617996 919601183 93652156 916916752 462241743 463765568 599195032 249053846 121415446 528862044 772397798 913031748 305304140 502845711 908426082 377421750 304610488 143104894 425573213 262352708 491563076 915860581 860515143 308096643 970279798 585401191 752216118 807683613 62843112 550500539 363678599 179873913 638147616 416071928 828102907 795983935 595890856 940003017 742509624 196354700 389459758 886650558 400401689 12695338 25646469 630812207 426858193 860448303 358520261 651810011 169358721 352900293 555490446 440259001 33612070 801331817 397286872 951946060 94190036 168487594 250267383 322467025 977049369 288054779 988113198 669643701 151858572 995052348 317682189 838823431 567883140 886605534 630768200 39724571 656227604 144763397 914444494 901926193 280140913 93760943 830119644 876192058 698756890 128677028 935476067 766324167 428586262 52935200 184330690 231075880 694462495 638057825 869444730 983437920 95842203 971994727 183965394 680893789 92681158 451975082 701019726 307682214 779028750 197865175 168909593 194810475 978036157 602237822 171245290 644394977 236872571 351463919 406290325 799898329 414733958 565406107 239404315 466965595 584203191 947384240 834381014 359405967 94527010 432557220 289425197 90210396 101630757 50441390 307414392 616635886 94449287 395969719 667925476 457517871 957787765 102212348 672683208 335205361 49602230 607565420 517763965 155112805 779805699 273752201 812450054 342702402 398690448 546277085 908327909 489140343 105497831 150590537 14381113 418606198 649505636 491170261 999288772 375292025 765255770 798881745 387777788 978363521 994010882 534047305 418523655 534100553 192929512 983682724 974051108 986969054 21792227 431742746 90298791 918305433 283503642 415994076 575278332 936942271 303580627 607350088 478497787 484305676 344021297 964121772 383280903 546597186 822972979 169148309 137711167 479003888 645446549 610575708 956800789 447454543 415425421 683258400 708273071 966171726 382637296 537542905 890740941 344691723 906321213 57388613 429728227 674412021 701000776 970944017 524492526 89036442 73163619 992165355 883314393 928534035 24214483 818836994 89992452 695742437 708471680 100234208 911357480 652306958 507046235 458371807 613839380 24937421 334091558 156985553 788212320 811087380 920817814 911730746 414768771 269800110 203213696 487097567 127573654 231814576 410671730 672825571 527849283 980591591 982024626 421307866 648911165 938683231 760061678 156354205 79624282 691298230 682926064 589642401 389620234 921516113 98796386 605377470 320222819 197700645 369426286 641485490 82097393 643728417 877526162 164718339 164870194 807119733 95032572 699435368 559494653 355479761 828824563 454598294 676692381 244057611 239229786 632314030 890475526 2226223 55071271 831839069 717837631 184713887 579531276 958460342 159035641 117068581 901555820 869815533 848690841 45364195 507761068 998612559 374764926 830995675 709596516 823128639 152516922 19102507 317477505 943054985 765563083 23512474 899809157 927812567 212557303 857067782 326311555 974999514 152848227 389620185 379177429 560730626 641396244 874568171 198012936 498742165 217874342 479706106 500842976 115515733 729716279 493677963 428024576 383641307 472070409 488582737 181871791 587954005 176164202 765499456 705209004 836377581 151572740 724708739 542161472 468111481 829567857 114228773 825258427 568790031 626605349 297901189 244269102 721783437 595998947 489830210 373234982 92122454 624522404 43646646 592962313 522924349 693829163 739085786 159196148 30192609 599553199 479488692 232041616 610592923 197312701 298318739 914039487 297914696 106378811 652916044 630509782 451578444 661219140 213694818 872807134 102402587 538967234 880251435 548859046 462104244 115996002 532450009 835080961 410151332 727084902 582097715 438334393 38790459 172201714 560867613 528352696 913723848 588928958 296298691 821785702 774620555 718826579 590681507 20103912 589717617 305424494 801374285 709681215 130646663 839404381 237355075 128817553 178730577 352858594 830702182 315891801 923539586 89420422 364217037 139973390 68948786 291670901 346379796 669507161 671795513 545865739 503866339 398871758 426881265 102638160 116311961 767469680 322092526 703363067 33938039 19264983 338941805 599370827 907976011 446024337 464645762 371349055 961089296 659763257 953109284 582134749 885670052 905319077 377111330 590419203 99762038 564603987 557092680 679419553 115210320 44300487 517744110 34311575 6316530 645324310 112033932 330002694 444507073 664855993 412555580 68808320 22229313 741513231 891174028 739018467 250802377 615111858 797461298 476245518 820718767 645851754 194841029 601002131 486596288 937995651 232476363 470107227 324865396 96753585 90443846 525715624 568896477 369873464 497434430 613800944 371649908 42009846 59946045 885243524 222592672 899718807 336315761 72407370 100448652 768872415 795920426 564934825 865263081 291566155 986682649 429581716 252967843 989875370 359651299 13465784 370927691 121431394 72267460 614370892 587342303 606304894 561995484 981647362 407448531 563840352 207685575 837050911 213717078 193615011 286226655 717443349 271802127 911998972 881648639 429182201 123634614 190389087 514260864 182984296 590297948 522281286 688277128 158933336 475738522 249456478 872604940 813742505 115933533 550996415 115134875 254713345 606461067 66561099 195436077 302259551 915837759 891745368 809117407 322040856 52798316 763931174 572594418 606408504 494965496 989305500 621366050 695630293 690750071 768158820 535898977 837104970 926168139 141631447 751208192 955301284 193276499 441302920 645282470 171814910 107229384 557127726 163139752 319487627 182899272 952706465 912864782 124937508 485031390 148308328 362972867 916895900 245807706 238105946 682986466 395385610 263535569 202837224 926767645 191841346 208958325 487722425 836671087 576543126 787861983 178161217 794943592 309208692 552464637 716773232 709794955 57607593 746038859 129179859 928700138 882805934 546974211 888837748 629403422 679338137 262246384 770643109 554201236 407041226 274123059 133465140 262806708 96058372 397540353 542423375 724397460 969696457 846515503 924884885 946477225 384611335 571184809 618206775 266756696 110914094 309392358 897564827 840209980 16626937 956212466 112952829 624747966 182236054 941025690 557156108 27307237 237897793 932423776 223440575 450625209 841001207 438204546 5882550 10272875 586409242 924375585 695085607 164755255 900125409 394363037 873912346 487062839 749715766 379669213 295696166 546241433 771006776 827199414 999488458 808428883 815410738 59597569 195708765 162857899 194379895 958193866 164813217 570131196 824238086 744771844 534451435 229585967 975523891 195385566 908398154 160852718 655034353 609799542 883922176 599598692 107785970 417352742 129353647 951942674 25187068 77501124 557457200 607231661 463579639 947147034 654107829 821522018 950379604 122379888 746170453 219592484 650684175 331985808 366589580 316939125 278122150 633292850 405547508 736451774 798394605 943212687 514255319 63145871 5266787 697745050 757813085 397663326 576969167 151808636 342219540 23493996 789797288 362133049 518948359 6327396 169580438 622668566 605190902 129885260 224523478 258648443 868492675 271906495 970921991 191950403 807447875 822971789 978199437 613467711 343231151 252739348 462658334 950197777 58136384 998617794 86197062 506567686 82391872 665740716 283244900 927510828 145675230 247851883 701154777 276992410 101581955 697229715 839623730 351646715 801197383 337708327 945841108 363312066 991903753 888571672 450672041 121152056 252565996 593739543 802478658 951675874 777121101 364809439 41427906 716822214 531844841 615706774 461608477 263288612 824098874 979787064 709221635 144499952 697679329 31731479 110909399 862276914 201911403 813659278 438613417 927433572 552687971 269476501 378427513 16443983 761589822 87742700 87260340 715278693 724053249 154091916 479162396 466323474 772513770 953930195 66539722 289207762 920917461 656953647 155183419 347587672 909134439 435794023 428360036 868310542 380555879 383395144 258553497 719586999 36905028 131272962 783215912 216363765 132016555 487141359 131534457 815301158 314196876 792313957 655870897 868586681 9251679 637232234 343362064 959111977 281700745 879598117 551880371 861819797 570554586 980672156 444903892 533336185 208669648 153879625 804822517 95438506 811443951 518764467 958344890 320657382 405744635 729200048 329149842 760882645 462642486 706998933 288187559 521740178 546067919 296715464 403336015 29952608 471008843 938246014 463984679 891595639 130209449 247611075 220129363 127276435 390865279 987768127 781669508 297686937 665069741 101060840 578925570 400772417 610841235 209330759 346381569 678190148 833649620 858293666 122299320 635021896 202337029 22053542 31634785 166601054 749806272 652858265 316032538 514449341 996017123 898984439 174776631 559329464 770512445 49922401 344199444 190301625 175999967 340032496 240943269 406695370 866841274 867138571 944343951 447000783 890389122 135837115 691431341 881727388 399414326 628197124 753151761 585285887 56311919 990996348 157307269 820540595 877898167 463774985 498742704 251274611 282495601 199620402 587341789 845401198 636926372 196335613 485974195 739751530 891349131 404609347 302790616 459473212 622103188 643438126 17286303 268276505 130273787 23208819 10803832 709200035 369378630 791401946 849510379 597378711 74463671 539837664 214265751 158679053 860331825 137388662 224976602 501051138 631445779 951262844 695113723 280939515 114733432 176679828 952621871 568677872 393551824 328574751 31162588 241807404 285645939 388856790 135524560 252788454 714279693 531780811 321974728 675635036 211226173 712904284 290141613 417287373 593166765 552818660 424677272 792991512 579077654 491753955 830018954 636208058 872496875 594737207 140658444 971232807 680175133 761228783 916796175 122771640 320388777 585687144 304587722 592820687 786823784 792996622 927875391 888613134 830458303 351767814 85286423 332222706 968771676 432832677 50907542 549407350 692023682 368485098 117199379 448513432 424105366 740806704 829027397 728369466 621261009 23896173 403355832 646410293 936274304 602708558 274199124 659444120 265302166 825560092 630859438 907445946 205640446 145004807 3602550 678282792 650186048 6816837 899784314 521621615 69890418 899608603 276480535 200002593 80484383 185343701 147344208 809761067 606223444 516396131 350910217 47506332 201673674 575558437 748257695 557672836 617721295 468358555 405980380 845452366 513601375 157487580 62752710 242792090 496534128 384567803 27683147 47152356 780339334 723977830 776446925 995640191 135129447 586579766 154121758 870852807 96324576 558175391 809830654 909759357 982657947 10338309 201878376 207602326 870118350 422412717 899709762 596395668 299309968 54700111 60749468 657236127 907374331 895342617 216409224 554285497 384818783 423851695 144942738 412997866 692325586 501019439 569173779 348044486 790375264 445637937 649162780 932885935 436638802 303008800 514181673 293461897 771213198 382135146 400990499 554687312 236263863 289910246 289364479 377906487 936834155 155476137 864657306 819928054 698501068 93289836 480314181 329060763 556082060 370794693 327139785 862082697 343247800 801872359 491906594 748812997 664756968 841398047 705908514 176406314 392354004 509641709 203039712 223664706 864927887 353710214 824337063 605286900 782697054 95384739 41407403 188118164 315829199 128048022 149008456 653612343 613860017 225216240 260567198 277461095 647545540 835634220 960788507 761789564 92160909 74349042 105402334 468376194 836281123 229086970 80961764 528770130 922299144 101736474 293353259 518622576 834985807 60408991 171400582 246215549 535801649 491765284 418010353 131325286 758119447 668345077 648550439 542647642 576512585 578699217 795210131 185058740 155192311 832708986 694393937 566163472 464346058 307632989 112973458 927174437 264614774 461486006 47387968 332852191 945197686 96761448 423244870 38521022 379212001 103159177 277952776 92744787 722181222 58005832 244057983 345289532 436743386 171717202 937044227 308615417 415676659 829664745 336772215 606833700 967553268 819566237 667010941 132183394 201120356 552341181 711707384 190568357 950164025 775153633 551016105 880295744 647418832 363749508 852935376 401287051 598424309 611434431 327182336 587860654 690827617 429763052 792064903 158639980 213631251 222197264 107229570 925739650 145121392 344389253 688658568 596398163 330943714 13203691 336628673 562482583 45978640 337044128 156100391 842708603 633964012 851327175 62004731 982797513 100889410 244876654 770850844 261386611 550843892 206777790 890322247 760817783 71292396 676897246 34970268 7876733 616707982 207889366 533360981 954423680 179540236 340499462 973734203 267702465 939242482 425973546 688649356 965600866 460525776 815252229 165477118 322688908 192226550 256943385 748302260 533074994 545018001 476887350 922041564 839058695 697066249 537426464 492761935 995258002 799982926 607371735 333332848 851714212 870636973 708152670 18261419 233737070 460115378 598733482 410157898 134429072 482011860 156986111 383639425 520750819 955029161 365693958 319412119 827365324 800303022 826639093 501849463 429304829 173494903 316446931 390397689 554313068 266463165 462443637 128831622 60310658 362933172 821742451 503268258 632950797 511210940 214799207 810886821 949949837 36111701 173093305 47693077 39523046 761326316 508838502 204282574 492229062 334252184 182348988 363316614 779297353 252714548 757765437 736405329 707617608 335250394 54279289 837961534 9809727 389388687 901949193 721681936 68044302 312683252 60907150 999538375 270911814 976853232 364660059 75132944 380355005 848962349 913222030 341491273 521001264 986964318 598383488 795281781 117140522 999212423 766845435 949651203 612895047 305409378 446111678 877543823 115610149 373506763 465320565 380200594 860899966 43655134 992406583 609174083 449391169 350576885 91444980 278335083 860716561 516677716 752629991 466974669 212583546 368306139 266112030 312369053 262265351 23777549 817967589 297591100 738648029 413725000 569749627 328779142 66479786 352926180 640156337 740019429 761400754 302990402 680686203 54763714 349630470 227048147 115934636 479213950 27225991 138461585 977846943 555552931 55879480 604973561 299233798 649672185 841105466 393184761 974534175 225338048 171571631 708534140 586913397 601202939 460563211 198484443 930478963 404905821 142354398 816533212 862507011 65781440 125723091 899185435 229817921 622670211 909399292 726106529 993773046 161028811 7246641 917351654 351707999 637900166 259651777 8824498 456613833 830057731 873584239 803649307 552803988 236633228 165824028 74660653 592252771 100518906 53610837 252301542 176813076 350947638 371938163 713829484 22791281 654858589 898712686 635722322 938770499 310725074 502000296 718522041 685152980 683883382 738324001 603673883 311269349 971707981 951655287 361261539 711832143 184431890 225089572 214699627 745519313 11864884 595412571 382062225 84963963 649895084 969983009 196727881 288586510 694559228 64998973 498789554 405641647 835722732 502937818 807862743 577872525 859001804 239255482 854752899 69686560 890562194 691175065 437458258 998508794 821832454 414755435 407294788 575370154 196603623 733323402 825514396 163488141 546176417 528597941 335268071 153302143 775933467 541456806 122431663 659318866 300529090 501986428 972064413 295873251 280995724 320672060 832753549 382815450 684686344 83472923 866133956 53768281 266499818 803476387 638836185 375127335 386530602 616915589 913441859 846871969 41910776 266329623 324231837 53487437 701763129 903629137 668594421 354825800 648887819 305170774 667708590 962417057 925901972 574795306 791861262 733879501 509407594 361825061 100826432 934837682 836068015 269211480 150290379 369115001 78670939 766358439 916296758 629824078 851119716 423829628 475908048 583225306 524183641 123794548 544856368 803825418 209101102 286019640 117880531 375119619 605095238 122644907 913823385 306742398 937561437 25208181 429627047 105704236 402385985 589186513 217673567 677772066 458925667 296692399 64195330 455491492 547334901 363353596 467965327 508551213 86012369 321842616 733923585 551202835 821843737 351404066 853980574 487781091 554236807 797752618 537455902 222903285 105809297 217616476 357774570 775218044 617176358 806651246 61568631 876962542 417960151 681889413 843754310 245510846 492658089 228886591 623953267 225121413 42588262 783184352 718340284 274009189 368558345 627093705 640998905 266608552 545980831 62244751 264119573 640368934 94939318 903018732 366315655 888142125 474812227 839671666 35768656 319874466 450746970 922408294 305404735 282811436 456652481 833270561 884838038 794239510 259533273 781843539 408403264 79575691 350028602 770906120 488634728 651495766 719701873 557708740 572727504 82721200 639279478 595229040 777060365 321939289 293140906 620478057 192829338 645021550 286605445 509948588 645175097 825429225 111994831 681656050 996266651 775418420 27629263 630477409 808374799 591592681 707596089 406994404 720440104 595525064 83971349 230870544 665224081 848963256 14067400 904601389 947465645 800244373 455636321 480239869 372492277 496806870 991019886 190804183 346056995 550342177 983071657 963121072 342340158 754486753 939828042 675522302 842837011 427438068 818746490 854676501 789043723 563296058 489113399 790655761 584049204 487234163 284647612 2706254 697608485 305920735 834297631 909087707 471965289 708570456 115797091 695595156 86043664 505302536 180070724 308078321 999761914 742908568 410321086 8263642 962970421 908191896 580485305 205076630 473956513 589107437 465042066 105362479 754588690 217960731 584398957 343919006 179076367 471172859 303981918 836528297 997634080 554717249 173060924 672463220 261026053 110293307 226138963 225423527 827802691 132166038 860596372 892615303 740104900 676512691 309096344 761651535 261061988 405464233 505372544 278199249 791691219 382620816 706899530 679026879 478560286 829094913 446909003 188570313 415430269 33244908 348960304 56567658 366843986 579364912 437088041 892017092 618757121 167446638 253512428 878608079 507491994 811869129 152930483 845401596 387985005 256758229 800612304 282171024 335185319 990634373 468225260 454987473 424964031 645352368 843127318 142051088 794738148 70142067 892938287 309971554 696729319 178028437 106922331 966995320 5369759 680046085 670080922 998759505 312912108 290006113 697398411 89296789 332185385 12093476 830028531 378870433 722322804 564034265 904427576 694050061 311547795 236785855 504466516 253889429 710424124 171786715 201346030 766254130 880878035 813250758 694599383 866594891 51787426 235190738 82227753 392146234 718284873 403871861 704343081 89745052 957652502 880642091 710541201 16415056 33158384 250311502 639667783 841984006 345995136 512469238 634264091 919686070 893141021 483890079 986599035 735728834 882629999 719928847 9748734 178637906 280861681 828915814 500034512 776794861 621207460 669424722 585747190 468311605 252670152 269470051 969829892 105050086 171900665 699968980 758360101 80391190 368346158 750751320 275684819 830679065 45613877 806885900 297975057 343980137 427871986 777244944 778710583 671600558 604450364 162816779 173702755 533014932 48452560 252499647 635699471 30174237 633005359 967360626 684365389 622480413 438616287 975857328 618731273 494750384 232080275 274999538 243166541 291742517 453298243 985347438 341748376 268636890 565778336 414882252 587974307 237524742 115225531 303113924 468733303 153228307 580194953 136608759 791824384 252440243 789168553 621866247 458669705 438997347 706627544 216551344 444284883 733113621 880813696 117881960 53931485 833303662 862199556 420203288 938243891 659907172 573710863 684629533 233931913 556299201 413554412 546539505 11656166 417051949 647897701 748131829 699627871 341311543 504557037 108800271 309660007 78998453 702260381 996980959 757169516 720963697 650013323 512403460 153929372 705046716 210414351 292674540 137951465 944552512 672597135 422950240 640635133 957256148 986656515 414034901 765272988 184995118 79319650 872369155 676194668 551459981 436168649 455432754 596802543 685553995 370255890 285121147 201353545 266865345 269045652 13195354 577803538 181897152 201816222 170794149 172429964 651363646 378221294 53175274 611767103 394638748 207745390 88296958 411702867 958358715 198383969 328442560 944429849 371036606 122223309 744033566 324510404 544421708 277433096 437291189 133250482 799088735 185088868 876336279 781157201 413055991 61061959 564006870 337543036 316686843 512612174 818617507 695039491 894563715 733723508 252653313 783383266 119727639 87570888 41427995 472110980 674139460 30293465 588582798 126207290 589113453 441420350 406216679 997336491 65908802 389991544 146729351 600325077 643214829 643737931 155477305 693840674 700689935 408626331 414781424 647845986 165399764 311548610 777946764 426027495 239644490 196332166 781261982 185765406 672224894 322970901 369187677 849595913 419982597 259049562 696258426 824484844 987254831 712414724 303460663 958576816 758296135 555514805 99711629 856003440 770359569 961433800 336724899 216673252 547844955 51271280 179945872 644010156 978492207 515632999 795483347 932997342 673392850 666181901 871368097 884618266 946452105 250934494 377506093 186176790 549409976 868902412 362577745 516737100 941152388 402693259 924193847 815212273 860147557 624442951 749069 908135847 337972085 370649058 763535335 638879638 51385065 883281400 314857694 698357543 238537658 82108322 192324267 474722025 988579820 850603427 422294201 786722462 383446624 921181748 414808127 561383532 415051163 749632426 118473765 205159331 737925479 72684768 81827366 170875593 435552589 26993546 92660558 164291707 157962393 159536676 883559323 930165144 801343491 637339204 146760826 176170212 67775173 931547331 80817984 955441938 888112066 18561643 20514439 101706774 696284804 365172486 953659762 501012048 952674226 932370742 727375490 883425100 776342414 53527649 437094951 625851259 279472598 290725 249770491 870007142 150471639 617604978 178371594 751551521 880018966 279656675 906183964 954073963 986560515 447962449 687869134 664872261 308035799 49810432 796086190 577660224 725371007 502547217 951969387 221681124 738956014 827835424 270693488 238935621 762111272 672904950 258498377 144331750 352110513 79185737 228836184 611322756 3504212 516125679 696318657 290843095 873161307 402607776 922753863 592494113 3301675 998467659 343688457 437555806 70421257 583383243 337781234 337641511 960989508 79300585 484084545 484119441 414282143 538702046 381266105 520661472 503213758 940132885 136946744 132503206 906894320 426469352 278866693 97442484 657551717 455379881 69937921 924098535 917479117 867700384 539584632 607641717 387499024 269358121 492974174 89401205 734494203 711707076 518474137 810032273 679409082 214670195 818033936 199777201 286334316 581967848 888865463 40225117 91354359 765022438 43126156 59888500 714470100 201515451 557326606 736230177 102133217 163361730 859928795 5877032 233192705 910174684 308423657 459958312 917242349 689616778 355868619 204578738 886107604 953259170 913144402 987207800 519643258 554361553 355169115 840678919 932749270 854395642 655299618 399712057 718188215 343976958 127067902 73747906 226161747 354172673 43574348 653970858 573345602 640951327 66781666 59408900 750200289 410487166 952173251 612901605 486969904 27791457 556381815 553258685 222991103 705897324 223672009 621115417 897984981 625294667 328720221 914620113 989836160 523612130 597662154 845731168 599253436 903580154 435789534 209415803 171099933 110311683 247268270 661242397 176648510 953088038
|