112020 759576365 630718113 252698187 8231242 902381313 975415479 892429350 654281233 804499502 274326674 407128623 842108613 406911981 233529268 83084319 169505678 533513525 880760116 769394957 960413533 17509974 440494253 545923846 415682240 219522261 630968896 295989945 299378200 398368010 104667668 982204508 696331793 431536197 817044514 633863566 46513972 923802752 75201353 902268012 800455552 712259463 366637011 574075558 325718454 586533454 965978774 354516781 870126426 2906846 62460303 208320054 395617663 756150678 376563044 505076449 83865342 965232985 692846375 551987503 453690619 386292299 160069567 820810772 157376188 265579085 186449741 65785230 608681092 180379032 60970758 934604790 23174226 557305113 118841237 412296842 419692277 686327677 563382867 164904294 942030667 810424812 957682659 389105305 23321810 68153268 410274788 186310511 669809063 35101078 345854259 63902927 800954883 772557881 758307060 222453055 342384381 280605469 22451460 301819507 107714301 341958906 769857991 643747673 921180537 501566692 342602338 470061481 988845318 403750687 655888288 432885696 556000578 418872562 587454613 481423485 49958038 9925473 579401116 503296015 843335969 19884116 351199828 268835915 81578768 525397 721223199 164460147 286373952 29474012 663913946 163697255 674886513 404893483 725843357 299298705 378810292 899378876 202598056 40605605 102006326 728830032 520858265 123984221 396392000 966427014 683099434 66297961 313779604 701331872 836022049 548082600 375664382 616234255 470228767 317498811 997777820 585719350 925940556 124590978 118774693 470962856 843359484 915990598 573272825 312616190 332272587 97263815 753779199 600548295 764696965 687515176 219869033 44601924 740217817 938094339 841877145 529741034 124966294 90230530 977851466 493376456 514547136 158021326 852301279 633448409 565474612 7468167 997492968 348412998 413469458 535746055 498936174 618340861 933027129 482022143 973928859 3903962 373095930 442167516 176283557 810668158 386471325 437101951 453572401 463183091 633589729 315029815 792437328 497871615 278030824 71117067 865084005 68140241 635649014 647202361 470885000 828417464 574927268 345776601 875913747 471564900 624592231 333897208 204209678 422775523 463744064 523038469 581520158 625890855 470486778 180987711 356936550 524054419 220513941 791453441 483504576 326186342 838353190 913624945 339362130 928821453 855072242 689039602 230260791 67297681 429494276 237847434 843116131 468627335 963977503 508621453 881502427 733596002 469337402 927268126 499986665 530179898 793610758 561163545 278377464 124411640 925372527 963170890 277614415 369653905 222348850 441762156 712261125 252210554 198733655 920164349 862780728 805869883 541577203 303307837 74375277 49799665 532758166 474075387 692022135 744013199 935028800 995151069 699943709 274639861 182422259 585553820 339070857 164030840 159661274 220106855 695202847 68140804 824679727 167268741 476402794 73813581 23693259 766243257 255271194 29152632 704700850 920570717 447935627 761767810 764515918 834981190 568229931 78617248 773555383 458718147 174361416 753829573 415991412 690641637 955835778 462313129 428576616 917234376 343968672 645101772 311119920 13340943 532431606 600793795 643787602 441041370 267526616 946560333 140858919 775367992 907726830 831151759 239316006 958656432 703395481 545958061 244667682 164127588 708069760 816094519 543624865 866025357 570217782 101873673 342902446 726622438 38126843 450465042 453687565 505443534 878553196 932995313 742389905 396483447 110955531 95037473 871795722 636614089 231511405 442802654 425013237 873132418 191462958 237776007 348715796 447816609 623784494 80025237 5233985 353625429 34892487 586124310 967254301 444119239 612070723 706163119 373383166 542471573 607588346 532820714 271757451 378896203 431119162 406789529 27204967 516028424 505506782 872626112 936536843 388117040 974875803 945284850 98017270 732701435 852341730 373865369 585941587 883269535 280112695 212217732 769062485 226034445 50936523 712188175 456947577 582881518 12055336 935035231 210561296 87917181 393950081 533477795 957789548 380564751 553328336 227478447 177005821 699912748 731891677 377339757 995980364 211435477 820960962 559684992 754676399 581560737 666398807 113483460 560441527 500725129 47608792 145637021 225213170 580384324 544344204 478386177 574469112 162490069 42286870 986162462 607207302 495275626 608365647 501420903 869325309 136039871 118903831 698801237 960597961 737229968 217468459 790600435 821516377 368376730 721317732 944463623 634600288 877743643 787623970 64312752 236398799 956795208 831774435 416957034 237796533 726898320 345321561 396917492 971697578 707852922 168828027 578931812 8780748 882317693 101763921 51813368 59383607 663267272 838792405 648991647 480103981 988884879 970411547 752256942 290067341 114076042 698051961 227300526 585303510 631189333 69443894 232273849 890809446 568688960 663797310 190657634 757281552 166399765 84559632 260471262 917081899 429802625 197942654 627623127 640712373 671914604 481321373 142792485 256361703 282344979 688729100 717109068 402146961 982593680 519995051 313967178 375162353 683956679 370988995 216836224 184663561 459281242 615701528 585501527 70419999 99738693 475520275 633434747 137155335 614303902 858397076 342750578 778652795 176433744 532875539 216053919 512320182 811089633 583296909 537827538 70063010 281305968 106078984 601310621 448344362 460338226 658792250 868693188 405269055 938587976 962683252 785095010 127520145 218432216 7802237 986769314 804640923 23991979 746515491 442393975 706650900 378064267 182879096 787978548 12285024 964248126 248966914 846687317 267945346 108960202 455703796 126716544 596069032 784706479 519214633 392785159 619065109 186141064 462162018 264492433 184516471 592669933 617039920 667590324 179008346 955207233 253012694 25224067 997564938 143427726 738919712 803658802 636380262 13547036 611254871 562139451 222360265 500018552 928332613 257760865 209176984 854295760 748822882 384446428 148689807 623578946 135101433 883969391 487118847 399476451 465016157 635268564 417432480 375074967 784211610 263642951 249983994 935400232 723085034 529461501 590397109 857525652 625684423 458783219 24578672 395329265 450958442 911591323 274796257 781870971 215841867 555827964 327300577 765504099 13500504 793074558 313974157 444274388 742042988 883856550 801663483 759057632 6692910 189310456 871879556 41014728 936269125 333369356 666869921 12776425 75306203 639804166 211173923 584053876 518287960 256857976 675390644 634984025 107772591 35318878 523632853 250073839 820229999 885807240 740725780 193586213 110971990 953135710 52542567 262279160 190989970 875438394 98683426 711351784 177923685 391881029 878783751 409947148 268070924 604239775 153266527 658186532 8849951 739171306 298399698 972867030 694534577 61295697 682045517 581435999 898094815 58944442 437934459 740060238 380393735 81078602 658796340 85855939 219544681 527735894 446755951 355034841 79516718 767859551 181295944 709363044 251509528 704248411 122824812 381986201 198050604 237687207 135536535 776365481 287680568 709234455 571333317 95323226 888631524 185908690 365826714 370740749 834227860 872645025 319331503 408740120 750744320 950483228 250860512 770974712 962682978 816450435 955873030 495901272 948392925 831251230 347919729 696454763 753484954 513169169 135570446 943562862 475377070 883784136 820864102 235218991 182553504 562338905 772433627 535678640 832128927 467943038 481516791 10248429 864567982 908935348 841858617 583790335 521971753 167025229 866797989 236816540 277352117 4328393 251979969 79149168 159469936 712143172 228389212 57535135 794069118 825974781 864414735 872318273 993947538 832758918 922038266 711226796 696593602 934197773 725471919 372542920 61431318 848345800 917247739 844778540 369917879 383187475 981400176 54847408 758854834 37270326 728756904 218875660 339958839 120893107 821899297 592866036 336356780 581047149 419599889 796580211 775703071 1823639 593257494 781983059 993272587 378481736 914266618 851870680 198062036 887849320 735043414 834256713 120129065 862607017 791908507 583018469 160167854 851770855 580330514 421990549 332704329 253709604 105245663 719109290 706979226 19084290 283093587 289227282 628478886 193774019 586099018 795849164 844818245 256473899 311357287 48611409 660927364 5790971 266594411 499305725 725148944 847158700 551094211 786113167 391049910 350475286 716422816 20167050 287343512 598218476 871931120 131704717 386092618 440041004 115051015 718066166 773969350 595063310 196798932 657068501 340355598 837524636 898788134 720450601 285508731 359247066 152873794 291191056 173892590 831543378 905760566 911485812 390165777 944254451 416580331 56358345 32699564 549289614 303002718 164097358 175425912 781872428 151363819 687650244 456292840 615158030 766926839 514155235 943601751 291296221 741436250 220313872 11992900 464466893 805756338 984696855 921999928 296220886 395256345 513603633 645609032 756170318 237706319 714041948 479621194 464699653 922111758 542481747 158886302 548453634 661921033 510275408 210832920 574538571 896667760 960467906 116610229 668880292 842331697 764180885 963277897 572145636 51513037 68747564 643382160 957070798 882294235 381643737 785987919 735862183 223209112 636687230 503384262 563112691 230354394 455209909 776805828 531292888 981227147 825544567 649292985 307037020 752653381 86817163 690087863 94962232 563426377 39610136 410034514 746076244 139097883 328303786 831316420 351206207 307816940 952012416 948545524 979161398 200416113 33656472 570727573 552566161 104368660 358911348 546046694 516368431 494299386 491759224 470554552 142157037 412740640 162048720 219005830 348921857 894399074 806923523 722906296 873078390 425789226 962578039 970661628 223224801 233916472 601513608 649667009 437017230 218913376 157085800 172242290 642975174 72643251 698616671 408098941 74496442 655788920 344158775 579206460 602865189 345965586 247512486 96601721 594190754 568533761 298156615 567983925 470683094 252489933 490810856 892511148 785435974 936565623 53174824 41601760 638942294 713650650 890162690 964127586 412444150 775203317 174572982 987876425 83027099 382458497 387828328 655474666 857024649 872071140 339507518 704915780 21456369 622082991 738596554 339544190 265371775 414699643 474311387 81114923 532204679 82732603 497931886 59938370 64086589 917200853 471353814 276954815 122518232 987161391 446479868 650360986 62477816 332155730 251445607 471048380 896732678 423372591 747842668 138227066 298263251 577120637 472510329 546111175 963728344 572796847 665033625 193149297 26701391 617526848 961821878 240597992 943227214 233767314 946346009 151843410 909704473 440811164 222775274 83014246 140335268 910122365 719970625 751331201 172667307 618944411 773532995 858049762 459339 470127719 511729658 369483752 811527425 310777151 899074439 426080110 933789546 277371738 763784060 97936934 6868903 328338979 47723711 412905990 58352028 215286829 347433539 315768035 362665168 969106029 284937205 908243138 318146035 488566543 600979526 146133119 96995150 788409329 60903174 200220495 145067339 936780148 186681563 3232928 971746795 658996022 788249505 149173276 440323902 890674441 94711641 743825658 470242741 665250140 98472190 790522466 669174224 864203087 803664755 280027635 247897894 714782491 894955769 658462209 332659447 141660522 593077902 505809320 558332728 776635860 333552157 929217986 962182081 998546739 246537479 982506177 834675321 739776777 318855888 920135058 242548164 384822240 687991295 875712568 268323829 309467684 413373306 742182924 118012525 557421789 436325892 161897235 827816458 569347138 576160996 960211388 719707465 304255674 369018163 451489467 254083691 323365670 180786171 136377741 64932983 802960280 735528690 480637321 474763533 545132032 480578302 516500061 205217702 732381754 604272406 411571616 580685037 982163196 276919032 125024138 310243457 130299373 146731780 577519030 658599825 141437812 893589044 894099807 522288629 425487742 312451761 569263045 287605679 998067360 574121734 237054011 487526453 50787183 982220472 254370761 95915820 267184208 229922775 439223305 46532638 778677902 600658733 772385233 401309334 448535440 864516931 914394600 59621906 496986648 762632504 586785703 805237065 147657467 116096649 644180726 69408836 27744183 955313001 492464370 851573689 602724204 782329086 579703794 469836045 814042448 85976282 178179823 517842825 664902164 289250883 478758415 238671461 251315157 812666419 853935842 523371977 777749179 714505866 875979237 473110421 60487905 258499131 469779617 512488638 418746473 504844821 261340635 791213564 819163483 530428920 326596130 159363863 289561432 416519907 495346945 805000763 491635086 23213021 268618665 231881939 289249023 956786964 23199779 988938723 957795776 904624459 199184625 280471951 259611844 579912092 894793886 306828327 812623816 815365976 821832266 93081630 967082598 170682409 209807411 161998272 808194203 403447806 902002478 504216286 21584578 613181510 916933449 131636005 127426422 960946814 725473735 916438424 981532405 396310209 516147627 816302348 991195956 624162907 258519398 268824725 569859567 331542605 131686810 881834529 816830967 486068567 108077243 994478818 190637754 131904671 215687918 491449188 781705981 327358335 463368025 643749900 400796122 555712124 960236721 668629913 674320158 862548050 276115252 618091497 902989925 749640695 616387040 711335940 31122383 664608446 634282311 829883391 412836991 500032979 733114696 103030828 556179633 387332167 149238418 290778201 856240793 497884103 770212973 206057759 56290307 984821727 95457669 185816594 822340135 870502553 507027762 533807293 926466326 7129625 99794491 988718274 326555686 272048039 873686799 390225825 458480930 376611702 603106988 351673295 930624272 104306675 303337285 707378355 374142078 361279074 944280947 254905235 792232794 62473039 43986267 382346482 745010239 985668464 483297563 141005692 686778320 581521704 858928152 432660230 987488746 964665357 810276859 992332377 747694638 902467586 286684035 774351430 439331948 800180268 740224054 387392752 22683872 192331687 404133936 622181428 250947614 592561333 252234630 753502512 629326080 160243165 567922725 49356266 155527429 864747301 295885205 954864665 403001765 473696788 18386357 409567782 682222269 743484146 247020732 497565578 47167966 980014724 842418476 584576576 551486242 557856527 103673718 693627363 968031282 928964852 154146286 66972639 331697991 776798648 70618226 911548709 631756308 141268696 314313431 517512098 854077975 482467126 935587910 615223115 109921120 98505294 11691481 435407760 271345856 214206099 469181662 470319780 851575799 407612830 281143112 689673139 709155482 162105095 362630090 925733708 209659043 271484708 832909449 892366989 984826174 792511331 905431970 539144282 490990289 500921289 223451922 884890306 30676055 624366579 428156293 283832677 863484761 345579183 849644728 832146642 938785356 716859181 550321357 462631988 31029081 757753258 105151210 958529124 205024527 584290596 456456912 282555988 700669752 937697322 37042229 371646683 454022135 786679670 37819462 825681829 596354791 869007892 329121315 721682855 775950773 879715590 334449680 947985326 296847328 574349038 454630823 728497544 816901103 69580591 914018471 64903127 27904369 965667287 199032282 192640065 159051111 128758120 154814895 534854322 172842203 761428364 250863978 659411920 699751369 731970994 743952096 545545603 274479791 461355784 933567807 17465390 911668896 561699201 50004523 970901969 459645168 339147101 460984844 130701919 841002980 457317738 572380782 97540115 635562649 587763654 282487850 36557548 494423047 431742557 90862229 628701319 513747703 996059369 795995058 985385805 280130415 692515416 803275495 69110917 793642880 604569769 363965549 169827914 727257128 310768772 691592624 47394570 590309785 496592863 418622670 480959410 389701949 405490082 114935994 61388508 769145959 694515524 776813683 982791210 886242012 954908825 236446626 766196078 216861836 289767797 653666441 799879602 506376145 876128162 461258252 524073195 846013204 617659644 873919331 655752757 96483385 801357357 246503968 62945888 706470732 801855422 77594222 194511489 253543301 812791502 293319730 519940560 941809675 698416657 926284377 112104638 518166847 57419247 327757116 262395312 571452345 453364435 587337529 946529835 759352592 470053125 531222069 754585109 443806906 670817587 612933257 595036724 599930146 532506329 6989255 35477703 551242419 349764401 915057813 406326945 748290829 150869913 212939660 681646014 968394183 329790762 141496439 312135530 922290848 474288555 539203317 507963605 592743868 627868608 285910870 129856142 946102527 249131202 975069164 967376842 246945540 617631584 675107306 34316103 596854233 170432706 169190753 817033812 693772188 935215526 69317368 976693051 501133980 606616882 592665732 839817862 121957544 681025681 94434014 252162454 317375807 63682015 826177843 434231356 111908177 33647134 511911538 742841048 748565976 55811480 646717527 207543663 133718628 103585696 45715146 723867202 741276988 150157986 244312718 392753607 107800009 652581442 31324028 287792121 637012770 468247935 498497488 637940197 936278892 344302530 76609674 558864228 437363748 479729799 733223177 311184246 80560044 138831687 656459729 425262912 858886331 213143233 265264486 888282361 388095044 874686967 930781446 663437423 571117027 353164152 345763783 289975510 744783184 571439193 19034763 908947592 481123251 351974484 997000863 164413614 248813822 382375104 655033872 811350348 231393389 646466707 876709132 407091398 790047111 963542 724812625 342842378 247977208 550987402 72511738 854691676 292788825 646577924 456186385 99738054 571105934 911542531 148450374 30397142 475239341 798309870 963076129 430191714 920898801 239307637 784559779 338034545 195804491 132259256 604283971 510758396 655943351 709107889 663213222 530311595 621523073 682984602 840752691 993881174 399818428 459188551 917997602 266007753 386227812 258631287 645609976 262649274 980642518 673502829 598436820 24123283 257293087 913621310 53528923 762577382 991253684 415389072 908152301 782323241 463614015 850076098 934803277 723307933 616227146 766253325 787107133 862263880 783237998 348701490 921302418 703798739 817024272 190845690 403342605 294613456 39337675 749628689 117942995 756867924 220435899 905250683 170828880 3074222 963019468 626520601 255131873 523616394 478028500 697030477 340235683 281121293 960664444 13269405 585620119 165369532 927845847 933547949 21157659 934181081 311498513 487935015 371525066 495969791 476575470 395250354 341080951 504734462 845548387 820859654 462691317 534239835 18516983 22236374 8464252 884045720 14054591 954004728 387713388 433877073 908255533 537429859 269339528 96917310 733443416 793845231 524473180 733157155 239278247 138327683 655369867 318263252 773789919 272964029 549683126 248035950 494633527 306363492 595327819 991808983 321512827 996452936 298816839 538597020 92732194 965165556 539873476 719105139 683344339 762860272 211177871 37910195 673308842 531779574 973644892 719269341 450908002 117243351 44835754 117011011 840097561 884209264 703033540 695358376 617541106 319861307 97871305 578918820 989038415 608869358 777722407 133951298 71116220 21657519 357053554 209870549 496562675 102466542 635947938 974823125 10409083 518703496 369590042 633332272 417316505 888832931 154581513 918315939 218523697 703928807 510407288 337497958 917325223 979497848 248002078 207475763 6140994 94228460 30155208 674754685 342301490 463839244 993904080 310746959 389503223 419451760 902880826 505919 769507377 112669115 822221738 228680318 596298719 557579928 182126905 661630633 317141523 140905406 65619808 701959169 119451937 74945638 783436551 941534388 180305242 177893506 5478656 695093481 600527971 115706650 357012415 964917629 97002499 881480762 342135808 652698096 462366833 477792603 158236881 968861948 500031033 263602558 259422096 915774562 187325265 237676170 92785777 201413341 153867316 589073906 295627364 794303896 621787435 61092936 587151243 134523034 761536178 597275710 61286191 807033728 411574892 177679861 320498193 417418454 97285549 353454792 719667008 682445139 594904511 393909152 383096520 578536002 235180818 504320322 138146948 836774868 940413242 76402248 390454886 562269343 294131761 634942 440061375 35507741 578291861 812603105 94278207 922930001 979283050 652299705 320787118 284484528 795522125 439770116 242432217 462898654 894376269 991387082 877733586 649063995 761440265 987096414 687309750 920214530 682648724 212377081 18575002 39715712 964971446 293585222 820902731 518262692 924664186 557887933 21598253 303847778 237415777 467274491 324332729 581840204 950277469 473622787 536768674 627955717 170012012 817378996 220417890 482716351 380800135 107526933 58788041 597207967 774244623 120454616 999818614 713474054 383973544 441394828 193059339 801161314 597595370 780459228 322158884 607220709 645658192 678571389 945970769 587429106 802735403 816916843 595334103 43269313 270527205 71362799 884315112 990121687 754473335 985869162 655923555 978595671 129617216 257068026 907052609 410831254 495646477 335771307 255495925 235442831 122628139 886340909 858250721 982740139 256128713 69216886 147618679 838721733 752224863 819677503 637876087 815136036 568130856 214365232 230507097 730159475 465074340 468312808 985619987 573774547 570886650 339311574 783878871 932746979 291095825 289944567 109540804 923775698 8278374 544960601 876148904 558485468 250373151 159649227 600056797 23423805 223145046 278163000 248561854 911724172 632759334 215575741 925324832 307619402 161303571 420162391 238531718 893805661 664752939 469199944 916603579 326451878 661053241 766356121 166414455 90048470 441374798 432297481 277825289 401826924 586788839 497859954 988862636 270900439 535248707 515707581 573779277 619538919 850390060 119406820 125675660 745051243 606466707 236248879 347853622 705727752 552119507 570791529 443505528 165478690 362137392 325370569 359239401 289440404 277121329 944873629 654231636 706326024 502680576 582887260 62470386 178100049 636798430 838662846 169282789 65654097 761217019 853704522 618634404 60586221 156219095 584999800 355807700 771050923 774531700 626901631 944828252 660093805 756028898 749114430 861142730 936344967 381701708 878714649 19135385 225579073 359545651 538290875 649761426 605483571 468025945 749036588 277684930 475425013 197297257 360428706 84117915 638283621 153583619 756466806 367351579 146355429 713184037 95702329 624040339 23409297 615328495 208345637 421518663 340752507 510502084 414532983 42120717 991908168 210838934 226570056 162466582 429026840 957748174 688910913 561830213 566387295 647628481 517532541 270736457 4081111 185722389 780303174 182442973 336252062 450495608 391431766 135822276 764808797 402616124 369696595 347562531 680056248 33951500 387580579 166636107 565772226 492668861 472384990 884901421 360927113 703862060 866136259 468138090 633146092 906932027 224012303 313383402 156015244 347782309 985287477 321122720 103027746 536148646 913660637 961050877 805399928 556661776 642956682 171008890 99239824 263575099 864100817 356752061 531189321 741998897 679453145 661623427 646988373 918914988 685338890 523261721 645795906 468034102 379406333 974988744 235622968 398748819 376380202 95198161 284248449 817305774 39270579 656674232 227175038 508514370 397553807 362898013 553094863 790843284 909494786 71705254 534237970 442123724 718918964 444054038 576957969 248309839 92188642 27167939 254043757 643769252 767972559 657947545 784289332 786839058 417631770 955083307 550733920 586593065 254256952 338426811 845717909 33839795 896910271 145917093 235809699 882234803 650417986 73766649 871069588 150184199 152865585 459000332 523266649 842791489 623716730 548732875 295482325 722832 929620848 270175974 386912181 951274249 817121936 904706788 17071834 895122601 386665251 160467153 251842012 757495975 709446800 478306191 470937399 465376269 18614755 813890780 348691266 791077930 936186529 296543126 391700156 578608714 407413072 462838534 950942690 535588692 291025161 967589968 233089503 694476786 89515214 684984157 931303230 727135815 354233797 196384389 824740206 920200680 633525989 275385999 251559694 589634166 425746975 509863558 292357453 35816752 811719842 835178892 87836498 49727663 135815503 215724973 173918652 684694516 33715907 406218137 326849581 41241116 556060487 772472045 952398704 974060183 251250474 761436386 996460552 659671614 674532470 669708183 761389235 136794305 153855470 402108968 286997678 44552955 317909518 53856816 556910109 663503644 94524207 372280470 768677394 559632688 875296634 735916339 628544061 330102761 177571635 152505708 883097969 261723468 15711136 478963332 651953916 723120816 86697250 218179700 228082885 524604744 209780769 668370331 564904075 651919734 793332580 902286990 653880106 64760298 794898069 598544690 278075086 461676529 652000664 821335172 817193587 740408805 207633489 278268748 734324239 404809847 697204388 726214125 206337130 957529463 853912185 744008349 615161644 476413355 548033228 880953479 134275721 8282294 547091818 187568473 683750527 646906828 110147550 768721572 942177536 351039613 178665262 717951911 672071388 463160455 89636947 536579258 65506287 178129758 678470814 886401590 980174469 831469802 491226599 603167937 234415471 50978857 921374998 240154251 649258492 236056900 219392066 662820040 178266149 392083054 481600281 39467962 569781929 435103422 214913595 737520825 129555756 215376259 413121859 124879849 973848037 477560397 433788626 269457567 397296583 364083302 589545418 786170753 409169930 713907427 603085127 5588710 896580414 64146280 985485734 662149095 631789424 669761794 920533620 86933136 729613542 862489382 661518260 814703523 490068116 459707295 655386610 877135298 894784053 976601284 660295211 370874836 346475636 141510639 790310678 757176046 659122686 821069136 779623509 969786934 998251905 238790999 64474087 779663556 558016699 805245718 322028116 266747551 955042170 42473149 628870663 738199935 504855791 443889783 335295048 277600225 543877415 587922341 210613592 579653806 415748096 564340484 888495312 432162672 336885806 526066641 382838456 573169647 373346263 860718017 677285929 993703330 603759904 614101689 595862309 123436503 890449730 447870261 987413822 780905333 394310209 834598596 66057944 511389071 340680201 598532796 575908599 843414954 203147910 445419302 978327617 350647465 612553271 327629748 199054906 379467016 770455894 740282892 371145861 827692171 530454752 255934380 125229393 777157586 378853471 728771788 768505669 425934354 57258784 546391402 538589244 857696724 228756034 473229109 941471893 638874729 439605951 818641073 869600466 216615302 288633659 833126301 258071358 833133134 720345939 66262325 41957445 635971990 46358815 668591405 462964613 401167731 291107090 205684737 27207653 757386890 245309135 680479291 281490637 805679453 758059780 58232847 619935049 264588954 924974560 947260408 184017324 812580207 528344874 127241842 344920017 442504809 34114857 146449950 706298473 379404539 480363788 762118914 74713860 776266215 107438958 229690052 66511251 642631755 712426090 986546613 688949735 598128687 104510408 420740726 317945166 726255392 154923976 283186534 35614632 894464119 333252899 412093613 583385689 801308717 219891297 209268618 538633050 126064097 191767770 210687552 843202901 667033054 32938522 46694990 619821604 719376178 790287902 654643146 788743633 205177716 644643248 158494963 57662976 949796834 448468742 326426111 322709702 341128247 719538279 268905423 542230716 835076051 946459175 916067927 634547386 476928240 943031087 752373854 349883413 980167402 224150864 737618626 570632206 12938741 147466560 829293162 481974158 11951156 994844324 985558690 898583550 15793746 15442561 272725521 142143890 665005372 811639339 389493771 778473072 591046933 766522681 706953347 453689099 603172302 579709378 268013597 76928759 535763427 998645719 222965601 341906632 285582827 443276373 687922500 350556042 622425003 189517034 488969711 854921173 540529080 797887039 196930726 150632558 650745731 300151781 301807029 958801652 902975414 20312789 764868405 853369472 324194093 724217092 299672753 252325183 680623509 822918377 88221472 132828475 330010521 966413742 966764820 318703393 677867123 919955872 685147125 272523931 726402912 927321414 79660255 425582437 605542003 556785521 261022093 383006629 967365429 542164489 386913128 447568270 601297585 50000715 520866307 23806551 396769886 204739873 367191192 114856882 372472335 803563272 565223230 317881434 538671102 735065412 875575355 605307307 488837479 327520333 931645714 295874350 121449569 479605766 159618095 283620334 783595042 278004318 120611582 486360003 843853623 135129043 620022514 917063525 725129984 559160268 462894653 188677494 57476938 580863212 590613294 807100748 15330329 235320407 962279469 583603882 377648862 336089291 493381609 277916428 592955722 905982304 354432519 989290790 311079348 809099571 435239288 946565964 554287690 954179215 132947148 811213315 866930994 266435559 328717483 345761666 127476984 615169847 680047499 635969539 942906265 345853237 971631804 391317829 786520974 330810244 418860534 839478446 487359146 588248127 147075790 200493408 174125386 224970354 297303958 577877891 969294676 961950426 561210600 286053178 772843559 290887240 508588567 703334386 515334964 710932451 347775821 652464060 894865287 256160321 914944593 386044488 417268992 258677198 922840210 806802205 738900724 29148069 114040779 677663633 777886470 387176483 116999934 625664187 945399393 406889399 777024467 203191961 176042635 852370317 492959293 527493493 161125292 863014297 73896853 433094332 726973884 170813495 581596738 215469115 644032492 981869967 741794325 894663504 489479154 750831759 858649767 826887081 714091329 292372269 77645614 437521826 367892393 387216891 436714338 19341414 990485639 162990570 564229955 487762782 976795270 773315020 704066164 862837712 53061579 866485325 921575209 95886331 340716596 661399341 293767883 763378680 15680379 687185054 177516023 307139323 338855688 509388506 744197396 557946227 188813151 978261459 746025031 702959663 733111322 106395929 648618248 375761195 697487417 848405395 270407702 33378539 119406643 548320453 263982640 287316271 720605928 661261704 207835284 455910730 245158174 201593795 274560194 167918581 924410617 241505023 362017896 605449351 872657446 638690038 277852356 722113013 325746475 395467263 557833863 530650824 521789392 718354165 769496618 618611230 783742303 878182893 282231668 382329183 289982271 34430384 833185728 724958454 614488183 728125692 791291690 299820575 766153996 547252271 239378810 65964864 884583468 85847592 641354248 930822452 309441138 56590056 421443145 824868443 763965394 929876287 799482643 497845672 185727661 153063354 212068341 85466636 609165039 890219539 493057241 789143266 25632735 508536528 9530602 558954878 756359589 126924320 375441185 602057648 11901202 476501945 796842504 714788112 467282603 714288762 420170593 181147357 974147552 374486862 341324632 883688901 910074168 314159808 657921127 247561982 650000411 100045690 507663425 979453125 946737253 683472930 613899032 441335004 875436763 263904163 782599741 12633075 860767610 516429378 834705439 371726591 335063430 672474593 561409917 814518030 767877990 38254193 648354951 219388119 198250184 469286871 456119465 639595577 85450980 832998993 743972270 761927957 133054108 579681012 959712628 165633233 847759505 974002884 817201277 510442101 386865615 347545423 644654728 439293802 213856665 643835279 716807308 601335019 725054579 995536519 230876172 822409990 628900535 973360357 717785610 681583195 521461436 312423573 255778276 724009981 196403008 93064464 367311428 143456129 838069735 104817191 400252266 742310718 316419023 305746045 415251595 816209662 53771048 650461616 426288357 531200740 690352443 531447362 716483638 339571329 99073765 501003646 694860018 182791476 497474695 893644743 43850301 750869847 772838064 320112999 657961393 757217713 68811304 283684033 822761718 658889565 97619205 318601662 928740954 684166649 857850766 611386950 516574507 650246752 127651895 718420583 709341866 541198450 83478210 775959591 510011875 216682473 434168717 684734748 671300354 640940966 999541072 739635021 387286578 963511772 659977369 262890881 49493913 891708438 801946603 727890143 67617102 293531905 249225406 81515092 131924006 974716194 98649569 549757691 861251594 826113695 914565764 737959244 957660553 729426982 317793952 881405547 129997145 872329791 723902333 116034388 748965499 850170693 549315001 753858425 51408655 338102987 915517273 757672574 972955878 626769008 624827142 574379958 559506491 740309469 3042648 237427351 633484389 385007070 628455010 338473331 134218170 605651646 261007721 826586080 46311478 833286214 498107863 330268994 204151769 147694446 991356644 664536724 371579218 138566098 753440428 158187335 669564581 16989276 424178071 341590667 676526148 899900416 749851281 604914698 328714165 386091268 87400655 603528758 570132096 280691267 251471501 401337430 442930188 520352348 804265204 222353025 73696904 852007840 647849645 952140829 298604989 811466628 250750192 46485750 561704793 883866804 327326685 22318636 781116404 326083569 7864928 111950301 314969872 238499486 157816424 862415041 731222825 303072249 700731335 512104986 187426210 375956492 595851964 398940636 421227056 846643819 494299613 149267633 811565654 943332136 186941731 353049420 862039174 823042762 898024685 710592351 199726687 808047929 984733854 960494697 307678441 191565050 609532313 591268332 555807984 807142533 793395138 209353619 132637206 462918192 124577616 581867901 728733382 356395616 352566510 526863088 362281695 841116755 28073218 322419162 560123777 751817328 226249945 873288442 890840951 620170266 388009883 90792547 608817951 786850964 17867689 497744076 520260755 453940269 700509067 109968438 10000448 465603794 75905134 936763985 459094380 419267862 903618538 659584085 23113049 468448539 715804202 927069336 287829611 464252893 961966258 597090180 378945497 193029040 8642695 305432136 483932829 493153628 256694982 458627314 950188129 725105886 96895472 343833775 75865662 918820917 169442329 12051853 603697362 871641318 82766313 774099498 327077742 249936405 730301537 981923246 263554779 554852513 143264168 140641950 991653991 55787077 59987875 658056500 210199154 617165616 118335924 69682706 462795131 225655264 436953337 896198455 908493322 246431432 665157523 311287521 866615701 651149558 324753707 340449734 384557215 708036672 636076481 255362117 753604836 674187384 992902280 421857353 291863099 256305139 264865042 219434700 886719835 976232223 15939039 431016999 629611187 917777278 526521764 523102877 599661249 639688412 622562268 591423967 493576686 844861801 421705580 901114322 846815250 348928517 952744985 191752390 839043254 496870535 918673886 490483343 667160500 811765168 846760307 54927419 831005169 512097930 439931417 670668357 825439151 497921497 209020945 832673550 555941391 488347875 40011588 87929298 216965448 830509131 517799393 355968918 361875021 723900224 548364980 602312635 12508952 64497491 560555758 741054678 893662089 895010168 632071241 526734066 21701531 212764599 369559220 418051597 1100967 657866640 534752968 455125346 503503772 191194045 188417395 613488496 963912750 876520761 23857186 34717742 177491182 867956384 71190749 452347510 735724182 67413165 688977668 344285955 811399321 73738598 23156357 54153850 152442459 702152561 57764848 123242200 625558289 159991563 202342183 150464000 629793244 461470837 927501579 429717331 190934622 778923136 482149329 175004675 673828473 421770109 620904322 772830203 779023304 48708223 616896403 715120581 977561969 824392350 230760503 501312761 245443744 929665905 553318163 129479206 411443157 311444070 402686792 318116003 40422719 697182868 236898669 312343526 731388696 275394991 615228446 487592985 437539198 541135542 839596120 525963407 226714962 122862302 464576438 753487629 838771579 965859690 716737132 30319338 58322846 265877915 634547624 338757949 733404244 843342305 569814597 870142679 57600026 900922670 249624876 239210324 646300809 297796856 140982395 453496924 858963733 327883529 274344689 511958092 843148628 169070266 438542776 200577374 577167333 222163752 669698121 965480646 975933698 657547950 691053399 169072864 689253461 971760332 34385522 156701791 31639783 84187686 979848856 103070296 737246851 492230820 928281102 299321261 233463157 784192040 746660614 11780626 326872123 920007027 181413710 347299094 768575158 208644874 354243942 339956211 394338197 560355401 893825670 223456101 843514232 415515931 94648972 762225376 828851386 444586259 139334929 409556263 73337101 416733093 293595032 653199640 136651495 937029928 90998062 999709151 12579852 694245261 197631642 250004800 821721289 572656848 75163195 316024277 72017007 95230987 570930548 672292012 191858515 645096634 316657808 352131617 570023224 74241139 209363646 396336370 749030812 421359400 680250745 431604446 69550997 911478317 155268950 92053559 244376906 26591771 145393613 567084241 766382247 356295297 598737319 179408315 868811091 625194721 813691322 402207719 412233098 264537134 436630916 147848729 646177720 282024799 535718208 267021856 474642479 950627673 187144249 259426763 817669740 782824353 22314182 15985295 168007344 784459948 405445260 617340778 656213720 690104472 443936414 585428015 662084854 655176846 994331202 837370795 544287531 108417009 673659069 807518381 601996007 846529110 388573584 551723330 521468738 229052310 765506520 797146189 499322703 199923185 566358159 900167338 139072458 613076699 53511289 462295146 899753627 42455706 968876077 779442051 81005250 510446937 506553985 788326048 444436713 581792281 828713399 580934496 856936585 148971969 239692299 912999740 456761987 513103778 90442666 446779630 696935836 212478794 753805396 827947882 318010369 341563096 110579231 699154486 303626377 810083112 531407643 833595848 143914687 502077320 961081294 160704201 601476975 5470864 392509045 354679398 272184525 330797246 889300915 639229688 306924483 354068611 755520775 130736428 931329512 297940308 500152156 131586029 108422697 625178344 700550370 172471744 580872216 18723364 422871798 152611068 641938795 160495440 683539747 293878847 952701012 8459173 799243643 462942523 477982413 356799664 920892508 110035763 902168677 133822464 336112607 53313716 124155940 881557524 504305320 541948697 478569158 875537725 414534960 420684786 448259452 532267198 734879556 861379219 189380019 190089977 725031097 829305050 529750231 943736605 740215022 850358545 727438707 611947831 988276578 263800743 537299524 184114064 818927988 236727334 283442729 107339807 584529570 138218861 549587791 465535806 692106861 848081293 777525154 167704612 22025915 9415130 966764087 557769088 380309149 880622862 467866896 390565870 391744946 515768625 809926260 957569119 315559373 43066055 178289961 205464303 909715706 320067539 288384595 933089247 385927531 304305034 166919420 87792476 119472563 87976669 281400658 246960091 934399099 490585314 534843823 298943434 747099334 355716445 988008026 177316705 658610178 812573169 384856408 227302194 160021178 640254903 893512266 103072803 853895940 207847559 364266171 17257935 240703024 753697484 337301199 780139418 895757251 812938317 548347750 368366048 281924733 403344967 756500511 555929492 588853989 83710401 184024954 394987557 17946062 81911303 536399015 281410843 593176409 189168367 141002989 566717681 225690275 858597386 738559031 234664328 786395757 338515510 550936063 447685377 120639640 173637057 523789746 449360128 877505377 152414722 242070206 254989329 672693549 541352054 814060973 846730807 965215882 938953845 898740730 380010696 505911843 707458493 167581425 705428773 382037586 231740129 293140990 11221035 575270426 40009278 160167045 583899939 714370291 452349491 899740735 200211182 347092528 584612611 295978788 944424618 328109016 403517650 448824895 216097288 162531117 654573827 893637296 528584987 177956832 224287984 218799770 953676355 699108583 369254352 817563699 585813778 904861824 588024320 958110611 957364396 929973773 853992081 902212266 641316596 74073458 137776845 79702853 923230435 965359355 13219567 939180697 99200603 318598543 607317753 605835909 703732290 863301195 187610053 655759213 227655257 60093657 116091066 901355796 80233105 491939779 835473018 109611076 870287962 404769030 397244716 257934684 826187218 550461624 205780095 717819169 62285866 899018588 63264424 977338807 848266069 477223029 839368427 872283335 81197299 127499267 972041865 833361481 653420280 267144133 104307914 548439299 199995260 996153844 342652459 179498310 96150525 413663120 719088059 982356392 581633261 474697770 321647995 516644989 747431598 487539201 762688366 498253264 65890418 533555767 110541583 848196269 629331581 309223654 486928618 643831590 127854205 985163292 169321399 170951412 589832132 589508464 190016746 799809280 1212004 935740722 613201530 539992844 431247539 745044491 572605773 669483737 791789236 565158792 267267631 443789858 398778182 626753753 953435100 322462565 937095988 888289436 870563897 963021944 830199871 209132822 605648882 144853261 361877642 743222829 274853457 273594909 770332826 4308448 943048485 273981261 440116899 107111880 901654021 939895532 320846652 73145270 761442154 287164359 971341994 426678405 589315702 441635671 885385459 181517307 102295502 64655010 154971279 744932969 978735683 297864646 405308942 462042800 101014627 743785785 534398382 303822555 849583429 43729707 570299292 232838425 584592228 444607509 565692285 459603761 847997586 218473960 480326627 860539602 507024154 727435749 448108322 624314994 806542357 441905163 32739071 820571652 34197401 46485720 406788383 729873449 64139084 530672834 918563765 159976913 32674219 603866995 29660345 14003430 351872069 384888957 719186091 626618451 343012450 910705950 718957000 506715626 46354814 120606299 903767831 373844078 35196309 721368034 805187898 859316077 574537012 313107701 366270865 856605385 17023830 983480010 365320091 987281702 826034805 808860319 622295827 328435011 145082365 193259916 823342078 773985208 464354178 632037871 10252877 26344250 651490240 857611699 761282707 166002624 872352435 966390288 889684423 295115748 969294070 835191906 532801545 445666134 418250536 197351164 214279432 761129190 381983986 416247252 974237485 132827673 477940347 649120393 660608998 511185426 876366760 128841158 834147696 960840022 247173643 321604756 610567325 248339207 700129302 487638708 983807266 657432264 858269622 536918703 900981221 104053479 945627050 60385627 730769654 24855715 58493960 450663233 749657147 895610210 744673868 391468592 92364333 4010978 585661372 461621858 563344017 955159278 897933927 953511644 316454967 197468304 202368079 199701301 882505581 671113673 450384645 932359388 841510493 883773777 135569429 776731225 504603278 906714982 586783486 211558556 117072554 128864717 430258396 871156665 931494715 512479119 390067271 871962903 302202514 308666602 583398253 865340290 558291708 36554655 686492170 999401234 640484491 314198465 64312928 519092469 807157330 63649713 591826107 521629475 613947267 642127082 462576916 952259772 245214380 283096661 227543738 493297652 482136652 772101741 214757347 317332659 189340002 452331503 255476546 205027437 692775243 629024741 488525272 944213877 691788790 146019428 449340173 63882905 590251940 865901368 605098829 475763842 91121051 666379201 652454752 256718084 864019630 644790777 776991060 260008010 450680898 381793115 216839035 471751316 860899100 892032778 312021077 248854042 319304872 385577334 112169185 695812240 76422045 641536133 398953835 733880282 512266370 746663180 107897044 543735141 725298595 152667488 552319052 727341347 266888512 33301422 225819452 642692496 699969073 642728562 522468633 30388561 381751687 613634696 103401089 452774058 12609778 191473861 657275171 912856948 445876788 77911510 695952490 40060377 661069069 905937536 287111102 823942439 458624151 622900330 842280116 109334709 301343661 168140309 685383618 477523670 654403657 798113237 81462903 113826488 842874909 736973936 792145975 348151722 116016630 42998067 671315705 722648955 521051596 358193462 596059191 773318 687593237 851148718 166018148 402355518 630417605 979910832 721149776 631411649 891158542 829667690 268187918 357846426 645538853 990757510 697951799 839846900 395322600 888875887 93009795 268153805 124375432 147948499 500590954 366737919 346137539 980449343 337034705 149865836 215275870 35763188 663927276 345319789 417969179 742965258 974166160 682015449 745054671 190380287 316791848 631359535 232712474 216397244 994539626 588355605 81473550 625014320 398689755 218356715 595256899 310460045 822889707 396514794 158068838 323714821 979528920 935391929 607279786 972035176 422080629 792403489 987226554 33147885 405115384 279529831 777613366 350594250 546538674 766517157 2433461 76558788 9539430 580679788 232172554 559297536 832751508 629413292 488018475 719607528 491755898 761969444 139036800 748879991 800683107 779393381 620269392 202414414 831541004 329928389 744521093 807368465 695394256 236016389 971761708 424047217 160208800 998119607 716198251 886646421 614587593 146719241 634726869 659708436 372587574 598545016 442906347 654993653 747270170 452329067 176455016 438811766 302003981 260220021 970055698 665131242 673620751 28055814 541118503 81172730 883927983 958804730 79894303 816547158 839617773 468058431 707616694 863498732 881283629 207080943 406051336 941367265 656370034 475432590 156021918 820001147 515324204 874050745 373617288 693241580 92631722 913316023 19014271 438717275 234201976 933825428 349564212 215874106 280438620 634748761 932459659 975471811 645007615 590945171 891244426 983950988 191378812 69534490 935142829 282939004 137820277 193271495 504099049 128532858 902655058 536558109 902560462 58297613 775340693 871393121 244292763 60542864 363055969 3983692 474146684 457183756 38605334 117163402 69373747 806366098 598050467 520701952 985674991 742691159 767319851 18153130 977373511 297244432 128493109 639209943 678908320 917241898 185082426 445847180 578758183 271950811 282022863 663990479 681751071 942936892 897311863 283480808 793577217 21976888 424293693 380139575 850491411 784269219 425176254 987821546 358457592 444626714 229109055 241543089 191975906 674392196 723002035 611903963 798309016 879735833 224952153 685403578 222279667 250870968 194453692 369691318 183910421 286938591 802314892 539305593 866321084 207407961 881196347 580451139 876595421 241928253 746593801 741530743 611186034 276572166 984329042 677512724 499933148 536192805 281403704 534513477 740169877 32765145 999304788 763034378 243902140 457789553 11166975 118270598 412993771 882955970 538026327 989915390 716177012 159919985 625400087 113166388 630244739 937774016 836534214 21109989 978932792 993388072 512316276 701990865 236753367 748572545 72026697 375186074 112578313 784511758 585837650 930119676 199376134 869217784 303033128 397410731 281116476 719829334 912792123 294535949 254164770 853337033 777380002 478546409 494538673 73377010 752963778 291254928 731286261 375113897 65450315 672062666 214752393 158189968 123673272 173294117 757399786 991491195 49378687 600058415 266551 260106505 627281097 424010644 7016484 967327659 183175365 56611024 915748836 34193966 325117041 179987454 446091310 156056494 669030117 567311885 391615406 579522432 605165223 953458906 68065320 118929713 877996084 649299553 896580951 274830017 2666508 830262033 929829896 721049125 998573519 881499944 806041864 523428366 243629663 504892608 993035091 576021648 31717136 314782380 299745405 502052148 508893163 460803953 85383720 219728619 727719847 445586559 214846862 766937502 509392277 937258560 96175891 412104987 472168289 60933119 151567660 767841246 355471539 652754490 796346385 811799900 699849952 74573504 883873898 175646058 40811601 511014427 921126047 761262661 594854346 478178537 336452274 305772582 928709333 653795208 529835337 931941428 754827420 754449679 706811756 725731594 535215140 241881153 499259963 690912882 412689971 971197944 888836321 99980763 84411391 708394295 690375318 428503058 316266240 459484170 662289297 272809565 848027386 921374143 751440850 485146809 518162856 244993795 278366349 369995768 413101792 723695514 682747369 627297577 353126184 438786378 135485985 173185258 977963301 619340794 577289817 5943143 119307543 230507434 382423398 884487843 789955058 478114710 196571450 886776680 946811102 202984265 384082030 310943643 133039334 44919960 433926187 26679603 258929802 648777330 246364771 315135562 206381510 743689845 752434697 392210608 929122655 512156290 951557017 191278505 95424874 212168609 503766887 863330919 748643922 127722985 884239130 229341922 458627387 950442089 551473770 370072836 668327469 873142059 206263200 718612811 108201713 443754559 603526897 376571191 35800127 574645255 894646552 411945016 838992831 550053196 485806154 243342360 75546213 837937543 321515528 840335204 85537296 300349960 462305379 717286483 537938351 439228328 220629566 722274306 877356246 8750281 485584542 453857346 735929266 540748876 14081665 836279952 568670326 873718770 440781957 176297556 26459616 237756316 932428396 220840926 169015345 252231848 669491332 437453243 70538835 223510570 278922370 195783255 763109416 605501131 791665630 890265611 216566036 756265819 571894448 112627575 623277255 588794168 687470493 78292156 888023917 124335338 120628029 778872694 210971890 991349229 717515792 174383618 343185871 88781519 58083432 968993116 124204122 78341081 217460113 694765080 291196501 223800045 98825741 661444606 849679313 500671137 291636845 910316412 166319447 138009235 594176523 660559297 987146797 837004686 203774271 752766586 611440749 678524476 872318341 582712041 267595024 571414085 459092455 935172793 472992767 744931706 572575431 423895657 747593540 717066744 679903665 465083290 704212199 681537686 41339382 131255525 70918782 616374562 257228970 990327757 159704743 680125323 25890482 452102533 939012201 705278210 463136278 872877317 656738245 992955902 50357793 856507950 242325508 846946735 630447815 578768429 460049988 293099982 493846824 412662509 418707109 524910613 420968792 637045067 916273837 580544782 253914901 645907104 453289241 217786462 149578940 209409260 450788405 262388644 690708152 12805075 581714625 821847131 971709284 128778774 384744304 13687740 582479238 277446255 57147637 911268846 835066082 723622122 530186306 730280032 223145382 274556837 656990327 925693596 1378740 818502465 999289456 41733176 581523366 785135800 950594801 3866698 355869313 249314288 903134828 140977277 817536091 175374669 909128042 871782970 669684637 470227569 565120662 193914636 809733166 378281082 112272690 799127462 895210790 684352150 47303696 497835954 304620738 360568951 315690083 773081849 529615636 819497439 511542959 388054009 14645538 646128101 669137764 48677170 169567226 191944436 954461714 403242353 314281151 889629799 721440595 185825508 916311470 83033646 820979753 322129632 7148662 968408432 244132904 176723638 416363425 225989354 657691999 390238305 661346375 238364033 244791505 512805181 367702748 494962217 493467064 577419665 545020525 617330096 960152185 754252527 509869978 310294598 232824289 362706174 282668582 909883542 820759032 203782512 73503134 528925510 226023600 603067282 792292032 210309478 364044390 254138572 969915952 222262385 551067045 782089477 217257069 198923739 218441377 886876519 343928874 211328286 644302304 12925508 240576001 829725714 328604022 989947118 992999392 294674532 14769244 694861581 80446235 978395290 676692397 740347279 390774076 341386621 357960354 897741348 950522553 437362720 225382366 707691353 945520373 749516798 723445994 13801090 143761497 729447288 13794723 831213593 162557218 511555317 706370257 239636529 346070033 752677666 215466271 180670370 499143051 345344095 428124152 875941143 750338007 792365951 534270322 59621141 595581658 452403945 782129235 60356273 980674349 106436982 340127506 68819677 48566794 85272487 680023354 815444027 412008576 948785682 226839312 382571573 49599664 235144891 167655891 459625276 195785023 364826849 192181423 783104873 782678885 752211915 51051672 804371332 210212281 797669059 317337453 334889438 744388922 527459775 442314173 851963912 77905529 113816409 350575111 289411762 479204685 216201857 133220583 939796507 610633377 322500001 707943236 816228445 57811715 610146545 933562703 339766293 928927698 726210925 426125835 573749723 41784973 684465467 246007014 425435909 442569015 116634214 521849415 125338940 827872533 380796060 838650376 634808139 559087937 269694622 739377019 434550616 1416153 882154504 99711914 955478745 662475658 697711864 918179989 484545797 592665748 735273564 389307177 203239071 531601749 167305013 922190478 730189170 29692997 474574092 350895849 932974045 959484233 458230225 40930244 153003354 391967572 84046631 667107532 49791423 291547700 817088466 234662741 835860721 807706122 184628089 433850475 604909929 397958972 170592352 430343113 749170228 267740979 152804437 845583806 590903457 410414587 841670119 497749589 347218565 510689400 928615789 588287355 877473524 52882847 649530379 827537005 589371598 713517840 945310047 299358166 303334211 182407241 945527177 11142079 463786372 36290006 269664647 661175404 579817382 74098824 796170391 606453066 154486936 788894577 138354665 311218571 63947361 202601985 778146898 599517175 513240666 312586803 665295276 313737499 577339997 309688078 548964981 312097570 369029831 389266335 51941658 373529357 102479616 750525766 680641234 832303229 161539899 194499269 174145998 501470755 793781301 65539298 950148345 508203339 638020536 932424748 981208667 643451672 538042208 686004168 376938963 110097249 13000180 49847266 973913212 194002271 10453263 783685876 717217880 963411402 763759401 287515763 781431289 133328333 93989834 325681973 87401350 30150571 515029117 185425185 306047205 507929087 660376398 311854457 448647959 909110176 444325034 536960220 747358844 403450871 224446860 146941338 390591922 380917157 600910320 939072225 333950404 646466264 34877649 511525935 502525136 973249742 731681373 722978180 651410168 887764309 431998421 657920016 890472571 136794923 933368776 309682285 423544517 665894106 207981874 836499783 669581593 962935034 306865788 728813493 36174120 653713880 131642739 652362700 109314432 75819246 491177725 871956981 851585917 569759977 534444025 568640755 5416842 630674310 555247962 821688023 199640255 385363231 505938851 763272659 866946606 518177782 306295689 930717359 583590044 887785932 196230771 551238588 264464073 768230896 74982280 870453273 462792259 731034830 43524486 684368374 582845433 522305805 363163578 108718493 827300189 10129969 867265035 802824669 679522498 862730054 866645630 305727974 174596487 430085067 167064167 330066123 356618837 843516812 885669166 326579160 949322323 773744886 40604959 257476185 598170322 388802403 372312617 320463634 225418239 693214356 638415764 615105793 127400503 593945292 669800246 998591216 348424929 3026690 240960507 92960854 31443068 650293038 206939194 67500922 852923431 552026138 383963707 257439278 347698059 636861522 188914569 891267382 295033090 458351056 455563574 219148912 231247218 702357446 119611989 313131956 55493763 754961400 779592927 27551782 181805858 425950649 308628309 488748414 2750710 449403675 306897064 957815622 412665394 545185936 69596693 989394999 165326954 769177271 794608696 531395116 926492872 967431870 833069267 142241278 445947926 684303853 169187737 822454760 4189710 379838185 308852640 870921271 15188466 995305661 706987035 441695623 35544512 25656188 847315704 265091509 549922163 115484011 832220541 670072351 618663183 74987519 273396865 698855448 783729561 124880291 137622343 778617147 908299964 301282469 651469993 897394258 328750076 86606216 172020773 545162331 584650402 719043187 141964177 546417251 346595765 695369679 489399895 842007760 372739795 42062285 872009812 88269637 897967213 451887976 843370131 984611995 38029379 530591530 266805762 843311208 961443070 174140307 926518509 192794588 925429305 789289216 150033376 106028112 925673152 807065870 335213446 367884871 761874339 860694238 859442629 630338512 271715584 107967951 841672546 400046789 982913912 136232736 264369332 285742063 594128178 720745833 83543553 755432609 934982904 455548026 790771652 934025909 201950572 559461043 715272003 299009115 951073196 608902046 983259482 972259324 859426433 465346030 339657453 495550244 470047831 200726138 846939852 883670337 780975407 105231527 531955255 113993355 37145989 707009756 155617 922756971 43310694 257536847 830505336 566695293 855102832 585254312 577399817 183565510 746898350 150870187 614895322 234010887 654975482 185005533 156295161 40932039 121387829 596311351 662493469 406705491 591649440 989563584 57099106 836997751 911668039 340985358 786319393 335509725 136726442 418919681 327054570 239865066 961113344 785153735 103872264 178181708 975952543 831466490 890465573 145361038 529675708 120376121 94240198 190692759 100680644 566087546 354779001 643915914 180156290 57431946 23371778 216614062 560133128 241501025 295525559 638676070 885160110 11959961 462880141 788994823 685122409 602042982 649916164 199112855 485869625 74008797 213807696 517347473 750896187 89953683 470781495 597884560 803280585 210640842 795982186 550330176 620243389 390522988 297793327 649637449 112614571 731840610 452625095 293461117 522279104 358659753 665942716 348850665 560296438 345264760 194879315 783081611 540619628 80454115 370898030 471906517 870908822 58404132 393076175 750402415 286672722 97346687 295864940 291071693 438782264 197437069 247786146 539351447 102864294 803722646 967783309 607426534 389380508 767905852 224669465 293680235 667771544 695792246 828154199 892714688 29608079 971278700 230876399 230680412 126235244 823637863 978814439 646478568 513009716 642072614 422727782 397159704 332080422 202271801 953787235 748813740 951927761 655321798 81056323 114008463 491960008 116940152 436103609 994677017 984051431 786868307 592189773 562649217 337192605 553068482 693876863 466411087 800513665 239151216 888302396 390465012 448038143 900905108 740817281 728671146 873440528 213220768 875845087 443772550 606018611 118744352 851826662 643282615 180743802 262940176 687291521 809803484 741048212 778288152 984142314 172065707 450397532 991660884 631685069 634581371 422262127 942419794 552335926 68573036 370962333 368323 607911505 55713829 562152435 634214585 148644395 244019798 173882891 41094023 845891820 795960810 546073871 19932636 83832369 660386109 653735107 887555894 558429629 61616782 308413566 340118880 647850391 737922457 440911759 325081742 941870306 759858108 709694850 316011571 311262972 302510888 812946030 921603144 518101246 168447683 902964630 42595837 948737227 990455039 86979777 628644798 178394760 83770036 170398715 829746241 668714496 434228303 628574895 361920831 647370922 425735341 383527767 372308664 694755481 279912258 226825712 416486581 456250926 747670121 190520924 160303518 725661856 392898585 898087653 20261315 892558005 102915375 533706313 350362833 461450742 310753458 160148418 821140358 623428989 758185262 668851325 477864610 682638020 160142605 612214228 529279979 756194897 529578058 354247118 434343952 121683375 254147142 639820833 169769869 319671045 620750160 596933759 989712580 423925210 140450774 624950350 671849350 615326461 101006875 222040560 198941584 560038854 587462936 576761318 354857561 820245689 259155079 411531602 284473013 510455928 510576214 201560839 597134020 411462681 555386283 142891026 704598497 834695707 132754706 73976125 352771481 636166595 517408733 527621778 973115090 156917339 103147191 125885789 478799119 634484758 233928236 240972438 171212185 415418180 624510933 748068089 559681542 510108201 827344549 707283595 638576866 400733371 897113102 766075765 871041375 623875397 327928073 559405031 894954551 427262869 889621045 561229193 23931072 929358761 153674607 456081337 964720432 465227107 258717587 747062035 611249732 588230145 715010226 298388579 270393149 808391586 635524928 327801497 701558872 644343675 97448270 383411281 439878483 594295099 900759420 641120129 57636677 352225589 811743396 929428162 100348783 77747620 714533455 152268670 102180920 435718984 557789068 928211344 654895511 877507250 580777626 325760033 292190602 311838197 113896540 988301770 856536578 898191898 309091807 896158211 703363090 549532015 636034994 274709631 667267484 540864698 986625061 261701839 149353681 803026254 503619422 687199307 967910067 313476175 734213483 81374194 310474571 895104685 659194963 991621522 837851819 40791880 773613448 437558533 698006908 793365864 924840147 667274099 851794111 198875606 354736152 746868359 480235860 803331343 897349432 791443565 625411470 862324082 285609664 875249878 655995814 547788287 622061529 959222318 704434528 233374360 736755275 582044787 634922838 985534252 867887472 470914789 6256795 877860584 15811492 764010870 235851334 466950955 357637667 316353209 178608005 607042011 788136609 698348459 534674436 525305220 649777927 773721381 926840675 80495341 459272585 189094883 632679229 481300236 882746015 792192804 541651001 625276537 561855799 751047822 50144802 155200178 305429544 800389343 191660267 239735912 607026049 938567179 569092066 873301171 86098656 665896865 316884307 412771705 231401999 418193522 431598135 894749248 979316258 833428328 36770409 389390848 785923063 246633637 273453542 304132663 970628807 767920646 193135247 123458760 571312132 485763058 472405174 838042283 193651821 820662803 635578245 930651645 133540125 310724429 931956653 343673681 987119829 94672281 270062862 122138266 866643067 687706145 983428236 542204773 495277160 406605162 920128014 391706847 175352033 966284461 622848744 523169701 909381575 360359316 402114180 729851619 839738858 459859437 777310225 890517526 796356795 57352209 10956262 437592215 145612481 413306286 551254068 562439 467510858 315707258 850857022 818331485 460813308 156567907 678729313 172988864 327573271 522807380 265373481 546073013 129667675 686178096 724604535 10619912 613360873 88716058 415655786 122718942 957694388 295450097 545654714 920460004 592104177 299947402 37142199 152344754 435479983 864177487 672135280 669635850 701677971 957642614 677372848 543305655 652934222 249774114 720919692 795548807 470404391 298200297 443338569 529774596 440003831 562451881 256068436 868178067 648588722 108189330 958203128 331687360 824535010 257118303 594609470 156448838 768661091 800772142 247787948 595262123 732673441 529696597 545653990 851665384 786887595 805284490 703001458 318067491 73828714 924243258 830764920 711966752 367557873 559050783 181147064 750791186 459574736 122189074 981418631 428290066 842201876 662978670 462920265 963720992 287746937 568646861 70327978 200188603 583959820 369087486 849668895 57799286 932418265 165280277 449418238 974027207 894104935 704817586 967472963 670771999 156711033 893143470 451337781 745190691 381788824 484006991 704227755 984719157 450032180 265367954 440943182 613703557 155728118 946553914 764815745 197747146 254110609 729740625 942092907 102181533 994816170 995462021 957307887 102435761 678480674 723167842 42843812 716629570 454894156 946111437 445958799 497429766 734250725 616662611 926621419 564784100 30302347 317743495 822056974 941311753 976158095 82871029 711047829 884248173 626883610 665377663 590916133 72474267 554648773 484731292 470197391 204588701 545385648 78519887 481215067 229062713 867642340 501051521 792577404 409112347 809934086 483589547 303037031 873164335 420943419 383604774 838367196 399671993 171472678 102451794 728092358 795147344 15414846 44815561 976058946 233109661 187358343 297503065 999869785 645584457 45654101 59807327 427767100 238578097 2303231 222422382 655413719 609477561 429713461 581424966 35752035 846662049 854587756 609349177 198336690 403736577 461328047 933257376 316736335 541839020 547104087 301675952 727207499 582119176 736146412 353166040 849896253 864612445 814643483 914160781 389229509 983711440 659073650 328324367 750040388 888279032 671177821 296555829 647292154 658601926 309370574 561213531 442834083 757305167 368043458 653331103 517639010 350512144 85481142 281561104 116116168 382615172 154377751 974827212 447221534 721386893 544207546 449663233 126707419 886577773 651918327 278678243 142326608 664533381 505071656 589293668 476707190 880798038 574286564 375743536 72663350 36445659 66966764 73019330 546924506 580120062 206669671 900450429 490797076 431776008 515844507 874320660 315412194 59093768 698824150 423097470 585389663 801295263 545388842 728208271 857390110 134147436 266124050 206584289 504223338 319050157 516808592 696116489 721933529 565225990 565021921 900445527 387193295 379367339 128125377 400764753 465956669 578325923 657554356 715656584 283606104 553299297 973562893 422756311 447619651 463068434 605140887 408259696 671737853 474631597 790427547 523654272 330824736 397936549 437251075 433975938 232558884 267993165 231818551 106880939 475056383 438723560 541469520 668479240 334355035 588180895 194927806 609106295 949537885 119116122 612665824 674744486 872135379 435105575 879906953 667594417 534361510 812139233 816799317 843330311 446580351 855856448 228265385 257774931 100655968 196259227 802999747 491873515 979770221 324157413 559994525 69177547 395612979 200892498 886966920 814233491 683475272 950264424 319543935 517108582 547047043 758151939 590185050 289224368 658578597 694999369 302120558 36996654 935574370 632260676 240568587 264919817 373795679 689402453 306302672 54818653 672135374 99025605 393538073 671619551 776977029 699061926 154305390 59563132 400367684 108052093 329159091 942343523 412583550 496424111 641483001 417502784 700148306 992001741 459377699 190871494 635746356 942461194 162263624 540166334 783849104 906740563 71848524 62011381 87576407 612481870 288977177 398082262 554892969 896106064 737746125 860440015 594250689 669440338 372175350 264830889 456460778 913118967 997524912 800048786 761470321 22866497 533012518 679566319 400359337 357576454 120209766 271241317 420409376 746838398 70100898 547923168 108156329 506410572 416085030 415958343 923792025 598276325 8191996 759195513 194197809 26004610 653222691 134044996 526153159 733662584 515671855 537985500 701438864 142803076 818730551 978580223 522692434 661454438 627770618 389200217 200540421 747509614 624872073 185137208 422580147 979774573 232527820 903544276 597690999 484547904 25753717 762247437 847782669 550239273 868010622 233095406 95237607 51488913 21798342 378536047 407686384 814309845 659131882 485413706 888762995 728089763 74824381 994932717 83338650 139931225 112419765 213432094 487432308 413094355 980935739 195680495 462177273 621806104 628989834 520275277 136279765 894803592 501555090 555386344 816901864 540743467 846512084 489286680 34477346 601699443 596997873 790829967 787661017 909305186 338640305 477545116 146478921 441866018 991890447 418217317 488016895 302709823 345005140 794185503 283297558 198385927 620025834 289337252 475964422 205545690 574456359 747113935 431673388 820755251 716857191 83282433 799996336 679751684 225799788 47507131 634946903 862232365 469959493 488457742 472810790 943503009 364594271 27672211 829697386 131513449 622097592 735410200 396011693 178028671 978680512 949429003 356439103 266014313 206153173 221779149 703048905 809639212 847918093 769024635 848370500 969685805 669695525 956523952 187199152 615446398 712587805 638894912 402551698 321812489 111043107 726236886 443041597 250021574 185893713 73186453 187522464 267333714 640757730 374862303 166891901 655409440 180616776 381974002 79590478 476942958 862078164 837437650 256075358 104861731 647155796 627583743 213332958 871513605 457316060 379942430 921411637 302920273 175777678 892080133 400934414 495274966 432293691 109413251 189564181 829741900 78451357 971862151 812391963 928709704 517901921 170756676 573771066 331580611 781435551 212769403 988722219 174633049 581015507 495528342 735630174 682764244 70449767 141748113 783259122 527888485 352259994 869020582 298019868 268827048 947775763 343769262 523655601 855886704 618853749 932364501 243379976 675144683 941431838 233167198 229310778 63006365 373811477 755427297 929295661 371152546 579401321 113204158 28284492 136412711 556392281 174594625 27036674 174674335 438527090 577449944 329422445 361108283 508211464 317146425 784742492 772123497 874772554 819853634 312765256 238939154 257658186 121516203 695400169 954374839 587519583 421168241 570877243 389933164 979598642 423702468 296805838 907365491 501784877 72820051 827325976 837024667 795266297 911769295 301095370 884746968 963439076 293688959 206755727 244446689 336442033 39937024 529278115 415840583 432222640 954975306 329772048 399772630 904084708 386007260 983940040 894748183 716953184 989157205 428794224 998811834 494671685 637583463 259432283 680256381 629916659 837569986 90372981 463086439 784039610 160470067 887437762 949568513 261702681 570405094 671075842 986840534 698803189 369087476 498434820 925832923 15057160 882475893 299016220 439995271 472989597 15402176 252189106 721398633 549917167 477378351 865347371 510491834 419306894 352528313 971610217 746929208 771747487 892681389 406390675 888461416 76041811 49435437 998921165 799180197 834812682 213762836 923478915 77605819 19463049 370905664 773514094 304594318 423080981 250827225 212527950 309162178 595735855 597616794 768352562 649795037 58688706 562192862 721991234 823538374 790343920 466796692 122880788 859136025 570454086 288811427 972287680 441478466 895936974 783143428 797688246 624384732 645620873 265618495 699187089 384954806 425605677 774938789 424385666 4513996 394539201 925937474 150000728 134333308 122173489 695424797 79946685 382474492 105283512 745059317 913372247 173508272 705892294 266337101 753850366 633361332 559162495 838802563 607280363 967127127 54128487 73006731 532572758 663945584 480490016 939598748 660932021 429921447 292242828 72309575 275034198 477280906 17414174 670190263 965631688 581713386 475753479 237725532 125784893 736264980 383871280 248006768 551935238 321580853 550883244 247869330 634961327 403074577 67546209 819626666 876018116 241607491 587294327 724381175 591315480 433622850 947972658 377857972 474122472 904205044 747249485 169848355 455246952 641414843 942682879 127609334 783898149 973033107 995066500 547146297 179856461 519096326 472197468 57595558 54170504 9983671 4639651 360466222 48027841 606841108 327439415 126303144 596054177 352451466 937492485 860033826 583750882 873657225 242042926 200377029 651243770 463921486 693995658 524769778 567172396 819111476 26885908 228287202 585208875 759059402 358078784 680617234 363195853 929177470 28642206 922235332 311051380 204343410 550441886 242491707 791121240 376200200 170522507 467864073 608995296 35721148 990782228 706767920 501456433 742737484 199511348 742653691 839550023 17494897 995333433 448250606 958441481 666491678 337763613 107037627 285571106 524856560 152271010 677551266 265789570 51953259 477649270 864656180 970000928 555565235 622482514 756934722 520436358 965823750 375119211 107042966 190079382 681553060 453572760 683136822 116938045 207319219 93162306 187951516 270161419 60813820 547356236 202171892 222110486 610685602 659499554 312670373 162016163 935873919 419268609 244369214 110221180 838029165 410949513 599726115 804044855 588484933 81849953 343550924 191685281 593637712 678497171 998375370 915705766 612666252 836173133 27973704 438687853 660927389 145747230 637458085 250918321 512050469 67023425 779340943 189065529 875037805 251354955 401802945 207393299 674920532 541779531 515641350 733262339 51600600 790575245 930694348 255314462 688162877 481244029 975882956 916466582 525763700 780044312 819734208 668004887 786720262 569008176 905095104 525877288 253305218 900513695 195831600 790748074 557133577 958390902 41395037 578853103 314652319 971783536 181319077 288626699 748996952 381449648 340640418 414256312 785475184 184565067 958239745 672526937 289459351 514934487 210821866 820269994 276541442 700326861 93805899 292772667 473342926 480404287 608912758 673706257 304060467 136617244 537052485 101465938 394805260 835169144 974713608 816598875 62936956 295904108 435185716 586160217 322662862 299298251 394487165 728307122 782223500 458350741 875368508 891344226 39801398 623143767 332615865 747368165 78451303 85469167 286232966 195463847 856549090 69098413 209273598 633673498 344105893 958626074 854636229 473773263 128630551 868931328 414701865 352050477 213183347 287555476 141444787 530393149 68733467 321474988 369907778 388032212 860726655 998054694 744081493 419382218 175789055 63971763 270641603 722989601 456440095 139169106 806176630 409731675 981384253 287430201 74898880 789758329 645040383 405907604 322030644 252311988 388256390 326639035 108470394 920673462 459668410 523972894 364619122 172940973 405499610 846197313 436683160 830910198 349021514 923800700 526622138 699741652 854047735 974766406 199659332 139845901 694792283 793014961 151706929 146118169 924134293 567297328 833508223 668422796 86364358 645498766 987399725 477021821 571557991 626447503 728950416 743394738 396532651 327531281 367776689 682658989 859416783 65563840 882475804 361835446 30286737 783633703 151485659 500203958 789394949 758128266 646150148 954353524 555137962 338619835 463311334 22495481 198080710 612489007 819613527 149138971 552657278 646956965 804516195 197300364 654704627 946388469 875825363 327683405 966100904 443726762 524576431 47874470 170186300 439446763 387049661 218842300 435951969 783755142 495130416 914549334 100410623 101250925 386843332 377207785 475403448 684037141 994776589 56475786 350564956 122080217 179393913 835055166 718723710 524382662 469637016 467005352 473791982 571155030 284769536 103459144 780525738 620016693 226451339 298513246 760948854 116220423 367413690 761736324 404116023 325488057 754376491 393105060 44828670 497551268 717781904 774772801 881748785 786012691 351550948 731866628 537783853 839378011 874031786 248005097 143525549 301590236 718153049 482271610 959649346 550555754 80549788 275182859 435521071 698381143 990683604 763744677 249168895 386500719 260677343 315751425 282990581 945514852 151676596 149823581 11727665 451083097 836158205 427464577 324602881 423756413 702794527 225811483 273762914 825650724 654880670 799435962 504195174 542398546 971835802 780666091 973684090 99597262 560696497 562761567 294865864 878905727 635921853 217281869 175820125 617763854 260978508 743739799 684012301 366067274 584380132 621530680 111443422 338487680 708180609 900089060 513544296 979905322 637177109 609837030 144304613 439175265 381995267 675256317 576082651 623850244 906284420 160016057 421624199 266934564 586590127 176606427 360422063 885537542 809634908 208086993 910912318 428107766 389266587 740723122 791756285 684956474 127046212 837358453 386732600 266873448 100933204 195654338 918159859 855594158 589461274 253865617 22778442 704295721 754465719 169165407 862546222 510107398 120983167 595611094 209499412 949782613 673482660 375532010 715291590 215528417 258504655 569300476 8076696 239393463 831498962 257325903 37195039 766668883 713003801 103251631 253487999 847017325 4301271 367972278 259762469 498428078 592712672 6423754 495800237 350861571 822817221 579445559 815301415 88524139 807919330 89407453 24160286 48773891 940159467 762830380 905931300 631208136 947057992 190009042 755782522 258853252 466066423 407620576 304180057 479887129 485845156 509531661 835890518 46434226 546022368 371772147 658499611 511585987 477079167 779964666 473486563 513635164 463542649 287154093 439801740 109934249 153040592 523318952 808729272 742061866 982591183 129153642 132925519 662821820 739342849 879308774 831202450 628656924 315867837 263932293 316618847 370930649 342580535 528783681 187288460 991473896 890425743 974568844 329663343 651601782 58819955 611976490 171392905 582097597 90188768 335593221 709848490 744706566 242929471 645102625 770349714 805754264 775050332 294733008 205106146 483755880 718232238 176109096 27202726 170764416 464895906 328769878 72109066 616930983 899794007 552607973 340585222 151402432 393231832 342783408 402906438 433113658 952293171 136788657 103472129 388604001 471660012 258067760 492559419 693831556 262527356 74986084 199473317 514666861 30867571 271173874 994831137 397204681 948921984 220493172 676838824 773291451 107743854 109711701 934614091 859655113 292065964 680073399 660776132 930130213 572950547 179602760 703819439 605701038 13189441 763512600 4273648 452699825 319121997 885454240 100884745 709908692 199902979 755081040 732017687 671914028 800279621 687289777 760742700 239338231 130916232 54906253 788501260 150844625 17108645 922299023 952363303 756704652 808515468 853039062 911916257 726632897 643179690 754834945 288898957 602997323 421375379 524011375 535128336 215137652 419178492 964447506 85853783 652610727 297480532 910022473 709662202 745444500 288789472 275038058 175069543 374139547 452208626 960266311 731677135 308770285 331211640 857228222 888959370 573096274 514378483 595284676 580389999 438073207 180386433 988118158 445151461 433511916 612257549 403494900 628773203 859010429 706968970 565228526 202669344 61486235 364816439 445565171 622291022 760525637 864718336 909843680 771725339 409331591 33969505 891378492 211884017 354773437 890179734 111991026 391196911 957519226 421578685 939528962 251656749 310316530 90361614 742889015 343855131 404930967 312598505 627972181 57221253 198708900 16601336 462797905 217562460 902811581 304288883 750788438 601420398 353472684 4651873 627180250 754563507 978570195 931180504 730749181 744194176 113676699 845867375 345126901 188422149 783714956 940544866 490037818 97700894 442216475 533133572 358526696 995507616 137418852 420522710 389607455 852644525 789162096 11335916 400559044 609591345 537163767 484434805 407948108 386111673 553725263 494954504 536867078 582376097 509236658 253706499 704978892 383919179 790108985 155209813 368138507 159245799 576218842 7569707 983605962 336316170 438353542 125419906 85473744 101003738 499629460 71555523 766973392 863023202 363558110 740769908 927497728 761944375 659806935 768799276 910014974 34492751 992909265 436304070 173882140 988281830 207480008 279272305 611979270 459515001 510439255 169040559 181650264 97995066 607306771 18181451 43838214 291757316 33951434 442533528 265998570 959273114 588920766 748279076 331314827 477527593 422894756 179129039 596218390 514377367 774360940 419708645 687701024 941268482 839236398 245527974 975738753 994298504 445443406 766725339 45561338 718870011 997337599 178743988 849038476 911659192 401087663 844437234 221611285 255173403 574882751 162759561 850710516 530721697 342696075 612609202 587597371 44433765 72976432 489642964 626448327 232461136 750687002 233969996 566270272 116615182 606637120 355007102 690969209 46613399 35061797 542057226 996120508 849364630 558917538 632800106 832606095 85283811 535753274 241326564 505843775 724883002 243661372 124821153 972555442 798152149 709249645 172067708 705706673 897619463 273709186 618844016 52758932 457102391 292927399 1927182 298795870 487934903 425030783 549462391 32423049 444609040 93494905 403414674 808550483 57051957 657778072 156418965 757732606 778624828 548843738 976077771 475962077 533726908 89228629 826053111 754434995 963952783 452468011 884274418 344605728 597726307 644916045 886242815 400385116 138389432 25555470 261862823 973360514 127539289 882048001 120697693 95630505 584403122 264267150 716920105 512479705 417170467 449566940 334568212 353845160 954641142 113206649 818677987 658702804 188534137 459271153 58493761 620622076 530795944 991459533 491787629 129656872 133977498 610254391 283255659 176891889 374506273 940223314 354367891 56783109 22907329 974367016 705545714 599223102 481853187 656158920 308410442 474088960 928585994 800591648 540667911 613686207 77939945 544338654 960837391 447690556 246648060 796929518 180655806 987778190 587060943 51704232 442617494 261952505 282593537 763103674 836525583 276719367 178345686 334883309 289253405 397295898 548854603 394292063 569305531 229518920 406137077 588510706 971508911 657865792 647890387 474675039 650562426 600936958 481253852 563282623 895300373 752638584 529610069 767185423 911520711 405369511 495313469 272127294 422290476 822595799 995281284 702544990 123322445 513608789 744007374 706708526 248401955 650139520 666405834 814847654 996626417 890696140 708539204 808574767 208505806 309365230 737724269 118055627 593588196 487825930 854838258 269086101 25575280 39437901 335887606 707470536 302718415 819539228 811163437 109288143 580152838 839712762 466603604 519597611 981510345 743665685 487256935 946789036 373305590 959574915 38065333 773217628 601009612 603432913 84902418 227094511 671640264 305567694 790316357 788352223 112781024 475563951 886420727 502558861 214343664 401232777 111715339 592207900 296193942 785291080 642338210 942826508 626065562 912837582 318610714 305836855 669604276 958271154 875260789 469246266 88873008 825654705 933616221 82119006 42423340 636074426 937506261 803944589 262986981 964549024 859855593 123824621 480022056 299092912 385426064 934036710 670885517 250675089 516395590 787039647 151551361 407869945 600306690 753332415 594641623 858685332 128759701 450275473 944029182 214422051 403195328 39989985 793574938 990775895 43028768 846756847 449080701 662310894 602402411 683927611 890813880 569859063 357636381 272982938 218921580 536776634 689854651 896867630 851071507 820952821 592311103 269356916 391515351 26538488 713390606 842900400 797345249 822681172 299379259 409841334 298764738 748246784 643926604 480993229 864157228 464407756 182452187 202132664 711170621 868644042 763656784 299665224 546700505 510161969 766837461 675633256 647706502 821768066 951635168 135582848 534441728 386617873 183852772 720507297 7800219 42281978 826119667 202193779 56348084 937735360 697206389 541748817 107438529 861813237 567581874 128947192 998516855 516418497 797589651 972136329 23984023 867583629 977962690 933348833 746525978 406052268 471917239 665689053 354804779 474656578 983530659 699066205 475530795 171454273 355976102 675093167 307768462 495411679 820804723 900078123 408903852 20866731 888786055 90470699 486897560 568542078 390977981 421310889 441130707 925062346 98518631 750668972 363048550 224343989 747289750 679091257 34709718 193489240 703048923 620220791 507489119 735899729 121121036 419310540 838501855 759335251 28433765 764408720 119220517 365595536 612328420 671664220 890268203 916217639 688032404 901042503 540241392 34371728 661798663 866158478 74302904 633122005 949457274 770489856 670575893 198907137 935022255 526021571 283774358 74500523 256682328 541684324 709921267 145444415 880220854 557546780 14484162 107072558 260866857 515403277 734718859 1420121 555458487 187337964 866192280 132972665 7528103 920682053 182362297 460191816 816876025 712307962 800268434 159208799 153262576 169144846 286254224 636235866 289669840 780733532 926502803 338143335 286082970 573246752 396734843 302590117 601015753 562651444 522272150 148465038 776645560 979863960 242293610 561152211 154352606 160278020 564228066 12390905 269465211 859578551 704312195 290419611 696626107 752999425 800013989 873007185 157836441 516630234 134283050 694787602 171360090 67178487 318313650 301262715 298033107 985547219 48358774 887148728 700061641 755777005 181500987 181950770 141877754 190794851 612817126 133551377 796102958 560950172 887643530 711341358 261619765 500885751 923970464 102495736 979134596 74279285 371348389 47281117 868173951 878845296 637945512 622952784 645493604 855686417 842172382 669668237 3221708 607023266 337420667 147951873 760127228 160085157 506880511 624537135 742926380 651984739 494429942 659946731 809302222 76929901 820345297 948796805 769073082 295424519 508708192 381141463 856107253 723341745 331092534 454526452 829858637 710093928 424286638 42971646 808587633 132266764 121598599 663990991 905132118 484179238 138277126 82543923 738016364 301259043 459655670 218053088 717974768 755001273 800194044 66252183 890394822 283727221 978268433 596030573 873556842 714922126 479129877 162679181 968585020 481225824 104441827 274564292 152286855 685589766 64089461 343184163 184232049 475455761 243598507 739258623 754071132 526442988 720181518 844698691 467272808 868913661 134585415 25466734 158577392 431012504 511144609 413165890 196495039 186983615 208304138 884876814 364570728 733771036 586395163 930046007 185580986 898745327 195300588 625189592 368025318 442810936 631850078 253135596 46994479 823881636 180483887 135316473 544423235 946083682 282458541 284364259 594276704 303495197 757452804 196135230 280166240 658073253 418265277 251878335 476245254 41214127 557922369 52523080 779202427 421410877 602736022 567394201 900393244 142206534 891683884 706678971 746560174 705771058 877837687 667385442 431412913 250906013 216134665 949576391 783269459 425656837 869045037 723184861 259911505 810908778 40408159 663953409 82418880 619896713 924197795 559059622 818136899 838099973 96691717 838274481 648617079 201301468 828598461 607255022 488359627 860191808 561397041 871119465 736053845 288137363 820543623 522083920 53132198 388197774 185503113 294294923 923530472 114534807 782946975 10431722 824241981 33449655 588600633 497595148 13516019 851413008 880975330 666936209 806700765 39626775 359699356 64713815 58098850 65111799 611842633 307608025 212748696 108059764 247051877 385376704 745817909 221772933 414969075 367603125 416698627 132457091 57572069 883961005 233734042 449472856 82006596 59310596 478082637 271987558 317297951 551333789 186696180 782069635 528654867 766326180 369408566 797624298 261701475 238614453 596272708 537557809 234294783 457175211 300155034 347477441 711808254 561048156 885468185 405936848 126317085 762021897 17937990 651112023 609276306 765860685 324405247 752652216 746980384 131061529 430789885 559062101 744411207 493618690 450263804 952606256 143600959 656480754 799981597 335108953 436464189 413712928 520110243 156267622 741720665 638563402 299640821 366266065 182449747 875213799 13048012 399063708 140013737 499884196 944336263 12608890 922418798 72820662 781129942 535271969 445322051 591776952 383824848 194494837 310602850 506313643 24088134 196371666 456715053 835074564 995703594 133911662 893273540 114059433 539453420 811182189 506229566 904851967 388096891 458987851 738856838 729037802 892667394 743308035 361551342 392816548 473543970 37955591 890862557 225772118 834838931 390919129 489762591 629249229 905536772 490859982 193324748 602198003 651534880 126003667 796649172 741983094 397242748 157075434 929428255 729719439 254770058 586125857 464276627 709740128 759273953 946812363 823216987 614461863 546909476 524544465 384369617 200844550 511912244 433900410 129587381 564066175 628598920 73748322 177664541 887849030 806478893 565387934 129509266 182306761 841386099 355857963 201369584 108716339 844397976 238894944 74977597 131777865 156830261 758143565 979607807 43528302 517180647 91454410 982385918 552080461 592918279 287654987 147400949 134107443 108107883 243406077 873444985 117569441 319149045 15521674 198482740 829477031 143554306 125255767 487580860 292561135 726382094 465810238 269726170 22101066 648644075 202970272 767571440 423407959 277532674 62007041 183079515 796417431 113140302 688250402 26178872 31139302 615232215 316795757 134728547 730095054 766652923 750220584 750387797 448080752 443469167 328278485 953257424 67121197 823125719 835601351 44421462 214681375 465758675 713359888 3037112 428954678 549741932 371543919 795287524 930580623 679053463 58829008 804837636 962611326 484299393 855991644 866730379 664400984 644071377 437541445 261642005 788895663 915717840 533266266 895851770 133348085 586922904 845987670 306337296 922373840 33851155 248645357 258124469 452014623 201977410 863961537 781965111 406965371 117671393 13897262 108393710 702076136 538672098 868875733 750734579 903683914 627010765 115029614 523589442 415756028 319403347 444638545 760884601 270737832 429675997 744956774 745690539 770416967 663833794 812905094 877588573 296866281 949245578 607663635 806158528 598498748 386281754 859297269 747392683 499470003 689948906 462548261 343458134 225580359 786635472 993288396 989728698 79078928 109565740 309747350 832908429 843681922 281361754 202053367 615089173 946669121 586671 771265417 465489429 221992867 201430124 143268688 56100855 126423418 5147750 638044626 9749810 792245941 411426615 303499287 668323003 939146066 561263983 475277209 277976283 122624908 64455765 858409605 624949003 316704430 397924601 906473078 420654878 190533622 182692924 10027823 743251182 985094881 726264879 806658881 757129031 250936330 979927293 469882169 817889282 181966190 407034248 263952227 980165827 188272969 832334665 236533091 283634515 940657439 462166630 978463351 844370270 803365488 439181407 313753953 884323351 759022949 727757940 610256033 897009964 969881093 412779651 589579414 881325240 242895983 18216548 13541310 19589317 592448612 503937245 336323359 882808450 17102304 127544378 77325571 279364393 288349734 833474362 426424019 736767215 380718559 318931381 19400059 789305738 109055373 237770600 530266939 460410886 784020077 372780468 805936756 868996935 166333767 156780042 19835986 911361071 126737201 481022466 84874765 31905016 869148067 287527613 495983545 858050504 150020772 227535178 497318536 43138242 142815849 966999436 554438042 411511138 477878011 790169081 510305933 47130353 702636451 892483340 381966304 932572921 511751643 883990045 769126207 813664370 660851139 572555910 360165816 851140387 698050601 23851231 616255235 672177813 305957906 693337978 489740922 339738790 827483679 639320850 465227135 54487817 94827246 263702371 995576530 474564342 473841862 447845925 241142801 846936695 842381318 306187525 338843302 959833880 629336541 455064404 263213905 691808210 911133366 194629452 582425533 621939401 648751764 836152332 92806061 50017705 334072793 801154163 400595051 192827896 287175026 2025179 871910398 721246792 119422473 167335763 355031942 237237394 371927808 268637453 797557894 569095170 219398373 771948721 568962982 460354060 805526408 872166958 832330620 528848701 970346065 997139878 723062527 428791908 253513313 644925586 469527676 344567328 108692142 446691840 236681953 877661140 548214619 631632886 371821854 303314366 529672976 660983826 702473791 441332655 769783187 380609259 362882562 524492502 505672259 37940291 29051420 194905064 375243875 949438800 356569484 363572002 627030719 105744136 757218599 733112287 241158677 377315445 168689158 778326509 197476926 103792812 674672120 114224714 294612104 15866974 480470582 861874189 472603536 645881519 413126557 132059963 120159606 133435705 774326032 386955629 999898992 326721559 238310383 707885749 664425769 60917778 933509638 616286535 247086243 203965174 543781335 824637187 660925703 226061773 142532120 508524928 847861596 334311259 342953309 81186289 591430181 121215710 431636793 953453662 447573637 62609428 305110419 279967470 645766265 268656740 132781992 238881805 937298228 480199628 282380371 412610519 724007756 504771302 868582111 333021169 917518282 101631799 612880704 849619140 46057113 396001706 976819295 417752855 612290552 146937703 68699550 105032532 369874103 455174145 736755450 45774642 730037404 610082008 514074821 258040220 257532135 142918681 840970326 973346122 791445192 201032015 872795751 990602215 745612220 452702646 158804016 20911372 850216033 845678831 1136425 595698231 391720512 486253296 211481861 29537749 144572866 774501214 406301963 121739169 236493695 249455088 259050816 191119005 179112013 481457917 628620755 631181766 779446054 99277202 984020893 757782113 216727083 104832581 893132323 663899277 957814110 635465678 355421212 781035572 429634119 333851099 735916819 436175303 297913132 494202030 28746924 49245643 39507913 909086695 727731320 297867012 263922387 924218517 320940352 270493246 591482267 817377659 84220046 773836794 105963740 645091770 54769798 905496425 799376051 183252132 556409613 567854953 288679620 425385286 543810073 168807224 149783994 126361725 264413480 874876257 358244035 242881094 697125322 995761221 256192867 2674596 51469125 402072941 325540194 434019973 795159589 207461655 874512835 957729861 646509546 580959377 37303437 826223666 683221322 777291096 19596560 233256498 469987472 801155886 973705439 899557908 715709672 229381065 744438913 165869515 695609049 889927728 383502940 412563296 641497806 22431647 587017868 920322966 38264923 239294378 697493306 495845575 626956892 592903821 250204361 621556224 71870808 875450436 586181600 999691191 435610042 464366076 668816615 890484500 306683988 607892226 835048678 382495290 293177595 336049990 900560329 580733159 279560186 579523141 237954384 851844017 327482369 393601393 318786706 849376006 293003626 123873718 796177107 730417247 284314854 845725287 954306836 16298154 402731891 882169140 891609704 261380094 460636698 89291199 447785655 500483462 276007012 486210345 439274533 751109852 187490216 405302941 977191897 144840388 636389765 885466273 94356401 241075571 951320193 663477188 21258119 811244765 988287894 970059422 318153411 33116270 725270040 318400347 223481619 383227203 816988402 756661890 198232586 212118639 651267660 332540333 7325351 749674901 61578245 487681608 31758374 602573437 351421753 137735459 147982417 250335608 370250367 151014770 183432321 99225360 726184070 938132315 399518134 684743932 567056820 145731698 282050665 165074882 953342940 82884163 509406317 128335016 102094629 988255861 623661379 694851217 552752615 194509914 562090814 669214943 496101497 316665026 627177852 333430074 444545604 422000710 389840544 879536516 706797207 228786400 798107720 509737807 208353350 641202097 208945359 3974185 13831659 424633669 92080960 748051093 878426728 185073266 771060312 627167711 500476426 288264822 687841583 360953966 15042918 260231806 52731023 684940946 727749002 363549690 563794507 186700449 453260023 940532337 490171203 653420481 313019809 646617888 330211647 84262420 141046096 564371536 620286126 469915825 754070966 842569438 303874175 112852 477125848 70932330 76971692 256104619 551129247 580495856 435030059 308983554 340427678 658406074 845793348 336297483 620463733 411620772 987588711 922279706 905178815 929726531 955809564 590253331 726607947 599918072 340240639 567917482 528407953 120853630 781053725 734021479 233334396 80921785 82584578 937285637 1892590 526211410 623387310 856187485 932555915 332454607 553713534 509436565 280437527 250723701 85560976 750030959 763845203 231632167 890869153 359589567 713491629 362318779 896146147 563409546 776284995 264870299 315827869 587654005 611433152 98820327 624237910 271707895 26231527 177024841 431448127 184036834 127362139 828518898 972723495 16267067 289665391 176140338 778874243 931120094 379886141 419055938 512931553 512749647 386408643 727784661 975739177 576060789 297102119 518658424 584045316 696226820 288005624 563451050 938145988 544719983 115842695 325402039 269709318 651836812 526434716 744216061 794552303 387799538 711406540 34992686 463590902 128668043 63248337 532905661 858321703 91753944 500558658 738377653 334219685 482287309 714803310 939622277 64271030 334703325 719037723 710551905 706885577 909054706 836414280 903029923 211408888 147153716 383234782 330673811 224914628 565311898 742029415 465389897 781353033 492871926 78655663 237623902 518898596 774031059 463648238 771975729 274208593 248515552 619433890 376081936 735516776 603663832 117688142 481164896 193086044 301509205 173644869 746200261 679303459 894566065 194012895 975863067 170318908 274032972 760219642 612987982 673381123 214399160 827245930 575737569 995488750 197097278 541035523 769277441 803960370 198535412 910891945 588431052 762621403 987814379 709557263 139274197 851401388 746146250 909224665 158445144 29355294 772627674 518345555 874455343 608227635 272000659 901605709 339007339 897207636 665003295 965272669 425082448 988705680 330144896 806627222 607043881 390540164 565464230 740419671 600039201 491286179 368581841 76547547 918783680 626906892 507335950 12168466 772587643 243615352 440114474 135357073 774158764 861921210 442305982 556354024 384271330 993095964 421678898 866240099 121051918 729637770 218009844 108678174 912230407 846293435 49091275 255308593 219518994 36447071 766026368 639068083 853620077 561985161 789772912 605282891 994999151 301097444 817629130 945506597 259127826 155095368 726386561 279268324 883061568 179105430 219305047 626627619 314711572 693800811 902901682 649014602 368770809 769478771 958191769 840078595 145061051 667333801 935786468 394024046 874047338 153479089 126044528 702349113 185646682 663940718 901507974 680258208 739457805 759594686 404569733 778440217 268403042 480989787 916553715 900485233 197980169 439286465 614234843 138511315 956468073 461150376 147961294 197887400 216981159 135271431 826274878 906121629 535768816 841360532 729647273 268841777 968911877 688658529 998888534 590014654 131891115 809052073 541759816 126488033 583918681 82298887 815172170 79779900 156846671 148286507 811266025 224266727 979395995 979779630 361595621 330882090 832141799 631506059 389598561 706185363 763633764 77728515 947475658 260863164 790368646 243091951 974399293 680934521 64755580 872241435 975218859 951954445 793234429 593756195 742034845 964205666 873494430 624848921 220771076 557659290 921242675 207306479 653079286 599213475 509776154 113579079 115632577 508693231 352826777 19006764 259433102 621938571 792380610 872145914 852549474 548403252 835062863 772139449 122215815 483451088 284020371 206905498 402147627 131051450 843421566 357201297 66720840 683231887 501118993 938866051 580444622 18825493 78882145 810138857 560948434 197161330 162958633 123343209 157509486 538457294 595557459 104209820 596352104 91921076 139485045 839065503 321490531 259988424 804946740 402367614 318521714 766158715 148158354 662193592 896337165 205131460 415141470 414051285 960464268 837952206 47662672 525539946 36941518 819742534 179197514 422921043 348027585 768604724 159692307 165035072 654828216 821017632 58852564 971858227 76578533 354031619 205008798 786579654 475037358 248298708 812004019 981521958 579483497 919566356 787661694 565028132 407072109 970484497 30405923 787755411 313338646 499772906 610927033 236854701 260380478 878850744 989624846 214962827 628381764 15142653 967385261 874515619 491448430 837269806 574630668 843363915 347023388 230036014 867322240 625141149 422787623 151521422 575214590 2097757 332576756 459508549 271997710 395569913 173572978 282552058 960769751 730399553 450628941 352268392 970747330 123286271 685319704 355150778 654606700 488127191 788233494 150300111 166493980 695358140 221227952 833339621 659539191 50748978 378884502 339595601 696967844 536407387 210664346 210896023 618222485 799087282 439796875 918846309 111554771 761360826 114348549 46394519 314117006 56416713 407833001 308802777 313821154 492570515 39798314 150731160 327755513 132346007 777086703 777340490 657603539 180716486 820846425 479830212 336671282 296847004 195158962 226583981 560485045 738677255 306656256 757971479 761699661 903164633 383212499 96780742 821257122 419420972 119701139 659245193 34558850 537070563 359670066 476098150 297548853 728694750 574045762 358912436 287957993 492664379 252563745 246547099 291664140 451863907 431204778 100627698 6957577 151577459 58498441 928144647 109691812 220628233 340024928 928307127 671028616 262549888 775519627 836107203 407243010 159278545 380295893 540028311 287565706 705351749 313123033 844768334 617078546 579142735 904122620 474533054 303563686 281520115 838247418 966826189 432019964 319268066 806174035 183830952 625500129 276271847 373372946 489154931 972896531 113875218 285900986 167060770 73885294 412801899 543645463 836216117 321421064 406594094 290161915 24537366 445193088 152335059 222470003 316547581 14740156 467769368 178179939 859285091 266772215 734874596 984900652 297232073 456585708 387237395 529628824 726680888 608292460 722450478 613680436 607599304 161810890 877974582 292950880 721382583 938177976 54356372 354284320 788710256 785878855 186260866 110313286 353713800 571283457 46257469 330499368 512811410 860860528 75410817 963658241 628459594 886110584 382597158 911233385 534862317 236630549 478729315 201457615 349070979 29179416 642799957 434668789 716651638 107154298 942343319 847860736 699894320 693542962 721316826 137447448 959626884 192263788 463306755 4625904 170931838 743117160 577446682 650508994 496125054 868169667 307524870 852732170 931600968 968490430 240193734 419880670 355913343 417166920 882890325 42778422 21421112 537601606 150532852 57609415 979775521 364694801 835781161 198678775 443449253 413726950 204515886 620618468 183406908 574368159 634458712 553154574 901381465 375724687 963249937 717257699 443810862 100269431 447391195 435036491 151293728 447503895 471075333 580414061 223003481 743921274 745043518 669553235 29547881 868745501 230478153 854190716 488089307 876890171 227933495 448036929 563294080 651986472 90352293 917388606 277427146 564679919 840552299 922974212 8031353 226238618 611821592 923108820 661556985 506554641 495862329 580836423 688506715 233481949 359469544 56725829 285952453 93164285 705315799 603883958 880634701 181040 886006489 275223586 406926766 868441768 673814150 133937211 922415951 786058355 164254702 740313562 187223988 916711835 286655113 279151205 319274583 400702482 123763441 942092672 190447086 997194901 899991313 394228271 663467897 437284546 477463042 966630893 888386758 640771056 852512582 753802100 183466259 494902090 874493445 298745352 347242693 453992303 733064049 919137774 305603540 840183647 569067914 893098960 838228086 826190352 513763687 605690650 979137222 950065366 341085797 996551272 260091358 127323903 112450300 214346610 305937606 678741484 90806758 186640549 50879353 230315702 6980179 381712198 662897550 126401892 803000599 643129669 126396397 284404180 616698255 104781316 305905545 332862191 787207782 213181972 266429637 972021493 27351347 65635413 738777935 897254288 428984062 903151338 546354765 740720216 761630212 377033431 111980870 234168675 284754030 487494692 427419582 496213501 460464170 224368276 437990924 11088445 973251232 44346324 686199904 58581386 530480643 52925160 156498502 488070418 119971054 76870593 960564362 843126464 290687661 839396156 243551689 810928901 165908378 139391737 55728495 975201922 702974787 71551523 351079227 622889417 972793107 722831698 528702960 855979680 551780656 579614443 332151749 447154197 42766646 19120202 826834948 717478007 776545123 390016897 989701145 937233122 668191797 746832975 739815785 906269023 893080410 436531651 817848846 851962176 357198150 175240909 263654144 334565969 890608764 832213874 112244744 163818509 371758268 185786729 779392690 645449514 602520184 927836135 286269526 601228867 554802891 564836313 738997552 12111873 742824626 983129950 860371006 418606025 315363658 604063036 140252961 990432558 81539992 604269330 961000210 720395399 498089059 23034141 600668231 769101003 55138897 630278257 900709705 916892360 803046485 704592843 738583070 458954510 26991867 211841380 545573798 247735339 798427583 193126656 326741014 963192930 819033217 169044814 508291593 352134732 65493797 502966170 504513303 421857819 361836964 748017837 317837429 595756705 788979084 682266341 31866594 415945407 838506835 611684392 254315973 250692501 521957023 559389623 286748202 477741543 457619562 778572833 487493872 382935960 781913237 759052866 212683563 99191575 146249705 920058248 468189993 641483093 956063559 968170251 315654089 253761398 819159285 434613191 490524916 895541795 680242551 849197459 649067913 584605419 920102908 296834174 356731769 417435300 198641585 447365463 329811682 102149677 883552480 623622367 904420892 234288032 620314823 43438139 254741336 838741929 274308682 168422994 574033198 266215272 281520593 394784821 569939435 467697552 196847922 89513646 168283862 480943810 270390310 534135739 758746451 727709163 82217066 599109399 579618912 364527887 49383801 164973746 481519791 961684663 211801881 276518995 755044871 750373307 464377728 661937453 685694589 988767748 335915804 480183181 816976606 113395383 150931919 387733277 743095989 574992047 331555966 778187808 769148681 786386068 933890666 37678901 463502712 434134680 778929251 836509606 411120296 906271551 947462092 604727095 38495630 491974392 319807674 493129325 944605739 947889024 978980985 688181761 406814589 413769396 574200002 358208801 940489053 606307604 32909387 102546811 984049216 842728086 435436589 660950238 327456812 157887270 945737689 24937276 325149698 283942055 705902152 75079971 130466735 29317615 823026576 710471786 565280602 966000211 41861935 78166130 303882859 766915486 282639368 815915247 408063075 77604091 445438834 545697163 846913660 717319011 747292622 52158526 72326406 251446802 980718268 174593202 812078451 593728040 54887019 115309784 395153073 533886074 314907413 366174581 712379457 242042938 670768610 711758524 640473326 645081750 912445833 236683465 980964815 860819400 302181761 689133640 72873841 481440305 448269822 500051966 222547878 944211325 502817797 642606002 620481702 308672495 55231666 67830074 326207231 151032873 237633406 313793680 488714180 965876303 105304866 852450650 605743863 143682076 834588529 798002824 231852044 323470351 425854925 474418227 352965230 802103607 686455598 797037299 274788584 758569611 174078644 838515832 437538064 624892819 520087479 10146356 486052246 463878368 823540523 958796792 943612162 401177021 230408873 534881385 884311929 536236494 460358050 899914223 204814313 375978118 829669787 151446149 933693442 18157641 959374479 123444198 352376390 848987461 251211497 496903325 738636004 932035134 192895040 929522411 372737161 919743605 126454524 885162314 650685750 556406964 291972153 903098534 968450355 419781233 878682564 879219005 279313515 442923048 76207032 785770861 257561942 441447333 778641991 978887364 829608742 348444627 509666337 91102660 62190211 818948325 269018410 903450792 794345327 744524555 221212061 247654786 21792081 728162799 904137709 416847849 357825347 746070972 487769413 389878438 819323871 899099763 851725204 577724809 465128875 337594538 303649888 482505578 919897400 509240659 264445033 674056202 422319167 578955973 899762480 969103921 147831974 373351490 38584228 442896349 660971509 297976077 315666982 360103429 371661008 517489739 290935445 41164536 972415831 565084999 88403463 128431512 932021000 92607127 95837432 721579048 869171926 722435186 252476988 497319511 55445982 444266187 616179592 69935323 52852774 518516511 654115498 790823965 226189316 328644116 223811055 78718402 58448874 434207007 129560556 34284970 345510520 27312897 921737464 864125484 538466471 289608054 464372188 916358690 892729621 163403474 198951397 765181379 730088938 735951261 378061266 555810452 908108687 110896523 172996214 775012805 655422731 470083736 18396855 744592561 508655866 756583017 289332760 884642980 857869180 418565578 52953284 671873543 98582037 364687584 351689021 930722468 775945932 167387705 462564075 946488544 163051390 141347078 852855519 874012461 956791606 728603701 333983565 127179799 542343102 583225659 244993273 485707821 883665765 384493426 143373717 942016072 404830435 560438724 620729139 131062628 963490887 558273589 445370269 957334040 169514204 817537706 353187872 676998622 913125377 214627044 812480753 692398217 57106507 161534001 517378695 304857905 412273742 284050906 792619125 855265561 379949580 11127197 282671194 363461113 597202623 259598767 296425215 162334776 328619031 451625833 359599083 658713162 123146902 907475998 172273970 33579967 804894846 142056358 221755914 715461507 724798037 267291606 655702330 668576257 77795983 713833163 110620884 296199605 549642882 893714268 923126491 510041433 508707617 296960227 4248763 340210218 979028633 733955934 526534047 813851474 272919115 197292258 324889447 425179469 717702343 614758244 727410441 154450436 735534897 512178125 485068963 375230174 906794758 224359322 745222918 864004339 841896782 956132835 807830478 634029809 52770997 956656989 509894966 140459384 10649940 128887093 733798791 154880933 243291817 289842943 618743938 835977754 481731372 654487764 667681718 33211651 575593487 559835729 12090015 271105702 669516956 401004929 848877753 319933363 332746429 827634782 953332793 987946500 803234611 99878027 722287682 146881373 856687013 184701131 440305419 99087706 858026457 132942631 873906727 173314468 258577489 85204447 617252555 957798008 402778372 890582548 517492067 692512873 545974523 190009634 932252632 45440803 176937161 291364924 265963705 508603580 750556571 277281927 299500385 658197347 454044512 693640972 82731919 11089096 218350957 852553540 626271179 928014353 309535904 869479423 75038712 718459376 68882632 187766874 222126403 181864220 109591047 363288056 79059254 833685882 394179102 33941340 187807491 911468918 597596608 278235684 548027923 461166595 721358706 213734211 99951462 376282419 238204885 942550885 336840153 731745333 683217693 38932941 56242273 825066266 217160331 514521173 91773457 128058873 802746619 635001303 722399676 114791362 691629079 849415494 215376596 840246389 66510499 627535044 30187191 314045788 844804006 528863744 309364935 123990398 854168919 94458033 179974386 682009868 120463375 84976441 422395867 972555382 558007338 654890407 776957906 2788800 491973466 350646849 547790116 653064933 420603971 335890111 803508565 622430302 169616227 204341335 763104186 118385802 129465257 993195291 436639725 876473395 257519405 832616338 74033174 261482303 591597495 508355344 189376824 957266322 961529278 737520924 280330300 244279874 142469079 929660094 788764970 957028727 318103322 381231360 292999045 968500391 593782435 744081221 389503584 393530281 875255457 650664959 817489381 685329393 252587306 168279854 736083207 269951170 91506826 31226463 446947383 385268163 492862754 720010396 206694255 470000649 445823176 620646930 757993812 878836232 997702112 166292049 560884920 438299100 796684533 832036134 905626754 375543837 760978402 435029214 218807799 426104222 32109652 57524539 5625686 581580950 376911746 447781137 961201420 353526184 867338646 652217829 608338089 898543905 986153737 742894697 531972432 971549333 845824418 342470058 550751324 659655041 919649713 646021893 49565807 923580525 8650412 621084904 677525384 455787286 694614286 252977471 397790062 940459208 447449903 839569726 796472906 227656668 888014693 907444636 239308464 834500842 947823892 205179928 177596957 441266767 265656024 20283404 546013283 97051470 328734847 172176001 494947720 936416358 801805127 772330083 325699783 750276535 925656882 545599912 638406494 136954968 652364988 995922429 195839963 812963202 493594682 563549994 621943094 930066538 26340538 25455426 181942331 856441212 654031019 381014305 389030591 20185351 809924257 121290 991821651 756554647 590178169 373145323 535813839 403084259 564702055 126044900 534694668 559734887 65558903 638821457 566750125 919154067 570185822 157432757 380337134 207332917 624908541 577953167 415746928 130630012 785500281 745598369 508130355 823970527 838236717 201439757 126652721 992415164 948283472 238208331 219076799 518704938 559915286 452875808 629819110 741717139 910701556 373940411 620715556 522252471 520216907 933456975 924917708 124627893 782926483 920249913 966003539 497841023 131036963 158859127 563369513 166474549 775066676 516639336 799504451 56419778 540174615 911103674 769886357 145744496 990840521 940220678 630814275 769809310 518688755 849587431 981364422 985929400 66805351 481651797 549355413 720971987 516938938 783638335 951490101 888455321 721742700 708575028 129240760 674351984 405339897 738496321 854507109 815207322 678175499 295213141 925326912 852788902 559047397 542171235 776553533 231952599 486180744 931165218 821818935 642012567 781609598 185867407 942975073 466228880 239595777 250571353 146955105 794776784 345611592 892570345 874602587 183739451 985013261 12047106 708211699 92625712 350403069 63469435 493831419 747670384 739420891 392271901 266352979 819047459 835227816 240066196 914260253 576721648 769418333 986878370 869230068 470223706 725105295 527465408 705522831 430904549 462759793 708425676 771065314 338066947 306770803 350241656 480419419 510877560 157856033 697259706 763842952 991390348 145647137 844347949 721541547 447192570 743672724 370790884 45742076 79039284 186467494 565251026 979371078 52910082 493061208 363866068 873997783 6242961 194851908 986347754 245621825 205095115 404927155 957497085 611353979 445254077 777522856 628673233 729923019 284625323 638365887 237739420 1285928 491197966 251763616 518830311 258066589 748867857 268188971 19824323 459417469 748612796 542953332 122216860 254660118 751534186 167521270 431304621 871498485 91015033 378377549 568181792 686220561 28275082 161769235 284756591 506141600 68056046 625918504 136226291 827767782 896980490 132268289 715889229 876758824 281000238 18264434 854771398 806308470 712335998 18454358 884189180 612212303 91327942 158576084 466847382 742844102 478330992 38829223 216987236 514299829 864095022 467429833 680219415 684630474 459288573 941020056 816961230 356316214 885864340 817414851 264234403 727403227 373426944 626168743 793155849 22907505 679280499 954181661 451242774 639365633 41014009 855844002 65322306 845139926 716669005 828209304 218712065 535516703 144367855 374898471 492273733 434950701 37348016 44683220 326557424 615189094 687497749 804814870 463053339 660748899 81585069 580023770 702721430 686927402 147316659 527023307 69996552 374473155 919642429 714724073 552307527 863945503 602989828 124040067 789413289 581012569 679089527 1964297 750941681 714254941 281585064 325136925 837937682 640127955 186233375 224433224 611152884 891093008 6596403 66003870 530964943 720566735 85580664 556844449 245810202 414239581 224032380 572183564 576158768 853167049 390682726 637163813 241900333 154160156 707517922 448948178 867395620 777937435 468472414 266261017 244139451 52228005 970180957 555712610 833293231 633500125 451908487 760062485 802212603 650228957 8731777 931490873 74371815 284095041 443862209 833486562 735211912 600530653 519796349 48879811 329396870 461127385 167050284 147671819 788696972 469910371 589749753 377721771 113870464 131509948 377132705 561341037 927074531 497370818 297113134 353942159 234583 156849829 723450983 262294465 727435897 34000932 881572601 682195056 496338578 60929852 803882541 739391410 631090098 733477524 378023659 889536040 942289763 122633965 705216205 438181881 986622136 719090783 586123260 487433828 337906151 221296247 684207625 277430774 141285780 559130474 887504411 163821100 921438697 566089722 856153055 9902001 257977893 65688742 24078683 695792723 9324995 6261857 210243775 628455009 983467715 283799744 344074677 267434056 515551898 583372254 503785064 944287924 299019888 436713668 593151860 334153806 804389665 638137623 854750844 503880616 700342247 24589562 847644829 587184246 241670851 57097446 276417744 452139042 364793114 607157444 830831520 949903372 354148268 992696245 913954163 325930928 435321757 297562693 667638102 138790301 739939127 656384975 4904342 520728903 671416389 453055277 538796010 278876566 879174057 1161664 236464916 375453709 232995181 30388242 27116039 688233976 207347842 232789540 650553771 32275754 659503450 764568167 878694433 746836246 718407946 23461225 118638710 36644153 786432887 460893065 596270811 896231088 40628190 238682779 121885727 134142002 867566314 333035828 892946145 564435570 372863944 893829304 593822237 263125335 177134928 910992402 874100518 281774051 717559292 85507548 466030472 563110605 556833487 521292450 675396530 557566001 947627184 91595486 451620631 240815332 27013374 736800887 602235814 987839835 151405247 289993811 862636096 420980716 143352526 282113622 13071500 471445207 583729693 96913270 213226699 504686111 410519680 717244864 624269766 194556195 689797 290978899 139417636 285265495 583811197 459165390 319474786 515972078 99123912 969792007 189378222 703491409 944733931 965498888 717134115 319713786 725830454 818239774 984550600 776454400 550291656 618172140 468816176 587730136 919769977 891016645 226365437 242217007 618483481 274865974 393964230 931994550 723977289 269170223 248286139 379183027 180009932 469320224 9147561 484883473 875759616 127224437 118120733 535038878 927759899 940304810 260420354 808091454 746000232 52497000 368096600 55544441 859297368 904711971 270818350 590349704 981044945 739156633 937123213 122679215 855112530 183366135 520032777 339900690 605670090 309350958 790884133 136004836 550850943 369730988 120919849 562994187 621187856 474751290 697431759 909326222 538026340 150798515 255884860 680603998 943845137 259251361 808923284 973946851 791287738 112707438 12086747 339865704 53594190 326967312 877592880 97220816 202116706 686121608 377601853 344394132 667436947 295683854 491464010 545868330 412349415 513949980 730479530 546868330 739539042 182977125 330742470 652752246 790836135 80966145 41768904 343103161 843857473 563696025 661856494 541702679 374712651 47045559 770829147 183942321 341474098 173505509 143750101 486573302 366332636 108460377 45637948 730065233 811700863 18053915 779383633 651392377 224999275 369928019 827226722 472328337 66759039 253557629 431235256 151840327 97409570 813940708 347913341 857134646 305401677 309248848 829558057 323660121 545079548 772495382 960916522 461278150 548550172 345698483 457714598 139268729 197811392 879560087 392580842 650577369 844348700 667656027 290352827 571890418 934560121 545083025 950841837 587043159 211951814 628962772 137059476 716559258 939313279 438368845 158302110 361517935 597268018 529261268 764747965 890398879 152286659 342951394 327055662 299741700 369377603 739718132 773907868 292068100 882143663 556116874 961185178 777264446 874817815 498653922 227435290 86286888 247993009 16719911 80843186 360144200 983607700 880780740 951129121 179466740 734979520 253897743 759053723 921606625 348092640 780062621 627648165 245681122 317848651 24264807 475679977 989545742 55998528 316186375 174113698 623030246 578871068 661097367 72377715 445080781 957528663 537848134 322620304 213632495 920824792 651165544 730173640 968147824 976669592 338045481 276503033 149231905 768715058 54204240 412339533 228831839 232943255 874959978 510726099 554219697 244970902 250460984 581738842 177790177 538667975 619463342 203305065 193247211 11112186 690375420 448598594 328312273 478271855 570864546 326700576 441574761 532279298 700783296 862928059 557070598 235705332 774300495 693798234 51672439 474343491 582401747 804384895 16808874 983750890 529506567 151342831 633192913 8881413 863594603 555959588 19392540 479456826 272364887 431168476 201900158 591956648 522233560 919208413 529921653 919855741 188871216 366617001 161902394 78475471 549236565 455349464 93495224 740623307 858617557 742906695 333066301 807602401 831875573 439792751 533672648 200738574 856588604 923983418 240567372 420306848 430497164 726262095 14018098 104414000 661617451 545574167 142374689 147109997 305432400 855461576 8974928 800845489 551201250 611746422 175554185 515375157 642218514 920873941 615758806 762348765 422987110 117266955 984043295 413188610 233860925 644119638 188591992 663921959 180117159 932340936 128102803 115671281 91942924 765537861 117535227 633597400 80975886 375943927 759162466 782668854 866971504 804103178 897856645 893767337 888071038 30454402 422023637 927068806 563056041 893048289 118634000 207420410 136358845 13776660 133642433 484473112 992076442 369194156 182065119 288964980 186143453 762772173 66916011 986280540 967564568 998703234 858583536 50437917 72398187 51357123 900498540 967645086 227192520 220335409 49492719 74272297 624274113 68524092 905013694 605801442 238713674 565217350 80900119 552081549 652549217 230642361 44546788 826767169 900464995 847558969 678172150 527007558 864495191 61255407 34626194 513818177 493259487 480945758 703790938 570309171 353703300 639496383 586883201 322893924 739607983 646648078 18571298 701607006 229083825 377197626 263001243 596464978 840832524 62833239 366361458 308850669 514149129 855016885 113112794 304920652 487028100 812677760 996485877 852621771 864416060 165454825 264460255 338886867 599748709 824189538 826871543 721225401 843582772 293373735 509624370 752164929 188519676 31056103 701090828 662503745 2701875 830323131 657985487 488423188 724722810 605606716 62131188 265488869 763888115 514558363 311346734 633394223 448541003 450798605 310164499 842845334 886489962 87010410 366803559 845639694 600693471 849501892 844982497 385346204 819496318 512612889 621390989 70126439 71260911 479752357 256590753 417480511 140275568 645060382 382425751 320883497 441491236 730347782 971262339 86234377 971893029 733282659 565651458 17017082 156953682 110036857 795709199 742731542 86895213 682640202 849653990 445648559 383623078 389020054 328322528 302941341 723118303 20954995 606170450 452403459 48162126 407095346 114674650 472868561 407480022 990939511 539350691 22476342 253292820 820373365 312558880 948643240 53588679 250164750 263692568 70755426 934739291 908870810 215203581 340573822 478896782 309087129 676198600 501378488 189558567 269406052 83515480 137189778 362526348 328298949 62762725 318878777 891272209 453306480 639362256 281951126 191858056 240802489 469455584 801669814 453559598 786349411 76607123 432689081 896132295 329145468 566125517 408509876 503001839 226458499 176130801 806002813 452768208 920649301 343572915 227136291 826634474 223770034 47601444 68353257 210959047 827096517 466501990 200388435 832889084 78355543 333037095 601144735 979960573 868980738 69429289 193830648 15815586 869739178 819992130 352187246 366178054 390429039 651921432 34331719 784563681 531771348 785922220 457409104 665216354 567973330 714402183 619641189 862822732 611840386 811424354 923863250 158683615 383316404 699555630 642513011 295918706 676033925 204313411 123611337 468973294 559319960 122703560 602682697 626767236 150937182 289047241 867349478 862710181 929735084 856628455 824169904 300452039 358818542 59040290 746728743 81107155 650242788 102301438 775873319 287558569 19722275 646536926 710407182 947718841 438175016 644612380 515224134 801206985 856261212 87636397 132619616 373637202 311236954 304839152 136400814 503644380 579259852 152288682 624638012 617270386 169186313 412269480 518831584 378107347 805794503 436176983 783734077 371911977 144403718 197767448 947444176 105563208 92038319 370376467 261733584 115428574 816332127 945621933 368408630 966400180 49420057 468087843 559035259 329726782 353849123 422477658 74430614 869230915 115646907 456297666 588340077 478433835 696558525 708237014 141696181 518514472 453066099 891150270 194961580 852905347 79547824 198440455 607798267 163005715 550252873 597336616 564427152 302336078 415608731 202295886 241206830 186709082 342983755 223829226 853663530 864340362 924052188 71502115 767240244 549814456 778498056 452498534 33753266 638011129 69702163 906256401 914401847 327252923 612475869 659091820 69639267 598143674 502472288 994821580 418651983 422938460 92748707 436851995 381895347 380496536 989947182 19683933 279679070 456178968 64951355 272814334 872352680 98665359 873435810 375925025 322753131 666491084 447636658 498736656 854061109 441457241 794525030 349646800 339388971 977227826 482925015 147056028 173267754 258089082 938697163 575676465 932396996 41763297 329898872 764141435 647604847 808540435 25985435 729875991 356742509 28686157 449183046 251520467 836774621 171861923 858445820 145620283 826067975 826236195 470307362 658174030 403620730 472329310 425402863 955038145 852681314 329503801 451891693 941436867 2037331 84135878 701737722 549330066 201795508 513506244 737557153 957224854 570521415 180350660 763441704 243626510 975592057 375343796 678915506 812207528 413710694 472259175 530590510 262533137 232902558 949953893 113312944 962353328 826926244 932023044 262188740 581035194 517907012 695119689 389882688 349015363 525064415 945480872 284397332 175867849 407412358 603572852 300065272 138855547 45009261 782756154 222898875 915664840 417209088 350130082 83002514 803306189 191046720 676196644 889079392 877555829 613635862 721736564 354818994 295976656 623854157 692894891 693440245 750669134 9901915 498770269 636547122 884417212 421694833 559679458 56109855 328013070 193825565 801307707 333048253 846233655 507677535 735047813 723608896 391491179 943233328 181494300 696754432 152305550 503346825 702495713 325975873 682860589 36190706 643316116 623299832 128526286 359877889 36461708 306778363 450447649 951178163 956875652 694030739 769466655 320370564 530263819 21989852 596775278 178695120 920954713 746386377 421195462 149371800 580807268 172633570 554300733 82920457 673609039 655176739 936412670 263706068 694345292 16021164 200731242 64283704 944972733 969589795 759551366 985003550 87183822 545190792 533697715 817110788 835553168 246918518 261295395 19785148 462547803 832620881 319023394 687438019 609036339 136641357 955955680 202636517 157586315 591411574 42463410 685621832 613139959 505650993 54727275 866795602 507937410 532565023 991612944 38845913 968385630 380252436 367307125 40266309 141828037 855478249 530030071 552479394 876810462 372543007 448501473 944590510 865987993 919502250 744711292 286542823 626129083 27954775 499569632 769550488 961846485 548772627 349805309 665857912 299433736 268149562 218061663 228259107 981172016 277400200 132517349 649239716 97289387 994075941 148584934 855619244 333770577 763780637 451726087 698841852 226020010 832803501 602209775 960043456 928940147 104874605 534086700 109133974 472796427 107925316 827226543 489939900 592067656 182049075 526335557 812041148 945682889 756737790 322423277 807439500 140990887 207260229 288086177 433167116 162693461 194824431 234441928 828953153 393425137 654169663 561641366 884737318 686925752 636226722 272217807 814748750 551850377 67128361 638589339 294706693 705137646 569568503 902719151 400633026 833894543 371144585 6079910 202569875 823771699 753866963 407266952 913501360 216505498 432726501 837884178 327436423 206213428 22856223 733087300 700262567 809080918 667777076 221868771 631586448 990930726 168802926 361666691 485330305 234032505 856618349 273736262 241203877 329129147 806791695 995899970 78518274 979129842 376446595 253304342 262057871 520521214 989971799 827748947 42576931 894068317 141699958 457212296 350093548 217910624 19989035 149494156 268562799 212718201 803960703 672865014 967387187 28315777 652559862 806088214 409887388 143340936 876967610 349721295 801732213 418252217 848353180 484063353 782075149 508161730 971388723 323463938 638832038 92594816 298007817 90794930 154419283 487475968 88657173 645037855 478206502 300201187 613720369 752521854 499811720 262974050 295974038 968435295 7186996 447356777 569657313 549347937 482540679 418371792 54396301 157277867 662096235 952099548 755023660 493827727 68419438 190085212 303000384 412802064 733131975 652049395 113410253 437002043 910726558 212273829 848649756 53403395 654826522 396736264 580353481 242487658 763287599 15912899 569935372 991457463 261520861 898428586 492046626 338899985 216211109 387608259 289017928 898395355 335626058 220816230 719999597 503544767 202408923 393974631 693072896 428582235 740380504 225007904 947346546 209398019 332233027 318176638 37796027 765633941 86251450 681814066 515806401 974259208 200044182 366875060 121092411 532924924 594810823 338133777 648823991 13608446 311722382 903956819 930338409 188580628 618887662 190310938 714693796 456387167 360145365 486122634 276405763 954883170 277415760 122300489 389971401 401251418 77506554 958296809 349830334 810649896 222498626 961422188 991683776 744392668 911044339 117719331 821660918 550818900 288531890 601582192 332260933 190423401 699388672 960764975 154574122 926089549 969285863 331511984 819351669 605815353 640760837 843406164 542026283 977166536 362733742 469602495 131232567 149117461 54103895 961463281 910364323 312563740 236045313 184446564 716132033 794059846 962117807 720282041 306119240 1287421 142369019 789634668 456274982 156394978 58113803 159055605 944828934 470819369 810122551 867331472 46247953 811731853 951512419 910332898 286109750 851540151 303499773 987053922 732329245 50085611 19590622 284033427 430391505 439985494 491415987 543653704 715047579 140898374 41551758 730820336 940258655 763383773 984439169 376838264 759094080 821999650 957268427 296345846 783473828 78954994 488415661 475040436 768607842 932269353 643438797 864148342 742489024 903364539 8368732 287369349 455310775 719805208 18498095 295481019 963220008 922339100 632976493 538153458 815634357 192595708 860803914 986424136 316497216 106522653 825223982 499167085 882728327 24279650 551039324 277114005 789719669 497211615 858796796 806748289 791048602 620764572 698060218 362755137 457172141 7906099 528598717 92051357 44121628 996940626 744307929 892081381 128968583 193439129 444254111 511850268 78935427 187883662 938951672 300222148 756023372 61985163 650986049 787508220 623890155 238079703 385358347 218280618 382706530 903951750 400165282 965290938 274836823 368300869 198390662 850309173 670157566 928993546 506733111 679938024 228336647 93533663 716065013 406363995 206934345 601313103 412275473 862675083 61804015 357448240 998104573 750682496 620957626 105868525 390547632 35629157 331647558 145096469 232734089 320604519 431349294 786946446 429625239 118095031 319301179 304765136 111207923 535187596 215538868 130136648 531261069 877516297 954262545 988301322 177674733 5975723 165913889 565896162 938907805 444873299 913168723 802544259 342599607 381562403 533464585 846252039 940936561 5939145 691024299 659772344 470416653 82161729 581424736 679685916 523506308 287795081 958893925 588966466 264145106 682489734 981860413 170623067 373295452 400043996 85440879 277832942 99213128 314502114 995332884 437297135 110521062 917186011 319483148 830387214 219648430 580113099 388125396 287532333 675860873 533428926 113518844 967219 613645120 632432788 910215646 114205200 519089919 876665437 840553453 552482589 450224341 743177693 555972944 305460354 183875158 110977263 196355576 102460880 81308036 409795074 608632183 476369981 773310414 337530861 183984608 242305088 886610507 21749728 772497531 374803105 360828542 907552362 777640326 618983221 439675186 828878110 648194261 662685334 884493710 225227799 817052088 511875710 803185550 703746156 150414809 349889915 417626151 925968873 165852406 453138932 399564729 24717761 15049193 892932324 828724361 428079083 947051371 472497984 292102656 814058872 306838968 387515715 140676319 582582405 546696149 820540865 548897050 989552011 762421027 764727623 14893459 459819709 404353502 764162037 411764817 630063753 168788260 540996112 893437361 747048328 519731073 107741034 682557843 52289739 261516835 163607829 868175697 771913145 78394905 698772626 110730072 570119029 403932932 432237121 443142473 865297751 56564967 663141274 853207043 37867031 240045213 653375406 123243162 837162058 48183204 999049017 254337152 221270236 593288008 419753356 953330336 932262425 408257170 746646932 829155078 32299852 745237777 468145147 369091368 991447901 781983782 358124175 996941242 655727013 252727328 677251966 675209776 364996271 982644139 324567134 549418409 150306774 199071749 793760208 476533132 173696225 931760353 672356111 478049617 284936990 293222789 293054938 176000388 954725198 504111721 725865214 496230828 284085775 380136278 628234186 544906636 452437357 243271716 793737414 382607730 174354328 706766591 501491663 258902811 81344159 534698659 87361121 66834443 922813243 74618428 683126870 47020136 728446654 787524467 948726228 39063374 421169662 786041290 210632419 979678339 935399402 968780768 10875610 766619851 139689313 327375510 481599200 289361261 334198342 419518693 741013342 3413137 354339745 169719099 132278293 222782348 304175048 507513187 394946432 547150060 413522438 682502369 680474211 507142549 876150852 698736861 764180990 29645706 441930723 448303422 246610239 592946892 292820772 190282195 101462227 23715503 506683622 25061889 910873255 897283861 425256444 150665691 446811221 63309485 456794481 403817756 200172137 119158399 247893165 973971641 515032427 342925577 324666501 875129422 307839048 560227274 704026759 114174542 294286328 126720710 690612445 107442436 14435645 372365699 291509613 854802750 590643090 566444592 262546765 993996738 293578466 765878149 460196503 409172450 705563529 276524651 328580739 691743973 446312744 717797321 16058336 244125162 861999767 986269125 974949734 495300092 906529917 646410448 779351217 168246400 182283447 497765878 533883491 11566446 946825781 942737498 902143588 579679298 582966079 259738705 876619083 627464039 886480502 353904612 641823782 527418512 161469735 580015830 791186583 660704154 445684866 513212444 501283013 891091521 410793766 866633067 31483878 391947711 565308390 629271355 783114068 459026952 868819520 122734311 257771584 45389759 897030088 201710493 944062264 107539303 56429365 941960827 311050081 206503799 626972957 125489708 91607723 741827523 69608635 761415838 325814982 726201278 481711952 489879247 236474609 975422608 594113210 332251516 644536337 519498345 503902116 489457207 67221774 893346033 837034460 326953107 242713283 69660807 904185685 97144098 756678830 794349857 657325636 748031689 303011088 474235742 869472047 300049851 697780216 482477829 830614855 858625394 870395648 271788733 796117424 667557988 131920432 192125017 670271596 502462553 968952402 718318082 42346566 886878405 736476754 456243555 43316758 72752908 766920494 370048586 988194504 168657449 876918655 887605847 501800926 974602719 55574766 136268886 711168723 281186288 153523241 80159029 405049383 938987135 557884438 38668684 990557358 950973575 408141196 175216059 336078475 323224829 196889391 355537348 590679505 773036619 133549793 546931216 236136339 893649016 753305793 615513056 35937063 49902180 853345081 576865841 251854216 22429661 541170556 925387114 532337485 597962723 911098972 651061070 587182209 363731911 280268163 864279689 523988129 285464462 524636930 769489053 366496944 455752441 99286360 195790736 716353543 435106410 276558826 662092520 994728622 121690391 131886922 2578767 103108465 319297860 404044739 701526522 732375041 362757616 633779168 35001190 586577548 6235016 77779078 536807070 568046712 478302272 811034049 643948356 119146210 699094650 538750373 395486970 253708169 609619521 815490094 504868236 745740661 709164853 46082606 992235073 29816865 232059733 126641330 728338216 430056681 823605506 970057661 2437056 142030524 113634838 489080033 316368924 59803328 446596217 512699893 519151769 377246408 664780911 50651883 523964948 577714233 836465045 777537663 185096340 488470318 741035556 642883233 346044598 160335007 24756520 979026405 478068528 372072467 497761166 277637542 523188275 573333277 639519165 797415076 965501884 747426290 194827700 862849868 385147757 171735291 259891121 259900376 344550572 706191540 823054553 724439605 896014945 947756495 544549024 32311326 249245931 679109253 744653518 89368881 383261308 200776115 825430372 881694951 28983236 950968400 151101779 910265599 219896483 15790475 494880804 291113714 359513803 927724040 843930118 502304210 941174413 257498042 329547895 872096751 173713468 662486313 741416965 297771550 132288817 973547511 661649237 957026872 978762848 842128696 9131025 538317571 737735930 7912529 987827462 515638629 516135383 898425954 401953967 820201738 760022238 739299175 104550499 632195786 318567128 718705526 983728135 400081047 776972613 693599318 116961520 533567329 785382023 58905283 673036668 410924231 946395118 874583142 358311940 524063747 103710759 82357624 919529741 711464623 62472192 531101677 636768371 377485942 689571339 117541686 321395280 970708906 117855897 978371465 249819391 537164469 989343772 662221078 579954216 73577962 713941078 514925834 476508154 127495877 531164373 199234172 461385228 881495089 19433289 995200798 822356579 532508165 946449474 217499984 234525432 68449329 734504643 288458953 976947826 371657869 907210996 542716510 630027733 102006073 692077255 281195423 788468548 841217102 483450537 400111856 411389051 221142926 16843164 558709884 547354311 75353540 944180883 856666826 495812488 624854957 555352749 283445367 712035930 725964198 298657653 483495302 121967846 54572693 795400531 526773284 640123273 329065452 192090994 524060616 985324451 784353177 172282529 555520997 280143248 126700673 340803693 343737734 755104038 785113204 33074423 297262801 809052662 610853908 446430775 789431333 688691907 679074351 219693805 627684236 33512095 21308772 259869407 973102114 582917796 515443660 112175967 234680482 964490314 718305047 915720233 987332771 684684785 751644981 979181334 599056688 28436225 746942498 533303217 931826828 235267320 658301186 904130848 794929054 634286757 706438451 169115304 883038377 509262299 849174824 992966073 785612718 827364174 108683994 438701235 188967367 237176200 281305203 21060160 685907812 311986243 178514861 69996318 888741776 3107850 931452897 819471183 997119834 644759261 35732775 867353194 101562145 623169588 426267376 814900472 255506302 424806716 100876218 518942693 8171437 247512181 280700974 286962803 854717659 989340465 805393084 753495499 287169573 619604118 545039999 102597950 316086700 341491371 95328401 383352712 428302532 13048346 86752400 138858687 301160028 96133643 89702971 113906827 189043727 573795591 928517170 760425479 635297822 220797171 579249665 62713589 948756849 166307946 613945679 706097906 795281387 885564052 120761714 333341259 484032847 190173237 921457488 379911838 742728718 880255831 991994420 709598358 589932099 636069141 854529843 915185425 678711033 12170505 322881714 15295737 614256617 873479867 440920504 436696485 697840750 548548480 688714005 702296665 27733102 636914118 762835686 462305527 51786054 604316921 117270641 553265169 139246979 855992313 896234817 302627423 542744302 931429660 895666550 662638473 554130010 958953309 214370613 834562733 970600260 516828248 975583319 701135540 77114748 301316010 465777361 257144740 116575129 11615459 755131463 754245519 461098640 333069950 266975528 456918730 338551278 403517219 688350577 340484397 264126084 264015779 363045232 763846191 271275854 277690727 459472473 673675858 342711033 621018976 178607088 733105605 581490147 229907888 636725148 32187756 645510551 229684433 353095382 914363706 569153564 952624819 546043819 49952737 816085995 237388793 630617795 138898841 587705238 525025891 51421285 385397286 721824718 903181489 925868577 959384633 784888650 628253638 774921462 65937583 289675929 80853346 371735230 69176606 102945897 700772724 973282264 160897553 510083893 221179772 589670698 51633541 166499932 798755615 45530994 422380490 244018340 980656751 373779728 916684756 884709370 504889507 412591507 800164836 605183760 561931856 664547898 42974537 873504524 494171245 803343696 643219390 318671392 513167991 690934213 439938023 138229120 866587719 769433656 120207801 617494605 537546660 959379057 51355005 912251053 558880511 668645535 690152880 797809857 831959101 731448521 139550143 485801167 937480830 592425382 170970598 127915100 616057127 667217970 132113637 187293539 629304616 827609540 121523786 213442124 409100652 504427670 330336886 427945725 932076980 991786250 370771323 404373651 623346479 943595496 685717154 101952344 312957449 677688696 945957398 498369370 583999229 636689987 632189503 642345088 395488307 864387832 240184474 167494491 903372051 725943073 661881372 406053625 395813339 127302563 588099985 506016829 964941089 702776562 598101373 878690286 786354419 281239121 560691786 405020896 555062968 127766177 322364853 996082865 694030062 343052697 514050148 414786345 634341696 992580318 212756894 386504311 758997551 701874678 415308540 129645116 657900541 110821017 399618880 38324861 399432127 916226585 268833812 223975190 898170865 565724093 118614829 659196966 243634132 969684166 44328326 896269453 658508219 729913048 177906905 231106074 959462757 222681470 119497505 352830777 62997552 630468144 163408600 383172604 109862042 22751263 213846841 910026489 304186389 536806422 861651071 339368578 421845295 736930144 57451642 125787738 897383788 168839765 665581425 576558320 615977337 468772814 8434869 101357580 376738158 36316609 201639477 99814147 916534805 235912498 715531221 825575709 346888931 669117229 693851179 756730504 274845263 448989250 962968860 708528090 725304713 149920780 844168645 619799734 564908716 382871169 521707883 220843301 913979768 214509190 152040160 247482888 845431465 289727571 974607412 997703053 568326215 93171079 441705655 162781189 115601869 192839137 640210186 18784662 803748686 164643001 148509613 655346528 410778638 828896359 917648033 164898407 110368942 399107458 105231102 727865367 922205798 703082889 129549103 288565444 208740600 494464957 541020127 930598925 530312917 978440302 350713819 390585972 320965292 128060701 757289218 768710082 137352879 92657077 889886773 533709980 275679027 379457879 840518546 772608880 644243175 921152002 749148857 142964177 107495666 364843685 445678802 501535214 549606657 188289114 791444180 751680303 794609638 898358903 751058276 723241447 85009256 208649540 757173011 3236250 778392213 582766910 37634493 41751006 314766373 237163389 948097446 454055169 426584799 771151098 510953983 846726381 128543900 792176427 589953154 255515524 105883316 661492742 853221337 244598158 486893506 151537087 508096730 894961279 625988694 814661384 944887443 754880375 788337140 380381843 863824616 997492131 237683602 254917848 156370898 609018440 373634483 232471437 124949599 829505538 354075694 673453254 220563473 141636988 626280065 206816224 506645181 38754577 839949092 526302002 603579547 869906569 899644639 334555134 595928895 28215601 882768085 97338235 657851533 600951962 433360895 795169166 847499066 39393449 375680214 254531070 312622016 221199658 352406432 126581103 230029338 975004306 592650618 550870903 403992037 886205955 254965774 595027984 488473729 462326601 922717280 918331028 620571525 549279572 512809931 988054192 873050628 565267095 485264833 557977756 205390969 693008003 168589098 384438539 591259269 438185231 721860895 374733854 476073925 375127856 396687633 182996778 383576770 266445456 430723275 842361989 183321334 735868397 676368194 481300932 191788470 311615670 79393912 907093326 250707626 367043145 984355862 57058401 330074098 823868121 598516273 308334600 324200170 301807919 345197758 406487002 415046683 77922504 242334201 659622043 749394964 622864569 277957688 347023011 524769155 962042883 806269642 730557797 298017890 243653430 289009009 985179094 180132506 344748463 4504640 963702632 576997855 310188725 818963244 948971231 318858290 602521846 988672379 832883014 835784767 905999677 472881225 409158235 269115949 131600327 506986781 686496185 605173306 317037613 311394227 266230825 429047840 618780164 566657052 692590660 75503420 993684175 725315103 200964518 558322444 678783517 562734963 184899196 388161669 481761146 532757796 461724077 536685087 648352618 44257541 450361656 309028336 391948141 739962548 954426164 963070756 973598952 594711002 587035128 547002699 842454739 269324583 420782069 739795593 922191560 709813014 384650718 100373632 296471606 710521231 421281960 367549672 374365363 416180775 390611063 556443329 438603332 254548724 582392952 988331839 31906009 758457362 493956217 680346832 125072842 551530332 766694572 649404148 279586572 604439425 443518161 243544316 906174434 617124816 506624810 100178359 788687877 822470211 748402987 336873230 791703149 158451695 82682267 44004103 889667057 460529856 545364324 526843753 638008022 12826378 205291199 784620480 295872664 341511592 931630834 780452187 725669873 517795786 667157072 133897797 9758102 743994375 743332615 420635286 136882259 232731162 187689141 909021776 410019250 16199852 257653293 613502089 337812371 326954272 423602818 118735168 906868261 830143182 390510107 864819672 524332827 670413079 623149537 623852869 13384257 459378304 155126348 479222082 727007614 416481713 598857920 627793497 436326768 450652704 176082611 557812650 556709848 236897830 337931897 971173219 998241845 694858633 30005901 666822967 991292781 331248265 875199805 868391658 876344313 564915070 138053888 376033310 643592317 501488941 954438887 321348921 744941919 578371064 288630640 849614411 169211172 290033818 321563258 329118272 207533780 642104224 168269364 274719407 948703947 309000198 953404346 462009239 570773808 973035940 912691560 275504243 934805330 396852517 846417537 486340888 359528802 777049561 507357672 754630471 44081152 41330182 799335724 561200270 968582483 570058978 174393682 39562488 163922796 258942085 898617651 756755834 434815183 906097223 143110181 293225097 932024363 875520732 859893852 569390298 681657929 670112200 782997386 439709244 260552935 438542383 903534182 435267523 485660717 686337813 416967661 34690665 65629950 849570082 53836367 26850823 852094023 52536552 639248652 989979376 111052636 501050196 292331947 797208465 412714697 905943715 992693027 625106264 475376026 285192054 245645290 829323074 388508344 792074618 594313879 148407512 922824205 604288367 2919317 736102450 115315809 479260541 343194712 492592636 485116611 625854622 215784145 986126041 98276104 171487783 88131970 101192668 686571231 542082116 336234124 215750331 606134551 420329751 192093878 203958480 747847519 67827327 816045363 997652696 420461925 221584020 982713155 862492173 873457321 378945063 510868796 154537476 924735916 509956884 939575939 736318434 196115586 37104278 995672249 834993114 547298741 278763708 868020190 281548696 498085926 188838099 287537236 405107305 544084944 387263950 566240575 883680127 1612544 895692189 955962926 331539259 499087080 302962603 954735999 307841370 495386706 96775563 687585350 940757381 438720514 884360841 978399455 761137589 13056130 484349845 136192367 541224908 695317732 936674831 791891403 631357878 891317624 947383769 515134087 759382637 952090098 472359560 28649344 261497887 243431843 172135519 791397824 170996214 204181214 306676520 538255875 812546388 527191954 674776806 321237997 184581003 662507259 23046891 880592374 829743110 190611742 655456930 590879220 518197192 835542474 822331879 865687478 802828605 242343120 84459322 310088348 840182185 242103893 836294402 138359136 931656284 48642158 234255502 806371764 636829641 312686047 977805245 270605155 523274862 112831584 602142309 369119451 774703177 430241354 343488766 450339495 211109900 1625056 651239757 772195614 167350752 1384948 646799414 709950556 757209846 568334968 575085757 993846763 738939958 466691580 444540693 311324696 800598462 573087573 754873715 357937802 448554881 897976015 587522973 161275237 375017548 192737430 693095343 456569399 834951399 974050284 318399786 537171829 352257080 5779672 469909360 528940462 207101560 816549225 488062934 916028792 203953211 531029982 411192640 429509612 525713306 228539490 720544084 286623759 54693498 602706817 557327980 563082014 586948206 556729899 12534511 763704217 897909923 604137186 982502230 320313426 721288366 732561562 129524690 568675497 312827643 698580125 902088390 143904104 255187803 975716096 609211925 205628423 421525613 719453997 466548691 74993397 954440567 866791491 485312084 183996136 838299513 437506003 730139302 250854425 599652764 374626633 372791240 195510000 728790950 600681567 692570055 385952234 629291437 752983511 55301410 889141269 430674812 245959091 840270036 204530050 249449039 159014170 579943419 869354226 607113389 306858754 545785004 184760376 532325970 209065498 159470040 459965552 223996038 873696746 918643350 160788758 905465727 55447572 520785729 364092065 609417702 637882648 891588250 400779857 595351405 318153262 909824087 774562338 449381851 954603784 739175867 491546737 655080286 485410061 56737578 589779057 89775728 13081578 80300471 248897912 488378817 933414814 112600196 731685527 527615525 788135233 516377984 788916512 146393537 668968743 396609697 761339399 203589530 319134774 61468484 568425551 516828243 407274716 522583411 481299772 376255078 979507341 136097042 748136744 514893211 488421433 360507824 991783539 287055909 100128526 801923526 122659795 634945099 420433551 66318992 950918518 341615971 247018795 91061847 702841819 883710534 248262757 829748489 541656303 932582187 314826930 509048581 835037672 553393665 984167601 650575146 776143249 949912239 375397660 465260596 610867466 673765351 493258147 401122882 969318274 866213657 893552092 628551128 264437492 238385686 839770030 7454765 125653831 26195051 415706214 51637548 57440788 327672185 421894502 600439323 594162941 465363843 627385991 559420044 839619018 85277407 76338214 609158609 674081379 559555906 4417445 457338634 847876913 784226572 273712270 581215391 1613808 309940861 525087631 733947440 705539551 714746922 957018695 16538024 779917938 290895686 72891405 453955529 49639744 181534386 416022525 340655028 119018371 931121639 290336074 840815363 434723655 287717417 834115493 876172536 102764059 211489113 917789659 987688635 85145337 965638638 275632644 362074935 30806798 359754554 71008993 318242724 423504384 189622205 785060578 386831266 66105715 318729496 808724223 726983754 45212544 354666863 904690010 963050420 102017614 600072406 774343868 903157684 818892155 434963052 707144964 461660364 648991634 895747810 557267853 260621849 544143088 946652085 932038654 690718405 244300567 114147267 101895787 227909609 213240895 832932601 616757623 781282976 222210022 698223796 499124687 902176146 605984876 346816009 871478535 883343879 793436814 706004561 333029444 430232889 380825616 327389275 710602966 729431716 819676677 33249597 127374079 24529765 976450034 424865112 34174089 891868498 112301218 1154900 529050268 983240719 513005428 42999462 312260907 777194487 312580442 732318289 295210914 192393522 623173367 292413927 877622690 490175174 270164989 422195229 625141084 484273610 399689178 847091361 382861625 679699693 135687941 906992488 36144603 682842426 10141886 894382175 891964684 84382905 694506455 293989709 216195965 842734798 877791830 961024987 665083595 109296235 876131259 34235988 288281108 291296523 139289392 307414604 946712628 199516771 651528090 336494895 795625836 143593570 428214127 838295857 84206771 958195612 714397 99204741 154972470 914127065 900713652 751677044 142937408 487240398 779144969 536540564 456242825 530521718 504301449 202261189 43282283 707543049 869364945 774110916 400711805 442547189 122576862 497580283 896463887 191302753 962536419 296876793 72855193 344697441 545570070 612565622 72545155 439404676 451453104 772371066 414733976 747472939 407775643 316239000 962372185 283685499 943809046 330503251 205871363 558127576 540009759 264268373 637765651 517846706 199122202 660963767 890106751 45429181 206497459 880522363 605296189 494685922 854999864 707757503 630020411 477327027 525826375 719242651 404420666 175662418 810576333 865557242 128567233 351995263 221936110 134323142 443413428 195881031 146017627 594460476 127107906 973831552 167650506 835367269 718258085 217387279 308355063 860587599 840558534 810074044 700349997 289624682 795119553 627440969 149128696 187666165 260778079 924781540 569309184 320695497 322625649 136879065 703581148 494115290 401524479 527785965 108441311 187832064 640909868 255021481 427756584 368426709 860581549 441496604 662221837 525600073 26189412 554987274 1171751 230595232 582102767 781481989 69473137 565413169 705057811 487010523 266462375 222441689 830082791 968338084 770086960 290942163 687646845 932212306 722388233 930331916 120651250 800217541 349715492 888381450 597563216 922656760 990359473 885845029 911262138 885442365 103022389 751620357 84535650 980577589 532684964 495867146 961165733 848869224 766171535 558884999 605044264 925978837 425279222 248323262 124756491 849442980 854710872 285876632 360151276 257034786 45947109 352481920 506852512 302534808 620431024 728878380 392816395 12189167 286714845 907241307 278058219 708941994 213933181 878588451 441291538 859506206 395811441 267673437 724990337 180605066 366003324 314451829 663096711 370455699 244748663 357800530 843229623 707184624 475849756 735631073 954269993 818441884 358413704 551796928 681175905 545546968 787281539 858578776 67732380 853387042 577092974 832881428 263995284 492613653 803580110 493998648 686788240 122902503 300730026 577107132 721372517 193086203 675392217 721565342 634760743 605866953 686560991 157927452 565812544 546124227 187222742 512509316 927878078 277780433 782417016 250282736 446554679 519748902 688391372 862863695 290697609 57855735 193161338 544499144 298985560 279853379 148296834 441553583 623535071 387879913 517823177 415564697 229446903 911600079 654910380 333062964 838752664 884430123 431235987 919007311 669683064 273017629 951611610 799638468 440191742 638189205 984349535 896491634 702808564 195397052 956051369 889777813 548839617 730481920 925802520 155965443 993787511 350872813 336208146 952098526 318961798 973468211 743941361 652112136 311807976 896978759 196779692 117737479 14007173 235937383 732941524 839577175 721106876 693263484 345159930 474195969 691314905 767802899 451800920 600413150 7085992 848997663 677318519 616610440 933904495 290618934 754830356 88556681 87954365 636473965 432274093 221019950 841667480 29924284 35151406 483227799 90617178 258294943 111273926 381399924 634655530 372863488 723489859 991185418 83301661 574217866 184525791 457788492 626678902 881925320 940469671 433457360 560667111 456345267 540223074 864690988 49040702 985657859 81863748 653796098 361572311 956414869 960326987 351940095 733664635 55660635 598511293 471617333 672170591 803194460 853991203 172737150 538388028 761959429 984451223 852714741 67784270 879742402 524155927 240964703 362476210 170829545 781258715 241822142 519491941 605421660 277189226 495204936 235671067 780103669 418285430 776715243 94798571 771672805 986920382 948868310 496292648 633168222 381399564 450450474 808312507 113088855 795557475 192099394 231077839 914984291 744599343 771983982 625254147 315016737 243772566 754895840 22466933 281678566 424532194 368594071 953236772 298663933 186984377 791920216 318928892 631767920 117964774 347918326 300847943 236416371 138988269 477389127 632374664 812297984 917462633 218730195 136988075 72772391 384103769 510144235 146231581 414154569 354245678 65385154 417583445 83273568 140680465 407205797 251466752 290540739 167000261 48087227 834387736 15789431 513859005 55842094 584804366 135273870 399479176 604129944 63392826 175209252 560822060 433449448 616100703 615353697 957301169 553275815 896354877 749449656 966838821 245057150 671379479 852881765 421591118 509089666 439400400 508185685 388655283 199411922 511906972 698907838 269963350 510361155 427051287 969064453 864266244 871137916 62354054 600013286 219700688 936699687 984186394 113123908 757931552 642348964 324653195 932904716 297397424 414006157 712343936 714655331 787481025 129072569 281465929 372060531 148237025 23239769 721589249 188860151 648957057 863959226 602596067 312550594 249457229 927187489 545701565 660181763 622644655 17083472 833142815 949766455 487160821 451561803 274287256 397435150 591810697 66901511 361103052 458460257 739992937 638473826 88917791 145642506 633536091 900996391 701854899 940817177 641432451 122941599 123717387 755570060 936344268 381826668 778018110 33141710 185608685 475371799 975032509 405286556 272295225 597863853 540749273 550656707 469202371 913537548 287889554 218517687 76301816 671332219 608930491 550634637 396143424 2636809 783456640 951375847 781299618 258346443 773451622 998378525 992257220 519620091 679959990 746906822 660940146 972663079 154842809 700529473 679380232 400573908 394091171 998523063 228872746 2014537 608975273 276017718 82635960 725674999 720901764 483193267 297166372 714478886 602436271 240786299 693747159 850833150 319726646 142786493 674709339 224988691 536784444 314991817 560616468 255768656 359560702 722041397 203980247 412197254 599254615 521082785 907766394 556611091 997046361 868239979 380803306 401636008 766970630 123133820 912402447 670636819 996162207 821282434 263362038 253513135 7679752 56786101 323164571 664360718 547883200 232885065 819868329 388621411 768267547 272339417 888541679 319842973 389711830 48506990 287601344 315546154 865371743 787175240 531344246 388562308 666747850 159006044 724302771 955255971 147823821 815292810 241019263 785659286 383564550 4190558 621736283 338207936 18736731 533699417 979179715 997917244 675844144 112125347 447020795 691599008 753284762 401404452 386380798 997756526 917636812 439176151 802653354 782089938 126997216 894307168 531432780 358219239 953736128 648358114 59823880 136076875 494503572 635946491 951891990 369742798 184372090 275083376 84788373 339257703 125204234 206705569 162758097 350115479 951260139 265334817 401166166 133651300 787831856 503742734 631869452 816864037 914527809 332895028 425039651 33814208 631193250 675344442 628102371 676286161 203511132 243658009 612239567 710867906 92609089 640793620 438282922 751250794 773480241 435567132 830792592 385698057 455094479 154361359 146875063 219348175 200302910 610508608 236013064 672442180 986139517 572661958 318536932 497037949 257160556 547244056 418651176 90853 765844055 438954965 722624303 114670505 783331554 346486280 674771070 537901511 24675277 710037950 954718277 688628277 339961006 746049546 493251615 871004128 849523387 991595178 856555139 620016216 650119727 248607762 177155962 670426364 255781197 68735329 231908444 759543835 511619538 282052765 974653304 475569339 848281069 282614371 927163357 496478984 678987975 301845130 814148627 867859396 640388373 480179882 509562576 407314229 312650270 912498165 651466511 812777358 38779160 923403733 567293120 54968367 352388884 504607650 922410733 498728010 127309035 489297658 461068017 898704446 354139753 371043732 259357817 524403784 439867150 234714003 317848914 423567985 907523230 450566256 581339855 464150974 269428844 440740735 939301519 12720500 345684584 635886883 178122032 576538979 484624381 600958649 310254770 206308637 190898751 958828565 557470278 694344008 708770721 524658895 295709884 808162474 488555472 16984009 463591618 366597028 298309334 99831597 986853892 787628998 145013784 786256421 248434666 142479929 789719871 527572673 136422297 138591111 282852283 185485479 577346291 770522712 894715160 599823336 448661046 649213075 601399964 464823105 207045581 983331248 567316065 468086062 107847676 277064799 985979531 368206915 259529081 682191315 329242739 876716336 787503953 610065154 572497850 78045520 253372937 125217571 301482094 924265187 302192060 102210203 176939374 634069323 546786280 913838003 313804963 352257168 141907766 180693426 291293509 964691128 617819804 810884201 431691216 54365345 761959088 138373322 73206612 644405397 819641133 235460870 10177868 814785750 764470512 387371126 81442466 434246487 964746907 919435625 464034385 364597545 547195794 784681689 11709632 270622015 788179908 742948652 305966671 558974297 161471668 229430616 592984673 241372359 204000336 875282827 802205582 354351244 971525849 155347068 716543667 137292483 920257699 858792501 508858445 346853021 510054347 146962148 801122335 825574159 416983892 369035987 477865434 557686556 599241496 116269466 242617811 566900289 100136084 904661948 420720493 978338879 999851589 490649160 466875488 439093065 317052694 38879252 234155039 398417831 919913078 8065577 815770710 12877550 605309230 621162142 630526799 963581604 320118025 246698105 958414654 921560390 981509903 664064252 672784859 189032795 879001483 784860057 939803336 844530785 954916474 54483555 99129240 508655358 200893426 116324634 155309174 801017023 696868774 516319021 828563521 184027920 687587395 753783081 889434405 432396149 934354974 477417083 733636039 969518467 355785672 477964003 811144194 37929524 457826091 101381693 356588024 999289208 888092582 88348534 816038388 271441276 767504917 907015636 446890130 872547124 305426452 636966529 732604419 308055778 304309481 983231219 424822395 470512880 188144035 166900890 491285193 886848624 77974115 662648787 178100275 141301092 89680468 742592268 141210370 710242951 887549159 183665111 371110400 601370918 84237202 290675403 574937246 845970529 854505327 446498137 732466803 898147631 312730219 595508464 1727475 761031993 286657320 632121015 244783729 663691757 533481375 828883803 590904860 960990945 179046240 747585652 579657057 403063773 812310604 468968473 483050124 366557075 556669140 394443589 33672864 318143855 468598179 490372856 633701384 33266413 650250793 948386116 96985651 300951223 672732641 998094434 868548211 147382203 875493591 972168842 734976891 997122970 430940939 168866603 713333652 103559832 491064479 967455710 424598654 131322684 920396711 116571243 386871054 760542594 786048911 163870403 78524928 562608589 127654935 578458784 939451485 483077480 690301967 535518736 43300047 851095793 705635097 798634969 487506780 102565352 618842636 969978119 639582550 104029451 696032802 294532847 646102353 911740846 603340278 806753215 314629351 130012523 994595653 144540139 979514151 385554425 502269582 299402174 591861772 862582944 242814415 66297498 284037359 593259574 279387822 511351931 8650988 197857488 734386177 601165941 734850525 76415944 118782338 239789032 352299171 320256634 664703267 266789832 389927473 843210872 648441088 321409678 751492670 990908020 13112470 653485547 606707178 462098531 837422028 728738813 998926388 136671505 106163492 241601310 837634619 702192006 541572364 723686563 589885380 228628979 897176220 891047319 140032660 351352401 602943905 961821876 304407061 97889995 916859505 894906330 344482107 408084748 304166946 112135978 893037762 375323081 469607658 399715709 663037793 275830533 408675190 374814812 298855501 712247707 585782968 170801237 178264789 631498953 534553118 541389458 808030482 579249035 540903744 384485210 299093720 15083923 980707296 456055272 673801344 866063517 77129931 200705953 128695370 92881191 637894187 92957082 421998264 396871506 438321103 999937284 920755511 416336510 877627848 828190288 630516119 63822848 596992299 87858609 870260191 559327306 739453459 519966919 607369040 11922238 147797081 900842455 434933714 879374744 193419524 851829647 292549266 766170367 186343675 263216738 439994107 345750451 981544122 369938515 35328739 349428595 502895438 889943175 106209407 712615142 320706449 226210298 651696973 257373264 77538642 547242035 437686858 550132966 510338357 780547750 348444956 548923423 137771276 172784855 576476962 341989641 248974952 764331792 270204638 34602174 717422822 612889936 441523463 380498109 221577941 267672337 133028912 252225204 512708044 320523739 491031946 669680905 29187176 79295962 284290429 864932532 185646904 457838779 730140145 452508308 210862580 498560027 316800326 87640967 907703611 332230353 843291066 184481623 845263952 220126686 180187152 462598089 935290713 4974492 746140067 815451431 615989397 552018417 978407837 445230180 750970197 188710599 379665324 479856912 147506906 757973124 433846842 390980213 495102384 949462973 9920796 27865611 933028814 637221979 455679636 942500152 747502402 381635577 941902430 938854981 417078437 82736859 965259949 31171282 271407287 493094460 634732750 472606062 957906040 204672712 795676373 534691554 656780081 629555925 310063965 3802009 93436500 548736667 653214190 184612525 151570708 240501043 548611508 415306078 991287849 195689641 14070454 746538697 484148216 38105818 896266067 968439345 906201083 628553559 422795941 922674903 8109669 697841010 153959714 808946130 775793981 45013390 202196034 967784106 805362449 347133586 663158903 504970832 783829149 932157503 295234903 270610283 593807345 538428205 599853640 148394165 741300397 135799526 229037732 101863753 499938367 37003282 859700254 764512791 281083720 444635649 950071601 327471298 573779774 285638850 102294779 841599827 440140206 710960875 597627155 958648439 908842057 954416471 147016669 78571206 756112882 991602094 37203376 844968652 892739272 205543134 149876219 722827768 291778159 844902457 179514882 490645024 417505993 263207129 361635494 540120057 190647399 293284568 299991178 383142900 326093605 425427223 722430357 90550982 342605178 674616898 474575603 854844337 893072192 669679515 651842259 878321653 554095625 607143945 639314138 89647394 147122019 369919200 159329820 472673823 189915584 899960024 413604451 347758332 309617955 822167771 873261906 553769258 304431316 342783440 658407509 704505409 367315403 231846353 466659411 41236120 945967148 799352616 444359648 398524363 906955822 120844916 111050996 766651370 896324475 959484338 917750030 702261186 382802346 49096795 355626659 958334235 919299524 363074515 535717136 792934628 556860991 179286701 388750395 558508620 698650590 525843194 802119876 151337978 932141841 874213230 699358311 923448170 261497510 253325650 507949444 820532354 850981514 605968921 863467530 394824343 463112092 448762573 448857967 401951924 305863674 317649781 463888274 329908788 414207971 908572352 807817969 54927450 307633664 178456844 471321276 632356817 607502398 45510472 527616141 637628397 615845446 686725380 74174600 192796239 605905077 384451330 460529996 991487619 35415747 937497432 159343454 327093285 4729582 238311872 807059592 518973715 973842072 651492209 996028770 448053662 112250154 57135003 830891671 551366727 7587600 715208889 49994968 104140217 656833167 231206060 233733027 775376861 204550161 991372673 331539063 713826022 889102977 654293459 36773532 278724719 675004315 527145359 797315072 385214093 690057567 618805253 74832667 62480024 529172529 548296529 310628655 272797300 39216814 877950667 415394329 997357737 990942973 543891420 527336765 568107338 245507077 375485979 850464562 809504611 467191262 516588441 692152361 187424587 560045505 861320294 842944135 231997373 298165481 386457317 36814457 62384804 154125640 840960720 47261302 979227945 125938429 222006612 886701068 607101500 662973332 454915768 972552724 391385113 153260275 925544372 842419238 411614526 463669206 952613781 4802924 886754274 431483669 907035057 319450096 641204644 835548643 777386117 954425924 657324931 935601864 228540274 51286174 70894954 818392326 290203987 616892919 728044153 83443932 305553992 585413933 392818463 526734127 786000518 373557380 811088248 570144629 114202243 356324557 784511412 794789092 800250114 890357821 759909608 391593938 248597234 116338659 805651780 285974130 322122410 275850458 606388156 79145592 904493691 538219524 764636135 949867895 333459941 719149334 24844138 209903726 113562678 114993187 412672477 88642677 781649562 401570243 663674757 336666348 262780392 382329459 533386808 356069898 678432348 691554293 601034116 837265548 935116098 397701281 468565318 312241383 254499597 403903332 286614462 713544353 233226394 429422461 355188465 659641285 343789554 461248138 361936400 631306165 875181635 289364374 822822172 609519895 99737922 106241997 197601112 690524387 521804093 725241297 382712162 649749680 223302090 993182933 232691883 13827765 709246774 456267281 53949550 805075850 323242760 216821986 868333956 887234260 963151137 651970593 452229354 745910082 328637598 979140911 478004520 944777575 484517149 672004844 724876013 344688599 720786980 312477115 988565388 581058006 770245097 717815870 959607339 507786933 859422099 953365362 957710078 409016502 885714699 718405332 206647521 553995606 820767413 716051455 21433125 630695994 516093353 626385303 174019581 95161899 735597853 544154725 916576734 493881502 651161219 529274499 18645151 881233239 512687198 198836392 185879617 229928379 970534103 110725342 27199465 316237808 361182703 255191602 749089205 675314506 355952125 895778559 842769122 199083568 644331044 171117540 538384761 33504867 387031218 923522787 374730588 305633211 505433943 920440756 659323919 339380398 952432212 714424663 22451364 903734855 890882017 886181079 764203326 413647171 676826689 624648826 205852044 67960752 215771890 400218537 559046688 689409853 739678464 644204973 566716335 231096912 914326558 369953704 316416521 166169517 437465740 812993336 125256087 775037751 655713670 370086547 24607117 327075527 401216556 372377320 531521115 64219440 859074441 915979203 692175954 359804162 799351016 931060132 383294084 548853975 216712889 97700115 785658757 452742682 651452670 455246688 174800509 594339754 933890808 455530796 71974171 357612577 804750106 660386587 317785952 28464099 960960785 154666914 872384344 196640779 46927030 182517538 65028943 567049627 845218530 891615524 860129366 504890317 153910010 834799575 871557319 933620743 116579935 653037167 123408667 829597673 163066762 755679739 590890244 616411380 499181466 823495910 57208438 60068513 687813464 78452189 235790211 659887315 929752114 995261875 995967184 335354213 763566015 964229521 974740325 744489316 258567657 55806380 542877692 244326346 195233403 475217230 579369040 618501686 60052974 243648487 617523214 443848814 636476127 438090907 913870617 686926666 72769743 891665654 674830324 278286375 843820996 419850623 596429830 413061609 630669862 965727266 546031074 929787709 145458476 851815992 528815974 811289617 71225255 430197554 677995739 176464016 860769371 967678438 115411202 606704523 335652223 445845608 988525686 277883217 599917508 567737411 680337516 590485498 581077856 841109735 724136671 884372978 397382470 180411759 670990982 295175436 967844164 638650141 228741052 691410123 536112122 768589706 642734813 960726476 582045697 903501436 904452035 184800692 618026133 672056216 718639785 984749001 338444402 843676957 323533899 878033320 845179914 8092547 902484127 420521257 704362016 483973450 591536547 240158968 123202892 248667186 297235520 752711161 826846291 482373512 351315642 911384329 392636125 443487686 493071319 49733604 549154940 760891476 746466294 364994816 564386258 342026363 488430726 566005987 177644379 761782245 853509141 957743190 298418758 866006465 88950330 87568668 333920850 25728122 928701120 616408439 383538966 873964517 321944271 784123015 739211479 537114357 784379213 912487548 802977133 826483856 955581309 668327186 767043409 219789500 919997128 172847245 21429133 648481602 799428418 709380952 185611206 523615719 172665248 321138436 606017306 276515298 227093030 99485528 452160481 935577686 970315559 941860470 106876007 898391643 724925330 731559448 984551747 126314554 579731708 505435995 878831940 916721330 894145755 898398614 339847028 972432452 616466120 209720868 714481592 4338073 477135829 854065978 288870307 556934879 956226508 543097227 124825522 648707344 790392296 904629401 618537044 329827844 587824266 791864065 448794257 921197627 136794958 916252101 520208980 247920634 556797139 422615 698176211 196392555 645648784 121663766 213836081 159731972 587794209 304059836 992114655 386368652 133037176 485351430 987164138 621124559 307527087 25467665 28306919 250876903 520036620 760751368 656761251 97089492 338309163 9581543 941048735 457528882 537072335 854737195 911412506 473484779 385351226 605847982 56659762 797152670 752475694 366811225 569596865 171988102 843355898 500636078 164756975 559893878 346343228 431074521 441649307 851843961 451036458 503495022 500686606 644901875 848279044 156417034 635559292 542410881 115198402 673966448 12220634 781557035 393970273 905299576 763854245 398694052 407120949 84764467 925372382 483709499 557910122 419579062 650963688 212561522 632306973 559705134 323124767 628563479 649156247 210321182 826770780 292259692 226075304 441231618 915530891 272298459 996498380 997159541 519481025 986053655 18897298 125454382 17470735 38608180 874684905 71121910 631529337 149833493 57567055 467312613 543953478 155225812 705547802 703232199 121448216 51558889 886142783 454462417 986601286 296317389 434278378 469933956 824195110 480725137 414308450 588035594 657094383 936547582 390785371 68004877 702412296 101624099 922467948 185676097 971195133 746591479 262754994 441945987 616646742 735956821 501055327 976444947 1997836 215997939 238456628 377404840 932237989 893615010 392961047 908916171 755385109 641045510 868315157 41327168 577049653 194228162 276936960 554692993 164683936 654671970 110404257 981243130 30366265 149678984 303728713 788015862 183542596 126121799 354869191 781005324 949733775 580775901 289176750 412152879 682598311 485364771 408291341 337247841 486832260 434398539 341537162 912458558 329530393 340256111 157923829 930194267 81338887 59899003 835222399 222065788 228090700 501547003 45857525 477827863 933927914 361516223 953643971 124097391 838254574 935384719 860322712 452515334 353335297 362714891 138396581 135790793 648598175 153460201 8410539 795129880 494920043 257655566 523402349 188760700 786589894 851084249 382520879 539525943 79605848 478771621 947572328 996556804 789893303 108947442 535506654 693254750 911447328 437842152 84778931 812311251 809356134 376007121 660009240 96317595 332796277 434135815 595162315 303361698 569760929 390519801 353800445 360727843 24416903 401920862 558681797 829026102 566937482 53319734 633535931 833789771 900375149 444008749 463847736 46580592 601960453 206306087 353117786 299133602 824706326 165571247 285066042 779963838 845237804 414527736 279291548 705680845 2565460 370724383 615372989 556500741 442882442 701200465 207906687 860731670 815657293 361996200 470497919 339754680 191439590 780756213 695803130 480284296 458922626 353255267 585530793 148376320 562516640 284481880 155055152 123017820 481703335 976590241 704465490 441175637 702832016 876806047 226348954 349334291 711769752 975252782 857597441 801494743 121285181 969583947 995250930 160127078 832361111 214036683 484022893 316155724 156021809 980416032 288611853 837620208 978960803 285129373 955126784 929427617 836954943 545448606 566905741 832243584 767722663 163136301 163780206 269043214 320823991 826866345 16781010 841486287 881925840 163810097 319748187 929973182 671486845 569568880 976460465 624104247 826355344 226372315 641960198 681541036 929494851 25157484 139633153 894584810 45498430 379734296 549949632 536804869 753803075 960838707 49072336 180258230 431412239 808102876 368775896 66749336 399174824 232550474 842164380 400550597 254301706 624907445 951984239 97366260 187087752 336298864 655246826 721168033 360515717 404162629 197288964 633023243 180183545 66982874 250903155 749245972 139788237 205393845 894353161 105959334 85505133 959181849 615802002 42996703 796901484 223603062 107612676 597239654 601577852 564398302 661499312 536272509 899319560 130729066 272887966 564461332 660318185 513478737 662791291 392168087 22233895 862409670 299040378 962137060 149925891 678625136 106072883 64975051 649443427 331522053 458716473 726810844 552100977 698749507 887487823 796004729 672638157 376235381 434167626 448176355 14751513 263720645 231026583 128054935 644775286 908634005 30188141 36018352 858472938 273243177 113847987 965550616 889535080 817661729 666435506 580184966 998937319 22750692 432072976 55915268 397367826 57528859 75396388 474780845 192564576 989596910 492740055 548864834 31527748 751719915 724117275 922922011 895836844 138298211 49031848 247430259 283796391 89585985 794509444 685907602 176926944 941689283 73025206 781945197 132509425 879146701 673914685 724166948 145489878 807990235 980208679 437120038 633171442 131100171 292918689 392949485 216920725 486405586 680490618 434439721 383590294 954439924 86637997 156816506 605925768 40502504 91621598 334600217 483392296 849778283 331545975 446700257 340453910 109287298 979978863 214633916 393432853 17699841 28944406 906776332 268084883 339257100 308038763 983359051 668435202 147860641 549893543 466231431 50680375 98019359 664524505 421553452 542444101 412068719 173427376 172315160 669887026 115157227 347336828 924996257 228948756 849405042 4658408 857216654 617443582 27474293 8320457 688206783 209111992 213451799 773136300 643056332 181981767 313078027 200247420 287606942 693721678 887125497 693311501 664772339 77917568 87534297 126158212 591401338 395245002 991311636 937391510 546982170 746494883 424131784 604726053 954063845 357632895 428489723 938691023 713083954 664626784 938234826 389816751 945729998 536931380 7298143 646172372 899340733 531686787 458539498 144156275 68792983 549266788 296455863 248355665 869634836 429655648 158578535 95809223 261113649 646096892 665707150 118555972 998682712 381222153 397777440 408660437 436394381 545268340 5750613 24974466 25359960 225160353 916023912 161023473 623792548 57909512 18879770 855667308 215357817 363928990 553059266 547810062 743273107 134867595 583434542 728214341 957896525 923589483 466410895 997933191 677654206 962153656 488922246 297768109 749930836 850610193 340961440 106013420 360481689 833582788 179521646 230504284 510886110 952989178 325451321 704823773 643086530 672641166 533490368 518872863 863261133 863385907 785423482 976229578 615132403 204326756 435409246 51565178 796189024 628362555 352990717 677992026 922909640 494189873 381937882 16779703 256968380 932264058 437036778 465893495 472823313 779868621 760931461 447391310 384261332 187343225 50082171 920547195 190193316 622181786 479485189 362225540 352849259 879369343 219167258 969503222 601151833 296151531 877363681 56532182 818503268 856922385 213953341 889227141 160984462 417428319 435448309 852199329 301054013 621100410 171996980 737513608 496330890 401390941 883177967 374590888 683539747 520280710 409448443 431795717 377687999 294226036 199964840 95634577 159807981 334929258 425584956 890796509 602253788 43908698 937353670 606285771 878105428 677232510 479799020 272019463 179807832 433994487 932551903 941678371 544540531 244867520 46506967 502964473 412012746 934202226 986965145 203912856 269911293 458051734 134282369 660824831 475454101 657562500 928656817 707158630 70534780 313783216 554204095 399100369 561964666 20790661 681933969 498001885 565474629 707075859 602346391 370723619 374516228 387719868 668994670 370452002 673634594 591300923 354627845 716130783 951183438 504935715 582557052 231404613 75531455 662830234 775036739 51070387 474761990 137846687 322736365 331908600 348315101 51086802 420152152 611084722 611957585 347049785 682571657 514666070 977081604 23010070 306735952 845901911 857833060 757046611 966055090 445901508 790039298 15867934 713977704 92251886 607612373 898657680 494067607 456626658 470193483 388663585 474051661 318201644 468260441 199526520 898398622 739649305 213725077 266079346 193293853 335195350 20510902 640793447 424314116 679384366 436173097 390108175 754532890 689720298 410626277 15029772 202645255 102966398 949350037 646715652 122761840 60985352 603091682 97244980 259054869 468124215 874563905 549472480 519294075 382206328 173179683 543574658 338977284 531978323 377735500 813159449 651993895 146517778 734383524 887565355 776444761 677363920 712977930 742313402 447495979 896228143 507771343 728836811 999869506 998903699 27669829 959811866 846580383 566097706 749929176 32227748 338242495 401682993 123511603 45370877 527616574 651866036 256295627 119702270 627733028 988855118 449536645 362882215 350598255 520795557 113451124 345904710 187090445 805266550 736427083 902400041 627232684 831465932 819826955 595249861 412058015 385281515 252888677 484497880 859365352 264788080 647141670 870078491 633282915 20914319 394840834 607775901 898187967 354138003 933161336 448749461 893312482 501395273 948802860 547991804 187155469 469555697 884666434 169109563 192230806 17360988 782469466 409856423 36517867 374436886 321868737 168525117 4669282 588965888 169401712 303565543 124752550 445061849 490216929 888635570 760767815 883106204 234396851 239705322 166958574 644994973 589613231 522942512 806566598 271463474 797389282 144601691 296801010 386837114 889547216 143414141 441690893 352657685 362043876 321867113 944370880 324861239 187130414 396960290 797875099 607916954 850916913 754084893 572680254 249562761 157653706 582009810 958820309 659972860 770552660 791529479 328962979 109157140 290234099 498735688 454366232 569282710 993476152 620436967 854608904 61768675 45721166 705775733 522428858 470559734 362736344 518443681 595472933 268835894 446030532 648910358 879957036 110953097 599992641 556452871 575720672 841184658 391222244 719133951 847247597 668615605 541941096 940032365 702758446 522495324 932887986 736369091 110429473 239744598 276140206 335478531 513824096 479954926 423021148 398802377 189827711 300903097 919545005 974614921 820531373 240701201 155967041 90624924 434628603 710428879 839671369 62875519 512949981 8188647 814802485 511555726 865948591 379163770 558329767 500702769 273072295 651128966 767635440 472067240 611558388 153786200 357900958 482858613 769338281 299294613 636757004 320776902 709299490 100887497 942583203 603340603 327122481 899696012 145446822 704219652 41021968 868078677 416873225 742342925 529304371 995116778 888095911 930542524 23579805 411545013 93062294 828530061 975846903 894168414 231180550 970011103 159588344 276777339 475626939 792899185 508287024 466686798 660515936 236224130 378922974 514393283 10185252 614246392 4651881 505115088 876249479 548168920 164884378 266335718 617994594 117290987 342409754 990562991 380319857 884065127 962022999 697006324 718263082 586680975 275481837 620411635 698304135 928308545 920442817 834598092 901109321 230294749 745785191 729241374 916584863 797338804 939729509 216030062 823307174 54350380 696769642 297068219 212461881 718472111 975129315 368798988 485988380 147167993 17879103 176734481 395683889 988220913 584456299 486142129 386117728 58422162 677271731 5368440 70804531 462040772 322516193 932754522 561797948 761016095 875993238 770501390 566239956 113534346 642337737 295283098 35287185 424178478 567224009 794946480 16483819 857689917 442026063 327568665 639748502 102321612 515252395 186539527 339832046 698646450 144315170 341093999 428730419 904791507 405595729 252904603 5857611 538080408 885931337 375064948 286210012 362921007 195890988 571900387 115981177 490227562 110721796 423278417 79102507 289649598 543494390 915408584 274956407 606804964 640540070 728369271 345634319 460828099 818784644 113270431 497477786 344515653 687153495 485633814 499909174 402998329 787963202 939491751 873924460 483702836 21361115 197311108 242556894 512510826 410427672 653162902 452038607 288109140 467356719 612633965 526142575 863791416 559990573 161304057 702246234 104181766 980142268 243548808 320225289 615784212 658975538 314730606 105597364 503154190 566041871 625988408 292367913 488821210 203688809 603088350 347909303 548914957 983111851 603995561 716381366 930390607 913294825 72353494 216407196 535656493 619238544 152998437 248015485 537946070 120558021 78876606 778221999 767823668 237413291 291915536 543222663 304343254 393619465 837629060 442951865 48408158 435984530 159589332 544503802 30936603 231118524 543890389 118460547 656483290 793493414 884377272 179027691 486700746 748159835 253915911 820890610 710383648 217588290 282646880 33067300 173666012 743020265 590617879 450596372 968424452 551022137 634077213 286138438 489343454 541664193 936007104 859794009 292306742 591753020 116584652 553991901 499630647 980979363 528991840 24144371 51626919 923043242 126954532 998501209 603286738 264914378 877905043 656069890 583281886 286916879 463843398 16334861 966414552 27808373 134887118 820136121 482470798 506612436 538707821 164552048 1712086 777009509 8696474 539823412 37174469 337356635 468503926 431648524 812392477 4623432 642557178 449666375 385884621 154144934 6863380 196520279 187985360 629039850 334976052 227187304 161861975 390000904 886904088 797214510 157913004 897729826 6455696 300429307 863727923 134105955 445958769 895258023 119966253 510448357 157323730 22495073 886148824 649923818 829882776 822128034 59245892 88828249 750601857 132739370 798657139 929734800 971419446 463163243 369057170 533054641 223361926 777709070 558073934 830341848 706123473 347578923 543819435 140459553 38170386 585266316 396738202 811929762 831965419 169902490 667467567 488199928 915818708 960042823 387116505 328061346 937634617 731846713 914049478 555092095 228204469 443293157 573722480 448553041 406726288 426464287 842655396 484018839 981441069 574936466 344748535 639566417 536457341 223123128 41546780 295571646 738296840 913907287 244098829 240156085 812095027 255552067 284152399 989175707 902846461 278094207 416578367 693294799 456882850 297760838 893659808 386687012 191394692 382211530 833598049 65823196 293856800 132079962 117904586 853654095 490302064 984467524 609988451 1894478 24380040 645461151 701593978 932958296 190954504 197167384 342555605 469640326 636193667 684834215 829308117 387447954 296322035 321729214 826194730 882804165 686837402 386500228 908430909 428184440 671582472 391437774 398426519 176759965 655973653 318858651 848123805 399960281 528914729 629287614 28092539 81658287 783122576 438496752 264385928 740937113 175315363 980138805 677549014 474592867 876998164 320719945 608552020 220268203 162282582 827104560 733204775 865681258 30098881 294580193 920817026 130636329 392294549 481986730 288964099 66892848 58359436 78315687 198399051 776305905 206383499 221993539 929724775 712336211 929908188 406164606 840585353 633466873 17270658 583938327 730123787 456216136 586480730 792486995 98080294 263138492 341714619 905824233 881861206 907125207 934936812 286386736 434676796 362549444 352953384 834365802 325131069 84661543 54376833 496160101 6201876 960526463 744245532 636580825 707231779 646572108 591386571 110740861 577391266 313738386 177077233 865075591 329869896 688938887 634288482 398718763 153432936 891131242 892886684 211732311 75163846 232533816 191098675 419895068 179722751 117814415 92705719 523917555 596520250 938324102 991617252 543999002 405051341 717821887 252467541 27529793 386972263 797416271 181761586 771521594 428746749 685550707 913529183 430907075 415309094 685518975 788710299 38129889 517221370 570073427 679229825 287880216 192503892 908540825 150333746 118219248 681065258 377783081 671243584 829126491 678900531 896699534 260394993 682915927 642060557 366786758 154026937 912458133 702953772 490636840 276606294 869268015 581254526 361139291 590734829 722779268 9142076 591276093 879838288 937322557 112119812 672418733 574900966 280285853 553009434 116537307 552806815 723331740 467277863 392526118 748289495 471921737 91308577 352189315 697828752 864759523 993995647 954064829 238397646 821267881 332095446 971191488 911430659 102819768 764649843 311591919 164854324 898792356 373090728 568969406 213308337 501068641 847180167 34750511 770565926 353754006 594498934 581609296 463995671 442951437 536039378 881465188 2013723 340084154 607398492 923181701 426468438 301601178 700787449 42590959 247770722 284745546 790980515 210174308 737142301 777150970 553376965 681052006 440914195 304576333 623002989 892094212 710271793 854393805 514274898 544738789 523921008 432719205 788996841 9858346 590871015 641279551 822963203 899359006 372845099 661870954 132623419 290105663 48352303 255700322 833063916 761053473 636233861 968580639 188744713 969287866 424226478 98331651 8582996 39107514 84768889 415822978 634082342 522095142 392204745 992700194 949549287 917581157 539809131 755938525 434682465 734135563 38004989 813495549 988587383 521987002 733461188 12875532 807052658 304335242 530558502 420608638 486530688 469572138 470826112 336129238 704298318 453217631 120836268 670331052 568653424 131951549 75023760 115094753 922655421 890528265 112054428 122556427 357078824 763618973 363858173 623322790 259217137 602795914 670203205 560398989 427235430 64513894 774963452 233950890 337851485 164741548 574797862 732619034 63069759 643849531 677761387 552820667 92744358 498242412 925428230 111077918 886052819 111765246 143226945 588708454 726183326 688440161 6963280 352058829 734574002 824518438 79470760 393094154 103815795 814520898 401502763 4017647 932553522 93070389 531499990 738712005 32808392 796733946 432282153 97531573 430186740 453099325 490734015 648009131 565374854 166852013 251338015 757443698 53592840 381422946 261923031 849009016 421663685 245961195 935645187 275126081 829519396 776435743 789494660 376234276 675092645 381889357 480169995 683442087 579789441 760795087 584970877 19618928 42293634 723238836 570355127 883256370 571844431 500718012 749598904 195504297 476702409 283350309 410701751 798159941 831675001 277865873 33290112 500156538 824999486 513126061 585215443 366263143 664094552 162353106 993052765 880646035 858716484 211218096 435256107 954146013 792848121 309209791 272793674 841852880 448091781 754275263 802389325 620271203 542054744 270114161 871893122 569746890 345255431 470251416 702487321 226079063 952065401 644356335 139926368 428874239 534328773 486868194 903030859 823778628 685077304 563775375 845171405 621656286 800864323 623849348 244813025 207581593 258296096 294637008 554338970 471390978 293308253 705825023 895895119 677313872 5287833 342984521 906664779 561590904 375659781 950208070 147605490 844991541 373971922 693975163 653718759 245871930 749869154 649084393 591407254 260973947 371503559 579400360 242711294 133894962 433306388 463981503 330431619 737777184 832746741 663722653 902827911 638221805 750546821 900328610 689557904 10778885 476761029 223267005 22990038 639021405 510593133 450741652 505977119 654979362 15324141 863876366 903971023 147240903 583358989 686427450 779535730 702606307 183667379 577027770 871078961 597142355 900308188 719262152 357629972 749205450 258499161 691406128 413504714 383911 740589131 363158533 416838284 99846792 71260353 47412086 883422166 92774879 653115346 46797682 909171306 726874341 976469931 85871583 469815520 257697827 480999930 554936859 715383367 926548870 139307898 700931188 726119612 252277248 620819164 85687090 879446284 883282668 71292800 823958627 82829473 421165052 391900206 157068625 932692571 962512816 618063741 221835931 934984357 305950711 354094857 594960747 244174011 231308970 103818714 925451218 561477484 714912427 604322125 652120142 385673548 255433100 935838695 464521056 266619093 38427352 234690343 909495350 924503298 100418710 269217280 545173032 462325676 205072422 742829894 29816530 278537622 605798180 987005403 143299586 32345963 989023174 405337331 109897283 701345540 38642777 62571501 776065457 454706776 823831627 831387174 655787555 178632187 930466740 85301390 272754203 484031377 442444777 877353612 963725964 158101092 689076586 505720176 368925950 48452838 27940260 186841784 156277569 677450227 199207871 484336931 921762784 36162091 791105675 312531536 378645018 947093701 44004550 671188071 66431222 414546210 277132657 825358248 42435597 636487914 148504003 795923879 311610820 86033332 579164089 213037948 652568580 865618638 365430307 691534899 231917148 359499217 401710853 80346392 232701423 668325891 540337174 712561749 862459948 591352060 653315845 127578283 314547121 358473643 964274985 438625363 363942839 693953367 91410069 129107988 672480919 533297202 364643411 898444176 830793738 761918662 866590351 446874705 288754827 181351038 451810344 752628484 887769175 103118953 577520298 985126393 633705800 847255729 903616060 539565166 107886675 931548855 32199951 428251283 905898422 312584510 202083555 904456082 94825778 9468514 198273338 388020977 797490747 978589336 230755186 608021909 779416534 159347244 860889373 336435722 94158031 675875129 802159656 245453082 66992419 530223792 49213938 527177923 243226335 126792775 597600834 396828023 237615849 895128810 744502009 825320913 597838489 740768814 698889405 132761804 873729603 552275059 410962792 64687434 597279094 362390824 592964272 333379370 69470371 889948434 364219330 205252627 916482074 91908778 202530176 29257146 291064401 613292625 997078315 235821859 819314451 141759983 490761143 822361511 847801815 352408836 228813942 497670333 365609959 429758474 985802431 843753823 849603135 606567871 661939038 269775197 533579254 999219949 464395688 269157443 513020519 693903657 465427056 732968627 427719063 956885312 823382073 405402929 699074085 131858146 15835642 869086699 63561173 983511232 559959595 200054525 259663895 789408285 143997986 874898800 815345682 922556109 654908022 821143865 89624556 839622354 919091087 801393972 337183357 569649787 302487501 854123264 116584979 991729415 682348151 750764007 825780336 180810591 649483814 506007918 266001919 798154849 613399150 529873680 820166467 219638219 657474637 153119929 736730072 452587430 851734395 267296505 897931110 507965796 282836270 514339839 837862622 453566177 398809493 66876061 948060521 14803303 260767311 903427569 182861484 859873735 371798661 662136956 517360160 505745475 547632285 509726142 233052802 997490351 479221817 211761466 615987624 702327368 28379915 936350347 711138760 458029344 14142337 286783981 821242294 20122024 276807143 162236669 673652249 459520577 671576731 213855301 752236137 752589580 49530499 393968029 290575321 950950823 571072305 987421390 845313111 395406147 564828955 386575792 583462448 155348278 966800942 6696165 137521532 746638159 874473136 236085474 523241936 403481580 751853753 89406318 386000081 46741641 382460830 231036229 6391998 543955618 965488371 664525790 774417884 851961534 35358340 156033490 23741585 575263226 917294227 246516187 583420391 943403124 577411829 19262865 376104287 283317830 682086421 587584322 46458696 741720610 204114915 308883445 918572268 792544828 993441305 496746273 354373223 335136105 700924038 846378373 233112597 952817247 379594657 107019802 53112025 515382474 933561020 636592431 931949374 754682421 509528187 515421989 576715336 34083532 12953699 840838580 660010492 196406358 70470857 303101241 727290071 704319660 636562818 486849698 793603681 494398444 909922266 353776659 957938101 357180183 737597280 878935648 37222385 662211645 416666293 93222765 159210634 681242245 652439641 949386925 480318509 84519163 278446953 322988499 81421522 280423397 883556476 277221378 123758764 330585152 647454321 137732825 339572122 841292947 76532949 702485096 69173767 920844070 953432622 22278519 776155260 452785162 690113515 980805283 914822616 109216490 252680389 730834006 728217289 723511977 778753372 80668369 666854371 878508611 727635884 376484425 729362330 710589972 750462798 618209481 26099459 650024437 155244225 470683002 764411085 638841962 345041161 853993940 540787854 600784231 744886374 868103840 308574002 187313183 409071913 95623985 567465181 956798508 963849349 501594035 627604551 558460128 432003291 337365581 910371373 37551719 645417087 876895780 275747741 472212039 527139747 170078729 252008094 991476371 960503269 80070592 190569525 476875697 323329961 603850145 299081461 563330642 231819863 567554448 559775395 513536546 272652559 31501127 185595916 75735023 64106537 564655604 553671241 874827083 36488299 988705355 107975494 713236453 651315440 664950290 576680546 309809611 671864688 764604458 836975462 445186790 959288509 761715780 369852504 194228079 12725384 356154753 589384761 15214010 475957312 661136453 238076614 709770899 233111631 582641681 103519516 537104193 650175771 43522322 145063858 807945006 77958688 47476647 104014185 782137052 148731113 460593030 334240610 727572259 722289182 732287290 891616033 377412135 290918447 297171871 40510336 511474125 108706926 484114738 512762280 802287981 417253501 675149728 983605027 553367232 244333910 574695116 674852554 666665144 795445213 927378891 580752139 909490060 25386367 932588995 376408240 547614676 272300683 505483290 365048035 846133573 669362296 222124501 650088359 201621617 296728695 91150261 99807888 936801388 815434755 893623659 619758530 296793573 792666074 177636890 796711521 830977876 177330275 768115894 165400351 883009707 957898545 508949534 785339429 735381852 555307414 831756834 437448281 315345548 892430865 138629080 273674998 885484761 980357727 162207767 959267568 428350987 546057968 531852527 614097777 309226851 2192359 69540013 104851709 266371927 466338418 510795899 196685638 190229285 36899805 203311258 797387424 635789579 415669732 895996903 686376235 563953879 712981073 274752841 728431671 824391144 637925218 189434800 179587889 856072663 185125144 819588212 527446626 388160117 962863596 73661413 400337067 139785640 207717666 721721705 296866409 613328388 403582275 460002513 741848528 893166831 324150120 448473993 821536839 395582316 939708799 644897051 149310592 841722897 345152701 389236317 437893619 583349519 451493990 98563582 222527462 158737522 172924995 108386067 11772062 471640120 789137188 558825272 255680480 243355413 397071703 909388108 220827331 433625745 307965306 809722651 388704745 580316688 276614819 954098013 672436922 59409042 639814228 83220440 59741756 900364765 430245145 802085652 755629941 720059557 230536068 964562602 962348961 280290498 293848873 943765231 186174532 150403190 760248090 761578326 137926725 7317954 935848887 180657531 325172023 723812146 68836716 164336103 192595986 951464595 653360383 8191402 132803333 249828647 585078044 118395369 934773527 196124351 497666785 2154903 489977680 558958075 133719188 17030781 396023609 423816253 238158203 648387113 959780296 240495724 409102981 858986687 34046484 361912088 324491515 521166362 670443857 254373305 562228529 437956493 867329098 810091771 358338896 887534167 214061890 547654528 247259840 375679241 902742639 958509319 395451075 507444197 437908857 125792718 946633926 934227147 934456592 47357174 116955911 836133654 858941920 134511103 766805505 564514214 580044887 963756170 968849206 864648966 241777603 105215953 90146542 405544776 162820457 429649766 866139499 790970433 211897619 233381883 872129179 351685357 109813101 12026398 196372794 624959327 795608172 47051722 741295791 98766938 689167775 18322282 167354120 750699669 904849693 23939618 585523615 230041122 778706788 699799787 902057961 321729962 909662361 866350244 939956896 77841386 976380252 51359759 247264233 501070077 84518672 757105652 524227292 337354896 563600324 972416133 61858236 428286339 834397793 799521486 531415073 794735444 835772528 241801253 350460931 316664077 495055724 6135104 724060894 880734958 335137013 892402653 214286263 332550804 886416376 343028496 300070638 491040214 114960975 146722754 45105587 33547806 817185831 311528146 859110129 15861585 681039497 911639580 413091946 62977212 204621976 729269452 261206080 157289389 892968303 568380841 691580670 845555617 803340768 896807375 671321325 776769904 420286945 929088473 725991060 42876994 281945367 346405548 427339506 248429405 161169747 799407493 754583550 228620611 154923487 932966500 950794959 128091068 297952357 958616189 449567070 218875747 225692478 712161570 894734017 619854960 973352192 362725913 526322454 48721314 927624922 684812552 514478906 446578607 62109102 553631163 587695661 16975939 638229451 236380314 256137260 692535716 76979157 163880380 376897026 54407945 78809867 379530229 125951571 943727122 112314770 376064036 960954321 595704926 44099652 53539578 773685574 752068532 352307225 812992034 700507120 128635807 839505337 29529345 833530953 640979027 45013548 113504111 735369157 807580824 589392398 567477910 382519484 753992510 772791770 533812998 13321498 250877657 250824940 684888299 238678938 182944510 973746063 982493124 639977765 42249730 156471269 434635905 598783244 540171324 707503856 607859371 831275534 277086107 544075311 727037724 251513947 568497113 103009650 520486292 140357798 947686160 444328644 853148278 648760886 889689877 28356017 390986223 584157102 184537940 185274607 894644162 680020810 998805236 94795531 25569569 853163210 546918211 168241613 503749258 773267772 107998288 996449105 494666903 105329665 670204681 780517253 454886247 66055999 335612873 162834671 456708850 327173361 149453746 788960853 859973979 982761273 580648985 356865584 445411027 441812874 951655463 71253331 580321044 965177378 114850056 589807333 695576244 898470298 496766399 595540657 366782397 467998994 331010540 638012459 112852011 327384485 41925893 879436888 803537901 815993598 173991679 608364178 572759731 595232688 506015237 846759346 83999317 127462732 473660390 752950113 768423384 12892227 65175443 587699858 631718531 531365670 420581466 162106643 687602164 247675791 18487438 193710747 150696449 613953457 762818295 270634326 797765698 884131770 860008444 186029714 131782276 301945025 741371152 289003289 105441148 833093131 81481036 268847749 643646699 330351599 582561534 103782409 947288515 375525347 196594311 621696102 679349922 989730976 886238323 121834639 896046286 262434379 194772802 492188150 294544594 736456797 811338863 633427929 666295033 222331627 132075184 852735477 415445140 137526862 798038504 45464168 209906856 637721019 891603259 850857643 180967969 386956231 446310639 156833168 929858245 992654114 188827736 224052076 752175675 621818696 474590682 98469979 277184125 77847220 780362918 35452095 670093128 693638338 78611607 184538752 542893123 105442556 603729625 743424365 362469540 286102274 669058651 436924396 238304475 517585153 342675682 157465318 755170680 626860668 489363813 85976579 81371381 489870050 954881276 123715432 902450698 97221526 857199896 471815039 573452708 35057877 531517112 225994597 825882627 352599550 957461095 433479003 786336909 901839621 435375898 41414318 405938314 179785878 3671305 745236741 782424894 578110086 903302661 568020976 198628982 389036960 80098728 187148629 204842888 168677961 714322407 420399308 891447809 871581147 385818093 879206025 740496910 425814428 173863827 814999800 894465138 422997629 393233042 414119669 644153104 284762802 34741022 892074208 866574836 958724378 585651785 249105540 444921649 945142887 569093004 274191055 375162791 757192698 799918664 602551282 305732720 719231141 382109466 812128068 821365519 698995020 32285910 391199424 256693358 416141804 390660161 562401559 851584034 765603865 842811197 738604749 458093929 234187042 315218624 30078602 495862413 551985841 813376319 941566347 648412753 1663511 798045224 464449883 262779039 616017673 522904984 380434499 614865628 602083737 437066655 37723426 519136874 947028202 912678949 523589939 333709588 552590006 169121685 182154164 516534809 516483814 996983794 116023116 56151168 481158778 830761245 713709329 883922 442908807 509980033 415437183 691188374 287617279 147459219 792746785 669503836 585461531 384309510 124676446 67316848 6384034 715536055 711267437 555984344 932042310 991221540 423903272 170670736 233757264 841864838 303780269 189650249 478795101 794992310 918001176 715324745 797487368 33562453 542690184 648687781 187584609 39074893 991917136 902569544 335577443 976201692 27904024 903733368 428706430 375790331 763194717 829995780 550521690 225353517 358019611 987520812 275723239 317330384 969772619 115026884 227708747 650296324 714505312 31021725 902669006 618324721 856745579 340770841 604181934 655094863 36097347 83236032 35166820 527786317 526257800 13757931 477255168 451962055 326098532 274450610 666048295 243028667 639926690 198243364 19366444 489538299 96593428 358590364 376143667 414828317 568816467 694911616 376059878 571725 210144591 960564833 818624586 85054467 828443300 897567072 825971262 939346185 140971852 784463899 630722360 934781504 120990314 660779332 333468724 162413295 69744163 817229700 552366646 786413846 796526082 294098606 162038069 784362002 677547455 337867862 771276011 672185159 758545387 72613668 37445468 697660060 949150480 128802094 753650831 259189728 158814320 197233022 271369184 559196125 249843759 71017235 58702058 460741874 734001328 68445672 509981250 602371348 999403352 380376793 755545343 313330165 233178722 488027624 163780001 268158719 362722895 664538654 732554828 909217111 774216035 797678075 880894771 64681913 11731492 224731387 142215967 90223259 241095725 691012563 318358266 222049579 870439368 745671680 775041588 286923982 702817819 180826985 624881258 869783762 418818405 938045929 33346376 56344214 114847547 581776113 797735689 225350050 537652365 291868888 192971424 873811407 491325148 719021468 486179088 577812735 997752875 419467809 372131434 576123957 280062645 79671333 409133065 464364260 118558783 446849420 425703832 953648590 914508361 280442231 29576248 796756291 913821694 786429548 875480221 585232161 356125560 178831737 897299760 196417299 206558323 330643729 314656108 445007630 541386047 125080228 970769563 538462170 163977824 587793133 759827445 636853275 599082302 844467598 304943050 767671067 396570471 891753643 44399449 332246777 469581040 291676642 257170081 23792829 801030276 837286130 50188268 317080200 63115447 810300676 61407733 333517627 97168392 247831900 623013685 892883047 563131654 528653223 486678470 393330494 748463718 327544348 105539727 36830786 223134113 131236944 755703553 111041144 440801298 522853148 730816070 456788529 276426634 918338385 426749434 792906061 353833052 248840170 730603925 943973319 645141817 217824193 903935096 644297760 48879119 643957670 132068025 987042319 152457715 515027342 976406887 989249159 392926519 512685732 980496782 681359964 63907820 720454095 587861169 874141400 670066401 355839820 305411006 141452330 901022095 712735012 25913550 837487274 996845361 992360650 721914621 471269937 955635493 61701180 573817894 557105972 555450364 9145525 246502949 895865881 68587306 9215014 378254563 252880840 672446046 251131225 284644268 318741465 841929167 931787731 532037996 144480926 393640542 453197640 639391875 728477221 121488729 547240267 519425471 563387042 493640181 75797636 866376198 226997600 162505176 202314859 576422888 948797718 978701060 784086588 510764748 643518766 888232547 212922450 428298297 546164117 391010503 459791965 282962447 232455905 300846330 546792813 174977846 568503989 720565907 924455797 96767304 163396166 177996393 18812018 886822460 466256494 946347643 821180111 943861905 364541904 24425402 114882168 646773372 991440044 477897861 505284200 232463891 529429795 532582201 416064169 600882880 35641728 709367024 167978702 890476129 297978976 892821442 122499273 922704852 823813274 777057854 55801089 992832699 716123922 53678155 561228243 375208497 559440510 793199280 217975342 821188373 506116320 251697620 201629510 620916718 592437397 854717575 503305729 267410678 916034444 725700827 86851895 176593658 429673963 83612030 977745048 546369016 752297252 777379942 318473539 249529998 483716859 647733883 849806581 437317724 676535853 143948482 268161138 13531572 73164619 975467375 988242758 935468011 557613150 206585933 511564494 55121246 508147255 671691976 917229209 885148300 369468867 372971954 891736834 462192822 940741113 816876612 608361831 3089447 376684253 8284239 152536384 726712704 422522305 890029300 592042531 84591272 284592645 314733637 797274228 855189333 659458579 420227785 188839536 889936845 190737708 111953536 872249995 751140056 606308137 421531869 798001118 41524279 420017375 579852260 67743911 750821562 452594012 373705796 187960251 598791871 86190941 931214619 628248521 592923489 955179334 61326868 83345353 420169855 751819214 366846115 709341588 345014319 578341885 132366668 678832058 551644203 431129663 71432461 335683219 743296998 416262082 26188843 147280 663702091 622426156 134359429 719387582 629698077 357516923 540932751 635688233 873435345 668932015 214407947 436126571 719596808 388850377 252507321 521172234 534123091 458736363 564167094 886120873 466653644 862637836 502421954 629276521 587332304 719129748 820859044 244526009 239704461 228745088 808829446 946901528 714417684 257300945 877911268 624404543 952088089 944241770 822209869 553089550 843120344 555779754 546889534 553589716 178344265 118092266 60063492 350688127 548913301 677009513 18917787 732282826 816427441 668395214 303175093 556630477 357155774 474690466 241726605 452358976 790264448 79218389 785452151 865069954 524151774 919066235 372408434 288473123 480649378 701372581 533431211 295914839 111520285 11683879 655296574 962982146 115945515 420286991 572420990 450139296 326601355 74042499 958095513 828695936 500997091 683866440 598386935 633815524 713335302 281038063 772605831 772794395 664904930 685542286 48187176 252660605 235070040 155622555 92617367 890197062 617166406 669650091 867742276 682111186 698982581 483378828 549542411 792704762 966095714 205052560 852158785 628834595 244471743 110274878 118601686 266210561 732780579 317227288 720748561 785978320 256349362 938736941 291363455 306191209 559916136 228658815 705906509 371930195 886891071 67326351 615551805 102964348 741877455 810668020 322828309 956198587 552265549 79678709 101976305 404872705 367388580 454955031 466767339 936336965 127090677 904131197 154041005 623678248 13350051 331852123 70279008 520428070 31311585 624865144 813136784 644302772 161472240 671453586 640725195 185071 665890647 400529763 537291316 577360995 135708402 692818600 268782325 768646413 839339598 655574381 867909785 130564401 741806446 675232047 144394863 168851138 884712650 80434066 454554615 940310081 116063722 210895298 347716054 809708685 633817087 490510874 562423698 929765077 744387309 393544663 60423702 108858033 263367071 679659690 134793045 46816760 725970263 238322902 981031522 785925080 858630533 397910109 286346627 253523504 12176400 106019490 247653615 778303235 978644049 184397723 176404470 315048155 286594927 20445632 146967855 401631334 650696307 559877535 985500182 53740476 905375490 727683736 270680977 714477087 818072543 826880019 226531443 281742027 278601599 997913824 401496690 415640940 745535271 962596278 646372266 705487048 710031843 585490616 779519130 923719886 319326072 590418428 607417318 537213612 132999652 809505650 785619175 638344989 288986432 872550042 775520986 254135846 41346039 165798160 963274024 612481131 811076159 285661060 907757973 229987745 267934889 82907791 836203757 27658180 800861493 529236649 337399585 116412695 657347317 522645137 518779828 468015751 85477227 688101477 920275516 479047009 730965463 709121359 507801745 124345568 348319277 693452497 137248835 160512439 280593444 714428453 6449151 584346552 94216447 726470573 187203176 597744772 331967141 374851031 741278747 394649566 232107709 763187694 996289729 853435681 764621024 980967071 159357323 341512867 657744908 193628737 277104832 674565009 352227376 123599079 605738937 438258656 238023442 299719863 730456142 579714238 83285604 781936620 227204489 54551575 657233979 634445310 112317164 411533143 503462361 985750566 26571244 386795580 491588697 127162744 235992591 387844181 406730083 892209139 371567128 50697859 286396084 696011686 710440683 428924701 257313730 410694032 723637036 32947093 285548420 777679234 584498948 784160167 607776262 858019988 13494637 320960639 649434372 544030728 563679259 760432651 926426091 98661528 985716426 547549990 922130356 28715715 713383905 198874039 301924055 802806393 214347441 148423153 806981997 300675391 535245340 178373086 801885339 207626340 27516415 820110868 969713476 254973563 103875743 535573230 45673827 657982237 973647618 935459577 987213714 512050791 949725780 108599515 390980984 30645473 723260892 976611717 378803281 64369042 64044233 105950746 287788090 669286619 579214359 950370607 805242313 917951476 584048812 515129528 667853004 406489256 830586785 171605888 173669240 294031531 719050133 643306224 692890900 690638124 817155718 89742020 271958447 849580588 216806140 146869900 897549567 159685331 818688846 3664666 236388993 931157991 196796157 818579455 870162325 62826719 691422644 809770968 485289269 12329063 677541421 310675008 205029824 508697699 982709250 215377533 667050786 521269821 10949650 883870818 461346603 759243104 472576755 370189574 687715132 934312332 922103536 499547063 28193043 67219393 981717398 708383422 109453180 296588273 536205818 651374374 590869882 317429987 494610046 80038347 584593334 62859718 354075783 638058112 816213661 173358335 961978961 62052560 584315664 370730653 206650749 818653918 65746399 311023558 799582165 722718481 326751800 147778235 204629935 425411903 128707699 607051875 983558526 941273941 843266378 265629957 871922560 574699634 30161955 928967864 373574236 505982804 51528577 52635898 551171310 666971504 763186167 800283435 283450397 256386852 104952192 879038133 196491303 650825294 696346261 813475400 550732087 586599044 443137620 22992938 221955715 568665822 871588983 548416021 289684607 577783370 499516740 371208118 172756810 223326041 376628336 214702049 895073195 395741989 506395620 316221250 561428858 483348661 137491179 443293128 135843081 514870180 193688494 896715316 663388872 631657546 209069713 766144199 599740885 544071293 501647952 484798924 220565800 203396268 183529138 755274665 138156456 696697748 857046629 292894129 123729788 929638781 609784425 16851682 171556009 91303792 167662001 336883612 304235351 427080322 137186298 484140821 239445676 282420998 7700099 323607416 838728915 137633653 379345645 249522898 842163065 713584595 2299709 623049678 92644448 398460203 276379683 451158713 432916354 536329181 433230309 530341484 741775331 954484733 132250290 267752772 995164804 425097285 210394941 14828587 72901214 687647885 163977809 120219911 489294458 613629148 13849931 971044409 486074989 940167479 873278250 860986446 719760084 496174578 933964962 777532415 598868691 164614458 642393281 580920671 374338034 427818521 332748223 14717306 169611326 768293842 996193058 163731634 692895555 245873871 572062340 974797502 102555193 948953249 953564944 428770375 895115498 267443518 440936768 371640101 979817166 822512319 939736402 483072404 739313941 562824462 450924798 393609664 461841558 584965667 565385617 810206384 368899677 699442604 802454811 296274382 47830837 890333956 186894211 615575394 261022971 447322484 188825560 422767594 733941798 29947857 852747402 618956185 179526606 897976285 125585040 773790657 85113343 992285708 937403678 95640453 697506161 945641511 238846269 385655654 440002129 388726914 770631996 950888181 38512052 472428523 115164949 204913552 6049034 339110812 950908381 876760440 789772982 192225633 197392384 746134641 672348160 486356518 894771551 282937615 821449382 9627644 164211414 288795831 475385305 477183553 223258801 504025915 471361105 380453052 640757693 5810611 678027904 173891178 909217462 134746117 639872243 845183270 915247840 251322889 791920837 157432069 334243229 852324481 906121982 638776749 648039487 501466949 642259719 440612882 47324489 381686595 693544213 601816807 874495617 71874839 456485347 556184196 942832823 289563108 585862504 713272190 694190325 436228576 650542813 616088774 510493910 264401440 436596322 28031669 698033067 833679004 629002169 668837293 467785338 278757749 467385472 723999122 165127801 555757754 25394289 597557226 478369357 392705865 536938298 56046791 955486156 258997824 554700237 746159057 148247721 891178168 502532382 146744377 266672830 272056365 245490825 401039117 734846505 221330410 241929840 486349833 562584197 761423068 768751056 219712458 622403794 655020159 223841747 214524056 584073455 983231138 304729111 429205072 505140134 198194722 696563042 408218322 644421563 3779997 567291236 225110732 226178685 228268868 497887111 1106814 881853874 717218113 9629523 970168583 506200996 695721269 24558839 986072685 83773751 311334502 300935000 513552125 789923719 433381286 341139482 333374901 512627936 350514309 707021244 37224084 181574082 336648445 712762928 734849183 539115474 832435574 259715169 763619648 434601837 349469145 939899326 247899725 153988182 555924714 376463214 462490824 771954281 43204840 749692305 120185714 235277045 638750227 942290920 143075419 432013093 882219899 206607623 929191355 634247019 932197847 453843457 786550496 669964694 312658508 559306250 801682023 389512945 116976110 765268693 537800385 422788816 13045555 445629416 521742693 171173615 86616367 860961882 97426365 267027194 156118644 286279395 886624768 716299499 481217096 372370925 296702665 945708768 176932387 392200325 276488192 522910802 437725295 65098310 184412627 459910693 180934906 999676945 345353560 270910492 986437481 902375770 908248409 973226585 98333068 737553858 445580183 737141412 153289181 665630512 886449976 995508455 370319919 5586026 973717483 348987241 50814828 343662554 761994575 646093234 612291448 8837749 506141805 772871057 617828656 74835690 429046898 687844299 846900052 907857434 804175774 907741607 787526772 778418399 257976002 309358850 894190219 888628555 782574641 461547968 620022409 806872491 88848579 344635493 504008918 260537162 893424025 710033282 873316636 663335355 934100350 827694713 607676655 988605203 658377720 615117484 493470220 799406940 293976323 779381795 555089455 53816923 358848492 694432232 63320703 369211396 363926268 356520215 380491523 951889904 570452395 543711913 14742639 682139624 464240435 773058095 376594846 955518818 591639038 811005683 358447404 139287390 992469969 117481557 95371418 176179664 427247416 258670251 933557468 915903068 598770772 870106963 702307201 874756995 769085396 937695452 988012864 142786867 525666817 187792844 712519154 655692704 987325588 414194801 6911027 766873904 861888442 376349863 354541797 752764041 341661376 367459791 66663829 447900382 750436967 950441696 577495035 3479769 403904224 832087040 407067439 179784389 702546919 515379890 118286482 804341059 942520411 194150230 729704427 974199264 983926814 930360734 863411428 265832576 918528189 670897954 172048764 656110855 618225196 524300742 223959271 120235409 71241403 784801248 314575077 159291322 333236598 559119924 185243719 964641284 15659676 490532466 939650564 942066353 402890252 952554298 574063645 771089103 229647862 562716742 604827890 605605852 820770768 190957052 687879130 250303742 788702747 517577700 82542060 278749764 695139761 358572777 522278531 854217819 557626582 590272233 622134873 48267066 944746013 383826062 590861830 900880153 822780990 724313612 310735552 671585983 491787736 985945504 660434356 538413145 654180406 108267667 438410812 915836013 812754578 346695456 903963682 171647411 982235719 386778457 126823590 272887565 574931445 404647348 531167830 309130489 407392904 372694275 510059148 861896530 480861284 575162260 735711360 834658738 915424644 630259307 755127084 255160234 469996524 732316309 465701619 571897236 743566149 400092892 469632074 469265524 255817527 256683379 269768498 780384447 906658093 338565376 839942189 437756182 114364595 723438159 639571866 469594539 193641288 657625824 904208491 225513860 983580525 443672718 951748282 583774093 94858532 594331239 649398840 981113899 782958888 512406059 853451564 610230684 341208752 387840252 360903507 259754125 205939442 457340057 71008020 276829224 280668099 241002203 624018650 578393328 211528070 92885669 810232040 959029399 862827685 334073176 846409983 558666035 934120203 512879630 975182905 974519187 529634449 761035666 398298903 606409430 92961673 843288172 499486995 306605041 210491408 705889849 720212532 621701367 809671250 215613443 301352508 607978927 562113663 879374046 389355233 880332144 519510131 667993106 335520366 425179850 240518278 742860597 44170887 918917894 958890881 975753312 190702374 363854133 771894240 743916480 591835662 576061841 235540096 519153831 657899796 894412030 637316028 589002415 149288915 531138949 202699004 422914831 562137298 14036000 145242998 133433974 84395529 565141518 616596605 720499909 396152952 539218288 888473108 260350816 184657888 918720073 635672557 945056351 984465233 643999457 170350466 772478486 11023268 204713823 646216883 75799180 11341689 511682941 877393045 177509499 497587370 537775649 258396771 629313915 106231842 158477442 7466159 488970091 54640675 359959664 825317084 567065262 732163719 784412069 388629643 456177586 689794557 10284836 987260266 868362288 418053710 817553224 330036237 840530256 586815361 78874427 261573369 266524837 120378647 156111752 61827081 473070580 281498675 578560716 539050355 91164609 135336502 398890360 262253447 695347547 965538282 716402051 848808735 696060403 932022192 610455222 233987579 77568253 928021001 569568108 307943504 472007340 324079263 852080245 358085409 303141415 831344188 259894762 416232907 75957807 69428999 89167106 147733539 275480314 520248330 114059670 930609878 49450452 123618567 816138766 955820318 672922707 375361869 474290856 887922992 753138175 244743791 405163478 704765439 946322680 980484869 459788387 139948791 258784277 546249283 165026288 108246993 494143608 481792026 638981016 873349408 931858352 793974698 621022769 775472750 536862111 986328472 399342856 418079731 20765665 933253130 619795441 549928139 965391931 392496439 490669294 732133090 439814294 18806892 440235111 734435318 479738338 363352872 443275299 143178102 212313752 33787204 92044621 746103031 447966144 80686728 632392849 646214518 414913610 636623262 768037200 757691653 417419543 785134417 174167203 701064747 586163169 526477283 944841272 975683079 263932793 223648020 420073257 760008571 560571131 817229049 64831175 173003010 262970634 924818743 160013847 267371432 326056705 270910160 417188484 956678440 381355874 832382536 457768870 120275587 458679777 252569234 654691504 923891190 597844176 49976125 298756396 618979449 242838696 733724550 969920133 998954616 765541365 434790409 242508007 134035119 694714890 619572092 529689900 61315965 798703910 201453310 386449290 476079943 807767208 952118743 868263985 596366603 887739312 98084146 649250806 436442679 707393414 320885180 476958878 357622478 83181030 31306100 922646473 822775550 257727994 383152150 956752074 556673010 833112469 86911987 932164431 489710329 751362926 888935505 896461098 296998807 117080260 825135586 762877712 842819501 721899598 383707894 20505725 293132371 405972822 722362657 704044042 54523084 528828848 97919647 863971840 271011978 108939856 216803538 159422958 517847797 380336695 855478809 983961906 890503284 838114173 310166361 131796337 225707365 347749045 479718045 223532101 298542673 825282901 135475633 217532002 241482786 696302879 585760177 29176052 139651063 841746102 647079719 539760232 981838718 489704330 610431499 80646801 556734815 396172549 763331064 842073224 973598924 89470517 993043029 903778867 41958517 122188804 470540992 797144747 521719996 492419982 694867290 959011626 905923206 298679755 71145886 969072962 685353903 639127067 491914184 22016797 970982858 338030794 138663791 555172866 229924691 458712618 738532982 15565710 856909048 528851170 768170595 113184713 342339445 635461152 756803428 761671230 352128276 945629154 458363969 227889308 705108915 193638199 472413516 923173779 492344776 89240990 999602880 880036136 684201613 2850733 574875828 577521690 346117459 294535866 133957836 882430633 752872156 834969601 104032866 900057795 521905583 351727916 626223934 678781765 734444960 88095662 627125599 664255359 824862399 628913623 857232189 710520556 102007147 593429844 301527828 722291638 313685636 751266230 869651559 386150296 635252589 849649631 638336997 754482601 715771501 203260972 303381434 122405683 517135485 109585852 630895752 697042585 601113717 409491792 555599514 990918120 318321544 3624028 530513362 870335684 998513056 709825631 191916323 285834222 129342561 862252482 370640078 769458405 517524352 320767806 291610329 988413070 208760348 32234716 296729639 51259527 491101584 232689772 915875543 67794763 750594920 832333679 897569674 93307169 4391860 874175755 6145394 684753258 192201956 788783861 422854962 767050337 119660309 429335998 331404106 945795611 608012095 139658952 273843992 934500028 943841621 274331408 441470471 593161208 300945778 101334009 762158470 934706261 76431274 830365644 385554441 454294767 855802887 265511966 334926332 580416524 129008265 402657165 919748936 229239722 560449377 835199543 481720000 559318115 362816436 961616309 556510275 548904335 789301705 261795365 623367015 801406880 158821742 527407156 758722564 462846464 103622341 411651884 871808120 776613436 546315528 539180527 108895857 204703376 310047231 334072098 153014002 183372090 737008042 549340983 814743437 575076184 202916498 885782924 889334795 753396970 269081297 883760707 326311554 431552262 666660755 326802168 941081778 197606153 49587768 336022809 350878060 107572472 125622814 873220194 790944430 17390327 690950138 393355136 785204198 752972207 853589352 951286376 507179689 773425286 128881643 822060371 622113975 614951387 637527987 463941790 702442914 454812016 775010594 407712783 944377532 266556341 701682103 298104091 946877353 21432996 764249984 220064972 680624013 944187064 500326707 700509792 287715882 250312735 741889580 247662944 904176507 463826439 739895116 736256275 57392584 495975314 694135605 724425912 244032655 810778258 47601104 861799397 180967456 151456370 763860320 527824416 129710368 960539122 569035435 708909724 665301424 543526706 527103316 488353676 779677461 299007224 154523492 92236668 150623632 190727999 452670634 904031732 54754440 654566479 629485567 161362566 977475771 20226723 803185807 676186330 32530785 249775397 950067295 590456070 185426106 812678763 118071849 739509833 763497188 789125130 636910101 727318242 918118497 140902458 132496524 71592767 811898571 669007395 207514927 147267427 968466823 20028454 562775213 37743817 64691916 34838091 222193054 27850759 498563115 841017240 86830958 491206902 396441870 393747521 590306949 706285968 558408699 556310138 851634852 453057450 366554253 968591867 276849502 635103272 611969674 152286383 295192742 564048816 82145523 560628536 110405238 192391308 667058867 315583650 787753989 238603260 316448838 149934629 759256848 387157166 970127766 868007289 8285876 810015701 805152193 610855095 379862493 737289443 543959158 750796644 16899274 507419173 622829853 398744555 827604275 834482115 759092371 265003689 332310738 843557797 872601555 493946589 752836567 167286976 861495703 755715064 727138323 544371327 735187595 784466946 780312598 101848194 804374640 560087645 172600290 158351888 283832968 974298594 406093440 756743414 326086829 505150881 854548984 94667097 68351399 306152338 875200258 35299667 430847540 805735847 279034530 678128606 658364246 183090328 344185339 970855631 826988103 575051273 565310398 371196674 901591729 133932183 569288429 887662445 74458010 905475160 189148726 515959611 130221258 606865122 284420896 654933245 428446032 180731323 121232505 902311460 254602295 812832051 317684377 222360410 328658032 580698850 442437140 365302651 74945355 874389708 941233818 855322213 411091927 985849980 568234236 950991512 343276898 496395730 315562060 788088471 841729641 287486925 34961949 752887823 8719017 106079085 46176130 908335265 631757088 796311940 624458084 937253989 307648074 4400807 386482939 660856954 704770177 355931000 536440678 547498380 579178299 86795520 483634049 899415080 834488333 925644920 502317039 979698892 204449004 530616392 707199231 966401944 790411044 985953809 277856764 625943125 127068775 462113430 857607506 772201814 244633805 40363030 299974558 425369265 650373975 740840293 944352673 648613495 973952854 760548859 302726132 243294680 713361901 253959819 327491571 314998346 218538893 442166472 608933973 388512244 129983724 444207624 864578521 55906323 343987014 273125186 650271139 579050797 997158689 539310312 930498131 79312613 440201198 139894001 529257786 47097123 304650858 255167270 896557048 548693225 254753853 980757282 928525886 622368927 938914777 787632695 496986803 161067002 180533326 136998230 688960701 172220035 220121182 7964161 511285170 57145336 366519326 585601867 990032044 946007527 601913752 947858377 368318952 399140035 843227112 370011958 857553387 902353794 460788332 578879409 584265066 175191031 73898048 484065072 888465388 332153644 981139448 322482580 499404854 401191115 918484695 499011365 893646698 379252662 423505921 965288593 656899316 857438421 287595866 119950663 711954332 680562411 657796853 184493027 702218081 747911302 440552911 330742695 16429876 845632926 40736652 763847101 300406669 326722005 388155730 950435144 718301206 860061201 832313533 427301281 363300922 317667738 783857106 628390712 7237158 951284883 485206391 693860989 497207415 254982761 730645570 330841130 508392052 751488879 488225238 752589536 49937631 816889264 154665315 626764280 762532003 371887493 302998434 602938647 41750738 290550583 804301170 13384105 981218522 14262025 804326690 713128880 28197448 333331225 826005285 907144510 416215327 747679233 615991989 147097821 967732920 875669050 47013109 758008494 504899794 583093364 348794642 566617906 690634771 39010819 968921434 372882060 927368321 985826000 779337632 475078007 570820789 346448396 640205202 802278644 178255025 46655177 204277305 428559313 657123060 424950732 714507187 900574051 339239219 399889801 353666716 559625514 277398675 411097939 672484206 844763871 970242934 835077121 996930146 76226283 664134819 788156069 220179238 826971445 264662244 581152165 779550710 234986574 291771265 334680301 915191025 18070561 241974411 568036073 389572473 730305076 289247981 182808034 924731501 229153424 441104516 825821159 605101500 129963497 851773953 642318433 309440943 272333842 740728736 225919457 519958597 628388972 285831217 850440803 741546007 839440761 188616449 634803281 465035028 447735946 657275889 311499672 963718922 122435201 723088695 476139155 52353602 320346304 932700289 856193692 310600821 990243912 375884950 769008256 781666343 214872730 685029042 16441702 193428701 467454572 906903454 457039850 473867203 711963895 149547697 693618392 380612219 898954504 741623442 341927890 176618129 826895737 618073059 805475629 437404028 810538211 649959472 655376992 707322758 318936362 694635446 764239069 118264810 571177969 979612783 846110709 630721702 410153239 412306816 575229882 42184662 260968712 564400026 937241688 767891383 781080794 857358296 936739517 975790185 494214888 288244895 952088818 234007671 596790988 143679498 421746082 328152358 776157236 63680056 342168361 658625628 786560724 916071714 392518229 910971062 999407563 890787447 38402629 154029916 705505222 71369948 511428814 768513262 574748825 133129504 583716501 938454232 310578023 965038417 196833055 800907796 636707554 521279434 433908442 617165609 394123893 117051662 177957129 606475394 320902605 105042645 410763615 89708556 777503003 209516733 762025319 58356702 641515948 97535251 898969389 877038368 506678883 909760006 508047956 10966305 754377845 837236750 136166600 559649845 863746156 959299720 492709817 317673158 163251309 590412116 647342059 372941789 32424775 48195755 989748804 361848454 175481871 132887647 24898933 428485537 213903178 784775811 650451279 277069338 815605018 974813680 731811052 726180973 418000048 934836468 858691420 876070177 61473230 449096823 434156468 112183248 180035303 969749760 719307665 583711490 152140862 791638883 44976362 646680386 543711631 932800451 990548348 692971620 205509257 836870805 612038783 558256451 330106327 281609229 100816609 511155979 289003559 300489610 537578460 949994211 226560135 583668167 35869604 656850292 673156166 425236017 200816619 666639496 193358328 655609099 201854273 836017558 752659265 790599785 742953479 176842265 55754980 40872916 644321908 264822705 262536588 342788622 862764109 241424753 571453553 373821989 286171806 833945818 914020859 138099888 361940448 925842602 308186391 351767970 723658604 745537757 458451259 354566681 926820282 750521492 190106032 54289085 769845525 493600190 94714198 827541560 438130528 304857157 965472624 714611260 435224598 150586152 177992926 541494613 824987325 764071438 547583585 537048145 80379438 713608113 751374864 225640038 215930886 784324348 479480370 568620723 968412295 943221893 312061709 225359998 859631944 872450611 413838178 793499260 23010361 100552300 775856965 559591790 123368627 348559553 680645290 900262190 481252712 628542497 725942260 498490737 913206714 180937931 134245284 359281387 231511613 95800498 345779375 672333444 421221633 19343367 339563349 595160256 424135209 388781397 118432822 310145311 398937772 636886371 981276761 798846619 962247067 110898908 702052978 485270134 339052626 744885915 705329861 867319784 751826228 715089489 652311907 993332449 533034398 224150076 904448937 491859966 308901109 211855893 654491186 264821371 955720841 989997427 60790297 39479904 55350068 792144299 978478926 878244036 20433527 11756860 365016021 734201039 455803558 526084120 258295121 297122802 569865020 116181071 495173264 89332800 811440536 219680980 73315196 406176806 209490883 438854770 608845924 967848305 112937939 609316621 481372431 474526350 144078329 128853893 772348401 363577723 332893490 98366886 608314704 473106482 200195975 784948843 467595497 739742986 774652072 100730934 967291391 552387761 696266057 319583877 608739258 52608868 998556130 609169443 764239260 163571585 709106173 757553764 840500929 350017354 452468721 581377632 769293679 806190740 609117749 28648769 832939617 134959558 613398209 391992433 883849800 633159017 308158973 325526715 311498428 491588338 649238030 404773615 743758973 47177943 744744974 402261580 218234348 312807926 509503485 892883823 423414671 179638085 582398366 53850640 173525259 629153066 664873924 147647981 613040978 412030314 221240980 713784464 812835825 75096572 754444075 563818997 118264144 398750259 447114910 413732506 728548828 982269282 500792514 497731284 319055851 759573731 39371248 544856747 718081294 291381014 455404336 843945718 32649753 534039631 884367814 465015587 263824374 518476740 271666589 152787274 807612438 476915059 107498705 130138530 351197982 2297085 253539004 245622621 832345080 570216267 176347265 717883920 956606522 756367340 134950444 431871554 109890653 294377642 718391347 157004867 487548524 770158528 113116709 901194458 50909082 398584226 198421819 814290782 164753101 96723193 621777430 385213796 964876908 690621503 599745353 627845361 97332222 368925254 192151095 573767127 761781752 654007408 340010977 953315094 258796277 903625240 691591717 676949906 585094858 642814881 373013085 821598570 697901532 508641068 192698974 364956111 860495984 561673157 851955343 718363306 835803743 710633114 678461325 272877770 834057619 619347760 652733215 486724997 870949713 233695315 469374494 212902133 779606725 630504771 469386043 517077525 734118830 537064315 889079994 505225375 721442416 977929596 856996831 646942877 263060578 701730796 64032367 156722510 739326101 984121353 618763404 353727735 220738078 605018866 476936124 123442204 763203028 227847798 279319071 769289261 543894889 79770802 465253349 259062676 415856013 96671606 112712156 726440039 598709712 865171114 788124313 543269377 310324275 155802040 188491382 720374229 794384203 786684851 449944121 655481266 71911015 954129798 392509483 921532112 94873052 372642445 997822012 452463872 208542091 624986004 911714285 455782475 202619913 577484817 499360756 357470757 30811448 725117398 699451453 151790236 528808583 261331418 9540666 43255533 757992601 932443542 249334225 843660831 789881683 127160467 82611705 833222533 764449042 481118320 747411816 255406215 735854380 931556026 296139161 837814558 114130324 78850048 719595067 753090896 456739312 844963065 215933801 476693360 620848147 694284854 351010509 557659607 331159877 76060837 237925213 235578412 31789819 696403381 808497549 558040710 444895425 105730898 790378161 70205449 479212025 908491712 510447761 138650613 189088344 360694459 358561236 168605514 617646482 365364813 940686491 96561481 677714633 604662401 824301690 100721735 619671310 300858085 3991261 681350665 566353565 270054084 346973215 9210300 334063653 94721662 489597866 142192277 836941039 888962822 328184470 83343829 807865281 786560812 991949893 577950048 666223651 549462636 284018804 140419057 369544301 300990795 592650165 643538111 289545954 974735135 196228630 205498651 712760003 113368050 619637682 984715505 399989777 878210309 191836302 496925458 59273140 778008944 807868445 35514713 457676968 770455392 878952425 986142196 741351810 35501776 229062165 621545233 337857154 229832216 301320751 857139424 517347639 916053031 805793913 63314871 888908608 966111863 570898071 80242276 175619299 502279101 792181661 419862955 922546456 683173384 114389699 461718510 75926254 129128965 939342629 651080249 532136306 737826285 483725006 714291600 665657639 351914958 978595214 978731779 86692009 705703328 36024991 901210123 462270184 962355107 525966724 907960473 737897166 52243046 814752586 820510749 436064265 823263 510401263 353655509 413426646 666447597 8515388 259282985 674126248 76508327 702845796 480833851 34518251 293338766 104658384 976803512 364390082 300719322 637932501 882173822 477489891 590461420 940171939 608526402 385714016 660325913 193180464 240498454 151695224 526481865 651488008 846068314 300074311 228642921 470605271 629643397 52503012 744734607 207550048 587383201 565805086 581800762 911087946 840029414 553304918 26183748 388480170 486582375 276206750 464742536 709803089 236750974 444213497 698980600 400954333 58552791 195276825 90905957 70072750 581804624 24945657 113674063 307434155 645837604 294081754 98439511 434255075 405248455 717284033 360220987 576889244 847671920 124387257 987117004 908658546 285944299 951271974 380200312 852642336 216226269 373427314 765343876 746068490 809039175 73677229 967598134 334695600 114049783 409227195 865272658 871292994 788126519 408382974 688003969 810792424 409434970 295981865 642792597 310003133 623615869 892668391 254312557 905780197 982559774 474226417 146753852 668559683 157709106 918082788 764339071 689599947 410829260 131988536 180804667 982408154 14153247 782103920 618074264 700757858 81309146 83314626 803667338 610782633 105790600 70760431 293951669 897145131 23452020 621705509 776357460 909916983 70341683 509816630 641980720 350407994 771133289 159454672 121565546 681619021 148575899 672603352 907355759 97598330 413871670 564843696 661823593 944781271 564270049 18974107 373694148 169695791 862588048 561278795 767583524 869178477 84600487 786981116 224817841 338847805 67503848 142801830 938599008 272700179 998027931 477538856 298336570 587671752 376737652 768946661 425409746 127767063 279088499 758492186 820879533 129632490 616786604 584834424 499096490 859743943 936529881 818940851 240035406 880312516 949585186 103389331 6496097 211515881 295713915 951880581 553379232 325660764 741788395 749695332 817774813 906668967 744419731 453408898 269460537 617008216 715353638 907967356 782005936 573568611 295463905 659200814 605274515 357591323 538588980 141992521 429660793 398367556 144208359 418168210 301027847 156225197 376384064 658487911 89407061 149548198 934787629 968591898 599600291 68549374 882260607 19631923 121622396 88815520 162736228 120814505 607437415 705535581 94778912 419827305 209141534 446390846 103552339 887774920 87570038 216775079 608605916 520137623 978619719 714358544 454198177 757352020 81331558 407084467 640279126 376723795 968332446 407682520 348843497 18946452 996025663 646235456 196339053 282206401 871641343 522511288 7749192 860978754 327098054 540162509 915663205 116364158 803344474 728947673 799952255 604165565 879058951 357964659 45320750 503234219 657558350 743521155 691248095 771630283 735106131 308101711 613137158 122993991 516055254 201706593 683148713 914291096 636535296 776983666 188373390 50187116 411395802 603435469 611150514 44354828 226743062 119245361 990817874 606537255 701201500 168497487 895934362 686503034 823663073 476015748 201770737 314080009 550180229 96687215 396931442 83438193 214556222 729381320 756683713 661421085 622914109 882194124 694666326 529694300 201445769 631501297 851951171 712251042 668165809 70007191 274099074 27950899 888523352 220034323 960717305 432857075 69477506 31695135 230654002 134848006 680732205 136259983 992503111 131148964 431919001 812570382 966641663 25264547 532825969 280368880 185401365 680131114 336252729 639082598 231459796 584739273 178997388 105984231 191641583 477653433 332362107 974436453 306097037 70333803 844211544 988490647 4861867 178643560 597989983 811217682 543463187 805307946 948999612 797376932 844226782 883661230 730717862 424555844 529399068 37551729 826353411 666510052 427247087 329963980 710779756 793428872 901226721 613754724 824642352 68290717 217997539 270962537 496469181 606707078 435922228 961869377 566475236 493444545 790143662 240184529 511584582 594535458 530381887 665899502 9278771 459096009 568925166 83762714 688591198 394358418 195575029 399583482 6571682 282208762 692846492 521693916 966582340 400675419 878514209 428916183 726231729 470985020 660276435 628750658 113070522 485478301 521233818 186302883 103046498 86208190 380480461 377122016 308095349 210840704 93279518 659194052 931062776 221253457 129318953 567787785 146933076 664324022 264386739 371401988 697747163 87416011 696095642 114860810 52952672 265005806 872495218 789152314 299490257 434743736 633949347 91788690 381279568 911886897 777754712 377401707 144883916 504698641 75298269 913060670 995174622 595381017 367401622 466785432 759885942 717194741 91226846 318418351 261985665 493395474 726365806 257078284 375273176 390087480 299773190 233622581 745141460 200175434 922728722 118728405 261736790 863773181 449381171 962201092 552196437 45098625 5117606 840626986 790171723 437391303 572225565 534959616 397067608 863016841 870493044 596586043 435396784 601747945 262192889 152493488 646058431 406849236 364307512 997783178 261296664 606448639 191609443 682944079 499776646 99794283 33603398 103676865 851391461 557049747 761601197 123243356 313277919 128890091 152993988 65520380 949013154 232848317 264611438 27596195 825881106 713036159 257647655 340747802 166287368 616476415 550354144 766512176 954345472 699856490 899233969 169645165 470379055 292317755 440345372 690971555 409184654 855494559 969066767 604324589 910374555 762259795 85169839 613833165 36520456 580893138 126320377 993554382 982391632 592346998 657255157 132332798 489154089 12175583 607003561 929481710 958623780 65300019 819985748 802248829 537952219 934423495 790747174 340607462 26602771 817982318 501831215 27370932 85586085 765530559 383306501 352210827 33159572 100759287 833713431 380477345 630009595 797751472 531668872 505345026 776269012 711642450 860580203 702652588 907024486 49382944 705713077 875486576 769505449 825243922 533306122 878185592 45271886 283340352 980719739 209451290 53476385 843007970 659255948 267263902 444393660 143305180 289873840 918715328 840980317 826455317 454888611 661378562 327320578 555271115 356276675 448589238 45436842 629162751 85167138 436386117 340482974 629077785 984017560 85802686 300297514 772547471 522078774 762992430 178037674 930907846 211728129 661320910 465344581 272370404 674936333 428616612 328125977 262922374 710154399 958224056 625893067 524747382 762453541 60446218 87180206 841036153 65372635 307054111 591970832 413071033 7117466 876276436 971528882 542477255 642560618 70335840 127636287 101288334 212658079 754963622 343702701 161678809 362553958 828781686 278231506 970128363 146520015 483990795 502862695 383341568 247534265 226036791 867160144 582990699 747027828 251734530 477317408 470346776 469956522 52398485 208856949 329950478 895896709 227151236 414107592 669463952 497619024 966111620 642748044 756021891 590985348 183366073 773461081 317332611 809258751 500263331 84953611 288445064 33541239 530544538 602228375 628075629 320269677 629546714 999017252 284652600 768797620 382442051 226733270 264128240 628830695 564628572 670206096 152443713 813074076 769789490 386783609 903731354 921667396 253152765 900142982 845455750 730369201 140078725 993435085 307330167 64907699 152947957 728031782 39890684 268717872 429688767 92904296 17240181 514263251 278171236 816851363 431891921 705729156 398473149 184786356 917000720 316438993 661176858 999830136 130518275 848220944 837967505 558008671 948875354 113123483 341835941 676243809 634289434 621137269 174656315 660524044 14929841 442220934 289526189 268034797 574009700 758828757 193898340 692447414 721316760 887776516 964164890 368905304 540617879 115442229 109194960 727659154 216312047 395672783 134538218 472121316 512605544 622459535 358114079 616443651 303891402 637557227 579709683 243828828 480436369 424078075 779864722 651561937 483762528 722890681 788507136 534722788 19415608 276111569 749835209 574376570 661993429 39577807 574427526 677484900 792876073 733250426 749786720 497393911 846335240 900397857 373991375 275450846 23922857 649046027 603180949 277110341 978805442 526819045 992477136 809192329 327994882 719840760 152478676 780280851 298785592 635306797 509741242 387080172 779583224 44751213 35235929 887164261 921717496 678634601 166048122 10592861 964421684 564993581 142320041 928801905 501736911 43837161 694729699 520092355 705253259 660698698 921253904 229596763 191006278 693465207 284020496 242514573 483793067 776895828 100126778 867944793 428352993 358468258 379129386 283718927 839413478 848667337 185186823 273909677 937641049 414321315 254243569 568546819 192213633 507013393 546109733 702777407 485194140 945406098 250661695 527516570 181895303 833906812 714805941 817666612 201881751 456522514 290694223 171734172 123834546 353421086 315046679 538658968 506465054 612817805 452815906 319251640 684008987 846563909 561829618 603061485 767104212 131934725 678227954 989523702 211665404 119956236 195365466 549105536 248048013 100693454 12483346 70397660 853605635 590447810 148242041 64969201 308176207 159114024 930683366 992846728 154912307 447692183 378671818 596681572 490087222 770767683 189957219 343653119 598807033 385427140 774596629 524996972 952665842 774803623 190226426 376480879 948935917 699181888 651055904 118310133 182673385 997702048 26994938 339550754 180859182 600657680 187283873 454773968 539270602 375618465 861750681 482378577 752352715 894336424 456945963 919821449 637702258 521790124 255288511 183756655 215573326 289549897 799657622 323683181 752827372 169076220 642180750 296710152 967684979 274819240 775635692 671564139 67917538 887985472 600323362 889634498 181919222 303923534 107133690 670754587 466602368 895421138 750925865 641481666 475320683 482141442 886188687 32513135 854005542 676444550 555811566 145927766 73972854 577862606 957238189 832105181 431366062 400017745 788978766 425186873 827110959 741752841 493559421 409895563 944520493 840837672 814152208 702391460 817062122 594238324 612906196 490811683 926069140 716587493 234837974 888142154 402563445 70379845 207367349 254896168 60593245 724418697 208726151 329946146 456718690 248022433 165004963 128009650 383417901 240642625 507188315 317916758 570470144 678664625 123206415 987135518 98121103 362072574 823782537 323957671 140483002 241238642 773492689 983006640 500918512 668283224 533725195 513520417 897124049 631368281 978336050 968648346 883237971 858486175 897637074 991168345 387274624 512487679 231316324 379576654 955693332 571433255 298726368 781517382 378103587 270896592 515270895 687685416 690891746 344944409 811819496 623425019 440076620 340080607 311945097 314537609 203750091 450097231 708151070 52793292 823506582 19205391 903655745 710354846 63165557 74043929 431350392 394425820 449852667 726227122 306733651 987415353 1809749 504379121 774206644 594145229 165024902 431110859 17138905 570238119 905974005 866819021 290094457 204935743 76959034 847178890 148290586 463979979 273708394 442224431 902578708 905709969 345162608 693459120 206564704 273008883 167725595 318946751 422613196 294106268 540678602 16031606 212456543 241902798 726494056 146233187 615139089 180048016 752653864 857945810 96318999 650748414 355836822 647341029 147747477 462326653 493485143 852467389 455426379 799009450 464315567 592033878 731245544 306516938 660367874 545916986 28602419 995758393 228261801 134264295 935062988 91688997 705676264 334748798 678899489 530344300 952202529 607998383 494144958 938175136 97263779 126762071 277696256 433452527 147020581 760974911 675454077 778626128 54162137 679960014 157754818 494861067 802232659 908756778 347001888 960336704 173023468 790424819 552091746 226724425 935984574 651360623 383855232 103571815 246594637 958178535 288341391 873195905 916572274 855700709 969683774 348664900 199626148 379849498 243344517 2912259 695856862 401310326 101163406 862388796 746679850 948326613 997284294 505440831 631745057 405586886 428258389 790869145 760052228 995364384 810588271 217186984 8545952 631497245 331835055 638098416 264144946 98287489 407552058 808379983 495727513 367592388 21737189 900747421 791100118 773079177 673243212 329770072 601750874 379954503 60885599 113426254 136404966 729914899 723795607 595460976 217855766 841978618 589266698 533939421 532023820 842393926 487031499 904147444 370604759 727893507 273141337 474362973 751959469 644882866 539038366 276679546 395100807 190034286 19304476 968853855 24343955 783184484 83590225 348277544 476590048 202243264 98995706 313186704 917141052 614203159 918541727 936764343 103303559 208823868 174388704 22020052 858016822 57615062 719254671 289274083 763975355 112251197 601878006 128598075 729885895 67298254 437241401 500788838 524954738 883796498 540647262 155954591 882290000 837308210 963772146 747845456 661690090 820776273 376273691 764749221 214605098 746825919 982654859 460607396 487005237 899993784 874313584 156200107 748255640 809682734 820976562 367825263 954177412 939135575 856954031 597350579 419391165 286453966 739871845 347176498 304202309 910363196 912848768 228316226 656237573 359547525 54815249 562058514 425837894 403407790 35546990 109385103 470827327 32322542 926608208 493970720 661446287 561887269 788217617 198820582 333054787 578522332 11875072 89993784 431788042 330702294 955394678 585100160 39384828 143395861 643024967 348407082 823269126 355973245 865215515 438211177 681291501 935892571 852501605 523360873 979629868 442400101 527044842 781229956 992198298 292944605 531557445 804453352 28405125 913155844 523841105 23260884 273673360 952538116 670457105 304842594 103776312 387778541 738743569 686039756 829055016 533862317 983365736 999770619 525204225 298774945 315066806 10012043 140154668 634353687 530612607 376226703 563712470 888201931 158324040 788202874 513167376 633513247 138432357 77911936 428494274 72908783 121625205 956708875 926851828 87569988 596428380 174298176 777518337 791607360 70977641 913559065 829915291 493244849 863501200 137148944 12668457 317065845 628483678 869553100 850713038 503866941 712383983 547432821 664156590 967235689 286987138 826972888 620165123 525549143 17131697 977352176 761683868 995142630 212504720 284058551 44754031 969375388 870047530 989413894 922734639 718878481 4227125 744198218 725002295 680734491 663592213 884153118 671470596 777303180 749435653 267949042 768263658 443733921 863068069 985129295 755204900 793781240 48460048 21114936 463793542 739549671 319087004 746038911 341964199 474656673 609818424 34376363 985307840 464668548 31990687 949598751 107601875 808314983 484843079 418395250 847592483 819648502 260301964 446455789 86488212 768821083 658437114 952910320 327850315 904365030 4186941 898724717 444836422 850927591 977588497 570256900 33895373 472247460 263350441 515091721 635993810 827706219 794442803 265820980 659583050 793998382 371124867 640503254 141789843 672174779 29607559 884743478 595930911 5470995 159783986 31542873 8172188 438744428 966475854 807262193 268844439 400703794 809828300 136199507 467621968 456958492 8046519 747920716 380362739 876041550 563356801 995725543 589288372 84771600 597990755 696531047 202009755 616990234 935233335 723629130 927347914 741874814 352773350 260475864 756377974 742734100 190855766 974341152 761650898 632214362 994948789 702894757 159789245 554858094 736478947 901188215 691609726 140981276 817787824 586326298 442301837 746476362 713400394 780392302 575199062 571411201 751376228 112365506 834845959 360252396 197888559 795063322 509743628 94226920 524467379 123216801 645040910 687009980 816213514 592079012 199333220 928537042 439116413 533448879 689005185 816864344 440362598 540189728 394623106 218361580 327003527 155755267 205080560 698623765 275263176 508553774 533769942 8295020 704425319 874617756 925070336 566057201 924971597 106745001 600202802 380458567 437834239 165653607 87735121 714557113 410963486 124412257 121105721 369892114 240204961 119389592 520961550 816960122 868273165 715001458 899306774 664901309 807163006 160340957 8350705 98737739 846229605 312805813 796616047 605973576 916626249 420500263 84463447 281576055 391199855 225717905 709173675 544826207 960596939 818834732 688575373 624032779 991631975 73191617 322856791 461292946 987354860 301460792 192036845 352060514 623350491 470065008 59073160 704886252 82283408 868807560 67098132 864256699 854087021 451819016 185117374 954581899 204098673 805247560 113181097 613335626 951447316 463206339 285665858 956998632 975154868 912175127 232594004 120847531 554161951 55592967 362036084 595905012 219273443 731576175 39222058 650390558 346431445 70812731 788009701 384452645 885034101 979509646 310473749 574476885 569906262 805677756 839925312 745928731 749042808 54027605 471612763 949228044 362610315 704882988 575997387 198570656 457107109 598244936 940492233 654848325 720068504 445808986 104451392 931595511 891736677 919659420 815201708 245015672 130063809 489460881 902720945 128951625 65160346 552051225 267095 866001760 147702942 42852355 388568422 198733464 732560845 164717365 636157864 973396105 325911000 673637984 167855070 162768214 105573051 935181226 709632919 10691988 220402598 565858889 952461285 307003628 579599974 879190520 622567460 106027938 780422053 528299410 735587136 685534744 655819769 792496818 100528090 704354744 145351272 14399462 238644781 637762370 978875244 12100591 960641364 661030386 880444160 132630348 841937609 637841527 425437687 576689404 688219031 647454134 54198159 304265354 416377139 181841580 44498403 508770329 430111833 262439005 209300975 524810080 549250248 282100675 157463970 584339653 448516039 934972213 597468145 10931393 248425455 86888462 134274039 13951627 985794126 821603090 66303978 806089611 606552615 265211261 631064125 556324659 857471833 871856221 47751647 567915511 755466952 244561887 827177789 546695761 465062208 847072586 459588267 557972358 169730415 89997136 662623821 870745530 905818603 456699040 889412734 794135096 190452691 292210745 924712943 227624854 354836276 33465860 146562991 718184865 772514370 102272109 755577659 184616797 317868905 726895643 928590298 177423873 587642892 801937794 812023139 110729429 750134689 479058172 617342443 817785998 5391858 890698788 582233715 481159933 510106177 849177503 439448199 699894695 806603944 549184222 325452809 951433319 266412953 706179005 92933354 25322105 851635804 767761230 498035562 123474354 797635083 235529230 385552870 128915824 979376312 534895473 873248112 733097980 148699178 928402969 488931096 878670118 664985470 175916739 131193213 566040421 706127268 674540713 802913330 321500354 376272022 28693529 566293827 308031932 737160733 217152285 869051704 106317845 958228246 355927921 177163960 558075950 569692934 159588202 651814225 169138604 651676827 131216816 117148716 592968477 385963235 620425856 103234717 964670138 948161969 892849315 43263382 426059485 345181642 191265939 536274177 857729950 854856150 804809639 311241380 35777871 374246874 842953868 92656216 541230183 167102821 47147809 978395888 663542482 960305430 130953743 550138648 935049348 38550455 748637916 41872275 305219458 43698848 495057583 879259187 933622503 884261942 902337300 585217020 976384084 462474156 536278617 356459726 716348690 860698346 245455861 9183340 321020810 672686233 19144084 373733485 473198950 188388895 745694304 347171510 773459902 302612695 212824652 395784667 249506965 661706341 386198177 653163101 853486983 329834625 402360263 972765731 205445002 483882716 795823602 437693644 496192431 340348321 954527465 106854357 518713218 796922266 74588721 339109190 544850741 295245096 233064587 305203536 555361968 776554352 149762399 523454838 534092682 189022304 234354346 179736410 710703586 35304274 217741888 249043981 808326619 117800340 960221694 329850238 11963366 519087753 492554286 433049205 65460045 206049980 191705794 416894711 950039961 146516812 801165993 150152115 745538326 250535488 182175580 424650969 242127698 107188812 933406842 645997189 379353708 787536271 815942483 830436797 672737415 415799186 414380176 651892672 824759226 752784617 399582160 554410042 907457561 4277950 347603354 727559689 435638317 994885873 371967544 652510301 419773888 90504911 392911969 92904975 694046773 828493939 817875245 821952344 784384332 320323351 753003445 761817491 102724334 975229257 854199445 789352447 314400497 898332793 452947759 421025669 741378068 388391241 701802874 768799838 583948084 513482157 780944648 801436417 660590236 333254183 96866132 345894312 228169607 437553999 471665564 148365719 533769321 487385259 205183562 361849268 865849774 169250076 364612719 14715383 815008673 109219475 590294134 631047391 416090120 599672505 797371369 597595155 989761858 429521360 808563990 134669363 526781948 441942907 348683975 342600746 910332687 279573743 867809823 196638320 775384860 33737098 614571539 878344678 54316650 572571721 27433061 25339491 128698116 923985011 115971964 791206227 231042034 117832330 741113133 781941976 970524989 226190121 667656067 291629851 212298439 690117794 812565861 387268313 143392916 260562750 313406508 775748534 202334049 439113563 147104043 820155942 327496720 759068282 659022273 638401020 519507898 822545933 246141075 890941981 741539017 766150522 392511297 734942656 738391483 452652246 778026261 205600160 361396402 57817267 491589836 166572984 293465317 280593450 163276012 93089399 252390431 547092242 274907451 925049227 186866961 227469209 834563168 360085137 996514363 865424749 132482710 175464771 294244554 713959241 524301921 298122768 338475670 948629154 869026591 221514215 671769405 487972157 761697209 16125444 329413845 806981656 747287964 546943895 669259186 34869217 61717786 525825244 318218482 921313712 518277713 330007446 575848870 678326486 180437513 342753732 2611936 632013909 956745072 450546487 249069899 925314936 404592944 108901372 493703863 971854426 668407297 92059292 55481901 653228962 267574731 937150799 913813177 688177994 59776343 737999796 809145320 958925964 66324677 861987172 358174948 31055994 789966301 953614750 604295048 693324882 814816770 761990255 952506815 76771828 111785589 931869701 539812841 651165290 656811116 30825692 857989421 29082148 34739044 923371234 281896930 977985383 284183111 417589673 808529033 168393863 499788128 336036714 32655278 652023119 106426082 328220101 358270664 129338021 851921104 211211844 922821004 109685593 508097778 40106569 655056255 909938116 626109804 49921655 896328445 773949181 870650102 338516964 145157037 356828409 751597597 83392604 434607371 969302987 763488612 400855980 841392815 844956366 577986228 606779608 890106147 603159566 940254488 928924002 840159179 527900076 70564786 727118919 160043545 48108198 677446774 559420645 543001732 906990941 448787153 798970732 405094413 904239044 143505070 771590422 349850002 323454514 415186938 72637470 11891880 313876784 648081066 730651151 95460239 805300472 650644720 244978122 964333431 513431075 402041728 773574051 538079425 322595500 6680821 314522900 835410006 950423029 732482015 432190726 997932148 893166454 159329046 566887457 982967496 70526075 591843892 347625980 81652490 628468438 164019362 693304174 817671218 775314815 163304526 976320131 466505063 164582917 795350458 200531262 715226748 288807269 932160704 35259542 933536645 341596823 548709226 96160655 474708852 350472878 336768958 231338618 491380149 890010525 674763517 652105930 267444697 614040418 745142704 870801412 878669931 683578843 4696694 151074845 914052522 407049705 559007093 330205069 400422665 294353293 192575247 585152531 109330286 691799838 33866788 519486074 124715463 920334868 523307635 478144459 125440448 964810602 291056602 764442876 393153087 467584572 925381874 162083526 663649096 348714228 743870014 417273599 418644014 540174069 675251803 403811251 682191111 251973816 743255229 521603939 790415658 971477234 768323786 626377425 333801009 657172584 846035943 567793589 334511575 652063000 224333243 378514697 309423910 801418612 9757155 681374761 839683897 98172583 880656876 45252253 453592809 192879724 514292220 209113137 340232915 940298543 965877061 49431702 384533353 731393228 681531059 395546318 14659071 574544209 245028465 666695334 569531316 344554291 595634092 60842120 191686650 290482831 150439497 187214314 229252712 666849007 699854076 478582813 352650710 276374134 278719008 947890954 880533106 667115515 231554160 77203139 35285408 778904388 901801814 669450753 316178306 927121739 326904530 539921630 865265175 944001106 29578231 281558409 178273474 857626477 446501542 727347456 661126261 296646195 289001530 767132911 956810361 473002958 208087592 982498100 106061550 410390215 488825458 573556498 926799828 303524529 390055415 579436995 49149100 117425022 944703463 161394608 112257551 86699120 607964121 581691297 686536131 297876702 599850753 517251313 146734523 133846432 734898763 117571904 103100692 180548891 919686154 889090189 997697396 189205161 766032059 458600407 528484671 945487697 480777866 537301992 430788935 536641952 415546121 69779236 347249424 64484784 830951579 246888073 64681617 156546258 703221884 340127291 957951233 632028000 635370123 552658871 486461623 290585710 108016377 69437763 597286556 436676102 419756940 517862122 359117054 44103668 293076848 495298028 620253603 156308472 571233547 48627865 442843981 686901547 895949178 835751693 921309765 175751423 902637806 919588707 44681029 780474212 930586386 879547200 839441241 460420871 685254374 359237538 875309956 628676491 5327453 144051762 532760033 54566709 371678002 590864615 664148224 807810015 567660342 914013142 665421726 159129137 399926878 160576932 303684570 875725821 33576280 240870430 941375924 984399197 755693525 71246235 722159439 816949711 155731458 237093330 754792602 878391682 370398998 836709101 505689331 860485078 765897751 40038975 399579970 621099437 596272146 280054594 952452382 94713715 298863098 115202046 973954872 944302625 296586781 486772853 599112937 576721561 21641704 91112814 439473118 117205774 848734208 804753689 700016761 96079259 891485339 616989214 972538527 426852325 371195103 483989861 441262695 771719126 60946447 950998238 524060337 241443272 272530580 233802901 269967575 465401979 754442087 626343008 630481825 216650644 816342956 146517604 673692451 745160128 703046252 526302808 75958121 444981393 344269948 243503699 877643136 962155439 68643968 984431717 282676978 88193742 608428732 306518975 409888390 851317298 425850814 268026016 202903035 544746407 675278320 705565265 201463323 807932339 511902367 589218087 562066515 810659817 99904791 870116277 336299633 14946547 516198842 913410069 745665231 125023791 691488523 163467806 183111756 289093274 904449975 471557618 146096196 524613249 563479942 84282567 164163939 468941791 534036636 927997045 180998975 219197928 444652890 751981001 42409381 188306234 225291292 322004599 835201445 286466297 20681640 836119313 928812652 390951203 637424543 23727742 2147122 865583378 135478842 33721760 397520767 560921642 177807993 865767160 258703064 442661128 152033219 642476350 206699579 552832303 192560797 638109013 722470844 443510797 766153761 285291056 827616223 90402347 949665077 841898746 681740940 754815460 893192041 570281762 468880274 446439819 971321661 433133755 682641036 870854152 486377929 810632354 938308578 19568538 48106656 507735043 743622225 322237814 894318033 968400147 675794297 126338822 514755014 518753521 199805150 440658349 315662316 629673309 71237410 769141477 650976342 383522141 668430697 455352043 505308815 99971014 670893790 441401892 435007972 411671240 364536422 28376310 19186706 523152912 527725340 101074361 813418383 392851205 558992072 554406086 114165376 507869997 792858631 546010971 147783084 809935547 26955745 524262205 757511342 896655481 730259513 39077083 291363538 661035712 812163538 394126073 26535639 558514806 346702413 166671506 388588465 663328591 305518125 9777820 979598115 179393839 225434036 391887991 646862611 560031236 859965909 363182403 686147659 398709003 520493822 827316857 795607100 541169742 728098606 906982263 173636613 221473620 838281195 662818892 572980920 480462517 348544763 455530846 198901321 354738659 869148862 952394114 927924800 661639468 895935692 54123970 139019679 356104185 833266637 340940557 230112287 225021639 683886286 305708358 61941002 594943800 63042173 988613049 276462727 14451156 298828605 427886818 774221852 557765316 875772078 502230541 676477845 472289865 400173135 344814169 637091354 991286610 386250885 612238645 870420437 660897189 140136922 249165202 104582614 830486385 769459277 641923381 590535483 655293859 330457040 595128170 610741305 584681543 614085556 515691071 301426153 977875262 832485884 106762329 267226076 406576879 979841271 48375184 417031186 998224759 252440504 793790250 430515079 675340033 399332961 998023792 667708827 116084286 833066425 241044041 70779075 545519114 631629694 631738824 4624329 79285649 523000633 953933162 819177117 177685756 677944973 713795817 263532631 693031348 998415974 555620395 29734999 732773285 27144840 654891995 727530424 16415336 536035361 619555003 153039930 306738196 694174198 576989210 132588810 865721412 36788997 829281903 319485605 803914437 336523283 714783228 370217714 154790799 331363473 939793012 235521349 996336060 869028349 128051161 946741160 298696594 206887162 525007773 46433158 79432730 751660946 698981004 969609015 697120937 871746291 781377915 363156597 316964478 919486294 231958001 954812614 502238285 392467746 998254898 621628673 856927503 785462821 64691655 435433495 408847981 432463234 493977404 637753743 915713043 672726335 849972487 713055466 543784815 61522009 54374693 23655279 141583344 514299289 675132290 818840457 115887958 395862539 198531770 515398253 847613387 274569355 431002536 604409993 378904180 469062542 998403564 473916810 750598901 799629200 422708376 36561163 534059606 503920504 569158862 478916154 424334293 321304596 504488822 180241225 184617101 469479884 800536495 674125332 903326338 219292544 614654670 353836978 256549280 289583554 881800230 150815428 260649941 599033926 131919157 211792885 739671930 293628637 740390026 460912839 582268928 744219173 599975719 851358151 577728048 561065791 738327547 740212077 692015653 468955111 227209861 123753786 471336322 158517740 373238233 162971580 812338876 954122368 802542318 247712335 927455909 213126276 986028651 126310298 790719797 317242525 707544148 315882496 776216629 147675025 772469327 474206106 703231904 892692416 650554901 358353375 952617698 876249292 882321500 422509485 638930210 940900983 260345453 204575431 470357557 755546883 48516621 414256447 84267834 478994279 893879776 812631645 883626843 814044765 153658313 524189302 179107936 406216189 700803667 58514284 850130437 448570690 574075570 300611781 655630703 594355316 979451730 924072700 430321172 704903843 771757820 630395267 484845174 347444666 899304418 704678281 424970096 223762281 231085648 866812701 825694149 76875237 343190804 758173056 748006531 796397536 651018108 782604794 779731861 751521395 19321903 362488000 893635923 876523977 64054348 343463658 654968762 836555210 628979846 359263627 296077657 938896802 142319170 820314310 716077895 848433524 29420544 602141353 774826725 963964244 795953665 355997313 806291260 104588556 875307272 192490600 721122283 471177216 961377552 112205177 615503392 804639580 905448796 925705318 85230426 74043028 190682404 876362813 73702090 325223329 180747825 722564155 106715897 418695226 768746143 233995452 59475024 204048306 777681873 285837412 661196634 695711968 259400309 80875627 261987168 473380188 35221762 73091818 666154421 119964244 99069163 182960785 420196811 593075279 35021884 343031079 153099570 311258309 919061590 382051592 43091283 772831552 114228566 242305506 701661949 973334980 270415775 268957997 639907106 838597320 434641544 974856906 359747365 481869229 369405306 154879143 330190313 481834149 511049701 71708264 316183526 691962928 558505539 331309034 635853956 245281884 85777295 346549590 264748379 935216632 249205660 443322356 261971196 389371592 245661943 60304523 271556271 762320941 422335822 727718483 185520054 967425271 299489155 420047916 802890057 72070903 804200671 599875407 83070312 282826483 131647742 17163388 435380147 770283466 725859877 184019864 545472185 20538112 736324915 480763569 993628413 861604327 576336700 435747766 656279231 510381184 111705539 19726588 175600037 993607492 946718753 621362055 356017583 920804885 564529430 730181594 189163960 222423622 71113246 380058722 255300960 902880112 172215223 18971133 518391200 925666761 407615225 133370355 528791938 135181312 268920476 348591276 69501702 829819554 807908101 723583336 508911905 440883110 227656736 761354978 558903948 634217330 404223371 889242345 656632089 492703507 76801712 469262633 167625133 469310396 127301563 921043059 220216086 665950169 532446688 895331227 263878253 963866474 915417193 871082240 588888534 438968132 644072942 192615409 205067483 149227000 24135320 829083194 153919275 282806064 797399864 865053258 261804277 983092992 914532261 237713993 804471816 543997042 450913783 153211267 561953325 720345778 242055423 744645408 525392887 882349970 156647963 619478834 201404367 231324982 263445994 826232373 741565898 717757183 541922570 740571115 484358946 379973510 294081310 385093661 20641205 871038485 393113503 383193851 353839992 54507440 919004604 87132323 666364899 994812946 604709716 421573167 328414233 636549072 146418513 23637744 678843037 580500292 122614391 891648089 899581423 443474645 165753245 711053549 768522676 837815045 722831278 670537752 293088149 539535353 915500039 745121109 46714265 426705921 819894606 305492845 944813793 660579982 604719726 405102265 546725104 789283468 217782260 116736664 741902024 404032531 163406728 561563216 410672983 701883739 709683468 460399618 184325126 823178927 228810241 961160950 443789466 765182936 668974512 364267082 909241833 132867615 339982638 499736078 155352645 637316112 976204346 74334613 143259143 638428294 747059951 306000350 610617380 874511926 210910253 264444400 111214123 101680451 149946164 229587814 387067946 838208121 825461528 164674267 133798532 775028406 668150645 390843376 570898063 808462518 341743687 646162940 482046153 226995255 931807187 659237245 457029638 420713920 762871388 68564530 33507925 314072310 872594633 515993997 54690977 832222476 677176774 889879642 730786462 125683048 488374827 480499416 500136893 905185279 736167537 662021491 336990316 803270152 541931026 896993900 549242445 98428367 422163978 428287214 847222691 134296684 236600269 721935753 4080439 434230413 375232689 455297898 632613729 381076439 546189622 507307370 491837303 131450707 449396893 690737360 765726026 330634655 512410678 839891669 331252753 478756820 30078381 452685209 4016771 542760744 384381748 364316467 90703864 328060748 119696511 154457638 197895490 56289031 582805873 524059819 636374884 581442028 199902328 298838906 377757308 58889947 795057639 611402619 102857821 685221744 356678457 578001988 703525904 622670070 791284457 158629797 796378932 735457089 837411488 622584824 955202632 498456362 275104890 937509638 862419273 828486843 609687204 290171757 607216744 403704 363951229 216852883 567867421 968480560 850668000 617447200 81865685 632785721 652359502 911830072 386421732 532100262 769668331 992937357 278139567 543603058 707147934 672316458 502143465 739813760 52127758 534236259 298018 173308623 935547014 682959738 192117587 893098284 849958352 610727669 180868862 487346081 316080732 627225150 720027999 668910273 628047085 182562823 640724593 71498376 403196220 862595381 728002625 313626076 790963327 443245352 183175477 995309360 25433642 384829669 320343544 399772745 396581439 201193089 470288465 2617079 135123293 779849646 685460549 910661282 509673556 120795788 528115878 444693220 174665182 157038284 494369999 506449781 864954215 625768188 916869040 19196099 285013056 998987701 884644587 658852878 121194285 867112575 610703867 723982368 788834781 211448710 750519906 897573873 208405940 494792262 995996166 890238366 235272137 230780610 402244746 300518766 68184037 354321170 933419039 897464312 26707601 840005544 851656304 855640637 109913317 302915246 33662870 916506894 26862355 361152331 197072950 348263834 528408040 320777912 799308476 579649562 198898579 349322596 556258773 91718690 91733281 850734580 816301135 467506610 478229305 184818443 762546693 240441577 985634927 202307609 495116312 659891278 974503378 914512046 265155979 180363616 392791460 297616315 730089778 288255574 406408845 899611798 872192124 717100476 954453129 231248425 100715896 67319995 417729255 664197994 34180788 844800364 143326548 12840369 528981714 33877117 477937886 268534470 17496281 169002720 664863728 181471442 103445449 792944396 972759617 193039549 836802593 231477499 531820454 742890381 911614125 651685332 423634531 644406979 749035976 882206699 814352923 962063638 51027872 932465527 15968661 150750386 103319062 759540385 250249837 79258653 254291347 807352224 829236926 778643050 846431262 925360272 22572087 789629398 298189604 344158624 5334739 960806483 508999891 987771157 750458172 165050764 562563950 976046690 719135026 889942324 597966690 618067863 39263760 59227088 612680579 821503839 529430535 449330345 556823970 778446269 468532496 977935758 484140427 531730338 810128105 39016870 675344655 630561869 377369030 518952656 541573307 533078724 127794281 179438558 205355399 644924303 993617252 176044135 384432956 538723109 61927075 472158532 768179562 6932953 930030096 662382617 670539583 908126074 707414224 403476081 403452220 633985057 960418643 323179830 506396907 804657768 525815482 740588928 934393407 214112951 78831309 97895698 927241875 929152868 630763923 342889150 73983073 401537273 178945391 229457868 760451455 724505606 452797146 941548739 344443159 669552632 593347538 490673046 130444562 97615013 540107063 401446930 453075459 814118397 994847238 958434736 94364862 29304311 74413768 564647861 297628959 675551752 694957882 656411191 839248795 343560246 959072272 436049202 88917334 24042818 332149587 739232988 968212679 770331752 277860656 179823885 257728093 147093837 86714905 186729967 84868891 496771512 274378237 479842828 421288376 167972634 169183920 933915349 319642381 88395097 460914246 239818804 124022270 390786064 78125503 299389707 555536615 445855850 696073534 861853106 498288609 270458675 969865876 537401308 219528145 887154914 318255785 15807304 844325676 98427226 933883964 11217538 423963942 635362961 477938988 924456597 411247417 262738873 373521730 47652012 951694265 250004826 6373040 236750933 547774658 452434224 292712480 634659550 866864888 378954987 318571019 362776359 164745009 958562240 47572089 754619396 658339522 44984409 578822395 456942872 466155311 719806602 706179233 405946232 613653876 565591442 157664530 176784636 90903636 182999080 224460329 890199509 564319637 176065921 716782136 228895593 887389691 90819662 584913790 40864648 132060530 707679183 771633790 538675277 595009144 529686583 827025135 381143061 262647253 938940755 486676294 173394613 471167262 309436048 632069175 296219442 639883142 523979510 370736056 192907674 923601195 192165735 138509247 646502909 676155787 120943745 262467962 238854612 526103126 509499194 313642892 932098104 914706553 403292358 92814059 271444323 116629661 839089901 553577815 734745771 763199835 706631750 63766184 400865105 330157962 448687714 795315068 108509695 826563101 616429519 913225857 153120270 61979706 132868221 622005531 552019071 81898692 100683000 756352470 585391769 121845805 5536928 7421647 702819125 45846172 294975752 155182674 717437718 478416997 210020783 40561008 407040917 498114423 704308996 521806091 680424267 133473296 360430603 459118713 968512669 90122483 786479892 485899609 781309205 369945970 316084845 965753063 982107541 238192520 621376326 12955032 605676388 923616924 710581208 400379537 926173168 807675569 110076705 998658081 304495403 894255014 153036174 173494202 781992159 388046566 254397110 939602802 872139601 541508962 559934474 185140644 610102162 974399179 677011086 386971998 449251937 63811738 194228960 808103629 791867400 529102313 393008590 230149987 560651655 527100150 168418483 118922406 397239597 255923911 293217855 613923575 501746782 659675004 17500520 315716143 772165040 777131362 509638699 825244149 387108185 274915553 278629666 133542997 131191984 10980982 610195862 900029861 758319967 210827868 240942039 998985782 213287598 57085477 693238014 904722650 680879183 305714437 511823440 534069091 81551022 888521271 177892245 511822377 108284606 706672851 375318811 958373918 738384225 158668963 984343130 196102858 876410576 989538424 925076256 679810022 780621649 355477690 762525822 564074304 805849051 127440523 910663938 807651259 725636475 267853023 38529791 291352156 633767916 815870554 959065426 671770688 976258852 140548917 631560725 250191541 553335460 191975311 821703987 630702764 25087121 715176814 627705427 11402188 627142976 195999957 98637060 420754016 693985853 818664287 732087579 299156556 665575173 713072223 92490655 949688004 410712589 937909197 654034969 343924235 384429904 520589711 502833982 623340870 89364601 103806030 676547643 253979528 377196272 886556416 355739510 926561076 920313119 823351208 674564352 452195089 725361889 801911228 569843739 97670862 490816016 978648357 156733876 245342947 790339728 941223401 187765205 90145676 743283189 94117558 478959302 485736230 557292923 909515135 575858879 635116713 56956214 214809502 490469283 770575368 697242984 665828157 720437011 196231687 974408524 860380486 467374106 772604534 611166815 235209147 159323842 896718097 326801349 190823432 222222399 285752350 66030970 220548490 915497935 344360573 228326181 647966627 33536428 881076476 159724559 697996524 556152881 550696311 447356341 397296114 505691118 934742948 386403659 252631829 783663883 584525601 6299575 710951622 460863191 551490910 78388139 389995620 831681906 954969227 99465178 227470297 858528265 740789573 222334687 480757199 196774463 381167637 622997226 408901376 556305860 487748356 61777763 335914546 95852466 361179995 239699363 234505286 499242232 836558287 37888561 447027077 226049636 385654819 893236854 104410678 974953262 471982054 506578069 970303140 246094159 977109460 32265696 185761426 574604810 729362020 715191329 359517404 45809456 443146997 465263743 209806093 86289074 736618778 689782482 544158048 580297945 138907655 999629263 556046645 475366915 557414116 415201541 126984521 923958862 612908385 520739890 546337589 797195118 293125505 3814228 85633587 760560474 527638238 551872112 562736272 379036400 373834796 905901351 182012532 771861288 312601521 444750272 935508399 752005543 866212063 873855824 660100453 861097209 935305038 649751945 855283401 77260794 59970922 965289274 603226601 546695354 790859090 199110990 803925055 736207704 216717175 963934450 259446013 715411751 200580524 782830920 525025192 424371404 722290062 635447312 578355887 785483002 332862656 646061697 486677577 971774865 361731904 777803980 736470019 690834572 232648567 48206805 195853322 824583718 196332272 300567341 526317513 874898407 741486352 479514827 426115157 228103124 201394408 966672554 722639749 157204930 569847484 612495225 359939641 672430824 411638501 626598017 171416346 471669796 812482252 474355574 97959886 195669343 225826149 224984242 311619410 847138787 188329138 824382448 357761714 610602963 979510071 731246170 373381821 213298265 19213664 563872328 968350478 307033263 844376604 109768514 218023357 427757385 487856227 479632821 178468798 496956437 678952594 628628867 328972764 330703479 312656402 194099738 664511117 458504862 701512197 149142186 978485079 369361519 204288824 844388762 223284162 505694014 498500638 64016945 537162726 732939767 214554887 126097860 736495588 955828649 527066546 784648389 883232358 796415222 104750905 472517676 435668730 279981282 706992742 304104047 695284023 158363943 786691222 889675376 494593364 517788990 316567724 421348607 190976421 412887819 700289476 257638523 823993676 854357727 556054149 839386792 125142839 485166496 450078751 725094886 622020559 585437956 899841873 116932210 375399210 923775706 520815695 872334664 906186203 523692500 179834055 310695139 671125453 419293325 530794245 132755618 382615307 12198696 413759067 260178507 951395229 979402070 708898774 910679097 822412360 706391297 848259185 83282626 7554328 662235985 224267380 95344625 123644075 521296059 319670449 111048025 127046627 299045551 963104817 160619863 295691440 178200493 22823014 967715230 143628192 705424781 863165841 43434943 468801484 270746892 434960022 939817650 769505965 893742668 727345131 645473688 705072764 345454749 774984857 622337377 577483763 463400230 84624040 154713977 335219753 944655431 763353182 161884032 351996483 302750939 911720447 605933784 386243254 206171608 79145215 731194505 792591236 901135687 568375432 546655031 393899097 292064604 550440084 385207612 341665357 277242100 36643853 126818340 917990249 7433323 628595898 352604673 161364467 244121632 773971118 27145301 769379490 963959213 677874068 293508854 476520502 360878419 38822414 723384496 677161312 500508193 542643303 583290631 547338577 49210995 394018679 523050649 794739513 92514558 682420712 505286114 462789442 779236180 310412468 63884592 896254700 636417301 578125232 284317522 168933154 910662506 739414211 974510308 343479741 902764516 956794964 897735341 328797017 888491928 182806816 37855998 129477273 611609413 701745372 358195575 722809932 718187731 116568492 578360522 825962560 262962468 96006211 128093525 542014126 628533438 523463601 433570779 743117255 697969126 969129418 396925394 515750442 799780480 288264746 839388199 413947612 357708762 652880950 819658692 449813273 13197239 460963315 641352160 530777541 251547024 8156872 804723461 662538121 105232308 528840103 934745045 340791902 379241313 543627582 1250564 139603694 352825003 579248549 155528140 649329226 545119857 621281154 339916446 73249754 833508497 168053395 939871066 23974807 575857690 828802680 593950187 6392906 190059933 421166473 31543599 755596304 229009517 781249255 890991439 606130803 430191122 141381196 651416727 642424166 831598907 424966038 995069869 243982967 701095871 91046383 985410213 271431198 841217492 148050670 39284033 51929219 394803645 628452822 96705429 109036811 374973136 994372209 48247294 416045837 314808168 249825939 761056430 728324584 612549813 958036041 136076717 419248206 267283618 540010718 31071441 629505598 686544091 850261231 371071857 433153946 755965106 849013904 137661393 746093546 109337580 713354638 176032823 534922883 505900412 772021821 80110494 597460068 691020701 594753982 768771969 590913835 621463727 985451665 775111435 53269933 587163590 683881611 934404051 781608678 944369790 465716247 481152842 90206402 774389851 762799684 25362619 18738981 652878679 298631824 53440741 629356181 174959096 452539229 627078047 585086051 380886677 60325142 829932818 105625730 954258663 471279371 755878176 484894380 524717023 567129424 331243186 282636747 140577462 220062774 521950739 972125980 413206070 605581770 968516512 918441919 497333964 783688033 940933494 351506114 749719362 270375643 380978889 947087169 950018650 679756827 747091834 568067752 523811212 192612898 421737909 527395583 634217352 165555474 531843317 925289873 139364678 525755850 454711663 543818756 636029602 289217639 914727784 423683968 738199836 449943943 140322431 454325816 875728931 741882977 182465298 298729094 677963628 165329329 43639103 896610533 660344119 16831708 854329809 555502741 664292338 503882977 516955556 655859439 535231458 438039822 453029868 999841177 761130816 48457079 907840019 944645231 11916475 267554050 126163815 937103281 574699343 347312229 326282608 229545 470101353 673130536 436589688 269262348 11980219 263703208 270461516 878272406 258216066 812740887 992416124 362757365 581327057 192297025 79011882 342606157 438251892 954976671 417378706 185390319 572755146 20629472 632520518 862589616 687316098 322309694 651510396 546776877 945650933 642021875 760313080 657418930 443060042 659729130 90208043 435505936 584029579 280941706 259763176 799935150 979678406 818138649 4353960 579814381 453156024 838416714 515578774 171186913 716801436 13410923 769089237 959962684 656697529 950803481 610212927 290577306 773374432 206846482 887309312 439105162 530574847 999375821 481826002 455795851 80122176 82861350 963523679 82102115 614277587 119146168 769852786 743570259 436949891 427776504 360432043 226052543 337454911 271124949 398193144 875121272 565268847 273336455 275805767 678177880 296497094 778880256 104538132 639766228 590595591 578942285 826777324 140472868 708586230 623584968 175042388 78891312 748461065 764201629 466069482 119805147 257897187 727658595 23933055 57175975 215158122 872672100 779343455 457342172 340139438 865103741 855648503 173520652 960473881 285725514 902953305 665974488 599151386 412315360 811956151 338677009 287713737 541766333 77128010 317268361 29665935 213303548 165936215 119868766 363157307 917157246 314762817 695829363 141899980 889497948 468609199 527447495 116022011 415127113 300813090 969939364 226988020 740086088 176490769 968444001 464771713 665566318 348633956 243010035 322919930 197557822 663948129 754917710 570970247 109694280 329335466 946115516 313287732 924655585 546242020 343511804 875289985 571493261 894429624 420971522 724108440 386453443 578911990 527550099 316768219 293524450 127175233 981284794 408679672 432834363 83557523 469577432 801734118 748946519 717023704 434175319 303051130 807125758 366386392 455989511 407088124 346653351 147085911 941974805 123775736 998298717 807739865 487862738 321690770 7817822 545908345 601130268 341106917 688136053 693295578 90758100 908710243 152820580 257325606 405861509 8530328 626128750 946737929 278715862 533329225 696188612 142545218 816134182 89376917 220132437 286322226 690944650 643456189 739429348 674569686 14261066 632382577 246005935 741870286 852902067 637061802 57547825 879277398 316246214 769668906 193223990 243631191 951989840 222569977 607236644 78516984 837513355 621811329 746021599 78334470 880855371 18206747 526626025 955913295 741504310 696199587 761400103 144758290 870269844 849906102 618593936 633310417 201686967 686913896 508593403 138212301 624372296 851811259 756204737 576056723 734119966 947388588 689535827 654771486 678740943 595234006 744646306 742153284 936062060 787115614 722264912 723461902 872591660 380416469 31333777 96993134 787560386 69790604 734032537 237166380 950094103 320527067 919527830 37222176 134044639 677799909 738068002 810013417 386279283 773416203 392460690 722793762 844734203 82666670 297003302 205463360 188295510 125348181 722635221 164023673 461674309 391083994 220601842 808247133 35150432 687416813 654299751 423202873 800293782 703111102 564257788 889013412 367516179 416266975 649128338 808891839 891579890 613303808 636866132 707144424 618455005 767920530 548150220 99529692 78384040 980873324 489212008 474841549 623622859 632465957 140181023 768239845 215091075 770825897 33646561 956829028 178966933 910602777 364055700 712390912 482933491 298207257 815270395 426003953 635144759 208145767 293012807 654559163 715014776 248163289 779689571 797303237 295010422 691417269 413700060 180914998 419356249 520132550 860567356 744053638 95372522 958438269 103756905 804923475 247194221 894892347 986963427 478019550 902412552 857588482 657054018 641739959 279836958 6122314 545079711 98547793 794959711 483591501 715020892 513377472 513327887 506063790 73849272 980398701 440462832 596027448 195035623 42961902 483664968 960436397 601635013 293463569 297056284 926663937 587581821 266658511 137091583 268668949 639477126 805485985 91186252 892818054 121487804 295016283 501065130 64816445 81466836 254085310 926754751 561688224 455996348 816194414 494043039 856525991 4053413 576480941 348809252 484027708 203280073 759768271 521798258 299116506 22018700 711451490 617105315 61118874 451413616 898423605 447901857 285023241 827601006 786042862 925993302 936072851 99988266 515520891 4662902 175058199 426700213 529282663 625124937 738228170 922325485 575230447 61889003 457729156 489443631 268052986 253575128 285460507 381663815 939947971 773477485 74107156 481716307 599767652 888413593 389142026 472123049 659735365 926520072 59639609 821181572 633681255 401259893 410525622 16002926 938761122 668646379 960697808 727169343 662066723 557033193 374107342 34372169 604961939 898385218 308058649 618503880 8071944 400157443 933996317 450935397 913407122 50085017 187332707 638351102 77266322 35911266 711483242 600528516 792402897 497884438 445551772 23499363 168667305 206033998 360142723 990883380 766405709 533321587 424401364 104247092 439184700 274014197 238377377 256575342 549135203 907929453 989248756 233005461 817470316 253790444 546873563 505980185 725616110 838893977 933335979 271253116 887376931 559165686 583249679 493556102 646110648 425041943 694846559 655000501 617297306 261102563 759498516 668679219 252589960 969105829 393737741 783694703 181063727 243538103 874099776 543065687 211978611 515044349 257295058 600559723 307352893 516258997 875363417 694003608 343208182 22260361 6183131 898276800 806552706 370485665 271342324 907341882 205341328 445671253 389791918 166288426 814790209 861514267 958577874 150247322 761415396 664095002 161796141 701785158 223182845 81997068 256107578 169383718 105335595 730843381 999910041 696083913 404260204 480251239 477030849 253059221 92580388 310311814 497945058 810707510 851666469 537444271 821101196 850213816 917493859 256553110 643410602 981327505 257060694 393275932 232834586 533368302 556993107 835641551 260370094 934599829 782903911 165052913 660088216 861597072 21648293 280187392 592477586 195657667 260230077 844554396 352610175 995149932 883760511 785908954 281211855 332628621 627189364 101914259 159747129 406998631 885427650 797511414 193718409 126197465 748005978 151667808 939605519 313880915 914064479 572271835 856583419 822924966 154974623 757495901 85322123 538230099 778066026 361483618 557988145 142238150 555578609 546666077 952307196 339387567 320768229 320364699 749556031 217277597 535051330 531649775 544153609 3511367 752590180 192616549 45301630 648171091 694067577 465919690 750478428 313764109 40390641 248378414 353942735 265226447 405235455 17130738 727257220 786567554 290495643 901203166 793948884 619537809 849211522 863663846 90457248 367364195 444674563 383067689 602072187 417788620 452251320 829523017 472638207 698290402 493497416 954859351 361689254 382842098 834703102 693292912 452887925 139099959 648535205 541807436 213948523 273883394 486663130 642154334 564322232 314901816 891285913 246436103 299247288 333171638 453803598 517833959 409760688 481588402 495282492 621712749 501748882 667310296 464979606 269135618 718899113 276247791 107823863 944189773 164799902 933713138 165968683 153944148 28873562 966494175 563605725 710983684 470692235 520872098 930042120 355275061 614563683 667699188 171000138 256390658 93339845 339221719 720288471 214494569 691083550 853019531 566777401 340652977 215663507 963575447 977438313 676315369 128713734 623735730 731691211 812265056 551780361 517924999 650838598 812527425 424416478 187877170 472871217 175178788 704618987 429510536 580493566 615059714 464733671 381751562 817573686 494478990 371640651 10611010 354771605 19745744 839257112 728634483 461429066 918206793 328990603 557501628 348302822 180862972 854948999 495287117 966857293 474514029 16536738 458069263 581145440 10560848 518088250 193214464 649970484 190912346 885103990 424768986 254187198 611467946 277346322 63899 284144087 658636380 184934372 867322054 24885290 964033097 468336628 972418143 701179439 312777350 84516944 633623080 265830868 423352568 862059527 121318864 675148029 804587320 97531749 361259079 608223376 875864540 701853904 296812754 845113997 149274079 845004223 406358919 666496734 783617624 152871272 785758900 18580448 548930614 936167222 975862430 226699467 675575419 217732282 208448586 829454847 187351949 287256306 498333395 392443494 59191098 253299803 985983443 807345783 275904055 284142811 396165452 47603711 590319062 640434148 842912366 311745112 866960367 434215012 900517480 670840991 611906287 93152873 781013438 832314656 592894411 114451169 717964632 59731623 183124711 54022377 430900947 165478493 706368165 673742025 596162012 229941536 495893843 149034006 613144733 844098896 445299275 111047475 75572785 328640372 779231202 322511462 447370490 278775552 517038119 611128105 140481290 744739860 433257470 290008441 582106055 881362002 73610032 270480190 413800811 6454598 426865846 387074401 613761724 601892060 869293136 37817840 819583314 492241282 416322880 334979058 530615767 635743476 752710392 618468376 95542380 817620529 200133896 139670021 870891314 902665654 903884934 461711486 85579723 766386695 465408566 695995709 191050039 110453639 580175950 136382606 464885963 97748664 553925828 274133826 771219663 314001441 759177723 866862625 721267837 778018724 594427480 665080084 527199788 857719605 482939301 167263776 610873273 82100193 206433861 503371327 497826777 448645793 358186393 217427864 142945775 551990191 613512473 936331777 574714284 33910496 629266452 712142856 140381676 625517606 586193764 95128526 46784420 426154613 197401761 5250444 184540398 352249105 26024902 31400201 127815254 285920413 105328053 268847730 62093787 682694903 965645769 557378463 521335425 265603938 481174730 495400865 487032578 429874101 663217193 266844072 839670719 34361843 78577809 218965832 662009898 501988847 987194748 747096718 601163499 736803064 386766223 135741678 648677732 555320711 643024058 660487693 870921708 978517584 727157309 30226465 473325615 825369615 179761801 882314112 433612838 635200776 378596904 876854446 446496556 278893841 591105959 609552723 756496026 114934222 3427597 685943710 169415800 139209059 788802160 806997538 610741333 671144392 689059390 980863240 816287041 231118937 329053647 407657548 606698882 754733049 432814097 145379158 297129507 187981215 645138557 244028682 102044310 31973952 87327722 553577459 810217865 99488703 127838918 193387279 61618589 727511922 572272310 991641695 143834303 528813357 345758090 435904778 301920339 598847151 926432379 960286406 479796843 329982140 264087436 596002578 451094823 382480043 526463617 989877869 272929957 374607144 812383856 958229896 497021776 511709829 639999632 904758449 161736038 627644218 694453476 271433055 8563293 240472972 17346458 392626017 894380330 366131723 881668838 401654407 95508209 938635067 830834749 513772920 914845746 837207337 852428725 9690140 600953896 526450621 375182593 85972119 425001114 110803501 863357926 977869889 335732463 210482397 820072072 322072683 58280962 940275333 788743614 572069533 530317812 152039535 154942764 505176054 603252749 757353797 762360478 735874081 674648074 831452031 857051923 972519995 530203034 93949181 970839359 332221495 924195984 338444637 967548304 138734419 64489583 295388849 724461943 833678324 206539479 878265890 388933576 987414064 793664500 44511064 832228370 301544990 965515598 440853410 211988505 251248337 684897020 199571115 163385922 787272083 377512505 225589719 35443439 677151279 259791824 983109974 686487296 148717305 522523001 746930120 843949967 733734408 841565488 256651359 807267672 410268701 961525730 761589957 26822876 517684915 516590409 703926039 477548636 210223028 372734501 769284787 512404951 590812546 956169203 81761755 673294139 850409297 57819816 410796949 957202638 707982583 43891860 649703982 692145048 450040736 58890805 425656808 700571872 83813333 499689507 691706443 37704144 155075126 558387362 325242757 644131102 914148988 915277191 224334947 353601535 713847940 891829713 266816232 516429341 427850871 294914881 689121753 948208026 505425245 372642397 817792417 268993810 240694143 993379055 952669196 869763466 982201982 106175129 446522149 297092386 763194074 155299070 977221280 522238519 221550725 751583287 638115117 975308203 489273458 626991348 538877046 417917684 119635126 920784231 937548613 98583045 407371346 456468468 503555115 751474954 316692647 111624127 16357256 123783041 334275955 41131340 660483594 186093789 912260090 758260252 636751626 1849441 801279307 867164039 656338541 918322515 867167364 881585600 854136751 343164526 840828911 552228268 300751278 109775082 96036522 78600832 317824244 131553359 485312762 193363991 41519506 227643202 616410890 275747817 242548668 660246532 306225233 295414992 689514765 935536571 518794839 537834591 508374629 275936117 277818930 391631209 353827829 702891106 843999466 127493658 248559261 218954503 204539171 761116979 382678011 234292547 769597605 613611159 725250404 746436149 245588703 385238925 13987958 587004990 715115504 669526888 569595087 950514606 558175465 820806509 698801826 380057156 196019302 328075625 913261989 831187045 861474640 672086060 53093515 842425172 564840062 793811164 108840902 109480046 783817708 895026338 737154157 402922811 566345795 223435750 959544283 951923173 441765450 746319442 752060001 564518736 867048720 9386512 950516753 754420405 332624740 137107800 710754625 790274964 949100723 84470037 141443435 863062511 11814340 850076085 938139196 835361678 424533210 148718617 906802810 869083186 324952712 694309728 768392085 735002775 651772655 944832776 466077415 112417761 487318728 335879960 287966541 115784218 71692534 226296223 806277628 177488336 180700606 899634507 37723288 476774676 371915938 294386428 361001752 917006702 448620434 92234719 809120982 892591616 687973841 792250721 21588719 213445451 252652941 904471850 488694208 500013714 617062320 869717930 395269549 280381037 633972380 266225379 220114420 573513153 400786310 930715296 419477230 16870764 804518016 356948379 930727196 216497602 599152249 471338733 144326023 675378841 56980591 997006046 961921566 625692371 981339507 34694271 969373948 843714538 569128842 513616969 820075907 6921584 521501289 112326167 529494129 997850596 756135048 446473301 752441935 702520181 80799829 149426657 736266662 105008268 764855727 662393104 459541427 636075795 340762832 808888770 564514989 179199134 776826716 139293293 891733847 772386730 20899826 553940378 682903016 28504761 94082109 849392885 858904900 105773910 950154328 652908567 112462273 971543508 517165050 981156602 673635691 560865199 753050797 161082788 507378551 344227360 746064017 849315358 306817040 297226150 963209025 399655232 303713758 673557861 757181594 343406967 241997923 461007735 589920459 211014321 345790496 882866792 382087913 332895251 402623076 549820840 983310823 130463490 849749561 184200240 233852554 643259055 872107454 875256544 799630277 824068471 157721604 664499164 731325835 837027491 148201673 260773470 877093525 702384957 282834016 901577265 338696431 12103140 758686773 130352430 12825271 684651437 980990127 313795213 358939404 559115938 82119062 552396103 594164403 560386435 74813082 828501433 28772764 41530200 695493735 807037631 148537603 567327904 854856311 835389688 654262071 663273629 885688601 860761164 330108614 13609780 43889408 379782179 164162160 831364171 66000029 113735981 504745913 461261561 281270122 871888051 641475732 249606230 697736696 28536645 823154973 703216221 279722080 248907710 175521570 282750509 344149328 370889369 714654453 114105127 581890574 876725220 722328194 968704784 233541808 558493273 29733887 165806252 682800503 770950615 799821570 283979640 704281027 626506266 339501323 1414516 123108281 318256019 425068628 850969112 207970794 661569116 381142283 507324389 871739339 721701833 603372147 766391484 467427253 492744694 770115955 649089744 397002135 689352208 112263799 218523825 315126173 932894303 717856333 870335110 804143664 14935225 81080550 499428094 265875228 196943266 947588428 108680612 46520954 904617256 35476783 450202725 674682988 452235865 14548180 417347879 561113670 188420317 397385098 104482216 628850202 531704795 558372515 815111868 562086233 477216982 30842677 165603761 887531845 328615066 275751440 267354817 298634852 704174868 922266191 908466269 741867580 307816353 231890622 816013712 617186010 203823701 922425087 765813525 459609913 876148465 809968553 714079844 828548284 135622441 969512822 384138995 145968005 622774352 254963044 555205079 845079029 766021207 346355356 897580146 408334398 60278161 574206163 725074328 542647023 401823842 563277433 13658657 923292440 492928372 702827958 729332869 538656477 368687674 991152548 557199022 417979576 23658153 418090210 605565626 313773713 732596864 120846658 130399898 487500415 224233290 312468797 91283232 940089263 14531661 504666572 379973990 191865918 675988941 191008994 853951365 953608873 271487296 217903020 656193802 160556677 987796000 302339845 69318175 61688668 642593064 22162447 584412118 698404350 119253262 4751714 466772266 674396392 989620246 774054580 717292331 689696465 219331406 203572199 887072688 66653572 131115611 854049373 625995164 24562531 820550716 582168217 828898987 992967627 274695647 367006636 413007303 189273693 897654095 662017895 200191366 755517437 358859876 226469473 507246978 924277577 864000857 198096759 436985003 975928113 911855090 13159353 92340669 999018989 463619894 760500808 845215357 145592430 357606843 417332029 372623106 846644038 771613899 325743043 604308795 546099987 578288583 348885802 298338858 771387074 678041408 582406721 208483024 995822259 776045982 225104616 215259010 355266152 563033524 669526143 329374832 171331549 983115906 498591840 547473168 909945300 245430434 212733719 224554925 369508234 394736779 860360121 496826196 315110085 448016594 971753196 891540724 313182132 588700147 653635263 8367733 726046516 536259180 405790201 303438133 643896621 473101148 227976036 302465974 943277381 969005785 901367132 313510439 857002364 473665412 283300551 652215007 857250609 376032923 337396143 266673701 25667331 843825492 75742634 101743157 49367971 810866015 876523444 629049741 728929134 58743723 752600497 458204811 839295259 963674765 951220274 637136389 828775706 875365526 658812946 603647783 342448947 506281705 13375227 513533379 930795040 375000679 385037179 303014547 840874113 343607447 124783389 887400592 924564980 871279539 707492855 883539333 395825489 948705591 573107381 111278421 796854250 748380454 917823200 365834010 370981438 267717605 170718462 792358475 197749062 86012663 167935013 501436812 323684034 651340969 25153932 75153678 612867204 843955615 124452267 607484013 383079207 725590747 564083498 401039711 67850277 19522309 586539619 628921000 969161628 386196095 441727481 337439210 730716804 236406705 914562646 747485076 530566031 409388066 647000820 956554628 173043157 98957368 928768492 464652370 738332268 601263942 579516775 862152388 567877106 930828710 871432122 99060927 997666810 128226896 931998593 101159361 208971007 374089115 612132225 816097777 684436378 26414072 994663642 420924986 274958268 827608925 615392683 633422012 28324807 891820256 960788040 645166670 50417812 969598450 418535194 835154707 15093590 351908612 747484315 946737978 344119584 498456932 378162315 704733047 66258671 13012678 697420649 614428413 108163377 631653930 102851282 547513540 401382238 574096614 301477131 362388836 419512912 89919585 105906850 276633214 956108006 231617032 612991744 297033101 476978392 919603306 558441030 796062980 506297164 728549753 101304153 967151796 611766017 900197976 661743674 335261346 77915857 932218668 169718211 344100810 605761016 112259079 972660504 433492302 334330702 831474376 551689278 175464193 475078377 863829379 852263461 258465645 325936301 793313380 756632375 64523817 609222643 393313512 463821633 568469291 203894351 434037249 292104064 505906722 167046043 3323229 678548610 429361530 806135272 676734092 429924572 17862294 827482030 3598792 153181808 68910349 768902572 902045657 849601805 282121898 223016508 392557642 472971808 756324620 23681794 478219453 641550261 249000349 980752224 698294752 820829843 118084076 887777103 915016769 197713065 717461933 323685467 273778836 807488133 97032623 694423542 989815048 934861827 506269791 153579971 211907950 654084453 283432802 155761942 207351572 786470624 789302687 822086981 724346235 499424343 980043795 834054167 453691971 736954720 92306688 172843595 414752733 450172741 144188101 573721874 870358832 764252548 422870698 296511861 918692506 467894793 342716126 338820027 305188756 235977986 463073454 775988220 909881880 715316403 932740200 371309851 900629932 195847229 352423097 446798487 197282397 614476414 518378465 2516531 149992196 884589894 685502784 995759875 873807767 21407452 227679901 21102454 594544135 292074506 371990230 295627574 397750116 364502131 779596857 728262594 39526890 229297012 408394495 491453596 194777203 829436029 946170573 722101812 940625521 941757613 163995945 861029258 383405707 479116831 2350778 720299957 567188634 322618603 47408465 549181587 599958870 46121221 286268754 982741768 779667747 993788103 5608578 36689898 383607326 208628739 678372868 516766351 517116717 726340304 46723204 74684629 430584126 865161580 514750055 217110341 427690100 104523956 494981065 175637321 829775150 866144620 631823633 700379818 593107071 776788280 965017349 244424980 114537710 434145657 238797868 880076602 747182615 339427289 941419412 704153714 890803858 267002178 192765203 978365808 924607156 794269032 5796650 798681496 277707977 47265246 712928576 295988213 597103927 191764639 87683817 171336703 273007861 753379124 718094744 452286764 207109645 850204998 812539054 467860059 940324012 942556566 439769856 179241745 913017262 394588954 447671015 793421342 805270160 592003387 471639214 238795598 742619568 455667581 602338838 760636894 999102855 833894698 219937017 957868014 85835546 344882546 975043091 296559468 661615209 323726448 710581873 618307238 506818388 776463605 246159762 661169410 249842858 670613302 260153234 829180430 663094445 364547790 612476715 154892192 911466432 794971362 825013649 332000958 764316347 323428650 547955110 767436320 135725748 572171868 519181463 536012902 345256215 476339386 702018430 320663587 763013167 53284309 678929655 66607389 48393689 562511380 237981311 892787712 888147357 769249172 978222054 740654665 787187106 13314592 628016738 272365625 534002570 335637578 468108514 409938392 507683321 265242128 449557350 897993730 58979301 569528138 623727015 673317033 541519564 675671472 704576497 42265918 406260786 111365716 416623325 562361285 308895412 298557648 174726222 286144455 190095942 609764003 869400362 200852774 80389007 749959896 168589406 997482290 95809752 769090559 623376389 163682430 315003852 907321948 714853848 332222181 941378627 673001749 414219219 204188969 759228973 756825372 566595123 674006514 43461636 259174880 235625185 283409207 964736409 106064711 359922452 104604252 604436032 166792819 461735234 115582467 233173181 332766904 651399488 234190520 300666602 689533245 2383214 626247702 378075623 481102571 826610702 820264991 614691949 524805111 109887018 315083696 512145901 34833573 172886742 188320948 291272707 810352094 823628534 835219170 883659295 393523833 153740426 714321859 622549377 450392084 238253167 997443377 393309812 3189750 587759672 865686666 262164030 266131410 137088487 749779166 794430807 247302409 587164864 497018990 908589467 461728727 250249466 896755132 78172733 150508150 426872940 635193641 20426684 588708765 167150904 371945894 825440532 687330253 589307757 600510461 728708430 677702645 159380927 918679058 331724267 944559444 63006121 213674441 501830992 709174230 977033754 461651743 359073720 596068388 549890538 222338231 743342238 575100232 814483155 486763213 601868452 770667799 729150717 272009843 519123921 909238964 962392091 37512834 296278628 750846149 947903156 883516233 726466531 268884604 542370561 234341547 47702875 859278394 395612080 357941199 443634305 226038202 203870037 970459244 104154144 668615560 662103389 896668517 570457248 111827605 621078638 52175644 508062618 643375706 501072649 930115740 889646596 237932138 970755856 399138276 382946917 273374945 400737170 270742269 482678854 958727433 334127106 731007356 403760714 58766040 870530893 830777888 46465675 47053678 157353094 455447536 683421625 650570853 351580852 481937240 969804431 254602816 706721139 890433427 268409837 528311069 783278765 705877493 659983022 935006097 644665553 749373431 175823977 580621141 614003672 613968140 28018725 568321161 695549308 264366382 530089056 403343325 581190849 295073081 931939399 560206439 161081369 68668112 36994916 592282646 609120109 131469045 309994257 221241593 106894794 516004772 174841071 92962897 305841601 469298226 713954109 625534344 471842552 589039848 948104372 612658053 422395449 4539732 897110037 10249648 451865952 317046264 61034205 493520590 102072720 811962915 569016353 478379011 981328129 167627366 602383762 190356475 240693574 781065717 492238346 257505484 670083638 434306933 466043392 851249671 517269738 712522245 487874982 651800569 671726792 713480056 160561598 328216582 1421441 781142575 844380681 337186538 46503082 587149134 53850899 152595435 680399512 516620337 32248493 723092 595817627 911877980 789802884 908477485 897167230 852550239 139980418 435298224 868696633 384747387 433048945 810597607 336939256 416566346 246574093 837713846 551224728 412632497 973091919 577735617 480364989 12392665 82976744 826348179 768332001 59177576 640935341 749452350 677647520 812325260 95515408 104492192 451777141 957639675 695931035 475569699 814816750 748776374 319955862 184304162 269487749 793302948 972893362 224291205 473225321 335692595 374424489 160355104 774075194 228167517 836754100 17514112 261702591 868841110 158169420 971388780 61599349 196725678 905901612 550146428 323372943 915907996 58092888 249631718 697440407 486706130 651548431 429477881 872314804 905625047 98371740 277368087 35827819 165000621 647965509 129408931 803611843 106631013 893696635 543156979 444021549 473305721 521329653 406580913 120774314 491799363 37483165 179874304 403856025 650568036 483967925 289713947 185611550 416881284 661651967 254773536 799252392 500837488 479458402 985270040 689068597 818923427 942940170 988086560 339900163 913967004 369621659 685738839 970941508 141178408 565800730 165949615 865896319 430235216 626846730 625895282 638703748 555367744 786958291 410930474 34092295 108374866 383975848 267196359 318746441 964106573 222200252 19089960 737639811 873200727 455543967 390669050 146683133 72060344 629025539 211642233 867437837 488737798 129945406 703643661 977076036 170503058 377062520 499726844 633801737 574184433 713057932 748560506 145225819 842842642 805003527 27720916 180750892 785142953 571454964 529748020 241581629 821361593 164796540 928136282 402788968 176228650 528810982 575929766 502912249 667438055 693874396 599609702 374397165 605537729 791529139 48838849 793552904 681849663 405802190 288119175 934685559 102396863 591085373 688672439 36375089 501025383 196288900 957514449 428222307 36851799 105235043 403478144 441039692 519160967 869739671 303852504 413148394 227994345 353833534 925678430 481097294 465442156 831471184 416449049 271641257 89441811 384796632 400333354 718910645 92423734 292390721 164460969 569363295 934883151 674619480 631763746 927195388 709781785 824031280 680021992 295740910 143871654 805938052 125765546 674558768 860970459 788609895 187140878 620098422 687826034 942425885 51878190 553655868 744881767 146776905 808125848 597466340 306098926 305270344 71463935 665354303 611768216 804973739 930100638 209555285 931961061 50030696 638758158 981653813 744885052 535309706 37714186 978200209 972935827 62305132 389907622 347817021 456004061 810360406 275762936 97667845 909769119 123413302 874617727 689311465 8392960 482468722 698664886 112212715 709020614 583677741 118243091 683580141 353322197 965190861 569705935 820517029 188444206 68962748 450221696 733399067 863511799 315434777 535177329 975270374 590120955 40565598 468576991 898852520 749552424 701796758 402949211 613919744 581829819 156526917 421461455 141910868 149033292 945364739 614318587 421642059 494061524 110913145 745730040 265528510 450462284 44132998 843219915 499208619 583726375 153927183 747468352 570288731 238909733 3891872 495615575 338629270 960123414 407922458 420700011 345901618 738265265 95191215 664882280 864866614 578436446 545517676 662733064 437952529 684986284 430807777 872183120 936164833 726729737 283478736 681733257 790255201 678118464 16459602 604834628 348128193 816147646 984647960 669831039 462124045 85110636 251440493 558430052 408380653 948271691 520981940 420566588 443932057 806457160 419042660 712702233 553872290 532947868 362338322 699031001 358589061 896003170 18946616 151167601 638997720 758558219 652552341 271352261 235150187 820501412 605496799 616294646 276723517 592469018 7026927 682409839 336438602 325379034 430054677 286668891 476983466 122811095 872978401 216306836 978474561 687643234 518889432 646815562 139931513 867401314 162100974 536427761 877835422 147078936 957816924 20152260 281568218 910394530 66012169 858310071 261616804 406059109 412351819 128484518 857064031 49099190 388835785 402508929 702927137 683617586 581483331 684533699 630143914 360977809 779512642 347709763 23027729 909134773 900553502 840973397 459334471 567194702 502566535 581210929 295094654 575104018 340236266 676611039 197697448 860964178 417892192 92393262 59137333 978866713 681899464 642839623 515411023 93934214 245633908 701186165 234462782 423751817 140533675 540927144 726172174 26229404 469389316 316708944 830245668 229987889 943998223 647695081 37284061 715438825 973263888 421718276 287166968 965874676 378308581 302204608 471238881 553880534 577353021 369414882 477088461 744879355 728803374 851546051 973169659 756401825 600028123 916417969 2328970 841759322 328124032 51171023 159585059 978845023 785123475 547333057 336467707 358956879 302078128 625983986 785738748 627774056 506573092 636212544 426390567 348478919 427088050 907024845 17282427 411466146 873755758 490189738 410589380 979683210 547575818 138638851 120311066 454571138 878440506 434135283 635407247 967709599 320468394 141884326 103217577 377725954 474330355 814395601 459446948 897358756 935761458 42387724 589274016 801144198 508399377 710727451 141182220 673568506 357339337 989370546 551058393 926383222 8235793 682479183 950357327 276883478 245912900 657289883 750578078 618465677 344249216 259278145 555618633 984466314 304266537 174062330 885456287 302357317 441347967 870331200 846043840 482641341 195419583 241773549 267759297 616858012 165062616 952319738 974275405 854240651 647017622 900356881 874996683 319049149 962057102 630395870 687942242 370173929 276070470 522401617 858781566 128981872 262433877 474952388 670762999 401494104 327089227 865041096 567791739 438422631 353052956 496027543 721161967 48880627 599110965 930396959 868247055 312415295 354597755 209814437 107938191 687568738 905401593 843364920 479576010 682942174 718253803 81871948 838503575 203672067 399137353 51329065 63826351 527058018 111032289 341543529 777129585 928346449 384184012 715097108 249771165 532677201 571239270 546007573 269757670 877631258 645710658 154471088 891137541 829546142 234301254 262402640 44984385 830711443 159231673 952669492 243376777 743318182 918768492 327971219 101940161 870848783 632288079 451464693 507393074 256360014 577549875 526262996 138291873 209884951 393930510 231213838 960532879 451307508 185074538 37687712 502114856 474613506 404721 731506523 464913455 156849858 936256861 411450626 560970822 662374526 550256685 637729265 782294300 36004143 540289502 382122896 101622568 299400989 275561454 904335807 518923117 566616481 752907100 503466549 984182044 376366582 546231698 812260802 31904361 154018415 770635090 138516026 9267557 453090666 871238586 865283520 658266961 682791180 977032405 328202163 376701298 235665494 597327744 582681721 870923290 220607513 319445513 863614123 67163457 133199774 161005458 283702177 701154939 787175113 460498523 547162339 493369666 722744605 841048517 570717683 107714069 138235163 656428670 682669101 28454922 426716820 231590301 949007042 773928541 279032537 762119567 720296029 721718138 159690107 897651279 942480829 469709337 466914943 992274390 329777711 478141129 307434618 994230950 375726327 754519146 929419999 318621550 817549576 37315882 892628274 222193243 487661957 288741972 868885454 887782908 750391333 125598811 161932376 496191401 483615489 270092478 284749073 118201446 567920383 508412596 575698083 740205951 865705894 303608706 899346886 361208705 667327790 142276349 500508037 287163168 453161362 992567904 277964035 152371857 551321887 941682309 676724556 868478065 99223588 920280416 524409274 990161591 107898056 31116932 278831953 447693472 978766057 798612273 306550247 407732703 811555420 859448970 612307171 690475481 569786763 927450893 55364509 880867353 576044845 210836673 427578811 375949273 53882982 896259864 187798320 443439947 932915465 113047637 168675459 95794190 639407309 80702408 857941126 826681655 904185130 237239639 676464975 664363361 896541076 516918032 179955263 711567775 807467482 811353595 534787988 367750898 90540954 489455347 773117440 43785465 183431277 997004692 861944022 513038294 792242745 464414364 451850924 816009095 931654476 198170743 310304412 233022427 786969511 688050993 568353679 381357445 814095678 192742348 832911684 493780740 146104929 489297673 892373380 775632877 218186048 944511194 821039911 599172780 76130498 173232914 20711366 860395288 184005318 479585318 864735496 909476081 276469598 345069218 312082520 479101843 575380101 113002680 986560928 219462338 191360616 147143458 751659558 714808682 664805008 894469460 191409146 417622425 294079563 67904938 520173764 121258905 174994389 637529600 918225321 583703868 376377942 413554377 54017681 711490285 311117586 839327513 662428165 215498694 168487789 909330393 877333040 836589764 711547629 613926500 547922067 786360846 259257575 732809039 858220294 150270207 863410272 593326141 464297562 955039841 865853246 570628056 340473368 812192816 724949091 226374345 316769265 508605021 572726791 947115773 749430955 971694165 634949004 269836727 219966061 334243499 51147013 708488395 948354490 45323333 586022163 791450589 357988330 578577615 204401797 294027482 729487153 199249373 948385980 313484998 706243744 989079986 899465445 243040907 77398439 922900029 454733683 856705941 549747746 51989199 676840733 572143102 771154103 77380705 71955094 45926376 413400572 700834902 971863810 298981909 385182309 260997056 860439369 331374581 163851291 770338575 434520627 84428313 443632291 628374405 396915394 988491938 379177758 766841660 65014668 777036092 294540383 660691738 418158865 978249615 625650879 299123629 38916473 875488334 794842647 905631670 393908922 165966002 129263382 958730525 997221539 421899363 342054871 195177720 672333200 119847760 219524579 499818234 824063707 184535084 589605355 331487681 320972405 629848864 436118879 876480726 798276769 102522867 373150746 66300894 889793896 567336287 605266954 150450194 244297322 25952078 737344134 48675840 587476014 692305538 552037014 469284344 344924028 691351847 816853121 473773901 255767262 620452101 477786512 918920890 281358318 221894031 107644489 481938885 509467884 417356687 452163900 813938161 674891507 130645638 326425067 293139369 570437216 37208511 30569849 243706216 66341799 91392604 984866811 196379810 649695191 761464509 645009151 611711451 123822726 802200256 181461488 493657557 85947241 965844001 956725990 369727645 833924175 923124545 780701128 247236569 959506376 169294962 108241061 398091758 210418309 564783920 719085712 747159829 436032838 904779088 276134641 967714740 555660459 726455101 186870574 680285007 946033800 973117050 834934136 321532620 971434958 753350050 843291649 59664142 260940422 923621849 154279895 317551989 514966585 180581591 145071434 847556812 394487966 480578034 874831618 908103292 495741634 78497593 273363098 707432439 265777364 447025926 219433108 382539588 145225530 775063974 580000579 876753588 863056350 109548209 247421121 949055771 169559980 161178212 656183129 598345961 734626426 374113117 624872952 897352308 982953455 433355879 268498246 379927395 468393366 639650672 357912883 873022620 834728263 469952261 109481033 710820816 816916133 722632994 482944996 785077624 994176436 491868628 351620363 815745971 605960932 587893763 607485909 640517599 947853178 871704924 25488460 461648271 881795352 930169896 359522834 983193573 287726092 215200396 726173032 651829429 186782299 853229923 854575074 581160576 37949526 990712695 518014896 472442068 640941839 974223784 960336889 610990472 543384518 990169463 721099430 290366033 229123309 73376113 187487738 820940791 951651297 650629957 235985203 745792121 931793348 200795219 426606695 706924954 665986113 788488633 561340107 291322018 967266045 951463100 12832263 848615863 403505809 140712891 458400170 906540025 70294507 152343601 692062973 282676141 827088946 800935311 150540983 748055920 180034604 114050172 166157285 558556796 173875072 447169526 965514000 811862253 213798547 992010600 704457167 877598295 897706854 89327129 664798851 424450434 214560244 954701346 101769650 113042193 359677742 86403876 940053918 591047972 507385184 801026761 808855274 215909080 480905054 897294264 976514477 118093011 725482522 696816473 210905343 726305142 750841109 734853145 577963626 663181929 544377872 249045810 443201980 975946665 685604951 5462551 215472316 887894919 646951627 312479497 614031663 219409255 762821857 678611089 183939431 135819361 296037512 440591630 491070710 206837183 823204742 594547211 320357631 666266592 777994896 501062990 919757499 380387936 413617430 894337922 886756480 448045181 264702881 214831402 168792422 899079634 103171321 820627669 181546513 673896294 531220875 579368468 827246286 932447639 614793579 349512263 477905693 3682108 620655828 634873336 940126097 450877730 238772504 404351856 313893336 356282691 81180133 711420952 763596653 79292211 580660264 706836824 114878836 594350605 312995923 215644346 988101719 190326588 259890634 964616936 721255827 624838077 671388776 800890329 167954581 994483770 310556102 28002106 463520144 237139013 448631479 369920917 712008015 181819826 162937078 864545677 965297826 994597560 517288497 378344823 597787708 210623850 478036806 862547190 33491207 802541638 747615067 862674208 585164038 273337545 720699703 697122826 380718622 271612484 550823169 95070060 585207826 567351689 347001843 847024871 955240335 754715300 10482722 925408888 784336278 953584246 982311946 648022426 139888620 503415143 952270387 262733309 853091319 531135588 978040216 73421951 438581364 91545435 68240704 340002787 579470114 686487563 39874805 457360089 395582929 762703980 698381287 44457497 463209333 803360283 270750334 346832908 800194371 285304164 755551718 142931993 326371425 17410472 355735216 306420091 316282529 905373396 137187995 366592127 533837698 431881882 713425450 677530219 942576917 294981349 718324471 205859166 461441774 564413080 764981806 987859987 178168361 999693896 298158200 738248158 180484271 825197040 616589175 985462095 483100936 76783720 785876739 649113205 992760886 630734400 337667263 362335952 558336526 793761042 201098967 961668364 426565622 931168357 291492681 349071515 259613914 528601156 791968762 393023956 602792858 696091482 551509934 437551910 398853028 490008390 208247714 496643286 406551146 841710162 385643367 284193068 567976331 931603958 197182664 79873332 213724356 127588196 83451470 973851225 28321177 242623585 590041459 999764183 87074093 461006909 488935168 937141842 623654190 709518506 186592333 992837025 74175431 726935368 453940070 591911322 33303320 704625459 886661260 276582587 635562850 141669162 918025105 202314978 196832533 822212331 198769798 684827875 367029178 292072836 622123355 848797109 420874560 341261469 426636610 182469747 790844574 241402855 137806086 168567159 456356639 840019478 392373417 166616724 164159062 97478576 834428229 474658890 444974908 607634356 358461523 582755841 865577668 43646083 201419376 723334202 654078407 432573934 670342332 452361583 711639305 375926315 777890927 15543682 562988182 41588213 703106010 502340279 382125398 758204982 167122566 510395847 980703804 724756591 109970366 553256018 540535129 526435543 582769025 416993945 505182800 300334413 456015960 60474543 475464683 174351924 65704237 127708289 559822990 153962200 451038193 350452984 363031848 302597618 683056578 661087661 401886407 719182426 443762215 344699043 126749825 847062191 212950940 615704008 956981023 607473118 323525673 127995902 579187112 458221710 28903731 280888265 908272166 183740 694059958 472397983 574250063 301159638 189709178 657698531 661665956 601974452 80235693 182479662 919684547 332726114 853954710 87910867 74829564 208916255 101492128 544193013 826234038 963127292 679041972 289325562 218967891 454254040 916379254 792338208 647604749 814257647 648667320 492338180 658232629 701949676 110889633 745767333 491163676 43153862 402406183 559454784 914322864 160114483 191994479 849366027 864470898 54577685 385791992 663419890 648810136 401766190 895289816 328258634 143253911 997664518 299030389 405401920 57873010 427001128 20381665 142718874 456681299 866101285 74791080 376096499 68114469 602685026 522272717 92217898 318997873 726800049 318103652 431735721 358473706 999492410 910477029 93171376 958222733 123125041 52114404 132114066 303116723 728554331 739506431 841757907 20361362 491640897 945445120 17623125 580274111 723964590 153594241 192922293 979223448 549854548 882719911 758135410 938776757 644364147 141684325 699380515 263538343 657346260 152426163 650994123 65411207 409667626 70767086 723469741 945089706 562278891 927177014 913309260 488542593 503529358 655217568 371000032 154686272 851365076 738608374 991177747 432557750 800113593 920446797 627192491 408002992 556330193 18331222 153428236 516416530 571496455 566530722 154842016 6432043 760431178 510221684 46808397 288868985 996371424 49048952 362348442 344709111 698740448 139347536 797040597 625125334 716806955 454146489 969531584 58977683 608317560 779418957 861840504 188936734 240820034 574390170 891887359 312258264 18011848 415610785 425403710 558579260 841546866 843533063 605248474 353904084 813791469 307499075 597289234 13414544 907120235 830443445 853856005 604958464 368402518 169341190 26236526 161430589 177405985 613431990 325325845 453241558 825119421 183764517 174622532 288964963 818174687 797009076 737487988 56945492 873059393 619552844 138510508 334343671 658855033 579894854 243144422 887770672 850218703 280289444 393082917 342288175 76867011 419393040 355527613 873017898 7347937 844703718 302909821 551108117 479827576 879951611 667717649 514378324 32170509 871969848 858184278 448498762 241257913 638006259 503867320 716804289 194108699 636173150 501365800 146398702 143977766 399757040 261411838 209492994 92495743 656298213 822948695 524719603 209972158 773184723 935992047 251859491 554676990 896631669 284215852 461311858 722454646 686273138 374768370 562999681 659933938 346696227 595831168 645517746 592893771 541307296 215300061 775154239 332610902 826175513 895274330 282255238 430495967 909767992 18597838 203007115 906815115 971680926 810183957 170472039 117189664 11923980 926065980 863332705 504622422 497541706 331229870 614237193 889859356 722412277 691722320 162322620 246449636 226640843 147525362 871362348 998657287 941597100 370169127 668122241 179584874 814301595 456001368 555552237 134407588 328879936 933343635 619521548 18280678 604696776 754988681 883943720 788018984 739583317 873678332 751452467 980861827 830148801 228569604 39972227 227505235 531340485 548647421 191404796 440813855 159344276 136862604 167645807 515253217 644132375 454125577 668634971 641798646 74868515 179871581 799244335 33069226 756584164 206592017 664806632 702839184 196578727 566596908 326967764 87635491 796307618 780346885 89956008 414680049 73438264 237755955 823016894 714630541 967827874 68185977 866839943 779939201 96561233 183207189 690081747 71477517 699453701 837685832 590190610 57438789 787436692 311171506 734949249 827138553 591036970 950032808 906306493 825506470 962727222 190459355 71991231 741684454 573296361 153214948 216919640 963567658 893329595 222740323 926536023 931362988 695098698 522602745 304087093 616943038 542508575 271904097 94421410 340281230 541913787 284614250 95585013 983833007 686028780 746079576 292773466 227628541 248338155 590819167 224900337 219258904 179843207 880106345 269493745 591516128 582319086 717225992 837261110 69741571 6663686 577062610 164246034 616581388 33860971 864741135 587426389 690343442 592240600 761543084 287301994 607112673 202751588 691366103 472120504 9979633 449147454 340107762 381123852 175680317 380878575 587492791 511165146 619438107 355284016 120891768 830405514 931943497 895638175 217607339 862083718 312607094 899678473 24551180 456106428 816130963 756007723 490555176 824790066 853100786 260060379 104991450 526050984 463051981 29188890 814247857 780333135 122838483 875953980 880226021 946554927 407812933 316813872 115990345 719321335 774424916 907262410 276360113 813024679 682164512 893609134 815698697 272181470 947534302 736250735 466389689 347532742 169933292 586527356 118790633 961062622 346275181 213616358 127580106 244699690 747971044 332396114 953742670 497264920 430971351 405992403 298798733 876527237 695190571 929685518 686649446 591530585 887111669 369439658 71637446 892923203 972541604 416956534 661774750 450121199 747488957 784590301 429985978 487761396 13116399 28259336 995900226 73418312 771923427 284517647 156206842 439015318 446472879 829985214 589875672 628234673 917472014 97468226 827373285 898530226 895297277 601305210 239687367 16839707 748337213 640354627 413521025 583598403 635642980 225094575 493704713 981100344 902401803 872654045 784759780 322395913 819909043 785090255 86858762 446953463 33044437 194320772 66414399 3042020 926109657 618638579 335227004 666794331 793016772 562355925 873306482 313362900 748388203 682831412 147263646 172326782 559490504 404194382 876424168 450956251 152018155 528067853 180142432 234008893 323387127 286278649 253000069 76436555 26810739 201447992 585819074 9202596 294267680 438695461 182565532 586062841 996703599 60090378 240286076 2150238 324390812 157948951 472565887 342214981 479765307 65279194 249522780 982986260 667934616 678425206 301660121 411174565 998627458 76527870 46620624 595049831 871461996 918591342 985044223 525629174 418937054 97537857 664191079 50748315 927234878 493252649 295428672 896171595 567828746 731618801 235555680 109319704 423632082 980068663 643227345 563065243 451615854 717062059 159135799 768340295 137645567 727819814 372144266 947606937 317482286 334343436 45696398 555709518 227472057 97804003 218072470 458223145 100764374 995014641 164216348 402246899 570400389 640039135 61043937 323774006 393986457 940099661 485340020 670426250 593151651 498502824 820783568 33724011 48405623 811204343 609706422 975521623 471065901 822510676 793578894 728243377 155692272 349608496 504064311 170362762 559585949 119604995 976475906 530221836 599845035 170155607 139723225 333154010 479453896 988579200 383364148 486000806 384648806 611679214 589293970 7522489 991468400 637371533 936940205 286401360 59568531 487761912 803199323 846620437 926382161 774954203 145891088 277250380 21639728 222137214 186160802 857906600 229092233 182384757 970247802 707145319 354415521 632709625 708649042 680482869 662147324 508337230 729160042 386782799 576338542 400352164 339947952 547689753 816930358 573604560 870521179 652743279 98100715 725314780 774597099 269255012 479186556 888412032 603915159 805817755 743060753 874464001 925014183 909132109 937921564 484649453 950942087 341881442 197748060 892701384 531503462 137008463 190614037 588719281 90882492 694798708 520240455 112687542 147618241 302112542 659229460 348093144 679985616 98180001 636244859 206223942 816505764 182437807 182576979 499512933 69924831 718509709 88914484 357887636 86832465 565365605 830106801 516417522 917342289 906698338 587097850 298909610 393627996 303637278 515778669 649863614 501806295 446038559 490325606 687891742 616221543 615539984 259511599 255981600 248360733 495460743 116743653 936381604 969357244 280290093 610170850 622860476 104364052 183977432 260625846 331600980 695139922 863169707 799887330 333235485 905597429 285576385 774296392 825859895 308038783 285879207 344961142 197641120 830529526 806090247 356152925 831282391 14919536 721540853 812418392 445631839 231409460 973933545 399614680 727621772 473352461 256016199 372607199 716466328 884696545 556782 166721846 741941699 890255315 249922385 237512115 309097084 843107455 254960947 11492825 467831345 127623341 658405283 50086531 458817594 193654065 807260316 932659197 921404160 697295446 514910557 297675350 363818284 598022339 883159080 217789361 501805453 306921576 656081767 135309565 865214235 981884855 615958852 855708213 824207718 612749786 590230536 790564838 992005388 985961067 630098882 290856999 100848594 584585954 717502133 349772839 587128569 469855415 604165839 631804415 669376431 319465944 108972589 969398911 139457215 794069607 539645948 914106504 195880509 49187620 660159614 270065242 260066691 784932020 608784731 450172857 94982168 182164174 379499831 549638572 395986803 81465901 494216692 728740934 770975789 494223936 467344857 513265451 670563671 155242802 114795000 961082087 715046291 223050798 93772890 322381906 121864703 972622453 372415806 551113390 31140453 579916574 623875600 591153678 819791084 521134413 125957682 35937511 136243370 962719272 727422066 209533065 966749457 421873245 767685770 952507419 258402340 523690026 621177065 758977909 340622594 799379863 223454645 177507083 565571518 885184979 703330043 163591298 818311609 303013158 509298323 253190871 972737406 455992613 182710813 969189975 446317751 889380085 598750719 810083363 798012486 20045175 9513296 348911955 398280961 515866445 355134793 497194722 637098947 279609931 151105755 663927046 409656904 531782147 940373805 69611081 252896475 464435260 835743045 15821476 315882913 965308415 653587477 294613523 972940254 569082826 841352528 746139206 620428140 608430340 966323702 391951701 22317375 58213761 230782706 110025219 732050519 355267110 898860688 231824597 700629578 402788761 195612401 528965236 592589945 257311914 764151314 3522411 91705300 357683150 92743448 969843246 410981712 631565205 632072160 639458252 89219991 391595533 980604959 437517218 762372557 158798305 866821612 789928253 892835171 965263076 571663994 837957537 620592484 693790686 295878605 975506561 955969532 496487197 12880541 223041395 63197459 516666046 253686894 813811535 764386838 704374548 883585999 481023513 547256800 97568307 359522116 743315310 550306370 618758796 475405552 313557433 699182425 731391320 799759623 478204089 601227919 296950692 580111026 27395785 758511858 324752419 794237311 659363497 59402959 657067 683121243 1122767 47068195 689271809 630311858 876185869 625462485 961255756 951890697 272863380 285114467 27789681 376386393 509220923 150886548 213634972 570166903 239270802 1684134 649248942 634251493 12099747 277215150 690790062 740363110 996078541 751725598 473372425 526740797 150707056 341659220 987622183 416492712 245296741 170991594 941784475 48245326 392774246 951333943 369333651 984533139 166443726 263633850 31660381 260234395 7544348 865691456 331436465 243111496 302235068 74023175 654378757 996087829 687997642 836398761 818041375 132885278 492810331 637247363 232760825 943745145 104317177 483923375 243276339 653635685 380287564 164314622 105719992 662396908 249902201 705898517 281624159 428323845 395482030 682460189 105561033 460437592 175669233 684370146 331749772 159166218 845584551 420823365 699934432 800690251 528906383 915241867 31892739 592855499 474260554 650559575 764971792 580273045 41427880 317779281 162740478 41438811 285014757 534572237 439906596 265404640 674012697 994968078 746386121 279674930 215518515 321818279 613823401 183425534 688652520 161442868 954254992 744280451 784349786 502103793 788610062 255421140 111313605 832806042 538467054 518201468 998427534 309766892 510371165 317405406 27204192 325830472 539562007 243260944 226790053 131075287 474981574 971714411 248146378 419675234 511876739 259734014 553191054 596851524 493575676 320496713 449993651 693576212 118242837 89098602 515376862 622648564 521438304 585566073 67255355 508220413 958908037 653548459 571307872 292336485 264893819 213857985 183397753 153820440 883537785 737369518 101653815 699611214 176513373 683720477 809462466 84650805 283275765 486578237 24240262 97481460 957202309 470628489 951479371 156921741 659607052 326888431 858597341 442247065 225917615 226559650 967190814 480602755 737805441 531162550 434654363 17162596 128538285 772329428 372570136 98972214 413613165 823411189 931430397 472946621 42491816 924712422 695800147 656664912 808703415 838765082 139418136 238956339 461601766 740076428 733731332 180622046 33191429 486510379 136609026 796441796 177597258 41974553 54990074 16035223 655471637 53765904 441253122 786038704 791246950 976309522 207547131 639225394 992874999 506349463 42942787 775202099 159437372 114020089 531089958 246986613 448097175 74705315 241969342 779764020 318613712 894576770 220205320 622958069 421713052 42943432 362695365 959462483 185182082 74537340 288386997 532063590 1987606 733223333 693894340 977060285 515377759 248401634 748030530 790384438 79265594 322777023 664476186 74702286 85046566 392339660 27708188 818949423 438176750 502226414 205971483 659374487 824740413 491078653 929950637 398755144 52372625 927216361 537025388 953896872 947763347 558518686 338449217 545412513 204685189 453523006 617826251 682678257 404979231 408470693 949392460 253319442 169626917 43234439 604131447 352189999 259156675 343835239 376434701 32408558 557970545 87616135 579406183 171995109 458051467 626635491 739315450 317195206 31918074 672357339 396728391 233649386 726833973 707739715 212054894 808222165 53788998 287353713 951093324 716813722 61368395 823782180 586171604 611195995 988205448 172755963 967160488 734848189 262662431 447225822 34638709 292169645 206072128 214165248 25696957 829283355 145031221 11163048 666017425 426739824 923622706 468112501 919791503 177070050 76882212 720705640 21008252 350957036 338451202 650450296 826971799 905132727 421620192 901450205 288889974 958115214 642649271 982280917 139859034 701676124 135520518 976969784 711029951 196436343 922356998 104485877 922927169 93978345 681131634 332534584 7382162 890511875 493782359 887997304 627773005 359426133 306302613 521508661 48529438 966500232 998378016 477944777 230928983 588563016 398994737 965680214 794031640 916102050 548705106 493215875 292629160 58655684 923654681 443734215 360023862 568804176 890313083 752549826 446624428 203911285 465039320 274253517 20754912 508664716 252300564 757676954 895443826 128368148 285643389 810232757 454874998 764145305 132656678 354041918 268175002 725838536 997932161 831024482 754351494 606856791 906764131 857294892 834142934 602022016 941921589 274159455 383753990 167520224 497506424 293961643 68293067 671881445 950764498 965474012 941823071 421779032 278269421 589015621 768880346 529147718 212793814 472010243 127565830 37377205 564005029 148319861 870534943 386726029 844673002 389497682 439619404 970337733 249357780 623772767 780291094 708219732 84809873 510220786 849500394 616309957 876059360 812068704 227107866 468408776 67526046 854119060 764426380 40896200 476998079 887074723 541851119 286440617 47917559 738013052 197817239 115116861 693756658 569591084 806585918 237682697 803662125 213819997 701974300 22425517 383564006 530033190 23324894 635195466 773710957 766041884 808505183 230404912 202735476 50935080 306167547 477934440 140225238 410780704 927303641 865258166 965586834 292213103 105817519 112555279 515356331 104580907 579243690 410149010 173475265 71236154 467286814 101508877 831087724 907448434 412798328 297649636 137669998 699785824 706178558 956796172 242024219 773178263 826900214 163257877 707500621 305390498 598490029 387314992 222056216 796338098 69033371 693335269 48834974 137664602 29177270 226443598 448632722 111182219 897258497 148157552 122943473 760279718 678467585 778194896 287538613 676361502 877547539 308020803 98050825 303142507 396792007 749800482 920510370 492424997 675768764 247961368 882927146 17371842 329379494 151497250 494373444 403536364 601145593 15675210 711784393 255242891 94085575 685460324 51261336 185282299 672996450 105104415 919111492 575146284 504247588 86272731 246511113 803813370 164595809 156487174 204645698 264852946 480038183 599339358 698360304 81391466 528032361 390777721 90462158 356542559 453978944 662564557 642145133 676693201 821554105 779102434 217829687 813974604 719023408 772312046 215973374 863545170 447798947 997423262 783993478 326136623 25399048 384642367 886566843 943796897 523534168 450097339 790984862 454038660 9940892 991473503 667590939 380592381 23480076 965799350 229577258 292263387 514322122 327547338 760590137 604076536 490015511 617109365 183482013 256157167 35010232 525626533 48023631 518013866 220254230 186653266 431660299 567843836 662282529 664224872 294853592 974469397 511346356 821288962 990649986 199083685 786548172 291462328 198104688 745158379 850977410 946979329 255162677 179066825 865737380 11032173 324636047 824289438 842709212 339864818 607951732 15568160 87644798 916630328 250762497 999260415 214665274 440668201 872455074 686291951 20634620 42797677 175326791 553939551 666452514 337011321 582444269 166845518 136611707 80461160 276987596 856342914 278814377 387861527 308633051 305425722 350801697 108130627 175809744 113063282 759472716 414927616 66164593 440805041 720431604 69781857 863886403 604669130 915182454 151301860 629742972 111932590 295391915 620125149 476185885 906017563 570864305 10939752 401916619 576500913 247727864 853044148 689005273 235790928 747245987 303029616 815199948 664718376 35477046 20208252 83064709 248068397 148574364 973944997 859830148 808501964 123321909 831819399 561316785 411970058 527636982 215993498 848218734 120050138 550407597 323666918 319946736 5555862 398716292 77365800 438580011 978402408 614293311 977188406 48644699 52157898 765937423 863348024 429208118 216647610 63166411 900101131 302969978 153653245 563753364 38986932 63535122 151750799 676511867 427128248 702001672 932476371 291577964 20037385 337944106 476538261 954235660 806214030 751662312 187137599 416086464 728810646 2677304 783071641 195120884 300654570 467523735 483493425 909813666 801091419 895081610 984990966 586360076 18065093 850274125 273109925 337850945 584040467 386174202 18064869 136628216 23022355 577318618 243949435 671055022 18853415 935279342 656123177 894544078 886819590 56491713 71911086 367611345 904443032 704198331 57754846 403803915 687688289 702965975 704650120 681492496 42930416 955803697 127794853 185781747 115341682 122022469 449151515 928504065 769870606 446914924 939788344 6980660 207352567 152275113 312592914 807683658 535434386 576515224 615896996 651786478 91289729 791514423 230516097 972686567 832146613 848613312 582969461 72203177 641557438 463779931 289277224 617349274 588293540 732861881 67752263 474393887 375672953 637615702 492661491 948714078 45424999 269437014 16506368 285500251 362132663 414049137 214397343 642200622 405911398 371092311 818876034 200920763 389669470 617594085 460857228 923889538 382954216 149844004 607383835 286551351 503510917 476979663 790095771 59989024 170838454 197423317 880476693 814618520 853987982 912200703 140498377 274336914 925669446 116575097 25203214 375961592 234254607 297883899 931247530 261140009 2553721 60031185 773258736 604795155 358050077 384492557 947647098 202995722 781733807 169374437 187031327 173233959 240886703 775122381 987271028 204599202 635709855 18227122 590958352 221970102 125029103 605532229 613701145 534026635 406905031 981798521 943216009 283989967 843680757 198599190 863696402 976682209 600810409 967970053 999811323 137104526 279062261 783910808 476653434 901355769 450463327 109653261 799246085 422622447 321860279 399757365 607482204 508079506 498982190 259418031 84304860 444150604 676151538 634120247 625486287 678595207 278094399 633387791 594549724 17450608 912365628 440908466 644478405 162748778 88395487 323827906 696073594 377719721 405771634 904368554 25205232 156939376 131521369 86888638 61555978 172736196 821491988 511276918 831228643 664730686 100947738 519515415 168700573 89331836 667747935 56486088 955922464 619146779 993751717 111893363 858860269 415355208 251197963 445057288 406377721 745512840 293996089 865880283 909494287 241143925 196761526 229051787 266061404 269814008 538035341 469051255 404419541 957963371 830276615 777441213 933730506 756020084 474480134 317219132 491745298 954766827 432413416 752314179 468651620 190028854 432351426 17388276 248784755 526095059 336452577 553622841 699244318 724947929 952113267 220189438 982703722 235144546 808753537 384699144 511944701 285303454 354966124 381242477 613350004 351474901 120572834 362654844 151405393 354236921 64199249 324917160 43802733 997480137 64476433 634402595 584790434 999969668 535822117 637797389 776221 215365557 613725753 638905801 847231592 452665433 906692997 928475096 220109825 586300232 835255412 504883806 761149376 663954732 394674565 853848416 929179775 408594836 370180700 351225949 383679223 193710872 456786896 949356274 429504286 919128986 41496130 700835964 189547833 511675594 643288203 217624505 229422927 258002363 303919455 613301310 176493256 563647576 874556577 80806172 761473686 349243272 715681126 505847733 349386716 184195457 154554964 116514767 649295359 425364067 684437603 956832221 196927169 536281946 870907681 948486197 79504774 237239060 234649536 124421920 415599522 611306025 203689121 860267754 258316875 181803557 678396904 15142194 510614509 404350975 819011173 698102321 948537650 490536206 186051826 589042696 463785955 662686178 631769510 410214065 158088802 403228476 921235942 382863719 269487313 432366284 843453904 241206571 202914059 195759877 180287417 86530439 613802867 360046169 563207219 223994411 492740534 44632123 872096641 698273394 818660458 699035979 606951839 414517243 139335392 119792919 639468072 961146342 218876323 862196665 296795582 494118046 162238886 581197161 793242213 158051496 512914453 670990062 874832813 992039908 706803428 966143032 48939485 985706033 134134355 910023038 566468100 333529533 146480059 450942326 493796658 109213605 69954172 166827406 89649964 996599781 850380017 709714623 75883972 577454419 982060413 480875793 825408756 19676427 888883398 434345596 426202516 737639744 765003323 976667447 705073091 561582286 267746261 813051018 138558347 155440325 611327544 757288721 792786338 484108775 97315704 506950384 184453746 985761588 800048192 855233251 974235139 72045946 300863737 618739270 920057418 844129037 657233780 180644197 341017137 395386769 864612904 953699700 176630035 829033673 434585518 505995055 800999696 460570628 564876662 749950606 181633509 109414668 241839976 507423996 134033761 537133683 148709889 806797793 238475019 493384316 667009555 717708394 668188427 988867841 906575685 687141977 13966585 375745850 812430722 570087374 904094103 491727309 32323214 980614823 874979423 901200347 515422337 509428769 419802320 595183077 447761857 111008649 387369819 516519665 534506662 703092304 171140744 454084935 411427425 665743348 882509126 985758198 905183492 666146735 497603227 938479026 922369863 969452111 989596517 250168956 28379232 880176556 132982840 16837268 933303008 512689857 832503546 592190918 559578711 366750877 973492138 331685652 458785629 860599579 852039446 908403452 293109837 395425259 524765744 425566537 731979070 485652026 357895131 969556833 991598812 928659248 388435522 767133232 543224419 761389629 731238924 840853739 547222267 934669316 279333379 391837772 481640261 637562435 885628937 316239553 499225891 757668020 772103122 220735238 250628304 988221342 839150154 343917183 356736668 830564459 202434518 19182257 551642720 744375185 454719219 683788200 986225776 516522781 456666968 587197243 929830253 692706549 892166258 889901355 379297309 858442576 889749079 53809503 255578632 573731938 356556644 271096326 289699302 528668825 220306415 491399409 584790520 555285225 553688144 58856450 529253083 710006297 371560424 728449887 75332504 825333319 355424660 432082224 554276178 75519783 165040669 220050775 390951017 533853227 870128808 959322021 167748331 133927234 791855798 237714618 158238369 407741585 460901308 191611035 904052925 317305715 949416293 557181227 602779742 429236973 285296282 624790591 487536393 796066848 906353178 985486241 6212174 825826362 655671943 768347480 476549718 562189363 34348856 977185385 614428109 532556727 971115473 832812778 298960270 550050750 589940811 713421041 717349198 742669371 637256631 573928005 5141485 29651370 845461356 774764012 683740890 754588584 868372505 937401920 20381704 601897541 778326297 486876898 608560852 996232994 10632074 750418323 831890622 926925905 642104130 507847895 552185611 748862881 529144824 89974989 890097067 834370448 625192517 389358864 354571991 276069679 183578937 785117524 985221175 957666586 79752344 751001986 153073518 241840207 40640173 360028180 865506414 498483321 411296236 929545926 982063959 770173347 559231123 396453952 878223267 296128624 481084901 212798983 774224221 696056901 30651938 479625662 789444258 946579894 832608645 635028179 937865745 981187229 624677809 766093534 701803765 444774465 845431728 636417215 757057505 449516022 833506294 316810987 17197839 706439222 228450071 322103119 44536638 297178381 831956743 665240945 294177974 9478151 228302970 96292253 281762348 665571203 987450814 444425759 791744633 998057187 303446157 621734020 979850871 122182144 549496666 820940898 936535598 764433212 426111767 421099989 535999356 303023460 817655035 561232466 845417084 972174029 297413679 953886541 949194420 472462275 713131662 774646835 588980402 359224142 125267876 604862876 487220641 375407613 213045845 738710683 53310898 412690964 538813626 671015477 123779765 704860247 144590078 290138012 111217642 199662354 993373911 301797851 199311687 150820587 4551691 976867765 588851387 796489574 462720071 876051327 285682252 356704127 697829684 585779483 989296971 681740638 469095489 223289517 371717905 298922442 253065849 883055839 189890985 750458681 509305378 759160144 501300040 564019639 142182932 674773695 253116842 831486659 581466361 103858343 72801781 160051634 103338556 290582736 673948485 202347174 265799000 635786228 682690549 618738305 623161965 646060177 649816576 123396360 906192922 310512212 81442524 917034590 814034658 313029290 707057000 527784674 674547641 505703819 895237555 274816139 742476098 692901927 986468078 957984680 416931258 889669885 753260533 687433651 317924118 704024129 613510094 615284593 102740856 108715653 610058518 634563421 561028468 726616612 853773907 220426650 532659788 606178263 576462438 552301747 693940544 37616075 141902469 699754743 619334159 574991324 975519813 452072430 424908734 845934191 344962635 761436222 230604662 286374417 461120168 267724294 241265278 468066976 321098852 715611768 725361203 670864324 144401647 934639836 232196174 735240740 114322095 106572683 772262978 918914210 699401729 121514818 388069765 532848659 573659757 680701719 755339501 293837556 422422375 71171959 580401743 244082606 521676582 412952948 444492401 148109941 619746445 12937052 931939247 904759135 774076358 681474239 190494271 236884469 251151712 683716362 745180732 596472377 265842588 875488046 158257669 586860983 145699181 159789432 888113140 746270174 212687835 408226788 392923491 260928356 503378593 158412394 965172883 138265042 925417909 571095870 14306580 821838012 370199818 689061835 957324865 793727427 185709193 633841936 300849798 586866800 251685375 890847668 85543227 513236069 324031853 401445332 311011934 817120808 102323145 355955799 939218183 356664971 337140256 966181428 691986840 716042915 621121046 495649201 639163512 497511575 778186486 867333638 6783618 538388898 762978457 255192353 557263192 268842033 919358940 172596290 89058678 543583467 427248903 95656718 926203919 426834271 966255664 959840924 403331432 498183983 887713800 233811634 285847908 599679377 670556118 839505261 108181439 730446732 375168270 31058936 114182294 967764498 122156242 714089947 630183734 246025575 654341522 745272234 129880769 700069062 886086803 582553521 728872877 853731583 581960109 450408099 776975311 570578210 763804504 868498777 530487454 185498227 865162042 569454639 384696979 134231336 214488676 536614377 517918445 358842470 264157877 438349283 474736182 232177569 216759416 935358524 421517403 635349397 271487529 379210829 833292380 240264288 232180306 307456621 472258814 890830185 94083741 923923217 461509955 939050661 796117477 890010961 87748649 473793740 879325863 867932205 143341279 947732579 243719334 889316779 369320418 934388258 706934941 106740336 93048954 788381658 807552861 940953883 191795312 388595697 548697610 784284186 604494914 688994379 280185227 489991207 45897315 509697256 629652396 352028461 744000618 725503478 340140985 697382872 648437204 103367754 655275477 389967665 80349739 134165554 457973424 303978209 513817832 868097806 654282648 536533879 647791369 696063558 613737561 479361976 735483091 964768831 542831544 681279978 942650807 686731493 760164428 851743156 477913115 542519706 990660724 151547110 255720291 588527967 53878347 285564572 215416243 810901217 609246332 946951737 428886457 19920126 3543037 614041350 999253147 742265750 460953425 994332316 107064424 908465729 997545887 911874366 689399033 377740625 839402312 228362174 638767793 279431745 984749523 111921130 134873414 596533082 79013687 87798030 352958326 52389541 223344067 556626026 448306765 275675186 185847711 312821141 892105553 724797523 318921519 942256198 575339363 864563835 167566648 751683298 913280129 646326840 618068825 465758430 439983326 929767699 710047638 457983691 438643971 844579350 153829772 795263634 609416175 328515596 473208158 868517517 28965007 13220072 616100367 952912716 850040438 859270677 290068915 692794757 303415133 940350214 823244834 967611628 665623810 97829128 191129921 147272144 789455509 923745900 282956675 870386008 509494251 247885797 463806764 393320768 12665825 127865926 296018103 88540334 640251146 223878039 599661860 640529901 674007679 112042867 105264749 630556291 162820816 55406830 489722262 115849048 994734981 31927044 21560811 199936387 599608797 147201957 153170068 494110423 750436532 929068916 579852230 749118098 696124348 531212147 912347883 229504285 352931672 773423564 418661425 98822158 646812850 441311730 129934964 955724516 611736043 221244222 484057383 360830743 974381346 139697287 105651525 494263372 491806278 582612352 765786046 602742705 388008747 428875889 241450901 151857746 740999041 778635699 940556383 116085940 571003696 404186755 85589115 237190447 921169964 396364083 608437632 685550715 961213531 414967985 590226962 610857257 22128647 32281003 539036288 366270336 432283481 199493107 349196692 864858993 352394701 814134691 627193085 668479032 903293134 628909348 208005326 880063001 16694084 806448715 492238181 208073763 120186525 134428522 243333582 552118649 549177538 920920841 414438521 521409349 459559786 578210089 368836192 100875479 117026305 802470521 214487525 717595935 693269882 593761789 892275517 271796265 435680288 710017976 74367252 547846017 978611867 252594488 905689753 80132780 412979182 323905987 311257258 98201498 294943470 306269542 859942327 644603582 192945445 347865635 574629624 532018162 323999789 110429533 144249331 390346870 912099670 72248825 831336866 115526738 53858468 909458166 588476863 528356131 167359380 431821750 181754920 620950065 832218686 880552246 686636648 343210373 732070251 299250826 301578319 661362868 901438073 873100383 678690584 110772384 984082274 7545692 97438977 900228629 63542783 873064317 976301983 998522513 123176032 469331998 568682712 558870853 233511485 982639691 156020367 952815309 510159477 555359438 255468945 557332455 418098056 410218116 642049903 250872853 107653049 146429160 9673444 404286461 445872229 201386129 290921442 358837444 895803597 13810848 885894835 654772908 433910019 522382077 435333168 215077865 296516257 825481977 869241797 255735970 905743616 691641533 434541079 593654218 692832435 449444808 701577252 849243236 340886838 777864085 592375398 13772125 509501565 78848279 274039773 738290204 420615261 291773068 44170953 153741012 82039876 249380698 302938914 100217257 838588641 73296477 797828364 158471563 241739532 226353862 985780330 299246624 692663644 225720326 972342747 569301197 547714345 156187479 580486956 35873906 599126181 711345759 21795546 800161470 128448660 962319106 546169330 507369160 399342725 493964515 761900285 690842736 108905052 465545118 74400857 830914313 896518638 164123786 562071290 383877077 272132212 857509335 333430858 726626807 902200923 20166250 961335265 785980231 828960772 299306471 279473835 640599544 136613356 837686424 462527549 592519895 607749670 45066185 871066793 322663462 92547170 861267778 970152127 926905998 176931812 79955924 150837473 960226391 996754462 99326652 789189202 11680369 458477060 48346708 792189986 482622429 784300804 688546079 151311064 9323999 392390597 962464806 935695788 564040167 16920535 89240292 853837855 331224473 958907647 767300265 327534213 545509751 347645410 2074539 90446658 745361960 982922230 968312606 577002571 485343216 223978434 565091205 893809606 135293128 384666548 407126783 542649833 678322235 278458748 406931196 606613492 80577095 396311811 652213285 6644236 393222732 224655741 216708373 59250768 12245579 172208824 698199967 27918448 818389535 341231651 762961799 355131292 172951209 83152045 278580666 559738953 119378066 615306489 681991104 711438474 745754281 209045411 421851312 588834487 533909126 779378730 865499519 522795783 373441846 980734988 129948927 599880378 630416079 923048895 242384094 304991773 589693535 443972306 345628734 151876906 803821459 534392540 418914101 151054665 753250442 784581745 725680061 109390710 677624065 767927700 591188891 834828696 234325730 747516479 85703523 433275624 599078608 702553560 445127619 963549631 518536442 720316696 479787149 161077803 768352711 142034303 899085005 171509739 993798377 122617134 257862670 515403189 442109760 407707260 508535799 635361158 574342820 194046106 803547173 743356117 437485518 302054451 738405859 644112122 141330108 903587885 284567886 966675044 496333149 273116344 756413704 591689410 781892599 346107911 132659026 643916122 939708112 143579129 353308858 892211221 398457463 699994203 916064535 14453472 109793547 54867794 840142900 550192188 74879278 632281846 936727431 393240777 659729031 834097735 385132856 292988564 161383266 986879616 361541861 450998638 400485621 281127570 577326815 978887410 740216610 18295584 159171140 968209946 897666637 418932335 244014583 771365862 64217585 414392875 818302148 539225179 769017516 424890378 866206192 904994079 557433286 747800473 976538044 314151130 963991248 857538924 136792956 197388853 742894141 71094140 684290931 854521400 887454272 679113669 380472093 548223065 287613272 652162145 259477176 647884113 953630825 181034217 638320250 45291430 543873498 751172075 560179192 493815277 590293939 971798063 202991777 822587327 925299653 477847761 348144937 347857455 809972437 975548396 820950335 298290842 260705983 101129608 652838813 949664283 349065477 769941871 957311691 673934309 67048124 651198969 296208356 685772238 238475560 68419219 122916689 672143389 725805161 394165441 780681119 193034792 2642539 553217410 88389375 40320246 206556223 201626949 21439537 334291879 476321169 257110097 350009319 482731957 802469408 885374921 39229059 284868183 657081764 439453611 894096249 725028933 94502574 908487624 583057241 924713810 958975490 785883123 641803793 90358437 795467880 823486229 973637574 200584862 84850786 377852709 181713021 428902615 50410271 108867880 698172365 755451102 18411480 323130914 159737561 349639928 982150359 385645800 112891827 825438795 427682940 214188255 591541267 913127218 258107722 407496228 882993385 481799748 362603618 31591953 53386070 29414639 751598631 786746548 326148960 961550020 787951856 944671890 114739217 417055268 564190240 852283212 429208510 422964035 914048611 534450180 792259931 824022265 146267904 331076367 125684620 328213281 171109335 130644119 558668856 97737758 576868156 131272135 812312136 59197031 537767240 938599167 649673885 989131451 274961952 782157423 29636229 266408764 962556221 743686204 953255444 312384269 406826926 415200753 397505551 306852106 390945440 481224996 427496445 507552692 633866816 752544036 105820374 905276834 933841153 152927188 126120297 131071428 157664287 759293462 581680341 590025144 137768475 301775282 23357907 285545224 947919201 467276831 637477730 656438486 466924438 691610263 82097604 807245831 387226089 754939464 670065566 883909752 786799426 344291711 339321989 559256766 388917072 798076878 648817889 265091787 670910443 891678027 593083896 389563331 591015353 878118441 888611222 877089992 455521798 856814618 150795171 275340745 326473710 375081005 564115707 107085729 676392797 183784246 458707006 888861979 901819422 201074038 342593397 229794515 657673300 369526711 806840703 673018900 105812527 855342963 560744666 453706399 263093823 963880998 918586266 375589924 659605677 554272170 935522608 318768126 546798696 567984227 254790422 4902916 530344458 673004914 229256771 486433374 93205432 750176734 260420945 430707546 114669967 289321353 883286579 938139059 228425151 263971003 250626416 300273792 297035855 28178319 29288953 120249659 276280379 515576051 434122545 146235031 888354994 367103555 226521094 759949597 71918318 964425414 906639164 625095833 755923598 170261187 710435777 614466420 466564833 513292086 761332901 205858397 405249521 93099663 248312105 994433017 490741084 324982764 103650439 49610456 161015309 943452574 398612073 540651153 629793767 407647760 739591248 389767401 297174387 988993168 482686905 526746760 693327037 227135583 448365497 294466724 168161103 155356518 51861254 518466953 633339798 246797444 960495366 713096968 770109096 434067245 790743495 557733912 379798328 467319497 596821986 970531949 565312565 735864046 868931763 860686833 199925892 440541554 712661083 889955671 759481323 382356446 189115773 897246332 347266958 933012264 846251102 438338966 235859919 981368685 292268454 204964251 828481025 345239249 130857855 242448444 67124320 60142340 752974349 388939445 197850331 88167701 126470075 411897295 462687313 391661767 355357257 744581897 854714753 893559233 893834113 353198567 747827101 736858889 397385061 42176846 32248186 266747239 750777346 247802225 777923469 528915736 361977866 326336237 603709507 746688119 479546754 3782676 927964645 859529756 608924771 968597126 909092186 328217610 180163106 150814947 765266001 999215931 740404485 905641626 870946706 195009483 583684958 44493957 52559623 332458574 840686717 164151914 114489290 833616953 695169873 234991794 989953874 795326045 173676969 963775902 441643495 560102626 62957899 420250955 18723205 943564979 916536738 554582188 859305561 376340059 298624200 359820016 183229557 298683237 756312601 662262208 745209275 23937051 46531323 635247878 581708668 631385045 860394017 43316844 262791180 655245671 162726308 104519102 554052847 470860950 391875352 555576603 64729526 636626054 812589087 275569706 781715359 38556455 549519632 773297325 780547515 10193506 634099882 754028981 970907206 796403624 468157331 714491599 175903017 81603615 65467224 641314385 5211460 269242451 723727811 595440305 446417883 715093099 851301981 725477995 130227752 44081653 774493194 87442403 516365166 917852141 115158035 810402422 329094689 795924438 648580768 413530671 631288825 205911203 841098788 604832438 222406599 228154715 171955423 668597176 4210432 58392287 265125304 882042700 343928552 677610621 430494514 197594725 923988632 728922204 482749889 334996869 464004297 425200772 832296473 644705392 438560684 988509648 697124991 240814335 24396906 290421409 578930347 79765077 307654464 607502856 745138817 346685533 31885132 195585933 582656102 16620542 883026594 406184418 481347369 217783246 301195898 36913843 890030552 508120510 946712822 585583216 101293276 568072430 864756410 875437415 181006910 323558837 191445074 760073981 81587752 687876212 422980939 725765452 59428622 50886243 81021596 702121125 711139343 583053520 419470857 668113108 535674002 947892205 458131872 359233696 225626283 138469169 994173640 963913987 924028029 239222796 456190319 129391272 961719654 70090912 566027124 857043764 165525717 24991491 229120797 499472743 901511807 723686351 507110816 767500336 823983717 338032300 754060081 238005770 351533071 233850188 803330531 455811580 784477432 75118049 474546657 699051420 957720462 99069612 952447182 294937714 563183471 111217315 43314341 596900599 343576940 494220437 516444347 238908867 1655734 833931095 752715366 12679782 275494422 550283799 159103335 706743786 349829751 101365827 793993327 206722114 957113564 23056995 881018501 757957443 853292501 664985399 978240302 750309225 98903504 388846393 28830940 738948515 245120245 482761097 322962463 626408628 728548913 409965676 304940702 165441353 676906905 985180870 520301560 699750910 535038653 952626342 976047127 164688031 399847716 930374127 365731460 599797087 703335409 173318661 316818117 285510631 275521659 371369625 969781026 481738329 225069010 839501785 612841321 644286302 606144341 238939777 722279577 102782532 781071728 59880406 409764790 293646228 311777149 678904411 813420705 613608481 132473342 913820353 645022716 297671336 196648924 166736335 402363250 936255603 810686493 826169342 760335047 483942724 42740584 866347948 940962417 326485664 580095344 573974699 4535352 108262565 4308807 809470993 107265778 324571258 20071728 506141004 76939100 170358394 65903159 886073281 533819967 400549948 126010445 613487428 408540245 986393822 336261178 446969424 634205815 591605072 752782791 213633973 121909662 803091131 246532891 660825496 382856792 105851799 436874801 564144464 347182797 721159240 323643798 306910510 711575078 708204051 697460843 118533352 752758175 196923196 242360643 214567127 634156117 94231724 682279686 916796567 515341166 69154212 213994758 162845836 432326783 601866359 818923224 75521791 157051667 481296850 792064305 226608070 361854866 93541545 492224860 563880973 286076601 998527426 658394538 796870582 217021419 163556343 785982046 467464220 504057086 361983016 712247550 522898554 397780106 466265726 108288544 121458953 257815813 64691112 714075080 82341864 444870826 249699901 513288757 300023071 129646916 168307676 70440509 248291024 445204036 243649554 539742234 300521354 147597351 134443551 295980375 122721468 339314023 81145504 493731922 160931870 787941397 100100517 511566446 10582927 401508345 833277075 360697819 317987168 259858412 23502674 677982939 530281361 967806343 179466256 205772371 395972480 518272317 423288000 443238448 381697273 10716638 821944202 616956637 630185284 783107553 898792209 722252762 437780640 602392342 979899676 580388394 39109723 700132712 550048516 209043027 956509321 361798292 407666169 611416030 956266612 343927822 265098305 60440506 712807577 845452491 27814931 728859654 956084435 630480771 488921137 349155642 69491593 299833437 220574396 127234044 87672835 884321357 841483634 144255259 433060549 932115955 461027559 948683016 827682182 181878642 472732415 628672628 927954590 332142179 904591208 599325530 330843650 719541840 535618146 652170077 147916195 991232912 85856648 788643904 473654472 355934472 231515458 465701566 426897845 27439717 981188561 821435404 749927001 409028688 647350595 35116266 126286259 973076561 145520258 872319874 773305195 826803953 283475426 943419495 298834289 329628539 102929364 112673298 596142090 532204065 126885675 281811471 953222687 904051354 545700399 448689916 441420911 367837232 721796334 415338516 158061573 544571250 813375050 748883354 804269112 696274322 15298441 522603142 32804452 694476160 910466894 472345184 4307961 645889596 400231708 699624618 403816414 346761950 316982283 394689842 416317176 886113102 676709099 67692473 784710107 991242608 2261142 266596210 332240116 609804420 502550240 708911938 945238505 654845856 327708487 862956530 792271059 739548748 368539392 423402892 653746304 386611643 372969057 618116746 636532400 942590530 318829302 424552621 690920988 134963395 75947983 299318837 814377825 860564875 23146819 52011566 137958325 326415865 927582421 735896147 797629430 453257702 421897459 661143995 9164973 10190254 585692308 223425046 495950367 347199810 567520762 955396073 686070925 622625387 855968994 481991235 940391103 880920538 698621064 441649415 63339487 202581006 40036705 534363 553297044 891028195 77014908 855608577 574100588 512438162 748860751 224862358 395523234 674659033 31737875 173280471 794795410 677302537 697592708 440763610 891657892 529812572 348991813 377200778 730965297 661453913 588424787 59865710 477618868 198732793 778673905 996032511 836000076 536885558 425985649 86383888 64849612 920148400 65552305 470067410 124372017 517127044 873960413 954598106 646329686 470957140 987894403 715838214 369914672 920124710 951405609 87402117 767710515 828608044 257121260 735088970 782587730 241061338 300902968 322107681 538579430 212412603 146495060 245085508 457637461 74978922 318828147 529347530 721219452 497214286 797521155 971044233 365479916 262598952 833631884 976368007 957127251 7566570 482051845 835489444 48824834 710629263 822503874 226039435 143550421 371539315 376558160 356128232 199066376 66787626 99272812 476625993 501821300 994433547 765621496 73442100 341142347 573762278 416721491 979001230 25720585 142010393 856766560 614253856 655752227 766021840 870716658 690716749 726115966 826478785 680663396 835168938 641980099 565919203 304523246 587168939 380002778 86694088 717946311 212558552 98732034 760222065 336877213 815665852 64785400 622244916 960403808 38692699 521124058 7977247 822206216 97624032 110597547 966154868 707730629 900818636 550472390 545781731 947585913 220809079 932624172 712565836 453891489 65120440 240510221 85167305 466132428 595247595 288563337 470705997 478270257 954327619 902389688 46151851 906185521 842480623 511441399 224880940 746372401 310041691 744196475 290926342 325694644 751451646 790469444 929338169 60908219 412774768 816281796 707226459 327914566 930456800 402999545 919199936 937186547 383225595 506857436 532759729 81756050 166485428 671678781 965032118 545690892 454186628 770243161 189350236 356137334 355933937 826896226 586703736 224273810 996595823 800573463 670235835 107632029 266678632 471036139 510218815 650863512 2801050 137337786 391635495 743112012 458258988 985545517 385385763 268241649 818511247 838213650 549555239 938290911 634461144 528132648 538643800 132740752 557106279 815105162 193345640 570907391 804743769 241597331 339389957 820148313 714352368 466805767 340318119 683197817 819354207 964173851 339200684 750098910 396702891 940868038 752358548 392429853 806245713 60506739 842047572 746324408 428468536 457717709 809126190 761133031 684432038 606346686 992903897 88361984 231663486 356259388 803002192 496965367 629273216 951963089 624964580 226703953 868925310 463913988 398492928 266653022 919619253 559623537 897878114 400104365 818670325 217877303 485085956 768093998 667849689 11635045 788362157 950586017 801690765 331048963 658739981 657184916 682944482 692134017 48213325 290148251 696155460 405196603 465296207 248709702 80417098 339345220 695381969 70881078 357225438 135252127 653086949 895724093 386375954 733444741 577765660 512822827 469074438 507159950 817427113 573680506 478644541 189462671 90132183 836754551 569555396 904627332 47114832 207109293 742945744 493400708 989836315 939271117 346831302 250206213 468405262 704006195 534551350 273761514 508300834 212669195 338621525 495234960 970955144 525846472 727198228 48824111 706613230 798855361 716167397 759955883 217710217 645579569 350911447 763345763 990886720 97593500 558738161 63700868 286124022 890292616 645218693 313140394 641638723 729938339 794139096 303584908 196388001 679058105 792739681 91478955 435753545 702867352 887365397 403956280 203554151 176230224 618189014 713268729 823787092 32512531 316128027 168238467 327401752 121178631 258324259 394515209 691407774 230215973 482657522 459036746 128084809 753215474 249963158 899099196 371752253 401024313 248670581 589657973 800876542 947526031 822678949 466666756 896774841 638079204 245483643 850908489 204189121 834031609 636730710 389738757 946731392 474235064 794523004 474575076 908738162 121834977 381669150 878254678 70833970 339961690 733636510 852814504 446422324 656083577 156371700 904718460 930051978 813629266 344827062 972666642 827888339 363225397 678764301 974911464 483241989 763668568 91619178 827047503 780109763 253974543 643010782 661057600 470672586 495551116 682108571 620481265 469637506 991644100 368863404 292503057 736639331 859742221 890329143 504657776 666964074 729174245 755545788 636714819 822725297 366215277 458545534 999562695 943369066 540760707 112727429 305322525 681958155 451456149 969248650 409172718 994567590 624543295 521110947 28193619 78639093 273805581 717463360 250462295 867402867 406331133 909620784 531679750 588894254 100989507 403472223 234064553 842941206 2940500 720729752 418498855 674896782 668328924 269355857 937087093 628787750 824128466 390620351 349693709 176441491 250053338 754381005 65336103 573714109 131485101 265235641 612092155 348762838 303977791 793405368 910399894 428706190 497229737 96202889 261139795 8116160 822089257 328960044 714671914 938980621 89356348 88865747 133985396 527066271 23765722 273075856 261882697 710120930 362860113 830458450 24616933 571848178 318718459 729488367 685534243 964840482 84214381 615041496 994750497 422838558 201929097 269327019 247014241 324584037 344858858 59671683 391114519 803267765 878272458 112604805 816052894 421722864 292485620 977900601 732406357 538017581 916922389 397300663 48617351 626225986 121416976 341283069 839633125 326988188 943036458 632935692 575515522 600704622 849315635 133237179 971625589 429465130 742300814 354226853 832197607 972071570 781381261 506998088 723254780 972127087 115189641 655674927 162739274 142357546 361911775 846934966 630636603 487952748 698446107 182183664 429803287 646277549 788320737 241603621 211913501 524350964 924185278 611649254 882483988 977822867 82368793 652456457 466143301 999051122 196876422 23356677 727276647 929185263 637104016 3550919 335080592 274874723 579113375 205778447 761305006 660292002 340974423 160163090 479425117 527853469 398374317 901629071 423221878 89054353 868935343 731201039 148454165 483598588 745975058 261074781 686454605 1900206 463618829 18921864 390812152 914366325 92084013 327769984 964618623 683129767 650816818 12089306 429708842 111879359 949311359 670431290 328429260 994585815 597429122 964661899 439938191 788891487 816928872 984980610 871584872 312340581 384923474 315707540 632717131 254216826 904613830 730951848 615695571 818307093 188187964 903113724 34029521 204400786 920607850 114747649 576947524 685157684 16534735 421696986 775199737 521899299 608037618 471289892 220298456 265796689 590138199 186681077 625646903 709394028 427409532 430893722 286259398 884219425 650264460 223643216 124219994 410662453 619453205 913532636 551044043 658828723 714180274 261400819 812761025 255295271 203648588 543892301 403867726 600168874 115192532 751220754 291556774 752263441 874301166 249860635 200095472 197203526 616662141 360280671 733356654 22860985 168829888 291507440 823584393 778058749 278539318 781898222 644899062 838262306 273843008 111213337 182654 618920223 853248016 323786828 813519512 358114030 624625362 805620206 460318958 510166018 292283432 47121884 766566092 678985835 491453985 670243493 174892542 107310084 244499565 11282390 73363520 540672234 967795909 69463426 648827525 511630354 782881222 849664400 23092342 870083861 349136138 230688140 269772479 282662874 256837712 777348120 585418551 954514610 587842364 834234263 378170119 976662204 635504178 54935163 80850557 6780886 513474025 961270426 923256910 615280512 861753415 244889959 202485277 585516348 700877338 741504833 774747576 253089246 283250736 876891999 740495314 425139376 140791619 623229922 377227456 828994032 825560894 460738642 9204221 968817289 771047502 110564115 544536962 641878706 567643043 833417900 167924778 701428045 854762457 142993159 612960176 659896674 11809043 170938798 768836476 15465070 326270624 676873084 611542230 761454053 34077802 155472345 171953778 790313049 427496774 199374909 325801103 592733540 235923531 52663654 872843768 33396971 63797833 228290726 725199831 510585833 560884757 728827515 252867240 588441781 147119639 712171415 200787001 730605090 764105557 805651217 625767784 492110299 306030958 845290335 120551226 13734605 393921067 820838742 374967635 797409102 446495651 576767240 920877922 597409415 813132505 845315740 855560143 51685016 67613144 688096368 222085123 375783095 69340939 739754607 308848330 812380622 309035557 79212277 460798322 632087807 490524790 756596366 924981750 268651015 4626450 274622589 942118537 445645396 577640467 118135338 207945839 982700084 764689875 586072125 889545286 113380319 36445799 121387359 581314964 201129051 70714682 941705986 647091382 697500006 488052511 109808539 717990159 206318476 238573189 324913842 432175432 671704404 636245796 31130848 42984050 279705272 407041741 250087610 146968898 245252013 521356180 171407095 887260973 631312557 419292476 194829389 505021307 791230672 18199212 602917844 935140844 487747734 308377306 873831307 318853314 276376234 809718762 781748891 472316281 238459826 162240250 366715773 4848228 990949032 519152685 495475440 713555856 377477221 820879346 135252317 643404177 407071635 467810583 331774521 451867954 480978112 87131261 213808460 844100769 473429574 139117162 9025308 663834887 691933660 854974977 691268108 20830234 410391815 224906249 11962520 552763875 484711580 737015209 996257463 383296730 244347286 715515848 187602398 714919971 569297133 667261999 506756358 650387005 179729203 445871555 187236365 902913478 833925963 84877279 126745725 225135490 889201582 990979425 83640865 234335766 576966195 665446965 581107544 546977096 508267858 838497441 554332769 271664434 89479626 784616067 891303341 538355916 968087988 471430860 906948361 851229234 85429481 987535664 918873089 855838683 439841895 775895177 973983846 790348067 353111694 318683128 679189294 11693665 912605434 861605738 192495080 360190435 73890141 180049351 830920084 367889497 494282752 221646670 904118816 566886965 764230083 43113036 668734387 38463745 643666604 593531225 450102207 700262113 346090526 352906281 202190006 340191111 740060633 920321880 111665523 964163361 627296089 970951668 656969928 699118603 782499766 211394391 247872445 705411228 759716688 162780744 299018558 938129566 427649364 224993235 870726408 190644438 393029678 472964479 910801563 922794566 530030510 244310745 79554867 629260616 674587715 748214434 31812254 324680716 415522587 165188400 295693602 644589045 409424544 25277235 662436772 859801247 290229090 851752218 552235221 334964297 246809400 33383883 333160414 645773573 672884679 214942287 731018424 691436936 663704882 38460485 629967283 349283359 621403857 849950185 23243109 362152913 816299464 861003704 203907533 227384301 845096129 412458260 465970121 793918128 439517377 648546109 756573446 126038960 732390716 579988655 792555154 555467738 420351936 777577254 494064313 768346811 47804603 441185948 936207951 784215529 484174454 515772100 660234632 795059060 112563270 88378158 814050569 662567224 135645065 262713751 817618968 5085144 83333102 645563500 211491306 730633687 42362717 95785115 581133238 617198062 620996901 515959803 357204976 757544235 234535173 215455973 898725884 15483579 247645155 258981850 186046795 715037441 411924991 96553548 958684460 343901875 265678435 129808102 969352503 966699548 579717919 63805706 401697528 827038159 111740971 156388408 602528847 679230589 505480486 773066297 633693839 499007720 131798757 42404710 945832730 792814932 253044724 931729391 524028426 659066186 346911638 391675433 202209291 174082354 579801722 928744271 709259320 139210982 694130303 610586164 207905114 895615971 453052098 220130729 861070760 502630806 625617770 738353034 142186101 799043333 10787215 650637843 664233554 406281314 449276886 647697455 963882622 726333529 804796986 411038532 846811483 691657334 904231253 433559955 969439656 937049508 886099997 308577882 206096918 166612404 843752445 728554083 136145995 784297094 760934255 427399850 3588045 127486546 878319102 524430674 522055714 441046297 697788886 168646090 765409385 866655775 353763252 249269354 81756591 975359262 911889479 155818800 876011125 688456956 372195235 123998041 938692827 852384702 681575012 528289988 279916925 510349593 710811925 588374375 582325349 920709989 979160126 331199887 691418164 243948653 808554920 628607301 719857442 676730028 914845824 855765386 347650887 561858907 487287175 109040514 492705986 520247758 469523680 631242103 162084084 514678669 196536426 787849439 601238437 535056760 702818290 53626654 291551273 372643465 735732708 647595298 707225148 413482870 68070985 194309187 142771102 836784476 914177610 898581664 259626372 903573315 349238846 734314838 423895807 86518225 350631511 547775958 174188388 487918929 256211780 571553875 415268573 508478750 382984431 913998732 856138834 457679790 975483429 561955746 58440891 210431917 51385992 29147578 551371163 375291596 910353037 624466618 515516788 357864528 446410767 397911947 700575727 629424049 170043927 537576568 800759391 6694418 743532735 803897742 457475283 30568047 101386650 450272498 365023989 946970758 456689025 259801451 924602772 336283162 504768506 227373592 72742224 533005585 293534588 804367218 571575896 992432122 888669581 123586066 215430553 314043512 592874483 657633902 613138216 712537419 639584494 680947059 669700370 340365791 995091236 309829641 130958911 952059353 942691207 119681535 421307618 180774662 716367154 756194713 139792978 770224595 613886743 775109958 68339222 476443793 783825615 434388230 639762926 601867626 944001054 740967626 610018783 415739461 224773871 564967965 88350141 897162876 397805267 300227391 3626590 291429419 185610917 578020898 727857297 677189738 154555124 571402939 872863307 766585830 908978408 814384682 562248671 712513412 400862712 347752873 220322752 335886203 538348487 986816648 635061899 115181633 687650745 163770876 313935482 557895437 861675676 502975300 711613543 987044718 888584110 586519374 863437248 53404742 17592265 854199006 55908957 990301760 916008907 886081792 320990213 848205904 629686859 139701061 786979774 119269413 119595873 122637975 965883997 696152471 818594905 28069886 199225804 438798001 513710229 301080995 173386512 810419132 861693251 266964205 792588005 616097621 215862363 663111744 296369760 139964814 775400243 248961731 131211946 161183799 949148134 707532635 731239929 149355930 392332128 341554812 832940617 763745961 214158218 688034259 739799259 70698897 352346710 245619494 278039622 584405812 555972329 91752720 90901044 143890995 486110464 815840134 51635813 433612053 155069872 589026372 159703357 795708718 251629392 490891182 359283604 681017000 64067500 343686852 947483446 733344703 270340104 202177823 539612273 544636552 987849386 146260425 612874351 314450182 80341931 603710486 440169460 399602149 693875516 626718814 771827310 182840 423682417 4884756 267891603 167814186 352934844 645885632 411558808 313559851 183775823 435420630 163979144 252667632 700705206 129328797 896408080 985103477 319760934 687984068 615290451 658545470 457980575 927419344 866860442 368613773 690203279 991479813 99347967 660614070 382973366 609026483 776712993 355630806 689890975 859553646 108095282 130426614 70819605 114516886 365575839 65177809 509954547 420289808 571301090 746032028 196301911 943400530 998124711 719335375 488015759 57806206 301463474 126846817 778153938 345543680 314438225 44888640 687080898 751578483 506357034 227972107 279989689 234943554 902970539 289201070 197017428 903687802 433048168 395553668 174993531 116638754 563005911 46597265 71061751 107080407 978806316 648740003 260660428 249277217 696909268 207600448 152904923 551690369 945565506 722882862 211516681 396385454 900953868 540396822 210872396 666156846 540320293 681534157 830725339 86441979 797072273 923526494 684369980 603027232 361783010 813962224 770433858 849818290 295896427 866504958 406935314 816117190 111689372 169471792 403143178 910270601 841823368 714427691 691547668 367848994 640334895 713993413 451204088 717838236 878749370 36700370 921412373 183302913 378545642 958516124 317644927 166470404 752153290 938545458 240755069 635324622 759442466 503783982 986581382 162480546 180734639 698439075 842904298 832649076 334989022 826237526 963439445 412619730 987893347 924892601 614291767 414418346 74362494 330843580 427356152 908082336 985719259 703043504 924030184 629251175 314658749 623023840 296910817 314179090 324039639 348409997 559347403 704395790 126837485 401954395 158671798 675158019 221716070 802006347 727732373 555750815 971614496 627091402 628538676 852688333 292178411 177596341 772330796 104581663 542368905 453597775 362526640 911522513 508007853 726190059 957196823 438811344 622115315 477726514 949787533 506978936 363199515 789859080 67184221 422795986 408968632 564621602 137368910 824205036 663367102 520491665 702544233 632158169 264284106 27885556 30641935 716302832 956540094 480371377 270784774 911311981 526408754 981821028 245631108 272106365 188239296 813348917 986278270 741679345 86095791 959233341 468272722 865887649 379249268 411254694 701681979 733141557 115738600 229525716 595594558 412094419 55462578 762138242 593501266 644182747 10542378 156785480 798084208 138898588 923783489 527993071 41736177 232426255 483238531 886268666 784081253 988107201 691417090 943539938 710119774 964242892 156093620 44858818 689013729 767884870 681162957 624584428 584102190 541975363 64112977 490750921 904922252 412639357 112500966 551274868 16476777 351982006 18668865 113811434 529843075 591741322 209447914 244533337 766394152 785807908 936311165 557931337 686509236 883996020 308948559 169985875 797468115 678063649 205820785 203472277 682449315 910177906 886178762 290143842 865360043 199211872 117784643 929364839 613592440 944578858 267811898 103863123 345526172 857997487 275827440 704802087 101144541 549439961 755321121 478722350 368331134 119261489 864981286 603958304 206846915 989483081 597386240 30722015 734238015 948237572 687979969 577139202 256416842 511610821 924210014 534330674 494316489 505747119 847563013 432426726 693116665 24567152 115980903 1035091 387432737 689385712 379032454 193747781 664955310 409766820 688693140 570746181 956283137 904517952 751772974 734872753 886239645 574967734 896035398 209236554 947081988 984554215 47348810 607855919 420187451 246631516 918753838 33401362 496792796 572366709 117220897 511792963 870908260 30270218 833041714 769137930 811184655 835848456 523098629 100040350 139904396 332283298 877077927 449318265 34487770 293313789 470608677 216215080 865901854 287207798 464840260 767879754 201599223 804752628 39057697 11655164 584522501 710526893 251674687 612009446 485749905 867305703 821628504 533354801 912834118 173607277 279187051 349087321 709540798 500190538 142134767 285692149 69726866 883527258 308323854 77924745 754212418 340521385 943765867 930297815 850288765 325799908 32252068 739789091 899963252 394386654 445184261 911955710 524141272 535496040 690998802 402182921 103615270 628800440 741236596 105795666 765819684 795945167 139603834 239820744 897537772 207567295 732609856 965695292 940602682 597394004 415715603 890213572 543450077 284891800 430875944 32678984 914389613 236174686 152759695 557857608 145163499 85618495 799753714 2771495 695298483 897837508 880032201 888105746 834349971 19347890 244408115 36010208 820753820 356171564 781875393 917739543 243755749 556696883 695438137 222276444 407542273 633502511 699444334 548822236 590444177 141695016 929032920 958304784 372903140 622904229 916229227 523577655 724566706 497895421 518563255 175094300 421857265 950925528 377775953 103456368 30028778 749668461 933149329 802070764 620621138 700452691 974635615 36989371 334267649 684554366 114805245 244658167 238301505 384725172 69135237 266402938 155905536 464689858 367216883 850267143 641859423 264145586 748247300 749894943 173177241 266116552 712345155 940489202 454485965 431760839 27595257 440279232 584698298 360203690 692390559 109074374 138768959 518400681 317412633 488802467 433943879 300621900 825516468 667125687 454174857 640927976 826702638 474016451 344333569 986415020 402176988 348499143 428520068 690726300 650660357 650544817 161750283 436638343 250071228 793107758 409828364 716135175 557630077 845834340 263317473 748498040 187459947 982674717 733313610 610463196 877540764 779254087 468631161 804862574 495996597 791115344 247144858 194725287 220800044 853603007 18694499 660578991 61844580 518287907 355791364 661706346 135217683 269108790 285757348 11616081 741925026 348470527 627288852 874508748 572979254 15202989 883087456 474941070 74498837 575206154 853990854 966604464 940713922 851869238 457818742 948086662 569863815 318655720 422158880 727554734 682445962 155857156 841075747 770947211 4910328 804102630 383161291 332374868 747001360 997405666 51145985 971854173 717335463 120481611 832373260 810228266 867496660 679446954 256284975 708436699 171804077 604587800 417488160 708420605 665883388 622958944 769007913 953780402 830848638 780057027 999288997 896639280 453967220 624673869 177592301 761858958 850922911 234629219 557107414 323891582 400507806 8411144 960188332 730472683 848042388 658171541 719131176 428206545 445769972 219460936 869052465 313101079 23294459 140020199 178375285 619959785 124378445 141400546 879498263 372848066 459015560 142757240 548943258 886195012 661712403 863072926 601511064 881523315 890237139 928637596 710194637 376378233 181993200 121399479 933008562 409077935 494728937 212484600 480394881 795621014 942309819 156093134 158620345 404966203 515812909 863174457 981426069 276538012 737543786 236311275 188025936 402543494 297149653 915204521 567350522 312136377 248201456 702622942 740509103 410736145 975250540 287206468 727403102 47092596 696602968 889920120 207023462 774064960 734168765 962741930 47544015 536764078 486882393 367854012 97618631 185567598 337588511 485098128 463723189 217614731 438351296 29405843 17963377 862763777 428021628 160033392 743032644 132013811 601266655 528038274 94506434 576830963 573818485 235834715 671392289 481502408 400716500 604417518 90463354 453850722 89595536 396657387 947006245 704893735 875642707 811226857 294725506 347287966 544409685 136626531 650739964 121848737 317682131 181265930 458436703 5436187 620824818 667363062 799373062 412313707 545045955 354459570 666427642 853881722 461556407 818974099 318575267 12986832 592440236 17654668 559930361 449957883 588938756 985361835 58291247 200171352 863928370 871026462 154694490 335374711 980880004 115016329 196078318 139028565 387742273 221720206 283377661 14467939 151865257 791228672 837093999 458904849 189530460 529692450 347708520 219476111 29012184 54080007 804941148 306352754 442054466 731340143 426528892 50152508 922316237 324034766 994541011 704783695 646302461 278186132 184004502 387646987 304045452 809951791 792478528 78747483 331986523 206621488 431706339 972941832 905756253 261945696 184331509 2387819 808589570 387165421 846245271 646178596 229124784 85460887 124300912 448482167 142480562 748104529 32352402 35610093 340395736 194857137 984061275 216560692 958250660 967961136 425778520 782951862 680575649 87652149 339892397 138968441 354271198 267581855 952553043 346726123 576843742 695582010 416559008 152392850 465075217 487370253 632244125 208349117 574771707 170916879 358708818 392136175 215445566 437726107 514991842 531483365 915208405 841771824 65563869 80470367 169657911 538501071 906567885 29141509 374106770 162248565 928246389 220875931 594259055 545663977 666846959 289913842 729753755 238212274 134599227 951689525 865254674 824325285 460027407 865441431 215693475 396624622 55831233 702391081 4666612 3547494 269583601 129892595 297511347 948369903 542582178 145967375 923927050 766457799 111555946 197609348 621441233 178513123 458744626 240979741 629440726 340399157 998469478 123593816 466633862 87186262 930490986 391679877 159013532 960887265 945465932 762380139 133337218 667380571 999831270 378750078 932192029 142016939 227856191 997602476 255879795 948697062 698598012 644918323 167959858 523181046 921530403 639872018 664516693 955998077 553698357 839603755 814128511 642784852 514852795 640876567 423858712 39041537 516366887 796369920 546278884 86472495 467496093 379512922 11721385 749351726 592604704 24184688 148832148 127032060 927808755 469537912 566937923 213306607 863185927 241913212 29349983 183633863 853958932 924072340 600723035 24822963 406745767 68265290 296478215 476220006 535676158 997298028 101754686 102528704 736529974 525475150 177384307 550714925 342399492 274463727 986714015 371174682 422875800 218999841 938102882 428328868 809789096 929393388 975999974 978549895 729555491 646773993 944979605 743550935 45848266 123858471 541540328 761764681 448169291 894983145 108963228 319972437 899189415 395131765 107039225 386811391 82602167 827823180 494165595 363913376 968527901 733769770 527743739 345038072 844590094 261440585 113997957 806559778 833172519 630168012 956359026 639494312 3755843 655990316 556958832 698575163 73281749 810857253 108136922 90449253 37396014 971269398 326813485 779654436 608009227 531001837 994657915 688420873 316310886 49438582 641227802 832729979 497779487 377496918 164494932 291814888 221826843 483331265 609570061 527505105 598707719 781000420 665995846 369222807 972685571 555497080 262642715 448440290 650329998 254575722 690974949 916876808 258097950 208325904 195673819 3628367 905595958 497930984 956430423 239580678 780831942 823087824 235099840 12869318 979003684 685328022 177866875 794807841 476681742 185358698 590814266 468563404 839807911 537072327 267801695 996022943 663172951 201513187 483371397 563831434 576603952 189084143 677456802 872325210 840067319 707773200 506528982 181030002 141883000 752026184 807525327 848903774 776031886 986360742 404288373 5748663 200549198 601323798 872064031 259172883 791035995 899624432 357961495 303368681 508928892 931657674 135104280 28691529 216322309 593280254 707143318 760873098 131752615 977814093 108813930 398490241 400637635 830175528 489009364 696201513 568279078 1105490 634063062 88609645 662277919 363335002 765021998 586367781 236183659 148923405 563866904 441644552 104211891 46345429 292412 372353193 999378852 623689664 703905587 178630815 752541628 782568145 772320738 479940283 289283275 274336904 304746880 144868861 529364108 635723103 597049226 47781071 78637118 389443732 44880824 914971660 747384051 270427970 19157996 159063572 265749400 66287935 51560811 625620215 47792423 134782650 518773677 199745809 957143970 289935353 129300170 439894556 579165369 993130468 85081852 960247815 642588296 2567573 851952107 672792610 177308876 900334032 442221847 263477425 45815273 938089882 723099131 485125630 768024038 303090578 671703794 927806601 708251246 507533022 403460319 571485111 828071056 566370168 313955839 952078352 280999730 715922275 679171693 185135863 953838332 924164837 55276321 84902874 155699813 958609942 980927093 335998366 538849838 525816103 353685670 167004648 517807363 906909637 398025839 663341898 527350874 433081971 309756981 287047089 243643559 539340633 555371689 620501978 62819136 312589356 280506835 252868750 14098375 685975278 600449046 103914078 608697217 158808523 846759626 55706127 859651629 544052694 890750660 335375565 493457472 869474147 205937530 378375735 482475903 62036330 336766496 158315374 885116705 204538199 443355779 546608525 857064248 235588364 496108781 494105582 778064083 988818617 86987072 691855084 270427038 991539630 227954644 143390199 486459750 960213670 341136648 721477694 435785590 552824928 644141784 399304022 17114503 151862602 593253014 208402495 266128152 773360771 605734988 317400533 797698838 150900361 159594785 306747567 516981297 835905564 512818255 119935539 309277880 95939887 202782251 317435578 864721272 171838535 936530585 255598682 788325870 825354668 832984639 122432786 670610407 857740062 928850851 937268800 277975366 851525360 490860491 568980246 653685273 966033994 831308414 352246646 394408556 599003746 455552966 224063609 572589178 723454144 405497604 953708295 261009207 357052429 916199574 241702276 184506849 546038429 479755855 150291878 928051048 803919038 322387135 974585865 334828342 295225372 150725225 584227514 24329070 260725418 237727154 792768847 921767765 462164700 95414747 367451014 804780980 746303682 455951059 554021321 582504754 434333444 59687737 583748572 121701144 528290705 640850104 753042698 928747080 40860786 920497485 414902372 612567130 216201321 167779983 211754788 593188309 309121780 701863284 584373935 693197442 497887538 62647540 10316316 596044758 12975575 277596590 843038450 674854730 376134818 144642188 798082702 403270839 28155176 920558597 890316623 731903160 481909778 987455850 747310262 132204057 303711457 930043312 143362449 720407315 410116878 418194249 228158085 653890206 226700220 102567398 614087964 386990013 400017713 213283739 342910830 882702359 557496797 981704963 589847357 859884045 704014720 27007096 880556653 712572618 302645572 206553752 44918578 750681637 340672563 23466544 29012004 543752435 641933378 305929764 808781500 840991681 867176417 38364910 903970207 304969766 645887275 522034937 318387251 306715390 711829596 215439264 229640996 618418504 544268746 307553164 656727893 275901049 262431826 86766938 564840753 674839442 132743828 886437847 922479957 593567343 344280359 752129565 328729576 191136082 746503291 671768025 930713497 364835917 495954332 492111669 506204511 337611584 745973569 990189609 428060732 687692859 965561599 539616210 456228635 102465071 510965138 737125858 513985207 72781530 917278890 543155392 913128136 211099765 870200329 857982291 986901730 874295564 782852447 792579281 26618609 725124506 185383625 900227143 677715524 16146427 410953933 174132494 555178603 638737297 942463023 345019082 863036771 476415813 212283242 585085818 319595427 114212717 536016256 458250358 182355856 594411212 906362530 348435503 895884 640598471 816225112 941192053 728851007 158449036 514714454 235289135 713488235 27512511 223226268 464763477 450192949 319167643 496908493 902476930 862887460 482061952 999299666 264834689 805765529 387137879 732511787 417187701 339848593 549007051 403174025 200803852 470217599 509351143 198301213 25827811 598141448 678392686 820019622 323597061 146209430 68344423 250751110 288884940 225143751 20912710 428361362 586320354 307351496 265618105 711883388 733030424 37687228 998284952 403864483 236271134 961127505 232518535 298517392 117420462 270728936 567955303 448363140 761525332 279437179 118953669 222225819 587146429 150215366 198579758 300752134 390119934 797316247 119747316 272192445 937832895 369442186 646539567 465576660 479338784 640781845 669630310 149765922 892079857 555735296 222839421 158142515 908337343 933518362 670965786 854073057 880817737 236040702 693504136 934554294 577275256 413902438 235737970 614961254 632216506 150957008 597610456 596317774 212948200 985431773 192502343 236818772 653193890 644143956 538385889 997565701 537750672 330584960 133484465 443929468 483762963 576005191 543752598 311698466 623365910 765090269 932242276 996583003 215799925 652453727 132146028 2756320 224632110 903269739 23519543 54352437 104112769 555097417 982909936 449074698 733396323 321341041 756255021 78611468 846335530 12204987 905817557 841833612 411667413 475393392 909352532 589412138 954714615 25279897 822093593 623699553 977202361 488105506 301904012 7698902 670307567 785044725 182098155 397120960 364714803 895598416 530155975 845932980 698476737 151961868 83543965 844109365 484064631 432004802 649695136 450928119 963542612 954612026 169859469 101326452 540325116 133368577 377513076 561027558 237075849 24519600 2708507 837331640 422102539 745348030 354583377 941387465 639690530 665475952 592545764 47179152 551938876 526096915 840028309 153163329 369892411 563261344 823410647 865295608 77649439 335298364 189522924 246904779 464773935 116862798 707947435 692577400 342213686 732355367 8591372 900119090 981515553 517211770 636008627 847600847 921988625 610246942 246724223 70053887 757284482 374716114 78201023 362629144 365618844 100385672 671912534 487458766 124730509 832554363 881620155 453207859 271614990 229739247 917418370 822738056 381141788 620289571 627511494 611048502 779474282 115853885 522742961 47603281 614673027 343433894 869985820 952492971 508294448 825650207 695904857 360379217 488688422 722396485 972719297 174129186 897010169 87118234 874627263 84985834 182014463 823467149 41550688 114688790 482462271 42442465 5464990 853387755 540024278 297922168 520992911 126032999 573615522 358533482 123414036 333583577 193968980 261346533 732921264 789491843 69541544 674341581 372465464 252597334 97695388 69183609 319138230 737544107 286206790 51611050 957471675 977488967 143675249 521497330 470884066 304852294 838059802 466005943 29941608 35171147 784162904 236586424 101222603 364253263 718439860 998813223 362547552 127031143 289043516 660273354 387172653 943245877 291730017 700354404 710802399 16781299 361407503 660541669 422627176 762713416 349651013 178307915 794696328 921360205 174660661 461950967 50453692 428095568 551274492 744584978 391077786 659660984 281927826 733178977 46497060 503603845 143590285 397730646 93131265 397478644 93429047 175085630 46738176 589297611 726375228 730386177 779691115 93441667 590559455 759024620 55315709 465706225 755001062 809377521 971734547 598900993 961468152 899193665 288412863 357051576 26901838 655629231 303771155 190543077 684325750 436331768 191820595 126628329 420983946 938253161 662087573 465241938 221744937 887807028 709673374 13903322 302156164 736332126 176114830 189611191 73638007 48154767 198949294 801371601 948255400 297174727 854218681 862812391 171899545 538417757 665832276 67455190 753455125 702826642 875755874 604012940 420226705 689091383 113157132 666635802 97084465 58409754 741635801 748976722 593428109 18728286 29580350 337861510 830159507 868190958 30158028 603904046 909632518 87885648 402446294 687709434 944369850 151509794 714042534 722107951 792166853 272254201 249811507 594039009 187732674 909119945 50776511 463128013 139557984 416526153 750866156 163871298 307939149 909014547 882784972 200853632 963803603 848560433 743589495 916555086 427582675 500868641 49076657 802079843 429817838 835218165 308229594 319786769 965409268 733138824 701639710 267937189 466220108 415135066 477079211 285221313 4974874 399459504 979185756 996804907 768692952 454218218 231247005 636812231 174448750 638704116 711137387 922858619 939328670 891677601 282127425 191964999 986800983 727323779 528906689 918923463 149655449 146693687 567161039 786590440 254059877 558241853 167731325 842849708 905386395 864715889 863413869 37842756 564374393 558386903 854773988 721622323 548015314 591069079 534753042 437141472 622249291 368231789 591693809 459929800 205478553 137732433 947383696 905626519 187437163 711980754 136923039 708186089 379659603 208496893 708939931 544051437 180170626 269875157 3419951 89076532 392603750 872339336 103837655 596581085 363477601 228046774 862549362 523938420 3130789 496797269 888882952 603666037 163827540 89291471 776577501 970846560 694772315 622110557 940613511 903256231 594769638 283844569 634255512 908420781 282785113 238117341 722179595 119787304 639186443 462409997 124508709 784492863 556665119 287707729 111961106 43190059 885707549 839605054 105424989 682739250 102911110 454231554 453689565 954326261 324404175 480341021 20286721 257628763 333514198 51267922 600038496 341201381 520043612 715973716 147261829 262479143 643615813 498985544 861752258 694737148 631543941 665806020 109209234 395374523 953836326 305783709 872050173 970185962 955856777 635230764 865357651 176183260 723876189 219368755 583545499 662664098 810045716 879586516 78599564 300035862 648001705 236852211 349294686 646285447 558315267 407483088 354242170 675493421 409519753 365541494 771811247 182828990 641081608 915099556 188459389 153460165 29125450 714723770 153466677 513820761 540341899 540131519 678642473 703782011 136558409 998978865 403268476 357453384 991978726 420672554 826831831 803496073 379851474 543162432 290388620 607252395 253277100 832282726 303739929 851451903 842984033 798150134 881959775 170096694 300570980 332731949 14003447 100892365 900686315 730052932 597397934 351956968 94393682 696142997 577393364 247487789 787656610 337712992 901641291 390815547 62123164 839969930 802118853 864778881 967539585 136386079 202338443 93696580 915999924 312991411 263594360 449389020 330462880 230817813 546923910 946560786 761874458 334465793 951257365 247107562 813510564 544944170 375457596 193636076 589117381 934547148 54752477 770869275 496179402 406466149 402542132 719765118 349346665 751827548 922763007 476434000 833658499 399517326 941335585 953107522 321692509 693169537 127576656 811295497 606128086 697396864 369245675 134258581 662901102 458717310 638902061 749758765 814600942 803736200 70015606 216142116 662455875 570493358 389295884 228936558 82634974 503781361 178741883 672580688 431357797 572168422 57049097 124231878 99105858 370419391 810619271 336992356 322555293 804610280 105464663 196649012 639492578 876043629 658809568 143091963 846884024 296659380 898726099 215471433 634081802 369502486 547905370 7788127 311182197 85043758 440141804 888399085 430461459 297011230 279378835 568905729 670724804 17657035 690673177 92560658 60738226 449035292 658230366 609107891 594245440 338653877 37914563 689715620 141314469 301629609 445350405 566704900 993943140 258338531 829084705 133312699 509293853 485299584 284735256 831732541 394032634 244778912 264817094 537522088 254544870 150382433 100957639 714960626 244584913 719824846 407329791 812308467 55029789 944116829 354282851 428190446 308800039 38141783 131589978 138521785 351313367 736737147 167338711 248262433 903771876 742627650 885874627 763156927 418143832 818672712 58047340 97238275 113029203 763107249 445575551 260883438 602148003 472884289 956045663 848287544 219081945 872999714 486355042 232571332 978864462 220017093 992659720 786841228 568566922 815777842 121370073 63454485 446119553 546566174 531981882 766069080 671823167 50919753 961832395 649764761 872559692 163683569 759029649 34144264 93986730 887914184 148655081 886367172 42565015 534060956 402891122 149214201 681440597 226895119 117652809 73389696 260497100 533869780 287258728 474059130 168898749 53981788 701691321 666814521 869104241 671435159 449666317 930555701 707833453 82416371 955397741 402367888 922904028 845391030 695631813 762146076 705624574 197555008 489775357 644976044 721608513 236727066 467742518 151387593 351778848 800474360 237335865 971029210 73410285 718987902 330311435 112885032 632422843 277636971 835170210 572707462 84476792 35298855 884957161 109335637 727969359 693750516 764819137 933623689 937085017 358743707 807677706 691686582 428801095 191688323 133640357 352330871 543374674 833018019 950516941 137992008 400771278 571968171 479523915 48421317 49670173 930454246 277936183 86892944 293380318 931661569 983774449 891229307 980498848 155667386 764720208 886064596 495247783 230279643 556654531 13907458 511694394 220651332 702281678 584802646 721972877 402342580 373860694 936521423 922939765 204811582 328494208 605434460 992850231 254692284 643722173 109798726 452410785 176009550 152289069 970696815 875134176 716647079 36982724 946565246 833781319 865296056 235295580 923179899 124175350 66665340 357191163 604035463 278608553 984715806 434002943 498859991 593071045 464767330 350382033 269689157 349561691 558137008 492001003 204425287 791432715 645194815 940241200 661612483 385100970 202509485 398896026 76963823 708316470 692276973 989221977 168906906 261072659 331226282 653538235 836365569 563834291 119819033 932424861 97539504 612681640 185619435 55476847 487583477 58680900 887187453 749732961 329600921 951197162 444820261 626277843 11222393 642273271 260042784 389642220 54443860 781254600 780273511 998853716 207732633 395759696 753038297 836225543 376849463 38228924 315204395 48163123 435894495 797316907 329410512 886236255 41080041 678005430 870849744 907669015 701843773 359462149 196172099 178763178 541179339 121680890 700625410 678814634 949715865 333191396 76974055 111584553 333286747 648676690 714862999 127660519 728913526 551798163 158843994 420618956 448304903 579918125 425652581 360482918 974873365 721230777 426880058 989611139 182358619 777608307 646368595 14067428 169151088 726256437 292617056 283084938 323982510 991198575 675677517 948990070 743901881 139071878 966189814 880211258 294424831 371104381 632257694 283481635 798902032 384049761 7021237 258463613 189079288 55716315 944799800 958594509 405400389 921440651 651585443 282889310 781660807 299957686 427476721 637795864 363518215 698336189 751917401 476493975 755467637 278482489 587022147 427234376 296297628 388277738 849490600 66062562 514940322 780087623 540666731 42504066 171691892 243759917 319825673 152270391 699166542 134922699 341749668 418324072 214063147 791408040 516392474 863240339 643210840 406467714 605568474 455383915 103721406 373615958 953693322 24690927 179090549 523802071 903680129 126480015 797414733 416804822 862588740 218850591 77589602 271879322 152121758 255164836 114218102 251240149 37692054 798559401 84444004 123953264 606197960 83686917 656501326 758918960 754284500 264077597 521332482 494151504 456292816 32042586 593742445 986686509 204818645 727466468 716143412 868482487 714754859 726366202 695649275 699349396 425991598 214044701 269094042 731045566 806269861 542090867 377218899 637184307 446360112 494669337 454434909 741318136 489925624 131243464 397053704 110543952 870581402 448728842 721171580 860298095 224225939 316323038 930086223 666137069 956150861 924936460 568918572 47203133 583087124 821530113 547371438 91049649 281521563 505490419 844213445 223294062 708502478 403891843 495764104 3418719 350694725 763001116 103426287 90258142 944203173 657437149 78290334 235223787 330772910 714009960 501782674 459963633 488245397 923874304 624113133 803384355 45060499 837267937 780137302 722464785 413074733 503484654 770395455 680063545 142268132 295292244 405771636 545158637 338275500 770876380 668813735 932607 781273951 488950135 778805103 775568601 101495301 791614996 502303724 903268297 269662699 991461779 135280110 414283864 761779721 841823634 145880435 300909804 793255202 57053987 295573735 806280308 197562371 987974577 81393917 676431168 742852308 89896586 685667313 298948638 870373298 608874832 670174260 536245648 390711012 678261063 456204512 860166674 151757209 898745354 186027446 914653832 510477824 496392418 313292198 108107619 519810592 721485769 391892069 104487591 704692127 190025209 408756505 224663992 313401521 88908423 950268477 53075916 75038819 802067501 983137850 993455325 868762207 44869054 634411663 82675862 984079096 110688770 612579790 207146362 30048942 27469810 193862998 4399430 595373082 110058094 236684217 737660154 723205202 687043425 569154836 279147982 286378226 903945880 917022811 346571123 211347070 165869581 907261700 172829482 299586102 676068462 797368782 608909930 847531444 604716740 72884946 19276646 400941627 620641834 303746190 23583032 241012565 448341537 843944655 693334030 316712480 253996300 599608859 89317730 607468540 3385633 743809828 272865995 290408821 593543573 770216259 9114341 874050965 333557602 922165156 687450733 692920035 479218535 423369641 128490606 334891017 503073911 724023709 496675019 731246321 432584549 694283625 182980232 792858075 224446596 622524890 701742340 122447191 509850642 364316220 543243716 609341902 247729160 277252709 676535918 793193244 590570229 730095737 948913815 920075983 775727804 577524323 606255024 186167743 102374730 670515434 18327850 566412032 528867645 185014513 720451946 431508437 487983483 537626525 43150877 331430069 852992585 71314356 158904605 483550297 491840266 248346710 109285296 108413593 136602663 818680634 525185344 974910351 223593131 385983897 875495405 322573586 153418565 983002374 448351888 617429142 400315752 708978860 646826333 809024424 728438362 240163933 853614000 551149278 275737895 982867927 543351759 400266622 121181919 957240132 735678489 973384623 647283267 979792195 64987491 650358839 823029352 845980059 642821724 193496038 639827795 559284549 782011513 48108949 229465411 605034354 812674949 836298072 802228293 593422986 497189330 329735994 15902657 872418759 636904409 367111411 301406079 319539422 739576921 317872712 128885033 27902119 350261253 217040568 783070656 642197658 774322516 908912153 29022655 301223718 695132269 75639759 71633919 436608066 628204265 648123310 203738415 16340653 30614834 264839928 591008789 959693096 533916603 41748090 873959264 38291116 876765590 352155290 553433145 412906848 717310916 874126841 576290987 189447859 419862340 424805180 978631775 916239249 339028603 306448841 878490565 685392091 454453394 850606215 667403572 21005696 515251097 675224811 281711801 141802986 344124912 802460297 199073067 260352163 369586058 239115918 233133803 840142133 327582803 374690641 603505141 640400134 59444668 16197669 418037319 152123150 784816537 300941613 193566810 1873397 562469000 605800020 614719857 855324229 802559225 987131955 221962161 702155892 333949340 826985139 430866789 133506225 830828514 972427098 805628819 882830574 971317751 129463925 853551396 109868790 774771426 470934097 955741150 863735583 269297599 207899083 313969717 99001091 726657464 350525078 392818892 632114491 588955645 727360179 504705514 265476936 725003415 479799671 517758649 807966463 912387122 186059830 475051289 465058696 126057115 941419033 147721509 414696335 667599267 451602940 277694605 537467785 483252651 76414239 424835055 263392355 651581029 151379292 797540881 285470981 943012860 439358866 118442314 834063630 919119620 879756776 372567024 52327945 763945445 244787465 870843667 512241977 12414917 44360612 349968698 541293536 415956974 178040483 286669841 522440667 58798672 343627321 319536929 292971837 581267768 822962373 945238587 317002825 921128776 359219570 153296191 518462259 250321644 665316679 514657085 220724832 791052760 379837414 817875833 103340686 313022031 829852849 460971769 375031960 391498968 417153111 115650952 745251759 570140378 83688325 704512203 659409571 455580034 835203650 22537321 869637795 434136577 59842567 221633790 473129002 512252675 878886732 471123734 978136461 87695491 62897930 203444706 278583905 411744906 964185197 736301283 277146843 364978485 278193718 684076934 745389072 831527575 880049635 925760441 375305509 702409228 747115033 268201115 650090898 669306142 176751753 865855181 10001148 243982053 362230805 188463150 930149908 222087099 846874809 917223640 71920781 580159525 813690813 476150366 980424829 73840348 135669342 512106333 513702905 773613994 449120117 75773438 581766603 702778131 939985883 765572270 849042235 854288213 557119659 826427458 353176393 472370980 440500940 450056195 483310721 452385713 238662511 970030558 803374839 246811372 169499998 650443281 500209615 180220161 256630345 961904379 195499101 47001289 247469761 681995884 386981085 484898520 754485060 438952567 265686924 415820123 526743506 134545034 213280875 921523240 708162511 177533775 209892446 885003535 151235999 990848428 342925161 237784835 186012239 634784628 253297630 296787322 489163970 107969923 356069131 295135580 300858304 324256103 331430962 738474747 773020552 909181941 61148323 664249515 605483725 634056992 710786974 228302005 369652306 240673366 464167652 673776590 384515190 500439796 261059413 350033572 83596632 157658548 500450457 189180177 84527539 146904960 705967215 530838079 752552332 47341329 695222920 995206099 666632482 970044753 863746101 801510739 645663012 662909720 271492843 639845542 49511694 349712225 158416675 493118264 302120365 941956234 738940039 662721816 246955073 526142375 667221969 762647449 123649478 464226611 113190001 274222083 367545051 924799625 429004193 826442310 642500303 606207837 751877796 220525692 168005641 529983463 611183076 21144951 459161742 63483637 959305570 462102009 413381786 201619209 939956169 688440995 766079250 805052777 644842412 569575329 977582496 378606409 744688977 915317537 955714676 278210199 608913913 494631699 635724196 24038457 737608900 279470197 75957359 179865936 44571603 366855121 659398243 508496234 442271856 991640106 911537668 480997924 479894172 5757910 740963789 382248980 287978319 427802295 50181257 990324694 83261058 143758820 816276827 934893938 777954450 621731535 196756480 824745155 461408434 820116285 670205578 595359727 753796282 606189915 722161334 33094102 158149016 921574966 511209499 251456301 209587119 461399381 675983463 481936241 315651425 143612398 239052 717445622 309843797 494288229 450449914 618172423 646215272 719663687 436958830 318464871 801339444 960215624 811273506 849628301 55487236 134542295 488508526 686351389 721127044 231933148 851650130 544701884 229486612 916125580 866044910 745456602 442695448 636782490 26881464 519117487 467405179 523821725 261332658 122957012 193926798 576910378 294245163 294496816 322385614 995698189 947562089 189996286 739883100 987963413 442889281 891884675 347222646 752496918 902382739 105465765 315072346 926168998 347944189 525823195 863942588 924933240 848528344 500272109 322547126 945812543 245121393 337288200 189805652 729337061 948799080 46687276 428899720 377098758 905689475 859088301 474611185 128465842 288775747 121840665 152563225 79898782 192154605 480534750 806109142 729225535 127720234 843516441 4774790 434581227 100849511 356983349 861784293 50670716 837780506 395937443 356346833 827926267 593852647 344223374 577249695 241854007 593519053 973962034 962682543 11409097 352327595 260196085 772947354 652867213 712057039 722330530 350376163 525923020 964660817 333277473 52781451 99578804 104710277 452011766 866577577 840979025 693418050 496120139 110021553 399963831 869785563 745115510 80776507 754246019 202214967 540144813 112833555 298013541 948141942 245261571 979954172 302353311 214206855 698040891 478205775 392880342 884966057 556880228 214019217 669711803 841704459 826980539 493339211 974808126 823865650 799093237 88264423 913634494 771422426 884026237 162234607 759536271 176477851 131484102 249702651 932029778 695251796 593081685 16387510 999738797 247094995 357849886 949386075 312047873 686612076 417761231 344462441 119938984 88647486 333198897 467212839 903464275 302746092 430280702 19054426 803927097 696328161 290182619 10736632 963392790 61154239 695731294 843806722 685759818 518272385 417346986 145157691 952265467 945984191 699907587 102995232 293310976 392508359 418886783 988890834 720194778 416861577 178810437 50295360 282067015 33631952 313328334 580978679 867573945 338000509 998776451 521307795 974577396 890933095 24689029 440863282 26829293 123674790 551284272 994423450 749471556 174187131 25574367 676480011 521386473 47713483 125485729 539234382 322846405 755925801 974349592 730666235 212548232 537809590 32341959 486873647 455824181 588168443 687267949 966498073 964975008 649987837 899071931 479761035 836150398 475512227 385090282 522005134 218098066 40737074 507498142 153700914 451426570 748745030 929232335 575029175 937021658 97393244 9225831 563104782 377120698 484061711 182887327 278582335 822740250 950042684 240156358 774279194 702680519 249215635 220433256 110186687 915364880 239385429 672405188 374227237 217530887 258741324 263412269 876438080 359764644 192527979 982553534 576427474 848140660 877443703 84738875 521155275 675189500 426690390 725627792 872266866 892635946 533819678 288616138 848117630 168107792 558001300 886186640 822029482 618343384 918556132 385019975 795331368 226866428 820365289 541804382 313605856 208880836 245747001 552977500 433061069 910387989 212707017 973173964 596340712 546439723 299886931 655595026 285016098 435854390 936205804 301547464 164747529 681415753 573526741 91831113 846567527 51261656 468314591 12429008 470552950 284687554 617209990 285862358 533092779 451169013 471654199 520105985 39162281 328471705 7259980 641119887 465974260 706609759 846543488 390029865 138166909 277363093 831789560 127665838 88104349 182802095 555161436 791370715 655159412 880427914 964311551 878760904 184292021 924163772 757548724 940878969 613965508 494953556 673729011 951114708 404382002 928230807 989820130 686191064 788848058 813711763 581138569 825390637 492372212 100690780 385490475 323050131 341910161 742741165 1493933 130054532 971303586 260618237 417818988 602064150 878957716 637600057 994993409 249909899 848513569 882947800 570140874 995217639 342609333 745788123 628320708 497261751 337419648 599262619 309405550 229059508 138282705 759932265 956558296 266376073 971313379 934602583 901135949 175349697 693555563 953021203 655121903 317023227 639313208 22564249 749426841 858123771 424092478 516279337 772856177 728654076 808973531 12332523 275290072 609995803 131521582 144668417 367957683 156111015 487482756 956048852 419183182 762554066 871078688 300481729 999868986 769590088 747306834 19000080 473196038 140997260 530001352 390999824 756205499 68773649 968431978 115353930 579612331 895626506 912585026 894581269 739561987 199018811 403650508 710746605 357717450 569896521 901442848 765177522 421057315 995942028 5781021 197281156 84861957 801021532 146906792 352969600 44219613 335093259 348826488 840689351 856047302 317944057 125070519 762356279 57075404 739370288 825975639 236979733 903283889 600460027 112178228 225944158 148933905 283249259 402784049 49218687 712159705 524642762 931310358 293400868 320352217 592026149 848000892 868754680 390714877 262748917 226821176 248888003 626056902 140908685 995573588 72667623 552285967 499393822 480279835 68753731 329668499 299893316 248628552 253909889 141997879 543077433 656091989 155177320 468944211 894834403 123099530 92838490 583046091 971068131 137088665 155837428 841853579 986645321 500044916 779516776 334083415 535048597 101415856 587935854 55889243 953903043 173653259 815446157 832595547 204071050 452045596 657078848 154878527 295487750 489589974 178747929 512343759 443055783 73171473 891641237 708130745 99932654 283373111 287359652 202913171 146369124 158481288 350139403 662770534 387993402 11953962 402896754 654911694 610328696 581629204 533845685 844338889 84521102 214849024 100653689 742794481 946903733 571054466 321113170 630287912 853543830 163943218 360238026 640565256 538990794 396517383 214947261 812436285 821732553 162216094 828499653 359511558 73510099 266076711 12549006 137335678 19248 219089214 826872941 64153532 124931040 848431466 675543907 529177314 404958004 678848091 851901561 912357579 316778464 459935190 787326654 180599265 891501331 862039984 99354357 141197360 532027992 539706288 586401082 846337260 83319379 208133509 303556099 636847969 695335725 920083821 443053019 671907973 330572354 982465742 490411065 530487269 515101200 116754553 957685244 435268417 923198354 560088533 990394119 346536657 570217755 211296882 168452162 987761154 197579231 778909631 916116456 516516887 761614164 282562144 429062665 567773835 806704558 645325060 743480120 592400716 246428163 342960701 304240109 740651864 327293389 333791525 939796967 217358326 872399587 514191945 980167501 210251270 762329754 212476394 930230182 84708052 443955662 750182428 138638200 327016299 238678898 803017535 444166501 146642475 53813405 614639633 692592088 333741066 48651917 813665077 98891771 950157363 982508368 496951803 930475434 981873830 538864930 102877692 405458971 149652236 885505281 208693553 84580325 839469708 573490047 835563808 968661412 564186689 612565196 320605381 123873569 227546529 8661631 760231443 968545036 588732552 138155411 540840474 712058765 606958762 622448298 297823788 986352708 370430872 645816355 229863865 726214333 155678148 451254978 219669497 762749441 612339418 771040088 163507277 44836417 614821664 542343154 802524313 791948205 188583648 159019633 695834844 758353672 599226377 878276688 332498568 65059530 672955612 802392914 181216761 803098167 507068296 139553280 921496029 100030118 405269142 631438617 494227912 154293639 371310206 230156993 529920773 153699701 647448926 956479649 34811052 286938058 584805403 77162653 611937036 712762051 184025393 374136669 655024849 887416952 376864548 585082050 168945584 29755738 256131811 755052271 793152956 894388714 59525156 37969838 632608449 170294365 123861762 41049018 654918436 577614750 536782967 283199002 874463080 970723339 338239755 295732499 643018711 916183361 422975837 729991467 824986051 929328267 36493371 428709494 303520673 5430335 292716832 147595414 534516897 347588933 352895146 826037201 460559412 215740814 882586079 706777853 850583838 566600049 286097277 30076705 904959261 797137530 555363993 861147791 755557500 96136578 329129383 589684749 688534030 441348950 962757926 684671541 76824756 424274847 345396527 656041120 42573031 69041960 110061522 403747503 434042850 401976455 782595699 227179601 49139676 975933213 11931984 796791366 559969029 497385639 777870747 878880677 446187733 210282823 804776247 131768628 765687757 433877938 834892610 54300179 171030800 487316386 823556802 827751522 573209531 926586032 943648541 179056726 569598910 873719957 659594435 623307062 150031856 265257888 840708277 213068123 423403679 840797366 500620304 555723829 97247340 29666488 33241876 991554872 917182846 929080257 49372059 12008640 593390193 768580330 716934521 28917695 416583765 433440494 31626562 830374726 761813532 337297734 753244164 883265141 643623878 607182305 694146173 794122559 159352797 980608068 420231371 330605972 237211730 700921704 214329516 653608341 654917441 3217681 991729390 449482287 603706982 831119774 712783253 438833359 708852687 947032772 586242413 19377988 792564773 521334379 507142212 103956854 867705058 267133745 772493548 434216524 778721736 737499859 487635062 370944736 767506641 781596397 329203073 672261806 967200744 690762135 416032313 725346308 668179889 919219412 844023451 650713541 599163872 999025169 253552203 799023512 909706905 427626474 655334636 670680218 215835431 881193671 716024312 112725118 497089549 911570276 940721076 546422015 197845745 64058027 958041409 243410779 2713388 894123339 976777447 818578835 234036020 553471034 900902344 620819480 396721003 61786732 987825379 250770618 205072867 960852444 258502383 806177269 669890172 838929612 208409523 362397487 90954742 755632035 53835532 180732405 512911144 688207145 22436663 933537689 928931874 965632241 79637387 180583648 475121921 961761827 310966646 139729337 217913780 110301689 587289075 536472844 869936838 868462778 684404498 331997112 800560374 71594490 677008371 56657778 503169368 424620913 139176049 817776248 616219955 106425247 109680741 619342008 371811525 221048327 776404417 158973942 774546044 596778955 215503977 352322403 91553804 441740063 984501703 276801390 385910504 93004281 437667075 707200983 559387795 421508590 891111526 341480264 914933998 917940673 261045646 952858205 631710514 292362425 716994282 798660738 97754223 31063262 552132840 506586458 746502918 352067222 803619733 766734574 583886590 934709054 5637360 544867542 234082582 517906825 788727301 717294264 868823019 454178288 474615696 510160158 204019291 754293706 619258907 473933863 626827385 402292876 816880883 68557984 382008232 552544742 356467949 962727050 781469400 894271917 283084702 475209723 476195057 328644030 530505871 752710959 921359700 988105304 131029335 941899410 856707437 227549548 362760729 446322671 593121525 90541019 318479225 452379718 75777259 666072291 133991819 749381086 331252393 430309391 638217311 846544846 953259317 632355457 762339268 161117615 596309064 160252213 32017737 742140185 926160093 399558768 933777390 534718329 917338668 553952844 870724872 857690383 973286641 475866811 236576066 140068328 655569814 116954984 666352766 385133387 393080642 460914858 671800769 717999126 881844066 855237163 699038536 135896989 732216019 477568671 480834410 309647374 221340148 149242992 807799480 867797172 735746989 769590902 685731763 870314398 68838678 171796750 897186122 5801845 869564095 553339130 56477338 775111415 787247428 42477503 728117519 815205827 109472831 233210906 321513167 910262190 597136507 573358222 772739372 914225976 44483731 594553578 835488997 103503096 540201119 443101777 414826101 47864525 810518876 312196795 530437409 288522521 932498181 395373173 837890881 16236255 613107243 395274263 525237775 825569783 266465347 601240289 103435936 607083251 48348177 43449769 289635980 935934081 580552725 133121622 553704012 669110766 949536540 122331412 136024260 589369027 280833339 861673847 680581142 999153270 539453731 890106478 772693176 548889885 779663473 174824921 346229069 698696420 97783397 539546080 363377054 768621037 299268707 705189988 503384339 104490457 733438388 811349854 721652288 807985843 74753248 602603754 96343530 800085929 153284257 121560742 815714469 337143419 192311215 393988011 590704986 10290682 568773046 680769994 487619296 315197105 36456197 632869046 433131731 956379182 658670097 665376652 692770787 218933024 48226265 712537480 695843883 706702691 644809335 524536993 671700688 527403936 863198464 704840706 374383427 190424646 819261545 380828656 601925473 955770267 682163729 472814136 171168503 918599600 84446810 514424347 870056212 697080808 895386716 346289534 446451354 39476890 875024939 379743193 60012765 735607559 436133780 70406720 424499287 216802811 204806857 658164969 916750337 644510091 15531497 703032500 459489934 2047571 949123538 642101768 236399903 63861941 226984324 915711600 362773402 182883284 559189405 491533422 210661379 531257668 67689795 298234300 202121265 233606749 120533870 676380876 619339917 907694836 545419921 983660285 737854785 742075340 771150848 827358082 678650938 571028506 260821095 197452923 25324173 563387516 31806838 217735631 132907281 986644037 717810381 361817247 605715880 199640872 153440146 438332977 745795916 869859352 837866312 708160225 409332722 453153521 934100800 988383629 178832007 589586608 788628702 593622765 172096592 624126694 796902649 71754172 73342998 103375777 435052786 612612550 565927477 55870446 936789057 883189003 982368542 872401645 820198037 216460146 333132458 269630087 39145517 744875326 708267603 269085245 415403171 650983007 167526136 635815676 171820166 677394583 572055349 521802899 500062233 477350755 506156439 997234192 929385191 135251707 684798446 855990628 195405797 863475618 730764232 935177121 426641187 673198183 142977023 192398634 625849725 114820435 525885856 771530934 823511810 316783451 529660410 580420208 524608926 515678977 448323365 372332747 178338878 974947442 915004000 770258162 48707956 668093570 41200541 905609824 818715978 575055646 591100188 403702588 370189076 591723744 93821820 384684458 821295239 775234739 376542512 730907202 446781900 417111900 911711692 849271703 897513846 5611359 353720857 719921331 417106119 908300922 741706903 86891258 916442778 252770651 175160118 734618772 840411144 167010365 17912959 22429658 962436546 244998881 680446221 393150889 85792037 247882722 269642928 353949845 582631700 415707145 640369391 829082183 332847387 694612823 876146894 266227527 232404618 516182403 863614108 22616038 635805383 504356977 258745215 121424971 138757972 730952579 595930236 996704113 409409676 232340206 632253637 831346059 98758950 76828398 303035384 658311022 530096734 918182742 406418555 280098825 663322533 768298170 373585230 551419209 171702253 29536232 12466287 541787038 148050320 226037569 379313714 914736727 493554288 504284310 345764609 787626827 870701892 905244204 515773515 240772138 207240016 922229997 369581504 447735440 854133165 208051371 956463560 412582199 227127068 449412403 307874415 707683933 905568621 399212165 12348882 603155293 500309049 62036601 361703 173718108 340319436 745961023 658802879 994519152 703048052 781533860 163813034 760604187 951726117 268237584 306728283 203421679 354991110 33554184 336760611 614376541 588937237 287925180 967224435 350945305 551799071 524877174 936103852 165528521 726772230 448977634 776495302 747675701 7869835 458541068 352011990 754042945 357838556 4644155 73235927 653836906 719716877 904791575 683946531 297556521 783849464 108571848 175005481 794494048 352129302 762294603 857533794 852448891 654994376 166142860 342994283 25744160 259888255 945085754 396024538 928118630 573381777 605361152 952259593 871761196 509040733 164534769 725670842 578536136 931357060 374252611 14696227 916413944 950292492 32378265 569588071 667137004 430890708 301183121 674738632 10994622 226454830 984839015 982996566 309991202 182134973 750471110 480874398 611224087 767777378 638793579 293663993 964115966 110404062 563405902 539707963 663677549 211128962 992131223 116499899 74093655 64527888 536619058 292025665 159280004 932075243 332102533 994962904 212383426 960541198 627012906 532209307 371405915 395002856 387584995 616942568 246582739 110629030 499047664 446577985 181733838 803792452 226489441 868128795 789647140 393236596 136345480 467547895 976060946 94447107 16030964 405200365 791237626 940841014 298273463 802394226 577058992 289866513 299689898 290943743 79485899 360800950 389014513 931838586 535865165 10587714 536315926 209602993 567707617 638446531 672413699 874921254 162832064 381381762 47201062 757784907 446280255 237690163 57147553 32276892 903256702 962259146 846193947 169791062 708108926 149960970 26120234 732678229 150548655 334696629 20843114 776650463 332556558 637239213 114377264 27955615 746991128 36587852 776882533 60761780 812476754 997506884 112913308 757038905 744895840 924008352 60418379 384880910 528062621 994042188 394640981 865886263 903378883 778377160 315484506 965057683 755096886 641750194 416039174 440735903 870503761 955502660 953006485 159341360 661722151 222201715 731181810 454065287 460370898 207138644 65038147 154274443 86285331 7635582 949500161 753486403 37720881 197269272 44105893 564084366 758628653 317692374 623617340 592407331 820282239 730812182 969923187 326840776 347693968 776047110 842127268 594297712 649034737 869563578 796769676 895329238 866706273 37308938 988241968 118576149 43564721 204156053 147752644 950387383 936542472 107489084 938960097 68576578 866898006 233764425 548619126 386864643 52194307 428305639 771924931 237533332 51702529 653654134 266395183 23435931 926544370 265915578 779374054 773059623 299733697 601295988 632597062 825282103 186319762 46030068 372587513 28176439 152717307 591385543 474295548 320310877 919709287 98178268 516240288 275765167 750886680 281113673 114206594 414567343 691066734 590093433 300113964 614312882 537512304 525732513 179133213 836510422 396494567 132572093 196766151 261358534 827588082 81383550 970101827 928216882 38881754 314202226 855333683 741983235 429440406 914839886 243966963 698048912 667811048 596580099 943935003 371889875 541106850 668919278 970884567 499843359 584431067 656781847 475396150 499053763 573756758 87047766 874511989 189474824 288293943 342369555 715475522 940519507 225052229 457691407 116981305 46123215 349193788 959235098 567524677 755384122 397102474 337866680 376488009 367769469 637702129 254638338 28077850 863177089 142521041 193775172 206182922 393004291 804901378 959203455 780876659 421778621 975741216 791321077 131578979 624615842 955073067 154652553 866105540 513796969 500919713 942409384 780588423 29495828 986497669 932103602 736243931 881549767 373147349 986343177 110227063 504987517 685332897 40636160 897994008 69949948 900919618 999063299 111719375 739771436 970050876 841374141 646065940 825119479 353467729 119666215 537473122 575728368 154333472 901313200 758941189 447061594 422625782 946027639 824384434 946732613 787015702 540019871 900889654 556369760 897233048 393471795 171335182 449568767 793619168 684184895 487178263 795344447 36505121 700524542 511026525 714898371 630563493 101692916 916688516 932300544 59149194 523428700 634289582 539483518 838962515 741616756 223531826 417886723 820669917 884629476 937718443 825364839 864297588 672413164 747543611 247837688 919725025 542567095 132150593 648306625 544587503 169508569 367047894 505631725 856593470 488280164 136277648 145567954 627253611 468397531 826102945 312867412 262777098 909211319 230954756 22405000 966637894 789520151 947571263 340469211 808570946 81790622 34212742 733694551 316218942 260055949 440051728 211084358 336662709 229496056 763591087 737545747 207388204 259760275 972104679 88247314 240300304 798612257 630763459 8826216 178383959 238476580 408077884 351020576 332513188 619518878 172361893 115383226 875374910 369081656 781484560 948950124 615598511 512145131 804122683 451117466 850860371 140657027 978205878 603788906 382826429 336066504 123312117 722742274 55523920 815785398 511850219 924016008 788960538 470889423 574148388 72800828 220625387 582706486 388505179 242225707 245453736 711752988 987881023 259638076 525100487 189812345 213265283 268063027 18051115 634689707 993591513 123229329 326375770 615078313 122566007 417309662 37162656 140644874 576433747 805039270 698357793 903995788 753316723 876546622 739175964 770893748 279247164 810625389 218018510 247184442 774042700 44125199 345594571 845870882 398055160 319532092 206787630 904912113 404299823 403176257 635825281 671637137 835996995 699881051 391180952 239672263 953872147 966533192 293623071 142337164 351808215 268358239 306842689 151198910 576657362 170478622 925201404 146285976 901497239 366832322 928804474 720641960 653809569 68385567 788162630 511927222 158325902 82860041 840441241 548945212 969846104 942335843 840842636 841743156 851975682 571705271 108722093 356092977 384439359 346768628 849653276 350487293 172108632 988699973 72718489 673658201 4354314 989199045 923150393 738076989 732880332 208202453 346109257 733061877 77032851 77468767 983200019 973316940 452066615 971887294 326093627 462072201 291670611 55946703 624313264 543315628 488803285 233063785 379243648 914773573 284396707 49127055 908816329 783026685 494152390 867561699 630640195 931272913 208030795 376387842 229299578 648729055 437059922 578251161 811399042 875800124 894970419 483795724 706344867 445141866 470671852 833199253 866129382 567844983 823996867 776892590 991303787 579439793 242300447 643591189 203734530 506260548 799188136 607016401 655670075 55289443 964925160 247304994 929143076 362779559 701490794 258915159 144625598 688314193 732857295 577172190 630239861 138451559 467340646 92603133 212594184 257257109 549928156 61128432 533119479 899704046 637867798 556869377 700009055 857655020 45645148 59044801 314040197 38425784 445053988 16146586 541489233 144776425 628184203 277279924 657449597 560596183 943027175 914966399 159798045 129675757 249180703 248675435 191962069 173309463 438230980 434418821 931047615 439973024 570110065 116845315 667967601 916533049 182249077 218053477 631425964 465454196 565713568 682235654 448142443 772431738 642240217 177138412 633964394 226097058 869486955 33064854 98790512 341683806 157187369 303343584 413776494 758313428 287304947 403486725 108265625 756699908 274730788 941242949 942708064 93212070 653638398 190732290 338726815 244752207 295234239 885542297 219253639 940631854 83572686 138440104 104672523 435474307 428290695 273984713 439028462 317723569 798320284 255343149 681188194 986378303 173102147 803438270 334426862 1677735 336771711 622942476 923933457 712790348 54085512 825630779 382495222 334008180 463113529 239665324 287569561 702057391 444803214 438541769 261445357 231153681 442990228 201011221 961737371 624885537 651949356 257836472 296465790 218423979 378616072 862510523 549850710 285963922 523426439 535983944 41531216 839962114 547851804 868804400 929544495 576497237 210975870 811539381 379526938 915891582 732874515 729125393 553525353 605476022 38013755 911081243 139270546 65746899 147330110 97917041 714773319 586608486 777289973 608673224 758450834 890870051 691592333 802613618 536196727 595046907 854834037 827002744 481825009 406545314 666180340 410074159 724921127 575861399 539551560 835712124 329883721 933120393 260590256 501536312 496256517 413308428 481239951 425334329 851952596 825483364 949692149 670942460 161201799 244355015 595367029 117074683 547408482 155312642 324261032 676167120 37693752 538850804 610158880 655452200 331137442 768891000 673845367 441966952 624287690 98565110 538306071 860973466 463074787 309166453 686814447 70511864 904940486 943152549 151191750 463942583 992213065 448058783 134355495 964955740 169527695 543667032 367335609 393497439 13637023 758089247 428111505 971468367 348345757 978627017 766744587 552614121 352437035 308416400 660244532 113533467 590605855 671735178 163933156 446955918 334282066 628569723 514729438 75479756 574000652 910128692 624516406 442046319 38916558 643846388 509747114 36256900 132875471 678120983 689277721 336564714 131345210 128873079 188469030 557326429 572154545 292091960 259201507 650063568 862224922 627876497 155600493 105879331 268657544 337675111 439407108 60897472 355877016 810870267 393495081 895880153 834039765 471236248 934726075 705179904 58148866 80581278 591781944 133881120 919410997 230820886 553450518 705446877 528922978 478185420 781516844 300458202 84121525 23554650 416413903 922985345 205431530 212894257 495508723 216965034 129675742 235912452 847788450 219834956 630511044 737642318 988942605 854117094 620168867 109982411 206613648 797613218 519149095 800967207 189247706 550112582 844980004 422308306 144973358 564736925 509792663 972904735 854252863 81983049 278614358 208944802 60169641 888736454 448402613 767626939 307372574 211327552 519831972 720007585 981759215 460348491 94892869 405930451 821993488 719617867 882365952 787620553 576496782 57998928 435197807 115860619 673215405 762428115 219400429 719854638 85220267 102190851 726436209 728484612 867830300 596775300 948830235 282935558 2977094 733547979 992260253 561745925 579483982 687547927 48096082 954883350 597309070 603617751 56197545 477226061 50228929 177096 614242563 469018748 574036587 174846512 632743493 831955196 355320885 297995600 433536607 48394548 853574391 881877010 385631272 768227465 238114107 140740023 754681358 153594265 534751384 182709939 840990359 878963174 158865968 518225435 5165528 942978167 703532596 229628094 210608969 751381868 414117847 899097909 363979839 209044073 166184769 608320152 111175831 747854788 987512096 265997517 398222255 167341547 574182287 934087011 840233169 828280715 129258013 907583227 445912281 360598871 472313497 511173040 687040097 275418208 503027884 385871280 969474709 431797202 722064783 306743739 787767211 618985927 299312427 977354821 280514090 158849476 764900003 659414537 943804800 728526497 819609568 798481564 151246262 461319197 749825114 272483526 568125681 800129554 991509731 891705429 551244965 42010053 469291330 875066293 152036534 952894410 218941862 652290166 6622433 770310095 449640277 548600486 988609414 784874382 902218090 479779491 859884537 771229219 649758718 613741805 403785516 751401125 403291194 682066727 992603644 810956012 425444523 730583111 997749514 231156277 511087619 572874711 160749477 438181567 839171380 432673187 876224586 936657121 22368902 748426392 192185589 537065472 719065740 501656975 693868948 898724605 276436225 662975138 329103685 789280944 732568022 462656085 140895550 987232193 770221526 750359775 371621156 599856664 961793131 857308312 393004037 892872485 493152293 188153790 437388827 517739796 263717825 112842302 941317473 953411418 598985543 996644701 789015904 78730871 361267504 355524165 511004879 647804036 411604403 649941849 507216778 953049988 879896953 946830546 265055762 373729350 856736017 968740005 959569949 98034023 535085055 740750667 326534703 160766971 84236110 270410862 642627389 425918937 907793811 310407878 992732205 744231067 917714127 153091892 558984917 205007154 400997872 850701660 768475566 302199227 694565923 133056752 262037318 481945274 134808251 214224943 851191860 843082031 614675019 548521747 742602006 678288979 527103831 707549946 315234505 593922656 133862114 918507149 855986323 238852533 788263887 534772372 819617817 691503482 470367771 526069276 641290277 31365750 746836894 648570539 476390875 791296250 613941538 575746182 618043793 978145701 839597467 886524170 543879382 701418162 501533490 100794132 396454921 150466636 458977891 547831523 258221877 401653084 569965824 828199969 303736621 478592624 253178466 465534384 454681045 675263191 875459505 227777106 140564066 573490051 51022618 684942152 704587854 696206335 35811309 510306143 918016205 854240017 77217912 964398674 473868441 347855108 250708962 283066760 264488037 286716332 207689205 267790761 325871295 930706303 525736079 912579700 175774066 36980963 876472668 654403163 103865220 693124352 606806735 20279432 533844434 745104816 437146853 351426830 719728854 336252586 82690091 865900808 74839617 586466163 448093006 342795269 701852140 191744509 863988298 917487703 353669348 72369602 97670332 653589164 5280535 60046196 384281296 775077212 261330086 395883367 521431928 297292266 973933064 765026133 203853813 94603940 936557753 658281230 255768038 326884158 830017755 126223025 402620621 829538152 514240492 409361914 278224523 663766786 790788182 420243753 72867159 268498476 50645854 462236724 973713207 236345361 844598946 206299300 101858103 991943191 198161 26356745 73166839 635843813 824206187 96491295 893015256 102515485 430938693 331564781 346115807 645791647 12252785 199404776 423851560 931600132 513059803 831760094 497257426 960643734 24376987 768748526 705257650 925910838 710319936 290824117 599652682 760138160 875568263 292435294 966517439 633343927 10260269 44903683 183688883 501800142 838991613 966838646 625012298 367665740 488812055 733311970 956517004 360185436 615105200 327670414 41602988 352593873 957195204 679309893 958858009 2123913 328741324 48395187 965823454 74973138 826203760 969754650 429312917 600030487 252677958 917666789 393347729 309942645 776364913 562348900 945676233 12163116 153708643 301206058 662473899 379366962 433750328 120769735 424275594 433602496 470541723 57325371 799812746 349624811 734031609 333542466 32098278 818149652 948645190 502463010 160875809 239990667 149792427 739606303 593813054 382250045 599540548 182403305 522116516 624969809 607837126 358014866 861155435 519592302 297815 43734482 290580254 272344960 848554733 12220079 303642386 108261506 763646204 607508958 206450686 603684595 69854986 383065456 581370600 883695408 953713424 486692521 831103334 458055848 593283104 784653513 306766650 232311930 754215338 271772524 231288860 480871140 671470705 863466817 894801208 777501144 373155872 209948795 660276199 812614931 441099781 77016888 991828247 77095366 371259732 210861812 771329238 14627246 285786792 474594861 366667765 568176647 515847250 903242748 697464494 178860231 896836815 860340379 586360071 849837551 284213139 152547357 273151035 487305266 117916885 899811109 215175123 994212091 483261415 663017923 570277047 837668950 374260602 947328178 526602279 770842933 754750753 111522430 247335829 176576247 712246141 749804902 538206158 152419511 774112223 434771960 297540327 403963781 926921438 226007725 859523389 975963279 248166116 376781593 846945741 545321164 223576878 796504351 969234943 864386567 419861292 143651700 493993777 802119048 190305963 380604637 586126931 225281066 133141216 232932236 168094996 47911820 449654893 529445644 416584088 632788267 292541670 743560983 907080767 281691691 360972299 705268401 490697223 29030784 338919710 5989843 12335075 862958963 337897593 945436930 939491653 37748070 251100296 607353117 21700627 512265693 174549167 572293453 147085279 457720298 391237063 783643526 560224353 833411951 677226827 578554423 834543500 395317181 796617785 603378776 624978087 474121742 634108086 534867821 179482627 814891301 43824592 369662557 520023210 926448375 778602978 429112634 550149366 905484774 130905391 711111848 722027869 228729293 277258552 856934078 846207036 479355106 479880958 562910305 34506497 234859027 110096487 737078717 532421323 446400222 716838307 415223990 973748965 753816656 390717497 481437826 287975055 2555817 274338026 832995690 477574473 954539095 349793002 645013891 841089659 36291252 656007896 334747182 360150613 104245595 705667312 497083296 371338436 305435133 73820279 478511432 718567401 765848665 979484157 931944312 78272852 266297284 535694281 553320121 228507294 558181112 222960156 135664738 865590287 890301383 103435743 956115798 953488771 55083193 919057264 349258325 230957431 564752876 569343226 405568907 430703011 955429358 846705797 812765434 17895328 947591159 817705686 138941495 558237463 202130684 792048561 906551931 896486238 908805780 801877317 344788765 603320311 865009941 71311472 828221897 428673663 376142879 438700002 698490683 861223820 90654694 30050122 731976815 428640970 979947508 815609116 570878445 813259993 892176412 323311289 95174102 42405747 369237579 650668139 600126956 172736652 227602182 978574024 979081469 976927564 820557562 947140634 217619528 254108285 221756942 887727035 106641329 279889416 933825084 208678995 14053626 504916368 248578483 513019974 498500017 401367908 113981839 413335060 759316405 941329921 629187977 628948414 411130105 945879475 59986447 193398619 663381784 539202051 169216223 525167353 92035179 672382354 874375522 762969988 185404368 904679908 876001055 503722796 536567726 244947120 749215557 971430349 78179319 809699652 510535600 850428962 792617146 532186101 228643766 817039705 987912675 952710122 661395229 381897691 652881571 568980433 113525151 357568605 695424120 204384367 477808141 598025388 276658117 355215654 752142489 289328182 720006316 378656147 890953728 799170664 720181132 691643912 124363824 738983735 410621500 818865042 22656089 844450832 830861750 356812740 779447120 183970579 464653262 146429084 616123925 50419003 660947645 820137566 882572431 706393011 237761354 131774148 669044882 645116488 156789838 657185307 36889408 209553855 486466092 504326412 589749238 734127969 390977309 879081236 886641949 234178828 287303384 759611892 628049824 357069048 936834272 307842770 602326408 453790880 383720242 88891632 521770709 99259938 102305308 691474481 141846323 185858191 161798194 672875698 502188425 292849472 161226302 709760890 330885127 462267929 608099365 430871962 255544477 150424887 700048779 780447146 178412187 467847064 984259383 225721080 344602891 115893004 14453442 601738785 341599927 647106291 771572055 814543782 618866425 294979335 728259985 835032342 181578044 943372276 764632759 757324315 864677009 922301029 799617143 535966791 673079981 657843887 553537903 916152955 100772329 656083650 976815658 357389136 612461060 494399374 525838669 552929312 707764197 179333042 936052804 959176753 200901014 384372988 596320232 119509290 340467623 877385230 310298121 313648091 531322820 556693199 784029319 204528402 815782072 732453797 196371594 180807376 470977314 841064270 587242405 290920885 449777396 826684135 245344351 134470592 824320935 343298683 641070331 577396408 984591764 340890497 366040500 801766087 165441702 597611047 120787672 131521139 424978208 572487104 290313129 360332380 64931158 609754408 669647185 672748991 729398185 813062382 52096515 279360822 363346793 614810782 101801217 8370448 618672618 868796639 29628519 627117694 493864992 394553342 462952992 147443938 58215186 608413896 328733830 709771196 733732805 922624180 49462849 383043756 262372261 83111994 658574949 466232503 219957272 461390983 742978808 409341366 984568946 262708928 271920059 460973634 38446040 959465597 139769559 495011751 641444711 945131794 180959334 715204345 405967958 844084454 713441067 937692781 356165331 495634133 105474983 619482296 523532233 483089163 465126818 19173601 372412765 560073866 22142734 711870170 256095427 275995691 424234444 788273077 988488282 622530796 25010209 684284972 657899400 626758929 44822000 855821320 780119047 987347960 722253756 793191901 55175081 601377702 836048859 427154165 271300555 252464230 73525821 396188487 255814563 961090597 63825680 649830104 854066823 380299873 332672667 621390496 864862565 436568359 729905929 461398080 317266281 254453346 814269948 567847100 167828403 462648598 493705265 513593662 461979949 201086396 868463247 340605754 676295303 297142817 250030188 594350381 189622638 433710584 154028841 653729685 369770730 362232588 344423879 542568227 725421495 331170889 358579432 33525773 409710055 50160386 222034614 123400415 846298616 559844000 762966557 505200645 457115465 811063744 158994845 448276407 525446545 245261621 238842059 515172125 449394778 542960200 776210294 680667353 1993207 328733691 704879667 889134793 516595159 425064824 596214594 223508757 30950880 979794885 119912649 806032759 506238295 491230062 745176626 627108769 758124629 679379150 805821472 387725408 220584360 3726615 51909819 866948139 471375633 553204753 663329339 34547190 447686713 929634930 653992855 646583364 40113261 998372499 914184904 879489828 451884751 808774783 263914362 298928737 38711155 716851970 264768428 506631771 686228201 786564790 806157308 878687944 262258701 346805248 740986518 849503404 757666538 247858192 509844109 315294729 806886202 145807630 492877472 858395775 212442035 374686935 71935454 916991629 249030272 98228087 25573690 440913837 218154088 68214719 259301657 972974227 678196094 194032155 540011822 682839397 598957847 242689685 934154313 804812933 911350808 28554244 51631696 31512491 51915998 872768332 219388177 40167344 201577494 991105310 705373709 240619708 138864839 854941347 770830360 180407518 314735382 601834275 747505048 706644233 975961309 628828392 902605754 583757538 119659583 551503713 996757289 407954595 220741994 249769311 911814946 324983647 486822174 915389670 255145221 792177481 721751564 154059656 708900962 529548875 256611727 380664259 634983098 245451123 840993603 896369658 883026312 927268279 795288476 371768166 853996215 506062227 379081688 239566825 771746056 862247285 532021746 509912622 438986877 169786242 19686503 273370048 171434279 58232547 728229048 316233955 356797035 498611665 711190143 459722032 62581732 127939332 755771329 56339950 512791668 388464920 79248134 359488517 758465820 976732663 454626508 940200042 2032577 482672129 150603711 24708793 565073822 22899805 423411282 502292707 99216696 292641712 646186864 352466473 688125991 43988630 986387850 629042052 216055619 51557948 601344974 148358294 348192369 745506705 278128850 140570634 300747937 673005208 905006447 585511235 428164728 852722841 516357946 663703465 225503413 415506731 142495511 428203598 762692573 818595732 624787013 831671947 343686027 102990424 52169312 863992306 736926163 766590454 302805747 546685063 148073888 590495207 397381429 382182564 356802216 319800832 562608751 563701945 65514980 307269866 332849736 639476482 128278801 755229224 389640024 846840375 845961429 577229014 19525182 667939652 372152972 769605382 197105044 767440611 440953531 958598694 190338889 51484632 720534741 581154191 497955610 198422273 104490609 878007176 23100264 660862048 528016273 66348730 746131806 847865418 311552178 515387734 425242314 160494684 469567848 898955827 825759150 190542639 78214094 686469704 513270566 418714990 651872224 8573135 105655711 110670411 369647967 977766637 862985179 143252482 98832893 555896089 211200343 401955426 730594350 43483122 424603580 14361584 809460890 273098763 813255488 963306689 890459919 244359163 212165517 377060277 138094470 614999215 890592314 500576925 270537664 809556746 50256971 66857904 283487360 237793678 309463043 970068558 199345827 173611673 864718958 952600481 846136163 817052682 374700716 759455255 823576111 792443702 990580976 161394560 93391665 986136141 252979142 41074418 877546991 624648706 215269828 442865723 543145883 820362060 681715067 511200324 896034874 313509616 609245647 869505625 214745714 810632868 170505668 788654282 490622908 432798595 831932156 871934619 116730394 231465411 885891853 990164125 983004071 12840445 126459960 811117306 71911952 281078801 82875456 440192335 754566504 975437641 935817445 880316927 716842756 920011926 386039242 50575437 254910781 939580858 304654874 483907100 529562300 202889347 715239517 917162040 96888225 222912586 34736337 853052806 583237783 580233383 144641091 852139066 462085818 986397086 514572519 837134598 563083205 172259952 597684408 171593370 223729090 690264132 946939477 319704672 175835538 313349330 593786200 734742947 161869051 820414256 874634787 905419344 500447860 733811715 737327865 970907288 508123774 525682507 959123996 313853354 943001921 459363 997484577 951807540 937849572 777990935 840171392 929557270 840995536 122225974 624042844 530730218 550231845 306372186 456485113 977992318 620719946 399395633 895194361 707348501 831116864 556274657 631861112 969391457 24014715 699463039 568790287 60369056 781629444 370662522 783772657 368066403 586506691 153362881 664806982 978902014 238797489 687796548 756007150 120389716 53407924 602092060 44428755 143843490 315624684 142172968 479510512 47903887 912682395 881076382 598423466 68588076 192682279 297860896 917417040 103077347 329909559 219240842 191131673 818709556 359334092 340292554 504558681 971331493 229314242 642269034 843532196 22984769 205055932 80328793 871770773 690487727 536558811 31732841 927835399 117289659 96715013 420767644 451316966 394726297 215453701 393991553 94423557 933588156 457015363 180297109 445938768 981454716 984109972 638446965 853124000 556820391 852931502 510742358 621930995 775290852 432900139 898176745 476679428 896564697 541219479 853328658 626812352 770369111 443587337 317272398 964589606 351042015 473508839 999456985 360894404 700986702 21205090 30894955 707995262 66226082 550338461 100495494 470358353 34329642 967129913 660211036 288597120 362000484 430073474 238625788 631212162 362831608 463815538 828703475 290755015 78573763 828355961 357784968 507092789 862591742 515414815 338126883 25410478 209261907 561142809 428947249 607807429 44868529 270939747 567375288 507849657 738357147 858739108 734827329 2948996 334658457 73614366 469583579 913762574 192093712 253285107 54284659 299337968 923820870 997937765 580857564 301144471 661873312 549235864 370826407 795709051 25523351 587059563 882424444 523801153 695956535 758332034 720229086 796257403 303179575 653291352 88889893 569412411 969870120 126077412 971160739 846448523 798610648 414247124 10289273 291064035 390339905 213234670 882045360 354695996 940666187 320427449 601863837 137640935 913878764 453111278 855289474 985884373 723467081 230020477 850401479 750700573 843662071 324138064 601560157 294452229 92311436 448667677 80820857 425662807 38576118 550034694 384897104 663331194 73780984 127969450 148557748 738990265 601921972 59908168 628220097 213110118 90420536 107612607 869083526 588847929 917796797 656236346 457387692 308989127 50204910 190519354 176778346 874039200 451931421 405669340 133314915 31438899 960068759 799327535 958842938 120857546 808388000 403026395 132114809 274455851 626868423 971694865 212872484 970098661 618860728 766307295 94878996 101886100 269202019 181568011 174716904 309347202 566806745 637667472 39808275 679992034 832546049 466612268 539946345 477920326 91107860 179836218 436511916 543958293 700955840 907097185 909161556 668468877 770182267 409395306 664272685 604707905 744054526 314107483 761235057 233888684 451648686 880970730 792622168 523603033 507306544 873016575 887090794 546646700 955739682 167884150 21977189 918846906 955738242 466273759 68111095 200123988 216180668 615844203 955061700 138377681 321755105 738534535 674417750 605089792 994332525 962627839 647828165 944064715 349645897 560438600 980408385 950309066 637639109 141581077 72441156 669103283 603377561 501072135 182084646 541099125 945333277 377487069 122161472 35713858 147770887 774861061 527639117 762234612 370508958 583097307 880184439 925515377 873564281 665817392 492183994 609726716 773821287 392866740 673589289 237170805 65229694 270136702 684765965 530430463 418640841 669816450 736855527 940193347 103164797 282823668 991888290 342229577 451535837 438939027 381163835 443775207 101001934 867738578 551821947 983159081 676290774 547319665 901291764 522334753 471359127 249148040 362966397 135606990 521415887 602037268 241786990 384526960 967679690 867288916 828701570 228975192 205629950 320084328 373391937 290549526 920036574 726190857 934340347 772135708 517532405 754285361 813592602 156671503 562954559 237368889 310802829 388545569 451100061 973496367 919439844 182888552 369516441 78781417 148284402 783236681 293546542 187536156 355803536 67924503 364454210 873873980 70784892 329157083 321482318 578070940 221602394 962810776 15292131 573891964 957189591 480811181 48637472 791368911 197516318 461672370 464104269 131510855 105798194 31517446 660429157 993065729 2092960 741569671 768939244 472545819 274273925 497519693 749965974 606270434 391880859 129467842 904514915 102885165 331458844 383457468 32324972 628021188 859133204 430175568 453880106 934159966 351535295 926078155 382386614 195927463 208405605 342142986 114040992 3350353 941381055 708847528 463082590 189829791 523170511 281695997 766765566 871850213 714209526 892701944 947949880 288964410 857185247 785234261 302557495 432542026 962687408 408799453 934955275 768879048 605727133 505574008 25017743 100544351 135484581 811886801 507684220 803518332 443696673 963435082 600554669 77180813 343067641 428361762 855388215 813517561 255521899 718625544 960387664 878524455 565030971 191090017 559995086 360537874 531414909 924730497 759831950 507448004 963736499 209589197 462275530 202022977 459853232 246673328 585363328 875195929 204145472 280783556 371724936 542239680 622439083 675089649 861148891 517388222 782687307 4110048 408985519 178303828 802139131 606876174 374135895 217534322 385614437 433011774 739469789 337704805 115008386 69951493 108588283 195993954 691271630 649804472 19267848 243870708 180047419 234380589 158278138 185104906 33656039 766807004 890220667 121510569 298472899 12055714 345475434 114456183 520012197 607489180 976909336 151432036 465544336 816102227 188097678 417279014 182839419 136679311 307325879 182565619 896832901 945120424 586108217 406217594 34318078 941432943 7591705 241141547 699036324 235612661 479090735 62636759 761816561 104320941 581299855 792356250 334109090 999856138 817686505 534735352 808723782 900648047 242574231 925835521 843333643 830849652 163662670 906355181 376280039 634528503 804452286 919946289 84451406 201749867 499269431 898571062 42776064 84722670 427527017 405702370 700222059 271644077 591675473 252074170 146168195 915268337 645081067 953009235 872575577 595853260 924989381 55115168 401696244 940164934 293643050 974615581 487463255 709202448 838579990 621742269 287987437 617492904 908307007 403141881 654931202 897871832 550915418 668687441 963927268 640994236 81314467 322196580 14053443 23242692 29979087 481566230 290399739 482861231 241821039 131048944 867056930 611804279 13858008 229843441 662190216 166496278 41674520 302960 650471858 413822672 382868948 66562727 623730897 823532153 212907812 294245450 917388057 240415705 143906113 309414860 685781119 886422100 293807418 504166643 194576163 407021214 348052422 878132428 789689723 489885489 697854395 70245062 319702546 140052853 550371177 557429275 485136078 49707489 31555615 64965286 592424215 302220975 209980993 966351097 871906509 94426590 704232250 20812212 44548020 679661804 908006708 265241025 942111857 599861368 354565732 800323939 841272007 844105254 493085612 750430487 28921968 518375602 72584110 52147707 333006804 246545783 918191572 442942719 905095609 169163179 349480405 221776968 125016169 9109978 414252926 943768884 998326578 372119320 558419435 583984705 831694276 883120577 451709805 507642173 855808855 489812007 532861619 148308960 92672172 483612862 525322923 772613566 227972861 357243062 248123453 534375693 671324416 173255770 981087286 713009685 291769098 198152748 569662646 217672802 704897156 78615580 367459316 819511666 84493200 150283262 623957599 441904256 710861199 322805525 275373881 195249432 161750380 896847029 54140508 413679928 622826202 929278798 657760220 537349350 552315297 232357149 357165638 637668720 730193495 328690724 394107581 198446876 514957963 522975069 892130687 842239875 814069184 668463229 538647481 294459881 335107423 549234258 266904106 491898383 712017019 939285288 456912242 469350803 130148270 754087351 299046018 748138707 690151075 910263580 313767819 436374566 758601413 996783117 698749355 286141773 169358370 211177272 21471145 943871712 929223382 199453975 957800554 46796655 593150601 790613828 26472459 663459021 627840258 904302598 64122902 959258847 437307028 922305515 882343087 984746176 952559094 595645614 602748347 404121370 509924742 630947629 723291694 483366206 607939860 967298052 295370643 833080830 126019127 463106790 550164012 504697083 923863404 331944707 47106107 448870286 920566272 157456088 415726313 395573646 628975099 619704541 749492666 14350162 553689414 674284428 915943829 332513503 209333608 427437905 543034500 448490166 906904602 783510076 989978152 714429605 829765119 827388724 44152189 72703291 773863249 191582394 383456870 329998627 97081309 781342561 253687334 986220330 369159296 179884886 606533109 452244452 355078354 119623854 739358727 318208857 423443009 731025787 599899756 732670376 339669849 719705428 43132414 69598507 213495532 905344660 185363027 205371606 106327339 578615108 811832263 837184596 577886788 850891861 890315704 777094441 834081551 268513960 56748963 918214561 635423650 461797710 962731379 414093846 646805702 522804378 556675432 87535989 785668315 377867868 549490570 374943673 99817175 751018057 755141082 820636485 215165682 749084830 21693259 4192688 787231758 96667921 87196337 77003931 515929384 733036844 900759515 273506580 117747056 516597619 655097184 95092320 482442382 652194223 937949055 122004542 710048721 477448646 350485453 821938371 760568114 834145009 70962774 985061995 846469360 980000297 294853833 220170476 206373879 536693852 224453094 169788207 815176194 311562738 986074198 799811486 861770247 598280440 427880383 375100926 910558519 737390445 23451263 466382281 299482411 343021560 224898119 353086361 558181817 523039532 472898245 803485518 365227190 678506844 436588844 34938916 895614418 19588010 499677010 538279254 755599736 796764462 324083920 771320218 531379087 285717229 689238729 178786890 308162842 392767430 599737821 404081872 854061426 746730573 574264158 567049404 527705370 118240319 148220495 178843571 699252833 355738202 502886742 561593874 836590261 305973310 89631067 947022179 490940593 996005999 54095039 625954147 873560041 165481825 573683186 209212684 311197545 770738231 811338886 919619460 56258417 603589925 438954477 962026979 917164637 284774665 965129617 276580382 72937329 975884677 260966439 659379328 142132124 315458479 551346116 147276632 121196280 710615355 733093992 691748490 871945100 884980539 751941941 518809501 436725162 505707895 855586854 591801093 512579078 461813709 297204743 573469892 955035937 836392730 401154179 638104172 502986605 944303440 109217232 723429615 184631401 80800690 964967455 767697249 983393548 269704855 205472197 925431878 750148646 448575656 846296017 886966805 85561164 135915708 190615781 834403825 648865388 886313919 388905823 354613884 571001871 376940944 157066982 850775615 171867240 765798018 3281920 37522373 122176347 544572366 389423479 789572891 817477745 596006856 133495291 790189312 597178160 962826237 534676929 852546799 715685843 856823767 398071753 103081710 66760261 222584100 404616091 422609720 533689047 704860496 747100185 726019102 759423671 332894801 696928284 697044516 805340869 559280186 209061437 22698153 346841235 126558036 610542381 783205116 471104602 106395962 861805287 303540309 830441181 637683819 403877697 178940581 703660489 963885102 337781027 355409897 319637515 941091601 860197661 184327992 413194419 83566116 749424840 195578698 719123527 373760660 480516527 559756939 920462689 202804969 926280177 606500923 799001215 166255980 228428345 466156700 78116307 271156211 271774907 503291359 162825102 862085405 19923182 386618326 499697961 415588679 492713955 899777498 838708900 489831048 801585207 938855431 555837609 977663553 674108260 712972221 645492384 18718767 863408854 992878424 347715119 212155743 375971574 41992702 939586861 997895203 678267522 181552022 26843718 629674721 827705694 749526967 386102600 796552698 31815094 784406990 196816582 475397781 856769758 745307670 699243014 557787656 547589387 557519543 61505089 439145146 829409562 646280384 354973218 347234327 289095021 938908690 390052279 422149027 754072651 123982460 733815049 649997217 198494553 414005370 674303313 893910355 219209861 426545152 779783353 545488581 403539848 411870170 599175131 896920832 985571028 491140855 27795352 875766834 571773092 646722709 339296346 569622580 928333631 554788276 994922407 846479921 400860197 234092384 256370236 457256881 52099506 871330948 436478003 870868921 765731620 160655471 183108789 406920534 718784362 510995096 804322602 517792400 736151472 87631821 411070304 626265834 360734922 267692021 568130508 853731644 675364611 675155122 524036661 975999277 528134746 673356753 577356250 291919899 211418987 238849792 799209356 788469224 148100746 85720065 214723324 813175268 415525462 735140076 316851640 838030212 917344997 710161701 406535551 9926549 765349981 811469523 413028897 644789237 3006699 757646855 217236294 371249285 176616620 592560615 547673112 738040908 110580037 105163845 942865674 965965463 711191459 624418617 343277362 470888065 398923413 364625485 155972230 149048755 684791080 361428908 319486862 527074300 720618253 20718961 737241475 520084859 633604318 653110216 582825339 429899345 703849439 187276816 474452255 400233771 266147383 158987625 535492660 341314820 468677413 833124373 599637524 171593879 75037848 719480226 15100462 611486369 987333571 101428095 635060226 905231981 580587654 375111593 709633958 609217868 186882277 779826176 826256358 474217560 788925315 174020171 990845041 90295240 179441643 157454331 674144292 885258233 811482144 145586969 204019398 854720654 299749323 589771604 895143671 20192423 237584191 961322216 693365067 232799229 222708544 898299413 604646716 199919655 987545830 988254660 509014023 507234875 642077383 891548433 785226241 395680508 691971225 777907612 769478762 867619968 721989332 506349761 71253602 837078082 328035561 727097184 961373812 563823547 972511628 461590105 393407393 54311509 22189433 954226144 191132000 780523245 226483811 8701360 341594978 207524266 26444131 257544328 111236451 201392773 954702570 162545881 690312145 697100302 272385354 317307336 876442079 808663734 96296334 775846220 501867538 800841229 666614558 254960733 788010883 590320089 681347297 857375678 737695736 354300843 776419286 106089460 656887765 54239026 978418515 3704163 675930623 27939948 334792194 155713927 107510257 100864617 383717137 707101955 179031927 65576806 237600291 750892644 121597942 686219969 646968564 587297462 701973646 933430749 743510480 973557936 395180247 955509712 510321634 965190066 581195182 212829191 305229977 170904659 310596780 833208493 746641863 702350371 147572283 503102478 793394797 818571671 611690615 316001882 237291827 770642343 210451176 522543005 845246310 330046559 892871090 268224640 907775772 984152740 685314466 963439987 823023890 744698431 321133464 991671470 385411688 577514275 707407491 614196549 963950892 502277268 988697451 573458089 261599377 753884077 711706698 161142439 119390300 564881205 624014151 427721697 658861301 475163811 243962476 650939852 914800115 855975255 281292029 16043908 391853654 113324770 557129471 659896277 279378689 265756082 283576361 664947954 421551405 489866283 768897371 197924446 357075741 574477509 780970664 411509819 57926435 387573273 143079680 806636201 917065940 70591710 173846654 745740862 426054764 386805806 907985920 848603233 498505018 499086340 416425935 407961263 771419891 616603691 964585292 577477401 366593967 926158917 815225647 201154205 115055001 976503384 923966673 401953840 307749855 799142042 189377315 153359250 775122475 840676889 543552497 377240086 643783510 365160535 613172425 409690033 684481999 377284203 573780631 398028678 14789294 93919146 145595670 851694466 910519361 54055051 229802136 556323628 425512904 367120947 909909129 379213866 709243573 77805126 342912540 124320048 660490301 751443277 209733580 727332048 852641911 904060717 735177977 321300406 863534292 546416991 212369874 892501027 244897012 94738848 338694137 410729726 243312749 279592064 435005343 2866855 995893597 907900448 488896121 720525844 10234659 196287157 987698223 829117314 617484409 242750970 994789410 990365432 785352212 476322574 960785874 482824581 759994501 14325991 959704539 251391548 437223919 354064886 784907201 452561296 233818472 697909401 263605391 176744210 421263884 291825396 166567023 794519821 444444054 212123354 417289865 364528465 532040384 155929435 212688662 649468353 135786671 382928160 599038940 190595210 908037599 753319121 880578924 469805713 496213285 915034488 283977829 646190713 481967097 95468399 292640496 262910955 729680362 328680863 154014506 850341849 996388642 652116743 582937701 89627943 490128422 519747886 863350414 13854031 551510434 767220686 580590537 479387977 444070421 860200499 751134326 42752039 427939368 442802984 766784747 993716898 492166805 364281481 420262209 5756160 733970195 182814529 128552451 951427314 227698863 57990404 270832367 786063934 217039167 829630936 95063968 610664836 153716451 828195714 58172238 709480475 983994027 457703255 487277015 371202339 756608523 676920848 842177297 433878078 364426056 250340205 226558132 88000613 331604004 139169323 853421973 91062618 936333623 129380818 209028425 857959513 477800200 419815833 15106368 171692661 163586543 148068885 792757243 954311238 991976164 749470669 727526776 704458954 627826609 77812298 608824940 262546709 418083851 528610543 559309262 491594745 670887242 755434514 139702858 713596510 995343856 263802970 985738829 855304574 205912707 42814498 273389177 602787162 557517990 248639960 372245964 354025107 40721931 641835031 463921838 505187251 591155476 498624918 520670953 923669125 735445078 902928561 682012747 800675288 620663865 487789121 689332418 489534756 440792288 245318202 414322985 802353618 518679609 727222632 194358277 166311319 787649892 432025280 597989650 625712805 252191295 80845503 732549415 456927855 561961692 566125569 208336387 666569475 440274302 324981597 21610465 576091694 636385703 673386459 508162466 107953278 649468553 417552266 946950913 162305287 444889140 925702191 722303765 371136506 844677819 177640902 880794903 325423064 541954369 312178023 697430391 891055216 201103162 640723045 14048624 688197224 973756302 550418642 638595815 819326628 204722428 470974510 390072940 875982732 211648394 404160433 667765450 190009450 697663054 509869294 839997778 470053446 100643960 409011206 622419818 706696434 885756076 968960666 717977574 552967875 345182676 877000847 19879645 373726110 715178963 191884997 35900384 167791461 754834462 558163730 859887924 953299715 819879864 565976120 704728488 46046048 783448959 701599268 523601284 878582413 746178399 963897447 857475915 601667813 501323233 770952406 216088916 348284204 758159980 443574984 724814933 880934175 489228797 610473382 77125225 818967812 736484976 131758396 183343960 24634288 123771903 950345764 818060037 214214547 430756753 832002153 516620797 831625086 391179531 23774501 687593596 136043299 834209705 738066778 648850625 477285508 659346239 252390563 385587283 896169225 711660798 126674239 907748698 131567870 709775367 452051760 527052765 665416269 490437864 975855498 764218979 231351482 420872780 989211496 54118772 920069608 244007754 804896326 262437695 6894082 239679285 360622879 538620002 232286512 850099443 698111005 207709285 590511246 230682922 593832447 867286299 259989588 423318149 59221254 79335260 966556571 593768395 879097516 540366880 67851496 837827255 356789970 924106594 825855516 208341757 571598559 545014860 980461814 524339108 371824198 792621181 246928064 95578314 749186271 335419489 122155221 225295499 392866103 755858194 83549127 492445891 544895918 281726453 511440298 675961848 64457602 740629614 898301868 500821038 578139435 645092801 681781690 368130516 456361511 977156045 741426327 834943414 950098438 175021104 414713564 300250481 32779427 827707409 706933887 343422642 128021147 368341931 321117482 945406583 506961803 166705951 126704187 11794499 979633560 245416081 773153414 519109997 968769241 862598373 690767685 217030740 478379183 879436617 723323058 64444911 602064217 469026909 907585550 626676361 946735079 995891548 211132619 600053735 400038952 888939429 495488395 405319231 540245311 830858852 74051631 379587784 868301998 68265601 608905410 117199174 18684668 576152991 433021137 116663323 992885504 887808601 586354618 509078056 841725417 979620714 918357296 580412147 383179196 986481224 885656544 762672835 93373083 36637740 450135970 170059805 162366377 319460170 554038063 651231610 686187596 162234084 40374669 953427784 816601843 616716948 961296400 310893200 138362354 726506555 164993690 480382801 979941921 778582889 100507637 63674902 80370577 411952330 747659086 427180118 821404024 431829877 709211865 200560626 587824896 581890761 40602371 974478756 903397621 445158532 528069657 470702662 841502817 485967869 506665938 912001024 83852885 491593203 714005858 423124038 40785028 612510708 850805067 234443636 414566103 725537087 326615191 606874345 644555237 115372526 824846800 471012776 594655033 647768165 604358119 780338794 984609871 572175783 298920080 812629652 49872902 502850380 642812781 830062073 248267739 554471422 132331154 803863476 126377746 188158696 592242836 906840581 152500158 338732571 105649063 505481990 109837036 844698994 690218638 461456284 736926927 598017566 596520188 424311431 151722134 39421616 453331658 724002157 230460774 257979003 565001394 718206626 505277655 402249997 115402880 796595583 748765907 378330168 840008707 53285870 460586763 309687142 569963279 389782802 578021564 638189903 532905206 927804056 444599639 820632326 878943510 539362943 593357204 793087780 900963314 251397551 673906419 82681760 739615358 624056019 871382640 909381744 272053536 621867657 212541975 11307328 293505703 859985850 324908024 170665848 389762793 561488614 876614586 972973287 269578896 396160986 255498142 645736124 376839897 761016516 570273106 497154633 871022612 156339635 379739593 645641506 66340589 963863758 960107146 20888289 843173617 526975646 273139912 824100420 88728287 324393240 823575241 341120111 842443231 323839967 141413712 978104262 467290809 590085976 913827536 417080682 801097154 498427025 602023364 938714396 995509680 48839178 430284673 307692007 338598706 492825798 987862148 317601757 630578255 11402890 681614293 129307786 502928245 222745084 600222463 926875811 442841599 23729763 264553732 759930705 896014210 518867102 903640114 267526921 183166146 885805320 755546529 11820125 581150793 136966185 990106999 916748918 450829391 381492457 702091507 17488010 495198171 440407210 941117537 539963088 156681145 185138124 439246679 277080647 117330110 817849654 170888810 849897827 271690847 983587631 997780797 650057082 227791045 661728201 899241630 872857993 885943836 103849151 474256457 3249281 705134372 129791338 755764747 572323584 213882088 28990407 215852003 853199996 312107684 859269401 791413058 192684004 242392099 986617721 756970709 476303460 812336276 134141699 879987301 321518378 367599803 165699095 243217738 314043726 479730966 172811644 12137712 467531694 656932307 790743439 568348162 446041953 731600441 454153231 396556052 954240131 184206065 632299291 527163118 700547090 33113195 250174101 193706485 588391326 989312577 206395383 185947078 851808474 753932554 264216586 556095227 306747298 789737857 529618995 217103679 729868801 87489747 374754068 796507375 793206372 808055990 958310094 317297505 95885011 568113691 570617084 767300774 692975498 759704618 658872673 127578574 258325534 665830516 71739475 526519424 791434762 339570289 92810673 89883872 55959590 308064771 522160668 227822328 130346429 506126990 967800350 835545992 880152041 586170449 219925932 912297130 116033057 897174183 689150220 817897976 386989668 826744059 73510412 176177687 598310376 930642233 175533017 979570382 457219889 155373543 972420080 355217903 513213919 59616284 824222984 502833665 202424447 354275733 339552712 907665861 761489693 763286680 816967370 507677747 279638456 901275325 387586448 763866327 779592093 574970273 602135960 433436538 451040625 466014501 586328819 250711829 809966600 408257089 694132470 896415471 620726472 165196380 244783708 259966501 350012479 422120781 168316058 312757827 359226400 226474853 797904489 306289627 663782204 388580564 85627066 731812205 272927767 317079249 718859150 278581765 231534318 665151077 684351335 55489690 664966560 590658965 21840641 858909376 35877854 935628664 872210493 281989992 15796556 246712173 88824790 693087008 916642440 526874958 418227888 410610517 477805320 685536727 794662714 217482858 899544616 58147444 914109235 347374192 500214522 193276483 208824586 284040523 676965608 556697822 248283796 134068303 295043365 337185343 422895218 301953908 606749912 786025116 833329551 606694554 849195742 145845009 754970182 311505106 863165762 491148247 429118689 623549304 761317682 467227489 573933812 671029169 549140050 867651382 994521322 828199121 573286802 90087287 133351264 926256238 898081070 163440291 646989043 289234265 48179015 727524247 21629539 648343179 410731329 627882762 793915956 226403109 621174491 443860814 582434013 208586635 563669536 420404511 3059710 732604940 623126630 350566927 867686120 279589945 184416257 635751422 247343199 440693072 762332991 92722959 100111135 34343086 720456224 211907344 890521765 215717853 430742246 783107153 718458698 464657044 575308867 57625648 96484021 179476489 864676997 187768753 644637418 122301511 813564025 225682633 453364212 242530704 648388846 353991824 958353855 460899487 223280790 743777922 936622358 992405418 313026261 419012123 344967821 118701054 245034709 968162471 964440467 620491483 981406633 143288026 451780435 953910602 572082028 626562727 669439223 893731361 288718236 897096248 105249827 631350258 350422116 826790061 950650469 179411733 527655679 231215028 72243571 392426609 501915658 866433722 772705967 516439839 926010883 566875708 193804374 863701032 445928817 721039309 14180957 48326498 645703198 192690852 420534750 975019485 695426543 650117341 152507475 604574238 865275346 362765197 990899942 878482915 605060871 488952116 826451842 418338367 362314581 926561914 803939130 241906699 469694123 869375636 667990654 545807926 961026721 731710701 72123285 182362394 490959889 495207861 314552322 928620165 696642637 15754865 154648995 194320212 732066897 101162380 750428327 871208191 201301612 656632282 931349799 480057441 533551232 353957862 174475605 913698768 103291297 978264403 798198449 858666252 213252964 623075741 387555282 443702882 941554081 973953000 890858337 388898552 259978759 226870731 770374101 101944437 637322008 275183600 210200606 885855627 234595151 141963648 53727740 793944554 779203519 171040960 575707212 45796157 394451499 52553509 651927734 546343308 426459036 335876720 127675882 751041088 41297183 477234846 628414433 740254904 35999223 408010168 494075313 258620374 366997909 141800932 463642402 824509620 591947035 864625070 23891400 43757759 354177064 659417907 255173381 502456036 535281468 121611503 300849865 155114071 795933778 362042665 603952203 544815746 909721122 655747052 497947085 410351033 777890140 857972868 393944885 314864127 547689055 600963817 783825246 220048555 887125849 529925154 127579915 141227420 204054014 843029057 620470230 61078096 189997041 681534175 433283203 229076900 38901038 94858749 257970537 639179348 689222944 706905760 129967603 946359768 656700586 679492348 78199884 695721564 56374267 655145946 519295539 945939872 309650608 856532694 214023655 366011102 885640477 524641307 967998860 980329866 929174064 85688150 65211880 488921791 240183320 77804241 949733935 476313416 844768050 408064901 778204228 447510929 742126406 364457679 244603876 676122807 570091506 349586136 868111986 918039365 747477712 219096682 661040167 128764236 733519535 930801366 993791408 644340185 682522106 695902746 579369985 187953230 399817190 670290241 885092708 178104798 219726775 752511171 197419143 543685898 564333622 869417281 367101376 767908160 969339131 332448880 272050874 359620958 510667458 541309596 578309316 77799297 143304698 863056753 928173195 156417543 161230373 488302159 339607771 707216132 797497579 277123094 113782402 957509603 95241262 1036665 688861074 359032189 994014798 711937115 178098075 684237548 607428285 288437893 458124988 542302501 738557734 234238846 932612477 403542117 655890879 451633384 572343226 130341014 643453875 175981470 512569117 636855805 561504652 7093243 772515115 391226478 362304331 909238895 416905566 109635014 556879130 373298513 197318713 688468857 731994448 509783069 809411378 264030715 803040010 458453852 434268812 913444384 586452760 915685106 355695223 590445750 285153881 82171276 767420423 654394726 437137967 173874974 14162034 185721568 663047464 749596867 988892287 982613522 860910767 77840954 967641263 151312306 426553449 458970914 889425592 541749129 831872883 784621211 713629191 270714271 705827688 577621337 102139313 466560273 101227666 103517300 576659208 551986842 774118387 565828291 143211108 559181702 859888053 386076332 911778016 997957990 668935576 311420184 829210621 139350748 861249366 588991717 515297882 797122650 112862342 622071632 859105908 26120706 619955347 800003194 777005325 455228877 52826607 103364734 360735868 355988049 545992078 803549714 790330577 479563424 556165130 679441915 229903724 391255551 12582430 307558136 443213665 609484636 691078481 526619539 488898682 481830662 962507585 5949124 451561219 160629035 794916268 527748178 496645860 195261902 733095390 782239078 916669289 730304814 408956078 698198453 547528527 609956885 277473833 98438540 252371425 332477090 331313913 508682572 140816391 856363871 652253514 688158462 192717482 849851637 87779542 492454966 66352299 155221737 522402794 895311578 397410576 390248338 690496063 725183133 293698976 195833392 456037666 133048527 447694084 253150713 698424454 753494595 89241945 822805563 184516087 293427330 546473945 542542288 388274890 112971344 534893242 781448549 331428323 302871062 106159261 692857621 544535205 643008023 264375771 315813749 594788932 210896578 856690065 388883125 607828531 236517451 154938074 920825960 793517349 142446457 10355009 58451352 686562353 200390335 875601793 281543097 69749114 54328706 576125371 910459601 551965621 843500638 993660827 165541600 696644471 648027773 952481259 861860217 262017017 175298982 502271217 553709235 220928608 935331425 513858692 780338651 888408931 953678816 182949923 16559767 46595911 150460286 312314186 98845056 257871269 633114558 926656729 831656433 336641730 937033629 903991006 717109200 616742926 325364742 942934711 620124398 712284074 570893419 624423013 655727861 162066670 107854874 433549868 891410613 270102713 434159595 151884365 485038553 573224323 893193316 174025521 419824858 394286640 205291037 683142656 44865264 975904729 846087370 683491837 738237425 398551048 807509217 59496072 366751977 69034740 28432974 904734990 986086314 542988774 233109932 796092780 87500345 636898683 115128912 654960541 397521420 137508695 646415907 498216989 729608804 924602072 812255445 71916606 995264894 340138607 401271370 376011532 731510213 192745709 989970275 487994259 684856785 309532142 62012411 824190634 744548033 316482933 839791805 354535264 599074411 980107566 63386934 579214442 445920594 86672785 863223526 205414133 790275422 183412389 353346034 267041471 332109528 175981373 374535327 792092093 245717950 106783048 939432406 78783227 130557157 740123405 994755644 555927904 333039206 508813732 374119047 308818926 849596865 969445697 77511860 824311982 927418525 664763187 208724102 358403165 702885200 591178841 764467781 204944389 971110168 964605823 92682166 911222935 430284761 917723116 41018526 349603686 602301639 719124104 903082459 868802482 723580874 241618721 548509886 561202887 703408237 356215489 481788470 936478220 26677657 601363747 761226171 272482290 338150307 935249793 669431490 827512763 44927883 352870012 858918424 923590710 304210171 514077760 437064166 262375693 993525063 888999837 187189744 117002795 58913982 89890286 576215269 301711898 746450198 728139513 846346823 135228126 679121426 704262833 828267263 481887195 193168190 681125963 686731775 971094694 937122517 856947320 277734229 901118434 275656162 181895499 647173233 571550434 267001793 385759846 335146261 817997388 403133032 657969659 908214433 455030524 161240637 582186331 798655376 731132303 39566830 440871520 330303456 668145680 109410036 267187864 962577985 254220805 587000270 172461357 148285578 929188413 623347639 758954819 172804815 203958278 540907737 68862135 761477215 586652313 697030354 939372805 657863832 25786307 258651633 134572205 919048937 449254495 566316269 591849927 257467009 623563639 103894675 219413361 992739313 715158743 124598989 105105748 971959251 849066509 52457796 720982288 908778861 218327386 11202309 856247094 310563343 367183436 699199730 664939112 485234918 791293782 220903395 497012548 367717173 410858611 52908000 94403515 592906750 103327286 640048813 990052396 37034352 110491679 414517637 399882391 454791275 838029695 83631080 983055651 372061604 367691140 410494530 48390970 757823708 610196306 417396824 676177143 793261645 585027991 376845524 461858207 490055400 578113742 499400056 828700619 831818760 978514242 750197104 654637451 900858168 448046573 586550464 567692497 244877742 601825721 205501729 387466569 660118694 48892766 934580112 73275731 642494580 730066388 271940508 214993829 579525957 259476916 399973679 334327382 33134475 561461819 194457954 79150437 928268839 714731170 128817240 855091793 304447052 46424704 69158117 219142710 697831247 134334996 737277390 678050965 98606585 660174461 521330801 766646260 996239943 521854256 934937438 883180861 131479919 60132099 760987366 207838468 657715287 566827103 591883893 819749443 547539572 685034657 577858611 359883736 682289273 427821690 778729808 502540342 370156154 453973589 536785056 776182749 36106919 455925098 202949382 786473598 221904067 574625503 219608528 676118551 880024998 832652392 340286965 692149648 354470056 788399519 721789412 888124516 282247187 917795219 480696874 74170512 570649117 842346407 738484285 963867995 751295548 53488133 785759049 653855205 470242713 818161079 508546243 710590995 442428522 653412686 640764152 943072363 316383998 604600583 890719278 170860856 696723044 942510578 274172895 886263968 577206390 430795533 577441296 180755962 53329758 860546651 843389486 209871788 469286896 416250890 704685486 63151279 590739462 726926254 419585648 208531904 535642115 118442466 59969163 806592582 876090440 350150709 908826156 316414323 309136059 293821469 361789708 985230310 2974353 572335950 579958363 629523323 938482528 686659736 215454244 633137277 539235173 667289451 220361856 856311643 129783588 85609134 823587164 852742112 483556543 776380968 181317029 437973801 468174633 497861536 501411020 113144146 954495282 236529171 808499913 898774803 462831918 790657866 582742418 970943356 129384768 600630843 448648381 254298955 921955960 478771484 674780031 398570792 793800517 578165205 687659767 883277607 638260125 151725574 61940399 747658826 995177175 766606403 398948834 756302835 732418399 940896681 421894037 205498528 278663505 48773636 555404768 623786490 447431094 415099597 359948216 711659899 894624846 432552314 791266060 552389831 191135533 9168115 194217013 436488160 615146980 11147163 649470489 812835532 935481473 190994944 381809983 283839904 296094468 675152048 600209916 557918881 591020997 839820452 440565396 206102677 437088476 297919228 909922170 664387140 658548122 980569614 335989667 87631845 731211788 201287678 664957076 92550809 600047311 498171587 273277212 844530033 34635110 939581344 282090080 684565986 373965291 472365922 789417447 917575977 979857181 585681633 438315829 512209177 142466936 116233641 195036854 256672373 245544848 630191163 748891483 346014847 181700981 52564799 511796839 329158032 35593190 221902997 261950914 772246479 441636888 700302482 876562397 108835780 718840964 45353327 241247316 7432784 440001015 58276689 898075126 732322115 541543567 623303808 995230212 13541631 299219459 760287520 256084991 30165358 503724301 695961432 57693117 832712246 108527612 492064936 819087659 143924857 523621875 238546758 569563047 973286174 877632836 431113469 836375189 475087335 256936822 600167042 187925191 390467611 200911818 322933309 160763093 723759788 75605651 387022147 64890718 172468341 61929498 466637408 246943523 741553779 775528120 708416744 216404047 665703792 430561471 536465911 829849555 812995376 762666112 397654012 178233372 971989946 158204635 257438565 930579142 685260848 255597170 522056232 27707484 832333571 75515913 87649561 601369200 736535138 239626872 705481618 785643406 274438941 978313393 340705359 50771061 363878565 143330819 177125610 561453439 809388725 232057747 599001615 730491625 758146595 571691150 778468227 879856505 61461644 698175343 642935468 765970597 67848446 277140069 616617305 184340022 3592409 949961164 542059945 994462226 253341315 293281029 672121753 255818495 425772405 343215538 571771051 940010265 361031666 876643608 918880022 74671289 348623467 658538698 863401389 659142378 529176290 536872062 550752500 355538121 218009174 154723269 987957653 488888768 309549847 396050471 692645890 404115715 529487398 622192205 877318154 123574794 658900104 135896109 689740369 106877051 626231728 911339265 533896840 402670538 702773325 104174102 253455479 691313049 61770454 987524431 95648585 121643222 329764049 982243769 286466072 139669080 185363777 523872580 847358562 733378284 907932674 913847886 906616009 124541091 78579908 144646094 165093305 727477922 356115774 680343356 455547224 358005923 420556272 65958778 426655445 773247520 41778793 951762027 205764301 475470105 631176755 525155336 467812680 277102288 905786484 797174928 405935021 730217546 424044384 890338710 204777251 897084686 46815711 36127433 321468811 415760655 481934417 643031278 251626746 613473820 531462270 896649441 457701696 239171510 200847306 12960933 447724690 447798391 817598961 571930426 926112939 202380673 294420647 168591136 119577893 535064307 640387398 137239317 428149658 846880603 168701394 743925044 48566476 51732616 834976440 78988509 20446042 888881513 776225771 718342977 974371337 792871015 309133554 437723242 900025834 923712669 518762880 148405231 464546622 491963908 498357022 561406901 984488714 221820671 227516304 861950553 49126799 600252954 142081845 789095068 125994688 408732587 108761686 415827613 455424917 577113523 799557711 486135898 870462739 450308500 553162798 463804348 374577131 449662181 92611569 490203259 809578429 464127605 797837143 500364472 882755987 729961517 510181925 361812648 496748237 447529528 616994240 154501365 961403886 617404012 193749674 987607273 356548928 278427157 239924018 900019244 536461483 869979199 304125451 710630031 270111579 668554223 258078673 256112570 875579117 97434918 531583116 742432228 764477247 876316225 526320740 849970134 801399453 646155673 41864721 630742266 5494080 535368273 308249313 93521691 127045489 595785571 919954738 253235042 114547722 955488152 437856979 431045454 772868607 396195940 818801481 262246160 213444824 778911419 664519763 759804923 592706794 435363027 451782968 273839271 283175823 693587448 575604254 362819227 554162261 946143278 543006917 949504290 701496232 126816278 59623264 125144050 683911788 357216747 147588852 981573917 164751999 271024734 878175753 161813628 11603458 675399639 477572316 37721761 952699703 950544412 311252388 731677982 838994509 965043364 17803596 815996060 616664393 901637077 233964575 503725972 174991760 180837492 465290125 992961824 203240896 250361339 739348560 434598989 743415198 127338233 581085687 376544146 208421334 199155932 918413662 940235078 254227875 634114586 941392352 640727197 641527488 721265268 88783395 870165737 458253103 168042704 550339513 887032500 118524464 505660008 577145210 981659395 769673766 658510555 377639462 54670189 79169481 989778943 877899656 525714244 832030853 590077634 170068006 150850435 80572422 811616130 389314855 384507761 361390398 14538618 879062880 492305181 81937387 490467147 223073798 405818111 173021894 858405382 236148777 430834027 352442867 950854016 281044488 512836197 61287951 526278490 8997235 304222013 258017317 878927318 659518570 446546325 506486929 759713975 555015629 640070265 588725828 333020474 319965577 67264265 574915532 106757047 279780645 782427856 217345146 183042068 830698349 922995889 880611007 584225751 450410174 974787319 262358281 16056917 38848959 702017691 354277404 366639649 289056354 810787387 125777649 286646400 320713473 621906244 51249125 593543866 621027747 845118227 460330927 243438898 570022651 210292616 567267656 644408486 894482445 158055808 710074178 846721368 455010648 258003024 868972809 201852141 164087670 32127301 726047177 361143236 409569569 169149459 364767891 411018841 747145347 341923508 551150194 321132857 833316520 868059619 377092860 582853905 30637025 499977210 620698863 833088764 180249435 571094152 70236281 464474324 84243563 531766456 526541129 776066961 851132468 998779965 964133057 506517469 92092893 451992895 942761034 505033025 407190186 762326069 606560193 679198746 293845032 45298464 195961876 747549708 744355471 613276913 403764434 781509289 546262068 457059953 54715139 419754799 311953775 423197916 412804448 470398317 214539948 434992958 511977345 663749931 781098009 36234249 124758092 568170794 249002577 207627949 549410623 856382191 790051542 557197139 650264031 316308140 7798591 400744682 691557459 67641522 449303539 502271480 202429846 530764321 825020728 933550681 572758431 334144372 570264117 151268867 339101867 97439847 618974196 599555464 655979689 934230935 657646085 25148644 556067516 667306730 923719734 769225194 314994931 2454650 972701493 23058017 956343892 140773791 527888651 878281099 426071662 174917597 204215308 849107752 241855427 742506039 671696978 431131197 909738335 838482916 22801553 319027682 961607509 71796717 51745117 341563253 662251101 330513619 398320271 805026352 377112462 374149851 412248726 356946993 593317700 758202119 676613832 949561600 91431330 691994925 23298670 118268401 122274399 37244221 750415693 11207575 253489295 365665337 711580979 147481231 324442348 897711317 879450227 32276506 319357183 921278091 420682779 499097019 286713460 169117226 346485339 436585382 537362846 36721130 389548205 430333048 146732426 221583106 359661957 477008147 38469040 498800123 215938772 108077585 388573122 652540829 812739246 389389517 65556149 392061923 42067735 278134828 894875107 808465048 778166149 914017587 48798997 85681445 748841508 115990953 667465729 497067525 762258319 947368894 369927263 550300139 947939692 406009539 128896858 45716197 846210483 596798665 632114175 991897887 33730797 549499967 476413325 729870664 578310653 38708117 324233331 232825332 198169586 11778009 52252252 344210225 474735664 394230704 963832801 629611530 878354028 670898039 550659441 903636199 676347468 621298678 160111849 817779725 583193347 324519418 6691964 209378742 706189888 433190987 285042462 24128161 337159479 801953407 303109961 590663253 114102665 358681778 254456791 876270424 274862484 689618846 828747134 461030481 279153275 593579985 401419595 995126083 34444420 229585282 293139128 566602495 468225060 836912621 207364823 911287882 979830149 213559527 448263209 390381402 372050659 110999313 245906342 714238928 366701996 997682908 235760545 344541625 131906915 423619475 975623249 213174479 918301429 503251992 753334703 107357442 787212850 97781506 247285188 661033349 13929369 41174233 687245374 265354404 228401400 633562495 84489762 601552309 301541533 100138081 545582760 774425092 957988863 343369387 75454145 198012181 287654977 226839698 442719786 111832251 375705084 717601067 686333868 12998131 768080405 505634619 25027295 971210242 797753740 897984540 363106372 702626976 376141567 175699166 309499223 426318581 104323936 822491193 645598374 673939365 590060211 691204075 836347894 839043994 423372196 890695828 187256742 573933265 248837321 672224304 80997126 90190423 410238884 997190135 953679100 55590604 835623318 861220391 972994807 914065030 174989844 428300755 97285869 865177558 615149276 406431178 931137604 315996370 739879262 140834758 416931883 658240546 490147983 968107832 58416149 58457568 509209994 543976074 231720857 365964553 420927871 468784058 760871117 434168419 157790794 489681815 866212861 691443789 466787397 336579064 210713100 941214335 615175022 788290319 665907028 320406706 441194660 406269256 955662053 165874604 770140290 921744172 46751281 593495286 469883811 175300235 607808006 850753993 499873382 455729102 837710306 183869606 267126974 350739907 591845045 62051113 484923951 999233660 223168867 617681934 723776500 586162421 854392625 157100662 417397417 293685615 56381516 243814805 916400493 553175291 955016610 647392907 3500430 679991905 893066371 271280785 751908511 389988707 748180122 424405604 515609900 21441113 808324505 264733622 558565482 52588650 943862472 306021085 383451994 794091203 913932814 94120889 86691578 134881457 128954070 930399259 256973809 163698693 871849268 249242780 710160608 503249799 625107572 751724013 82767204 631089958 981025781 327849285 821624999 872802972 846206599 357977359 550799677 733137732 300685042 357765172 11583029 627336519 910179565 917423328 795255336 769404098 498507380 803071540 235917915 72187891 871791809 9929127 887148270 405348623 454339043 924752190 865189578 949003854 503226914 548671266 457817763 330012919 460763669 172252710 990997782 671057008 456626558 892139566 698359984 653674885 682356473 388802895 673196392 50134975 814342049 53500483 566957326 52432331 715965880 620065111 170931072 278728897 818751564 283887241 428060640 479940890 381050027 163327830 503085359 715946042 756202816 854852249 946717744 833916246 303532295 454469897 312641409 930136010 917291585 16300564 246678952 101137506 237140388 542005012 965484931 82589632 529533893 16738259 7317428 712697931 676884964 296544806 804913705 15226862 343960933 476539679 315960327 612629407 547482277 293672957 626945183 457787088 819961334 480217996 842322011 862656560 716011057 391424482 922759409 903287377 18269822 882399939 963553154 926497160 537877243 483751406 79657076 397951032 383526495 107284068 3747465 735937351 361425459 627385697 726123638 30261530 843264443 38949096 789393196 453377199 437158374 235439556 548210493 574397203 329518673 90312396 736085967 2169611 109249507 240770207 545414922 458469644 667571422 354526490 965890422 156017110 625998548 710232691 386316042 900588539 634146016 12375990 177797672 234873282 511400176 96416143 270685011 839608553 452050926 110587278 581150124 358789302 433057041 411621701 409644991 765616431 386256248 809385011 299807928 270765275 645703776 24369918 466852457 713030037 91534542 935732979 203339224 190513244 595823411 853428231 3281366 778518783 382606793 115935041 735077666 536228303 273493715 420251892 154034794 748837766 148084137 523727650 994534138 182183759 152428141 40472482 843897362 177446771 438161756 632464668 4714861 904700747 374590094 721235808 892795297 733371609 588264412 489542770 660143136 435593656 900084297 83086532 245993415 931450894 377659679 692293918 276768128 951691282 233417101 123945429 443627933 979273192 935313717 271347031 573127631 102244074 403774394 270407851 885870863 663820695 59100912 867830569 379348932 129369227 57254104 677736421 44416162 810819032 403844716 918110946 998403901 694135113 945539721 580104217 578473216 874590485 487465885 404784506 510143709 251378021 708149424 486728790 423117817 599944472 753605156 288860826 316360796 195061375 804392486 18741510 608577425 285473611 728747380 732430259 19617171 720573625 770055728 315053092 745621298 75909550 656726654 708676025 785233836 865447974 811765513 806697012 8922593 615621127 556195925 87144527 964983580 457927359 388854211 65674726 129622667 475488692 602156135 683937322 934340453 441572762 498068786 549034897 126204411 452611319 624535563 416460994 963174386 394014296 652234272 312045204 133007785 776559676 477336034 214589603 107654475 230246944 703006078 285363831 448602637 569161417 531726113 339767472 912130086 124622634 55246527 494657532 431456887 954508674 273113708 876471626 503347912 303254747 55816094 569144825 410561436 643568499 842455671 450891580 227750963 199001766 353538084 85775294 608479091 917167201 312119775 851217286 536740436 503344471 504505952 98439204 609529368 314959341 460878382 697058321 837047063 646640455 962492601 523668859 804336291 800610544 763320880 412478031 454514447 731052213 308636749 884418873 779827139 850944103 466249151 792541086 666999186 239092237 566354915 538478279 680404305 471733432 151638287 607720217 424964671 709378972 952231406 21170782 706737900 608533787 962575279 800540158 260012204 170046715 101864848 900747305 728657404 384041247 854673604 538019158 561686941 679309125 53965950 492282053 440592208 756932338 304003851 377791159 329821885 318826243 730437545 203052997 230594793 293650504 622799811 649136180 10731927 599857890 138101655 494637313 478800555 220750773 369816621 433899076 431811808 221629182 159213891 873792115 328120515 202593447 148811427 120888744 557188107 678511159 257569840 376150024 714666637 156466859 168225655 159975323 575080297 130772858 796475786 451216872 977367722 212215273 683843288 844992866 91927755 711205134 952596677 124354118 881903904 576944801 258329461 951376782 177558606 577431738 37728557 51798872 580982135 408260760 202906600 984669840 797951916 19371354 737413571 371964176 258989674 674218202 57882746 15025621 215211990 617085411 684549800 459794297 716986606 230996500 770411984 639257027 935884335 276600960 212523529 231827256 386213958 991373505 395541581 572744818 441724667 609463963 576936717 924095104 879317590 417338040 255051242 465328277 223414677 233005440 118689373 214812901 156881630 440508963 113444667 860040565 155862248 444930119 516567814 403042078 670640226 747626371 203730608 715812916 128420624 283313984 77220994 611320931 539393 461262299 472957572 15552849 915366560 599836092 797012362 598930354 889356669 385143818 9549658 452417326 42678306 361745680 424462597 32867487 41347340 778122913 169830891 131986844 20888832 890148281 130862641 223139766 475665470 329539777 206547259 199524878 712833241 118174559 390349378 966396853 342458744 402017422 363386903 29064377 124575152 231842336 62285009 191389435 36070730 333019800 496470048 596080054 519739706 215763669 804403877 167254260 385134407 91377621 288560137 22182221 960367889 353244278 717662628 709739663 744475800 347236619 180545105 908626702 87986413 925343805 642614737 34686457 983811607 23344464 524612015 93058530 639505244 669445753 734332937 199938793 85235616 330613517 907044678 602109318 616589830 737315719 514828466 318762422 286404870 234035925 8777574 789899154 630767792 420471924 709537638 523070241 580732661 372578613 904353656 507939449 799193493 778501362 726583054 576761302 626172088 995591530 257094628 972119449 539022344 693827455 526201236 940539490 939617022 262477514 403874545 761416812 899942284 432110251 631455365 149008613 742894179 748560646 66933709 581217465 140987854 399165027 997556717 637638447 646306869 505558527 43813785 607026481 202971786 349039796 983482625 735716204 911487659 941033604 153782869 504428423 787270278 523022564 732507203 258931107 500057322 574335085 293354314 134482791 338949058 973940072 163575221 776857652 180281303 712588893 795078351 246777584 752646715 695273334 550761592 748176795 850599994 998946809 948179848 280051063 254586210 84981437 798637682 360802028 177415898 434127493 982746375 865010691 869534094 812456615 688495682 448952455 512189325 469206176 956756876 854548240 229591635 237962442 380628001 142344289 908127895 854940761 994911346 421486121 578185291 467632932 767572114 508756370 469577665 64043017 188161420 964688885 858712925 956946108 895719759 119765263 897929558 262512797 16865773 718328011 137588861 110768528 963405920 244977416 932431657 681421037 911310401 199023196 437843434 538659628 836911314 4879257 380113840 204748101 831926879 471008107 378887719 31464985 418864525 849224973 806888339 35350211 460447537 309233600 791171222 765856086 433960478 859091966 882587379 71087400 519933360 477774050 98711243 779888611 576380942 812568378 905896356 902082576 949575773 834416929 912862961 530978122 588782680 333824248 911759272 411834413 846787980 656311253 961293279 999084221 414597003 300994538 756459457 115298384 162446880 449027941 693606034 262516580 789653233 291864225 833996358 585669023 480827569 399123729 605299839 685064989 16935217 233052307 429220894 491268034 962868559 832904327 22698324 434499964 629052295 475294674 565750591 786074459 591280337 174844169 782183997 371340653 870530802 146823191 805150314 624585014 820074243 12418203 885041360 127136306 33554215 95489141 295034731 137797895 954814394 796455780 628648632 466756284 668714068 486069043 236695667 627178996 170318293 63630095 178061869 832113200 367887210 247506326 861551924 999468149 782902809 975105133 935262618 58530125 689140 318508790 114265407 183412175 42583625 706142787 479672990 38535954 687428426 422180352 148043556 754854786 210019226 72508796 200118866 171284322 768861459 417921274 313183817 861632356 167058412 792028806 307110615 363817655 49704516 910939106 457440964 347115468 260139220 112698814 610321053 326174284 816149402 371522153 316170036 762286150 367047495 220098625 986594991 97669858 262488062 665621967 105339544 897306355 361398903 546993189 760482597 247733625 643504000 384648870 656828398 829695407 926789218 912357010 308493885 954947196 120021836 680657767 161343444 673056936 723409219 5374442 442869024 427406418 250618429 552533114 846400271 230063705 116699374 291995126 279119063 622770118 453788848 12920598 440441213 784109404 329121558 700978 242657446 599900566 319514105 553206703 783054673 198275273 220523668 754733352 193253230 978173303 892158658 953632458 822098150 320471716 218521729 257932190 121737125 434371199 918520516 494726453 770392545 242953789 872422819 73610995 990448844 913560427 272596706 845013215 85440799 831032536 612818226 566737865 407579054 128921192 553523459 1365609 17277250 280033097 287971848 21455896 235292079 420042267 833846315 376965948 311105105 328185711 161037551 865089403 684611906 253474926 187786396 395539291 150913781 775335157 577108266 996108689 267201929 897933170 522942874 39081588 819369658 750667297 483290466 719503871 350176567 966191021 102723097 427190361 274990469 855169575 427564801 812966562 816803162 828227719 704205583 968018867 76540176 559637819 406775133 360055212 75976036 407040844 63287915 431361530 160668540 235295450 478588527 95833937 926290396 189816158 692298943 397833725 185456527 107696120 122909050 929139241 250971468 407071196 888352412 732190954 924541439 40853686 768769630 285821429 628632888 760755806 393256949 180673670 190039806 170406876 266160321 641759705 852589861 902523396 732710480 438009346 434669587 404329255 12042126 828363560 809229463 704889855 369185295 157928650 290040710 529205200 477730190 601729656 140374448 824703757 548638606 2040631 865223366 651679781 168157565 743108476 610989890 909942749 258272639 993291425 137850166 596509728 868610042 24574498 835530651 799269171 120540157 82224933 536156282 15635873 350508839 374506998 285543941 276891696 699740563 120682697 615831237 201743526 159237875 953348283 379960787 593104011 613308424 492152719 254984869 566657994 612578897 153591977 381773767 75185308 394611171 201184605 413729807 783484796 888873111 610755970 254644770 43874323 403005945 431383590 566224843 134377004 148451689 697270972 755899149 787476669 439088029 401703313 127251795 111594876 502498117 945993827 599643823 92251775 877187845 168882485 19933824 415463126 450172506 110000694 121993739 118636662 529310087 929793731 758868143 380569246 188510546 216107955 356454943 22413277 202238236 985073372 312198671 927451037 562434572 412163813 78202407 612814992 340340007 419072669 72215960 408272195 122498247 237852092 856643082 751677344 436078253 734932014 62294721 581094015 226846936 686108244 489546767 568310326 554304910 29326544 437622763 719261749 710267238 832660551 540161127 278213968 953508487 592681406 187272329 663886583 175247783 836372341 885861730 948019127 563105853 879669519 44739088 951979041 918192403 702188896 397441719 811534239 893867146 290871685 592015358 825140407 683935127 159021276 716480876 974207836 928014840 365131268 230729327 741118811 235063522 88543523 398221549 533647655 800560146 237232087 692418491 234985042 663384567 138625360 865453724 892732221 67730805 969543109 255917838 672817955 803530905 548069118 859915604 187738973 748781428 419729475 211724757 497333680 549295570 416391910 269310813 135100083 353121234 808007941 650066595 816507416 259903833 858331639 791134597 343233318 432319384 276098440 226385758 213870303 770913444 84533552 124837391 264234141 311459422 607783036 836186091 279017357 674008627 311731157 962713414 750941073 88551 793901767 892820487 866923048 29779185 982048640 527807803 704021895 64397687 908180158 373944173 618895142 838740788 106164775 703615819 758489473 934462241 703657418 933130976 911446982 700402664 90430321 267297084 809264726 16275215 808082946 460364731 702094884 873359680 369303114 212554792 594885757 986799989 181801853 387569022 642803470 308984224 768285172 319803544 619024854 315624918 461900299 812936290 761015048 162778696 693342504 698612925 797631348 83728580 222721011 82300995 283105182 915551731 730706250 956032446 683144674 267202247 43709804 909298792 575488847 928922409 101150383 978889211 245865630 209330281 468874799 853286968 457394710 509260017 266682877 300823658 893410820 85631680 290788132 878936290 46903472 136346783 865604750 88522489 762335133 700502054 83172440 946182949 717884757 177837028 935727067 868472521 41180698 65899164 293400580 534504573 286289480 532934686 378681975 285335585 495450328 755902875 40887084 242098706 797538299 839029315 727509809 200008528 503904639 595824001 364871621 549596688 836618902 874773878 742816878 221428176 895832008 521298251 314913102 155070926 919193134 236202258 217248524 855809865 623132947 488395120 503467666 196788969 218719412 854353693 951002300 991150071 102905878 623264048 371411663 594334543 918057215 727603518 261295674 173711522 98282842 144072588 971477864 273792309 10247880 628559077 30115598 19250819 470714103 170668144 778503348 394339451 234211966 326069157 195778131 125343548 814401703 74395915 125196753 748007448 578359492 757852388 889291055 242824294 241565689 401735239 258235757 367623135 5162349 640755933 266188829 234886647 923440397 772843397 480527326 92144922 527949718 230281235 147317008 868531620 353848038 927637665 379220181 515134118 621871458 659882370 796189314 367764019 485205716 273882703 615063348 766069393 332727539 127709262 264244347 936246247 975228255 946656394 190532621 644355867 128443330 280322853 720610096 464612662 793719207 856939136 688554438 824036599 180363724 612312909 461468458 230000000 207559298 524160525 587528974 726274256 909330666 860866568 374370225 789378768 206736371 638714079 931421833 956039486 459416958 365640014 786320820 760153708 423069315 80839372 608300612 79797731 340208967 128579268 527071644 875478614 291805519 255336872 772908292 973907717 386018768 788997969 236415779 997054123 603073030 890304478 519074056 926331553 527342689 985091631 778140648 236953117 149782566 42967670 276334714 176394515 734988827 56573247 169406449 68901833 313715702 449967914 390974520 808303917 607062172 375901402 147564177 665434004 409771907 726122633 402980294 240461620 944097959 746372039 806312904 783641392 735612266 76312780 698542575 62767140 467349467 321075657 915761033 607588931 232391282 93394511 581064558 711739886 493055181 182464568 597357853 806676559 859587791 345663380 203259541 747672900 546372433 693588397 703302835 572906361 903280316 581001377 322382814 304212987 491339982 553686743 716537035 673873540 606290576 72274620 784472171 382116101 376541540 985803615 219783839 68124812 864413710 942346460 576010594 84404379 602943877 124128843 157572155 698306742 628349207 782591887 131258488 159599886 727910470 57710083 436592832 682327209 432995417 135426085 897532345 452022942 609141498 323683848 368550077 594775388 546311904 273950049 371519755 518843147 309543070 222404848 716267437 725139147 470957338 999227390 694859825 841929865 944412771 338310982 300362569 252376468 80743650 263417663 945009382 322042111 678684601 597858706 647397152 826477782 109837977 813013648 244015996 192741345 338139293 397084698 606377211 764072672 544559937 307474129 354913919 711091431 43997085 985715305 909146280 205087052 100562050 999380232 47727482 309187245 886593573 112150740 148007165 283589864 894327227 835622203 837918415 897960010 349521577 199562280 923098441 397656581 66892414 724758222 141172940 8732681 862850632 204933154 622728566 266299965 693245213 874326276 4606597 311608093 503671591 697055617 621205244 765748558 820512975 569898987 154380232 310448162 153619760 324441391 492654887 989136571 487893120 819404000 910636381 822261110 249471671 196642938 530469935 113632419 485082628 409041441 606100973 106625437 594411166 475481691 426321122 798971324 69374575 190434879 591010037 164600645 445395351 37853020 704445201 454156168 408633946 253533243 489042237 84498431 741598822 447823915 596117478 561159904 611618914 373350986 567968943 667793936 206661561 73781311 481458650 971950951 11124542 313349146 485249778 537091717 423111198 680359212 745659844 434094214 823718280 359488732 143767490 402712943 678172328 756454088 437476885 241956851 539545308 253544614 403052745 155573344 255747209 75803968 729879168 124503217 930694285 419040011 992802847 699520968 27738962 878047966 462299433 977286523 34654910 294413904 283262707 24642785 2127752 432316976 505313290 405157584 366242355 334603627 805516262 465055973 559557743 828884373 201972474 738565410 964754277 707797399 606423918 704738453 199205197 759411966 865088268 685368184 199248698 220630262 688549575 86328271 225432807 650815667 606838336 840646962 570121894 136412526 703760468 442871490 34624480 21546802 698511233 750416032 854526288 892900528 504482801 467428313 300049952 728745795 753308947 619953993 2442235 799080220 621016208 37010763 387191483 369141011 503068900 636009520 210414689 865812838 857789135 480855342 454366265 807374520 836048588 226739441 727457634 624437022 591752769 621078471 27831297 166160452 931904803 830012143 205709041 588404831 196959252 168797604 503575534 351976513 373117799 262956136 224236651 924840075 623660173 767874878 700297495 171251924 479187655 114926124 871022527 602960988 870746 53973591 996900283 76877494 598032636 361200558 661995391 679055787 198359870 623579379 499939424 639430020 419783750 568622504 711072835 692951287 636387546 964563404 376452739 362257045 823805785 760428524 736287464 744055256 378804601 957221873 278990147 922329842 804148173 259186756 356812793 681939417 842062848 352294460 562866667 202550956 912212507 138013563 758732292 250381257 830624545 651866343 245546202 26328449 349691215 195101614 155107769 593280591 190374520 495921933 288181610 3484499 653027421 449803518 599951971 926652511 279640817 253845641 488174940 86321737 136547198 542516430 801402067 211398812 30574349 959977248 457942146 879924056 954645925 31391137 90697217 908767402 149326264 431080455 66259431 276891013 694733395 782861258 893826167 575790684 326329252 241206993 748375597 605734300 71167995 792090016 283074847 321942898 52706844 256362230 737471129 90985049 148116076 794486498 960077099 655745461 727461390 978217159 137439540 487192926 904168359 549479875 246748666 973334776 648847878 939262778 848901357 761240446 11736069 729155805 23149207 823145194 358191214 635652362 825252953 532429352 850293738 621614838 768013766 489599602 590803646 415807068 119567596 985960719 59633595 720470492 942466338 576087078 969858231 650349132 936630259 367709331 282934407 179458236 153463108 865891008 297136154 558002203 675151748 362144339 736233604 789755248 398896497 114608593 475493859 568406971 966700571 862918538 50458949 170748332 622851722 44886325 505068501 991318132 839019771 849280891 504151623 475879554 227592016 949547463 175954640 748266097 180473567 253724102 443562021 34661932 706190308 168166897 661193270 178034108 429781505 903279010 432518379 689492898 774928594 627960151 87196083 366621670 512810127 189174898 520201041 410160730 711174049 387029924 230385308 32121029 186544426 815517314 385395457 123450030 924109536 699763485 789001273 112906120 684291027 315742576 718884996 42746352 435582145 875949790 860731371 609789342 157459981 453166154 806040047 506464509 691798112 240411972 939314897 560704173 116140778 536810212 579051607 150166760 662604393 921689388 519735201 558121833 230026873 899887988 419128486 756715717 484412326 488795281 979163662 654181610 537700774 396175590 802293034 26912808 567231811 299836064 574771520 914530640 271238794 910185505 162753110 434090744 381835694 708645518 149090481 98011703 334439337 485948556 726804152 866476876 470147165 571868447 132301812 277181111 261370719 160471744 151882536 659386126 703548363 596672116 782452053 771385802 327894571 345080383 903321644 116217267 832893442 55487537 817497256 74741099 898439634 646416144 507761386 116534810 295120692 356728923 399699246 354006561 977320125 681693500 372368117 275191578 251509860 548207685 57145080 493315165 167334849 220817156 886469773 799821188 176552207 181688596 71876803 25005590 786387659 607874001 500805810 796375846 327053538 531806743 526935841 281641400 272062785 269889415 884612178 966573062 253530028 832551648 783031190 427997226 276505932 819875376 854091515 35942578 563295829 575898463 535173287 17839292 407542519 215370368 938409787 677159820 459301915 556788354 317438579 696822411 619624587 422804739 663783392 610568347 576362980 389348439 413267188 712361372 395039215 360463947 253981160 702028722 119333947 487446275 265633504 242341230 263614371 553684329 57866119 546631926 378191511 113629506 322989093 908956377 42851699 418834993 371124890 761999850 909887046 912203706 94130345 471569439 867940816 402336959 785883198 253248042 782008060 225567410 987333094 328896917 624633662 332696194 651504139 137270348 259787847 194815825 480842124 96464511 552518022 129063948 379977145 353486457 688162995 269683385 114356553 436016296 352041463 154399794 394757120 622972411 698768315 564344563 879567224 24019084 933831598 115558694 587806280 885239494 360460468 618407953 675096605 803121457 186050888 212116905 768709928 648375398 427712119 449075333 534750736 204713205 424677614 15269047 362058919 571911987 79602003 808547123 747322721 564146402 731290742 205191028 573964814 567836383 358514638 344330180 681469622 349081375 596062088 815216335 803179945 612942107 38139227 464518977 795016208 513398642 892848230 759303170 551965340 96764652 407019652 920949980 828659242 739315492 487732482 294383092 818170676 164003067 589811209 602125868 577703447 47214710 590238804 91305528 106531781 508751984 303483312 800493939 798540105 227940080 662135830 710896278 236989255 416299399 83917513 385389103 960723631 599422865 740540289 223349549 519201962 4996342 344356138 83271640 944841319 141262789 727830019 639979188 437826806 90553498 362147898 221793003 576448194 210947462 494122812 343418515 39819286 334307747 465622806 826156339 874862593 875100143 77592143 901984793 227529779 854357665 279198077 57120888 178100498 8345785 86064057 870408761 373803646 430228314 264930588 891320286 413972975 651677167 789714981 175200111 538151973 141040833 594948150 452521984 94961232 512485462 25114126 723698531 684270042 77331350 270487153 582983241 30002887 488053378 376779218 504358471 847161984 158039415 850839625 67963006 490227070 459860669 745396204 825640739 859977838 854216169 170616733 174025211 156876416 728963977 357039605 112905909 210375548 580278702 741265142 644331455 689924422 652097 892002154 379082922 429065591 858029942 699315380 860497763 659365863 909607961 202827595 873525733 404590823 565536280 37669224 881577132 523397064 794904476 505175438 515010417 908623990 936590044 590800532 367543548 763267932 265643595 266859862 317690348 968349084 880562733 455167679 916202349 679463257 886258784 924814875 710664112 600087402 327525627 814674492 567362465 997598894 37246868 731236240 834535219 570431035 519437601 42170175 570738373 70453228 434107316 881471108 343051964 965415671 681653677 113209568 352945574 77477136 756141349 202674490 437701362 460764219 554198427 890148815 110025579 197792901 737645909 437140027 366898664 178216972 186616199 886275584 135816417 703717630 495401095 663994369 142087107 78715568 350588334 621191192 556460297 864971872 17636116 356988784 373335647 205435812 729744398 487204267 193997965 739875864 935015517 582713743 512219001 469920898 994905922 296983566 70130595 166697964 676685166 956552654 364524272 483102529 945391654 671264437 668441182 865557993 405914228 50005704 440757133 952615743 689622492 675221820 650166074 519620556 865306138 736575990 400795707 396767921 300266131 684857612 360291976 503262962 289522814 843587914 318583165 260333568 372814805 596365841 303619106 597722355 719740628 291491516 482699855 590287427 363627022 989758913 605926816 771062057 619303603 70527410 239120955 522354485 937078406 77409138 342799244 423942742 261957412 231645481 378433253 459640539 170461539 202362896 900203652 641639165 179289290 292960297 340605686 63134154 718420635 174958353 508740302 583264440 137739527 855674684 725661071 499218028 654698073 615827190 773961598 774682797 119022911 137317632 880177161 835193161 815021409 616822373 775897896 704856843 991933376 22864991 380592474 341124841 91056380 317624700 78225542 875872345 50393823 246963433 760522235 981350301 885050190 738726777 104512045 110138783 201010325 554177644 935827015 43704089 562433881 1134736 649301204 602035712 986536224 664919465 272536602 47511030 322288622 122071334 289710318 970229136 403453531 164515346 352825956 167388802 32190752 31404406 624009629 502641830 793380555 927104963 714407613 99352987 319827087 480723039 498286120 696409105 320764537 718490845 279154226 780563079 250345555 986849261 504012296 114104115 458648558 704616407 207662072 154464534 11112094 724516662 598296150 374604564 38116306 396207601 16540004 752637532 974124630 585000887 446324635 52868016 246811536 480644046 859301328 440397533 413929025 706557646 677379510 458576302 920833682 14522254 353599134 455473732 440971109 699773734 552763547 442619657 926421170 66043141 397880031 447176603 552658786 920653973 699693240 203165410 653707015 941200302 210265620 547063932 223386299 312698497 518105137 830479959 486216844 595936699 866726731 841107721 636547443 538582274 155148076 261916151 117793947 479786116 327308265 179868868 940982337 854583491 930891691 641395098 385811038 195491228 148863153 95059616 450572106 155097540 290657961 646730625 197311161 476391595 807129007 819134970 970064053 911353195 707458588 997257441 516651612 320357271 105412575 449573318 609470880 142679979 463885062 296776142 877737950 161786942 913209324 711537007 398558257 467451096 961605059 844949549 220704481 823086671 543390111 594334659 308267516 902123975 377441674 859482470 806088552 431756882 13781831 497506639 447160998 494105278 553640799 887698741 80920784 247211850 183716372 973722629 327709446 247172010 674801835 215040802 19684214 981067454 753750091 146071684 935066978 644179029 510554886 282272709 50582942 639146692 814370058 798710126 100305631 248550575 416679975 545153913 560552104 707435753 152519556 831508180 129038692 846062100 769686169 699333057 389560332 575364328 687035728 35299072 477772719 572948151 800194794 412232242 370436735 405435211 381908128 849899027 714102845 238443209 654063611 56249796 241144338 527289271 541086735 342345251 212268578 968045598 865200777 518862259 431374895 129566213 841653402 893014564 632871835 806954660 524791874 873757210 539193063 760127276 89563998 871379063 508527582 325032081 561850145 80089962 366771903 550234792 34338913 276391237 903363394 743489674 159136206 248890637 959595830 788708663 229461704 559357962 539199909 672048303 207098227 338372045 661170288 414043333 787310830 350611642 522168624 592721508 263726461 813003664 547013677 208317554 763685175 723757009 508723302 115849760 540279976 957389675 851691293 396763782 889493960 341347192 399496359 647636959 624045512 606092692 888192871 340271780 16543797 499197035 416545924 173581625 479231567 13898662 942830544 664654239 663929418 287393542 305092441 671297711 739951333 860571327 988826088 511375858 449336842 670190388 778371729 449423647 981620653 516933413 565087368 458591362 862276444 551020035 3335142 18916751 507421293 100819201 327799151 616012258 952263061 547010588 736785620 413885710 275573925 355664041 854266017 615210609 323511751 1888019 744948188 524047633 827744154 473214298 816616865 195460674 828808962 903169020 523735110 80708217 906878921 941375510 298848504 180321900 22563193 610669862 370758914 534449239 95579543 77663663 48908238 656074555 567243860 846351850 909549677 319369411 967542046 914983481 837095868 367882691 658843677 439276158 721901695 534447597 601516326 470411797 692158362 203469720 201298158 779911652 316247833 809712567 72965182 478158192 515245421 893822221 511420621 378813473 924599025 559963752 210342226 863501980 806361921 491011068 488458587 131604166 597805734 36686502 676394386 10162633 841813500 979719857 483672432 694771200 757540167 485131659 127635985 248007174 294297366 589153678 898837038 51364025 757386662 267011330 631764858 218019956 685680444 720446812 778673717 99013535 221194446 313090928 134606549 298663210 333809657 857384906 957843851 655466282 219226402 733746658 131515656 701419700 693227008 122999775 402104966 708348411 202766721 445293760 15073950 726738622 360029282 341581490 716371203 765834657 507350427 649551309 48574200 728687543 423144691 473249707 313793782 938197535 281967207 860136441 530648984 961024576 213383323 129494376 491761347 46145892 508877362 756163837 259536847 597939574 557912329 736797397 954662832 602223175 670017197 645267874 48816342 755600190 391470775 969450203 291186982 325172849 415187625 510424532 567900973 544255997 434447758 82337390 370110998 231209650 501292343 23268995 527205111 595820757 950833035 394969368 818061918 495731285 449061356 371013576 700585100 659390732 422106569 448068403 243892740 731934690 904536863 555978921 842839499 270839655 74070096 273364752 727499817 366958965 219233142 340499777 804162642 165087282 558176411 220635373 693115655 946585806 580513081 672502898 248962100 958317302 162112238 149633307 707490222 779920137 24855315 323632212 385928458 895045084 673620062 127528223 186114255 159535963 650101113 225333528 512889289 8998369 59496524 352186080 789651548 956423157 616299110 841701577 841536937 542207083 399929084 701406195 582440698 671527356 44879653 376030346 888833151 483654770 980621355 914969623 154492228 844019489 140121715 38700455 6211022 964415823 729533070 929831640 787755503 217542008 899986175 645041816 78616485 753247411 479069284 831017167 637238944 622895509 197853695 446786414 352900286 851263966 69217377 9848377 305246355 396805216 698075816 896665991 529230268 106194237 419686602 725312171 658354394 394424808 958751116 247452738 387848196 866540286 149831833 270956502 192264961 639507819 863864948 33295594 669293647 704543991 724584478 308448795 620024352 578344751 113622428 592792179 338816183 607572338 590283010 639335389 567831342 721816878 21323730 33111806 281303985 198029429 300416001 881861800 893368163 345981571 337506366 85102079 720119833 220498276 666031079 540857063 4650245 594621645 745191991 988806915 412741000 815388658 999669181 430741398 919016048 175977474 560814643 560054304 605200430 48029026 174399275 778555368 244351711 517552084 363669184 43159710 872132953 407984195 931121628 909601922 383240238 745600205 835488873 376123129 845621705 580281272 693607513 988404406 965739567 316855734 360915077 36803829 360872174 513169034 77800047 796495708 52632161 985504945 874674248 559844998 355853636 332688827 190336695 37247652 879279324 152464504 683745855 778818279 134311651 300529537 396412342 414649035 116128656 419935736 366724173 293790918 956989407 188205309 226606551 749924999 79781731 728416374 224696069 832241948 741882639 3213709 990908620 435244149 553887087 71722471 605438592 139593725 223838850 472286291 513574240 555720380 708593485 657043172 754033941 51666806 190214620 702052539 668223497 579583225 374126499 963751400 663942301 398399850 386021420 444298762 436394479 916558455 553886169 13793759 229121695 888673395 522976635 430297116 316891084 357932341 441592578 398508801 119119256 913162335 315551501 532982378 447873375 79801114 684130825 551931364 269713806 796514219 621578291 897876222 345737003 641600865 840829730 551739914 59993078 915855871 784944949 68511547 942137602 116338622 197889975 16415274 41751271 414955812 304777779 495017758 710452008 782476293 272602470 416648556 408746368 460892666 400855833 113638852 194329485 623659852 73434409 942141115 998762102 84961338 139794898 707875577 637449430 80374334 462588907 238202927 517942486 926441962 249476643 804377551 495424302 851743589 447675873 131496027 778751984 779624210 165542382 18764288 914389621 797398883 768301484 660558274 140162846 423942098 376231464 970213562 137690356 712640107 243736289 870430365 915211128 509846463 181626943 299055625 78349054 847028250 669063588 946410784 438669510 266541900 710163395 683787263 461543546 560574983 661589897 317965845 927379283 377767669 712321630 618544335 501051165 891327735 237836322 189246886 88504568 486674655 871648925 808400741 56606884 896919854 240090782 864100109 165599520 587215398 943874028 455997371 712497845 826215233 491268392 826666560 971075035 392791753 920903019 866054177 128094543 190959993 812311613 860713862 787464348 69623234 838802710 620221989 851237795 497181666 326368029 566324629 102940084 647917407 344839644 92221195 866917135 85854852 661924255 914722977 952683627 168975482 23067487 907531524 768189216 273506369 29122049 649202601 639098198 924896448 270412728 760418508 714771237 765520018 376662217 168753016 279829294 615042974 119315735 547045953 87745068 498796578 471266074 778180896 735835709 399139675 557845985 653036943 797031775 655154859 313737262 476154065 302292656 28076158 927184538 590273005 2146596 406260151 454545045 933573428 224793942 56182987 653371228 720051961 954514372 577379965 457161846 400083976 232850839 494293954 827395800 414122871 754288248 199790731 292496898 97280308 981776586 990745172 131885296 481090521 523379373 903803712 438272380 629126021 652854024 871848442 516151356 114453508 218975054 450497808 835896817 740149729 148727560 423698016 567014744 998347872 70408525 213522625 74374882 688482009 435776923 611652043 24256073 16618434 684440498 975364680 504817403 44146638 296132807 650867944 7990833 417565787 592379854 20544454 128512211 445912849 936980027 598216062 76070289 444274400 420836699 192373104 106317138 926383884 400301405 385618952 719682695 936973487 211181323 579485504 555191971 340575932 274031769 139663970 951663975 28019714 716875213 500572661 964931678 842013305 734402991 731243192 62667332 286307160 532385385 747402562 206629865 803550132 513697875 579453066 46138074 854455281 88926378 783350933 720089341 723328570 290517606 732557571 882818714 337600856 679391056 504461666 969368512 410350673 687872932 463837275 923736696 54245905 733904400 939749315 76542974 151728670 92936118 647936327 790904337 799477382 40468413 153392436 15915181 473957813 114661988 16328401 386194160 648102954 214248645 19384951 735014619 953748862 324111950 257794192 963810122 994669503 890798750 368486378 553619863 829975870 930294641 269146000 309574283 804467918 422544292 997394566 7915687 904402452 103351502 524221681 26980728 297526582 159516555 289748163 350761598 610062070 932444500 833373520 758507538 173713750 250309356 385557482 261241714 684568770 532941279 732980869 48917647 368654465 153206635 752794484 826857664 307089100 342604195 33232616 547430104 701569497 136308614 563030837 341035938 230326823 453306743 381856326 491838714 289832913 814872801 791667658 487816871 694168863 126074279 352243411 976974946 790998659 847518538 523736287 374182219 899019322 862012548 805546702 592063695 574511832 291557879 402452554 955533605 853766182 869715130 803910886 420721214 465656612 466281261 858440966 813626304 331786095 184153366 138495086 917928814 144983075 210278164 758660978 131567307 942375637 724786443 284435212 493371869 171342475 966356446 927102990 252478008 12965161 666146137 449781444 837996837 152918825 833790068 994410577 45017591 563976971 240796476 219458265 399433168 229516493 565095974 886864941 837488673 353431425 504625630 838571722 676450430 408689093 80353708 540577863 336308007 603865373 300260028 210017722 87575368 436215219 997153936 70415356 740034604 840392165 307588570 387222149 249352289 90618650 705685034 689730474 190367501 54735170 608576413 424645145 896595838 740704630 550132640 248846100 956290380 527470680 501309811 679828811 386318409 209739676 444183292 457397760 838426151 893476115 468320155 521259152 845517008 484740593 953802190 819543058 237629122 744877785 170115885 124801125 549160316 922589375 866438748 423058124 93868179 307231263 524039755 406671984 783720778 34062740 851397092 683192831 528261657 148482498 302048871 743621937 651464687 618540071 101521702 559220910 563296463 328642885 880271410 703883265 500739614 764530727 692918330 918235354 70795679 318875654 341732335 212757960 865684709 686832648 326202989 969265149 139886869 716214914 240003990 209487593 660577918 297563136 207466724 471200653 614369247 847074090 23112485 514970721 650320308 272638194 900532105 615914478 243502728 845969365 921695318 66005223 487386981 132480630 827483982 983777633 992151660 303056158 972586026 567929554 566965788 889059741 741632950 628392272 712716747 526137766 952469233 130285516 887001003 5851291 980875752 431023189 628786665 950283357 427487410 892488126 285935330 23923939 863813665 899974764 931982290 583704226 945720855 673264507 498592695 833370135 329449798 692580783 214230849 495891924 856318067 520134381 522573815 562093386 144023778 403811652 19748396 848375809 873960266 918828100 796334554 997402805 939385341 50831752 384872202 53785316 709269205 421763759 276929471 741570801 344205922 182484768 686044832 752753084 256640907 33285809 747357142 545419005 514248347 917720335 162851175 712306286 253468721 311654380 448631624 425995367 636665851 744666512 49209854 266164306 805812735 654160713 667294845 677004663 774950307 263688327 598213341 62742647 426522267 536577312 577368890 762764464 520536957 938398708 648792944 964905172 339718490 821989513 874923385 976743278 688873966 225624210 568226750 262836258 850923245 225127977 692734196 386328812 278743303 50863804 102560236 769959946 905545715 550564610 152442162 44476505 783231797 750968941 235790188 676132436 876471173 355964314 160060138 701093380 424552579 615464885 209294083 139443446 88976225 423947306 614106757 111751724 170401598 651364411 643435045 403735633 307816054 302976972 129549177 630909635 671414576 168709996 736093467 751337753 756187980 377874330 447302515 717019397 531279711 418942587 750357370 837945099 232099217 26695881 987085246 563753921 477638747 133945100 327918307 816432789 514018688 508115718 758286789 157816915 548692868 875769419 157533815 750854979 134036310 765665356 653014872 921878280 431153907 241287195 317629044 942956649 985472712 33192890 176463749 931714339 615426914 28434316 779897065 956425259 829858614 172383241 933582264 658417106 42280735 32394807 184886320 319499119 360207878 764942488 108047608 268870168 888396259 694264531 633535052 418942920 839787681 80165473 845381282 259110145 628708748 538521825 410671470 658593006 3364069 566575156 988189723 213304513 906636824 964247734 548661140 33441421 769013012 943700218 323706458 861667079 371361708 977574509 65427326 942266394 268499913 289611474 582389523 840153860 53570536 546363184 299383657 833286386 311523260 567638161 60247809 239006955 880700558 794953157 928605836 128084070 392525494 970523382 337956468 630845690 882642406 473651240 412251747 130136328 273173267 104513204 413110434 645812669 215189039 492012226 802227918 133809295 357012968 168184459 695120717 89321040 531026739 724271999 824343724 328451593 249208747 680753302 879426353 806719417 483651733 318734669 235017267 614102392 769770041 123581649 496693190 725887145 201840094 669124283 770023849 649629311 110521926 716060303 326664377 70641121 390893034 963953866 705776052 891789882 626593289 988357990 766473845 736874951 44335297 328290394 534452283 137213208 444317488 106982672 567292035 972521744 185391663 927909365 376565995 978160413 746626517 543712558 647547391 355021922 699692032 205723779 308861416 458047774 682174101 303149992 871919236 447661554 217388603 13722830 150753674 312130862 37211234 83211903 327081414 520412823 130577860 169130008 897798914 484231227 561967401 310889131 825927830 541703627 810246054 783742956 351855016 58562195 438799687 182165833 631052313 439609058 386319948 477357115 867782780 793044414 895367278 739759332 312763378 965929250 195484117 462213594 932151334 565522356 223394869 142635070 784905644 986331551 488950139 982191216 656876400 673923042 180949412 793770485 744570204 174172763 452786303 929845984 830064957 849535231 15485835 389823878 355137831 363352732 417118120 818594612 433466550 903122769 656185119 622775960 473031827 624640141 50278958 587248384 47795264 465391019 57494260 466648300 773935633 830748191 860832321 913704970 982999605 128202143 222255090 703573551 421715332 265315063 478498775 876173324 100043248 246859205 847884815 890045203 920889395 936276200 887306015 797443563 854758817 655997348 118564369 600298947 3727657 326750114 503873112 915388546 586768168 143416020 437450470 395185149 35759282 761488178 174116622 563540097 448526639 623251883 678864038 4134921 417460103 695492254 310879837 785813289 545091799 836898736 875421793 978093015 83789962 468965349 719113209 721841350 477755149 231557529 290566234 432651392 919878443 665631336 945216754 91866005 584427780 829903480 79290633 212996769 409225596 386919382 868206671 894944289 360968746 172725891 876407564 703179969 804988282 474611345 28084382 972676050 9866327 357041924 720508367 321575807 771215598 73586679 306569570 400185215 459993136 102490380 680399812 481520731 114429239 833584422 856463052 556500372 119947935 940554279 666947492 882476938 240823053 649184355 142843889 895010979 830290797 591846755 851273764 182164326 580178386 4745183 202608360 778991927 556985024 499608576 329652189 690307489 120388979 116392947 858311594 791047209 933795334 737003273 202238273 127174471 608612543 351255004 781376722 131438622 568606674 918764336 417454696 298221965 281729283 52517668 107959305 188697694 708078044 534620046 120669544 670642407 343076734 518078380 889510845 413782857 476883395 622079695 620554158 209294628 885491389 53149592 735491522 859977889 588649261 232930806 976540443 2003415 319872288 63819782 205258408 690846639 573568724 563055828 630761797 448356964 152813560 820064148 454961382 228404737 448969971 319495336 976579253 609884357 15139428 769308658 110445166 714294977 80728389 608758202 813852013 969878715 700682883 371053185 118983383 183221058 528794453 617495801 199237314 341446427 941194845 275563567 16813577 333605021 691156706 553791791 766504982 906388779 327667781 152808056 268469922 864838428 836078122 97875650 2896659 531821218 251785671 237834147 917897952 293725488 620581134 443052011 272113680 616604673 239478714 193586969 817157476 615239944 107164782 23067099 68464009 924779355 444213640 983559489 858236326 886202639 27529820 863160484 569890317 871632126 109288710 123115802 103879222 845881483 910336223 685200187 55294080 418622280 653291604 89279110 793901660 3718583 936561 640187356 387236629 902001538 980979365 944952855 390677556 287990128 562081084 419337296 157869549 994674636 519549011 426727677 790485987 563398477 436468313 490768035 246619274 474595562 535473177 483317410 497214294 691464321 868973342 938883203 726232005 46998352 779930439 760566056 240325515 770119772 885225574 993306369 114310991 967570065 761568591 65725362 542942427 882641994 994271240 140548518 876095030 96320844 104207572 62605597 153262150 9955136 545010448 866425033 766758349 755585498 380797250 63089385 6460314 457533879 449591833 661303103 967528608 597624705 877336177 301648395 42836361 792122220 248118791 60045089 467464425 777554529 516541636 835955262 563404268 10823954 69622869 562874657 502051250 953304208 814885199 407827612 363741239 723199855 84760039 833814450 990293655 899902511 783433686 379458702 290762205 685267990 544675800 709299258 893299184 498224486 825086657 916571143 846384098 468790826 133324042 331807877 28848734 882322685 113846554 797281750 359458831 129322541 329511774 341846854 463754763 537688272 549209128 388484068 219144620 737915524 219331941 985956080 967574197 517125008 138146998 982169935 980187626 91763607 416838839 189068505 104578511 432278545 854750589 770720866 892278001 221016216 636457597 635170267 764067455 410858928 426329430 24811304 311458595 161201569 508340328 827521693 674500777 980289811 666094066 175713394 151784682 482852387 267341148 367394047 250192961 798172159 864790127 300754790 906592644 203206960 210942448 88145947 345337291 661495699 397216377 430354534 95166968 956073585 582887735 339764428 430497050 84264685 429852352 777015723 60100872 103358112 117842579 121384831 256298857 229357401 467755682 16695459 56860107 316596605 824540948 143959501 543978790 702390322 236969318 578130254 611478153 43612780 864034163 973794582 420688405 954988881 497748659 141540828 137069436 250810095 198128421 395576581 727415243 422070165 490132432 319608685 812767655 378882703 88198336 174165335 948270577 137098161 75491716 261405143 690596638 685899906 212162451 134671565 133867507 919265501 450056936 566211401 9376830 123738984 218905037 40845474 783538318 160313544 503177133 789446250 914264610 298951571 102818193 834384725 544580065 361505038 675387444 347275495 990458986 469342414 774077006 441908897 417305216 837124802 500975744 185203850 772498193 335126002 327796262 364256426 644836594 949273997 290581761 606067183 383623767 232867747 42636218 521897114 190314933 524131920 882649106 218902856 494017271 242386721 219810032 248436057 807173675 826482968 404173610 660354964 791698291 153470304 499359229 106943195 50148112 693585875 512846612 225322806 886182267 947475666 684858890 457081199 922727180 130289105 359433673 160850096 625873835 207574075 844073569 235748728 148365529 106166014 326678852 634584955 781074139 768866369 343633594 115054254 930570748 339263313 982028807 686591817 902879010 838772013 471487572 117758379 288636869 877410182 718490677 978570746 276709756 560645049 537081747 141706623 140552444 221229689 942920486 945396620 407779618 195993110 668239967 165404363 54959957 636067876 344357310 40943491 618617739 718478032 337206160 717449310 323291013 477778110 532484333 819409606 880097999 367153269 587423327 778931761 21971341 518776703 371862741 692147965 760062593 230077771 966434969 170438291 511850806 789738272 97374996 616492182 896405426 681754703 183394918 533413866 317612719 80201978 211660736 455940839 42914433 972235426 404855310 613607317 464208921 383250004 828403351 399990209 270809200 399775197 424731236 822358125 190680433 649749799 617553023 569709438 514394333 511558506 767887641 902248348 778085784 740952343 460430017 64326938 828247064 442125981 931293848 653004218 279915202 597243293 531359826 952877879 825197689 576988727 398575577 622327020 925452379 671356243 910779834 828647151 662959170 239973032 973682850 161308901 902672950 414716017 165514258 431135237 944264904 324154495 127820038 249851408 175148487 860370276 906226271 340482997 837537536 446561543 268222623 807834211 857909364 952804829 228820108 791037246 163547795 831500761 858358730 795948264 814935151 608661659 124094213 674926711 399280949 988803570 828547748 749224058 955471137 41827538 815830404 963352480 552174340 120287976 780041917 261125528 456742623 119196921 240111087 380116157 578624347 598232958 825770148 6407952 354514779 700298795 961884701 905455146 201273699 210321893 204697488 201742202 892328956 429073421 280140568 181745669 953893634 555298098 390254078 324401490 141784680 926102452 99447266 91445146 616343476 809735420 55110377 95583459 522555657 734740097 871543867 741454738 108142690 425496207 231368416 42530353 335848998 423944115 180531070 559902017 463998702 445685631 418149250 214588486 286223895 758046086 191792913 375586625 908733911 318822358 27848342 377349827 452827739 862863947 939342508 819352536 190540197 175171520 83725976 202272998 430928252 455456149 47285304 645698203 468872716 609310372 782329108 48581513 350796640 216011159 206269600 30575643 964521647 969249943 364512765 420100641 418452193 997193369 941209444 318626047 576681849 82644583 714630402 60002767 918714179 821813075 37978149 282474891 763620337 8220577 711108168 957186860 816219745 486078635 343707663 355589960 281572470 447326879 653700708 424589378 96680435 648477155 128864171 662533111 732665394 473122525 873621335 189236621 179416880 828192134 395067990 689419590 275544540 795683165 533969246 819220271 654955478 735970877 37337314 252461562 556937796 767243495 857786904 995777401 157405157 406719777 530227265 455276502 416635317 440759095 853617683 679742259 140650832 678507509 156716024 850338351 89325239 176062783 438584718 874398290 256859234 801218377 804909453 754572117 791737531 267722091 909990136 891951276 488746781 454317113 355694769 845217469 785243824 946448629 100139844 296371138 594730571 697654514 831622527 212411592 10629665 885489011 850903779 622896440 334606279 576993870 227084959 131999606 669222571 393363651 184044772 456841567 347696824 666711956 624600859 647569980 249755719 271588360 773012173 470879936 242127531 391984411 404847342 625608994 97098537 710634350 722424167 439009151 979543949 864518445 814802676 234625204 328528333 880393045 594041218 609631209 532898288 330874246 681673482 69372204 811613567 61990477 756166832 307770453 762877909 665025304 371944043 204122664 436804284 665133724 388005667 345833231 134026860 318822369 104599639 632886901 273685244 397635915 333781479 200523286 926782608 686204083 862661736 102036676 168564195 25558115 715004136 551238020 161964005 505495725 874139456 886118847 190403342 325929191 28788859 422590326 233167185 206020110 2276051 662146745 549079641 908541158 441471135 887748989 551397351 993555394 323254077 533654811 10785300 60702030 257267481 52627940 845599734 11118986 484669893 623431356 46265612 696417378 607056749 813806277 585844452 71258902 32160632 488144347 270163869 658765525 402169843 520567892 752603236 143229625 796249611 295887547 110405130 81675024 513997627 855813307 149728784 954720432 984621246 473420361 287899899 590424009 374187454 11063785 840492244 88618252 797835142 20100465 221267774 120003849 208390386 303829860 872001488 248918537 288011473 423149011 758257879 625472786 724591866 932986589 425310525 180341561 999412669 256948775 382563657 480095076 890565252 659113933 828558425 79094986 547099771 680164005 952098302 181948807 770113984 39721566 55653201 553561161 223749582 615764408 194358673 397017276 714460438 689499516 521802188 200354399 357800594 850630005 811867198 774093427 252985978 134432348 717920204 378084813 692609659 92144688 152734614 687850667 161423849 99236695 668409357 945709414 160396158 531225165 905728848 803252895 734891242 107613655 698026381 900551111 829791122 612199062 709653404 774801712 808465616 780490373 621097074 193905222 149072970 143422538 2987539 927168078 483369885 227268560 458344134 665178516 796871013 218737009 661214494 450586986 885489644 734193031 236467567 865470069 942836006 310061774 397287005 824440861 29892033 316382989 532548901 307370175 520089836 646622905 712918072 267805138 531829181 457442268 897621025 380460092 449601807 944438214 868703309 283956441 326156537 581251325 164676109 929232739 558093999 198988824 707859802 674356131 703872729 160626329 926549947 249094513 502658147 449863796 569317864 909684256 487939028 66951369 401297508 250877849 79542227 607163874 144484995 753911290 220786377 93886619 65815140 533306384 537105493 435610294 708422250 341268771 242750483 475468027 413190024 197396209 854107899 785028973 347258140 689306976 911372557 893092271 806250168 70560584 595451987 903356071 827701445 72080115 745670862 267494151 829839376 78795064 438753074 505117325 965477158 351798283 892380991 354545908 40169637 839479498 822274308 181254178 437870591 171481053 269110437 317626210 29627514 65800909 503617558 237750399 302179839 205388381 120538316 301429225 818021247 278153445 202993533 102029836 586966340 199190624 783666622 303459233 465414701 831794278 319934187 431574802 892629733 775294691 6113774 39489807 60638702 32036325 512239302 370342557 897406788 204850250 30299528 611060986 104072225 62776545 66437415 994838114 48857809 942552303 917997693 177642346 514537173 193463375 18844500 114701342 151969865 17727154 813645263 770848799 557494461 252375676 847531851 438675195 213152318 687277785 467822703 405644557 930419897 614738465 707025806 521703638 530312809 77480376 103705121 799731568 721858330 406462151 971950125 874238572 815461151 775707344 253363711 945205336 830814801 577024916 201989294 958416244 947906458 481128308 814186581 267552623 342593177 566300367 396417037 654925232 111491769 347567543 71483663 740954523 345604110 695069819 527328881 858955221 124228788 823280615 546518843 570400617 955295178 450028470 697178299 29845507 273663645 626448683 596606986 234151220 715313187 170804895 565678398 828667162 53374889 758994457 800352081 277726416 557829172 55101760 59668259 276165928 851026576 192947604 939186432 785883429 369140552 545897318 598235356 84122738 601520582 533057321 80799890 202517774 641891664 812062621 481051784 190162196 481059768 860235872 322777723 426381032 156841550 840343902 396510912 280389680 916276407 859460014 176275784 743872232 468905051 483476820 49453440 43303616 559095383 129985861 644586557 568449980 149445358 726743559 288500141 192323634 59871613 404045295 962643562 457969745 515047873 190347736 195676917 559274118 437766403 926921258 571746586 840509720 453193946 899335186 901237089 360579380 746624124 310356399 631409333 322042176 841257317 754165094 41532201 105116866 82295911 696868791 128217540 585527711 961846970 338276298 564900486 367018896 785862594 329817429 11034789 930903898 658272618 101976842 320714011 3407814 105223578 964490939 606086256 935524591 256173669 537340290 201643673 730216027 53269867 722137609 527239892 234064107 44426993 140236094 184256484 232908369 888547964 543800628 937748173 438945293 681044614 130954769 791432807 44438840 666085026 344683205 829259285 68830686 188595076 523832033 182305658 842755046 884103339 252443761 942429764 865442128 93762512 256303067 455402385 626657709 856981669 493146554 187576504 86734909 165554687 569658056 662633258 317599705 88776680 154800663 641222286 543233596 378397806 276451737 816152634 88055331 960827936 154402463 444971477 369256622 401354987 626553072 194171587 314647002 418254558 86626324 511205691 674141814 448799762 199427767 336523923 940798002 356613992 69659552 47022990 533396654 296840932 281923890 530669357 520679286 389707587 680903804 145825253 608136883 317337374 559775792 901635812 270429120 149729418 582446953 771896236 463469561 733284739 580731635 945674244 814866087 726035536 245219943 308634764 781451657 557746413 814635699 418791553 900967550 768149615 210406613 285040918 282133169 164351127 37641346 719401400 867848375 450742357 507205795 864878190 386519793 836384290 780209397 982846710 653287963 455407781 866316057 506901797 411180723 342981379 187672061 464201756 544388599 859130905 34544150 96317358 391176730 418362702 363460474 845199633 153357023 851533049 474112427 557865372 35504523 561191895 31052665 645628494 407813596 857467177 737181126 467061313 702935676 513367098 381867325 497405041 295166152 849677968 830363290 887279211 58474974 167632216 589533103 386512730 87198283 171919868 336422912 327831042 183146050 994196592 933861585 370528255 730256801 336609723 670921856 52741453 540423286 527076483 663757831 140494920 434612111 577844477 615690156 926956754 144036213 461990737 418456655 251605945 287989391 503402171 543312969 661829770 166363181 759319963 365687003 879261505 969422240 605547965 410886106 968619713 380220666 27805204 970698944 924597427 23231720 667207333 130170706 141191881 994720140 471664264 973551728 404663003 940165168 485397625 518999560 224232928 168292357 332639988 116099523 748932678 981980209 150945722 316354200 453185552 178528958 964626560 789213198 324397058 145752988 120455447 682217348 514897742 195776147 393125252 310517315 229737951 636456268 56052402 125726514 912269331 706906035 595584922 286140597 55733812 373226427 162868586 330778497 828180195 66615107 712890444 371011564 999502198 421889455 348121997 14822721 150459186 205698244 181418406 962163899 155123424 648460842 893836886 406659913 458223488 547398110 180422057 363773846 916515437 908229096 540892234 152422702 509817415 77966491 92204566 300756176 723072980 284836025 298834621 39234313 257042057 12464236 377616559 464238568 264863592 297537383 157024057 590840869 756053589 922855780 609076239 638680371 847651877 179028523 551705691 86164493 418871798 725482102 698980507 974300456 276709859 274338873 98822977 429098786 555344359 231083597 407328338 537186646 42089496 823664842 313269627 597001863 870041058 484454708 610188379 697604584 301767023 185452602 940909390 79996232 530105515 684885731 553046115 816731025 145816344 285484743 381494355 91020901 651967994 105649649 177885501 291854279 39609202 255896968 407027579 440441747 71495722 803480624 130797141 307700338 533787733 141840888 797777581 764039603 318885282 689838875 612073757 269118905 117040034 444999135 195381745 649270061 874305269 348531279 291591910 190104283 41507258 617522170 232219621 505195476 81044221 591402155 145480955 41172478 721115753 51159969 341256232 634861528 960432566 513207196 430974079 840775254 509075744 858644505 677793594 938657786 728739012 948299300 284898333 667369724 327807885 209704448 935791971 56707729 681162128 201649048 687640321 706985711 961076053 686152486 860154766 196673722 976127262 757395312 673811634 565424945 784854728 912856846 639550486 428198575 924262041 576123654 339832336 129307315 905247963 263497119 538350313 302281230 922764068 583149520 733276899 503067125 733408925 75919008 960508596 590747886 360774703 67087618 612502296 352314738 316987331 612151883 510969970 535027325 263382860 936398871 282883805 579317446 631124954 933615341 761333452 515291472 407145758 755955459 76145386 100688324 644475622 767791315 739296095 322160482 289091277 926148990 886856336 371881110 679468006 784888916 64923470 313936537 652891976 781460007 741110536 596312482 667735394 708959675 972514835 877959409 493775967 491612095 665863762 5869429 891698464 189882630 333288083 799139725 490450783 334233146 99410520 818819690 372947814 670022512 648786980 468164892 839661140 334561349 591403672 961072451 967165938 835121150 672136102 186740967 820048938 938397552 818959005 387056773 446953494 374920668 515786599 814621011 262066008 115124160 820395998 974127568 636141339 329613836 573778977 35964003 276641476 769184062 521613362 736190298 82381901 590248174 758426797 681382566 993812380 308295679 924328307 383790455 201641198 528318558 891364832 857746328 125515168 160920524 654659229 156036039 393863770 449343957 381295655 864435002 418778123 692396153 767043485 404493960 917744951 22590758 439211012 389399660 122860509 764421154 529294761 275344975 17540532 18999380 199875987 824756291 211725196 559991876 239568876 350285267 349522738 514128232 876670927 639113166 321630901 615200542 829941332 792381243 109059659 261218958 889795116 98699008 187638261 297112920 247160077 987086587 735321489 685250304 730337403 825825253 753324694 924637827 311640362 162475998 944812238 364770259 339493344 963908566 502266497 497603519 154913091 232077839 992474021 778462720 404014773 201002156 802979516 397938186 992478918 121514296 864176643 676362106 640808175 30727234 737125072 164497621 234247459 184690111 960777778 290391467 624696002 997910736 260361366 820594830 647684565 399420359 798831462 471440871 539446310 530078685 769880899 685873421 2205952 102873004 132796790 243578061 296259786 226977196 255694681 475204624 411394900 944984257 733836631 401919328 662954292 962371229 361557324 95416136 233067997 345077074 299794534 656523126 993849577 12717949 18406296 147193557 365583020 112424692 464828584 254933542 622004441 142547945 291537738 533056193 889867576 660809351 587918146 694433348 198822398 371241729 928142336 923115634 130638700 577883348 922800696 134958257 744986345 980414474 906869168 362496781 411748172 669746958 18998312 329450790 587294652 721620190 318222951 710160262 766401041 536720716 10075569 569238888 250896826 677832730 371751620 244488523 137919870 888666843 183030221 456212714 500638229 62129404 169322753 488755156 671359791 758501636 726372891 525087759 319739075 700664802 359132894 278382188 353278891 955963771 425318556 536975014 93296334 166149037 113844769 470658160 417324725 767389152 808500738 647411203 352131744 329241081 346287144 435809409 780155199 608209543 512106299 713957090 478254615 688677175 357990998 754487031 774343634 246658294 450619672 144423111 957488765 537956707 587652095 877430258 63624649 682919068 458633800 649337526 405468951 585799593 321624155 614437081 500943086 620990153 685730650 906698172 199591421 683782935 446584948 954663861 931879820 308675751 614444689 18465041 274966486 678939302 894306924 904838889 271908309 882456295 724478156 228191921 645203090 886463124 531203744 360664401 505329490 812349177 929794313 423898136 938411288 499816625 745276591 832824711 8118572 861912074 632919506 211217249 708704126 718366895 250058083 942925801 928448485 871919658 551380087 836475843 326778956 382360435 25943933 86831073 187531886 542851044 871650839 542638442 39377655 909949574 668651600 717549588 671030237 854814110 990478173 52513925 12745851 97789284 669742868 517547834 938354502 106620449 26570742 217795035 818066969 467505689 672944156 908952004 614951303 257986865 446671751 192603904 550445153 200799345 366788155 872947496 832637891 761646456 772022238 468762339 730187423 718062598 77601022 595209386 800882067 642595472 344351274 757105676 258499202 741632487 953385997 328220876 959260906 323757287 831271323 890054019 408608190 482346710 789416006 98006439 980946010 335179386 797486777 702225909 183705668 842043717 801621278 151838935 21293610 783046617 165328235 401427293 603582553 305284367 178083510 9125233 268902532 570655866 876976163 929587248 421964537 537183666 430894120 542934226 26706165 558105129 139904773 917681915 396873387 784026849 126591362 854420423 545466220 598856616 321298836 538908829 552659718 572951457 790880706 151218823 983277551 785828361 876042477 159184996 840046511 247664702 42971190 261939340 831546030 339664073 885164771 470558574 760081609 904173254 956743256 442563305 474289588 718528199 857234993 832645847 425112761 933202690 787564450 641705116 849689344 992093366 510693730 262147917 940082194 152628771 949196232 304063425 577751038 33691296 635211907 246367839 208939592 542168580 793319069 169724053 405746629 472482 867259332 371444714 221818788 928394796 116797681 487727180 429299205 901044450 979850448 437619151 187096307 256603905 631422711 987220824 107218223 204677615 997059082 131074724 999348153 480626240 373468805 220624646 146910088 766282981 347644197 241871281 961029819 824937353 917340772 858414135 252120743 291455742 519937835 380329754 610835125 595938665 31411243 149956916 452104358 837126460 829700272 244861439 716000529 506756694 868614120 36461658 477929993 278829275 114568197 720272582 511648580 742790161 779084287 107875959 637078804 136144193 223945495 130717056 396853021 299931030 78336718 495574160 62242185 154333323 478040869 472213580 676751769 870166485 578738443 393718191 838798333 87527789 186203144 521824797 32928487 691773008 867275716 837074634 227397901 159962730 265943371 404028505 43242526 354131305 945257054 64295285 954302987 723571911 850069959 760518048 211814853 527108610 44012438 706802426 453862385 48351536 238797771 211275542 116859999 53340282 432433726 185806355 85831931 4541879 313849846 167023324 546922421 628736124 148909283 228283283 416326926 363638246 608803509 435855586 357123038 93720419 987725501 35459726 252316236 838758573 760831384 264608411 203750250 992996115 720113224 330063134 168194045 375635746 340930005 528077685 935253520 303494464 20846366 562536640 188368203 794729503 578936935 804734917 557658271 636803640 211059313 16085735 651024000 967605464 747071696 991761737 164525415 626193982 502954080 388266209 816679620 95126006 756225495 919029819 797352566 576268525 686961046 274922033 538009197 124123292 24203850 408562833 412327549 286227237 499573584 692728887 580972656 507568954 470947015 834845406 237446431 619338602 693301743 258688172 825602247 206061924 817431523 772894042 531242713 926147168 856936797 802267631 103050461 496716251 408470096 430027410 509358158 423202557 66673761 737919945 119422344 837582433 483690969 698163611 975853347 646653210 38819573 238207168 572020116 959917744 403299458 814904750 782492414 397478208 551639492 686213498 103331954 178969948 653278223 401860310 638455254 408748054 586501472 242397632 193882593 165683976 604459530 590090036 771773067 172445219 611444779 843582399 332115815 107838674 320173656 720015455 706545394 540874146 741955540 264500219 513545060 342978622 699067051 222782757 651670710 624344990 78983374 782582422 868026883 144905192 937586695 136902221 842696596 994151977 624450935 826598428 511882593 819869618 595950135 97128997 372538679 937636833 898678200 575617344 693680026 387557298 774255916 780997693 400294515 160118952 795922487 829423083 207040396 763440482 882996636 365968733 552397485 790327894 34383377 879189698 25176550 321631879 123276961 752776793 823687881 898750255 957660403 825513464 646504657 247665423 952621193 252484050 733181881 119702835 825265400 619611775 500910975 684100331 771648738 263449264 1616046 353811023 630095620 26166044 473524764 710037469 35580378 95474848 737495844 194575044 430141722 687493804 172363757 780310807 877191368 262174624 16551175 849822057 22814945 835077477 747016054 454571880 340498267 244335148 927817470 761560486 688785716 188654161 265954106 95234666 749001158 86776734 847111677 186360368 780337953 170467297 60446485 607065441 153365508 897729874 560697214 502793769 867300723 581478999 414455236 25307753 491802565 240892465 45118866 462972539 601732920 2316958 483510964 111966571 875380924 156266265 54942298 141999045 286395701 702395606 72166591 245720467 592023209 289035227 599128825 615483843 761585796 765331354 954986096 108576541 939267070 876722453 21241989 722442086 611121051 73968640 987187506 709556900 933509567 45814817 182634653 328626090 719387466 971300205 384423016 899610161 727675266 600214274 394744863 417321023 165854220 465764451 761183851 925434941 833123519 927348808 594031146 211075867 175179624 768365681 21489083 704442072 561578620 968806307 920083100 822817224 28792472 513944353 468021829 713150608 368172981 448156467 863187481 195075251 674898518 162090788 381778696 320258725 709683891 688284096 221311224 33085496 41717509 662475479 104318143 709594710 294714907 553074734 770654287 638896312 556576182 593251786 502141606 38302783 10476386 141255735 106078323 132971982 65232989 230340996 407602393 113907418 951889150 676201234 938233280 140170573 247826142 769052904 434753939 528897343 26727080 491806819 476737701 70572224 666727961 466908499 114887479 724642860 659336210 141177533 530140347 946420192 208856100 706094892 332464131 887547702 891878917 169852366 740153840 586679578 547558232 580005547 573317164 493877357 510979760 143726848 258075349 9202652 32542882 167913390 879259681 192560908 993801052 559808820 985919826 420438900 788162277 602077053 929684178 377902956 315684103 669172936 642357926 854148680 744997638 147056207 440640645 828577675 519498959 294253619 175839950 456031991 67529718 696773531 395255061 394630664 896524203 927521996 558517988 136660700 943667405 867419401 319177148 821857486 594270201 405249656 945270619 304908554 181066604 701318072 108484084 881899659 166601372 429875888 867505688 158713255 188920873 144953911 974530210 137105660 801513868 838094464 57890777 909529844 746474811 87352515 23219271 857372024 383224137 147708195 484946191 657294362 481547569 926942732 861585995 426358223 815561403 425242906 269483258 113280675 554102531 988108711 20063527 946900887 375637364 135276030 934857200 244412783 255084018 638187479 798113449 855824485 947753540 625131566 745791929 873742606 192427378 210422133 738800023 105209919 347209584 227952875 502790175 696094663 354939402 208610659 840578350 684608343 575894461 747122374 506947899 299772346 281739548 96908892 958508244 296567593 687743418 659720035 481928199 855488299 644571809 101210451 740256356 590945723 501706223 387161043 528193965 81650488 30623611 499741439 380706956 629486868 290052631 926179782 791433227 297942098 216559553 383935510 983734153 826075784 224529448 699642268 840644096 710109402 2486355 917512572 529048129 845619798 478586345 110408125 347994245 25109842 878698388 582981930 756119629 865282206 637315671 509515838 790318853 482714049 111180451 419323320 585974960 184679630 457039710 555430134 206151225 363152674 229865991 694891625 986701570 819831193 887025922 188841147 969509423 381559557 240468138 790107640 28837472 320189163 277892612 735039999 956696759 574720744 388924719 766898796 664336982 267152520 757166699 76536659 217992563 298801497 512691393 655182838 105632327 825971410 622962391 288993930 54970777 4823053 319960070 135416462 664499533 424325533 917037583 645781509 787140526 317326047 219521315 565576301 679700702 92024785 995403524 523684319 387039166 521646715 690617551 260697146 331102329 710292382 176012292 88934778 35186349 430072089 859513508 871467952 608926173 308343554 715473345 899486560 580743839 357347574 877966960 282057194 767011465 255358061 478209449 472486404 627745592 905876289 164817669 948905009 277710724 168380913 986604974 198726865 414126216 873217449 958003596 182275732 280353405 326149520 71983096 454563476 603010119 389552780 450453907 898007467 239321654 596448265 604782885 887315223 634590912 259783785 183322629 58110502 885546267 363432524 842629031 553079405 738239194 177161215 995269539 111927527 847705597 427088951 776172874 453457604 794278846 8167326 523771321 56649021 710821583 749063301 37338927 159701957 342814280 273909325 722102505 326529556 121425116 613977580 341023830 681051202 525408149 593764223 821662859 79998801 842205612 738674783 116125309 986568634 310758386 379858695 858670654 498931068 102182691 774858543 537247368 643996146 156786703 614256258 558560956 595411276 941766430 545108287 628615696 407219588 676703603 454571001 547953589 776644283 324518568 284323529 439590138 943751186 337491773 849255726 206414780 295639399 541699072 98916637 545029467 817219153 458100413 970755 874165317 876747440 524874978 255660829 910101839 609689828 49007195 824385112 391018644 392708573 274665407 622179767 808891829 836905139 867769951 342254362 480278481 424442042 131068310 795401209 43269463 777483325 94283731 107119841 615153159 633605281 227986608 474291663 78678446 459566425 809552575 886438054 635120161 432252383 806594418 833778954 558130608 591180926 537571211 536546904 769614074 858868460 642393388 983993265 855724990 231580402 888378362 309594684 597991897 63456485 359768732 396843055 256244186 358531000 429151872 23382880 107142923 876802425 235764220 65412045 540886115 701839007 90788196 836035014 160330007 483236791 46727673 490373378 608512115 745388360 346655712 113362395 754052442 290093487 683746924 826253688 966614907 573746295 351711967 611610683 803097288 902946002 539702583 552067243 238788800 927061694 401051744 769772907 797918965 892899042 204173371 987658952 653529136 58471000 578492894 874410605 883128737 619997754 941436448 898776741 82523843 23141570 432153129 203917130 880520603 989683219 146182526 537094640 510922441 692352845 609867495 690014250 666011776 880418365 277557969 751394335 37609082 160907002 759254172 957740401 438091320 224094639 694117257 345673514 211836080 841953164 616045304 978762688 101847587 755762073 697973440 864204635 32588756 135487355 382202423 341199396 268208381 75405396 500755650 563151708 801798495 364914725 627606133 853044946 336390145 474465095 282523105 418680118 958019355 862286966 10741758 773063881 981491541 388975703 466271907 239650416 249468743 677829669 50675953 163517083 876735856 442170411 323203402 709253204 87773728 729196673 829685625 127484044 469509938 368898478 101038722 643612682 91400363 118998620 680987266 164007848 606890044 186844665 440607775 442349959 674536090 675929742 337673153 409606632 574709672 557888255 785580479 38296632 200006100 508626602 851845197 845463878 759809501 876307697 366284659 161540747 351012106 523276283 228407735 527578278 940805972 766011218 919137146 218073635 906161304 220115165 679147903 562030163 514373499 275028053 810135310 567941973 919820990 637733077 25881931 586694850 146142351 330741561 943291836 786620522 212693150 893933166 548314802 364738507 727913481 608406913 968661090 989216700 240007511 129725014 342295916 697682711 924116093 87223854 646880929 290530340 739384649 887861319 680940063 139334896 783007524 148103167 463473848 942606976 172770355 66264181 432729019 82626712 312925388 910635522 607861397 30819970 962181259 170473284 623826640 317575363 901219570 600961586 490209838 976799075 179514908 61111369 63515573 595589702 714452849 688603624 981398182 698368510 817028695 886795290 524824704 908434988 919485211 68629989 828215269 163753224 669269274 393188449 725051810 103503774 845485246 567117714 679720291 294199741 602956446 862771037 903862254 91673175 556582888 885898268 589536959 118323752 222626633 736404928 248681345 285421197 280545050 559986914 726574345 578130797 525103460 609272172 458494366 929479506 634586789 795151413 243131343 248965246 20941417 991904275 79005620 601754670 794326337 106292684 752816450 293678049 16734072 267472671 275554267 156005951 868734421 634107060 244737062 884484123 955870450 66063902 659302019 853237656 211470284 712578715 379418335 809263530 242745623 178704888 293931366 998351736 197228203 237170130 859471175 494410778 780970341 656749438 309065259 627102204 230137722 776218006 795168424 894608571 173994948 133899255 540911501 369038093 724952668 150372222 300867029 886743145 599605612 460473408 638398424 722088279 679232520 194610709 238626319 706774644 215151911 209631793 93334976 161700385 625445724 544724849 704934956 559029917 530135395 372641206 865295363 974138366 392917166 894608000 4389248 640907814 683074788 695479079 482763227 987079058 879824692 989688428 937521386 117951579 393962706 608195395 708718346 27249756 617066080 300900584 151266997 383927166 327444173 804188269 396144809 819094318 73984512 6005679 307996975 584554236 814536746 783926345 414807086 989897764 590256269 574466487 345085299 140439756 539566673 67156447 919198315 544731565 295561799 485275934 921782704 838029215 251939439 250017928 921532474 275550841 267691145 304805118 971868486 35973704 794477496 876596293 719454074 726640441 571145720 558870157 510159059 794220455 237248635 257261580 152945029 675169314 917574290 335017413 433858956 109302568 239865269 347988006 573046488 854966645 981378593 926460657 215110957 216886295 246068327 394677105 922935255 556843753 312147300 133200966 702053950 245831652 911443380 685018287 258369461 826335569 249137888 212504524 553674376 780410563 339231891 912883032 271473647 798919043 527363785 22397029 613679080 440844718 44860082 52550490 212606750 480458317 85947754 6449921 897781722 873923650 622662474 385301721 7535194 41252244 976259919 505553559 100953129 826148642 5372925 270546818 237157547 275431990 25431609 123141571 366896895 82029369 481752360 418785730 99059697 639354519 262104950 571135980 860451829 965863301 747785793 211370822 711227943 52657858 95953238 850122462 237146017 227024775 625974871 834362180 97224609 313747531 520091963 406035263 790471635 804510659 529394016 59267960 394179280 292649688 637741460 569087484 645661437 647990798 53195817 730673754 334514964 615822998 565328552 630868285 961233650 57557396 460150340 721029162 374261351 40019153 480428111 986130974 857458669 386645293 500076186 364646771 810225727 811698224 975017833 35016206 606068700 407404953 524613984 898820415 80292092 997350052 193814957 865992237 691768794 766928175 669482875 875790085 733671929 207295339 538190611 279723141 267640898 861263579 547033190 343426239 962323501 562434091 649320677 241169806 461564051 520318822 719264693 412017141 52431522 842419934 313990091 973511755 537077345 499409550 531237367 607845023 901889719 70314233 866766180 278130775 344385605 759938733 140765057 209675579 842169739 303509733 347184100 474946551 718874192 298126962 948163287 681331256 192849901 629679 329292384 230126947 100826137 88853674 907890629 887961664 723724872 225218173 554184916 664262676 532799103 974120722 696619195 746832009 89335050 726159641 674498499 321999469 391656295 300768724 323750248 357017145 693362064 765596280 31414995 30899448 555032899 471863817 56179504 910724958 34746145 293752338 861502633 268283589 949625056 600529918 611047167 248599757 863311691 84165439 780878596 576561010 325983917 437989573 178558755 988766133 856462879 41272710 589687412 482113270 681488932 23305456 965201654 64729357 664711937 840787055 856643251 612235627 103941637 758730196 140577819 680431728 975996824 791245989 883754350 504871018 687999474 673231441 480498693 702787797 352225178 114098528 865168682 205762336 274107146 380911301 427363538 963420134 791700880 799599506 793564613 59126852 882340977 92327687 818230915 122557012 439633365 82210546 924911864 788690805 586027615 344168252 242917955 884799995 900096765 992106882 140903586 980360010 694716565 501152651 807381562 418492421 715364287 920783388 14018708 779353865 425023699 534344609 12943938 572064947 850705906 968876511 1181660 905182697 929406892 372952196 548241888 126044395 504150345 7469973 988614544 211534904 423750091 226144866 228615370 261636268 933320853 464110592 681766948 445665072 377891570 175916850 120957857 822041601 656241630 7063696 658738259 814102648 33846615 9917404 303039653 941833346 893501017 763427527 369019793 447300771 775385056 432062212 908809033 806471476 474955068 518169856 891511061 667760479 144741257 863886515 560713779 750883799 623416126 80161996 555858855 600962846 476862908 478163451 59592568 982460781 163641826 452722881 666448043 845112394 187714466 643916375 749448453 584580482 911071368 5055562 527483987 329998949 309047962 444437358 297077321 668190756 511390920 329547510 482287192 536271134 475867277 291917616 554823735 306459149 906477453 395789061 602153802 54621163 845816331 171690475 569070996 49412626 502794573 163481823 944633723 46738531 917332425 115033603 608264894 487714135 474019528 552428750 846523366 519263717 357075375 808638737 843001210 197954134 961155504 982544398 285314519 388628542 495508912 125634473 975573618 935793825 34222204 436562213 234258189 936560627 772368740 658711272 787686964 508696052 666745461 220738425 712929441 560448545 998817142 620477225 120745404 375356181 666107352 570362868 393943538 864648977 382601565 447387095 67989063 480029515 818543572 568456097 498897405 680849498 138602948 688681479 380420152 784658332 206116397 885915434 254295436 735420880 237832502 584149079 296754563 725518582 364714713 792108329 830083397 384899346 860884224 917900878 367005225 845755573 554970359 588120467 393099700 1286285 109494054 127579844 837073460 120717745 988535663 195184866 974515354 133698089 808764748 645546793 727010610 222019774 662224387 211724072 947114164 59971900 976031901 810675946 429321307 983149931 425972118 538293445 949419207 847478813 831764290 349848998 593319346 466367606 48201429 368074021 132038430 971159340 731290230 78517487 83799681 817527030 650255505 61658385 654245153 968077813 534533929 560477572 860474670 502740425 30984971 926356385 112564544 222925730 302813804 809049478 116743434 126546095 940220071 272046251 908615232 907498177 518496492 371020663 102977387 3417931 246078695 825404200 236203109 88315673 535141350 898828512 96333236 674751309 179447224 75197908 902899086 236355500 467986833 266016379 546923419 92419351 896166989 132455444 128101527 144245478 464979789 927552337 694252636 373600764 758276910 280816197 672377210 857382004 507604803 593766329 733002987 842410590 797795537 199118430 732346057 881937554 348159169 143585242 628214162 389738433 875763629 618491016 656124388 502824997 575404642 942952210 447364902 464883632 982307724 643199556 357897584 854898698 287464510 790626350 608468697 692582709 63296364 526638252 281890078 457701393 457897064 860697364 424633564 329425315 729445835 43519597 165526217 297621024 99046855 893608876 164877559 6281802 645712713 197667266 817827060 544631023 567888666 599233199 439210008 487290790 235391541 446055113 201655345 485050786 124240962 217879510 686183708 216395673 270920808 372104351 88038385 903353302 617488722 565161212 966671420 810174602 737488331 4974668 669264937 81592193 124771793 811582584 281618836 721781326 244519152 490994451 978823630 548227371 569449072 989724064 8724045 349616156 562879603 652295055 869872604 468528660 91230383 259067642 347740142 83230777 54929171 864536476 110722604 837345320 328441215 283637318 363163754 803280717 861966038 689659943 119196237 108377078 37081264 155402279 184303363 13534723 462574550 558412575 189850070 834247571 601826246 571417526 687990113 381584254 378936585 960020783 194925669 2886186 979157937 200931920 308804734 596390411 969392830 986922909 208999881 352637397 560513712 366298425 809453171 159351901 982089832 709973874 799330035 166839072 705686874 801133452 27822044 410061384 835622365 29762839 286514340 209861882 53387208 494411774 764900592 434855750 988433746 403166659 543556672 221106930 692229590 234377226 759340134 499208483 809903526 843507484 926880013 904336772 532165008 341462018 964954772 107161131 890495974 955943271 769987606 688515144 699097115 491614183 394786374 455954230 550469052 963765629 460238324 347070248 439216530 853452294 622873197 187785313 640765621 792380805 849085574 80360848 87555456 538052729 964037537 249915215 197718062 38919535 227297452 742002380 668025341 228468582 804244996 545729396 951940173 880714490 431647852 563512864 882569759 417045778 98893571 794883693 304626472 526232991 537837355 447788997 612371053 605977776 569092317 180005653 62222829 482824879 800768176 227636850 414437523 313310474 261150302 654220554 287946646 719671056 194629850 368971755 642759560 51999490 792820324 710498270 868817744 575856258 904510944 232265254 999947723 75878936 479432485 454298303 64417578 568090837 129179542 609724258 202555183 382658845 517463498 183389557 82663014 381737608 770944977 765321432 498563961 858942224 455799906 503093891 76526747 915169126 350782150 247556897 578044035 749098666 398193241 871393080 251894303 619219933 421245078 126356429 180016643 881979087 675254340 56273116 222739614 267631833 997388541 358623619 840809619 878407384 79923306 38255350 561853154 381879552 471922162 357224249 640937753 577717040 533405338 335626881 882909708 844254942 471712977 923608111 887884126 508762463 17420602 725970855 261313831 840184526 822178082 474812194 920862773 773656283 245969766 227453625 130588098 191799222 743671734 823499358 354398162 338945142 700355389 930670557 785156959 911711345 278678272 299864985 85412424 363226298 802968121 423574546 736424870 97423332 87342415 198338437 969928075 966416158 419872362 784486058 919508363 894446365 72532457 204103874 199456676 79310962 53965568 937568881 390005875 93209845 50435077 861487500 47510526 383107550 164226407 360560221 158349578 120155408 78640628 163024812 305678638 693477323 883051856 852052161 529531518 843441802 558904507 795230230 305738057 637779948 692013235 169849307 854732579 96867805 322465535 762935690 162179154 366753889 549126006 942921615 514479197 836940918 658950818 329613828 511930684 897141095 586320647 116391268 2199834 395137026 915983941 208557563 191111510 555830673 849668167 17997918 448723645 195782895 923463722 897332178 497049526 490825450 313632686 329163686 293898844 339958437 835482810 373381821 335548491 517798401 917645882 133672037 572514882 317061793 685681935 123799789 894601499 683051201 989252524 908037957 326388667 579973994 400890128 710350616 676594378 874899631 209261568 482937028 172568857 114816694 362179753 132157442 730369542 240554232 526453503 951343128 806925101 79845689 971406363 873767641 622665028 729718010 492605314 322575226 635011537 684773001 282174562 915803199 928357847 16188671 976023339 842433218 54233398 337417492 779461895 155332121 786212173 688096598 681978523 537521219 801796569 743668865 507908012 354690002 231663254 796636981 956615332 441337170 59652334 443061753 766520439 87032371 825543068 188086202 555304470 710393420 257774001 305971833 336352979 536066265 878889054 165215474 724317219 885822489 813684521 224782421 142334825 623608728 593733539 433999375 586239877 872859655 448265545 598452076 273495855 940153668 661845203 101406985 270454622 471103781 731703399 780936535 639519973 957494001 720184636 551958110 592472138 552288039 402737553 850917461 50895392 443871609 222569527 441612041 262772028 638012409 654987710 317294705 30725433 42919498 116471881 657843040 876014061 795080148 886705072 450797906 790800689 987765423 658362052 721782959 682442789 715463921 878066737 120247866 665931145 417483159 396535099 130052063 937984976 984436946 551101266 457615866 87444962 295383766 561848986 726639203 522826081 145301188 781734358 570849368 210263571 551358259 158885599 106738226 939575876 99407321 225283938 258806879 880390214 682830039 723688696 682336647 530503082 953847966 641188929 660251311 166774674 240443833 151159528 461654680 610203767 340047299 269558678 299246039 604405559 207099043 445705477 404562277 780300946 157911305 572235297 858947044 560710661 528130599 239839771 818889888 347641747 863261229 237569635 256650334 441481619 901866592 904214222 121096952 850607073 634568543 586929921 141226317 342096039 640700405 904656578 54302058 620034785 897122663 460059014 661244984 692693891 455665905 636587652 101937319 191880553 427854102 447446780 254249321 363199445 116184640 139619855 937169063 752075683 610921450 313608412 531864096 497634661 373506197 795022732 936820294 832324184 27766684 597496579 113154767 835011274 749382241 938586296 231707933 998452367 335110625 572581353 71525456 291400423 355224569 626400714 119487083 472833929 684224242 176481090 422439150 844048774 530734684 498776366 538131965 400219385 127460490 889364385 704788201 943523846 640926103 787959942 340595339 353040216 251593008 75339701 239503551 183661267 69505553 167671974 307166370 577475150 783065501 932058405 513762032 773417471 693016016 188694605 65780586 340949448 12430074 297942804 915655733 493545496 559863115 769476159 647896206 439102554 80871233 896653146 640840539 254145069 177445084 725414001 90044482 531348521 553170254 620613404 333392136 76661186 973369276 976118170 343054725 630135183 210127563 787061582 602443573 447983948 325725948 862450901 828030998 547146483 631512722 755444200 356807813 54099545 38877917 65621698 114698081 518596444 291593649 829546035 324467327 237431495 948221015 683464448 940086814 500436935 173989955 95235996 901006329 153883642 931632242 834535192 686780452 343215337 353010495 747617229 426078659 643930358 389849081 333330242 266341010 50197855 492822529 876834993 814033259 41691410 786455731 382255634 830318552 508303814 537075164 468857491 566394906 468423106 686275201 711352504 160196405 643927121 180794159 492730192 429997448 882969850 284588607 812292947 163439709 279655303 222694015 54702618 233639712 302851612 377821621 669828430 653118144 44305376 608691845 695016465 261207939 143040006 768096378 209725526 638480301 757877364 16513005 756747415 613763592 582973939 635929254 609482950 903111008 782419897 549738128 152676137 292590540 374307970 367620780 403110955 723047127 868317865 529083803 139401309 980261405 791530872 936866243 908270928 381889858 326879633 798610897 318697552 635445117 129899055 17061120 191366819 343318318 708916316 375568401 126626279 453202758 421864664 531769424 534846858 825863504 700826399 364238407 539115659 491691786 721857837 476039629 996847429 134827224 207723671 210299898 888794755 420055565 558045115 721276027 426707498 75704703 668427665 869426383 580845490 269942762 695509672 920262201 267277129 78113223 3027427 228947874 699311093 531804504 494867742 181276489 711471471 348083378 416657087 555901117 353077380 395086891 429066663 215056469 235235062 697765958 805649209 567549175 898022113 445304047 38498743 24602833 858122034 493674387 865024238 105661534 906375477 125123572 6615640 772165441 796593988 766533769 861039469 971090317 815313671 27316193 838936721 486167720 650958804 456478082 605489438 895478538 380033986 493863737 264089765 109097848 104690373 997332283 827581669 727566612 941159506 334650261 767227942 546042777 495200680 667661965 128891112 106687589 116202504 128044854 848970492 883225549 23323628 153867292 300345802 263817651 593536206 27506256 577267896 865787770 908903654 206461813 660549012 708128975 365860507 692903147 196224750 298699341 984414564 618142914 290240674 448270637 729655730 186270231 901446971 589962663 538378603 78687494 37307918 474440363 695552582 339788259 715989536 461574102 616220613 285059089 537142947 578210333 275049895 429207843 536131071 154616684 209064502 968860166 736018000 618063791 494370378 596961687 188547403 642448407 50616152 721206865 176582016 585505419 564589657 50532901 506694002 574475922 828399612 910094194 411741008 652372776 447034726 698954133 159042564 281523173 33502153 774170514 77065972 130090841 852886416 723624630 94209495 165370060 620832167 701187024 419723665 14223364 427183854 81330056 330478323 719886330 826392749 274567781 935930695 631177380 144117491 331031099 680568046 176202231 399359147 253956465 404942077 819736342 198462187 358121788 126384982 18421014 650493501 382543604 883362053 496235724 523507818 908303951 559316138 72626004 335834904 409662525 130101690 629239774 779360384 639774710 135322099 563103230 254076193 374107650 523794039 472014271 196668229 818520730 542752095 613886866 331384429 398548843 519874465 366775849 628998704 843310427 528757648 90730789 962307949 839607857 974601779 526898831 182564594 948834649 369382704 909688514 977777797 845557242 651725923 692279350 768835398 133231893 663923036 175352805 808813363 645599865 665566041 175797389 291254314 191619810 543781250 337313868 18285053 41402701 750612462 180661837 167950626 631947230 123710427 65299559 954077312 318300987 820312276 632367812 316219336 710411364 96971126 3461482 305938535 289905036 436541055 709008878 607141265 780694126 250197253 520212939 545157600 701907193 393978311 497766990 441000035 837762191 114656384 121152419 981159945 370372682 745475214 543211879 7998744 17973860 290622632 338366748 658747654 112645295 85202603 303282953 50080937 798574726 877859257 322684893 150424084 912241839 139518533 33276157 601675146 449571195 281937837 975328484 249369845 476481031 22319722 196891486 860719951 852572309 569767872 503962862 549212553 650507039 45688209 236455413 741908255 874662046 567229734 513612973 977908286 660107287 823458325 111827812 211741832 700124914 862054897 29891961 870205589 244963687 763215754 128707786 829323010 568415174 720070925 17019084 762108447 361238546 393233698 16293919 454921253 396205650 792382868 123212457 509590544 685779679 480519383 679261361 442788697 935814895 921326910 767572232 207409354 716397908 523743094 316930031 719377770 865529231 429473709 741873724 721013848 50957434 400006906 876205164 719299397 736082353 187474692 950106243 37667875 743718896 205431676 498049833 628851183 924995438 822572543 64802048 419459770 967553997 820382534 365050285 397103266 276300913 610327225 992386332 510405279 959525286 580089864 108059894 932388427 134401034 679564850 711243706 360387478 269179543 291053344 551687690 484006584 960458334 793647430 566096512 459829670 988585287 808151482 839821227 298242374 571361772 947246220 727184464 298783248 131629603 934710040 997707406 712253793 857288860 484664292 595450831 271662375 57454096 721633854 843362583 542813298 771570117 525252944 104638995 516754535 792046346 100234757 832693506 499414647 198686674 987626178 440235271 337738106 527644704 751800538 597298361 402178579 71273808 110150661 649794800 873969851 489674551 720722305 139996154 880455766 99028708 783526080 4912656 842789742 823905960 97242094 844906506 576886239 370278431 548839515 818016498 374884043 549748809 774426438 576213802 845278423 632255436 121190886 82341779 160342151 998118893 323730410 702795230 202890961 884358921 809453083 686596478 800825074 495760015 577013091 216603582 928221860 136194918 277013725 609322797 703997617 446369326 361390467 675805182 683676938 593265774 859329148 957930477 169625563 750062065 303873819 868852718 853632083 372955490 52654099 616941751 123915498 92301123 464026800 956422874 7665852 770857907 459272618 835221787 536088398 101501973 988916565 825228784 236215271 263577777 544892650 766318582 892633658 202739891 26686819 823579366 555195633 217463471 133068333 387001524 529276141 296768317 11134130 786042010 637613475 241832899 549283418 380391988 320537196 611910547 399236680 236361414 686126896 318265944 152228906 588200256 502722574 946252456 885427173 65320932 189286941 751533317 563047230 401646257 584535286 821277100 149514313 596633139 655665461 996639822 617804877 467173758 110040558 100877560 503254873 390908686 961011256 868398369 837209763 463277423 115468910 993007763 615365254 653131037 288335034 576533085 684452514 607790044 176156849 935455515 989279419 371852590 554268273 679577965 826907537 951505999 725415481 890772926 286696011 823570881 541293721 932507278 423694048 916999737 594316162 227151660 800681669 324017182 160120537 561867398 354122720 828372296 723587410 484630948 914059857 303219939 764387825 44104181 700330952 783084703 858671634 864648121 341854593 750602779 788978069 21262934 158368208 525734529 73300267 178576753 4534562 58616680 881785128 847952801 465044370 399555966 349509512 536515040 140143906 81551519 362690786 934249748 926175290 281562042 624320369 822910722 840685522 122186760 992155267 19728264 560446148 214208483 990632574 350859920 647139884 952480839 725672076 854771502 212811214 3808550 512470428 120475242 332171703 744356253 452497412 123943888 863965166 72978873 451792738 443621188 159736424 699429225 818869879 552056038 131454872 476416966 767726286 413471611 855103327 828781509 2165322 506917356 810575773 429169318 534637005 813584465 220328563 281867205 787014264 261555134 888959168 746636388 690304779 491380240 627306772 221314840 985864545 185754237 722916837 544714414 677414421 936623177 260501212 121642133 864369251 798544309 504275302 812820743 285393381 288778082 200599333 238631233 218799086 447585784 882205023 308901056 386269179 43152515 503595810 949360433 218600353 246381910 846150481 504339056 697628803 529116467 201187671 33785733 154569561 308205412 253909836 133463521 116117905 830225248 834732643 439859645 921332494 252255673 53979962 816034753 148054670 69855521 341658609 990210291 30891120 432483021 474239253 364658914 279602092 295120868 270621287 350053823 949014261 276782008 756297397 403321486 411120415 351593473 180987619 87644061 194231002 90209727 452424838 872691056 143560810 38396943 449095797 927992571 531299069 328325547 401518989 507416666 276337920 390163572 751684774 301541462 820625674 322705700 130604039 960010446 819292185 620633179 797602932 477559466 15022625 816055130 391117507 817324558 333343485 457467849 962554331 304133598 535207642 356557659 838000227 897827151 297714016 520576770 551296702 345404662 832407964 566532806 486524083 780368103 785980287 520179161 32198788 118699123 125312556 960653510 886368229 306891922 563883126 168100169 215316145 454106984 654470242 569208225 92881679 929521642 979734793 851672119 655529739 217579859 632090552 994866879 620696619 618642355 465386816 258336777 673786283 301007672 833345843 450044393 994344020 860014941 434441616 46325589 187179695 816318825 692159745 939861141 547921314 353723602 850112935 853250112 923114379 211796274 564459867 742593060 227491807 784371054 488400772 45050704 301535853 754549826 24494782 873057288 705972182 898629055 746863351 908785143 149520759 562734836 346256522 332166181 527283740 101376572 321957469 69245905 379174546 114473180 915484649 256477357 246944766 745366632 361026970 535111528 677963603 329176794 1951664 531565293 967682601 220341605 927428732 550486257 236283748 867778807 840505157 27976259 164216066 449075464 755692469 94791695 857734835 998858169 102338652 696891373 417375819 555712850 388317209 243231797 687287471 79384869 593234199 230049449 291241516 695113689 278543301 404727134 508113151 198129278 377136769 585075406 740009582 608240339 239807466 104511521 331489761 106724904 309534798 346936756 502798106 70422446 42805861 695667808 149231914 15815493 106461213 752903417 12304497 810209095 300261318 206050031 979785878 166356709 859417180 486729084 900790193 789322248 444154350 309520477 783163041 825495985 737500607 526115377 715930443 201831218 404017527 636775672 237647022 256525154 641086768 97913669 377685943 377763350 652940422 75299908 982573228 348589758 402218276 140692739 859026597 306499280 277906182 641779932 427176469 96497729 254384939 252503751 489309725 828633950 188822784 810216717 158052358 129497330 460061464 257911284 410696506 696532629 913703935 307714946 740482085 981650869 742412536 603939069 145175066 198238376 942698432 518388093 749967763 772701541 751076006 629630649 356327726 973275866 120626505 858919858 457289031 168860292 328105783 731127188 607794650 239891007 866047332 783022780 290675207 66249548 981002577 271554493 776136820 444338629 460421346 401270094 327417842 702036925 349007163 189385529 687690130 989065278 984248713 258016417 51602918 379091987 937553125 206638858 887340168 104924884 600010733 247736366 518403795 553745135 852442447 341341877 16364935 771003914 808341667 333469750 800005987 580321576 347204102 402923383 907616560 991575688 26963187 838707683 287731439 182998164 96214402 53347453 939042576 283725124 866232623 72027057 106702084 284747115 810036820 583457818 484568126 915767019 539345480 367493714 600939271 569732240 317206412 958127380 48597784 876195450 321250568 520430501 404806463 347060397 937981939 239816086 18560055 147544066 265984745 346589894 634084779 985076188 490856709 358320596 587586690 921548845 638175967 261892056 784308020 658819981 989565397 366480468 489741320 534235736 319413270 138007957 864610214 690221296 680169283 8982738 925234546 969032293 446317939 344796672 129825368 904663055 872147499 51866452 648425770 839091670 824760259 293293120 520381043 234156308 704269684 728786263 22630592 202105953 317834734 269362256 295952146 367937184 997497370 240184553 387126409 923339882 15436312 425554351 873517385 968928524 6313717 695899666 796646619 753674466 462227042 616303100 109002872 827687408 729508039 339429036 767472431 825622810 702032487 341469727 829143357 376863687 424571546 851049933 418118192 60444019 574531669 334020951 955675596 518458152 756021476 559187133 597638849 112597951 821202486 291485943 328857527 953860938 564596018 416319454 840116826 841827738 13325445 944326699 687128215 330183673 605077029 392471658 489312352 624128298 392368111 203793315 262146467 325663369 699551059 521097879 216166760 331808854 566230084 991935866 298157932 155459098 396447827 538285487 582615128 947591154 749428038 477831862 730929390 307231637 624566861 184636661 86982783 676879312 50172557 961548080 126519600 679859244 365756628 890663016 945533970 823030834 884902692 354219261 787926733 99191137 760437891 359598006 769009795 77628279 821848998 102449893 589987456 795514829 46599720 326931475 598455134 994002091 625013148 865832246 540988089 99620269 151847140 375809330 418135479 562867229 919838911 587023549 926332618 882894095 167432253 901557698 495050061 438965661 743424185 611775668 773397194 813886138 401477736 421772112 503518065 440758663 786791405 693876016 731807539 507856050 283649482 990696582 639357052 148312795 56075027 389959464 358931257 729069080 617937322 20003268 819008962 77044570 866936761 109548733 404965476 380523841 128340384 749867080 280973348 889504177 574323682 231392850 642255614 181119272 844554752 865729462 262082419 600404878 492496026 203736178 778752737 447887111 371919187 848826211 985021391 817699185 118752511 647109196 481100924 878108725 534375709 698598702 44272778 355121 803051893 703645533 228439237 110958869 557397139 780723007 218149761 924807394 837208227 877200681 32075348 709930729 146473223 481575711 452339051 519768172 54973478 183082892 199387093 472263348 668338703 541253327 377724520 699008761 690110017 556200849 930537159 226450972 561097712 515700868 141571870 709705232 177367092 15856266 341156945 170988703 868662990 492396213 611613876 127393600 309945284 117326317 520516612 911007097 299242697 34141302 567282766 712606554 795133425 726817055 302092934 852796746 725157570 366518248 277285340 184020329 409945019 216684709 640732077 477462192 460990689 846157997 153785706 598564977 931170180 503949476 505560186 927034783 493099320 826444900 109744000 637980535 800412285 613540926 362802941 496383265 655905886 226300394 16390974 843369389 423707031 658279139 843185081 957821008 164765553 538164614 207428206 479659588 974470792 677561747 175811661 745873893 545857902 172747242 158188945 541346089 325608674 944134833 634339242 936680288 146139751 961696189 941742518 546191937 351601278 822247444 976254075 554154616 917572406 551940810 988977239 58105820 971714651 442585286 204436632 162015758 279625599 460863073 789011872 464969865 769886544 611768919 774907638 779937792 779261090 455882145 897146639 269125766 97169533 960971451 513171178 612889754 609556818 228544015 676592102 29903984 749367165 986892955 272416953 131515139 261252240 979437359 333041966 307873807 216352828 304147113 375298535 865223155 686119286 538406141 982016870 131543770 324056411 834130606 845447100 330095004 938994355 115440192 246460594 30271220 583524256 990695512 276394083 979653025 148402695 263386238 628233611 192701792 321624199 504230632 332777767 73785900 195358380 518636446 218374484 957983841 873122244 405525816 313332463 937412219 947243534 533154548 111207008 882251595 522085952 69889448 388082839 484893575 501562489 834101896 889232054 289761376 110563479 992691421 718239319 528411346 515234712 839855125 989621749 91728965 90797673 134391051 881173543 98191125 640082025 851406584 560322313 311361626 525249918 304428567 110690278 865120828 530004822 202893832 167036522 529311689 15130933 913991343 776967285 80332460 926460825 350057166 369344309 120371138 283323353 253191304 267446660 932682370 878134606 373412741 141363541 293022859 870818434 354437967 618848822 395449453 20822221 117987478 105454045 531078741 529942861 105219973 744136896 361139001 147619742 749197436 552775634 257107216 322075669 396193699 752351258 643756877 413388587 846744193 14816762 152028458 938912784 438695530 139020895 244283529 846612045 416003673 554089829 16497745 270165656 964094013 706355882 400719128 378968469 364034141 769734562 825755278 515795320 95439904 105249886 698658182 287534547 171272383 615103029 150176154 596181262 474534219 671527425 455330247 918075038 321191532 996176788 892058409 864654134 794192609 135436108 474386672 666561378 923503575 545201281 484200510 790946329 941829539 323911204 722983167 285789724 387143852 780155601 608456892 37166268 603331798 419564091 253492248 665371338 79811453 926998789 813497891 58092499 739072975 285009910 137870884 37242427 643903749 223924444 901952995 299532748 938834970 426278711 174555148 301828132 484810143 409161527 229788195 323016208 486300789 305559062 286972588 361448523 871534018 581610061 351083371 484084720 58861629 739542623 467405249 767332209 787291319 398377971 66221959 435602219 911517171 705212464 146596836 196985228 203764060 183636892 734139341 275770917 384493635 451947076 198514173 124716501 626737563 551139938 175170631 434554896 919591371 756708875 441434186 761487654 617532972 534246830 302978891 577527405 759290239 503217766 135423094 45119196 616291532 421650751 308970883 698279544 568596169 603256198 460201944 937509165 165042501 849195461 839165786 393412551 450484232 381115600 164533248 879225708 563034769 796157898 305135766 564203610 174941556 878995438 532898518 458996229 789937606 33998748 158089441 907270718 330419706 737615719 516965875 383926837 343523575 814114146 975344073 849893334 230003388 346079753 285697360 977394356 95557283 719333800 837701936 474122181 411946346 756173461 232124580 756319278 723346196 457896159 683296161 218742650 799292040 887372925 609385034 897994408 267371102 290752098 875186996 120045025 602486741 173386814 707656222 844216117 382680823 422129183 841624790 876264521 516469880 985558256 842147803 432404807 271692012 580762983 918240359 246943900 404386281 210016343 531409890 625561021 450613974 915456665 369398879 407022394 743501788 221952841 44518400 570696078 47746809 683314822 483028073 897318877 864931768 278166167 43991232 706657743 94435013 140019413 234707597 908453898 253008304 120131459 704525754 255094876 688794479 370143797 456590558 363534750 607868143 777067809 632867058 233794455 145249119 141713277 491350718 156791908 881970134 314187408 333460646 131505183 724394379 929385599 737793101 331564163 637760139 300895675 111090516 818667872 141432310 407957083 6747113 689495112 23761552 514567115 602317533 329169337 314008773 450010171 882761461 476964009 139306221 505020807 231668749 272695838 660520750 10590616 762331988 98780998 999492835 896514702 578418526 848925065 949066963 157445704 31398697 702040416 29062892 129600737 111414846 43891944 262354619 468389145 564250534 428367682 28266361 642796842 851567796 164736187 191088830 24773648 654964724 586634574 67286965 87224248 206874138 900970789 68532306 311009868 26989202 687280735 725127850 867256761 646349141 540253770 115803540 597148196 460989960 619202613 82196784 846481604 596500351 477111380 257621080 988373125 561888153 236331386 333001596 962882219 852540916 412857020 528962797 862035755 424353658 818257336 416815270 649323221 806556967 659748050 981333621 886221322 638508984 956784660 537255756 948164027 170739061 316759703 472842370 332377061 318305074 8929481 136820187 216097367 855959272 922856582 990890354 339441762 243395002 206288547 719534985 282234412 53386346 766587792 626997542 926077781 442413543 397419296 76941602 135347047 332721742 238277249 5807468 893739712 947527806 914626791 687604762 46238484 146874524 232001967 536521312 516250744 886264807 511246057 580418947 885074932 300110889 701421845 497966477 323633223 515775489 934601394 125780657 776331764 410006719 853426252 729742108 281492437 735912970 803165783 141997591 871192230 38145344 47241101 558302056 972055354 885789617 752740008 6272826 695230860 269384784 996779750 966524106 228851511 18542062 437824113 980903673 685296929 697607947 76030628 846406368 443061827 984403742 759639451 674211540 936185704 689898690 808966710 158355103 728749623 25567155 460774629 149318998 69941650 201376739 555683554 962303924 785494066 793566799 34843655 110794966 390017978 951513819 378172522 383516302 367965719 250203772 670277012 28711839 240452365 242499829 227239228 332972322 932519781 399387229 388788111 8274722 145185831 118908429 788160643 698950800 225329511 379227737 224926949 79717337 502000664 425544680 998129322 510058648 139462197 664546961 416033374 25560265 942812150 44484891 809557555 642227671 100700684 406119990 458751501 310895251 840770719 252995282 88423935 928894122 422030496 909409819 461848205 39793890 993831076 305535285 569537302 72834532 261116663 384820275 734681325 675325876 885611718 888701731 883276300 425778510 915655113 642268098 295693917 358196974 747637068 37192616 619300704 736410432 466718286 172528771 53524080 378736542 97823787 485187477 555151232 318242198 339842082 510100771 16178565 769304731 73785282 503241240 249404470 238258949 199156037 702550501 68562581 986667102 656566933 409858909 101050976 479969951 893464071 277682607 71629954 895577337 595127025 240548245 293827788 217262297 703957381 638287327 263766836 629341349 947331071 300681552 746839863 660171527 188363771 545037427 266881770 20915337 676273512 748629529 452554691 559394440 152038756 878063960 54203707 81261655 623241345 575711980 407822924 615908427 48334885 645849021 724763029 560690397 503047742 121514947 481745807 694808282 825249263 286019476 742651844 870734939 692529349 974831968 827413354 323546325 828689624 141541412 40990106 331310323 779269461 330500068 300244800 658259845 431358986 586756377 306161873 710438316 981260452 633920869 882898923 794533187 669354987 74990982 214539323 26312155 804934482 129710018 425611987 262591917 357484742 109184728 264002607 226293930 915043781 756607223 317504739 632837585 846755727 168024512 618796096 244570245 331832677 827601657 571196820 782480615 428858141 416330382 4410981 16568101 271033327 845895445 716779627 30591412 342753684 440719576 4579834 929203486 223972184 432052263 171519868 787896085 38475729 46816169 557059613 326649737 344663121 905415952 353525387 776179515 538978383 321838787 242521515 331753211 175282296 813608596 974021427 718702693 216088190 30946130 597999394 110682701 242029370 95495050 9514704 242507065 900530852 256898191 729921136 48021483 529275639 901736904 26978218 927646538 655075736 530468881 422945028 73847285 716156361 283476276 669376184 668122675 963961255 109789055 869242160 926003153 989160936 940611310 395982000 24549771 128897862 994082548 801446269 111969368 265542533 486987464 230522831 499143571 632219993 686476853 74065500 811458304 634445934 579156047 137523085 424565202 394992861 986545989 486431067 517157731 992508636 950072914 982303034 442788678 670225318 338695730 107607287 104319239 293151962 521626866 122598319 373904812 218521398 898235129 522133063 749711942 609075927 180881035 563989296 651229805 167164190 100595767 909171995 728887302 344078920 905359960 948391340 646733622 415452832 661261704 61285322 870170409 966711021 171515711 318023792 498124632 165556691 599306289 605437413 485803536 342293182 789307627 393473495 934117992 602829109 33977363 905794290 850322639 866562467 836675798 532963258 490924588 660414153 351560058 939396250 368514967 857326539 690326007 956184172 915273230 377830319 90649182 541700652 46439204 453525203 686454903 394741846 801113517 686335601 586476057 364695401 177192425 995421384 250413955 536127766 565940929 415708238 977514823 326748065 236555412 188202494 471513246 760603307 534572100 421992795 279079908 602288137 691365685 692170608 754984904 871700328 836522716 445583802 957570799 719408500 314026583 120703233 360717037 399863474 653530299 188307500 859391466 196065525 496020614 847174208 346309654 928041863 289712440 564977393 413536578 476993718 502136887 516959922 353050814 724573343 168156848 483883709 706950621 39985845 363580388 532273872 636265977 586231356 19232117 830148374 453233641 992462911 910403923 942688458 204164166 549158353 668754984 86510897 279935907 650873146 168626324 592363680 586114878 402695305 828055260 792239467 362933635 654415644 385455709 750544935 59271923 239247953 526105746 957448052 644367504 52257852 71478342 212030017 242692711 541668496 230150242 888170246 802213055 523695042 827414524 400068355 576714594 116903649 686006737 227406708 317034756 832042692 378990813 817932767 801057709 971702934 773576088 792579670 345022502 655374913 877997094 598570085 759007703 716650928 204655193 271640352 406876745 73084616 984371070 234348450 621383794 816379249 600734034 358747961 940515829 822855008 847198497 207364820 296785056 159936831 704403270 797012806 595396451 957596819 313919204 696878325 358382388 60043053 62732730 954239584 113110471 446580170 276242787 150802654 108615601 194576477 507247855 418038750 982337074 109085653 455850809 609426404 801598430 821767704 136059667 844828773 845838048 656380450 39105911 782505681 222215221 187733570 708426645 338562823 350951929 953438325 291075216 209833075 311563283 402539109 579955826 371159153 528774515 706510089 784116670 807939850 56993664 687684398 352531101 536088729 551440609 351761696 47583539 263698497 187520908 73122534 199948606 190859051 96455133 150901764 553769980 47478911 553989842 145895649 681203452 111757269 80191935 780599550 977412050 789430936 931021987 271498423 661479532 997642570 472612046 103197300 917318926 193896473 757227446 733745746 879241208 635445820 964292111 796301586 357452486 974562973 343411794 950971286 284389488 805643470 734632643 681448996 269937884 565197560 220162270 213185316 956544724 523933598 690628757 633510781 32117331 737885708 801493870 216467794 182745941 799137210 880304093 419486043 518763604 416792766 958381796 980670700 617565818 752375670 995315255 244877690 88692370 490414188 381302262 394793491 613591892 930213024 908730075 99890245 797194143 334440193 585269205 342585649 162660083 650798743 459576618 363549603 893499545 802577850 578882941 420134611 32545591 913676166 745383328 648318314 835184891 288167895 890351495 408970316 624951456 439855728 298569661 308143252 101847652 485506586 740835649 353185418 836125298 411350860 61615275 673479775 645829973 189120772 597106574 425760043 387630882 274512695 353376973 786206332 235137667 997488361 333250677 813790070 9327380 412482615 62690180 160716570 961305865 380750132 800012464 720052472 74605066 455964395 565822129 531823099 723388045 99287672 522574284 788786386 234157783 5257154 424010108 540929498 287808263 802077232 287549656 645151055 145934245 38439691 148573209 399390035 869687148 443763892 279033596 131491322 432219677 148370302 213912949 250459459 79876358 355964346 883771896 918685237 666366866 152773441 716085266 614429570 808636217 691062510 165416883 142345922 241688101 467864145 468819089 130837961 842531617 131660300 974268227 180281880 235537074 215376436 840910044 767808752 757698212 818415351 242603151 302848814 46911893 674610907 277462855 711602098 876719572 140216516 995333778 480438268 352535453 110911700 582498139 491237414 50827887 176540782 488605637 318557066 332642179 802707784 616634275 882739118 630777044 235802413 883883445 659096828 736685410 362547949 734982345 997343064 123670099 931765133 791725402 708551597 621539951 221299265 857265603 5903376 8339836 448507234 639946764 453014827 406336157 615271044 11311740 923487012 833809310 321784573 858768177 944889255 628460188 487459233 996826490 974109898 556874727 260108959 253471149 360411514 975470791 75426296 643053536 944084655 661923875 997407681 183542612 348912412 117156723 879509286 131691075 264888815 242392069 461819157 219147979 724513329 658419494 244502381 362289090 687237955 711601816 599816164 468307988 480522243 915209597 320971167 690608638 718673012 56354662 389417826 737797792 848199242 637788530 418762657 253578132 809771526 938914323 845376195 531108746 189700311 344901840 758600107 826664937 556361529 31608050 605046565 823039172 589089514 724634623 962619135 627294921 321324561 779028566 650406210 948804057 221077704 763137928 289587220 311961443 906774456 587316863 659258673 282551111 693803268 272780259 67729462 631183217 602221243 106436473 865653051 29983139 670723970 786861056 68525177 499987562 880116902 994425549 530637080 154093228 344959446 763371837 357792009 401812702 720066079 209438540 815095791 772923300 496864825 341963212 380439807 973945480 109029415 699492889 947018340 717863432 420310505 497084661 246946829 336283786 958439728 817670340 492244658 179529376 554285131 862902359 300723280 309961658 496436053 939308489 263543410 629663964 778930539 196491610 32124940 550806507 319055413 881499890 440595241 480496899 995298222 214311605 106600221 572779548 372925274 908550302 727391666 304767520 350919436 891819999 174728142 39002112 821761032 538893879 157263892 187510789 494787565 143801775 794929454 437565930 906134734 688313492 277883137 420938514 436349486 6080569 241768918 233183305 580461339 493013944 808180625 167742697 808162149 200125305 898343498 159654526 172739981 839876563 707657342 925654280 261186704 210891666 565752601 533746983 468003481 42468392 118555354 617610733 126087372 831412544 152246785 199438755 836164426 466488360 806179757 252334373 956632107 366620782 596644002 203004661 712280687 555554344 899001818 744633704 660416231 200735072 572715790 275470125 339758339 844881241 590141036 596652028 347105878 115037828 922377467 670018532 551993355 493585725 461848635 364370678 798554510 487301422 113553326 282231021 270535141 142240144 696428177 318473331 366733249 640906646 614712583 15994239 344205723 963887125 622659421 179624336 339742463 653096566 885438168 917326425 820253998 38643270 936459679 650944264 825352223 875941034 67355609 236267030 13576555 793205395 367818473 985623212 789877254 768023701 816610357 44930300 481197245 807651818 847603298 848426508 793115063 40021322 827554276 501115745 796462801 38192250 711775191 355007933 484476515 692918166 143488241 156203650 926336745 430370700 368337698 567773118 359875440 896321227 803798087 466732534 288681860 359610326 507272528 817307061 854066698 860656538 15504179 26905729 855856517 661272024 6294849 474733171 33412609 539732461 41729641 556297967 121560433 384604026 434617476 668655083 553980148 736496534 165957417 928417635 107860483 857438918 752936234 700584412 604960511 767013977 599044076 570602400 41637094 572354719 817856180 238030675 205642476 553652594 355098482 175875787 854158813 929509440 292722662 953527151 224279464 952246119 139602410 207634925 889743653 892501840 907003336 978385811 1269454 201620578 341658580 737886241 927455833 780597290 606530254 392333051 958379528 748051012 291517039 967965440 498982752 926033120 657718053 46841657 232576235 229083738 758039174 384821472 59471970 706116171 83028662 167948104 663377600 962192825 139308771 344018180 257900642 154571748 325763939 22649387 50279349 61864634 758404518 66121825 821246273 844051381 391023803 535723643 41294614 567226143 706361124 960266521 646675060 561653265 460907477 340666417 909963531 830964983 425197906 613865648 935004312 948259425 499357430 474084980 563714839 578242951 718615092 55514841 530259454 285238475 748684460 103678847 653321932 946793631 191925966 355143786 811669314 107639128 318163554 762705913 173622696 32111117 682201906 891667562 387468655 703807126 738922566 128052626 410649789 339517929 26437496 622571594 782378402 168930271 455419919 645464411 648143445 180088092 758400919 731175729 101817463 909889942 49405378 571369168 780927635 57134174 156820910 619592 472273106 777063930 705119299 256372959 561588462 48621058 648226075 488844413 712731521 383669228 60647950 574600080 233766200 96058634 680367845 447387829 572324720 619764489 68357444 372780285 792034380 17732641 101012629 642369183 967325698 789080706 235252553 262219815 155477438 854779118 929148527 88932847 671705409 325338821 667503507 385376980 734765676 135261655 829763305 408699720 282465075 431611466 529543858 590944539 295459693 208869985 366791500 180281638 807368762 239361164 544331496 597791235 953849985 239369102 530160568 296664948 70143138 696865010 398679439 300096373 958382339 34080005 206913729 840619445 175386002 618049964 711553005 180617914 414074499 345344066 511008577 77315386 269522889 285982290 109755248 739180438 911028308 327844999 327188638 801804031 81968505 985080174 438767998 150774172 830273061 631284202 335365925 259286054 92858055 441812392 251273778 167008718 172698976 975934771 189818525 509395270 259550145 708855063 279155852 765666980 577089164 783584251 454161321 401130651 783926841 809745878 641836673 427106799 341339485 184498178 229144087 681614549 718748813 265423078 824150095 456653513 696753421 239273401 385856517 261142572 429742794 72377450 448847780 294112934 731819807 821052548 526323832 330572515 924291999 986540934 731148868 147515976 618288431 342147758 624227905 641382749 248342454 9074158 479278176 907572482 392869289 689325427 381654535 51773585 937032144 599447550 512033634 448177444 498834623 587621091 586374147 372338810 444110993 704377060 87027995 462289347 941006322 991342219 679994366 203049313 308011993 307208762 679910024 700284820 111393073 700697847 669098552 860465853 380488839 629788362 227101655 894218875 83659379 7970791 448378210 590480097 444985480 201986561 597821377 543499997 463461996 475338334 103501470 738549972 706705486 19324788 786513497 183478733 477057879 969282563 594473028 967280753 288493359 417963660 738591636 256087225 241067141 837938856 954735948 235723990 145321791 920071049 624356288 745490950 366983423 491067286 118358610 782268577 293967013 156582006 337960086 114673933 101768618 756530654 660916648 989040101 229063351 607081344 518704757 789198609 255486308 842897852 3342399 869546355 960619359 786595265 554363330 705174167 795709766 721294985 753046849 351333112 219672862 379780324 386182535 613095529 274788283 886093574 496180557 65632497 814312187 926414631 443270889 684794764 117589239 290691639 193903448 793597893 108243161 438250547 739839624 123535449 486739907 471576061 509399980 83200088 185287978 568199445 131650493 804982172 422835656 673669434 413464065 715959658 782667763 502596027 40333933 678544216 255316376 357792836 220164159 436997993 970481485 708723141 220544726 289350791 98041543 202181916 772215996 918999970 296396476 281698517 388827134 492906518 967619586 21896903 444163576 851377634 830946243 287764402 716661968 13973971 38033631 288596288 508797972 538164846 201726495 170559037 792488491 188288120 619734001 709971557 300548323 769200885 720347178 292155739 215633430 213461594 999727692 743051578 923369443 179567668 146426610 798492924 410329038 738988265 980151852 587054312 832517705 143414381 564001953 993482081 46660258 685588308 820089082 56653517 965037716 601770770 113913290 45687907 458087056 886126636 396215655 125744694 566781128 839912967 717337012 385170911 193133596 382128034 219312454 804637139 81488865 965302063 73379524 401690498 353448476 346099734 882318585 741255167 894121586 105255122 10157991 39014681 525068024 473836832 908851836 81304236 769263731 798485343 398021739 500029873 6499492 434932491 629815521 693450878 77246648 265701767 166695917 128593660 914836484 25139616 601694691 782030303 947416544 623826432 539187046 5150065 173633594 386769172 507297852 924210720 110750406 12459312 575583458 424893296 748676431 169617879 478797967 355371190 726730611 769058726 641153511 41194447 893107451 389462836 938175017 31644742 954061381 82253119 14230723 708389384 665316332 620705920 900094051 528772258 978752438 379833294 348511552 504385398 956242135 982685942 966609484 128407012 889996803 798430246 736415707 424645214 500850421 766177840 172351634 516112050 697381938 382415562 998154200 629905952 929972482 177556512 264965532 256370096 913232579 738315475 698508274 978145533 229303062 582595600 235141591 669162020 226738313 921219682 740509812 23065217 957186606 339064671 278142385 237910357 714649300 464862495 807048712 891987821 79952968 799842767 188728450 449183178 981194274 55478767 863069946 399474474 730169055 297453965 539029150 675504330 999825843 23242586 751110098 437925593 22887875 383583943 24556073 253494748 362941217 943760946 874603305 616797650 38144092 83058558 706852876 610333391 245506461 449734178 984336315 784907015 436775351 536570983 477028447 394512448 185921739 239522009 948929722 929226304 353754758 73879998 509909462 909133551 286705992 876235257 218574097 689718876 278484990 944827134 979611393 451113649 662229693 553804779 561174113 870639381 954474945 668516824 410182705 343667516 485974908 780474138 97243416 344144394 835525059 182006766 29399571 33050421 844328897 43693036 55322298 297936983 502461444 600073474 760484109 518422228 571697517 565798120 45740428 335834810 264245972 741728767 643747348 583550616 360922369 909927220 906853361 242692410 857344844 112767702 429020690 166349697 587206179 946906497 282031751 155152161 848835003 804394531 783817316 515000404 812701280 398886887 502420270 486056175 86420212 121730910 546494213 166970097 717979816 205967838 331265712 383920334 525650637 970909463 517136850 157725047 329201357 255234263 714972211 982658821 667419298 538169251 206747416 671145220 427020980 700723463 860329698 70921729 662578003 685836601 217353686 370368777 205674561 479681321 52429083 350906328 757447343 383612279 337398895 536029069 182024475 815890808 283225219 317809925 482214168 572474145 922127119 712434081 459493160 947315636 347255713 477217683 723992796 113444870 391390714 283914775 529205763 259496295 118539850 800010523 890248811 284773912 605453003 784072325 755067504 141689220 156388806 180958107 297645799 922725904 462272596 972449875 889183869 690768666 378603410 845987635 131971409 278408061 839035924 574924424 289212736 279123768 129687504 915232751 777481905 949531557 593975204 381048714 669762748 367193740 585503760 36428166 956801088 505836696 681800088 395563494 657129513 658276392 161588533 100467277 941361852 666702403 727732336 495337792 745694284 837914501 398933527 577866469 532425298 976786656 776604183 575382373 290327569 822016589 833096858 515012314 45046607 980042112 593677519 209636687 887495575 474313087 850607168 343356798 670877707 853272733 786233531 717165641 559707359 239671227 552449417 214623741 612458682 656095495 156555157 840077527 82489372 880006942 667745317 214885641 699324998 984356859 656747925 805290808 517217480 915174217 601870038 630816807 963477894 802865380 383693969 834622806 233647393 192489363 247905770 69849185 74066483 207377425 773451001 82367230 974383073 693751497 86143639 63898024 190102867 988650073 548522051 536940222 636891497 638669185 748876667 306408693 92910751 116705356 593608948 209460837 72201923 693978196 389152274 875933281 240669504 974674556 329445300 772409045 485734578 102216561 271704544 289055124 97020796 622496539 774380110 690062545 648934963 2255700 695985298 320406034 41459810 923800050 323994614 559180890 615993841 339421348 321666992 536391439 933480286 833659540 275647313 562954366 875730960 522679880 799014377 546667551 805591756 48114706 81084396 140570256 969787927 678138956 804031037 369834251 383061428 970271487 455571592 437405750 74905679 667800438 263057838 136793113 874215241 315940134 720555711 505049133 827798289 343283519 361571778 733403000 551681319 754058890 657325637 248952534 25919606 423623652 522709427 693690295 928860147 874232725 491312193 165650441 643708767 339482020 89483225 755101067 960701463 187148388 822170355 730721861 584522703 299650224 322213228 521252401 973094684 745889773 205930106 490003454 450202039 442042355 71248156 422957779 587683314 357758937 894945261 629499463 337498116 87311404 63205996 461186903 243383359 313113432 177408083 528698741 775785215 519905450 245473518 888869065 325019367 134819510 588954447 948540995 32753824 638377033 813990817 497372796 903349435 754891451 935615285 704645848 163620226 558567988 345310105 887204094 230077509 369243065 358258454 604088863 406291363 734247443 273295527 328325257 808483702 314001997 434023849 629852575 578362691 594797402 62312039 412194159 826311153 462682639 178185156 585668175 564570769 334285048 18562061 103779272 841413375 977306989 94202358 753797254 705470152 509245753 773365894 57788538 180134075 461714336 27997712 660676826 226621253 215721982 729647246 898165691 392156238 960990136 169598380 232853087 715845872 347058344 947855325 416309314 655028317 479855645 742060564 704625954 772654288 766949974 666586802 584271134 860224437 228242679 556407626 380972546 355686490 94364437 348076829 693176956 367734634 478368257 298798573 398993663 156610152 932650831 582623630 114234322 922959953 357038610 610969641 725701403 722556532 127428983 116434315 607896372 868321552 174852589 507814703 59597297 850437928 465146634 260696121 975175729 6484856 20503283 771719341 251652472 994515218 317866586 574958182 543132722 685187915 506369107 998886779 92192304 923786741 550207428 614699216 121986383 443609655 160903273 611095044 633668396 199397940 898868790 366884508 867132394 534702518 894091658 40493897 234175978 349059218 998759287 127918543 226487594 849754540 890657559 464588516 206846225 702279555 790951969 805957710 313998448 501800882 1385480 379855952 990755850 32653078 290287114 54730733 828099271 816333804 99063123 373797838 6167137 993937683 311483599 26174599 600732080 859523187 590291463 729498984 100885178 318527666 14245997 719436384 712947002 552649984 920286958 859070087 299636747 177945040 808752084 792714537 331052218 21119663 971677873 73118327 257431898 789219404 579499374 928107709 885575666 970221245 176402648 227809186 624356516 334609958 928448924 830605328 822003210 5690171 250564571 551538354 577061903 877000933 81912611 53458282 634294558 920854326 220148884 525781681 250932393 784793529 128443266 813117782 736234313 657422325 969789387 69050965 275622410 442693952 367298557 147526888 237826394 891881660 883590335 282446320 324617324 41641820 859119138 248028712 367511979 915070846 568142089 50116812 277877728 466981859 182782528 573918354 263694216 349917756 158453090 587038213 615909494 338512603 305638472 229549609 676795813 574376776 638525999 272161725 639488795 385154748 574344063 492972944 145067453 644153972 311004297 440059677 261309460 201316417 224128875 623187698 612283552 583198177 60229723 536541839 508137977 783279121 401799091 465302604 396099806 564154567 537505957 398713382 665243705 328690184 163540133 291625004 235730257 751018594 182897435 511085301 945792721 191110068 11934020 986709432 935431642 914473366 29794238 274875225 755529156 990670747 327896507 801382117 323088701 713864460 495800372 319545521 415783756 328995711 740131273 127782972 879501322 413613275 523531795 883476242 3549040 329185652 805536216 536174630 345024169 413139427 926983311 938792705 227044356 798237874 8716213 531037025 270133935 7230274 95615611 737889682 577359992 207055556 143737266 925832174 922779511 888928341 256715441 460335294 35505878 531467957 405558122 560992146 535360381 356309341 105596539 694394038 85902961 910815572 834098189 206846682 305957758 350149091 355615355 848529069 895942325 494062601 290751217 885196258 850254310 408070955 707705570 26564764 275686093 311426458 461688235 689033575 416762455 113276300 732738348 489502510 854346470 349941287 724332555 208820908 646898677 994697587 606390528 32146248 918498121 200742945 883555325 652977330 69915695 114736283 1723618 524327405 441569597 854899015 937947640 182660684 60475677 789216451 79238793 822974059 256987945 844005738 573618284 196949915 138975774 542990026 258760837 471827640 766972698 754815410 739690863 539000225 624242880 230639590 744683811 825241973 520661427 863714633 611280495 564570223 445539117 203244104 345657431 307525720 230628477 963796825 363974268 138410286 838315043 970103252 286232140 556276680 253157190 835257213 939481131 646858989 910454710 953311648 269397761 711060132 210427959 811469358 697036602 390390942 370065732 86272645 139874127 484933233 532735704 894352378 569104248 129229259 210856800 856928616 33727796 506137025 626858249 401838900 533895636 955867070 869386548 963118205 742058793 193599707 54425308 362621416 483913556 782106702 276798931 913520659 94967181 872824801 340576622 385143189 523570428 615874086 274922426 293893833 925104483 573170658 982000539 825449079 522335664 739427858 124028240 659636956 276203047 354791706 941439518 345056624 713097078 490540797 19817413 751769394 171946540 556876919 664313083 766222105 256517201 316369360 388644840 98576247 343996391 101144733 523220593 952229400 253030991 175632486 782328971 663707786 914655541 461698273 509341107 517963619 866247006 245214375 771592672 125305864 643861915 817606630 254053833 885296360 90287215 735627059 580114732 322294782 170078174 820992694 136559099 356758980 551757832 101268463 958466311 744242485 99456829 507534 744077948 855760250 841316241 94821109 164980881 913227354 395824842 890377948 257048401 316034733 611322962 645997338 814361745 94679287 129188201 917741847 615709385 743098060 568058444 491404628 928517940 964707250 749443158 133551052 868621699 314857137 891039634 708656895 266818886 461053994 594308437 545217619 372293442 638706833 384949703 303594229 18589619 984610200 292730978 175678992 689264955 570761761 124687900 957778298 88329010 432354078 76935705 686921375 991835556 935009926 839740399 258071189 872955265 28001518 37464673 362073470 472403646 769967416 996787060 459720590 819831378 733165394 521443498 969234320 280757042 954587114 605943878 758160486 391454124 636900628 965827954 399593238 695236894 717115033 637228423 693787361 237266574 99513373 203705778 531045712 637969267 867809665 490890868 428050158 847216795 651569785 312728971 618229375 812125894 224667965 28995033 806580937 522948408 949918218 926048189 640134119 88682299 421116280 375899050 328232675 884679687 173743027 863053112 964117993 253783254 985061411 967550692 293265919 151704509 993923277 979204427 676633453 416821451 479971991 958203965 70721311 710765359 333495425 331085986 118387499 657579073 134476841 99292820 677403786 251839019 63272649 42411524 973610625 890887513 868043840 74408720 113181972 365577471 998555699 487290916 483132687 549229123 727295527 723985554 622878060 420475451 365029104 80239148 954736216 932381465 391982499 180782083 884307667 715171964 101446972 944333321 70288267 127423683 477978590 942526585 193073608 860678743 290139444 126943236 580455128 428537478 194764182 716421361 97761883 726276354 843595287 336301755 124449822 581873811 184601468 220248343 309746007 658509290 434588078 245734509 377076403 210219910 103002956 604952316 727678532 578227925 680487276 267609427 723608338 996730462 417846566 838457430 931637933 649679046 517548558 693706001 91702800 539669541 494709690 835669522 682470672 361211759 151254349 538128170 757503354 608949570 985036766 429940601 507012123 869687689 926378165 533291825 455740105 611834190 903952539 778539302 977487952 2415563 345504413 446138735 928991461 246232031 735166815 306201735 637041052 719595355 617609088 439961733 230692637 872721252 168432593 624477775 266940180 604220527 68709294 424101704 593706867 617902739 51294387 846326981 271245381 635633190 795081355 825702206 505676392 537861066 873733920 557664726 49669777 939765419 870180575 786902973 10484632 248996422 837551668 321246486 194890641 269559619 257315244 319054914 875107853 658015400 148650439 916732674 302572693 781407956 13474225 582254707 958670365 570985818 299273210 594020928 41723774 435670582 180601265 776766898 478527645 351277781 59206147 679424897 358643190 330900425 436443446 82458510 299868699 611594770 36874539 351895998 888190811 105655370 793603656 443167859 5927826 815675031 744697787 184440394 284338867 295140684 125430198 718407959 513884090 233095915 228157496 789493763 186959135 33986272 25793254 624514873 611717709 856310777 404944249 225147667 396364611 601904383 364445519 25553991 239150351 424209542 754217256 716057216 323340785 999198618 597462807 112351774 446411275 613165810 602447101 874955466 855340112 693403356 710750414 641392188 576833656 368695378 433367272 151360150 425999948 792408901 771338487 119526643 250112458 10364640 623565420 983157365 891235143 829041701 5359440 329299877 517654541 629867860 306080669 922278177 34066422 115706311 197630473 404363171 431060290 511045513 693670949 577976451 723174825 796431811 760280903 148886558 979331151 299081003 919712037 429710359 736444498 756978261 370151087 116165376 695795447 690203779 865804694 991849405 920102460 525797827 635183361 641692015 999877768 901665423 786633035 794920578 979601007 344504646 785515827 990993302 772931369 224514806 678157756 651413923 826693592 511000995 951398572 932046033 152101420 281785356 42023842 850541475 285624257 179071604 107906880 497231362 801989894 411893482 748655121 765905225 876065264 898934132 104697747 100491660 805893680 349325492 567049102 940523131 825200729 32151450 630968074 673302062 10007661 718173090 97662279 316965454 187905108 289842316 400775184 942601654 15619247 421067351 430562315 45265791 55581459 629759889 342747281 670739161 898276760 969871682 406765201 155855536 86505534 572054396 59172182 138539579 927468838 796142381 205759730 822572772 90257629 912624613 765934527 722324403 459761197 227966654 389383073 99807559 640078641 341167955 321529703 240446859 145744912 714601694 503853447 518845437 444583851 809081422 859236114 888706313 974541411 651714018 923281407 973102947 440353394 633706092 600224371 522869741 721663502 360846939 894605777 491191054 929167037 42808730 133547284 426604409 163805722 26848098 434654224 542278622 469351120 902789949 948592289 72635550 704037940 347272599 384950363 259919536 33771145 653405456 221344245 454908651 406086652 338696660 396010803 264799302 337269596 550131774 303075065 510367504 505414554 383331842 63027848 871672427 623118699 468691160 886702668 44067741 805740286 23862256 306537454 863009651 624194680 54270592 470300731 895294077 940225413 162790134 806956973 935879230 533986270 37622138 304221565 725392915 354667389 925640110 470858895 650912336 962942365 183246524 884083572 637352869 870050551 55253036 856936318 287065495 358799348 145813567 582178437 88068679 252872629 220352280 906686144 436096143 781870319 671908328 424256052 777639847 57530476 759731737 768505279 748180404 271196925 63641730 306188324 403496833 51377922 325773884 66236257 749819882 792383131 680951834 176071256 822304406 871791969 296394833 669810308 291069244 933355440 840572590 696125180 217477886 451309267 927080764 494741522 187966619 189942830 414867796 20214466 813645135 463235710 851194323 245348076 435059338 485623795 589503092 332294697 451097710 411045378 242379327 832891853 912328311 731980464 506022143 185949285 552846748 890750563 394410456 313246576 360790827 487421020 366620811 441697775 87883355 928579972 831282155 87883352 556391462 256251502 754737434 497351895 59807490 77438920 767118655 12392387 934545292 586726947 22348638 928598927 375715135 86883144 529750518 471252808 314843480 857620329 358710238 971504933 877933749 242101797 133908106 423726025 626572095 671747544 717322330 609768849 62139760 809423876 467508151 180312929 630563094 950029920 291715396 295032020 324364113 529379452 744496906 537283006 498284688 387846035 255992025 357207226 223318875 947466306 78191897 770534939 776741378 171614183 230288999 817676542 843465695 363050527 441776308 78526313 860761585 802040272 452032463 414224803 212255895 171637767 538615066 382998820 953149310 360414027 119523388 732792862 228141445 91677662 665028010 525979804 485780457 624001156 613968774 384852490 762930873 381196257 994508918 58073230 178398026 186891427 471552388 47560957 781442135 380303938 592734206 695233793 563022868 542238128 666839024 318684715 877509385 998822215 784399924 512110791 487992909 102682940 857879416 91670933 436411591 255982318 690483516 120214504 913815659 630427648 666352609 567852236 158014285 553644607 925724928 742858668 586161558 272285929 247173889 239753591 693123741 934267251 896432523 415955238 988862671 244131913 57387656 910017233 554712291 679562784 249425352 61548049 815453411 514422797 122788707 801180156 94573288 873602214 757508655 386926022 948643718 114569313 819644456 767222226 115744059 177666704 672050858 49211344 706569129 459591165 481351489 506087608 301408423 809693698 451691701 289772667 358936917 108246786 837711205 55717959 870958934 849456767 798312712 974852274 119247779 787576585 905419072 109672106 105157631 549288681 979092896 813128543 23961568 578031201 113503086 782853155 581078540 11921262 349085394 36699223 333272858 26667237 599700443 316804272 77883018 184643481 881904196 348063554 100027512 35228310 728446240 471174507 96141860 688306507 940589553 98363044 834016442 433213542 632916958 586364630 682993957 237428250 138228844 471327221 174506087 404808910 91254588 346443478 619505249 174810788 540245687 411589189 194360904 995897897 605249266 813756542 374463499 826384669 969514780 427315756 307672215 914496265 833652461 763546206 449366266 347279590 24381507 221805323 714059562 148849693 237271863 677944572 663163273 53610067 628104151 573713163 60941152 861685057 186940483 71795124 534886422 606978871 455268390 876067758 981279603 383057473 21276571 235721505 666859898 408882840 97819599 775506261 824589409 429020917 87725730 37269015 881486329 686434252 872443390 410811497 443882614 122772732 979613397 893817855 616663259 63229080 56201148 419944810 84857772 694993845 542199730 789667553 312185941 119722884 668209947 488535987 850366247 659466106 22071039 867790725 717005708 38306976 243141175 53056341 604437644 277173338 208846720 961002785 237869854 395734291 737011178 967505377 242758813 326390058 543020821 443114990 111464740 322928932 292302351 421976832 494126922 590574970 952676781 798019455 741953514 35396123 998253756 468126859 775197821 223804849 926295623 697861566 273067314 640890523 866427321 190041328 729396111 98392228 911364661 298867912 164183694 151762471 126580863 60452771 430061873 918942241 517745557 394467436 27468288 508824059 662347932 812934504 988820354 790764082 900360304 862847010 481309739 109482629 801426542 662410354 133597508 8767416 312091715 300496353 103631102 817643881 84596949 743031096 76512315 789747956 820648164 211547751 662150403 768558198 203649801 473902012 175601525 42438222 270556345 560612340 772051122 729240934 461287717 75595766 540339244 723741091 787320324 154160302 31993164 189578294 291186776 260153581 677972623 901852015 526727343 998553470 681971979 46461468 905171144 374219930 508503722 492729576 587680226 188764772 11988267 972285021 600121314 922478427 282520697 904024276 185318059 803158655 230533231 70727955 996647586 525589134 376541534 832558190 419450736 976073760 861963925 439876519 312132937 534925116 197384143 23666869 701484950 704896401 500330697 9249027 344699897 595544041 768716155 981998662 68568630 122819753 851980060 832642511 115905890 200881116 305102768 637874565 237082440 852659985 259849215 40829826 85960481 333355182 306750660 23281640 450690863 74657855 619808210 818037501 135917046 944068495 151623036 35022682 113444720 3649406 983979907 125476094 466502528 543186263 890052372 703441106 146187705 425880885 525226210 312282636 74175145 638876255 214270901 770710098 231140226 989206831 119186667 959364365 34334780 308155022 556062103 740145829 273086070 748861352 404842270 721870799 735149916 125172439 559413739 950279439 143802798 1137185 545592533 14172686 906234987 123578109 692468281 632962682 472321208 17364255 350164660 271217712 196122413 623089122 465143717 475597674 162193039 30856695 790900473 710902124 928988334 148610489 938966760 871358801 254379440 677247003 517996686 631076707 987791516 723171678 823244315 76800294 508597308 326584282 480247919 160729174 312339411 415769902 829591240 417309349 913686210 829101580 202859622 343591573 342338677 621391379 738843675 126161946 875985724 691182898 129984351 992999389 809639428 95571489 404727317 994816988 830324312 31288592 386365165 611078940 61070389 620328633 126335885 574197418 743721233 254165755 355406152 479849627 209969417 617875840 516731254 624248344 788095932 438335094 766519301 848798162 225355620 278604026 556586560 116678135 931631183 126487530 195414800 698763598 442332438 358139364 882360753 528173062 50617966 73738409 690016094 9966929 301268148 884684464 808380490 514794312 543061353 220924052 777256272 87681244 333359533 932476666 503623240 324537021 86375539 989108535 964436511 539580132 238074668 209520119 346777107 431913842 327108140 726763298 50574979 52380298 240150076 966012598 644777941 390816261 19090903 960661077 804577935 775014828 768478015 711586879 933094701 757178770 16228546 927455258 397793442 264241509 890494125 522381183 540853955 216336681 730073938 857966249 583015633 130557152 925250049 864082777 410782108 600331774 291259942 273785741 210681812 375648164 684427614 454045949 354540028 391032889 403273824 163748158 317791002 131716768 472358128 694414920 381892771 19208855 947429261 221539757 965475630 746183061 512021442 110674425 452494500 997125580 282939619 72284265 843879513 79287720 111117417 698134452 902236426 988587090 949353954 302368051 891702135 595785150 847733249 957160175 640969833 533480350 256493578 358854768 581259390 674306136 470148838 791712293 915697125 609471862 631707407 863592245 339460721 927067566 89541257 744215486 872373676 246483124 765665212 297808680 413431322 812491383 484841810 248119447 846865979 52543043 725104994 447048645 184674072 692581885 998734196 184230109 219936708 370017622 700503715 270632537 722679539 207236741 816490799 724557996 538405114 277822486 596126106 571966431 282286284 544336046 884412974 741886528 541370043 222377684 901885034 530731931 27836572 404424653 182383742 868786818 425890206 447115186 630281669 464964171 934427536 285050993 309336445 827945724 672647403 918800225 539038860 620838518 557117240 569168754 26304750 121251395 391991837 905963309 542496080 484733656 848298631 114293401 67253055 625288925 667063457 780746693 816262012 179823637 301710212 985254734 715039847 263424987 13198826 963461334 190222911 565864207 164369482 808327815 512523289 399490619 134584948 426824792 830279931 569817452 708208834 667428026 235285532 296029756 474149970 631338304 940121159 221378154 588629993 341458423 829437904 364014546 709363607 491481544 602606757 510043842 620826185 719284641 262354237 141510182 854200051 699650131 436480822 593047924 107863850 996927823 806339257 875347089 425634652 39128859 858265521 899403971 675954252 940325637 621579954 526433162 909371943 975079239 495038646 78030406 686422246 731900151 389916970 568876037 623074142 477730492 274290249 267617944 437625200 416934860 641708045 842585307 285481398 998252531 44443456 318836594 47526961 731386328 398816873 360587030 634642668 789853728 294493903 76096583 327698277 31706022 240005018 739885483 983576961 578872162 392201537 1522286 271415658 949132062 793916756 400076732 202217417 854011185 73075085 996352197 270406676 938632277 73577968 701971120 152138470 81527532 995283705 1352422 279569829 977064270 414105445 467801577 940868525 722481974 948827277 532972621 550385675 52522426 101588322 975608924 877283866 497898105 277606249 510022397 972889898 355837579 289853442 37101893 943070088 148585546 809510990 92350819 396285765 524278388 977223659 756132725 105019374 146585574 412435672 354360766 869822974 269610163 479305296 816193656 630716592 548569374 406156865 415015410 374118206 569830477 738485605 226449157 738197140 83165140 243419070 496174219 908394036 145901570 813722496 709895802 825191496 631667708 147636554 960977325 758173255 26842784 785574225 25238370 543853247 224691749 550162981 223264319 361579045 743944712 88743747 95815954 94801655 961649244 517911123 120360771 805215577 753812814 822162150 429456839 360848857 784691304 390594095 995471179 538478101 640270304 249331891 90018318 212742022 437448329 62356811 880305638 566975358 413599021 473776090 188042406 11882108 258198886 812170592 158029696 266783303 515842209 974485036 512076261 717746792 661123143 48612740 427507782 612703441 78778838 881879789 308531347 539832721 949761865 991450546 983185179 755551161 306808058 241476237 380736909 803005095 624880621 782122677 670166221 122936903 709645321 150505150 871368225 638791035 707658807 132344733 55100257 758164091 282659923 904447205 677665142 178526567 87571049 897802616 761601448 541897971 846531586 391013230 15250114 812730928 609385908 401443947 16528786 716599931 305262400 969467918 619324364 229516803 531132677 337783534 141581425 677897041 580008279 672415982 8527181 974600722 926670085 223854375 751167295 71024340 145873499 6182864 969140660 819507692 979846015 282049040 746939739 611507624 432102948 826747765 536692399 269621408 316221460 635812141 753071198 757284296 12684641 439666762 6404309 430745157 465449971 397016498 754713955 780576612 492818915 137027321 51298150 285282332 758511170 791555615 872482953 633952101 296104154 871344227 813221078 568536146 920475438 692601729 631346830 557920895 231947653 633284362 843387212 808332975 522195440 557235673 135138273 27740257 697152456 560416884 774171960 622647224 442260233 35577323 348494631 886578017 491528617 960227163 335888114 962686004 271540851 235884433 768168494 98194223 466534075 496146673 260957625 397037014 694549813 402803289 259777204 672363708 307976527 342552008 121754849 553932956 410239413 631561073 646705953 995745802 884769610 514975198 322105038 634248445 131609447 518756201 481764878 851124970 612105690 824617030 858128109 20996304 704143203 838267629 101510757 659860471 350158456 993343671 790416919 708468271 311080627 326638228 62297051 202711366 746587080 946138984 599879530 728607488 549525298 205207051 162162680 197648922 691782548 451980956 103509920 778857055 887411852 162181595 361980987 791484906 370452671 210825186 676681915 908740 493158607 230948345 114257420 876667310 416761497 999235177 211894434 545558282 95346700 189637092 614724702 857883032 664203472 661907741 995885507 699931286 36694127 573786477 237755532 165562878 218862221 865483119 19590231 280473899 189527634 362210787 547506104 378963160 98346021 380933223 380138784 656714705 175287506 295249360 592246314 858853338 244993088 55857524 908821802 427229152 652601689 122081322 894562703 537007696 540125257 595838505 507414654 467352217 257067924 533207204 516939164 343790593 47927207 658737729 456729190 257728339 528846096 819190746 188056684 425024885 785206598 640327128 796107014 702443508 565417820 973541031 8924847 58169036 386466964 791937188 459480659 796358962 625706654 394318620 595421780 137771572 566172314 236457936 848469290 352503147 736669566 160245478 452299238 380982714 307619121 966521511 354875809 711984925 571384282 251569891 300017034 391308315 188499497 116083599 37603260 615347812 6116804 725937068 586504886 97422568 187829817 464615452 270385849 212915704 145293933 984699665 824798591 560781861 111052340 880461462 77835052 259745741 232607474 340017369 271131337 230875948 867212775 190623749 269875437 852850105 736950458 5920592 538960840 752123546 285222533 379499727 538364306 4641724 560873549 191815294 809735283 846581235 941041248 278788364 93709874 941289344 640283376 360010486 76861200 565616201 652953412 346585143 186783569 43772688 153140611 352546534 868264664 302915260 593866986 515002614 976436046 733723951 203708650 132687876 28914094 224389818 678524090 844725418 364649324 527084605 980930749 328050970 414122795 840960008 309972988 697117030 933988495 86084848 708394266 931468343 736157882 463391854 666596016 665277937 463824001 9747565 732236896 513838410 22628232 705013339 513513283 698846331 616055171 864395720 469732451 679301046 605950194 16573626 109421424 994161080 654129390 322893998 479894384 964735974 359141184 978607652 667117162 515956388 366450569 321723952 207419543 849534482 602687181 198371343 700541345 618330036 466179280 52635336 793453724 959446525 440173450 231653170 585407510 506672943 864929516 852501834 564115450 770583982 702438009 188923434 308926391 427846704 734351034 144638942 961217041 143099155 856092242 783582888 485929116 692823013 397818505 132826364 644450363 880674276 253307194 180722132 853130467 77575220 532577019 276237893 792525160 354182922 601136951 6811200 986393922 689276848 225247681 807988137 797420133 603901235 432519918 551271056 534300134 642227586 969867280 749324302 601763393 941037564 656696422 593197493 911157516 275759608 265646121 962022895 213823454 629253333 590869876 888967928 153328663 686963338 548081589 441612520 274170871 416164414 11432253 427554262 575044821 599266069 370694399 658177925 931897032 334358613 398297254 468450422 673716135 896991697 595784471 382528637 764377910 597092862 868601342 776248680 57707706 498688948 227662488 389206992 522199958 202962540 156331256 866291150 2147178 636112980 267392135 935457337 560885937 146427344 653199694 122682573 681435714 651847048 262530156 154785553 147619424 683114392 137384340 873320686 201270026 560828904 886770336 180086558 692488203 945112413 694170188 777898056 440421046 340986845 391349821 818142238 497179101 300768487 842636090 149705885 526559124 821865016 712671299 264725661 117636792 414320071 9979422 603091508 858652257 776021152 167842122 789708814 727372073 564194586 722980389 362256211 316808525 5493517 956222454 261070750 783427818 474162977 292199683 784053293 797274878 520952238 274179066 907467254 642349660 463105182 134206124 643894673 173797398 903576922 283026420 509801233 387998020 697245103 934708692 417017239 260118469 236507585 662779287 20265939 855519431 190106630 147723408 409143154 823079477 764206540 866238955 104919345 812262652 3919113 238294953 871104873 227229360 317805203 158949044 819822101 164982178 350867337 859791747 170390526 64098491 147762897 75184278 542198927 713001609 304842213 589706764 885812144 953939321 656423993 675160616 113189395 291419984 581621309 680801836 668141684 476685772 620691255 261041788 149869828 616155272 868773756 933784987 518371542 958758157 625968410 76227589 126878274 456724942 96204025 666057938 151941334 282508697 163066064 671677559 41902248 735435297 32815157 379988916 259892796 824833042 602581773 982362612 55034800 67935507 742738965 182324318 21336160 221744374 77528797 671088047 618951921 951565048 865960264 699729504 48811227 823530566 30228204 948101122 192299710 476969420 93069273 329908279 638087768 834944822 572939629 111992083 265031288 252438320 284975489 259100244 860464288 120242371 114797047 882630726 905181314 28381060 506012337 640998577 448187276 231690026 31283639 244176455 960123987 377971477 461446261 508047789 766848565 155506800 716247892 587324989 787959556 851147681 494958877 266236496 475981145 351240148 840427434 645883457 328813015 927540174 926974277 749892623 759032309 475732926 49782763 869090273 370889142 167950099 595027831 121871743 429308403 948427808 607812192 731017644 130717460 948681681 893073323 915850291 41986430 483677455 893932130 872734397 973308834 448596071 956147457 255998603 32917924 122537669 446463490 241852736 175152341 481515029 507056805 770786411 276109258 167107577 79046895 55632360 296472195 312487461 960114809 659678467 955955262 681176904 564646876 321787493 404894594 276964688 691986269 820621694 366071420 841927121 993657342 646287062 596223184 73778614 932004019 713320636 55424701 626084908 519436982 686566528 591503440 17304647 238751140 635401075 143782580 881570182 832550653 81945154 216266508 830237731 458173262 789920730 150776418 772941726 953500046 103993335 13307571 684868973 972961858 267989214 263017790 771914483 506179111 898273157 823843626 458366907 659808022 865733354 364415636 704805562 829365234 860205994 264805813 421188849 789404411 5989905 270435797 552501325 846325879 681085217 93383957 31598875 584653420 647455778 890980205 227700236 862619185 79980935 937618586 236055154 142866977 113992827 532770055 913571215 265547356 843161107 793438064 671595038 831263876 931505510 50754389 198865613 703179311 132367473 459972841 154934303 807839706 307999884 723382900 672223235 460166839 909907151 921086769 639572508 141416657 622325919 17233306 322607661 459119758 948631456 786395980 775413116 985759241 18257950 205690694 684213727 621440387 920046390 476358545 242069676 927735681 84393323 476552067 879285916 313571855 741175764 796184003 105708520 813483709 90815829 963776660 708672083 162080463 667840192 844390057 152546538 993418206 589151608 547354119 820907739 492702348 595613339 101613182 312918734 4817781 372938479 734772908 870602897 818341158 154581892 226178180 663878604 767167051 80230929 118942293 825778729 470328698 353835493 298046077 119359138 510285798 919837858 387055124 254359578 691952104 786194070 336381578 893708867 590203519 170923149 393810851 480182705 225871017 201200786 658507804 47326508 437310987 534307913 493656917 435157368 782793383 902896021 874103817 660005382 79027321 189960403 756703926 390249321 242965204 630999058 534036103 234533505 720502501 387287376 119328960 417883217 335628330 457568928 421715939 290647046 245350020 73331159 852929247 100025636 317142418 562361775 26327489 892723271 781566341 292311271 480358664 177168281 726026520 774983493 693058561 894239696 649124077 762497809 56550320 651002408 221913962 359350111 826402902 712358916 764035299 162735020 644638653 768671528 260172663 634504413 158079142 858782135 55863092 356724737 715017948 398093913 613926024 928861582 713394592 729946764 137946428 522451740 193410363 713276525 722273763 274095618 51633027 802418559 778494608 630111282 177150432 533344842 656192579 927509279 190614849 873201317 25261958 585856679 44347496 587605298 414310068 486373595 702077644 81774184 450132910 554774311 249653241 202374101 159665196 759237412 708338558 269680505 600504681 883291263 57625161 232073670 616876583 248518038 319397248 658319411 873496280 975369117 880159837 586605284 523915088 2704373 71275405 637810681 936474043 832837207 584856281 607424600 12333735 710421941 369695219 685037579 77044095 740036183 809932263 459222698 713371370 812502703 87008579 600043872 247692484 62442892 82875805 594410586 959198827 916454771 346805537 503185790 875326508 101172346 845927688 789083638 158622951 795062939 374357118 660081731 832564492 910264395 63143897 256577694 931866358 268118467 412724044 706578752 571209099 317248391 600257060 35344222 198062637 321773432 199020520 452778059 582002642 731272522 237046590 355828309 241914210 101175957 141147393 766287143 781849860 888894649 758948133 774792172 233040728 938390856 417105185 718281271 551063304 398709103 681429082 134563592 842892853 188796959 806786526 501396177 15419072 472155089 977878274 220704375 418196452 487885524 6704616 538394716 447177213 486332246 88677183 787219223 421935466 322813460 856055367 578687163 577711222 634074612 100847054 658324406 612722406 487059729 134944878 589662912 450677199 636281152 512995707 319018471 198897799 794744122 806871156 187419097 716213886 69608175 458233256 903721035 792251433 207149556 742875621 817372791 406423241 97525440 882145337 399400359 264041981 3313629 537413979 330462641 981724711 394065565 522643227 1354705 726476649 868397399 228949842 847966606 14593318 858238535 338410257 680864206 910638924 159400780 990304941 572355047 983476719 846469568 332195799 922460455 940860545 418989274 541902871 753214286 547465340 410177829 484037926 531055271 992433578 278439365 113724120 74623589 103445999 831113009 808713840 252209270 3823492 186021 757409660 280311822 114784791 356563226 833088728 689418473 245497559 143150100 79842731 372253746 751772521 794878619 976458707 627579619 606946059 209534234 973599672 581982343 523346261 49807489 6801815 534984616 48174288 425893773 474592611 17375433 540390581 43829908 698978531 420256710 143933061 379559853 955899435 994238645 265706643 968978383 920336493 614371897 569142371 378971191 531368420 56500107 593916344 711040735 382747988 215967500 154220936 499537278 982820108 218175379 12884498 963314039 558823030 426261519 545114220 516186572 59466332 968984526 512202224 950474578 218436292 516994961 298135658 393661978 783924698 897800499 532116560 819348988 486697924 836960613 650969161 222994478 765831948 440600565 166182766 650549736 696250671 942081569 466186865 805022955 250768682 737346574 130419512 993841521 762305224 85514827 210498943 717937097 851562279 343351163 161572128 987339565 243196358 841084940 648885318 3022059 120890074 961012559 750477364 475949147 492693627 820068144 954661499 624361172 946181015 649599149 469545328 634850278 101372212 384285964 48431475 397915194 116350853 362382819 648905269 408472629 111437210 24831232 746538404 872496833 230391032 225016448 682762591 947157892 334331851 771915539 965519710 913601141 947394957 254101529 643339292 428969320 160305230 501640437 924144643 366956623 162086804 801295506 957547020 968450432 375270487 3502322 87278307 139533562 755374520 692488689 837206884 935630720 720332851 672060330 308753609 246423304 475411464 701849785 648700882 553038756 843119720 271128151 670937765 360818152 375056076 519701017 725133273 700960031 186260257 69517775 211235207 682364382 669045097 827337901 240483506 70725913 788579111 838649924 183325099 535792873 677156425 326186351 934541338 906406161 930597773 774470978 20904499 32270596 113068267 497688491 408431782 434026842 271743671 641838488 41222609 230734627 319858711 400749322 3215006 155556600 315670846 453786026 152542558 6131713 805860591 769763329 307506685 154303496 268420829 617596490 169263443 263480792 94174564 120929735 181751471 85945895 816032042 334548841 212238969 94736501 299125022 886126067 783211209 406967520 225498143 152062971 598958767 366441123 764162367 258778552 505701105 219956498 202569057 306795555 74291991 634740005 16543100 47074584 872299051 115463757 465430853 12260957 398862085 259374280 896346622 821502361 54026680 351673848 613867910 557057077 964073358 143589690 463340110 854776173 334854142 470840996 833222300 780729791 978996122 456751918 281981012 892546852 485357696 427616578 467680531 835629687 518900683 280179255 164336691 937191557 836589729 709019691 853754109 145333506 402072204 171576676 363134963 914392636 243880421 716351803 979326225 362316241 979162291 73285175 65227839 598065571 877372471 557142281 541283353 650098134 225808126 73381816 670732449 255605669 788205236 204246721 254222153 34987633 178172816 132734144 767183641 108742831 966726947 272442816 51126908 328757687 397193684 991268716 74011457 451809640 721405904 820463350 725717050 934449636 83461357 541770386 225425642 814414164 700337816 96232509 930335111 39477860 876432083 47662966 677687579 921103674 475043212 105762016 2855918 686468369 318805560 123102668 533559964 660539760 574574019 376510795 94822486 697463602 696370853 457950369 342987902 98006474 611747001 220974342 719726634 210681042 655975398 673913430 885049849 692319728 743039092 799494663 914571334 468050916 397139131 337709528 402184899 285973845 806233548 71487365 964955460 403809964 577171864 335383632 411347711 33756923 203191771 203840235 729853192 8935348 668014698 100696927 79686548 545220652 763571137 826870684 586415211 830838265 385920331 810011216 524757204 844384180 598147310 908563526 699889316 593680992 73177360 349355021 945924344 448226504 500900422 179708621 505907893 338357360 493561784 828582051 713852213 938658756 718239239 359461719 388901589 527872747 623487021 962519957 167367365 5767408 674187302 955167444 370579725 541238218 367527862 467181023 206905824 914557266 813583568 72617746 306967396 122909632 432387570 398216737 392286744 171462734 513819504 645299950 737073603 533939153 243919898 167694144 172399028 67970058 98549430 872535964 926754487 67343012 428084698 385772091 612529084 316082120 424180348 750180598 953108115 805605960 692078228 896957923 666493655 573964977 498112374 81767464 247792468 681044814 819164202 4599405 220994905 77933419 457156641 295233958 431088056 995559047 714104403 137528094 605611008 475725908 879414202 878014531 313366939 688955532 169024697 47443269 736487248 794286337 291116954 923611854 185388754 723606085 197678940 406633685 919323591 212541056 340649361 46404614 300382919 825131380 35395119 406316500 625850080 795492164 287154838 696887266 27027255 476548586 662922308 195369011 441806410 743204473 38841947 384843953 333435914 216698447 779580658 814038280 152713468 789588200 789277349 42123917 25249051 565004183 499715881 993154876 715608164 195582133 789318936 82345937 427912540 565566630 267514546 695051065 38085045 466126188 142747023 124678359 427597165 734181702 370536591 721366304 484948297 248737427 820897853 128696899 564940799 301933635 11962624 153685149 99327587 530008652 36663600 629014080 759709299 394389196 630329896 160836308 477890781 728098016 14396970 705761653 636315429 869229219 602733714 48432727 345157761 195910698 232026041 625807830 728910776 220311479 775850208 908166290 474011410 901858804 624821592 983948044 43904684 86796489 140088098 181109544 796692589 235809906 561883298 618238137 411675210 754736817 166820390 255534353 39586047 517203796 73658576 249009628 291124866 301913393 346150818 613067094 242559403 136946873 986335956 841776918 412659629 338693856 247898687 803755473 35949405 798798871 865853039 464916400 662921356 979764308 34015691 875873381 179224541 400230676 891899555 24117771 50792555 773560285 238916910 475217134 377357474 174418101 750194923 813284284 120910229 766013831 594926495 804946741 152825943 339807196 826587896 650119424 468910196 414708478 950034530 399557631 349714594 969272643 671532213 914825309 64300605 161612082 375677631 732576561 46962583 682480525 917527494 639355886 979652962 972999827 425482572 686850076 815491051 65548872 367476816 350301439 462894636 102730666 683294711 283704660 942916240 222300730 775825342 507417872 269855582 645964614 860556202 4025730 117946470 912964337 349953982 156504286 953441780 611011122 367384811 840974240 876710954 827823911 14200289 668027019 805541620 808448706 221791803 852582253 959280138 365116982 174543551 636693279 41227896 678803779 620445535 877924027 308299112 391988370 965599789 424732644 565846964 274053562 168673329 447686549 972723902 589498965 427677542 571326526 484518858 185113217 147468707 84031771 960888155 115246910 299118389 865573452 254436882 666557784 554626506 724860356 232835093 260744564 698872790 620724342 381999720 535838864 961780888 359690056 788951283 440797207 293235886 567678458 619796950 130592608 216701962 280868114 590862581 268197939 481691745 909634982 968807623 261794010 447837128 669551874 533087049 887875430 735896922 286720659 603731976 933446582 673355394 356310723 853414884 618878112 271467331 387808832 219223174 362036745 894249101 286316082 504581915 171611012 888523077 617074507 934274775 992011411 774642790 662461390 288947044 320885053 989272137 276589246 768206030 68924271 432973034 426180114 15008214 146253879 685904878 631679040 453360191 644586556 844596193 495320585 980539983 107672749 939639902 993629490 536560773 581230015 39256372 993534228 26477759 957720182 450820430 932622176 939037545 317156885 620424003 3816698 582644159 219459105 52621231 29423527 501029006 738266633 637084825 821960211 816668606 118286032 889496752 518053203 84494255 162688702 672198540 318448599 19199824 998449190 309011656 984937877 91136317 859599842 102786510 758095561 818984435 744991585 531310647 797691342 906865519 800671129 69600027 290334999 287325197 222378625 5692233 238157403 596271192 70236587 279500829 153704682 909307863 984698706 404279738 565219235 849426284 524213217 220584360 7719869 29038143 989911097 833115029 655787701 476805398 789639094 567619124 626532329 100864625 712652227 468413661 4200826 179706004 9682149 622031525 555564392 981210052 443703456 97335318 885654919 858825821 369230288 910836128 861447927 341665650 186107374 322923086 829696987 874427221 599023136 183831343 522357079 594530376 882196669 932682246 409237675 473672035 731819118 750077536 933283433 964836238 465657065 215000798 548526976 815980776 191466483 471559335 746008170 782175904 816246122 1989301 243712107 913076428 545127325 647850355 240853995 742259667 719083983 860492784 762338799 770829925 733026073 144900741 124383380 345348665 466637431 573239058 476840305 852404846 103156442 58027200 924838241 740673866 429747709 81188311 675910423 722419324 621153731 109184500 101839315 498609538 243908584 388567189 178571503 543343866 817711963 631452886 854380885 425653822 575928234 29345981 206380063 978953292 410967583 61865972 808262707 347030418 36046951 251752955 754020637 16732475 209099077 565584447 252227850 754635919 332499934 128179370 966462354 148751869 395233835 598896837 350089281 82354404 534768307 85924512 620827103 416215483 988108169 873490953 641358186 562808363 579197911 973742328 513860735 43408711 578591417 590298446 115171282 948440084 67302642 676155440 964915145 926870210 575759667 307484687 897357726 218166245 179968863 527452240 828043097 16103866 742670833 799187289 776931851 471572561 137999676 604931279 995161408 543271956 177307412 479294290 851092756 226849846 684934321 559706656 291455518 40967498 89930900 571745594 592395355 55674680 450429522 678187630 161163223 683323932 214377148 277432983 420469775 490105063 998492655 15746698 862645288 483035832 382457703 718997119 851832241 544289425 540126650 233462833 297710789 207923685 163328018 671562839 590900508 508100001 583062300 27290628 538684167 723178249 321296966 118278984 672103002 532016463 929222298 900256984 600084194 834805464 856751869 838911204 436839258 381422491 277992466 492489271 333032832 54652240 424095684 810329297 593866438 979111593 385462972 968940527 813324072 188517893 33049946 672948064 193502052 154183233 549787772 593174346 545197457 463096 500585654 271335569 93723193 219937786 457746851 966329271 431671788 654999617 12874537 699378329 210769798 681164213 274199304 825035878 99349527 137560936 664629890 503610936 803222448 927682025 42127974 373805571 319853550 499880003 642523519 233344983 15495544 370678757 226529094 8325874 997105414 437974847 36353788 260900860 133280473 507459870 272875785 367587699 957866729 436444591 614509297 34061923 61365985 339840531 554316715 349731401 207534253 180352363 743400256 953000080 860969989 579017933 166828344 224733859 8910544 559023728 556197088 504377145 170684831 876017216 263352783 125354582 793140627 441657958 769872780 310594442 468057147 211636960 985709135 494180314 12541768 248531247 19585108 365203173 170139308 875509887 311545747 801673156 428992219 531513830 967265078 972350069 162527461 921964343 475512680 441193545 71452863 853074041 317851418 358007376 77860572 763311218 118213659 947931896 757583077 328405809 644452699 535009412 816302959 755787908 778991820 897418535 308048526 172593980 202220973 147374760 184848728 124606911 191025557 152775662 544496347 428059060 472336463 723295063 929877468 606797051 516890222 407250390 834820184 672241374 587850654 772773249 945937394 866524670 87094397 787505491 958319222 472542431 565285034 783995887 636700071 499609695 495363299 504740878 90781934 433524417 336449491 325310078 56067771 828135260 365859675 619586223 254751885 838192388 314496096 391473685 87687335 102944313 211278457 495149063 342237642 173013407 978599957 245426380 346681529 683347481 641768660 309069918 498465625 651994470 906038238 519718698 778251416 184754400 442438804 446961582 166007770 53164035 748905110 116494249 606865360 990532314 333652667 500711196 491984741 151108384 320795837 49030230 142127321 531461809 302118411 936379130 842005795 270659068 101592137 852682966 921495285 710161409 131325647 655826122 878021694 999508260 68148408 721080302 666921582 382916663 940819380 70263494 908917717 857820775 869106390 121690097 656067048 862092781 866993136 595869561 167434136 396933452 189866401 556047506 921929490 557910033 256775305 940514621 382714662 432971257 533821932 90236105 435712214 714068269 990993175 849614075 718544331 126315966 258807174 370473717 892489274 879847162 174820370 177091020 307685844 952859514 794620186 131790194 350046206 184166671 763548618 424519162 238458942 899036159 531838801 683318748 113597989 344199974 821691120 885705854 873902832 609501679 348775431 71368874 747903701 957670601 76896136 694468117 120406712 992724923 137225863 981705160 874498561 524918895 733554475 53972899 255664644 275654129 478801840 397052599 729449089 225723150 366490107 131994183 833395080 434358205 411195112 293318156 165325360 295068372 863754672 96330476 383456802 17529525 358410093 711347487 571971642 657432764 588559926 248847321 219819130 798180877 333699063 57723276 550335095 223209377 577859011 550565112 846927021 821420745 143370344 427735220 252788287 729425966 429848909 726627945 40966458 720142369 326263539 811096003 606629306 806561427 161668212 326011326 394095840 658710176 628106714 771626847 209085877 291549347 904469509 156750362 292348799 384244171 914638039 421950647 280527006 458504085 641923314 180565721 578086385 980250758 147368533 604512166 986296663 859656651 678937468 441894423 998649623 66155875 136574644 207363410 38283945 322136905 782877855 221282673 52470402 863659033 33549452 517795332 828157780 819928456 607238376 922942758 590122369 963130615 50318346 110741712 332853963 289150307 385406273 473022700 39887811 757306862 783950540 457234031 552370923 795295493 719866800 973769622 64835182 189758665 522727284 350088193 884108722 452463678 743163856 638457455 248664378 687394579 65088693 489691848 411183988 599953959 22222045 505839077 722313785 792061594 998944736 28728997 278662061 238756466 404237995 569529398 143002626 387812893 94038180 993697894 635711685 790997415 562566493 676586683 78295341 542586387 434182388 232211614 474845588 710557049 162262000 566417579 106819297 625182968 700097448 332717852 790885518 973109238 214527220 802958195 159223868 423873969 111201449 790855556 346804883 114736983 940434153 265958989 198361305 95418829 133369825 736761484 949564676 540027504 809540204 155223852 410322529 927550660 128892295 455752311 494009903 872401799 696400177 490830835 544325437 593347701 134700875 587979962 764476834 369249348 551005327 418280734 484970888 202437221 149365592 738179396 62265018 699344151 551648613 52779784 898060013 138052007 793094117 252444427 352360044 435332855 770445 291462545 29609485 160819431 748788217 938216780 944351299 944225880 657389546 21891867 476048305 415436189 992958947 922065833 777183336 313497726 209649052 526135919 348351229 212337467 46743951 687152319 44654271 186455981 228371421 736854240 143531054 958731441 215931337 236223388 480074080 254874857 478567905 673677715 44816287 67752244 723084618 204145381 769603781 241119399 335050517 497010054 433515667 215179749 201975788 944462904 798172971 261831168 62883692 359870194 716044514 717912637 835389286 443347665 264392836 479391042 624640710 210202132 568999990 690245652 698594154 815933390 782467626 392175969 744624904 86804422 739108608 316217451 400103991 49576391 683369648 404152893 191689450 870537172 204514153 140002501 617380902 451961515 646602608 381175052 922705004 729178739 956230350 836755945 437584223 553921165 398942200 636447083 787626325 808809373 288292738 410461270 786725832 262867537 193225612 754244695 953066699 643369167 752323 88930528 442401793 424307544 354267729 446005223 594468024 553448528 668089348 907744271 696793986 183272620 442632667 875397515 195941143 705816510 585131792 216487167 579436219 157743902 945133491 93943721 345431768 577032674 196212633 99070073 192306249 230465547 476742183 809407917 821831614 970532346 909026410 139887199 122583265 345597819 258247497 887033588 837443368 634582750 805816331 442530037 632007158 224326228 907088448 457987826 761752166 43969191 606795148 72751387 142391228 1930082 875068764 134010200 860201270 85565440 983112332 896520091 312395044 363720217 232996215 137680457 619732568 583006863 332223505 822532968 479778321 637845180 878235741 641320085 198970099 582483215 170777464 345243588 319076332 599233980 593594723 359182184 353769518 177930086 779600934 249432613 880359623 370586462 316413697 678338634 279872329 460125222 202990390 580126118 713884151 85391903 160841935 493348790 883264482 642815915 773160562 405554452 64157037 138081987 862751312 81249267 446263688 180993914 552969407 469377271 882181582 104798527 564035339 764250944 670826626 630531014 200049716 360024483 107679594 835086063 620324784 635433531 100867596 973158455 409210224 216929458 312548341 153901152 331193932 179584706 170471466 740117675 967425283 574850409 260399928 375915713 393264009 532969299 843936589 957860308 480528047 511904538 274344008 497571052 935990972 585612821 901702441 865407568 976353108 12073966 626270005 49476073 866166713 822462182 152899846 900700689 581233671 816900129 530245500 73086461 80775704 48497901 916974748 854281882 94367668 665042237 955098974 298159905 675177852 250197658 586827880 895829047 731040732 733591320 15893666 300085382 283860355 799548886 371703886 230207138 136640924 332968768 905889495 90178579 852331530 279211456 59027394 573650571 849978714 830399139 530554119 636718072 610446563 610848584 345248669 189259921 293082334 125311833 83214026 712903772 810823691 333332921 979552112 472547533 833062391 92444100 26339248 16313499 507070860 195215040 31526234 126052553 305913841 686520430 641802873 351382020 898506473 482584721 470824098 327428248 604523447 495274578 291122322 664458167 637441487 697546871 357451899 181930660 398242798 628637531 382184117 927648767 980849910 632362912 829818177 669152910 342847785 760981326 950015027 280774842 323626071 189221363 416304108 441397166 447116666 470551709 62623647 382954299 250436045 407923720 628787580 69858498 549181182 892557 408010812 996715881 44767171 350463194 604932435 347423778 713180367 263517930 847187582 60888334 243262109 644235781 635952374 39910581 710520467 358694738 561550376 531797312 477295483 894332796 351195830 929910644 536211871 266918578 89758474 972449754 81084182 811726642 886903535 522963550 6463505 892886795 419853167 374443038 653137877 897405811 55272485 532102493 398884343 52210699 997325897 855335844 544074550 595865107 233290222 272576479 324229471 127617853 507220220 408109916 305049676 388770581 701870011 897545779 553652636 963538566 756655324 629954534 485595115 435433022 940048114 508200360 624690973 253777766 648006207 757468497 468917162 483907787 595405289 123311210 247801030 789242263 688232976 876003265 395558019 538261647 319845368 436610486 272792097 932951737 486280892 536120615 837519354 976373767 268434195 765274270 135713493 706273234 548847015 901170852 414104106 262680277 322898811 298752923 800704711 168342365 900179401 924712761 401756035 489700175 199903252 319169425 755205319 862840548 716414487 691983633 425973814 31692450 87410241 243794314 770050977 969871942 472293613 519449426 857300568 281265685 965761472 800210615 322802006 680076977 777712101 344166247 567428557 98960338 618929622 726507711 353609467 985806124 998052773 704266460 822320588 207541274 747240450 622868186 659753177 296736809 668434860 540859605 175441118 509250840 948062735 334419063 45755876 720770025 115457658 287101653 113954752 963959505 531316211 977777993 832839424 413512200 117714966 584211892 827016001 783371939 473282424 630469621 245840686 143138373 618980306 208366080 453343988 585242524 970807494 400942513 664278362 321715215 681792887 738194856 502655095 21526759 501097848 313610880 473068817 509058895 503449643 673412083 45681762 607213655 277785167 371048919 823059864 140920680 468237837 668247701 167646771 899026563 263336309 716737190 57799488 257083638 721586951 173580964 474854817 142291162 853925903 291838347 158862075 957754571 99178073 675870444 743525455 49349181 350381748 655973676 42101951 601534810 481995315 715070899 707809860 496055398 342855464 713982753 715652972 380526972 551520594 284237026 700545003 739240929 719133565 416721991 113619799 987687702 116089814 459793040 152732822 199958234 198481160 37687001 858229366 371965677 272411296 8226318 412896015 619117932 879561093 941031440 621169975 620962677 480994346 75504751 555381358 612786748 905138559 157596513 767801349 240023718 662870261 799828941 569338154 389770608 837612353 692981569 602789657 531607772 477280630 876638780 620540046 798475109 777309465 962683324 839026729 127288424 509431363 66827106 969325983 889202547 339047886 486386162 774530519 138556853 813922704 778041361 100217004 21423395 805123942 625373328 227818489 920847232 840776685 553521024 687748776 774562437 226662914 635547519 640255006 653621124 235206632 282735533 663366711 157869385 876168342 638605096 634062977 158375349 619427086 124298249 171124700 968863066 325840674 361489371 518266889 757796681 968285955 103630758 478765301 437733166 374610013 42547609 485867629 723642548 250860434 561906466 426995182 522536305 195914723 476310964 635369074 161688272 704136323 794271546 276670017 172471498 375703563 501070492 806182430 311573780 946532357 441009847 16114530 792572210 586863324 115922970 250684804 353158457 619831523 971027776 179052035 592917162 802180374 804794201 120385112 539232128 697582709 351197635 580550031 699264843 829857036 207590604 404292038 105677773 406795310 339551485 931693858 301135279 657145177 951654738 772405000 869861875 900017155 339319282 252540246 16734163 524703918 472050849 129532907 177011887 445953801 894445352 632299642 131197603 252231746 224805899 941197738 549176156 981889378 882121014 980763962 30817637 632761339 258622094 807126818 386533813 720880786 444381553 415030373 844765508 582169090 222868718 874179045 780513839 426129489 273881104 769155754 27671874 525783876 586014608 126304608 427443065 632289061 586767805 236498812 393786510 520275570 795610544 378192509 717925532 42079067 401255573 386371034 533809356 595298674 793376214 69238333 879494875 721898993 534236999 241822664 640778476 639262067 101997688 594773256 900241538 572533780 658074835 397134254 922964557 604686302 209496000 495921562 580987736 856683025 459611603 922183252 679406957 118664436 801281241 694071476 773115343 712295590 730768439 524631654 191420704 258241293 204360084 216122450 255976032 401086337 38179893 13374559 587040059 68631680 959764644 576110125 458004058 667032879 197802237 758222740 522486329 486076848 71503183 158014010 175707299 437146048 683877617 3658391 111334222 270035594 804504864 498010900 34303009 406645811 768739242 704060926 125244420 766354989 444007426 300270718 136189452 233269788 412666850 183583990 700996404 483807452 153824035 373227322 305756671 27188498 591680812 780360611 968655263 637874924 207913384 968009548 372456872 645897217 446860763 183332808 526601578 526629212 789562500 124361129 662401707 697850103 645219350 808598110 406807219 757469747 797759817 598797632 425447558 526937283 976087390 271618292 1693381 201505129 987084085 614431114 990790954 447317549 99726952 689482427 457300771 659565252 614146670 450574474 495956368 131249296 45889 237430842 645476402 669103325 899934305 484887143 455390918 857798017 31570962 94919042 531356430 395926208 369690789 571360840 261987869 875660530 592613676 140792687 918055794 811550757 602047692 382062679 159611754 272818383 215758669 44820332 852731204 394244277 453516455 559018292 145334643 905088738 217181373 59916535 830585236 932277741 962924157 583250923 794758936 204010579 677042797 607687873 296082903 275145084 377416931 646381156 795140369 784582372 398777860 65460527 222083022 286949488 385768405 136301939 494180370 409792340 774865363 707212479 439331971 821062102 256010832 274537147 171786319 41910537 697050742 825993477 345488689 869050875 321957085 66337047 348032178 951263899 276918157 509639048 560367873 377364502 771182321 147211790 810204345 360789649 101833523 693446501 271882771 596987935 49060845 734974648 767722494 160091524 995007659 630840204 833385280 427685139 134301423 731782892 380070722 643631893 441568995 850287803 319932375 479977193 78878568 88266683 23309037 91220430 713015919 813615106 930651247 89642371 483030093 922010317 186119517 599752042 440291748 714984149 525988060 669454113 332085953 229011280 572470339 588912805 330093450 269059579 453114582 373051687 322749325 841151299 270137244 373983730 81477078 581432007 34636579 805328703 632826415 531545173 90372352 828872695 677162146 526126341 924720201 719942763 166595090 192649476 345769119 325030057 642200245 310936418 875313115 544582013 931507213 884907798 593657533 34292893 715553446 645781353 332923016 467351564 943972940 665665755 92582907 130854539 599749004 583670920 695325067 658216027 481726925 576401323 829071207 175194455 643834398 488635906 642442350 332898022 336310266 610430593 958454423 299267864 203143208 997226207 643200710 681835974 80833625 796482548 23894640 386307997 263048537 168815653 8300616 350777777 791804912 489997332 235481538 393777437 833614196 471415165 39811093 940353425 167387535 170619326 10364642 735427697 429288364 618876586 304691192 135021288 136454473 426253795 870295211 661157768 816650641 486865386 952013219 35390501 380918505 973199642 977389427 262905549 778982049 801991046 193010822 670231115 371317892 840451880 289132516 349673527 421491533 144910564 755021139 4974190 494082819 173003803 822669700 494275625 902442692 35731443 857585771 386661471 800143872 165061965 206944487 893590387 962486876 286022377 160367610 343443306 532312500 220374340 339034053 641906515 3131280 411226071 452373735 701064191 663046739 893203352 368282060 41692464 944886880 696153183 224513829 336299301 418607044 716337015 251226700 891897272 869210194 397463986 823368217 594309359 365262769 835983420 35513388 536208785 160815762 152772340 639071755 840725133 708279863 854345347 785021561 754462336 499890190 708825075 241588961 993965945 839106725 79941701 358819692 490199178 445925698 575800755 484613282 521035530 519036208 412525732 891896894 17302816 912202570 746999550 361594493 24318289 100829743 657564091 831448311 315389595 972509428 279633872 279344792 856517512 343589425 604724333 81482547 273354593 638588412 652108450 975572465 490743854 885383839 771168165 705898248 585047629 112745732 759777784 702083735 965562640 976024448 252745240 401790917 787679594 471414611 182560332 260986032 42954171 761798810 592341711 123545486 994121124 858831231 872215381 756738105 927448857 767215783 731741197 277992739 533262146 720014165 531462414 615095635 64179401 858682476 874779235 402878582 39638564 507717495 218384776 686415551 161586011 159748240 298347164 809470526 745622870 836831875 232103646 269696070 741452806 432502814 552990615 395957679 814248163 704316654 962959917 294920636 513126119 949054741 413773688 565871397 189612033 914487807 77874652 199029746 670187484 739124272 928682396 192256831 665191269 191430321 764347694 91423475 640275884 935341364 330212708 60762707 597386009 516751007 520060346 176525055 268713115 266068335 48249397 316829376 887580548 651468512 540061644 861339474 440889508 904987109 464502112 535639919 838616128 124649330 453177887 829888196 78139136 50838846 320693145 525881531 332168330 104351584 663844861 90374979 625694994 788284170 765261613 556895352 823315335 46448355 959330621 656444708 958989339 197456939 707441648 445626880 695177648 144426920 919301917 182693499 74598513 683688736 243107884 659519442 597001476 5910704 330437948 600134107 637197077 864769965 652755963 878697144 638604011 442560877 84323874 947628730 620091883 612280815 43033540 45232453 493410558 545637904 245300323 491781245 908963555 413320854 467909584 106073275 607990323 426402482 926645437 359803505 715295961 904762502 148637119 808205071 821471541 551753055 155136662 491263721 566508327 1644414 373510547 64657558 457115285 559153109 28334252 14662198 532016443 629800039 711051932 300003849 971748263 753912776 12547810 782524796 738792332 974096425 284187972 134698513 171730818 673721362 575889159 554456216 147199129 681991308 64312170 307221648 693069899 215189894 416891445 938096509 261869491 728637349 743129204 641572824 324346797 970253506 864264757 798265925 213581492 900406990 237611060 850874230 664189579 630396039 887807522 274264024 360365256 89524956 473209153 112824496 919566348 473571466 515878720 905653250 883411357 883935228 866437620 395973810 74750990 411215151 798212254 83100231 538473521 511135029 706077173 265964716 181115618 196001513 119985923 287617376 634728520 99572978 114812499 256186960 195062874 216196522 51806282 769242444 819620077 664127930 310371465 511171016 84727603 343989933 684136493 963102202 13024594 58529167 21756350 497642364 473829031 166264326 762480584 805533561 345900046 899390595 149481868 114875254 98454282 233053161 488613630 587927420 794239327 134652054 989826183 937620062 653030560 687039750 460871480 751067611 131208605 34724 794369363 824477274 850797818 344563735 895915635 189253308 127077395 61172035 588531814 766028212 442849277 825298680 480920214 195339541 402120557 514718196 205672631 558596170 798875454 284862601 967395626 428297280 298269649 812436097 190896318 316264468 558133723 3980468 562159089 564425996 114181548 443093806 56459723 42808353 178529161 400291823 771876598 466034862 900820970 641071463 651906443 503879628 124412133 877794809 250407969 803348315 850755829 759605952 779054649 794737248 509281510 693017860 172174409 492579968 601762704 412958345 897693773 608459467 130935595 489151407 706293074 463236205 494284876 21397388 748876942 709536060 875578487 93122208 643427378 681317688 575486867 554967064 901976137 269828715 12579697 284137200 701604286 600845015 324693851 917982758 733909325 728392779 15940728 916688837 49334822 931315253 528787498 968742897 513545921 312681522 102948411 215878523 296962211 97736199 63134595 518516921 276433088 496343692 675192560 665187227 304995895 683448743 78722134 459122054 656652925 53257770 965993667 269986066 889677548 195014806 947006871 144421234 620523204 545407954 814434126 388048009 132996651 802151208 46321286 377420131 8268323 831425074 849521967 150290624 950170440 270780381 159149718 479757336 404371314 512058833 918685220 873738555 212067457 9772150 834212311 755209904 31550491 412286130 960023321 290545013 48989363 591353860 654357056 103073503 333608409 969335107 345401103 264765143 291505698 394238105 647161805 582751007 809165178 386792356 941107957 771394724 595108512 111743243 224260173 16435726 351430155 154691154 969914083 652815022 430677715 46213152 757661221 133491767 342968542 548400177 924638591 207673012 826819775 728825077 722607859 378343396 767889960 104962941 856670425 983319374 280551246 5439936 162416764 405806050 497310965 650156307 81777984 352165130 162649496 492865377 182753740 665726480 121756376 697426807 321449174 99660091 47027802 889387918 226232792 112897106 656176971 935151663 760066180 470022745 589913468 548152703 374946287 269417262 325817228 860956560 969434131 446378992 976651782 172092589 471154205 826976313 176262837 46417660 540352430 923684058 178112115 644704577 67853917 433961495 954899026 491154969 778505065 15994960 921677955 326104262 745295161 295924540 11765589 109766198 963406765 791515952 326470685 180227659 696933455 925746945 55485948 189049634 802291836 678612509 354122685 228045833 252785115 391222650 301556540 990950296 881294839 198599726 833355058 208703799 565454688 642122638 221977962 939735997 633265283 447236838 317527339 819577587 229246724 34907213 235739019 727783823 959216801 381194161 39098085 639027323 500186714 311354253 760424923 402452317 903068814 100228970 210651431 188408452 718495290 551233061 213895469 145990516 137434095 386500523 823017698 670740319 180035337 452935363 123767179 650875371 234597757 625244690 728036418 150089563 492625822 164829493 201200962 73748099 295366639 922393494 995971389 971778004 457433112 370489161 109595325 642330700 679079321 476229156 939821153 174646702 29912032 926955140 120747618 582285842 488881850 352089754 643311325 508308511 277449580 9418723 7324038 563203406 191141865 187296932 659681114 963587778 414171084 584218757 260014688 222739846 690537774 830332741 141710688 174287427 297498797 356000230 901765871 664800125 317289385 234325180 268952484 454584189 700837328 579209656 211366372 570976616 893626448 643823100 321164193 449380644 90768046 697760047 55467360 951167613 368830326 981317756 370378366 206395559 807588249 188102903 904300450 501906695 228066761 854252681 497663996 494276353 281514591 93024209 964373674 792438630 955185377 122921347 435555030 558242510 14709131 469995883 561956749 650264985 609830247 321375442 801016258 379488440 24648401 209686976 390152868 696350720 970379355 626105669 565489784 711832499 514691772 203539916 423353806 486831869 389866968 684195669 525802367 864191344 180018934 75812371 426833282 580853541 568508618 743320305 726441934 710018332 640986743 342260973 260198096 569459762 546451985 242375497 327067056 525620582 663350045 958089880 396464419 663196455 795373422 167603389 547428081 24920672 739812289 244449301 752778644 793667316 457852119 808622211 900312428 491668085 829654109 893743146 711443692 479482954 624892555 456021351 522945125 475672273 853124735 952019940 577761306 241791641 233098556 115801593 78792624 874112184 98640091 733736614 328660614 34660746 535049141 343449483 156789746 202058264 444345275 911263823 758003373 129128780 967366149 809331153 33124942 808876409 32388377 742091580 584777295 440983651 837755889 265488098 42709827 698097418 229107554 666219835 205780252 981165739 403797630 665624838 867596323 208650018 996911195 497359830 177174223 950071201 501038965 939971960 427834879 251103109 967818365 632815722 543158291 126205987 70207046 777861589 852957630 837845823 581069455 258971166 813996391 313972745 19303012 759113563 251948327 73180339 161802059 248316056 464174940 834074450 512904063 426618998 84467018 835633530 870469519 377741808 475674661 383542425 430717164 318586063 955096942 390917154 581684292 482003313 720223495 651783997 178676196 394599642 37919370 305983770 769386055 638568139 512175767 448705190 665316106 82911883 673799605 32388586 965965424 723003605 305658732 67579956 269061483 406063074 243296025 962671670 829214577 16755059 910778941 769624327 185417999 118014743 996390321 864186396 359098128 36652017 401307520 212690965 802868125 323173644 437850724 367496218 8112550 947431027 66275542 619860488 966559541 242966023 870999625 142908072 518834364 205784489 444895086 592009482 620519096 107683452 237539716 269647137 902906305 486239603 981135008 455453985 327171008 830591918 249734351 955986037 336524624 562860847 774757347 365490289 776764605 629234942 660028287 997197697 606349512 24211161 645382022 691752451 168633702 955345406 338379790 526510501 91219641 537634776 902477419 28614133 269359766 623779110 152427659 588068879 203938772 470408596 160088486 775029297 521250193 884476332 825930150 319719213 434716005 773284905 733193925 362262549 752111056 80891893 965620091 796998166 866807247 673242188 589983678 476345511 925804083 346585134 726453459 431388482 237821705 501610382 457202958 33631018 962045670 624407927 876361571 299278088 210292977 258039343 422774191 944486022 832039602 404551136 73600921 515509012 845653853 378958844 169366683 295456972 433494381 383411215 581867701 73429842 307652061 195943505 161129116 733137113 830510800 435665360 113669435 943463305 427265661 515239489 395394839 992152923 110170514 981139081 283854869 259446127 399652785 385019770 859665679 196294564 470341313 500170516 107446664 90701756 530402804 225522498 868480477 787681646 467112713 543052557 354566774 768695337 333575220 628934282 403952837 402867935 3443416 125005382 772133129 653788757 892533172 719979535 120353061 367243536 43483289 395466025 797572868 522912515 330243077 802972 640648363 856792371 533652292 76358735 264642507 614043317 625565104 960502518 782117555 503396778 680727794 641718919 441410915 518042464 722822731 517781566 989874895 762685250 437368198 132521267 576862658 555745604 441034473 742901912 815976798 935670680 78983081 946392123 285821225 773939017 714106926 861849356 646689797 239982941 162964461 35558856 821039544 21877277 22890308 155792273 824492179 446229975 653750760 427151889 797172249 623470429 283215209 845207606 806692756 766819394 591481391 491312877 812200021 579778163 482012500 20403526 92879792 836190780 608692712 565409205 745893948 930317418 239610535 770969591 501727136 117560030 849178498 923242246 587753454 63544741 534805888 817500752 219652060 533564624 398579268 795096259 134634323 326411394 990588430 541132258 518038060 156116547 825005259 265021271 484528152 757443011 985970133 852351792 273588657 886230969 348323344 924999455 938743191 848981111 77234504 955453992 20553503 186719668 648331000 183434773 307123102 957975752 954326039 477922414 933489979 215998332 109697034 515498781 84611838 977851525 698815211 194896341 824854744 824739813 531019098 78894715 702066443 79771790 770041743 336824783 119884160 920333688 427713184 529408285 515118169 229266407 362446607 625261486 345422939 242000409 617093128 138955092 14893316 646848353 600294859 944392330 126408631 422978363 775151120 733549855 580475853 730176840 806811545 841361960 89746494 988161994 400938080 658366340 280047925 324078523 417010540 354160913 970257748 361880411 794410698 491919656 896475634 820148473 160988553 392064435 35390039 921200659 426703298 789435671 144652950 330877365 796383216 350525355 548280719 245979892 663157420 571939145 920742928 738746268 555694519 882241945 649993436 422849539 244552319 770173687 780309408 925554895 934745368 619847338 604025017 178095450 733774583 643616148 412897916 137964822 836421287 800014845 988699476 724009700 283966954 748217854 115724433 93234769 139161079 438625667 10152304 12346989 818934569 128272784 349193960 909857353 861575293 20119686 143573224 83533165 117136751 837993981 831945669 493810005 512110398 642949404 998832057 675277656 265076933 904012355 362616401 255826144 203625640 914703083 214223510 65189673 825491016 549428717 545209658 868138582 271171888 52792017 190144127 216231931 474322547 834354540 307474413 392901374 622163775 273892492 23312500 469083237 937752000 758938567 387916851 44276911 928579242 75212677 952161486 679981615 491155992 612934738 764984864 651973938 980013145 335768129 583064618 271769750 102335073 325649689 623111537 645823298 515873289 508388240 121978230 973992040 992477742 892602351 240738722 438231842 183058125 759163837 559313698 156915639 128734539 813363142 885565509 38672167 462070342 4758098 879376114 87993910 93710074 278790237 788929369 494833735 429885176 279924443 961763199 299699542 721677292 528446655 172432297 591155428 721114982 297372004 250445002 761284396 208455535 202507806 486169105 333932877 713485734 346329678 676828232 235343117 428330895 951789185 251000092 265102577 132348459 793901832 22561120 934920898 137436186 498342262 197929479 5744935 91928496 902984779 938106156 221245220 375683367 875845006 92670704 355105494 203993351 109611720 483393562 810371993 62334753 189478932 972311594 881664604 867782411 821841383 35303659 973317535 296236528 86617769 218786600 363521810 816152633 388357974 668045996 275988752 155091279 133156297 568659419 502195755 24709213 108323686 178956474 871596718 666839846 412948233 802527734 51875184 737563341 273479628 637321396 362091498 232117679 573192148 93902095 606078464 183630023 808984837 892985646 382013886 604937591 812596138 1804294 60838842 561523899 741021052 724522176 549463916 103664720 520918111 557941427 776040679 985838931 269304036 865874164 612825614 548094092 624918369 468365489 909024175 840875808 297002700 313714665 198299534 831567912 651397525 576666134 277967257 579287423 647717786 349087051 633051221 714167043 145828826 137655507 919196598 400556025 315032650 714319662 397805587 717865277 607186757 301427127 358864749 255294345 822875660 743396389 435931275 980400540 398155748 694347654 441538292 552525847 661054298 617674047 974837330 88215683 903969246 367769645 883477191 109195527 535528245 586665212 477143490 156551324 653312423 331999296 939714286 400573738 278192535 365142713 966357636 799758986 69904584 593096626 353974443 154288822 72660627 165130144 640471463 241557466 52511797 241408937 523394271 91204602 102924450 41559522 906413573 373366880 741189915 360543270 250494267 619920154 560864089 93014794 435476927 874045287 767149879 7960729 956257874 458508740 311192159 993001209 433810837 84876672 77857567 848255499 680625489 187030953 497754218 368284098 374902892 701504126 111246764 979996845 148767367 658505443 469794949 5601544 916179685 378889171 69303218 774036802 659608657 444359979 564951009 661970491 608336778 493202274 325176474 132234251 393477281 33013609 842457234 495431437 807086024 648152982 703110309 184274384 509415766 443574726 407741554 893630697 502790886 540371212 622347861 97974526 104666699 819193741 300517148 171363316 756440816 558604699 338138860 192793580 283370258 19929813 611554844 629418525 21989309 282752782 392829476 336387711 255140639 600395825 341637199 668603279 181046780 282133704 578005154 801775106 416457965 279346959 797588981 449463083 488310778 421966084 518522727 787429445 416013039 246252165 182941242 458053148 603006688 549313313 782602139 180695006 871551118 547401385 532462211 629020288 167937286 589809932 847218267 641437079 683680382 408728889 911171815 107982386 136425254 275078173 740750485 297806200 732714252 703214320 961634397 546952714 213065882 285459328 929483271 499390615 499694195 663391414 839688005 370067948 501831327 814771735 457215418 873862051 403086731 54358619 419201627 983644327 280980445 11014856 426528345 684959582 598596919 293515393 560693332 106876811 312961530 617879221 758099394 358771105 646863614 1764969 526201423 661700466 257881541 574859014 482060224 732212171 363692425 826327198 393208374 206529764 760339740 487561114 686197776 608811000 925670648 913553668 984192119 47047506 676023105 592788957 249484188 881439278 741996173 245509473 569988508 758731595 177024932 208751440 669801456 530020781 407401250 779909987 173391735 504077091 849299593 17188491 380252473 634530909 463806229 977784543 203863816 827635519 340558237 802330166 657558786 858276697 195918336 208425381 479207461 63882553 653698094 423712244 926296747 78531286 348440714 393940807 79806289 221234107 522310438 516663653 369169756 574398128 519638368 200397189 651319287 345282735 839476345 223469664 904555080 774885502 436067784 650086098 290578196 999860453 15888796 36316566 416953022 126993290 140582977 867693179 697940218 460123110 441040881 349540606 274221899 707489740 272977837 488380551 458385617 423868291 866934126 458810355 490736519 904883661 350806831 836321040 159047824 552713623 935286525 203471105 376225400 544673534 847577999 897501295 315181908 149135727 18173007 717388683 317592173 106734375 674943917 594661304 786460357 663044051 473050663 388886208 774987024 818340046 724996716 219299919 679441967 185148996 157090731 957527745 997401436 870009166 697214255 326324866 50938222 334681680 407132820 322377671 696602259 808897443 993721427 894358834 663476461 679972561 824108163 264768201 973255409 86441759 920492819 150809369 188773353 221904271 995900104 747385877 122172559 359010103 452605321 233456935 518197124 405484065 543814735 339665132 487751548 856439316 863291622 752537405 483420690 541150158 35373792 677075744 41292453 643570348 451492489 148214249 461427800 442762120 644499588 478261611 491133238 705460958 709256099 373279083 238522351 873516030 960303977 681380341 868919808 92343856 190337848 669733710 260426655 932413563 593217651 823282218 480741786 635278312 648916523 684169167 651691222 611765699 300812889 728042910 606554484 918705387 137154022 997390754 816582027 462774814 682393686 838838413 655720723 467173035 489940214 805627550 396020303 322111603 180476256 659050221 657814255 738922697 880821050 630629088 913256602 796399965 168265928 896925632 730016644 236687727 577729096 318913006 724028077 367403162 265584429 908505252 426512919 275740688 37986993 540309091 787664610 601647396 271086032 604835033 173563444 243399278 456706181 831556754 231381366 953695595 350484111 44309662 29948393 116537889 89665849 714915243 989291650 800543758 843114456 360710606 914326223 425255675 804508688 412900417 245848649 790821063 534151654 465385451 475996284 876394311 870884693 367930226 144003472 748657671 79219215 13314145 776720116 814429124 761475238 195339217 744017078 911535363 954626048 611843034 967549545 476751932 565688924 422981938 395684044 839647768 142414702 474994204 122527322 888375124 537546063 668106081 691105665 446096913 614590888 753349849 367169208 196445488 21164205 464387731 203851276 947944612 265911357 317580922 631635942 131907432 186058547 105909252 720332128 123463279 207953880 275680184 966158058 5011817 836209520 538209726 920134347 496107883 695141947 424379347 893977249 548649474 381797399 521657744 26545388 182971651 467007523 366158409 795207448 317589335 16320072 951317336 340021628 167997053 188470095 292839231 187437190 905239629 983843846 24501912 893621026 125461152 144746921 514116163 811481017 300328412 77643600 438999742 747639892 989695259 891487869 180600585 585109747 781316362 871347992 42314453 545131253 810153786 141184225 481837230 875049202 578933428 580226094 120977942 229538034 362495406 549153109 727805303 830060613 282201457 309960772 860486125 701457550 870300960 508918550 986617032 893973927 909228217 979963077 761382555 498543180 704253220 425931025 970431604 789680573 921552082 58253396 889740443 707017650 162399104 350861640 532259891 400684462 494358390 969841221 943992436 356274110 265275926 247489937 814624083 919458813 595761207 920171806 150167217 584088725 742904346 18048073 315435525 584339479 684581803 557925727 136588135 783152906 20864984 819455052 97168294 826734897 393149029 310467349 76572636 698851534 340963079 964149704 238061888 465116727 326599510 648973581 143144028 369833105 198374974 551604004 508354603 697618847 550896552 389616240 806465730 230001779 935298429 267759566 64153562 645664562 329127021 675020252 821053124 995471073 510729303 416508678 640723145 344287327 778699808 29552855 412506620 449530400 457484946 356392076 857487809 759421851 309747165 397218018 684594436 245572878 280509392 901483915 140832812 775023923 588354437 457676488 989854291 848450497 908235762 709852001 868804510 314014090 542719191 751035399 27138573 330654555 608277353 976402118 708823961 535115943 175408150 157249473 958304566 930816528 308670759 755627731 468700618 770340737 110437481 356836977 775262603 582136566 463206947 466612709 642278500 695542874 631016791 356112604 158344082 145367680 270355845 293769238 631992560 280348385 944376289 403762988 284289814 133523826 82854863 878248203 941972019 679310022 586683708 706960805 952444781 719557510 21072020 702509917 940722263 287665849 878292693 815695963 749979291 850709983 613189597 295528454 412353545 979035713 899554494 998610476 110481742 530722250 65942602 490737923 95621815 116753525 738189840 241601557 911597225 857589189 816579267 115312862 885026957 740778501 172008872 475128947 670698709 745204210 729547335 22600531 607162668 92784422 618403087 981875369 955700465 274195714 51172993 743776986 198014102 824978676 884226995 562146155 244934561 530792194 772265816 867990869 557567320 107927053 612511504 8149390 536355090 858924299 956186717 780611608 12764161 323567582 728280471 71875711 71865305 7954733 660049056 620353518 532857023 346585068 150736646 716572456 323725022 634432580 715233811 182049993 543061368 779400860 568698076 237910181 573317008 627013131 484954220 249155600 414972614 952603010 543329159 979506463 118469779 892230124 747316099 642114479 186605112 135342862 567244625 526794001 250944774 506323861 495166018 460044781 156371075 243099538 586564836 564608499 447310709 264508753 185693418 340419897 762016578 620756708 450246688 240014102 801680173 691026398 54757463 322723344 170559609 809401672 99368530 182869606 130760831 556474783 598313378 553798486 907820850 60438256 594030598 871770169 649468577 884827010 130569124 780155600 893608332 202082447 487128393 818459268 157168553 510907634 618911573 540611816 10512955 877232403 505033960 542340397 244714450 640916749 891692911 665738845 902038883 431365179 299785224 753813876 761610399 450548381 714609336 467119844 956794386 727291096 21903494 828240440 252542295 292413049 309397865 566326006 959153419 717443494 114974921 679079629 509666071 973850688 881064029 539317794 926278469 767743473 968649015 674757168 532455487 889958758 207421164 70494954 264657155 101481846 653650703 884925104 185697302 281878114 550801241 730313039 665156722 908772379 685826215 638505770 806650331 60172851 428693735 678718123 623794496 747976952 34759931 468186808 844048816 842475532 652611411 395176622 60566401 991958185 949136821 126127506 397397151 80419002 256283121 228877890 822746064 966452030 670018324 396351745 509468899 801699740 342978203 272440502 716189521 888290744 681679176 114664305 253104257 296678031 169305353 835728776 868253865 363747815 657951312 939768088 975581240 342164652 57701173 267588471 147068090 589003533 382723255 285884543 985111095 166747556 448274648 438700544 942282664 560484743 195562878 174986961 267897037 71524345 975116793 756084046 593263916 791323658 581849308 381773826 939199617 361239037 422716996 320805263 953209752 245000826 494998978 123267611 293766893 183341882 241480578 444578916 660385129 487090332 603432451 260782307 341896604 7988504 435904942 171423620 383035747 297849583 652548627 953936695 426999653 737251497 802380065 528838993 606917683 898621284 428772065 555310590 441103037 993753856 157824555 484862133 151117192 316846451 398511162 43463939 357750830 589088828 343978648 406336001 867249043 234698209 874210744 521411014 60021325 875079041 746193193 746342984 858752129 140821768 280726329 223022655 175527128 777405350 634177607 173317847 218527401 61816523 512595813 204430374 385184369 613285882 225348839 815401472 922265463 171842052 466986717 446603278 117722860 470843481 186247276 443850157 242536113 412088549 129358820 958832268 8533760 199193861 153905157 769720989 655140956 792572896 506552013 250675465 792165585 285112773 47002590 237620888 250249726 36686296 82190732 863351273 855576667 922903160 110829324 994739053 718157368 590956147 707944929 430271595 58551095 70458388 979292916 632350098 62420048 248993396 577031717 915509715 678292761 321872203 506078095 205383972 411896772 866618083 229370055 634772442 718885158 493316711 551857682 986448698 73580984 605429018 133838007 869968743 99581772 796745123 253609413 504034565 589859453 748342684 55128672 99909389 197332784 212181134 733312222 884192617 671970810 474846617 416788020 941469552 936337651 234902775 441917467 524826920 300060368 712129785 217674452 188094120 531047448 863568455 14783660 116913551 578549395 264395983 160560871 283585623 201895156 451431703 393399593 131174040 824035675 577195160 716432391 417551643 282842960 867344068 126377180 233096617 362554132 67360273 566291820 626746669 268549594 656877401 455861739 910034075 209500165 933562120 840493017 411662211 443513773 337173267 140263268 608235486 371362506 935719911 127443469 645422080 459825311 880809458 193587920 667017953 103388712 660214981 332435033 834479549 861874207 251617862 625165413 922360176 447031063 514062166 956737186 437266177 932359490 94155769 42073318 400987826 495763295 344941739 106767028 945813614 256065162 506256674 848392816 49116833 219322398 573012110 546918049 113061126 137470199 404123530 612438960 241971321 562463678 837436038 189581074 475150033 138060595 848194207 270582380 804286361 449443946 82006538 179290678 892084410 745086486 288323331 190694215 427581417 876575558 435737928 753984054 43293405 706361364 732157944 708583662 714911084 441119135 362987916 800040020 822424054 262297713 59027599 771058071 607361082 116060262 922671096 542107463 771613245 10615913 626254794 698622601 434440261 579534556 28665785 781404765 617579848 737892510 667771260 376436849 702053996 795708587 481311754 582387606 679879804 16554810 534849988 668614998 342537230 198577676 974985520 487429272 544489663 943597613 972638252 384254547 903030201 615678734 905573255 576329785 520047996 746000222 789865814 151149498 838976643 991767889 158494076 129714918 763783904 138650264 131598444 966338792 208619180 276016284 409355018 287461077 272657127 434825543 43804265 815768219 36291814 910054562 958675936 674642068 47710384 24999847 843494373 778844149 750199117 118588494 251223274 493358279 570805289 608912197 252136360 700153983 989392234 973487680 553999272 558502525 469195087 877941015 874732155 455108 382250741 521240432 142774580 430758874 994912513 408890151 485774384 435025269 902285562 88341529 272233417 21410393 362174143 123445762 903648131 556429448 761828091 541758400 853910323 186068189 62752494 741997465 48610123 753596182 556864139 629855334 46184555 311452775 904189959 648449732 698486917 608394076 624195172 181452439 26685613 842285768 232918923 819640799 604678100 691492108 49952449 280152653 806765883 825876369 925859968 750507397 350351199 573414971 71932003 256156505 422347273 795582519 682239440 505980375 803443203 101702199 75222472 851207488 696424532 992912966 870811583 683124176 332644260 929020001 729033706 766891474 353443464 225831646 510113428 956378961 193964992 132685056 625868890 373335761 575333376 841370810 758060909 288756868 793005526 602287048 227835755 868226854 434342257 404827305 987993759 380991199 718043916 360358636 997893332 516531845 520778450 428419478 48127579 552704357 12974654 241516653 644622951 576516956 87128562 671386184 872684974 978791993 670549964 518702611 977377003 855153717 604568335 432533306 228793594 116353555 784815228 593670694 727703792 439970352 856333341 584934432 65101756 236097188 716477459 532586205 482271050 367348283 716225991 213224579 690491768 398574875 23593740 533139322 729907370 565033677 836357847 142668231 229652093 710159069 54667335 64939481 891372425 836001909 451324310 953477642 432535511 498651086 566277170 410876124 484787870 900406778 862761275 190087735 63690522 443926326 637607654 700800067 473774505 651537940 116457913 464042525 965806818 584422498 638540649 504430885 32616509 639174598 144150272 565816166 935989216 100975862 782619233 848790588 368309531 573746849 501729698 173262565 814943638 145023726 656763665 799845743 757878243 571071450 961883451 33024816 846662116 42113590 209818167 494478251 492023965 878887194 227108134 976829751 85367663 724203560 798027297 180493388 727582453 883441344 792954359 551101863 152235194 403249852 61481640 229350053 709368266 622950896 86886723 652582877 570037615 222072548 667775944 700300666 475112783 37478243 539509256 499900415 107619856 789336122 954654520 319796955 936492101 423165992 587042389 381497075 739151095 843833244 904537125 834089061 388654706 776720999 657618714 463050983 980113705 605246727 187168352 754143529 343564724 189615409 992699432 859755339 40273095 974257681 261183737 252773569 93322937 796069646 327228533 800609137 443698459 135672542 457236860 315606520 410298902 784648065 150683866 816540596 203027300 435748944 251943121 497221485 633078369 404920225 444040631 995097527 209111942 137613674 338819056 411894813 62845045 23089164 871212733 711117073 31097064 286402958 674713839 121529377 720859876 438568827 209326520 176306934 895346513 615494324 211763729 60710450 738963730 603833889 214213597 99623671 276611586 875779168 213742032 353657360 163771557 860165291 871969488 498203615 96645281 237281071 301235676 210345465 460416299 479366551 743480821 894966290 703477066 101441693 531492723 899048902 432402455 808256549 967657650 906378220 475409144 822722630 232327808 762591419 569076348 993536403 781881108 730505808 364509009 380130716 952272234 757257573 637662395 753916253 381495085 889903321 246611817 741721720 112076009 641154333 112429976 980335385 15004639 319566828 115422205 442318235 332282185 173624296 658223115 68870043 934264739 118917895 552880869 553501361 235290075 983093971 664196517 924883759 490633170 166659107 394947998 125643026 852719184 739081308 77923557 72060851 645306825 212406739 903941999 714874532 273510440 896612267 752157613 950330949 4851941 937043547 456731728 100639469 314696317 491353040 690397574 394076610 274611123 164438965 825295322 793443605 206997327 292283569 847870716 369178158 142294701 771815246 690780522 910591466 591649443 630150400 333532782 994217297 8908921 775883416 836424816 775598435 301642654 148049243 729380697 280462720 39035211 400403738 558862241 274232497 507220770 193562232 727694146 5965504 739780601 458290970 883930372 595728670 107086914 402386625 172274498 51637006 534158048 759642130 283819064 446032909 330897150 95607512 978013984 367439310 740660653 251407340 872889509 742503462 309429426 797077294 128252333 20218636 960700358 954074663 423732680 305747909 647169842 68469738 214607178 939244838 51233436 635953736 43011266 699396204 904910474 118828157 38052963 525323701 504644772 523094442 489505144 511516407 658751174 965936943 692872956 955290589 746672206 604781151 339796476 843018140 77438554 302821277 30165598 562258196 315945337 372956318 412108556 65318617 835280053 788129327 213830386 906700833 803859359 715082549 838058350 135131593 452533596 759300515 396801644 139181847 921474212 25156014 995276182 886205385 928359681 362357769 720238234 75480957 418895781 677678563 634806809 53632201 435092511 490775062 84797213 102628179 324674413 137916337 656062153 720399683 878522230 693890153 791736497 412454111 754627517 487552631 825882465 103961106 506590959 901755579 224227294 5043504 983768314 914175910 942867439 570886158 375953688 771426550 514536250 981903596 273951811 881407222 139112625 693761578 224090949 772819740 737138212 601002558 23384833 845430016 623539585 229239304 243055160 754063030 16738039 867562154 440496005 816925180 208644901 265507203 234789360 447189181 178124147 167626754 569990631 305264265 448054433 313539573 884683556 349251475 476540138 502065595 192689416 625413374 15663531 191084141 2576513 995894344 952418030 377811386 171020471 330719656 792353577 111634922 682582155 546686189 421668693 158155248 602141956 833972760 38417959 314445649 637058616 372308483 104627354 265450111 808627622 582182400 574469032 58587886 314285133 351954503 853748405 35995065 793637495 522881233 488704692 622442749 701591475 866773242 800095625 284242079 552040569 599083485 19152792 465442685 421947340 660341948 249839724 398788012 147193488 530184505 624680472 251437394 765732865 643927826 665278431 940089320 463874398 277348235 911186248 215709168 215071372 976679532 454480800 745404589 932140293 840455850 794331747 264493 613339757 487609185 690069812 130165388 588735215 395423095 342458894 872634973 662738794 256890163 993156735 150135050 942881765 774363222 28495658 625886508 147406851 553926138 425872936 315215119 406832923 851593406 207726277 709156642 381462672 420379670 911711066 229853433 163344228 82999862 952343357 405433717 892971527 970451854 810834793 668917703 755753397 947953299 251839743 709034415 592496377 826281791 445196022 871982179 263716978 121386354 767722757 819854808 6231185 540109471 10777901 445494270 985253763 574439064 684916030 141642740 706845411 102166654 667228987 240661695 828028842 766153107 279099416 71346721 747910084 69101744 420964550 646829183 443873050 54652393 464333486 629423081 247554527 437329189 427710858 302610882 17682702 743378532 253218072 909814677 799309304 972228678 928801743 862012528 861566683 128789291 567009861 76845215 124260286 530921452 428893572 252892277 542194941 83419934 156208824 582045402 380198744 838467912 335816582 361498406 78584443 673560141 365466757 60014937 66124423 271107244 276464028 415266030 682302132 43590519 864533078 219333919 69393213 913383724 484171839 433669380 341954075 412647688 689023006 520299330 50141810 788499003 180458888 142160858 170368146 788794969 738208882 667428415 775712434 838232445 923460606 98917612 227371301 38631337 63481967 980142212 488468280 426720644 159248369 307554020 528110020 898591340 298190500 437459946 121195365 805724762 232969506 887607632 281031459 370580258 94028479 927007019 767338300 623201372 946852518 974774042 715487731 57127003 283925750 722397368 929808649 348286717 343963447 740716706 798926093 194643745 868551051 434850750 312501049 256735806 297671848 770611253 915591872 691847504 150083112 245454225 167197378 92876705 742738586 380186497 685408731 86507880 857704764 336244753 468189717 620405939 326692981 263729842 582869897 595820899 944330786 743191951 531875541 872545945 895625972 140373236 258661431 517439743 447589075 777334014 879823021 529002000 433751640 13375681 603671730 712405011 168229279 654850824 94706605 662629201 501851475 91521382 774521819 477776975 240152981 462231272 494300861 919920638 479398878 697753944 627047023 920784238 389910559 801201781 526327117 647254082 433312017 408357771 744708484 6071384 970309148 845471465 440045096 424836219 897588360 442120560 219588841 963265624 516454482 519738818 92690218 172209654 494962557 913033448 898904321 839816399 577070667 806857769 803035700 847207969 670160383 290160134 551849613 705988360 907213419 459005348 546093143 702170740 253715769 554254919 99906056 933866631 882632484 913830418 192438308 591989228 684209060 51338625 491458469 153968460 588437087 133297290 460775773 591241863 598162238 704913109 433570401 921063085 85469930 403051727 32830131 882150324 188123908 925419254 884854075 509511996 485895407 745313365 831153100 480785374 445824839 243996988 492483662 747220847 585551337 950714411 939883026 246476753 810101725 362681124 375606219 655270846 780738525 428556947 764664938 550410794 930045989 3899016 26288595 232719736 46935582 61732869 583387818 464137996 355988245 326066360 993304998 569465561 988553482 220159920 333704329 471966401 223540328 428671113 385252791 681079438 64870165 550658297 235894978 286495757 273959470 194239066 765575509 390986033 87010780 201726824 109757490 76404421 577551033 510400861 703126156 973240378 276255737 360598381 222048487 854934691 940177958 897499031 600365904 195195395 539997342 90803111 873085491 472915751 867237107 919290421 892367762 315610065 79257993 690568470 982500299 124482409 69588750 618489153 546273945 18524845 573457035 377885161 946527294 494343864 324156824 570354201 170111600 833200247 841144059 752886067 889617396 210972032 403485100 145319716 270828498 671551816 395910485 66881071 296904233 261439912 869888198 932275726 531067526 736023142 902343883 544283662 637400715 621558723 312110150 352905197 735594999 690139264 136292185 389678517 353942533 506390060 94283913 535209999 267057298 903987437 36731568 494989804 831379044 843399984 327740833 494043973 477630263 515843872 506236697 512395483 395182473 281047455 792749015 379988964 210721099 433125349 364850591 742110796 629233181 39357699 633492485 613675805 608263853 720121719 152743718 315597205 295817468 498041918 778591055 780184760 108431377 706156075 841977325 332866835 867026088 837768104 36593326 642386331 837167694 517245158 607796601 443590481 886642415 116015683 124588200 525854591 997350711 328830139 813701605 393450905 835329468 948441270 399271635 100810523 160250302 926463977 844639565 552487857 14478981 535861733 439999440 378892957 812811492 402066756 566077500 280896317 865418756 682257582 464112656 137374697 88250466 297139663 437171022 712330530 4047927 20176529 895844623 741864343 443872321 55608838 780939976 438231232 942730188 845419536 329436689 568199765 832776812 685289450 453936600 530657849 326314812 980584585 108493759 597153661 846455681 424663013 657198404 82653686 239172575 276922355 319229550 399789807 283254551 623259335 396864429 47341826 42858888 75679347 912119213 205368048 923256891 525730538 647957299 697443107 35117278 429595061 77981133 782640800 804081175 194022561 488736894 41100435 437668638 616983531 755627052 72862224 802490361 103797483 140071051 228745959 398887698 293409969 134364699 187440389 157403362 268898955 34450033 339488967 542475530 821385988 678605852 200358220 753008285 342603258 203715942 848120883 922857545 804754022 679607595 757473016 43955446 61581187 594443138 341065644 511437668 804227280 820874328 383968972 699308881 416079673 823538359 853687446 240533159 541084983 16049607 176171382 604937062 24860864 43847982 249039357 324048745 210772915 932812083 922888456 154858645 909763555 373033022 927235017 218422506 590314541 555606639 428043912 429726523 152221168 969686352 128732480 627225263 922909082 595297425 277114885 893808769 105146184 204493822 208814873 777705303 54220324 352127375 597191809 805953457 909037357 572191963 80291923 272825474 278391317 910686501 645810447 259044780 884177406 456286053 194238277 482258205 391712262 986851128 344913051 682542386 63970223 111911075 241796573 341752970 205190066 139629439 265506125 605309267 114251147 21986190 818462364 831181947 902438116 15345767 194815128 779182893 970946812 652744352 877582612 801412950 754899748 938543777 235185157 97801244 906913400 493077212 712173664 4075806 201759095 851058819 677170911 225926475 207761625 920705080 411277079 181755270 254078670 256390988 700544603 577056497 226014783 898254899 879882511 730703296 461686836 720744335 749032011 820848360 393546447 823406987 889433809 877121377 147410756 674522517 709569347 113898484 978821141 972734418 932103982 205145785 636517950 389384586 139347082 31347745 110456227 717193811 342578845 897517267 168013717 275630504 788394667 381563355 145659394 147588608 364580935 712425410 647170360 456261195 187444064 679902289 77944076 862509381 258468765 973472813 591542185 78059716 446544993 662374283 821339041 555067999 970992504 389217758 628455788 305868183 614509575 534513377 637701758 990043680 381411437 565464422 550965454 859246126 270127644 251631158 485828325 394649331 409470872 51691640 594744102 664799135 53898014 907741960 770141663 186804405 720404333 579540279 30386020 783242506 514961992 272105013 371448374 668880355 500946663 29018865 977492883 960896492 484409207 279829230 392456404 572155160 224706561 826383187 922600147 803150925 655743873 955552214 716049746 228763797 22245665 331894371 581479665 890007502 331756921 982703175 772376099 553370695 95799711 243119698 458680855 745053195 951840198 356811881 359982928 539849886 938774313 881058461 172046518 153851512 788847298 851397838 628827718 595816941 318658706 992963967 863373959 845478391 811028210 773298619 542640401 238425719 507887244 696115745 20780225 76176307 739212978 687582328 811040293 554049133 261591891 502705244 755744699 224986692 620816430 296863937 491994585 516531224 28305327 445312547 827338088 626371425 63398950 431248758 432798105 494149145 946239663 324868012 979948219 613962556 250037055 240549203 805602734 653200482 465566645 68305525 239173122 199889067 16865778 196858944 649081606 732231995 697610075 339250543 169792980 690552265 777344281 90788302 272779140 674351923 957727080 290855271 941891430 40312150 969251110 790653498 684846517 397699550 83954930 539383723 114037545 90646841 179936718 609961099 519445884 117955398 608221442 202330266 190834951 391483691 413307348 507043981 185521573 288988696 571182750 741107971 112854657 56427532 67023256 448178794 4953145 317342690 69082100 648085149 650712186 404101796 865395728 322252113 449506108 633493649 890703063 42340382 808116558 617986351 232243406 606550641 688674022 829518266 231625202 514456852 883907827 335311353 232580516 937575681 37143545 934644404 555944549 981581516 980735324 337870681 289055996 777488850 127719208 455747964 583704115 41106465 570224619 83855744 518655324 307803641 99275862 886826489 572977448 72927294 789215457 415485664 540301384 839728230 809322090 813302486 814918365 596715269 309732847 76494017 82283245 90305684 900234044 834452523 769126536 845701542 405766327 622470152 127443064 376828107 263234557 322104196 546598564 570286173 241111525 313092871 903218736 83091375 629205464 752663107 409262471 501093615 448280988 120609653 77499570 259932088 265243795 338908163 750701913 4188826 284347139 278266118 717776119 852570673 326114693 347525807 463678049 731224250 867422427 805154191 139079383 465343537 436418506 547481088 772586008 325187683 865191876 914723033 421567789 885001648 509552225 332757039 824285019 237482988 62367171 640245392 314734335 354791609 886201685 742732968 763176492 386238463 954423986 767151360 785374906 941915451 857476979 607442389 984620700 120292641 807269411 648671882 675164774 18320751 821509293 837824517 326171929 502131037 856666767 330318868 432330236 519772005 178933290 272965140 211568429 578464596 850768597 493105794 429122754 410847012 105880536 342837006 456155628 673322902 991157165 281623362 577951753 154808695 486499141 941939174 698791167 557130933 536092074 187862320 116958234 262357895 101374828 799546871 335532849 995404392 109894694 309044156 63541298 93067928 843951933 56033072 843372776 159594393 281388063 188226754 101605921 559826044 263724641 517828047 111903435 253376261 550033594 621123876 45079032 297666676 194426241 858056704 863527563 792535441 672583423 248038562 191353902 689335061 655927414 921259692 863772071 231685969 516976211 201058948 392230589 750301878 879102123 544723226 931982184 592892223 757894745 366979565 101681603 408369725 405509148 550373991 610034565 61366724 787248989 335260761 774245036 306046972 611195729 935073619 178456616 456471584 142491335 452632774 521509772 588436056 869995283 793959571 828982896 199915320 492554783 978173776 673599349 816378002 923810548 357208663 476267885 449292215 238688308 575164085 936197493 444400520 742809591 820333156 63607388 794996377 636301264 26041206 323860256 332653060 149869946 644062674 855442475 556125711 911841469 715985782 118354641 436602898 234029944 953547348 134325347 234000958 881097185 590363043 567353134 490083502 301180592 273813788 20682320 123407156 10656642 671509139 935015297 773101002 737921937 107091974 306147387 750624034 403578185 642203021 66592707 242028086 816841107 802794591 421578761 817579843 129845755 663938009 474780441 976148227 193922606 469983578 775033845 519364847 762726973 259411189 48021301 124272242 932686189 295056918 775705371 605336595 917904681 913657895 651720581 576198359 63732971 963402924 994950448 377757073 369277855 420511604 652633348 148963484 412112007 107087783 51832761 378877513 890530572 303868337 504659072 924827435 94218473 527199714 958928350 887115571 790456244 419298253 465410017 472223199 671153867 667190300 388429597 62420556 167246866 502483932 342529726 640595720 221121418 37258107 51322902 16749656 47529985 884949441 970431297 25277370 599546587 531916544 164120516 588609698 72386464 994030556 96792093 59422073 972440899 995544869 378429730 637388899 174735197 222614165 448072328 429179297 127524919 892183843 448724232 698693460 436613324 18260004 303447488 785243404 87745451 773231905 411443199 898881942 671938085 106595974 663499056 784711201 519174842 655486852 611607975 792056755 625899945 626743828 446999060 708817057 573711604 14698298 809347678 552722716 407761 238973538 899535779 669770812 269654266 246845596 316029153 704548362 618013725 195996388 90696118 823406478 164935673 988980301 959745462 672568058 391605057 31271295 441705942 344783606 686850643 518423512 896929938 729668320 155774506 38867093 415693074 28869469 363199347 502004710 814005713 95521230 234813931 411196559 911453464 841971912 997062453 279458838 213497340 638962541 228500902 342036411 252707651 637859882 477648313 188502893 259321439 246017987 547743514 503383028 755334543 888521019 760871040 943139743 819190256 866935611 817959780 494033272 82999103 580571099 515997370 218598309 158658365 134637497 400845313 632057166 939621089 478693956 200027016 949700220 386883434 764911269 164036838 442025640 570469025 167540985 640693676 116979843 767206953 264526803 721747566 306469666 859876321 695762386 24461916 928445767 558118800 231518551 212569600 199190125 767935008 703697223 181827110 47934465 474854507 170442167 633643339 262635781 488532733 306207464 557402440 324558580 120817621 110961903 6024011 36189871 459281202 387749391 214104875 516954647 899693119 330714501 248947489 688077828 566594527 586455046 450978021 915658343 184673016 502323155 32975525 30202041 514694189 938140905 177868468 944283246 223416102 279152701 533752314 641093247 679728872 3224703 268316324 543519526 631125819 431676853 208269982 871957821 437966093 971388585 338960001 988113508 387467255 528284080 503247089 157269435 513549333 169552828 957564548 402565208 166543096 479264667 712125678 473367345 851557352 653854 199981497 168846279 192006341 896761321 843708943 897835491 560125402 975193098 459772846 332974043 412375052 489060688 853221873 807424756 966934051 207156487 584450157 845473599 50015109 105654431 768752606 774667192 87283787 269411738 839855427 114072356 128049587 622840622 264114433 133954759 421396443 492165235 305154463 111179192 784737255 512703153 41063456 663502750 37143910 262771601 266954675 792588758 344376096 224526898 625585790 396850636 248231187 552477060 975929819 716803227 307697076 657148404 407167930 196223515 107053055 321502681 994297754 866815250 21217203 180409916 114419947 121546788 292302794 197335930 155466905 607695103 859678738 170900354 210304008 446626233 461501763 5288994 788448806 290156088 232739197 248580276 925383670 932198141 576394219 325889471 276237900 710698299 515993600 94144796 177417501 912994065 955258607 676246641 379656259 820803047 232312994 267388513 666116030 274846101 331860768 592333279 484826505 298362191 66068316 578161571 189156863 582728419 670278169 147699648 833099667 972600175 797198122 535713890 713166301 229610103 49345599 234643677 302982279 987363582 114395284 644160295 320294267 310738555 657865054 260878927 586612246 305211734 989040636 528217758 708315516 240220948 743328443 241344841 669416890 409335162 443108691 518802994 26649142 58581904 706849372 142924508 101905776 929411037 490929875 606320508 656269897 844358846 735709915 594036179 942270208 85993057 491243061 26412800 533349759 671858840 981664247 282107452 392197278 811512807 649249709 303592049 808528279 94865619 595061244 21170720 418418723 551735821 951482682 71371571 853987291 51320583 633654553 174709604 848693530 353108513 51422587 404431326 280683752 280384764 755772495 565896800 16339921 136312543 311970668 317895768 361103894 701625999 560174012 236440860 439613338 726957882 759822655 272438746 975963676 514596278 502220972 696062637 127054154 745133530 559359342 581871653 275097407 494695496 930008624 207043724 934181282 850239919 627969516 184708857 26857171 695464638 658671985 13475101 219209270 400924716 643905033 976812949 246274070 362285749 458995670 511609852 250671690 113225307 486780845 346997124 109788601 603529816 16117759 689088509 664098306 637194764 351997057 262010438 261748011 565656588 60654906 354548036 741148029 980682541 87371358 577348172 843626779 141141609 56692933 321156567 57167259 741308831 707625118 5915253 897419355 730839728 548339684 501077263 108297699 281533846 316563254 622026085 303620444 102194264 811235240 719335009 488536568 491078428 963217572 320348837 259404930 398146491 355594678 147939863 213385140 988767508 848717687 138293048 765689851 91370036 842786279 666634223 148873268 190182547 199871170 565619184 502950982 546149328 939714409 57134156 287436814 875718013 439688764 480058570 145177363 321142369 671011345 905291876 559855846 632886186 926392501 574969207 698613946 280945270 398716200 921605250 766511411 837595696 958972507 134347666 780548551 74298130 805352827 529373668 860449678 86877606 698074434 599592192 189736270 542905705 905993853 536748434 680587463 650417972 939400613 869156167 541662960 686358313 636091974 302728235 960389319 763052366 226625401 718099161 77362022 628136544 627346488 308928012 336205415 607657584 853522168 427831967 403447964 784261245 884735886 390137825 433451473 149986526 428455050 139739375 806536067 921058053 445128392 691765920 665857978 544038275 491391792 909449990 483708490 223578479 696781677 368924311 563104349 631719312 685680671 797274705 827428584 570065880 446459588 622990602 65874141 827891261 602661430 588464712 74130033 220607358 967915089 630502329 194789313 134796655 258553770 51909221 445579225 628888559 769649369 72582281 369100979 913244884 7404259 456336340 538658685 325312999 249680306 178713637 623858053 901342641 119416228 388023505 735195776 298195373 482332737 908038122 70027469 101199722 151502580 102467136 422042977 562849487 55370299 43965394 110132632 39347506 401237738 128591958 136942727 982830895 708336588 850304571 486794709 158084862 502571423 931068617 855020043 268900581 970846825 577224156 412286332 93291678 935074722 327458518 328819579 51491931 952531563 653457832 211958605 835990248 525765643 676184943 167661164 397458365 28443841 694103641 619320678 934681986 594297302 733743315 356726734 218808181 463855068 875477087 288869872 153507554 222300584 155312806 927293040 750564174 498746711 27042528 332090998 923468925 72520565 393762733 665684682 593607349 678760444 673593912 952453064 840187259 963669078 589457528 18803723 675418893 717877724 835844084 772349597 15995356 700647314 436212549 715773517 715230110 298367173 717314316 258066720 212462142 338053075 931988276 650667550 144874850 216905989 5610899 597139766 34031183 287535266 672596261 226917776 999317728 719716302 944864142 389881392 893735716 204448171 108005536 354242925 950174829 859598338 98273965 745230709 34838357 112949030 85742100 311896633 68709792 388871457 713508269 187452099 155994716 990767616 527801191 538282978 712288723 84646402 903750750 518642604 96361919 469345969 195696431 830374647 680255242 316140408 447194151 672823229 467435406 452853633 262827850 731758091 575654451 319106128 112744144 360095033 102023955 157561234 167933374 948591494 705820148 856240681 495542848 415117844 495223338 98979089 62030716 635026578 614424182 677256407 491506676 216461846 937760948 159235258 387514254 821002993 98233458 23604140 6217890 166813506 62939978 609118063 449122268 823057395 339292077 105846976 874689624 59730979 279317856 722893445 793068326 545084111 514054808 107172015 653055652 541084130 269998024 464010035 279405209 160649388 531312719 601881662 807374535 190341272 686430715 831485419 726638483 381068544 186826766 378323977 857914929 776063048 860934561 116806363 549390954 991191889 569811068 711555531 373979525 521171104 30539759 263566950 80852400 907003552 387794727 36520733 410759054 701908323 177213228 410127023 652513423 301294288 787216383 793598937 850880979 33485337 704764256 529428074 855130499 453222033 329551902 730927852 574071114 337554191 617686537 46584762 333251963 56385629 449316218 55268466 427069764 631884526 282762584 14576927 270014627 479334751 711564436 616467969 78316788 835997593 480347847 339831543 188332985 999578531 440267947 161376232 609028377 14597408 269492717 192356613 777762221 251730710 15534177 531350302 18201930 990733233 83470346 619016554 554877160 718559036 703107970 113745713 756558687 674469413 75454750 35892563 597908585 653835934 842829802 947873005 988398649 582817815 580824890 530816725 781006368 186857335 48794156 269087186 149351447 937192271 762702243 309806217 153145090 290029906 465186994 133339779 549157892 204922182 131536440 862748137 590434936 305618426 174815771 959465730 498070457 181740288 717884493 976725665 727004020 599512623 2988038 372374896 144829730 628299160 178323783 741268493 734714848 889333191 71189441 155073021 219219263 854543020 471383627 960249521 699014151 456731427 420645973 848750932 156831990 389155669 490037973 154050553 889418234 300402070 103008253 586890467 855040640 792316694 564149128 682221197 989782982 249032619 692755912 762939559 131448329 604292855 629661584 573500092 958302909 212661070 887543669 394586508 983315621 513735094 713818799 946718297 936893944 650101987 230799178 296466135 707048304 283188860 257479294 481560724 642220169 381801628 625415582 938186276 561739376 75267587 694843188 96735065 182620965 711074890 424301427 999069897 670340027 321709555 336346901 366083351 938625097 174098522 132253329 924707109 655091314 15749442 471954622 471150013 969011362 259269971 493940141 325514064 758689859 415414761 555992869 29919716 624136011 585847723 747065477 726189460 394037824 163811936 581918046 203132258 759610328 865484326 580000162 986889391 711878795 692653944 345217319 6337820 399864133 75117727 1274128 947733935 730117999 195158756 475200643 305938917 560279767 735693751 711521040 177354059 116408624 52101813 883559046 191695037 143691335 691915355 524359172 689019053 247970011 331523100 698620901 353650328 735511267 73379000 34186624 59084842 390598133 534285261 882964995 769491486 699722345 566592280 576892697 516687123 156938894 675438690 357071841 541399431 771942 463181169 664569025 304421367 920653003 115058263 97239506 748490070 334761070 624826799 998704486 94832473 746835049 955581562 722472936 157881498 197093737 849824156 859224146 221290035 223101931 452588039 354211195 20569213 617546764 768475891 767942284 716882536 515691949 554030794 134553816 73132355 875779912 442952729 275857235 495250088 355801391 165602157 847745014 827184256 634391414 845060396 152052750 399256123 765699663 324637228 825019870 49565204 881744518 85055008 429214951 351999012 789423873 145264664 403236429 552121574 889496209 394312310 915898066 784030215 155408326 461544830 676174509 905064533 911172900 818216284 245085594 401071673 540711757 586483607 434460296 628053428 241887543 154523307 167786783 99951264 357981678 334441724 975531112 973996906 266704031 652479858 68412085 297928339 528677954 640879535 291828200 724952264 340442563 315015068 862248267 266233429 462839605 155245716 168744002 653173076 578228643 634571930 852201381 969139332 986737571 724159727 25256149 616371197 143185534 956043150 396110632 324166678 795530495 387814274 571350842 729273146 144293147 794824066 636982830 731069940 360863301 426690124 229678 42727755 474434441 385264103 694363588 693575871 53499372 241732459 325102220 778632702 249118348 62650470 845850767 938400368 234253268 63288633 68707990 760218952 79173002 590896443 334498168 450995723 666663598 649535056 291035899 928730941 870182146 46004546 341302085 132273759 689370385 21441529 675182199 123697048 269461989 948680063 873732371 405862779 745264595 660915658 246630152 917718727 466747425 203865630 799159813 663770685 629929503 542604653 390521509 266992980 808770487 802140915 549750343 1608945 420914801 424830256 591118206 151262544 501794952 175626541 251373433 156359150 294162388 947965284 234437790 269050733 464304398 233609173 732448852 838921708 942692090 289048687 537231834 635585515 373877976 620890808 522788832 343099985 565135312 840239243 568020891 84400836 595243939 472560213 984707155 688619665 155164510 504725053 963327705 662765705 196563574 443123202 793929275 317063362 3798939 245019029 406162088 197944350 789755558 246894892 214684386 393147089 661615306 943397924 323047948 409727418 828770730 752869947 92503723 283278174 120470000 690184858 589925955 143641854 339043785 389382188 572894607 573005417 593393706 844263940 714535597 712478794 528851165 586039509 843452280 478538244 22741158 409781474 956699809 839067277 769723868 329994882 491484082 5833045 243066947 31141948 518889132 489376392 529091187 425675088 641710238 668819476 246554621 44413957 650408683 297713962 140572569 712168125 611103496 234624163 565414654 931304258 593659239 672679140 927880936 447699992 705971465 513899726 876680824 801501961 689804246 753856136 525899419 174927419 911487966 415445211 517332234 653948989 390630256 359709317 495155881 945998844 240559241 674739225 844868462 583058131 198007379 631779647 555950134 702194435 475257555 346928986 46498236 40304606 496967651 892932034 878261295 397633773 769453740 413804148 926953225 996703562 758201458 336632794 538568397 370143238 634122653 368039198 546899019 691330004 240158914 746983467 980919011 745048852 869469158 618812126 457229455 468981293 299864798 692828950 925243517 957040536 476239291 388496122 527715650 571896212 651274472 877646893 588237859 173376947 767609866 245556592 88245523 758813924 689682246 396305383 812668836 487763484 708894993 155634606 972552787 652659730 388875848 506447540 948082350 288543206 492551917 629323053 360474814 123987368 860570609 659176035 834763524 784387564 844239639 371921747 861975504 143944830 614914020 959420895 100987207 509337269 300655049 308198542 666979961 775943181 428246626 238453949 327387316 352270546 137016415 717197650 441983591 358704461 885002658 267062641 746778289 440324588 957830616 612365863 273112575 82877126 185623938 483012189 400718816 4829651 466955820 720191240 7185722 669314556 770690372 400834229 283068956 786994231 210410707 766137910 647778076 86403219 667089956 845674870 968653136 879302951 396450060 965624490 536087016 345503618 625120922 200881727 591278390 347816337 268673676 923405806 191157985 41410069 843715455 141899688 888298083 908714457 604351953 453599878 126303866 535885767 891791334 457304197 285820432 370787932 557183629 352954465 615172151 707384362 271806313 757173972 560796465 208851621 741049627 623559292 800384507 339106916 942989165 645324185 512414850 564469182 857578215 155966433 558898672 656773235 309408200 40167893 961207797 536699209 608541068 188815997 854146115 125953045 312179489 348203985 775534943 169819844 638501909 741893946 272540728 451234648 478860704 105965284 429360776 626087503 282439247 822139961 875390682 668899442 629589647 828016449 644973841 527535360 864482452 989580941 147457535 975694637 295256735 794818290 897629814 901563813 452917309 534260954 56127199 212894774 313805242 69573234 583756923 593310599 305806137 825554907 905607409 136041083 86237187 963177799 700600892 122299805 691817106 783421131 980972603 632951866 101686877 65472889 8446109 793241954 786432195 355259087 75478114 613626825 900577365 981260152 644952869 154346075 245412449 329888689 859925113 381309447 78926454 861253400 455749988 999587582 478732324 939445493 326544548 674467924 377018522 676040907 593237436 806160187 227047420 134828230 60859819 84272817 422693608 142911113 701969514 802949162 595879279 212205561 123252352 631955051 260092307 597518638 688895796 36987854 766585072 414115935 729602274 808768862 976827558 850235246 410290916 480696372 105812430 54090280 221186738 44364761 420688328 465838460 247557158 308425456 868150769 965594435 757808584 577483348 839587601 397895021 992724883 94552389 66047786 655257060 564763970 119991246 365887 184497458 165095649 124795468 258186534 917454547 596057975 769573055 526542504 259119049 207274219 955097796 142728241 784577095 490169843 788346519 106235732 258647588 352885212 945598946 906584148 124936729 266386107 493172127 9456925 838403973 110972490 672877221 254094669 785407924 933109376 635800975 633494724 785762355 344863880 750214463 162315166 849554500 976942151 249059048 615762495 549607297 121862307 911351098 891616516 405760786 32882502 824068932 342670414 906381935 275280221 145082635 116586792 556227305 985688615 882963484 589173163 466455472 947115402 319039357 460886233 960301591 528420683 833792619 103457549 709363386 838211530 801770302 19906721 597462721 720789763 477950902 504849873 529324740 671081368 283126253 709977306 749746829 64116684 937818020 760513447 688162816 210126046 755782437 859107298 751611496 402149132 969677296 412502489 440448614 130280058 895348480 862213248 548451049 985472493 846869986 15051239 571110782 660596854 234460534 161912789 45054982 107452860 21165888 384920165 181812331 974489647 557324088 737352822 689974366 976826352 514097194 730578439 807323715 883310470 941314794 451813391 278618833 5353789 770868365 340806467 585993635 246652306 25648670 398274411 941608744 887481469 141735794 465264138 180900853 70746984 117953809 75146444 922365060 879461030 303638265 749527166 290042981 758987360 183936571 225083815 88079003 292154543 245604586 771209237 261264738 844375021 554793494 178638712 733034404 967911151 769518224 69790225 750108003 321255736 574608760 742234118 485854181 945834261 950641974 869988081 125358321 707908623 352515156 531124662 580999661 191822970 265255232 311919910 103587529 927148186 928891980 599807759 279704070 986732583 662134952 368179175 271487483 784754845 740751977 272075734 622962449 860300278 282403417 897190855 435209995 383827683 552582634 844023665 655352270 339574461 290882720 166811503 99553126 33820625 619682869 754296183 825803925 812459775 636560291 893601418 9471053 189460357 255603814 146124967 71711059 866306040 178163037 691254753 326390678 627127714 828120104 644454288 295636880 358371400 353152374 760907500 194671085 94587787 855646758 5983392 133090894 39600812 757836367 194746392 30887191 367792387 307588144 193138973 162424442 808911522 502559806 234578629 658104569 620853626 95223330 95501455 684158334 29214645 735074605 164030806 940486832 94559829 69908005 700479644 124372083 174122250 46563220 402057026 638536267 620059905 647844036 54463973 344507047 622755553 335213264 756500658 479933743 529389191 666305967 705686162 282623657 268646542 720430394 154753977 418638389 574346064 74432750 21207700 64541501 859394658 467986752 130121980 185790109 688322730 73451725 420545431 911174647 807152579 887295617 390946922 603203428 638189579 173037860 495093578 587462076 677137421 557580869 70830259 145392009 101609831 40312191 628418707 910064180 326439933 732613993 317396837 875683628 893900863 777589723 64622112 386893164 325311743 820083378 368755861 732880212 757491665 804348440 331987367 435940766 870202298 953389541 735840274 436547244 458602040 961736059 32330656 895570902 72572023 129196004 208950976 991327498 600137142 411513457 671144236 985916777 238306332 633485773 378781416 908244543 378575203 101521061 732014863 402289135 47670659 504660061 317270478 745171186 966483265 878527380 6546143 762363008 595154640 562436178 30509042 319274620 172504619 359095384 153050357 405924459 430707331 312580400 426627887 185538552 142955449 396463865 928333638 818713181 650789961 347402025 919403077 208266333 538924663 893511065 597465337 572273296 527261554 67942328 267963017 745002410 379373223 198299764 337684394 254769825 835271979 424489108 429854241 964024803 954034021 922546243 561900761 689435874 819452895 90732720 984672719 440156338 32948792 338850623 905961567 162515484 283655024 96820456 18490888 215155047 162368681 771091650 545490174 764573102 155578958 820393458 482609643 7563678 737078388 636770214 535917893 633199628 904220849 222634962 641408100 952958344 638974405 616745606 529756716 106422478 58271392 581151467 276183180 825789191 155037361 121013090 11884998 116814038 244493462 803503764 464517889 192636599 561103086 862267976 191129214 408400114 493975537 678863638 258513162 318370535 767284602 812822929 488545203 350619905 826369126 937833305 662125822 916217126 315818310 923868103 154714061 757538209 528260945 775367676 952350900 48959921 929869871 943703217 219802804 480024417 705774248 827976665 78209358 965765329 931435083 377232311 207180550 569606779 351123504 771509462 289281849 48458850 621252598 340047317 442170039 346926353 141942686 183394336 397717179 594213265 156837275 618934805 182207837 861324142 616596596 599082012 145752726 166016890 731595139 77082136 503547376 455527920 313543449 646900225 59086371 73952657 740146447 694503573 973607190 149448114 703105922 292006161 149044439 475433893 842116713 445531871 384265169 475174360 83829705 874468165 253977936 135842562 910122250 312924924 898891307 508072536 115828914 323750409 365069788 320542971 350355128 573424509 153304243 685189454 347796360 354218822 177696170 224174073 809199806 555258766 287238465 907691068 962941209 618986824 709833251 282618188 839824031 918672954 161569202 901136387 541145304 978043822 908149972 166995448 279312513 499465470 593875992 362429699 427502332 200135705 339854866 387163614 199355874 141921736 283448035 451544527 419275006 441106820 640924857 48077763 984155577 355955238 577832537 130982389 213703119 37252181 708446947 11156326 741129620 197618813 237137463 82278945 605992738 280581843 453604447 672901385 81968294 897200847 303277310 698813789 35337883 20429947 94927452 63694455 131781520 547696816 374599310 165008005 130532974 457898868 459993116 559504209 110632031 667579630 263631593 931023456 476547495 754707962 182606048 549966574 355476226 26837874 828440318 262906515 655870701 649149482 440835346 322654085 6017325 23012964 832545712 359259697 820109738 823872099 137093335 56802248 134041608 102382337 892772714 355447614 947684524 126244272 406581626 392115629 217094503 507057406 840169122 35867647 302687225 312647285 871503493 65514542 274084984 147260468 303639761 290012209 111992026 428037086 577406716 134953897 735152297 566171465 867331811 905983055 649459940 567954978 682134664 136602244 527535004 530389000 384967222 444515017 281369992 449975911 309474793 48268031 185868451 701053842 106935428 741838338 438167100 17499365 316191713 217142114 295833319 756846344 518352696 37458506 939392597 879351441 638108840 920726422 337450497 127430240 119780192 859381397 935128089 98567671 102447054 532316430 247761336 704106776 475631683 362940491 77691653 351021043 839901393 690241992 371168399 536759085 94824656 85883941 889552097 259507212 10659283 451297612 770911850 8098167 796228004 46260891 847841440 345407443 697351092 730098182 14603808 63019949 122938150 62077309 866097574 144972498 403761512 744190254 976040920 931639115 655172361 980781711 709267905 529367733 32859585 477846310 136988855 896523471 10709433 654992583 340116076 312857166 428522652 209554895 416702209 407877224 465581011 46623406 361877827 808979719 735783941 221565544 437923730 860794774 553616546 408447018 919504258 871331581 195805480 680392880 602469112 709172839 829703492 234730046 152105214 810134948 122893692 466439611 90560708 160622690 470535045 499277134 517278883 204014323 269228333 90378518 235933790 660263483 282812689 615723068 571949581 302863299 874725202 244282542 672104587 242453476 586930943 950680172 372934195 488326667 36129308 902364211 431599905 839732729 704264450 622778718 527747952 159999822 946558301 260946301 665031293 611641954 850370127 512287577 803750505 177097327 199875832 549238276 870038311 399896094 516734645 423307658 771104463 883505257 331541717 829414382 14688673 604660593 250897551 837462413 422658707 752806001 198865455 799635200 627906950 260798290 913324858 689022486 158426712 428559164 248791770 530567354 71710113 48491326 839914127 830307181 48618091 343396320 210455246 499334474 480495187 23030204 908814823 737752677 490787072 37439383 576880959 607824504 802998322 743055477 606802658 732323493 320342731 699801411 677690630 795814166 847040031 662811628 683128581 924855151 715507086 622986952 64825809 89628874 705792139 909110555 439809750 745900154 532425736 99500436 835062000 505298841 127935043 279631902 477270395 286859588 675986022 807338372 83765866 509440502 2191431 239243840 358581461 448477439 585384885 482880249 452608252 440260076 618891133 955199092 371551389 366492428 420303051 743476259 598966137 22697053 728236399 307685869 329279942 96717844 90997075 534981318 968351141 48974610 933469198 621947321 509752621 737726290 261284225 951623154 217096601 358675650 729986619 699005706 108992403 270533785 805225623 721246235 940710482 673052579 339299006 368810497 790409007 923537705 626336403 774712482 634669118 728630864 951837187 665064788 21494526 41206357 584549674 964638145 996467258 278872522 397773190 159969664 455584785 284327532 833860467 720722389 285313861 667096775 943276709 546303916 515049491 805238181 512733149 697408465 517788841 246924460 155550067 424019477 397137630 920386210 430258226 900124222 363736018 650387778 729977926 636738191 462745168 951934759 571463772 577507654 948751404 101624764 629572416 665101208 988792366 200460377 604119088 293972663 712983063 244597648 990391719 637384636 573466559 85589257 327193642 399887994 473834421 384724043 394609322 702481889 152771734 566064730 798663861 457371711 710451669 873134046 347644550 448693224 938265815 313772001 702032586 318678373 496730308 787999941 208314099 595897155 170640135 210960651 204828861 902935191 801384716 515296763 192152779 909415005 964056122 8349142 886428451 144994087 936301933 276591258 672410330 897581760 341152545 984147694 56853905 822631386 76533344 181357789 690551461 160699843 892756278 415191149 995540730 584438589 275576873 293301503 893143302 285429307 536195661 274324503 386137559 451267237 654725586 498015655 269677174 968138608 640183070 627717855 309358717 313869249 382789528 3763132 807117717 255837413 207645376 372180063 39434569 545116874 197417913 967014336 682810193 209271495 221358393 518664209 494982779 514444616 555600689 967550719 215533091 595824853 691465763 27564638 247337806 780132485 840066630 712666393 816820806 427903827 345791095 440165973 121069029 581702888 378603510 63777640 816491279 800304224 756545701 981469216 535198369 747241611 346553747 219258254 23999123 175011664 804348286 789689878 759045061 438494224 804193940 914828277 57701814 679088752 111033120 678516560 919387087 913807154 807051962 408410805 792466431 616557209 867740139 555518107 950767450 102532075 310798232 714279318 820344612 218073951 897338326 863857739 154060583 422750491 746615265 144581906 298647938 859302708 95951365 547815121 365805380 851052091 401112866 347257171 426053951 136540393 574662184 35894541 698698738 930990895 429581206 932017724 674684784 141714954 547721279 876928052 920434358 343172658 445831727 891460338 930979071 483641692 282835083 184675639 600405705 971760398 316965838 366794460 547174526 303095133 532636941 372910003 122980542 760703438 339946145 534189037 586871227 714853985 239354130 976439876 490010887 188762483 774807663 866911648 487452663 580428115 218602751 709745201 441182206 579797217 384535722 331207176 785148567 164940706 256148705 426944688 326806443 733269772 750009637 796729778 625577197 964882266 177641943 745340969 732350997 761662512 939698949 840661514 909235007 67574451 300922417 270620758 766612742 83187122 289979260 245928886 76079555 943685267 705197042 288419078 174643518 98628570 784931111 652087993 941726279 400479643 601328135 609774237 831150318 949690290 125153549 631678522 468417372 466004055 9484743 795962556 564050970 952168468 774620764 777071356 96815547 691075149 647080490 511419986 368155337 96562656 224353595 792781599 551330545 820237346 165387190 886214088 597468693 174887612 87272297 151270592 154910957 589685582 112787709 541186256 352609734 112571133 953081131 865662424 859892234 491054608 561442930 562092791 797433392 886179773 792935365 546148738 18160437 345827730 2479459 682135093 662876512 449002432 618651959 319310131 442982437 561244846 808208169 725948926 208557491 214965375 265594556 247338620 435295785 723425322 526763015 34527799 261436366 206382549 81433506 772231770 79640032 888961725 172361188 374675656 743073771 684364339 622874866 446825019 430002702 221357537 193507691 938401351 556002945 453670778 310004576 765042209 346377020 510232291 887283576 684779318 744328662 611690274 833682538 327216543 312226918 504048997 44859333 188584870 823506112 611847637 568945120 635631525 341336961 215441029 622155909 873500642 160124013 432606127 952526182 721150956 162135605 696551375 912567348 359179163 797228817 340183917 629367954 876847968 50829170 770833565 500233333 991349012 930886189 941536188 644870432 70402702 270906581 537022368 397385182 969175021 634486143 728073994 366500080 713344376 243885363 226019143 484483893 482688037 520026154 8187789 942303407 562381938 389567744 933079927 860205719 233320467 800166204 549754013 781613041 209655074 728747528 281623059 890959411 759759615 957139927 274720977 452786144 210239753 280840275 732013177 441842414 210626276 4925947 308387349 92158953 583289110 105848351 769274777 511582943 269555256 823149257 401980128 701763488 84972789 289361976 657886632 339549753 377734747 799933855 605760670 248221623 133615073 687412498 867082810 858399397 819628469 469661084 160923007 684113232 606782427 702399668 594691995 23900491 812433505 541999525 898359155 906633284 799116200 34554034 511060476 248664998 3079650 760321438 242768876 284188121 375443809 849276264 445504166 762062453 641990852 501512047 645028027 539216084 677622488 83065603 851706610 653255444 738180840 102287221 5775292 604836305 493644787 663580701 41063416 547350940 500859385 715673717 62931120 945072198 854570389 324390100 739594749 438416347 323750750 205187413 691973189 631725258 328574117 370931743 360339833 479034774 657808050 132789618 351351880 620917071 673290716 17166343 69425441 975619547 469043795 196859017 15094370 433321777 791906572 303847216 99724816 382609171 155253457 614179384 618095917 575841041 299989914 281193622 167890786 840308765 122927243 961002774 137720061 99401394 224114779 322357318 849851329 733419199 196346025 689422201 975412878 127432700 759413655 24662748 678764273 986651663 118430538 527809059 184104586 48326572 982377141 273116015 692305901 974767032 325425831 394275390 854944625 506185505 753814204 109517218 459507090 908826244 428238649 525786982 262941733 11087294 654741066 676748125 819973487 195022702 412518280 623585828 319314211 200490602 175070341 969418024 359689347 437223872 986064714 980078409 225262210 797323356 144683994 626173584 681612668 437277071 771009130 749991899 128785933 790944287 341392806 150089662 571257832 782211292 7431440 587259434 713878074 292748051 166243343 868973811 430766380 308722593 189044985 556197223 68629101 341417400 944868415 27296737 32999254 38033503 656509217 740833453 8891887 735906012 780214313 897506396 576088734 832289949 629276902 950918433 50746923 71801069 146268537 125605561 941085183 335253774 864486138 533064915 910310460 913123694 663908474 11152068 740121569 112707581 479727907 394311167 327921971 843776887 665731798 748338730 32726671 768189193 552684596 950522075 877010040 761784368 951626900 471084801 660198332 423248642 55007547 285531227 566897948 265900833 349901787 57786420 386653875 695189083 492479190 305318158 95620124 184660711 896149811 619483208 478087242 259092227 536451178 922134777 56001745 253682863 466714468 858655463 582773030 744304906 416452456 211562698 214015411 918829262 809649753 535939023 191395333 261143053 558306616 660591970 347393881 66521616 942191614 162319615 457996394 222780254 345135744 333269755 159473949 963669962 132249338 618649476 458605091 587018599 188408729 466556683 273878181 358922509 678884848 456039117 647545039 20335482 120473804 162801435 285496045 187930986 723867604 379819023 369799366 288658313 535076508 793289708 650849683 625552510 762263399 691447582 111335621 727694064 129173617 895137371 437446540 107650889 144852 284608091 367292832 535232148 966240807 288938211 29736110 189970541 266539315 617980433 203191735 155510904 557925450 55854956 807105748 111060322 637342140 271823334 760006407 927201044 231202736 569561177 245621031 440650628 387140659 990353951 474973443 314649626 317841309 871085831 105728381 793305778 815822411 95423027 536048726 343841667 774232771 312609087 980378630 713569603 505147629 534297005 415178600 118597580 80884021 536160803 810536579 415356312 914042763 618638983 786220289 784530228 451469676 561644503 558842417 678770168 510884846 129253391 384311118 72236094 346378586 756119233 754528338 433474299 625729903 87673835 200858357 828115215 289876483 488511181 904781356 331771208 50754750 421703686 36202832 493101168 17581146 352208548 85095975 768928638 910475292 298975780 521409610 605923982 575052419 964084025 476309477 589195336 117858098 341172657 193047473 836309293 972684452 859782025 499224359 810726333 389748827 846828641 340451072 592576165 938484129 620943811 245172250 795976391 439570873 133544425 453650222 356308463 2526657 89418470 902436577 769562338 982494456 409715524 121365270 891473995 279204531 982554946 635147236 351393841 124455538 536160886 821628395 566090626 146412022 403560652 948773455 542896949 779567879 16028142 927296813 76902751 886019199 352236161 262113465 13347277 320066433 732549772 654391123 212389698 206406116 32327882 900583621 689361252 524906618 651368745 307988271 714944443 109420648 319259203 626494381 433945138 425293539 308004992 815561942 844037606 254911911 320003863 44517036 625142617 365870887 133926875 210900654 872287226 319335607 516192111 39102186 393620987 256598053 937681086 812690612 841522240 991921102 318075392 998239290 247167228 435907886 452402083 265094960 97943981 408546064 878902891 744423160 130336685 686488482 242339258 44075055 151639847 732224456 52084136 360843138 25869843 258244422 112473213 696658938 281623180 158728792 769462050 390526630 80668480 307829060 94684587 897645788 632826864 355972615 567844909 248878540 647987242 227581856 640491115 111252878 651983637 744774973 632075031 201851174 296513258 120828043 495941457 927001598 909358510 563682625 352583400 472340088 528852910 663595762 818306254 50564792 51541497 658141546 529277385 544413820 798397658 856290385 409913235 414113246 399139495 277435141 93770471 289750699 461211325 841786418 98640899 217027007 689755425 182097539 823677514 629263613 287886058 939391278 303007615 795449334 563143975 556884685 32727612 640105843 334437929 670932056 808846855 997041883 500683251 438862419 989788139 526247044 37049718 224732595 511037167 274136198 594288184 304287997 677906020 991594189 466386701 396211967 980966957 234862582 676416661 259357422 1897003 581364489 731624742 205239091 695204331 929416152 845513858 471577522 980088744 931917359 505975805 120084207 705784256 465030576 515540726 323588095 744690764 844984926 369725504 347414770 887991461 655444779 968220052 167480233 434028535 280991466 722485240 741592076 443842323 320122743 693690395 70780394 109017805 222445968 560841136 331529951 282790432 566008089 961109338 111440141 455514492 152384679 788653521 818604859 685014192 131088997 36823404 883123836 835674239 151362975 754922849 927810079 176607785 591845297 817342217 410848760 320802464 854841472 861758945 178384755 411863888 792740381 213864446 261075895 589094354 841324526 457703416 479411615 995641236 296959885 414207292 324660469 466146790 505217464 365979700 950729017 948517602 113467373 807473535 635068139 872631893 188325079 614920007 678095179 974186023 752282623 252446863 475530918 12381601 554802942 897113364 513395379 190672211 988055005 520420905 389632932 542861381 934674439 314570667 245948256 895758180 77139059 427113704 967092739 989026230 701437263 329445484 597195740 907289980 139693842 107825349 880685887 571921183 979476030 848533330 975297593 793084338 584858650 89772967 456473226 992328554 330107811 328906239 207495331 337130869 656987002 443694304 327707844 848686236 887521987 504985130 411066287 752704837 872114352 236681093 588472152 21485045 490265136 575294508 270351364 418736226 461442557 681148831 471055391 256265394 750500082 135595679 995524994 91041976 111310566 949622771 140935519 20167265 643953892 109448252 601992745 307001735 150821195 573567555 963117836 316971898 230501896 548953811 434276712 182763029 359502829 558120619 457464904 494688756 648428066 355881641 6131210 866864152 4997992 734449716 718377637 605008538 262900596 835467902 567286956 541092552 151796589 280143884 294580468 792900057 204708786 988536891 993086761 8120225 18018045 552025412 152037085 869103080 321667478 718725365 193106840 518419123 961925977 531645459 638468585 50289883 27214682 500809487 335506647 105396197 233944030 764686700 682127972 619336565 140618510 59704943 168616267 226992991 584641462 571330079 970280321 210060361 409746670 50819808 413025570 773410345 358810558 781147085 984863739 45172627 398365033 715576070 528574206 859909523 4739328 661987404 822043068 772957329 51084632 259255312 144600699 44943470 623382911 224686170 735975480 753490680 98928673 421378889 599980390 780360162 916862634 274618181 130418088 553329019 557584405 712050383 558245248 820008864 718151763 462639611 454090436 1778432 34534553 20491675 278214923 843219462 205164071 455412262 758606636 919490715 493005413 981416520 574304846 375639953 877274556 338750040 810435597 914389233 136033175 416767083 653567824 61000892 588635212 631775329 316121929 865485889 814257264 476531638 544158815 875385294 719923245 227861138 372722840 552271991 424375308 457570291 311107392 330983690 299698490 536217867 854759181 453800758 552297406 545572344 929171926 692802290 377255378 132637338 431140014 503779264 916216572 228212309 269780613 564174937 271515887 733610299 332451849 442447081 826920349 279482494 782491504 612508651 209466699 550117908 824624696 838057175 229057652 683388603 784903040 106306065 299946770 422296826 358018202 774085491 523003758 968264358 477808080 657165027 619861694 895719791 515025322 533756075 107169946 947018408 703704875 656297663 894298371 288269768 102279766 967796500 699280593 73298339 141446433 56115631 710828720 812471203 722771080 230392103 107959789 12925260 220690163 53566947 79794970 715040227 962494567 142342384 62927067 204482893 480732994 679227313 775656621 197165817 5870230 185694010 863716622 332541657 490623259 169556239 984680228 55473799 751374564 297953735 495921812 662720319 713117592 640422002 560564005 553699344 903333608 700364674 392019537 651976776 741990122 509958824 351331015 313636299 730789154 378085324 648317662 21168718 747337782 471223273 722151502 842842624 290254673 546638326 937505080 914699757 817691822 239965348 140666387 282643882 403767251 99113192 755708085 280672212 878774767 787897845 447904624 15692593 252155164 363455275 554351355 283603274 893667125 244970554 729338882 398926137 591480861 816097492 738461055 761885397 851393782 358735488 829578384 109061520 730504774 733126379 547957020 347793967 494362329 84991328 669547474 618470704 424598498 980813971 987973599 211360166 899137577 481542919 821816818 399003706 876110912 238927032 297448927 532442440 549151126 125989763 135192023 750218245 182775313 566398634 462988322 946486291 641316938 378765516 444575608 202554816 84021089 192372762 464430485 811693861 277347545 102670091 768459535 496487746 301439823 369426570 297287747 16615535 981870021 596375202 521817459 159996220 832230179 948318023 438696262 657129582 35886733 23671629 348179573 9685833 668405164 386893789 407527962 967420602 60034751 799218629 835963941 750130162 752607393 616605127 682081150 89058872 848932961 248283101 343299358 75852826 229824676 546998040 132035337 544924063 31695232 759343617 574308201 601657035 613512172 705920710 622572587 33352168 990551716 438872688 479550187 910518029 351850512 862623321 500052666 530641823 611418007 165460696 329790932 522821570 151991337 174939446 4271826 926331021 192428072 142250411 258492985 334992175 447961962 275415389 281015790 214030626 272420811 464389076 262548942 579662153 682863628 301696833 800640265 637502045 836309968 2289408 311402342 380375330 267410378 490186030 774131126 766744046 668008443 873328706 765023729 192038309 914820330 942851766 338918352 399045793 600301258 146628064 677835594 441178071 787306896 236385838 980258819 440759385 987359064 792446944 627567914 327293486 870457373 19769765 740330375 853341843 701717333 152421494 921624486 695138089 127836856 520063347 558008599 969358653 683344323 96486306 865324156 316570510 140667735 268727058 968904993 650045806 55780527 910134667 456366624 343420904 575221778 144289437 425732847 665193978 212098573 473316352 132233939 101988186 313434841 553442742 128652973 899840998 733582467 38381810 946437469 102123986 224341014 567183666 624533451 398900767 977407712 294595205 155485775 124717048 14927857 983459819 466926148 59487124 843961165 99890446 268602883 422998917 976426288 371474277 294483428 543505584 78223882 172461045 640191319 457360002 829150955 817305071 265580670 261799176 81926342 705143408 506516306 232900260 827757383 632093280 863313467 802702895 3390025 926187579 880289209 148189469 840756719 912148400 153250644 393663318 916635046 393490508 539326575 108410879 422626169 318548264 626272093 95004582 158171591 957308159 648009483 278483913 107917073 404668555 33688273 490841762 523988404 834563191 45099065 659983066 815255354 121490388 819845690 701207183 140443409 386219013 261597221 868802630 296976554 337827925 519109613 339233009 251933773 583931596 420397833 876913458 688948997 431210903 155035919 669854154 286909373 704971649 956668024 648004221 225451719 892736593 364862298 208842221 779667285 971773439 773842659 611701504 91604496 901587537 14335237 837229163 841401943 336871661 898113275 103278710 811108705 753865044 208712259 60569000 5249871 6082286 832162745 828958399 623247974 565771582 795610192 396573613 227723643 229578469 335712713 830524504 197218346 55871747 242848599 885064958 387914937 826980598 648948299 856397812 956092961 636277286 976303907 176695332 649296964 451373988 826731373 386119605 731719240 626823615 249707463 708786545 509536937 835974558 108636568 388637650 995048855 246328217 152789701 706521159 264435237 740734753 772350200 58020210 536444287 684418726 499945925 483077953 513459921 300478678 614867118 995537194 437848850 474684733 692282937 669898462 657653987 136418516 42596661 857136514 885810374 867117769 589968316 863159258 325845700 22930916 475845240 515780610 655862352 367632984 280259873 603422884 753788048 461640256 55778065 147345845 77751014 414635838 228666394 86974937 840869305 584407471 472183745 173758975 869231832 289886631 274114427 208563226 422658904 953956510 852116820 840775772 588222282 973893598 100906773 649213810 565384471 355701989 258053787 24439349 853490877 125411897 922575758 176429248 890126062 796771873 584980996 283742315 537465337 962451113 522422652 259942447 846341606 185056849 329795548 142768346 93639064 536206680 937456024 450805139 420119802 470793778 678912258 965408999 126360486 914773518 817891559 193758563 421750968 285103552 533654184 184528640 120165062 88697059 228060718 805472937 147544791 541277927 981018701 696457707 296576124 485770230 444877962 299597411 283849581 464934816 249660501 253865001 354470319 190305275 440820743 533765749 262474390 258359239 615912786 377334307 30293086 108809697 512787254 378327546 298560176 812580053 837377162 269282885 917889658 304697722 315271936 331384517 188468366 730656783 492838271 819325173 749948713 17512890 112330234 4544270 166123591 416997131 704187724 776703860 329716295 229315293 428078975 381625136 847805849 427611152 766232340 400458480 746173279 322761293 67545175 21048465 982335049 930608385 188635406 599678858 913457785 151563312 670206872 812397312 423977306 854960230 157479685 312292207 623221105 310746670 924174868 150802916 553934209 660720752 74955149 882806295 863851195 214161139 735479887 414409883 824784953 905783408 681952737 900332827 302883883 911788127 871267616 50347344 931976063 97393611 728226817 915686805 277126240 994693629 494240996 388040988 927369327 545385674 44231835 460350904 514423849 489937164 702454741 902462339 52795876 292684383 566098811 576854351 505227032 372738573 403043705 184911938 910923286 70056011 782237289 987068467 932849910 389702950 463917968 725844097 935904318 596766775 673013353 351723586 251867250 566586245 157651087 658885899 594504489 712350976 530926077 2287539 192869008 197128943 505647664 864075505 713934104 82435473 528079040 978474029 178448167 642568635 533855255 351952065 592227020 59457032 946396507 866427057 675504098 473776970 21963915 681092839 264104711 908134145 374753357 426232428 502630247 562813975 269357057 447093595 918182439 508960308 169984728 12755823 732103156 216869732 389433476 124003890 456387699 473094098 30163744 15463658 183105090 441687545 211953374 855380609 687707555 140563398 174779835 47568042 452301955 385075981 301413260 653011005 562723788 879067090 833949268 151883650 667728844 343165113 480143323 513429591 8759270 733750930 246828784 783778465 23001753 35871793 888367212 24725860 279699888 682170476 873447376 153055571 885984492 93800622 636168976 191458800 179790338 254118753 809510311 541023686 384504176 638063223 329024952 187492872 664299213 578223990 210700283 269782443 317669962 21734825 923944059 134456401 696455466 546489429 821643854 418131594 80735781 831672410 438248190 984411426 222128496 680383476 462273326 554754242 522934804 371184356 42686804 285279976 12426480 350767155 728260085 513381333 795139737 899755312 531706912 661901710 84403670 1888486 992104668 220097199 837694454 478633895 658827216 18052739 232059894 75578924 58419021 104463361 409040483 274264026 525459614 667190114 853521189 615113057 740102412 370276451 575541129 572247507 149111394 649871089 682395043 401063584 136224371 676810309 342364232 313926137 318951210 650838311 17623852 740099791 998695583 558347856 110455314 79466095 815609408 102717819 465304973 528136820 10592718 41376083 342394986 125178217 304767761 575199078 18306165 675248546 5253426 671586718 36354051 941970829 384239435 977566359 604471289 115778122 686406728 15106084 961693157 598471833 336735006 155369466 292092552 205743676 833312257 624298959 255712249 310594463 19896722 589785313 51308454 820381607 372904068 416460340 522379153 621293424 981888805 950478622 817971827 681503797 674835136 335656 309590899 486175153 428854667 465239596 939766471 375541697 169911011 763352738 411197510 936328098 668064278 897294902 667789787 486956774 353697198 792089989 980175649 888496975 153726584 803666417 897760936 299319070 553335243 352789861 617957945 819568367 420162167 370613072 265953408 560632019 164441409 819986713 320809290 175677022 506849309 688302105 996834891 666313929 467991279 355417097 814827866 273125508 506334426 787534235 376379595 121557046 491283046 537901611 273648733 879309125 912556223 210189032 128994308 335306361 193912900 704897758 387437501 23792484 902000699 374937436 205484842 823840098 484846312 932084375 931671701 127546999 182194753 503853722 65130253 461665404 340272897 232498785 700017660 62403994 116049271 903235852 344676593 212011199 880574752 921136346 357772055 797665224 195224454 697570328 709392272 771162243 918876536 741893123 124385110 872103804 367625738 906159580 921270509 109511432 71353631 372404804 381555960 768779670 516016148 757683368 655220986 295058090 402359452 705462013 932866937 172784266 427753040 759447206 198113778 276868005 221215243 444430815 226242710 218312281 234570383 432663957 212994616 525465879 446157670 613486550 443457181 233691275 821839726 260978572 407341161 834497763 574274058 954612604 116669613 525435663 254957557 689649996 669093220 92456248 889388492 988311828 346259324 798971118 915617585 66524865 938737340 839555470 251653806 507790176 703165160 234660764 990711001 469688858 445389301 98277814 395645136 669891783 841280328 655947102 46717974 310964812 819044003 84659023 556597875 220097161 586060796 894119827 671917873 528443481 39120204 688437824 450020205 744156974 755057384 919481575 372891619 183958546 961595270 708775986 793674180 266775862 674970114 919812172 939326066 458123548 201932640 810796703 17402244 779034300 552546671 128128144 937911818 985393772 890776012 476310349 273941697 535100402 336252036 880365703 902917699 769993164 649104254 584082620 688503968 286190985 215630043 879426410 353486285 693303684 161691404 550263375 292820415 397781621 179213940 355321023 754038027 216550247 949252698 354154265 899920764 368055969 467442033 436058800 272733656 87483859 304606756 590133933 261804912 863278688 848272262 375455468 859009378 672258140 772871851 991396968 453691970 516715393 310102237 782811563 536660197 217103686 514592544 437588927 458796653 911188937 206685098 679326324 234467348 829149631 579451816 718467089 242587459 647425958 188157552 794841112 753721063 757602312 938832017 391520598 169506925 851650711 84703574 369387104 830164228 258360472 30596315 340057032 671826510 292511408 652226712 781119288 322032749 617793202 820605666 721889089 847880926 321685882 586309377 867411816 397323824 670413062 693079769 543113082 955371574 955054587 40218182 372879757 142086765 316425500 37286179 562832283 909308960 22716426 456514628 946284309 137716228 329502232 45069437 751333460 347559341 964491228 997198823 946436719 440599071 929354116 109407451 897191370 409139937 375318139 605400186 511121333 84369313 967831117 662021063 864223976 660737682 984466155 247758864 285503072 609173109 973975451 915708356 838985320 57171478 721363856 697431606 310551084 836659862 939954820 10742559 152968087 145298920 436685106 547800287 310805414 397633758 328496732 614232823 943659250 247408168 584207947 984573944 276459429 193194025 372435544 155696891 797742956 375939772 790138177 355321540 803959262 18675636 858976848 759269512 393863402 162744360 813729266 131302026 207694416 779326955 884913983 71676331 187570837 649010036 678933632 878413213 330277513 503069662 835369571 478385494 358960341 349850978 977374983 726735753 12572019 541017148 124790832 866179174 82732650 701872933 133135141 139289085 270247390 392734634 222923899 22590443 49724188 934518019 187796415 293644696 245772034 615318233 970032328 417701957 868359674 355765936 287932993 230372694 844297893 800680077 871324781 891536936 631546297 199392933 814902307 430843244 862080418 52026133 976106464 673896252 195785937 255277127 911721919 114226329 7361099 259279563 256991712 972027846 518009030 388555070 223793852 928472646 254383268 274417298 498922789 554459311 290149847 974689668 60604241 282156733 649574111 379688742 771672668 630920853 27158580 146146015 280309165 193736269 431997821 961605112 114324520 139996941 862231638 446943776 881530745 757319192 219180216 704483807 749413164 940034558 913138840 380210743 536266097 919378881 698035197 860870468 429293651 31227143 339638506 16297978 556444607 171820032 152064672 109988051 960177562 115550788 649053843 598476775 75173052 521359749 401285213 43708849 434834444 385571073 5140134 720628481 721498599 632607864 208216407 639558958 794284954 468751426 450087728 281277190 108026760 123085817 306948628 909850635 445920998 955174573 574007293 86706735 650229967 890545545 220519352 960960993 337302885 151804073 846568643 129544099 601398736 981182804 962242247 731347159 976915250 333469627 997079341 545166602 295552343 314893573 180559793 600831805 535563658 306812539 312952972 221382383 954006221 639483331 312712759 492070253 893864620 934102154 418460648 88783898 300100544 970252385 116790458 370822432 542509986 871865403 516188770 100869797 478250966 25054229 351709609 238440520 33441092 334503698 528922811 132017477 554380858 738710282 843683995 789141295 153662988 26402038 702650618 134878116 98683363 131464856 159625351 154279540 867280413 589114957 485225729 15472926 485824143 628130070 578183078 385886151 386422660 245248550 351824918 460917689 523672903 948595795 401474422 545967873 982234707 224015748 278907166 525199067 43339611 334928306 279523592 136102646 485951841 839894129 446664837 958717233 663733998 327078225 633275653 692159757 209840109 795871753 936449691 524527831 402622548 698729516 446730959 601934391 589156438 653213049 149266213 414609065 777256658 567248594 170617558 412131275 218064218 31420485 628750628 155646803 224321894 183671482 314705925 511789167 692526609 655968904 743702998 835194322 971079962 852262051 205259329 257547017 712457355 579139278 135618068 580442524 632443050 750618488 715622156 976143930 774328406 136995529 247031757 859002964 543527688 731310314 44835117 597337964 96368476 654928707 876872935 884727247 991838676 682839386 250131655 307400968 319729242 450301993 490564879 532363667 57230913 762894439 553387243 68961951 372321501 895127644 168205659 256706412 812328994 879240857 440076216 14966862 990134208 32524007 382061606 20387119 635741017 740560324 721057007 379894187 200166754 186104927 961981719 149659329 221906148 103349045 645433096 248389691 716127707 417317086 919122658 812624793 217686734 843386001 103499240 599055821 788823372 893610143 596921459 443910799 614007586 22406848 776238633 38137671 343401047 61276716 618829529 187024539 912789761 256099178 835282724 539663496 735651328 704522031 434199136 575681265 631193423 18801488 312071487 959793039 677948513 991277376 791317161 8597875 315270484 96120199 263840637 543260411 434007426 189931337 747994117 73641931 292060494 375701304 406779748 125587888 444155024 881134983 477916045 440589065 805722645 829271245 440910716 671263944 127150205 340009023 926315945 708912720 955768482 540309232 31744481 713627991 381570523 106779436 59719943 301190487 501899643 867185831 415633310 597540977 570297532 611046242 881576191 151501608 615758710 74302806 661239086 838788446 827513163 574388223 75218114 918303950 651615296 566393432 195763486 832347457 892375707 238265409 928230362 173146306 562573264 172612018 680828000 87038297 572106021 653358788 796637469 520991906 534418705 343440194 498876280 220524372 597138079 879818542 258969753 934948036 172658045 385446763 872000439 650947254 100613187 863407937 237787685 109631152 34746580 628528164 393844133 89828222 549100050 607049975 140949410 236965723 323405788 616042664 103221435 617806718 895055497 983783599 129120621 15351342 770669778 196148912 919576989 399717271 316912160 658956884 477426513 392437442 709257662 839802620 837923275 871154332 256338159 754624590 881137621 796508135 53932454 893989941 559869946 874197826 446904374 4100090 745897223 828620294 850675722 187650737 834727471 434456856 235241183 26110966 564658857 703941398 131708844 353681235 145159431 159976379 874825120 700847563 38556767 697330723 981630524 754129467 477652955 794773677 583198499 128883936 72769219 879924118 185324547 14678730 639634435 607844915 894567548 520181507 477725615 258171228 856379086 109878866 950774419 374307446 140791993 586371141 483141861 319638680 86848542 2622156 862093545 536279491 484546890 879726734 665316920 633885219 338822784 672862339 224317810 873730924 718374390 116920769 659602345 477138110 570388927 481747795 268346315 82849912 474707167 849923651 432838555 433100474 77964209 346493294 218241568 248683061 622515741 60689521 960162858 585021177 999433557 55946519 602880416 465182244 835192272 911809649 81557764 994137908 303253476 735432931 28867889 796304627 983815248 228893970 691821092 448472269 195652013 13634044 507361475 524736730 346373957 929392004 863148555 512005427 926996696 224356613 654934453 960404771 217258013 971769549 408268319 199918789 977012731 785817231 612830672 251005308 776351417 911289406 834317181 260509069 608942065 183617241 805047429 140362383 83080714 59754941 79406568 676083060 781675983 440956186 249062337 326022620 869694890 623063718 30486166 793413239 409209031 974354613 745763373 839661640 140728267 383616663 857810080 487624613 589760560 632687506 339795959 351044761 576553204 212181113 371957169 768757403 190333803 573514021 401572728 523330058 536544863 796632538 468040208 183410652 385996182 158397081 350932023 688997578 312727063 989587724 255294300 803468648 761885110 418097559 971063677 892723571 595846974 105910868 937855629 510048252 153162923 176185776 970984318 898182256 371466048 398416194 355964095 635942435 188206821 209301865 282276650 160889742 701472940 344129112 20044846 151372584 63891493 308165961 291894122 736509155 603561700 952038320 330779295 209265861 478567568 178588051 451228261 836291267 6126993 461793745 887827210 78654974 240092431 280931435 986166996 102426506 733634163 658342077 527894938 479833718 383192449 462952223 516382787 685228323 431253955 293418715 333200931 608416310 517899957 324917908 885652925 324988246 373760730 981951205 970800620 429702793 424112580 957400150 799833852 784183148 242044209 507331154 916680501 295395520 462404468 808581740 151967912 693616488 414586545 643146915 590394476 229093607 300596767 650050484 197228153 327880760 197360407 359559629 424670030 898053164 229538897 135192269 649067754 264149400 351918689 513096199 425156955 747101818 921348639 451928569 734201678 976686274 631940700 715414135 780360931 225435078 959118570 292401527 621984106 253846946 125867930 116826421 789646521 562821516 980857652 403153648 695755188 554717362 53086084 82969619 322159959 670404621 385418127 654308882 109594923 493137428 283037008 326610632 255913937 468511032 352849377 89183291 104135591 463597530 865319509 828339098 91761939 712929596 694198659 939427789 707341907 623045547 952658751 558273658 760026717 892816090 594189882 943170969 796141848 972984812 983935555 662314229 51718771 100417958 595850353 809535714 294169746 205417588 328477350 345424644 256314264 53963791 642512714 682722989 6679315 66846455 967335232 811258099 136380550 352971688 886091350 225591544 966904993 415077943 205917987 997280755 749836508 859025677 451601924 528639201 679404509 232221559 986536020 127836148 433965184 296555926 961241257 899313511 283910060 934305708 567841211 300397655 907631569 322421549 769930725 745852444 658696574 178980858 991247667 628883503 833467506 471721768 622868368 327098895 924616426 394794507 168927893 344945917 837442756 383110338 879866652 14331181 209700346 946676219 592090389 396455149 782373423 710358480 426767891 80508697 947818724 696316642 768171998 368557690 516438822 538333987 33926183 970012665 511137963 72664591 107926911 913869043 664394449 543704103 899341135 753910182 905232772 906835394 194217841 667196432 546640074 885323387 938714149 348506759 563276103 964448137 176974998 240940287 714802988 935609547 963042965 547373986 709081073 163241111 422436666 848823264 546221689 812802779 618972142 336733545 750433062 69209000 267821444 607079031 911695929 257114945 288653740 460683068 93413350 538197245 177572527 670671764 38339113 844327579 88772314 967232086 904557904 727314443 108381894 754903222 270952087 426099017 145057046 54891199 972622308 173785525 84898963 475028449 703017325 411355914 574816941 919407196 987624072 137016042 537975285 42575607 505708066 65719992 454180203 895491034 178807967 862596674 785419437 309645238 497778874 289403434 29047038 438146122 573431207 227394564 618520757 646237127 753148188 313714943 248923493 958814188 71687114 665918763 371136342 32850620 246018959 133444578 185921541 733731078 915803474 500639563 770173220 606640635 681540463 893019856 279796855 397546586 556227917 8739634 728941059 652042429 371771703 723238531 329152263 627793477 126053586 257034808 912909466 22950776 213305367 261059448 750784042 425256529 918281297 379936428 145957618 112265236 284398632 580903180 522972683 428804648 768192268 245271479 910591248 77643358 879528700 837007593 448268611 367063965 159892258 269097384 792126907 343180754 646987509 616686879 376533576 296535594 595119927 989567511 139688119 773682464 415816206 523620344 101022579 284541153 428494915 810323264 988398128 403740225 383202568 730764376 925091153 621854613 723439923 567274042 561413274 899125705 864649926 619968155 431077688 653020822 597555800 376118119 408679596 726261680 899614288 206664796 674820731 370987003 274735507 132052561 516283876 662295757 703699137 109092478 32779906 426168008 366579728 499603520 593700388 803059910 250924399 479507786 381220903 701049830 216795886 312876364 202331826 265980430 914183909 806152500 313166472 194357587 41144187 455662496 21393464 389499461 223409958 212437824 284858198 803135403 23796365 614521892 710987173 341383038 627283711 668312549 547206004 36376449 208732207 837979661 380386648 264926356 935685703 412353718 57719534 749528306 974037883 145257458 343562964 95665200 412787054 142779715 481168285 774871545 599680583 467462827 461947509 822285072 360185511 617125350 821899876 439833082 735930057 74022623 447579488 840335534 194981893 912554691 224495802 572240225 68470787 499209327 150893203 845828526 428415458 658464129 175712785 771234038 478516694 724530277 237096538 633951797 253740799 684752731 874764287 657968327 316882048 727223086 187081081 778745198 508167637 778147238 837986059 581973004 949252136 523618978 364103554 609324237 807040517 234478113 23089003 260124695 628089160 663437728 276175661 871588483 358990432 867942385 441365708 755124354 81341871 108895574 374134105 600100381 262106745 974182579 994333353 606448415 746684744 751459257 286196992 451230204 481979461 752791954 596919408 294030186 33241780 74755999 25917978 175178746 123941021 644556945 365740063 307816374 426627181 677943452 629393962 696516844 328639914 747834947 882699648 76164734 75068621 376668712 717280641 155649927 462012902 254600518 796433235 225728616 493436293 428676929 994498364 180606674 275413035 366505664 530072935 4024308 894304085 168582605 692405673 958034341 499651957 303287387 672318090 385394373 405812115 952426788 647074121 281642322 461324741 203178711 850257139 374025306 379963752 855518687 10142316 192470138 418194051 560129467 430192391 947352755 820392259 865097246 646173074 296198481 494967120 969941554 384702969 239643595 123654576 159649305 811347811 324874119 587321303 5882701 467620952 161426928 953468576 873284790 102779404 248984669 272047974 260692775 683269568 377160197 839944036 582160919 881842081 164111000 6024574 648555915 971039276 880415018 708951220 292458322 393769512 924120288 662415043 15768194 477883176 546545159 207726573 158330742 689344031 325732628 358060967 761020687 580920137 948182494 619022082 715568059 875291335 397300762 891303261 774916409 267525903 736499996 646976929 137749659 826868989 822229379 599053289 447099371 733812381 208541576 251245224 407317765 356919689 131428577 665699510 509675470 829573147 415594378 296941875 918285117 459712252 689337470 182515718 869901379 307829540 175543330 917950196 217309883 594709134 578170430 580912598 218621329 546585892 378539149 606469979 286006682 101845440 526329536 658178461 354681685 750197143 528774450 747153078 334099906 885957170 478920617 952745856 938346532 737017822 215293546 654283510 903013417 755423231 130802917 434777438 683833347 891232007 586552264 566600117 623847252 817831569 711398007 500435270 189900299 400380177 388034940 995943460 796256035 576410254 52931091 807529528 357859118 437964800 980337920 167312756 934106886 784426637 508209179 606711688 431765144 926100810 383542111 36242990 496699659 764239439 169758392 572281974 301727691 740040820 714259 95031738 985756314 622197576 164366737 276480766 896430561 347316392 110974825 35782215 255006239 822200987 770828654 265731952 711159567 867850405 901770637 417642915 18406585 811459953 474047998 900582484 690527959 903832148 969258467 82030714 697271720 522405821 344801511 190310960 776998979 711623911 452860957 24773497 155971765 917257245 863932901 821339033 537030082 6877378 419467255 5991125 619377102 653897646 375997198 387011257 47596349 105852249 960016132 965263610 337757818 38672647 471636902 857213409 651578881 783429211 588836032 256367846 274809092 424057486 32299388 604682244 619819898 87416568 835982817 841966329 130602877 833432820 525512700 192622806 246177321 990901330 889426859 679136323 198994792 604134638 18772428 724464659 506471390 339964011 385373147 69461222 976600325 335913249 833168466 667007975 103947225 379168683 488272898 406808148 634274612 692756460 208696182 7398523 533532144 765906083 3625359 752673287 757499546 111637863 122956140 360521594 155616159 717788009 13062465 261762238 52534598 107580960 34111581 492992775 357889991 769836525 760436508 868276512 630147801 651296263 13188852 714871198 513888046 670644612 578389052 100925103 966131484 188974944 361143192 322241100 311364783 82937173 115610291 450232481 930911064 149725109 16375265 937788552 190726056 236048076 397134206 444604456 911522825 308981002 14019110 937002669 692465807 691817061 605297020 87173533 627020149 719745905 133784719 470068917 248701796 344877197 367706636 487735278 893736007 227346199 603034841 499074753 226992769 22953788 879422760 785389048 661768760 471984593 408026509 170622252 106323688 724104715 229307582 633779331 554340036 659187019 887494897 195591687 12602496 564432908 498722152 9342774 996628037 133693344 672927191 53287141 572126673 704260780 119627776 954109811 218575888 193710133 586432449 955415531 514664349 564681203 851234313 133031642 820768687 475716930 253575383 753524444 199896898 400711887 58441125 504152420 497707511 604166237 632314087 350436793 860434801 990682458 63307565 404491841 1107175 437997066 892461796 754558342 22343713 520985883 146887548 257891074 992282674 215824862 426865668 217527776 454940520 232830211 275210956 730811123 780244864 572430760 107303728 715163920 94756580 191206802 193815688 868245601 484538057 388512769 614760758 936538454 471538708 724299343 85163002 798331623 529429936 434714734 171833104 457075492 831049992 639174708 53133325 437222049 449976221 650590536 190743602 776804141 291005798 581106457 736292563 810642344 996935098 612734806 238950671 414744889 977176577 173876897 638733182 774195917 732942209 188646782 216432794 104366883 826369700 747725632 243510835 364041587 456925839 933943144 933752854 86261232 720827131 541559499 745545880 927287429 883956945 882324141 420120102 915904032 757046329 563021741 223699416 327953727 19915702 488613461 119966754 14156920 910132250 549032562 657117950 450743398 382306965 645648075 416135079 894626577 287076302 95498088 469018457 427201051 641294660 838181871 800990693 2723453 810888870 944065053 252318871 638820645 909156472 916676618 112975040 814618454 479167123 648550032 275092844 829307218 27930876 191166292 407474275 152054508 210302194 412511587 303185083 354957010 935626454 260425839 781722369 441923702 398292922 538099116 244318252 168954141 220022449 202174984 238346811 936180417 43405759 37619591 583036251 66451809 419488368 159130210 99187714 595273936 55104060 691227865 360500616 768613600 373529662 121199008 491953222 817277722 99605743 362092876 656294572 373171438 655903094 58535304 377479097 668399335 933260408 485828956 311503060 990935308 516332407 541770298 431260865 651115421 169551884 239999300 184324263 416660294 608103649 647349860 762431707 648962332 792316633 395652004 828316853 406012249 781917289 567239292 978840664 261244840 613968029 582402958 112576462 168842361 724083121 989622651 113160913 132160258 214578441 944463664 779136661 582387988 850823330 349889886 484368964 82253502 847194654 700231052 246811076 47159036 950463548 934415720 243408561 351353825 876887275 809205203 825929124 121225719 159633027 50994863 306548675 898067463 581608778 121599477 665897063 868157652 499717557 773897122 857301733 186645687 555445422 878942946 481318933 944451194 171298046 82897534 553045309 302858501 220479518 597348876 644642280 369377452 814087985 403690155 913605029 852549028 161771947 975467944 615996120 155913774 656762396 779140736 296760113 17088951 244798352 131925487 949239889 585662305 238806958 455759247 120700392 270383472 738016378 99668897 214763585 360040896 353824750 931423680 237987337 438528029 668027063 808473992 13518887 339362155 446113000 159199700 835831810 487748606 111221276 20595630 918405988 866252610 42005386 372635914 989042897 578123415 576256635 644240116 527604612 173792082 56017770 811957551 707505998 253654156 29661585 467052203 962506835 357053853 390986644 112004873 863784528 823110546 832568971 68067410 342703594 516814550 371444358 494855440 509111095 834299828 245742739 198758402 367335925 815190084 222281967 800030550 762307105 385824086 504086347 508521722 757871075 303799204 232249890 813728705 158898429 387745864 628407026 321322041 3836563 511714618 475747685 768565899 10870166 314323918 321674876 981711313 2508437 368822576 931222856 556301428 299827379 398985057 38064196 220762594 705453252 187531950 833184728 952410893 453939774 273403857 18994353 637969726 409065802 388953869 62121326 290021285 348124317 670073264 230075399 565182412 809323365 511899076 145646199 648344187 642650846 120802604 769020604 617747553 698347512 587679025 733977859 359836269 849746682 690342446 294237007 801773964 448713862 180934079 608508258 144321015 375989132 307336041 550936357 229800836 588025978 329283393 432094834 337100263 83426925 443171242 167554100 220658810 496468276 289634333 567758104 84896069 604915580 935306519 310217453 877197533 938834349 971961055 755818515 931987898 2964922 677070319 263108626 92645155 645703999 665201479 216809612 217008091 305184266 517906206 358729441 987416303 81909845 710211069 507459735 767776014 710147453 857485735 764095907 491333207 428009362 122131404 544020225 421639794 596387898 977490585 724385174 639570474 728395620 594441438 126782774 113695304 37567351 616577185 543473149 888550689 629703111 473393138 214094944 999235330 633179998 960794084 756025858 330254152 127749365 607174897 640697491 892099704 227805788 536930873 6645323 724731177 725369778 32328446 885217682 591171813 136841881 477826275 752367674 119572283 446301219 606028778 314313752 699576565 64383781 489978704 453846092 620984898 826674897 296108497 994391855 836587890 502594805 796010179 179100557 836428109 12140127 363894358 149129084 896572465 60460369 671067793 873138843 895736630 669036037 942029989 307337813 615435443 993281324 696273561 759819179 596744165 32686773 720454158 166285323 627361417 641830865 601013766 602868944 723169734 279261360 272000324 278662487 102896433 925393848 516159919 503442789 88445260 411717950 697118078 604376587 717472962 869180900 654996994 115818811 154385462 983435432 655836024 261691762 888767543 801245559 927419671 92794931 967890110 150885881 781762423 911778880 635221593 980319412 121214421 161679960 823238277 641321743 553976153 249168885 478852638 120622471 314154251 687275804 457688594 855258679 270444374 679504211 911060798 986739255 618891789 836861342 39138703 995091821 186600714 144773803 499879977 625245093 673321650 590807263 222277438 473233864 926232646 287015532 937366735 147249174 438614333 569611566 761660097 163694957 937928061 909921612 737328280 318262091 361941343 483913772 868537108 179146957 160985224 386652207 798500583 992874993 62555849 200758787 652512449 290835675 9048003 422520543 999648516 346290795 538748614 624382174 317977839 712065256 281318735 937009796 98423341 456554505 821304623 133013638 227507208 598433720 706505658 400973758 914926680 325472538 237601315 645575614 529124042 558900672 90426294 121070495 72118517 427646689 62102500 81930292 170495035 190830600 357803650 820053742 613352604 666922438 910126925 376321676 818999903 670736799 762785785 987072836 718442638 586701377 326964140 283705211 328307796 628260215 546759481 553297088 624264372 629871227 109244416 391642283 320305528 265314275 257966572 414628465 559061947 294071152 541238092 87106079 731950020 636047071 299360606 744557426 159357822 955431389 891141 331129830 416030142 203201027 97930851 188068182 301355068 555394568 229435664 632827578 648832642 765550423 843135522 168490352 486235447 468191098 903305145 183400912 100416894 803203230 411753546 78258417 502200264 870692233 988308811 274943216 553218236 648969023 850788485 273117623 95269792 586087598 605865068 1536222 31123788 881042072 295368922 20289194 520796760 380993666 69574351 769776952 593058313 75485575 366815586 521934487 763281947 200059131 536245370 361796677 550760799 123077284 733639578 785502753 995591392 810261927 887734431 580387585 353468841 509033049 324004137 906896441 938807412 820138073 971850991 753721972 493016858 821068189 569810466 763124573 266083602 636394487 995052611 545662752 762381364 421969618 247999692 303965464 903170762 888272284 241019558 707058890 344208791 216365709 379262515 250874910 94852686 169857513 872001625 670954393 75351583 697662443 614626220 626899227 412243699 616976471 181904221 309066442 633812283 743285162 26392263 812314766 706928434 929302744 375915267 503833748 485738315 911263735 87363835 938567624 904056381 230634504 504956401 351402498 854303325 694947550 408954544 470762560 863814945 388516068 23691658 459056559 46033395 138619586 876178531 375629202 173137661 786323353 408013910 584073510 94983646 156474923 874237303 417740626 452471146 199603042 637727421 905819015 709879002 942561918 69481886 138158467 917339315 34869911 991838860 30217309 445145151 14149850 373516671 749519699 872156166 594099235 138307070 719585852 453599584 983658428 230022633 694341535 592800433 4401302 699116118 966021020 666398742 782301373 54959868 36638927 913105713 883875736 132406212 798658956 280200743 743301257 764505359 834805315 585427799 359751932 105634608 588917771 108406646 8100157 820023061 56638580 131135454 437788541 586662012 471202865 283211177 507317541 997109196 95385998 446158502 115296378 780013558 890970367 568969732 161968825 891305988 213389287 717449870 663086043 787565683 576005392 92445602 864351876 273662965 826366365 534741653 492179775 82314555 584134115 295830585 978968114 810702454 314521860 653990232 998446408 964750258 833649499 497503617 907372981 436549525 587123857 262297632 256595831 339014392 858728592 254302414 715741340 476884442 554445581 68405573 680156713 532670546 962007561 579962249 756547956 20128993 38908948 903289229 719485746 483839200 785047547 767348259 453238633 364310125 53712191 306051147 775562028 833099562 390106368 879719053 451652070 842017062 224601031 591627379 366943822 551376154 185229779 763127778 873022041 47562414 70926808 949593213 14222161 315201995 117638709 130065840 476564810 587449812 217561497 739302984 263324363 31615456 380588503 662945941 615364592 517128311 296907493 590586981 620489710 297499181 879114319 867949111 324907876 243950850 314096121 4793983 427007492 104671829 991635505 641293087 717242818 641181282 954686702 382904783 368758659 399717577 948475797 532695659 875514088 73753430 920158830 555711494 359857330 667309039 684199354 117111723 772489079 302491332 190171841 368308125 347843825 759600616 962509971 81345337 793993374 293904012 260549103 931617280 24228738 730693936 439993616 991185497 656893653 543656265 83730354 526578484 92715237 219285849 246196815 192980208 899114196 490354828 762418376 186901261 345044790 132927031 825556529 784749759 318878964 797271390 97002341 975953344 125577948 410710558 601355955 640497975 236617339 266861045 85696297 161556312 149541713 873567848 837397460 397216082 80642837 962998584 634715242 392981361 829022680 628239521 671164443 331251446 413154629 695428214 251180938 889974487 306097177 731831535 280982692 596487954 382100316 775172452 239865877 30676244 135519344 128492524 454334471 40396851 663982427 275926323 228837928 319642058 335701007 568382973 39591770 281441535 543844748 470371240 496464964 752790558 769244603 241125288 669080157 201732448 955087087 618011881 524003148 633791459 145643222 299740768 30865675 819477041 137535489 922058164 647763958 287208093 549411715 464688675 871844247 348859877 357898565 840706971 312264242 481114175 863657583 749970469 465570974 421362322 48163153 298785793 751711934 528477555 772513094 110859602 283113844 216586015 483406647 858442104 776265909 980790375 760856535 575991365 551654408 208663951 929375540 549834737 138007681 101866738 902861913 596475316 472937662 791067610 119984717 785322985 610843643 94714629 236926235 996161930 914377585 185244568 335691637 117655474 800077980 969631094 365383520 438670161 263722597 331581542 358260511 660288668 764654485 16613338 499675255 672075263 154334562 36635532 350788937 628122264 172217571 759590747 765219620 112297133 392078483 770072387 925248785 857171836 898741463 930852542 835392053 416938976 725222510 34248570 970232498 734231966 712715003 289178723 497664821 618923403 719750261 933929290 291865898 303163916 206445683 690814338 38235794 196839078 295418680 751252780 933567342 827043585 646241360 812355202 988444960 680261543 833563499 577701090 853083707 359496950 656270451 528908195 90084334 727349577 644217447 986368539 41978873 249337348 758468949 68066894 475288479 921319706 462536545 35636620 724771250 356949373 633464906 9486221 432488531 835554469 952934740 531564184 76820381 516378680 233515132 111713250 465538451 506225520 158450570 711195199 632439628 135178555 505690612 59477064 671889299 731735337 371438808 762392667 713554220 428072901 763792063 781427390 485254729 471179756 260908436 848764723 412502819 130045941 452492492 798061932 365896686 191443733 185872901 777339970 509776414 180056023 156754763 679554644 469927426 862910303 513508042 167655298 841881955 66217985 769336115 799816926 430998139 14478247 33624558 236474813 897015055 299613272 222129509 515073880 308148282 255662020 848132924 216825193 669072732 227287107 51992744 190968098 475902404 779172815 453764526 316153224 931106512 872119184 514245326 790417863 34908624 433863802 630582795 477080971 967164830 881835984 194147896 600517323 30618924 611968470 563798954 323878013 520491234 618437283 790387675 668335098 797789489 607623545 389357575 761509520 475476758 701954811 10301191 815058903 970228019 882608632 381986099 898220635 984026480 762353264 794410737 129480038 160690642 661203256 68575776 321257774 561562565 101319946 116546890 704606072 837436285 556089744 138267422 740802431 262001505 55960403 238640825 108372865 225377634 867760415 995351256 462550365 797070449 355112411 812436237 820382568 422135184 693879424 283178109 38457901 824370823 846554599 551778654 386751958 964333058 190854643 630690484 930998418 524614226 40461832 340028719 118185398 814423323 490575401 569098689 889400787 228576911 541741534 752364507 427153513 321726360 899544681 877411154 496905318 327735664 728674302 515134598 185922252 654213907 161650446 856804054 49729704 20907008 462864601 293615078 642540164 843876620 481176578 20929809 200534407 287548433 122164546 246832602 939612480 642422393 328314413 691387921 884633171 219812279 22245690 281307164 287440138 788800164 696887887 537832090 352787066 830615203 919909308 410863706 131727483 791860934 423911902 642749247 214095595 307085629 649700236 807916288 712415671 610755071 504984384 557787701 650752178 27966308 69331998 822060524 165876987 978666463 404500293 884206357 409996491 682691638 351734884 562301190 664886924 118277751 674560721 767264129 66331323 331140753 341765371 966599470 531698501 397108715 777531207 602151153 719621471 679960252 686497533 392598118 526174631 849827008 76097859 929315067 869290250 464505357 787186582 365775856 738790542 433981537 488525624 492862347 938996437 8897773 464390558 714417092 111997982 864856963 245912512 551098397 684161806 806444136 776059880 162814937 151073254 287250364 364472047 154489126 680136520 755391309 643053017 310162997 618635877 57453308 43119643 632051291 760547052 579561656 378794577 5771682 374987263 718306881 260850986 43582535 341660197 433890291 753648971 958394690 651795424 801299386 838326630 970965558 76153301 866279780 577706221 440958080 590199108 665816056 216920316 681686557 712318672 835793904 170510975 513643257 39542921 905878941 685483999 379794870 446330564 525182686 917475534 489386233 604934208 357403472 329485207 211727978 681373138 825061397 233001268 921353709 705238996 831215691 886600218 215238247 654250420 220843493 263745445 936720956 708419074 102395698 193756421 6309731 436748973 24349414 367835244 585088234 629190935 760904630 30402220 906546551 455551326 428102063 139362665 518151994 650338317 384024512 60534116 836060628 229224041 110913325 378036915 597947822 885569228 135186337 701520527 813449614 214249580 638051596 532324889 292063696 567721471 526585683 717740020 128793352 474977215 157061569 824282115 543916105 53655663 95499684 879036929 97353493 815076579 14933887 481732975 921247537 118574522 214443467 878628332 878063826 728695025 530282367 722448413 176386905 110454088 16505077 43554263 98943018 724022730 150130184 497712531 918113205 403517415 642988741 982600921 423314746 418341643 669765731 583992694 192500172 169977953 9714233 450511727 628409083 867275654 106690642 793262260 208047357 212471008 658336738 694552138 368178940 812897811 575544121 339469960 763682770 17090023 874750929 572012237 731639602 990540234 498147903 294651817 189254436 982327787 339907828 861881700 129989882 307043977 13385792 365988824 429415070 872513069 404619742 617766522 653422301 334077377 942514058 189203295 648856792 733071648 681087935 814607211 401213751 871912097 354236517 458360996 975191455 601530827 721172822 713603053 673954678 52512210 14154535 608415633 172516213 186795025 64026108 1074155 619204234 103421794 549207666 937974587 12938186 155084036 670242556 622004519 174779550 574094013 19912818 801936153 147671023 563408991 389943240 812163097 951741387 908488723 766333557 430273262 440075686 515883017 622404805 44239812 225351476 970981271 786095371 299534084 891193192 994916679 444561180 255230393 349860470 884650354 946524711 79541517 189241451 651616246 45446133 116805819 15136353 812662078 969857122 553782233 530208387 154615020 660883557 479042924 161908901 35915367 902160215 793864652 963184570 926565818 10217842 245526898 748888081 628625725 444957473 999723966 814018221 607462703 23860752 154192682 814404405 426407794 30086835 802456520 85176209 339036743 346869483 546496726 283508998 792988959 858592699 885687335 713919259 706454161 211293332 495023876 292116191 495936055 167240348 103371701 763822253 202664193 644529486 861880578 468414225 213718045 140495487 552401824 605240823 368214821 859141245 173263229 450404827 54005707 977726 770786854 841402613 682902510 924464158 714712994 672207580 458771607 35106919 412264421 922377277 789701609 72006205 994801448 135255513 976378980 726880315 409830515 524233738 492951003 138517389 84434320 659420646 555352057 625177352 173509693 420678726 984808191 724822400 26734634 168770649 803437397 336751951 152662112 406091195 243457172 470389975 657939254 551444812 121149910 979907060 52740976 911621302 123865179 995805627 28670067 533390745 260366646 564989779 887599164 463840383 723293370 785832496 396809858 679572717 301665090 769162926 397618141 555840868 2216869 312604867 632867189 993183352 425419080 712628671 782323136 419722522 624911812 551764370 857056291 525564901 749220573 7521661 859926587 966958180 564300026 456910527 249768526 642537884 285138709 570112678 558833366 823159097 549488332 923420404 875571713 576427280 523572161 885877516 390849680 620803126 969118871 386293204 739676064 28664704 261067047 326176011 453116923 208690272 320866674 475270905 2134089 65006197 473805356 213330037 790715045 983203698 321638919 530785361 835562380 600248061 138147338 766632330 788658248 995586521 340394092 766719540 549168686 722560354 896020168 567770678 727355730 691673482 371076471 255464643 110687242 97760054 173736396 310683031 439344489 162025307 240164343 313776323 304834195 522896893 132046681 499588231 713470540 273643068 788485699 981862818 511222922 7111247 742693272 430941944 286144962 155325672 784502653 85711053 374687468 868059892 765878690 800159125 989768339 197062884 652822794 857099812 351554398 916542721 626181500 963432381 701045193 163543198 621082982 545775457 741029520 726176656 687541739 183186308 579397843 340949729 567345861 373474513 945673797 14839785 332593682 81712911 697215189 659145731 734108798 524679376 456362081 480562067 344586425 943012394 793135909 788766220 869536319 451305938 305016916 795941156 297666791 386995914 497740767 843337677 313221257 498087069 128694722 434277293 397296962 825806433 944968257 744453060 938371998 927460907 397061049 161370571 336541297 671917051 486230902 769806789 583225317 153324022 267801694 848155635 414658565 718376557 12746676 743204210 523645773 710880472 505470112 199764495 86764412 421339127 971869857 621681606 570037871 815333817 820388720 35031523 409473374 332137855 85557649 510966403 918002929 916980150 711576896 460060507 29457554 989471639 580419788 286298402 982370345 241497121 309584934 705965926 897678205 116392186 187620994 640747217 807314482 825905461 325003059 557503318 867501525 49305080 780744122 239596009 641098698 252664912 439440301 874929748 723172541 659164351 553756906 747933520 448531664 250583549 854875842 479428172 161668557 708703791 111486909 213204889 620820083 319588690 25275229 670035162 728727295 177563796 182522167 120420050 549022665 93750600 27531921 321013536 66237128 415982019 578707446 848049469 484564372 842207365 963095285 496832681 156847415 816338146 767056322 719927535 416525347 805085520 437527526 796092430 251507361 125171180 450993051 164415184 466789906 70139164 15399025 50210275 612533823 777464979 214976520 872880642 459032500 662377869 210767095 352696083 954607515 918423434 732319860 583202090 73596070 803724324 906571944 152061057 8173659 2366863 243487804 656107326 213062271 209621142 402488074 658227966 908269192 890109965 638522434 29103102 198689618 608374716 641725639 26064557 311071552 618959996 91633183 373094874 748069372 591093551 571217478 916597277 244275935 414124448 850700919 868871571 994832556 81867528 568267857 977780265 950590154 118935935 356698221 313376328 840175237 262741824 564713299 169039542 311314119 63348733 385847245 582000143 442933395 375587180 746971260 258996655 47740399 994297958 897122225 413140478 862037114 830073243 81454665 883359380 592233145 717175540 812490282 961472007 636417340 805437259 565065251 837487704 13912675 799713228 925331842 269228653 208554869 418772161 185369726 102652967 945411319 494209777 657142633 832592438 672826239 280686300 560872855 187349476 89397718 56123939 628449708 735707638 871777198 126657055 610763021 853924869 379593935 997227836 448130244 989432805 76397100 301778588 169643973 621980451 804200004 482638091 902838280 507174627 472835870 261848368 648388722 335209831 198573160 51265646 543148046 16475849 847113365 376952402 790722933 745459110 378373175 173607228 10814392 445152238 308121393 436910633 135821310 395013970 611377966 680753972 459380139 262514153 818731321 885851605 461899229 76299369 322576563 550564029 165858901 29012690 169916020 991348460 318151618 25436297 335755421 990457925 766803099 788783893 814862842 640244172 30868394 560545100 819185583 817113851 753198023 128555308 134609463 565471975 73622969 907529785 791359095 306702007 689073056 652806700 482932333 636590915 580288493 876069804 78157702 373145658 960440458 801534373 37593663 829186012 165516837 239854763 549114384 379080517 66419482 344685717 710862463 367255201 897133566 486136471 649851979 698011614 191634935 702994765 158561970 483796289 988468683 26245294 505182426 910037489 356269340 524542425 313533633 388487450 409391869 228948516 675538177 513621617 145762866 594809107 32303793 774008558 788120801 894628264 160419115 323492259 600990927 137524716 246328691 878608081 156204425 28954309 631790523 351965062 379213247 9661910 642013518 988182665 570565981 766776161 586803499 903899675 549184710 744241238 904216368 15147587 462807101 771994488 826721798 249662714 997479113 668783361 85433005 668856229 791886218 659470783 544342785 100751623 272598916 874781666 397333391 308925002 734581476 585503845 833924832 128549897 429209619 95818441 559298498 274052165 403423646 533185385 650374973 929119231 795747189 936417293 914990477 975337991 492069805 208431312 574952247 259394822 362286770 82611863 158431891 748645594 833659674 262108116 562481943 645877075 429786367 594779526 955573111 840412588 976910596 909091970 306646375 281411945 591661030 725519108 690706422 172766870 861461016 545440265 9201667 632681586 752918287 869050789 42408214 897559001 194287599 152116637 277721355 855601388 689086209 679562866 993879947 950224288 543348408 919237689 936543959 954205760 281408811 621644977 375540254 989150746 310310892 607209961 145192469 338064495 402228997 527767821 1723328 249733854 881222308 686105328 216388388 81772209 311900979 907289357 136222287 378849405 772566197 890717141 300344755 191735185 931566857 60804826 942387938 279808419 27939508 200531898 143643874 544603280 135091176 271313833 23855 82986032 114787839 407174672 332091350 472464565 879804422 432498760 28579170 107425846 196599431 95366115 442911122 745223157 831075997 210000401 979883691 99145450 184428231 661086203 267192548 438775903 393258971 746299806 440883912 544207087 335270326 164201949 13396661 272100065 309226279 802084880 163189647 771701028 786701235 698801 311343646 439797206 865717972 164038784 351994156 680832505 530335190 200900045 92049452 738767092 577772707 229571388 220007790 654817574 144987774 181183987 260696091 565667362 858041626 49117330 786494386 872679287 749875640 462605262 942031744 158185514 258805487 824511926 398106717 101064996 523459022 571885056 62307561 931093422 180172318 164901650 903860131 624716194 909109852 269534620 163737511 302021324 961455337 232870406 702267737 305736724 272727872 964153885 753495657 488670800 711836041 250979780 539274025 636351307 259776551 842312965 504190323 926772315 628419162 649524314 399027800 95053941 407146824 340462646 761780331 265819150 925627146 233784453 923308394 874425924 681184774 433467049 915427343 186862792 536403989 500075981 875696508 434703090 590733975 420119367 525490019 737571009 208512946 738818377 550101790 321864613 670838856 530403164 399038578 298175058 577096780 828671896 939349796 908418518 366892241 580452867 292314807 882658407 713040614 137403483 100308431 358788776 990951845 865738891 111886416 140679170 306648264 100649920 960896578 56251891 109071292 48363618 394388846 833266180 548685266 541387275 931399147 137475787 735891886 310946526 678790788 947111664 46879548 82816164 988323430 380440914 600990906 884286456 384174962 825031826 729042388 826225273 637669061 447112637 378253888 381744798 275842499 536682153 11021982 496431830 765422960 198056457 217302924 156868194 766970955 676594619 717623081 91387089 119643212 693534739 15102860 739153771 374036245 13255295 772356752 159870750 248308857 675297018 230289773 487856993 952251651 928400711 669990418 671529139 5837830 962665649 815685336 820982004 773643067 413583595 175397363 154644383 50508244 817830604 894047904 562636577 191046399 613733225 382235360 889017620 479746313 554463013 122313727 633963055 943921858 698762964 253423634 431439634 56087375 73979527 409660639 712435198 310549808 734718773 90579308 859426689 161010113 131886332 600001959 461042779 184639358 260033817 865144640 205525148 642477967 371033094 90954280 62261474 575678253 632473918 662691667 975154340 45324723 798168093 772976990 318452846 489672365 607218406 286207886 472858044 64228349 322822902 452138170 418325669 416468796 958471866 621974982 538790684 142216490 524061504 922265780 850337564 651310898 959581111 373264123 981906660 510996618 372723664 629980076 28604572 430899542 21402493 39676730 907921327 329739808 138541639 649880485 195945845 996309183 134054844 715502006 488522595 882377775 148539743 340691464 795024033 154911287 738195264 962606164 707580981 765868488 553027701 981233783 966795899 567511877 440427262 955353198 795622234 65569252 361646462 486157926 38019187 66149247 383544272 153348168 957164274 771897319 708755737 307157255 787212354 670873862 834313049 864024756 92858942 890058475 665112809 502302896 970989256 645280117 216488482 151997120 506054115 781762997 259316548 623365419 689545520 930047748 766099207 225269803 381411130 633075776 487726023 737653884 381427303 81497559 312783103 694641480 625991544 431456617 919976315 629615220 805924849 740925863 760930532 627115608 258566336 881061043 213923967 539319230 249678051 159160671 106095244 676279789 327843604 952602516 728911206 271055548 257687866 675701703 120840304 662734806 943688499 224819838 688585766 670790321 139825338 780789233 177407958 563184030 307931389 335505592 98121975 176243079 589439563 988568312 77434241 818318221 881138730 750005640 633706438 835302165 331958547 478358440 906244405 122245455 333296598 759015419 356720681 536351102 59145603 708067145 3788203 130806633 622467715 634089146 74024718 819475267 507538903 125684482 726294779 838275988 551290767 415808514 783728694 840956469 996266133 127495964 931054622 919287287 376898536 791868739 933592967 318023390 669018529 752686839 859710832 603427257 782791793 892196128 693192903 963232621 371710244 99581342 396162539 962171805 969465273 597194896 649968017 517368411 946065137 914447480 946457743 554039246 547654501 705259414 517124507 366966812 607678594 922289862 460367802 821356939 941677822 532409675 269127797 525942954 188785964 879176373 278417019 468334341 75627927 92010263 765869858 625156040 57101298 270830504 272279704 264131858 183738142 704199711 558536176 964676869 932465874 75774086 49074592 55284517 939495902 467584058 240491540 34502626 889512829 895721658 177989309 976439520 210828844 285013840 168770250 201628630 801911048 540224835 423946581 13964315 676843769 382009877 152938490 871262981 319070383 95972377 131859813 677233968 314434575 656019228 428903740 989830053 381136228 33603357 752446472 595233333 904170055 757958639 742747058 664478582 142385658 131251445 996534508 865071782 564994965 229237764 318428987 602482426 581525018 436950039 344390 782338855 865248264 168417658 433269384 325508254 608659706 221422958 448843291 323769995 495239892 949721289 290699447 168224624 771084323 135117410 384423957 954688500 882146551 546240518 150033685 452217463 150542543 531899186 399542681 73815036 742567977 841187721 140299071 504628849 568736858 826199882 39120996 556270997 124276004 925856470 657923078 450632161 404516182 454172792 744021881 883945340 342865227 896253306 399072203 602200719 516345702 616345316 955131500 240781979 394848753 989077051 838382001 399195864 753934244 456114800 472717133 812362279 346385187 994084988 969074526 366302465 381673576 38011711 596862656 465445656 331642554 125536974 870724495 6128126 299777639 93232157 660678610 551217028 518367337 930614175 458862202 407391461 288798571 470264786 608395138 167996483 869922177 521684855 479561092 64619255 80235065 296559027 866221426 369055895 730097668 808606233 858525691 991939583 941895534 243918464 643363729 82429212 190236920 202078326 36954102 256394145 483437184 348669919 616065949 767238584 480748137 341885575 109840744 404371449 847045307 104906447 751699473 694390760 327747617 153433482 148857370 352680821 149569392 638033774 769095998 813115645 924042545 761364197 868671206 876625237 232789093 583730857 772335914 158289556 964882922 619577444 200109638 399382200 387511509 404115520 571327075 685613204 232974443 941433834 633464515 86382275 823689770 142200177 385999457 914232085 7724169 258445478 928760547 736855511 109038924 86452389 797312324 110243051 990900853 194082683 261894161 885585308 839029531 611012860 688041237 692795804 261755467 196260414 398728367 874016707 447373249 327829947 28339406 194266606 25638582 456904805 716997882 627020083 970153004 670761302 127162606 21401997 646085318 768823798 434832553 781351242 65028861 671323764 923729662 2153806 103646064 599818788 528841226 722529984 7710680 854117968 509160647 830174309 898983262 368093356 362078732 314807616 530055302 368418333 782368431 737524783 628278940 623479711 894274528 389060608 586821418 824499996 648512959 155187385 498276008 914884183 382645338 945034291 58750510 26878440 696017429 194662864 928874720 784316649 567849404 22981770 612413025 217909901 784260943 783140556 122959521 956368668 131607091 641998915 838240809 621359517 283243493 501966779 41249957 597052245 888983263 30276109 597792846 269574826 631981448 896825579 413150510 731754417 754652610 104700569 126218594 86434455 989074414 625049897 515084947 7254688 668677835 959312958 229146759 457829587 751364844 691305101 607262876 390700274 736097191 99461272 744548090 182379332 972386446 378376811 996674889 648875091 973763153 272254773 57605721 814627342 159364679 7513316 691895563 184878471 171643358 213088975 144562176 889720395 395201260 563967335 443838731 263976940 51221779 964751635 521607445 444572975 472101564 348126425 25676167 66917308 155640091 174036787 844431308 599820684 906444665 90170812 987938455 753813141 489571979 78283347 320577505 311600936 366258345 693983717 946110789 17074856 609180438 782552119 757573914 832261000 2682475 459156677 705526361 829539156 795840609 519224701 915583876 13638278 156078994 739607102 498539856 892649550 547355449 931892533 725494393 547780398 239256494 896272310 966208760 908407821 576191282 855300463 378612471 442042614 375537730 915625622 180562422 108171309 721697541 374332195 785696202 408652179 324831933 961379117 821267843 467714849 325946075 951181632 106683112 957049687 644601610 710054836 65909585 820255667 72540402 959417845 297387510 963260455 517317497 687663651 932432280 552589883 212032421 668762265 193409843 702814436 733717259 608218854 7835655 13920305 248009100 902006992 529236783 423615178 779240031 863808158 566944772 231018765 163753287 608508367 554859656 972815828 258324497 105958280 67358325 570584013 278110838 849868452 36887124 172652935 482283437 537628244 896513960 821600441 760575411 536131458 692239604 317376190 386987454 287437051 928048552 223963293 248075086 996264086 421103625 842949212 376546653 286341759 252131113 308807400 580299521 944358737 242942201 994073174 339617726 432091975 446889667 843109963 626795320 277649956 56280403 169625892 170287571 494634104 231232606 68151858 198208606 244510528 436523537 371610043 112151606 952641317 554430235 234456141 954473067 72429754 827706615 526811441 327966087 755251978 508986202 619738968 963533499 385727315 232120985 193131125 128245353 281749443 553136923 841757084 212033947 348842338 540378136 344004630 811269130 169627938 549956534 563503458 5063291 428081619 17666389 816047536 674855922 620355037 202791329 567018877 842994576 826218939 17462215 945755404 604112974 479937841 448460039 302389548 459199151 670064077 220129616 81797784 793652811 326270842 327094183 44062845 237018934 349908793 388750208 85905580 9837220 76267052 446073008 278391872 214427441 159627930 74526962 76113645 195915667 5868070 425376806 27425433 965548896 525129203 513729775 942535767 26670207 507205876 425617850 294631128 519423622 848624160 230618092 602783293 529945251 738792311 939698299 788849064 260205968 38468579 495060882 530690512 320380006 797877803 756242984 868913322 360067255 238905235 634888639 655783136 228215872 573805926 284554478 934753787 109623667 588694615 231301225 943997437 274281698 715589628 609766512 387067861 727240651 680672693 609725853 871407946 860096959 75277964 739376434 35843187 42819740 738996673 168145415 836155946 118256069 617724398 838436368 514711179 899188308 887382403 978920856 139724748 837144513 445196387 717606267 466772342 856516450 906382432 70437468 691152432 940032899 376365130 287421768 817375137 113551777 192571921 732244764 308059764 624071022 607148628 394356903 890471140 20207671 497872442 846497627 264204465 515783578 745514571 501627369 230176963 250106295 74978925 989153486 77822726 251291604 443628993 731003281 385769085 160769258 961401942 142517736 743264688 793448233 64433615 242703810 610318806 554572281 271963950 605942962 215596467 589782542 198227289 19752328 578349857 310765884 362017415 379436066 290421278 750078067 355741962 411368857 811144459 295472746 764274796 574314 790744979 21634558 283213447 662580828 5229541 772784294 87671412 43937937 524078957 933547054 746204645 425587700 98745705 896922788 350416434 8633463 289215449 7295333 737930437 280851471 339383805 56413224 905231313 282588627 957359796 549581293 949657165 993330751 123103290 339984316 222723672 821249914 393708951 837244892 538022284 811362669 486664473 238429281 240953389 160596585 889377920 356151368 204895777 592909084 834573880 698065136 960310570 997536236 860454302 477356327 162862311 745257315 620000234 255173139 162126883 370507073 109638069 999160858 79635483 366364640 642409381 571010541 372702033 453327597 562107630 544108070 431056830 818264804 210318380 746392831 711337791 31079881 31678498 763592961 820450839 293104840 814617835 905580582 133015988 455195341 189688180 721367240 612624169 456451013 142052909 826391494 864293156 762073667 284368514 207322214 478107486 915309922 675840223 250249724 579258843 940870449 63387627 586565884 583198568 2360693 177492067 43961921 319015457 456969277 25263085 146203908 791249642 536837534 651992686 610433883 955998262 547429052 486296129 512408311 90624864 467183282 548754757 66086506 979636205 606292334 313546186 256671869 972924361 593659314 12504164 498960064 977310788 172232688 773091538 832860953 584688423 670870009 746405614 92399092 654928946 373626058 684788462 129592113 55916992 867326705 87386268 591140578 581418815 553812526 435463256 29946132 726484050 246162075 2622376 381795443 87643764 676324295 309730725 396127456 73891648 737712609 297229404 103755420 838206332 662269326 926324334 829587283 880989364 783887142 890843245 905687716 975051509 328668081 794803870 501526314 391848642 321356330 617422602 913530453 504301242 138363711 744914099 699759278 85426214 632149299 316578262 844551523 703688044 722760896 699399132 906282678 311549527 165849717 388617916 35867914 121338013 182614804 247557650 805712351 314275311 133192678 211099088 628472172 929764939 275280466 652860469 744658001 357974881 73806356 770887233 469725790 627913020 694343526 935900585 503079136 848627815 873870596 534872835 75954467 122286341 158420068 836565115 859711958 432825570 938978995 245261884 542805328 398944056 202487616 721892597 30079463 192915309 643363039 59227866 579297309 223050490 834001186 362379281 444427678 83809548 43591920 19110931 748238053 961099460 727274573 42256971 90367982 460843635 325659160 328002017 729467649 467399479 31232362 408501409 751508567 972528920 666006307 76502784 810005131 410484596 124161720 460808791 717749420 482883573 324500731 179057965 350981044 521002741 763138277 600073316 647302212 763175725 665886562 604986126 850320728 46614066 709641523 747545572 742131633 932579047 170324293 935220869 711001812 87921107 305659799 510390260 404285772 576682700 316649923 539513478 628718735 474213961 329440454 198281120 125255184 319004842 510448547 395713982 509748931 701443952 419074084 668786710 779203589 606114579 418753220 798647176 180623362 771058838 653243810 278280823 450773039 865296887 809084850 75325732 502904672 731426091 483664610 268722250 470474999 349239529 589581321 99289552 907575437 542793627 643310219 487117244 157948426 642217608 50042197 444695435 5847572 13729972 832571152 752417198 772587407 66114369 352490662 446910483 952554802 492693677 266601788 635904061 868522651 585248904 751727079 693901642 502270398 156757324 390031401 839578203 215041715 450916460 817099414 341199794 790627115 101900815 146393269 398962228 622213570 899652579 563128634 109989322 147587423 955336834 947100810 157961031 156181206 34682026 234235022 210172367 219756808 116533607 523317770 86203733 176862985 973224549 581488570 493279068 518561300 627556988 195606345 56774365 508829812 336188120 945689624 480592819 379796839 472836166 55891029 878733854 123763325 265623775 142544145 971883147 201825810 928111623 3398765 907909844 474925282 645515769 890409733 165291364 178690476 233050153 260420614 617729922 258423968 285163361 638090778 66642144 189288555 716288456 817402279 548634189 628354569 157213848 721647059 254194183 745731873 293529581 352902901 625540010 10714729 874947823 5166597 788458147 192204743 263750826 713120282 212509753 324278768 362443289 495641225 182574886 270345120 545355185 382498704 11107478 264599773 865690876 677614495 580465594 520832912 870678904 41933377 8358515 692273306 953496863 343130061 549519946 392195434 560900045 591794327 282900234 180980951 992373492 857097382 591373749 629251103 923050483 880007982 518377224 322548992 601637487 316916615 779453444 556227431 399306978 123196031 241505225 45383663 47026055 466503296 211544814 484240303 572101881 859784373 480934456 878819592 142301713 803905019 537650342 95120407 686755024 408581168 869283767 207451883 275639761 369719619 729580736 102205462 759566042 881382863 853733085 988102960 77758789 300068713 137560488 635094139 342557742 454376177 487309998 773280076 271882245 814289674 244337070 28175720 892238231 928288177 549708396 345018272 985989833 967886171 685548810 539472875 663670310 46315050 32607546 98149408 410585422 794874417 363044457 907538811 573313004 279387031 927553160 128088772 279801373 126354196 860765934 70559519 820894500 202521669 778029513 27716315 274267813 660521366 368327989 562395266 461384417 20102921 984213154 554203035 205347193 882990412 143494414 856330944 215992399 600280663 328120680 666867203 204326636 665593308 880881811 775916955 366744493 54180516 818297905 835760363 979391655 306452377 191766684 950879683 600965239 878825059 515184266 447412790 827635805 953615529 35363696 186640172 852406783 520448481 528247431 485486644 701018820 127579907 756786367 539797037 935471836 925737004 162343164 590720452 457039857 506733898 850682092 121291067 930335068 38432909 390042289 28080573 449823152 548635999 217010402 165946655 914541602 971516251 693816867 251741725 944812842 942211511 502397950 606547168 8426162 474708095 343047739 989843607 562117393 729510121 916583343 137877081 967183812 56224642 536381777 93245095 728394848 856240396 485774122 897949384 276212873 163344454 876470020 283927371 738898807 879867237 989326617 481645762 607539196 91549652 464080281 536591519 633078793 109539879 154441909 962158638 59939578 540798711 499556594 73284524 748496943 418851785 159120408 905488945 65301431 299769099 841880413 688907256 212933092 595669671 741666685 236728101 142693144 5896361 580594428 190539341 62458783 736837404 215080944 483194861 905414132 655432499 110098642 840869483 925527084 779445666 34518304 357579135 944971920 603318046 460669580 750899442 983256398 316743150 706092955 50375498 474648795 283683969 348028523 459274701 75352068 774722482 853215969 155276413 260674985 612841083 440107630 113788542 295148018 382137592 622028634 826362337 558178652 616901718 791049399 492601812 55745407 553621481 427313228 790772655 670163832 414332121 773827616 753068008 159240682 292432256 633577713 272514182 785672895 866434326 946953741 434420607 8197267 993542608 175396778 191223208 315576855 756012341 90791486 137862679 941985436 210996066 502334519 568872815 7030717 688525281 818281750 480074108 638133004 299800109 150134835 316306077 395809563 931229815 567554561 547398309 266407771 189803116 981532711 306098017 169848454 199443687 276131053 753811133 897041696 667031617 309160996 907620632 423585463 870329678 929805095 207625721 846330474 89828707 456897820 634014048 271624951 571401846 974080328 945852670 708905567 278937109 170747680 115988520 87837155 141707646 936341923 721710559 688441660 400765484 464042336 543965965 484856350 543300561 832882475 303468637 813350416 267955648 101898328 752798084 718233726 155698825 244575107 361789892 493548609 36131004 940687077 138354711 582031645 161259297 115575911 172599987 665706426 504771477 339934175 625594864 20299627 520338604 167805420 695788558 274689319 442863090 30678420 924287908 843715649 736101948 789581877 576237103 36327154 244765531 116574348 172442013 240856502 405779809 114657310 190114152 883245868 792371676 359811928 905489616 639048295 171109106 652209167 507456556 703222093 571306604 793888723 42431477 513959564 693410955 426828217 174549438 365576994 583606669 652072699 541090663 511744601 185601505 134078371 98106753 60111277 126214484 117477876 880331361 751915309 632987158 187802782 495639106 538510665 635447660 476361197 55967354 342079475 108183950 701450286 834086520 41160354 889625023 990446781 734931711 926293045 149341845 276772131 739443735 505819374 633843095 94675659 524895839 828804628 569650895 68454335 180493093 172305395 633646464 459511456 258160266 607517182 814903591 232228375 610073433 942299872 273167589 211833652 457413365 52971317 780590900 872320995 989925066 874580820 687715249 40449570 47833628 309238084 518569464 145001984 82009322 675553364 828762587 370418919 933076029 247035519 573823811 407888931 874169385 945978330 846387476 610491846 207353369 367520199 984773664 874225552 229837675 233693102 122538331 915159136 306133349 557014524 652073638 995042631 507958356 290414617 812106769 970464833 681908485 116704538 15227086 452576998 904275237 50428807 633144292 262285320 182873149 768277759 908667662 208214858 213404006 385424461 60759896 247288454 848834905 691420389 227279708 831204371 92486048 421233647 877886122 169213659 97097064 641574005 458063262 745789910 395741610 941388174 59732768 417078382 252365661 811175150 8073190 690859031 506783867 334206982 635021303 562557007 659213992 971529924 940948684 699025659 864661 716021618 747545169 837729659 673896063 446473112 468411785 17681791 704009286 986545250 169572847 589702741 561497991 952596848 31702900 618190433 346997931 47904252 217161200 531299466 203662798 41991491 904836775 762221465 794845446 161243692 637333776 444250340 8203408 14937947 673070101 7870816 843007920 256236372 480970649 452516592 552823602 629986869 943136603 311497531 972681658 699443213 377107686 799436000 858817207 951588027 267828601 958894779 168025808 524643097 613075621 718816407 30469368 152481985 273019085 179143931 594938169 417068756 793729261 324157412 724456640 756683260 916385027 307727498 126265221 399732228 734403218 247967769 266409122 741603658 840445186 432971649 241779830 843843751 619726478 191148873 516404190 901255702 417557183 758217860 169939526 227004480 246311541 823995033 435708090 851739443 553784970 760337995 237532082 69531746 909892046 618580888 349985586 633402339 859429118 129368089 173771424 164020149 894510643 839054869 310152689 734427615 393954971 294983756 967265704 604096993 466370242 260786528 359710717 495637759 901970723 564481063 595411719 961053813 471996139 248367081 6112758 932953400 141552156 102050256 402557762 123711329 318524021 512029147 560121158 488340799 554089705 900250103 427688608 373352512 827282608 153736941 812684814 894500551 245814511 33640226 661476477 348435454 922096746 332365722 781916347 169163027 131454006 500087058 106995747 501521792 909738633 322522447 564311325 517521487 279916347 402354507 112172716 53555523 439661564 379143602 862805003 96364603 563455285 618715990 274142241 814908163 833804144 37795157 129149618 345774238 534238698 591516079 876727608 287233418 424146017 164497481 553837209 434615497 646134841 156403650 682915751 158891854 983485552 876021250 766623245 181097766 969174958 914403609 726524571 517024998 190175851 142580775 426448563 137657024 328659767 218622381 861546997 541956459 463400234 519531378 270991337 647760064 800189699 270148514 734228944 53196820 679245338 120010661 108352163 843752032 837644359 628093470 237945204 670461678 120575770 457532565 362598138 547601884 846074009 836823715 458624645 370083099 188769733 437639093 748520229 849943618 172835348 907751486 575573940 623379240 365717746 321204019 502908224 758507340 168895634 774654988 396991283 387818478 571115010 739583663 546389830 870049351 44621681 739940840 275502847 232079698 196948952 960297651 458415785 986662170 917224458 28563034 296101773 731514553 609716559 298432080 873491112 617347295 18387186 229331739 818453037 36328874 185577969 732234611 349937299 808947087 362328440 665541703 102220381 69425831 259010862 692337750 836434032 156899968 812954243 859414510 28830719 843671671 569334859 375033517 281777588 909867131 919595581 969522098 592490822 460052404 506635135 524369599 861673189 626358232 137243132 950360184 504856892 16429803 774844411 681486850 986946716 166191267 376867708 300262255 154535679 928690018 267728895 397649044 565264145 461488345 277982722 313708753 319760134 738510450 326771697 864135859 198562747 576365439 651590621 33598731 47526285 713988556 683304551 903222772 676611072 549519018 1093716 908458945 504588861 768813933 823817188 189691846 272320310 307706440 702224333 762888164 168857427 860285521 553804446 518348687 597874134 458980399 121276841 354270026 800986277 22986778 992417215 374768621 914677356 414867595 511201120 648718191 790026849 112437584 553852557 127720765 93275893 944436316 100170415 838542143 418991826 209452753 109884661 666748889 319470840 376666033 200344848 851176750 477473343 817921647 566845539 105565817 353421095 558639215 903128545 454933692 360130365 515441352 770557637 443826415 834833408 830791861 989567990 649380783 940109687 546401749 822528304 583455096 850406053 725014732 496548233 632409658 708969450 1672234 430984604 651399721 715512621 239500666 273852963 556066070 929581627 467694934 143144789 790195004 234558133 460636935 645201402 773905158 805101842 955614698 370254330 183211553 861629956 475938052 861592006 15186863 936126360 500248689 897094560 369683794 217696969 226028836 998838738 42753524 375579039 620842099 447036883 218229774 188844110 706802337 619078900 160644894 660665710 414921105 392340362 568476283 255396951 741299451 971245783 902241539 850768781 183302538 705076015 340926758 699599664 465453639 796269691 452529695 179265962 273262957 465403068 634586015 71950025 567635322 323424281 530694217 368981513 110653432 358457632 765088621 883817735 406306831 413372256 792564077 896136243 701418757 640545909 452325313 762253271 770181301 454908761 597706999 758798622 139692251 903988412 356161332 592961951 171468045 699106792 297392161 392994036 993660637 820865511 139411717 322385950 660260588 19155172 646341744 100372106 765302258 702270919 952614767 419282444 990180052 345353820 653440473 458932721 613358921 966736053 541731185 545414215 504341035 551937134 887063352 372347317 591202154 718978910 397744400 504384738 27594834 679041160 667028214 377050709 917191574 468538853 252810126 641585861 436033236 217917299 478879134 740439154 174139724 710722461 73503480 812794598 397732945 589548286 731458974 567444817 476138825 752264204 290278206 220005162 574114552 695611513 573974189 456258664 389132852 459086354 31671535 508230940 7562231 825171621 428302002 658019148 385255891 988801658 617510303 944704213 893617315 931161365 663667934 452220461 902674778 29131072 884584701 434120247 33006561 787374723 287788414 356906362 151274774 689518158 783658333 67303996 945517773 654858865 100696677 499117392 716429662 711449993 214977121 60268796 439073080 790409634 211288606 981359212 949398912 137107382 225539538 105998109 996814554 696937777 956607795 37690071 225424046 321860818 209348784 835011560 572318234 931046484 74920303 730032156 382682692 87110042 25893309 294959819 964696300 237561185 2484933 93097936 766848174 895888961 161972890 86936742 15488997 947037044 578470748 913215083 533682051 81828488 984013864 304058232 351931431 396904197 850300048 109373737 221336120 992406635 937760035 863196371 812741718 125283122 9324026 229522552 877661213 365040179 106681667 194786744 543714023 481662526 54766527 797368929 989800375 275320154 214545380 367711641 782238935 860980695 430069475 609042282 58243828 69370671 850422944 876357473 958418301 159700470 322921841 150357931 200158183 746532040 192250337 561699072 969018773 551339050 812992851 111485348 389670973 827518729 626418833 211798908 526990084 380332861 515558217 428226830 294513110 675134995 394260838 44904957 956251457 48726766 333739291 743157481 47030445 612025288 86013206 294332350 736851991 193172161 7209419 980293387 189389445 498217326 506925465 447979102 582318632 120877049 441444790 638305439 298670969 838275317 99863676 248478516 668836427 776743212 58347173 684662092 152799550 984932746 847208227 297784500 550510039 321082649 780772469 508700553 123954956 293393149 569422714 730068876 950866107 320308239 493667214 729746345 149197464 876114184 993896481 907167465 810091968 133319438 3638069 905846511 292355235 292539971 316026831 170391366 227450008 374249739 461273939 947261434 718941682 424528208 473138230 237773939 429294638 647186011 537846346 141064928 407158896 263589212 506374191 105050253 187965378 92646388 552317827 367176243 911917566 364435396 735205423 588807629 219508371 830288068 668789148 535388120 600541616 222675725 47003786 361826387 635464688 788606556 175660776 675900897 4574136 905066937 771411552 85436026 121233993 129163649 855539916 356762686 223401386 665689360 210348859 621183037 356588661 158067572 486288441 485483500 321201102 805721389 81666307 910419886 567221764 770952938 218138670 887072611 989715483 413210400 588022820 146933800 942226772 130339080 602281879 211204275 299907884 567211266 731134656 639167666 421322099 194656573 501548989 424077092 985425548 137954475 348311507 151411411 596060958 74114668 821065108 607202135 138196628 791069147 134868661 832147135 90129256 248692959 128049559 345861020 551311321 451277576 236594859 716898239 459982827 849225072 656503614 683185096 478520192 667618597 505994603 159396742 609916814 601997238 44847800 229841632 541963494 119907764 624374825 176768153 157676554 278482550 332691647 95071773 947905661 940979976 523959946 636488774 54667799 222181883 995688964 910747219 59673123 387600728 834958017 859558923 510208154 565089598 654943107 188665454 651817784 922429718 689982301 470343432 365463042 213400970 508654239 390738368 99911946 382515271 632979191 984947745 894571889 97562611 697023949 983051716 258904038 795692140 56860300 925801861 303955218 441003652 566012651 785216622 290476940 215129643 144740000 294022934 464459519 233158308 425473477 71985768 741812143 395591341 914252232 940420554 995944810 313673288 652847688 521147614 184395109 71530385 870132316 698320407 809607467 385037504 946667453 632032431 109623226 604695517 596690899 224125313 743420108 34247748 331302495 77258477 32207359 965345877 728523733 907628969 924186167 110102942 7417662 864516084 437800435 368332492 468590276 701749462 834113334 605352322 367162309 286657096 790852178 470204594 811155114 118228591 541339644 747515156 899793306 997055480 606355915 751625462 931677054 972926773 171733592 640806747 726762977 827366677 177209349 129678443 106430815 742773899 519872954 137145982 486618895 685551829 261363063 596797804 98320184 473269751 164707937 144675374 94984087 614776600 512915009 330148672 595491137 11988230 419460535 857270513 786015199 87646502 592818069 667029772 101499172 214158260 143180533 898365160 635419371 423573599 859319891 246885286 330176293 338008662 973430361 458329100 580695045 484077037 520435549 213527880 352444461 921062794 151189287 997530620 391407958 852469752 607321151 774648566 754469372 76942493 220008658 695035619 76866808 486116123 155290878 756851521 44831127 661136048 585554067 362711518 454167994 957697058 69038210 93702851 661779659 809590394 300176381 44126719 331887054 732513669 215082483 61919381 764690249 78022832 507642208 596567596 47873020 382833419 756199759 989692992 985448523 592437738 735193172 99077902 56740934 794094465 824489548 18891940 388984836 750408620 178617764 589584512 830620195 102478640 548847269 818497247 986112139 56866153 459132007 406145494 772428908 332205562 19271098 195016204 767678766 562229996 657511038 821213315 284666151 59556520 3344047 810870866 585305556 207648528 98722967 258596360 705419678 531151320 866443138 288013730 730776374 137092793 111815538 76993121 498498165 713920330 6756214 740032259 331720643 468232782 40741293 230740745 595508740 595195359 289142740 183797561 531834470 490348271 32251307 603795307 704684492 39898720 758378964 320946014 315797299 165392394 913962025 53216295 620214817 791359455 226001723 367111622 690921031 912935489 767031990 849512275 91650236 609325638 169549253 421868789 915673077 834677399 504420008 327546644 938896646 484506126 993267686 827517882 412778998 249381752 101745870 963900593 963086839 41103385 288896350 844693567 444060206 117027954 128747349 812805221 99812 429662618 348370288 159060407 495821896 495061739 53560227 768013912 569283211 307902566 51702372 331219248 976794885 638323734 810894009 595310154 835943174 441414813 391906621 958878118 664296908 407193450 539779991 321544490 877534685 645747379 865948800 759067868 339222425 628340764 395421441 649839090 389860106 571771905 110617050 251471933 903277047 854552691 212507954 66687220 143866337 102762160 924427470 952321905 898981555 22125921 44982789 340990822 241381943 124414190 189005159 597259645 257981213 12652061 500549165 507492795 785708967 174421045 65910379 517422743 499093976 575266374 524609521 129440922 207024301 171009517 287733661 488032766 958326231 208060141 152496496 326008520 566824465 436536559 831413275 813808473 505565172 488787478 163370891 65053824 807064934 410688838 396359950 317651285 787597322 213211537 936624975 495979015 876514313 602157349 998655043 375633857 847971899 835650872 250210563 495564581 851623189 174770469 713418408 201718265 555724680 575328287 496376018 10986302 982090862 164463510 293311704 167763645 799001580 82154429 561856678 287834064 57174457 858564148 5295814 579768729 590846494 768812487 614707426 203332501 52313526 278345451 907947115 115396775 494703446 316886590 430605269 942547170 364116364 804227711 640001724 576618676 841426336 899493989 339725144 622565404 80561017 17889772 356212653 445172798 45221408 101812897 100530284 126813994 541764497 170941465 51279557 458919914 577575652 442281211 736298389 684351206 348831555 914265478 102472809 236548991 9230816 484258325 432335932 64913503 214058514 255700191 232639557 973350811 52116406 723393464 142034244 253595112 845060169 747340091 293581273 371708811 84184566 561528044 641071922 140716669 106140330 307410150 391406816 66388598 109862235 868335246 681091374 825931527 162328754 249478883 640574987 552289917 27924325 138984218 17424959 574698640 16787252 832256599 826661303 405359328 902958350 766364995 928568427 930354278 323320937 215682611 915973700 999285562 659451067 385336367 341655551 436231082 852547738 614250650 379186844 763781859 363475289 88029312 694782968 173916873 663849055 832260389 588725656 230275302 475278229 254462737 941997431 479853000 661540874 398860715 823369016 387960838 120552250 874285810 851059111 573809665 416719993 10543883 761176876 584168514 117389983 565919935 355394015 997139492 825770089 757118320 625313172 216255263 264303882 512823489 940653048 849264610 684448022 93791958 584252126 97911909 480165876 519385081 742776034 171953109 94676808 777142342 394048560 191131155 944366769 586493698 541311719 354545233 958736593 430185739 388872069 460458899 501241084 609771193 890319476 747179226 315497274 498535069 191839379 574501820 677741199 915185267 776670131 81685452 185209116 953883556 103523130 217630455 324113322 689862266 285321172 941700507 227417423 961638769 26709569 404649352 838082797 61797459 80651513 78374899 177881549 30733997 81639428 708087968 136909117 543414315 560891507 245657266 115868524 164804098 507088244 643114966 165272519 74007198 393209014 700177551 963365775 152773109 882576323 130917325 905680604 906221544 716143785 585648157 320744133 330511460 637705120 953373898 479837883 629647268 545713357 148387588 263266432 110623798 971392202 199281546 382920953 900547863 778131114 149322512 501881922 79298148 352175601 885600364 315615180 84568931 45680459 349707307 193094026 255164667 83326977 23355484 927313499 8094758 859646310 107367110 533683153 443462879 370009995 216191710 560694892 705400406 542961825 557683782 283455214 463546056 918448413 416818958 426855509 548547684 447055507 778617539 260375254 77686480 834114628 963067009 104926204 271300106 208128341 851552407 126498439 275420871 256743589 140989725 583714640 199869120 574582843 374074673 378561542 344731423 916337332 569246540 301732806 875694481 637415768 400396429 234594205 825714163 987174420 277719924 698236426 932306542 701747744 481715015 261127028 98601508 349034644 271124468 890319556 760643324 913398836 931749379 912380688 128712828 289191266 807903812 214198308 307874435 186488879 335795191 956971815 700426849 459688381 950731762 586378090 475762360 273745358 416880965 262709314 239973500 126399737 202945867 797518165 203144696 15653521 984385487 553901214 745251623 692742618 440957783 556735584 96966678 828759198 113169540 318036743 910336569 504481116 965681254 670257638 779565532 524652585 190831050 5417605 899196620 634822763 860431428 583167459 21678754 569255719 637093467 415912110 772881975 792704638 758161198 682850606 780661915 97577283 73868284 565873710 109769237 634140914 148685200 320052901 81247221 753342294 461430412 593857628 46207654 908396591 718693185 989619725 371321541 281791803 58415542 834521528 364244588 938153755 313738404 719635701 375981476 897028204 566018759 437661747 72584122 501711144 811653325 460247832 101346274 162526344 880265191 164573784 152913024 883047339 167599837 451961239 322087377 674572215 217736361 148819413 829867731 381942053 548559173 352708887 608440651 335577922 584750602 27829780 187175058 160591735 952377892 923868443 994270775 182489609 405674931 889237073 818515462 794687612 806011382 837010598 762814924 58384868 825928552 786873085 206504425 210731726 35466098 186860420 455049897 992328411 56920538 742312247 601013356 559891180 757215908 221778078 198531063 366134279 113109496 376158800 199592869 178714338 359250816 10619514 641848696 526306298 219931472 421400612 477016158 555071689 570925403 261468035 345583993 610952533 192463591 577686832 304348945 937246515 831350803 380703987 49729375 390702453 426443088 812012165 953884920 791998176 534501217 182069458 963945666 173894523 583496787 793878831 611551480 169880991 795466411 349596863 61134808 930096003 228782849 552224308 486963717 40985821 105071905 450713499 614617155 417694136 595525381 332216009 512423238 28450424 61061741 99472454 401402184 551559520 618848619 642898404 897424294 218116703 950087218 756868208 979693054 655744676 401671129 584671298 486250384 629709556 132189603 55277139 136952303 975197876 947348551 518075952 816245075 490533243 980457478 134941191 84191672 60724151 927185483 407856046 671719264 622500093 957705479 234541017 133909389 32312500 78567347 200532783 807794693 596941974 2451557 307229831 204208258 10766882 180260909 958649880 586173843 176419912 979862445 613542008 470304677 571535524 497614172 934117209 670450381 206461549 960659156 779823057 774053279 359880921 702969594 357295372 553169518 593441117 344545259 541825428 811150062 101020871 739631248 478856856 695567118 116039699 503342601 816659150 703392086 967652149 252893520 960672639 357195650 59142421 978381260 87476809 892374814 44435714 110895294 839356784 84033151 347513140 216509986 184694179 780709261 592891015 152943272 492653179 963119936 647948910 631295738 600941159 830294438 414497447 986163188 668753022 719665585 181780280 242853766 336979284 87443320 885196808 816788848 49246518 718958879 260323025 50592246 43627386 549588152 245994839 953879160 294548934 321588769 25508602 856038189 83564141 805938853 842403180 590335559 387391971 267802733 134899197 658819584 921791591 333244862 405818087 412960157 344912453 873889961 761805819 90283868 761183502 452290803 392772549 175677432 801506753 919834048 359019447 789518063 694280733 931316142 532419324 308219724 680097089 75210643 418624160 483094673 128683078 384074406 792263757 384250605 231363748 533717018 417062841 290016567 684860181 771362577 939335441 353846231 506770719 865938403 732863374 635823259 218254595 872947556 780516675 328637025 635198540 394775010 115502519 823864150 241515097 182934330 951807819 85714452 603630761 872168524 674575520 845502464 244190855 309090124 43870837 943685049 29000034 92944779 62927858 467137691 962239676 762392414 175434147 107276278 40541517 289630915 906521533 815295122 433478451 759058765 686464155 555425068 724965991 978821690 482370211 792134826 649259859 852586718 496600828 57190314 756591871 637306750 793366318 818391697 232256388 406769954 886174137 140895354 799596572 493188854 643560802 790832457 795091139 944929307 8014256 704020793 699676710 144606159 943441668 28269480 767560097 365768352 27866762 632805132 938020254 759545062 991644561 125835224 207972771 387465650 761129386 231644143 453071719 108589431 595152138 215876063 151264873 640600597 407281467 368935975 945659385 841676112 291081499 644036713 894275276 278001445 900720105 180701942 185638335 151270634 570089111 679734257 270220085 15926153 906819832 363208317 127771851 833447582 469436890 865221700 221749664 948006958 751768309 598638912 488065266 833512453 910765056 151912441 895296831 249619341 317946604 477083510 899611290 653797361 926511608 9038031 754508226 269051182 45342225 679804067 450094975 850728463 57956594 780053293 390995196 961459330 296267700 874183971 330952588 809043752 2833212 568492113 748998864 122909772 829215218 694405036 487877001 376967162 549615283 581850074 576946905 652501976 331119046 305607369 598648333 400222226 683696504 72125086 364291115 878675906 362840631 436465339 112868849 16732651 162461110 385209327 327215707 131802849 744574028 954290363 875779280 385285700 180896071 869450053 352747643 172828956 676655979 577073698 187482900 583599125 807890596 486102291 43240261 758511194 892712980 534430159 715878109 997792322 253588940 125060775 887218185 987735024 797160182 974165451 317539101 936137688 669006327 354223989 973712453 427881722 667406685 852327050 413503181 814887813 386063008 908404791 252730579 517817766 622185304 377812405 108829145 703850619 767812388 128838500 38119577 739683440 921296644 978376937 179899271 517428909 534819718 782350588 198855342 138004322 690595859 602225909 796480172 807496321 531959136 609498204 120612926 90465738 721228983 426297379 67049386 662296008 839542839 150818844 272243485 436673317 237078589 660175162 589946414 510117811 300759802 680532146 988579525 749966708 888983725 60349053 697237750 261525294 598401155 407700029 728301551 533858690 367752926 225765574 942228002 815988366 824529439 760015101 213576640 804453097 616497765 140020699 585476404 504238773 962136193 464099847 84829856 15103024 429867619 590817467 758579159 619209579 123419050 572311030 749569931 382548855 56459313 773456118 216039745 721269098 277523551 879616986 57672850 546312390 201015849 64071646 135757414 231099144 823359181 398106181 484012350 498405731 431691004 333818444 194104874 479040790 179423648 285061621 286059718 58325902 168333843 438582729 311099761 156331086 697763774 807626436 736103494 201317251 754283 398042746 723286345 911359047 681233508 785741043 401861741 203115771 695790474 878467942 429704853 963043140 515373289 203819792 541985482 888926614 297686369 184790895 319069672 618645811 806779643 91957304 464203734 545049601 294910942 648917176 177941866 243772411 783577214 951475812 699690791 956599427 86954036 87506001 737740928 411534590 458622831 138472556 997613904 618039702 285384327 373343362 413968305 530627810 338577165 688288616 211421950 602898473 950963206 524401910 826387037 57930141 563004342 943730789 941674112 804734927 315023536 157874656 51437506 702369606 434337206 901669125 452765884 208426067 379800833 938979716 441438027 118044972 338066732 490807631 450086602 481367097 842306061 559677320 691586883 157902822 876633933 702374106 236770403 583772824 204444072 244466515 294738209 503001308 10249686 909473196 984860914 420029914 789476886 922739428 614486797 528854154 779140887 247607382 950380587 920886627 198187150 204445126 604925968 702998512 526588584 672974792 448380391 153135305 422383543 221721475 132905304 426689868 338887690 22072450 472796780 223188148 656526787 215599819 640290585 812242533 912408504 590604311 690542831 775090214 578419750 738187053 480816094 22308303 442377174 704563008 562279665 957680950 126366389 174992655 829249497 282306818 298426591 441531300 951282269 91671705 130711362 203328107 857349383 500917227 395619473 608033985 17094770 155902269 316325773 532788305 962826938 787189225 47771391 789323136 309079646 594291600 6478996 307920678 820572363 682671276 713855896 530717845 317387515 628838116 339444809 745825721 376587798 870206921 935460075 887917172 53182719 572572214 802912170 464920920 673699139 603748921 321604543 859345599 475426663 414463388 835645126 47201296 861425694 636829394 425671941 970834055 816762294 754303574 639531429 681611562 260879285 401419209 397863183 602640642 445419911 454530836 778816469 73404668 122085032 129165365 91789406 509718317 896908529 744661620 452042785 259551538 993636714 892260227 379877862 153383545 605608798 171471904 242617129 712159540 811530217 590524823 461001933 235554942 547895443 385998287 104020244 356187458 507895849 261717237 160351242 23226470 845089112 506810335 665714729 105201375 197361046 746251146 212506904 568206517 254283327 313157214 609960951 313541528 433888758 532515225 555003518 760326059 960371735 377012573 94114913 358614392 991331943 702299617 928966786 759326326 858571375 748627440 418364044 221972463 645136990 116312729 746990187 341884564 270599385 850775846 639344922 546560307 253971863 206171167 553866443 703629283 102479505 734471328 397499221 153839518 908783941 585783294 31611627 121680339 421973021 883261944 834601420 122910851 605713024 914165739 131720472 523578673 93034977 123235136 206783887 313162724 488651398 637429099 836185797 654136400 284891008 459472906 370766962 633440560 516422619 643597656 875479859 358574740 612941 737818249 750376470 992710195 268595400 859836515 690748623 463927826 765944641 187496394 465055127 386539096 828517101 602596754 832219516 391502214 555382374 332524723 782397139 229203877 487033340 162385767 19914096 297618931 950200489 33650227 835796555 593146056 589744358 524363547 955055267 88474972 481278016 497638318 128292986 714074187 7313919 77171546 784359833 168914755 433079905 124176818 31162620 209554160 688794701 548618029 189262237 570673680 947944553 312977277 299366743 882470324 805770131 675564656 982214130 804114010 140462462 527648776 836442284 631892035 864166173 827485758 579135483 131898251 695305709 802919066 815890983 227599729 29267727 185608949 11066555 128981244 455530345 97336946 481272054 953346486 530759712 383862415 80232629 835459705 324497842 193030222 389129177 297732981 1059948 373811875 511692233 307754679 728335526 642963156 688797972 611187329 666778918 929885287 658295545 505442214 713028610 941736601 584483820 810494748 703023047 485093317 826261716 663389094 804058562 111002615 953070714 992973032 126242857 346713605 828150162 737180706 487074448 515748069 591079255 830057964 17103732 220423683 408551206 645932840 910907889 110179054 21651865 151885691 638411630 511514119 88795819 472601472 939525426 358746970 179713677 838821887 352700890 324226906 222624963 342056165 389797424 680020153 288115207 377425148 854524635 534809708 825945824 777662622 430303183 809252200 525927426 659934989 899739628 94691657 435966650 985228824 698125552 16837686 85273549 469194781 469660404 486750478 624780290 913124391 25938331 568751212 986044060 712026581 303664181 413342926 791504359 79843564 250525132 683365297 923200265 698666146 763231977 455046602 307375065 554984454 906372452 835690080 565249017 549913952 258567405 610453134 40411856 532543946 970782062 14373600 657068106 545885461 748556021 315568415 532269032 462427571 835580749 662318417 687088775 766458 906690620 531962875 266025189 565745592 945201701 240213869 105457586 592090868 85645643 525773461 200941073 829658829 564133365 958508122 839742713 612562750 555174309 266428716 112172930 176244148 342528825 299249811 749385165 956406978 718880575 178988233 401458903 187141674 637586920 863667707 249338723 925948671 611015090 578320980 212453300 545500946 420764550 182561309 848931901 940091169 956451391 94649165 279696671 271074115 888538247 969466895 730426758 700211500 361990483 768577504 52818299 292475449 893414390 434274548 735595687 443850304 485658336 170136534 362780761 81070968 854377981 624348569 80947835 417961252 930425287 977792060 809699443 396516044 345966321 316557753 355678165 506482136 875375721 30032101 207809494 366216137 911646814 286623960 169472749 892523984 26630647 617042378 445188335 30560001 743895560 62519664 869029095 640969841 927654640 752729803 90021297 551417872 257781474 44208995 350316081 467125494 60220778 504296521 137812290 221174084 672992514 677354113 867132428 592170266 269336469 901835933 499639858 25324115 986884852 757494434 197038823 80999723 151926166 10209979 39717994 708404343 210942187 638415862 730823578 486558504 217123485 317188641 464945611 256325668 691468576 214064277 761459930 18618921 941290580 619463838 609489727 91333303 590401254 879447244 382095070 862993877 965164545 270722628 349956741 673813091 10427397 531777243 105919424 622195903 745031254 383334946 581630024 154026466 996031383 149277831 23065448 868597337 403495303 872335470 488389850 815120149 758873997 31557318 915294587 728779946 949921261 643063448 923053604 410012480 722056829 495132161 658165147 811762007 304169218 155119523 793516370 997303398 261505696 431363863 135840988 607225003 445100172 413009810 736616014 838301705 803699090 568201965 269308773 296446456 119814699 41247740 453997713 540881437 279180778 59078520 703296835 85880727 838463839 847935973 986865452 368505738 364690916 70931854 341179857 772719520 737097542 263575073 802115116 247405998 754004696 168624672 398732451 361947669 548735282 568755060 605354735 644852769 18515911 836867695 218268162 361460912 249573239 70657619 397198758 988234461 328404419 446240802 134754541 307599068 580712985 23790807 160031291 933671923 592041123 333633038 855834435 156722617 988746122 89583971 95802437 229262295 649354077 862115507 327272613 833241300 254706946 107873556 239499998 437097992 181396372 841276805 228241192 222427991 973063214 478951354 63324182 175148812 847641969 985032370 17908276 193959453 491838944 590369078 834749690 307108326 967181101 50680007 696016748 610352568 727299942 166044313 315647517 631282408 4169935 316092290 311997442 410718866 375415574 200273807 596525575 811880785 536572789 38007069 113311554 388950164 84882938 194725374 509234636 591142871 63919835 369644146 785315452 497243050 244755993 412052476 422270410 940101434 116531018 447100015 241450558 20388998 792764741 946462649 346006997 13641316 95080152 567865010 564397610 23899912 274539139 482750889 838155506 185324603 228338469 544348750 916411294 540811419 920964191 863631221 103751891 947266538 535376605 914062040 73557031 647752176 326945998 527558869 584134494 191804411 258690031 108474384 20776286 287106946 523616302 710376189 331038667 962692288 661868360 244248451 85767888 491515054 627225263 317867364 504973868 326942000 419299841 621025414 796465954 759934388 440156453 168153532 705730695 537164521 900207426 995021118 65298436 596505604 356872728 521438700 782677338 683740675 612016724 762750084 991633344 651903557 476532605 917105052 638700224 406966867 860503738 910678215 873840802 297199413 708008196 124067582 60664841 295023080 592920758 944882463 92798429 246233358 90159925 508645355 743046280 296974013 661081741 288147734 799686146 315551029 471899503 550715393 671240918 947234974 39889431 533438633 212922343 787058579 836979810 937668260 248665887 232735969 378599385 676321814 699264791 801631778 728683027 895971739 968067073 682192457 512033782 67978899 151946530 77781695 907152046 195847254 651424528 725643474 510309847 44490892 753710753 581879154 518152519 804300877 518326307 862239223 255344386 951449599 224893877 830574930 955619643 747974900 800481084 170779158 658957789 513576854 48469132 671414566 652695017 447723231 680933755 392863966 185461773 674097077 297855069 330856214 181789199 734509740 662617767 94246677 904715714 680901299 210481620 426251407 23383051 260888627 589441292 548354626 451047281 856281971 233027875 261249270 509730750 281963153 898225826 408285850 768368336 950014731 350781528 973739631 655203840 5533309 211587994 662668570 637255919 270584616 589196416 494057891 217472101 106765833 153499118 549758935 935594735 505419587 795379705 720595951 352556362 197203088 103494360 831814534 742606786 510671757 633254622 966969206 563653126 954738039 798427568 746177276 418443701 19443918 87743038 619178946 872199896 949264622 113534612 185368453 171967800 278930863 626866918 58026535 423972520 48475313 77524165 381714569 585875297 41881455 224450765 47320001 271330861 301509664 23968436 38641479 33354471 863634629 801064368 23515537 154059519 427344455 987697604 257329478 580348017 613768135 447563304 786508522 608952773 678648873 54370264 132739248 453507806 190677624 54984083 890243588 230345904 919706707 903303216 948240664 154069048 863392108 172644528 786040877 470604155 194442205 768706082 239396088 510182246 23227827 413250265 972923891 521725057 856853440 981750739 233049888 88915126 229740812 924904419 860643922 766454882 544992578 617498770 783688563 616666801 87663320 179010349 912972290 131557794 887108004 274873575 905334324 652753679 622548441 887691276 347420614 200261970 478156466 271026810 106847026 814840195 925126185 40540534 612492886 914795840 183333837 235591515 713936617 390024166 78850797 846642873 287527268 449156942 693301857 753054797 808973465 518104772 14084048 971030359 179328292 610819318 734546690 553243163 245309775 799408381 850599583 15550610 620451979 173172628 63727940 286097950 631867204 860947255 327791872 229432899 956984850 164036104 411783105 357030044 554858248 758397514 883117577 265912483 22718886 26348455 391061270 718659086 154045214 861882359 830902101 46522520 991087148 24288822 100363335 317634018 112208610 59240545 441025642 138474852 176649966 999168804 612127953 381597898 815204329 938000296 461006119 144709871 50954062 62898615 358772540 901767159 23163546 432022015 632528914 721001362 438416091 41600157 149213457 865845824 136801638 904905143 122693979 316633221 881025682 422517466 38613834 809804579 21828327 737544177 850361192 899814211 530122026 102701868 652123772 892651192 154525685 553123675 728859074 883063042 736378540 846939666 594431422 759788091 400547005 516066545 807855139 14094696 763458436 616149834 753047924 696310671 580468865 130989681 14596765 609587274 348662830 531961742 569885527 300043254 499505116 189711299 453784383 121441323 887269932 313089043 32621408 466801939 958779714 408470572 756864877 590287211 744727324 314409558 413454322 145646023 295536450 362341826 536997156 601238290 484653654 173201854 242895964 155885795 753063802 330237847 483436234 842053912 976866848 563405324 154518200 397312491 492255036 491491338 501867692 116993088 630912886 122734022 407021445 794267175 440870093 894927444 369554053 773573699 960332580 403993233 671428801 168804807 627351940 337186473 76018555 453569401 830526150 350304564 79916262 4548114 217776529 497586140 279223756 417112631 803332542 480005490 805783181 762084359 453896480 214079753 589991051 939073690 28900364 59155412 611666181 755765597 1494453 941401353 632366339 86627347 774555222 848067208 210366523 811856501 67877654 150408507 86661656 922818078 111073015 286912808 712060662 346977881 800307239 761756197 77935898 988969816 938511918 257997471 5326756 126289061 508412765 790590604 906435032 773062547 582366617 615359901 847469010 234302680 739777370 53211727 126361225 227961297 457117554 609649739 178207700 974670350 885684188 539462832 457389748 417988804 665122476 805067102 339380451 625284223 256335826 581722459 845324569 640705086 926679342 890892828 193511790 505902894 197034304 634864606 230099413 180214180 373817267 329383638 844207738 579015795 123423677 531213252 806957073 313601151 174467867 278131693 490300570 761213550 590707544 938871359 641630168 486970207 711524824 551770707 633746035 633409047 660140117 518963614 454190602 533324030 822935115 602754998 638807615 330949072 94347770 618723641 737865586 78618920 742188215 190288861 323447219 608735779 98420038 525660450 684770881 660955675 96693771 157161015 10091221 601907793 371370378 830827671 233640597 736016118 591688052 95509320 63326091 4894244 606683140 212724736 320980324 864926612 254340876 148642863 812062306 216241945 696219563 441621094 340623214 864902411 159993780 409252041 184900237 215227880 355548194 714223019 15100096 196309476 626632295 164480656 474965832 838154809 48896031 559319456 726575842 639844701 536862427 227703454 272479912 615739669 992731295 474368322 892385269 351484856 480001758 211047888 327606204 583459698 835140755 439366568 231570893 34145538 74105381 794551029 255389911 805368809 327973254 464504011 245692757 194063410 587580116 174627912 379171546 762170544 934435421 762475178 624733375 55402769 529923178 80829350 630758720 571829763 625143446 564959369 528302484 637997203 156543491 701718387 897777537 72249497 630401262 434972898 253297308 238823180 924126116 105257723 210607512 707955742 486041089 297207236 779172396 733721468 32109282 98074640 841542283 612890080 622862330 40680308 736658682 329378359 265865095 497291211 783621161 633764241 662452821 149601761 110160358 644564163 756401357 454184014 832795880 565162355 886282699 913955005 422192830 890031710 710624398 338004071 238581848 64208066 684912392 129063112 517589709 2842940 47869608 713977925 963363874 235033702 165050421 869352304 467970004 598853227 234520980 555193040 68646525 983604804 979208376 747906405 332428052 567712615 718034527 170189349 70938871 622463330 773777413 676959362 85473513 976630319 853807018 159331038 534565704 861685630 271448799 718777972 274645205 216432128 401984192 808764787 772766060 395011136 816264950 311869483 513564335 944522139 390232908 652482330 387265683 120480085 115274746 67564029 196721345 555485531 550579873 781348470 24662936 288018228 427006214 124365640 309024618 179353302 831889492 759556499 720874840 914428483 240431021 86913043 817006922 74307487 793351022 361628558 19103186 164950475 287315962 873062162 537247176 904122477 467263077 289205453 949116776 199331417 921122873 526325154 645448264 789175831 948326609 945638701 318121363 361539172 505881756 509243598 36433174 173081035 82235880 977403747 195126568 754804451 825667335 169127656 41942157 248235089 768352300 730110088 36827460 501365011 704823942 645904734 79776616 75217498 687669097 780081706 848099507 63910200 825725056 744502970 475945815 524020445 639882517 244570822 928979688 59043587 915594861 260608503 207606947 462991367 308285359 45568854 838635400 366662527 337174577 470120120 702958209 388798991 97824478 608781554 624428769 15927885 725672750 618225088 352977238 172602346 360586383 942456544 196404431 79279848 100991176 977663120 501846918 844662040 955892110 159048097 354972837 944925573 780748523 903666903 581457086 821794289 548036955 659966723 934942424 372365435 474996435 927562437 471334753 538580778 215066042 445273676 803634117 645499054 233824541 885483451 889985388 992512375 635152013 715883915 500965044 190608193 980666145 166465608 867961716 325219763 383591456 65902788 166284005 41676141 402326794 112555487 188377054 483146164 727342599 48654523 712644834 965820050 742569740 419242542 63106445 720328809 833663120 31286484 152678921 115740560 586877204 116679711 206619657 111509280 592570674 85853179 551042682 4312275 891594421 426284878 14037386 489742531 332530795 5708618 170052894 533922650 528763202 515699176 599516941 678068004 542093317 500031968 760517155 661199060 44428100 781257570 687490397 98440173 873855912 381029019 331208704 987143222 299432499 192227186 788663144 263341052 77872295 518222905 757392013 29469488 298509527 827161689 273913796 909454776 120470316 854949184 822885236 826338639 585965495 86277145 937565541 489758207 226722530 378372132 792317306 813255049 376640931 119800917 387761129 155499708 439473435 740587693 577602135 403443638 642258997 51200257 799568713 922900145 802227311 903425955 339146839 510751189 829380053 23700326 881885668 340118857 45465867 195565722 284743643 910891522 487844165 65599338 188171197 45391082 706849087 609438976 211554075 744555234 652874865 859679415 264764760 141102109 927065822 470531791 50864144 863803432 739874061 184021741 167424396 705116800 562763576 491276873 193955433 118475094 51739480 294909171 200775390 319525032 57329403 228056039 5866074 319699460 762154888 436570015 166547837 531899477 896120292 382146922 712658572 610157552 603802112 333065201 751895022 923878956 298545789 435195210 476644797 691500265 777381894 449125901 813815052 867395187 22106889 278629686 829667940 157374859 958675599 694505041 129916229 14704277 879576306 691742035 893968879 787622966 287760198 470918190 821375967 262603337 413125901 437296983 85895706 819325262 632269647 263333504 830899849 731173840 202751689 217818856 565718216 21629249 612028736 536931841 864405512 142613328 47822277 807708569 629037620 441145112 690300914 484214699 472787857 836187415 594124066 717396406 358665216 321967146 628585261 472796894 534059158 776949826 912675482 914053858 125128957 182351016 710216570 527707666 815731955 720267711 781788529 978617655 648219387 626174834 543252055 507540729 835019402 809041609 866226791 569328276 40109698 771916914 571435726 650845346 555126468 992941682 522035231 363662459 882490075 210395293 827762384 850650757 961141092 541547263 517004340 324213987 186341805 201132724 200619067 690671815 409156749 630809269 692276315 730249307 324916753 495652138 931168772 665129350 420781902 682364896 372903623 472196607 57770791 351427444 189026710 580113645 881826022 114148586 802862125 606252635 635723762 547066902 140541692 734702087 64464346 850961820 767927685 688439561 264332727 841519067 606816122 616053782 724064008 843331838 111373772 469851548 121878491 487749404 809440483 236411297 25130294 580147745 272262765 560069237 944973405 496584352 251731603 896972908 610011049 474534544 578737545 698291999 713613722 670831845 11664555 404344818 273918570 393490037 222905821 156616328 166440905 913542579 862091436 904501224 391802725 105205363 558244550 749793591 758310769 692775982 557401847 346055379 474381305 995105741 601648639 58034499 756295729 811818485 30671168 574227969 990569241 599498682 445146203 436729837 393280431 551213026 610067697 990470267 723461554 892156069 977306158 347006731 414537277 924273534 783262753 516287821 969576293 994608601 858858604 806220637 106604056 776212147 453500967 675240424 898755927 758349825 641185679 319361191 913241336 696979258 701767155 95677655 375603255 465976976 471716382 686213321 463777588 121255284 390227373 569572548 989776423 396614883 820539599 513124717 752201312 388036308 436966855 462929154 346607758 293331300 808933637 91831675 518989840 14982017 425898859 993595736 297862959 913238342 490020129 256053977 376740053 943832214 481056523 61903867 896535709 470880281 962933489 329590304 664370571 237402024 873967970 921000067 794597080 715587472 349393271 680480868 378923506 334599605 28927796 918720787 369698126 1744696 661799875 882473387 437228825 738274537 587030353 552849619 545398967 501306278 202477327 486273733 943840730 764971670 584330447 354721129 439070081 199387514 238596275 316141881 386087547 505539435 963334553 233116664 105795719 600691296 247650195 333333035 26175005 461708453 265584516 397366207 220174961 664986623 378146039 753415229 927570667 941068351 869847281 805053350 407626487 831932825 590003651 35088228 804340753 597622443 424809358 4246769 958764044 486892691 722385510 209844193 140922978 87836580 227050119 24390389 922888125 384190318 809426554 58195627 195190082 1464687 455887804 250984139 645016242 619583577 215189619 170390995 706165334 31895908 795103497 966564896 524855351 77195879 743407254 823839216 522204405 492644528 198442675 560864355 881281562 281587105 163323593 662422875 412336521 855537190 899517585 116998619 825811804 531472728 58346232 70175779 507769462 182673693 257098693 376598785 76720104 273985769 846838663 678180371 157415792 33117602 457260793 989298441 920346527 262208378 882612571 913010669 554155360 110619681 281579404 73148842 31255215 505129077 745429682 621313521 586748718 527246596 157088701 212516554 382964891 512529956 336777934 105600676 528829657 240876962 488091007 675349182 186154994 532978597 946579910 971225271 47121628 470158572 369324958 786268032 974026493 545555145 79133926 410665168 158357899 217886381 544119519 565053429 503329996 58953767 525853933 3370463 33274340 142400322 495504795 500494560 937261594 544803005 850081365 292014701 191682266 611809435 976640460 45180874 982965106 783205833 982498997 771092825 532896997 325463852 324072160 748855701 650394196 985464947 788891754 423915271 551458548 696348886 750938338 476001792 355903528 898061292 426012809 758891668 190001648 46226083 537465390 778159583 403959195 588500550 777052813 418073579 564369654 564183464 667566697 131973011 255056934 744023301 353768517 794764235 107547646 821238049 188172509 956729704 587201907 921143526 237466834 756898366 119832991 242756249 798488605 755753551 353547575 894593443 950965281 575368042 266519502 125832229 440551112 686123875 396800546 466928857 842583382 912211990 536518186 178945001 352790090 232488697 648959868 819774821 593429944 485752713 261772451 806730678 395830305 695396343 449529688 705003199 734201522 108292648 797607273 216938375 117098080 604008639 43241099 210768826 488459626 437193452 154080151 214998644 708341240 368440758 797202860 217944396 332733485 551947097 445089437 150925984 621324802 259241164 900085986 351651255 426031440 600742655 207215960 945373083 683716124 17580527 294242061 952773429 539095424 380866113 465012191 682941275 704240642 827282397 500287274 600076067 963163184 102186647 752284256 338658972 365229981 721557037 534472427 487586144 411464413 565744439 275097676 391285725 945791906 291153939 874576794 602219404 627608969 486804679 120115639 55576973 621764529 819642411 899443828 112472013 729428036 190902528 393806105 132813354 227929856 375025312 682061240 633038809 91646022 777340100 689266073 743528628 451024658 548877089 152098241 888198284 435279301 619497089 735023418 631217553 174932878 545802945 611665119 745712595 410853194 680742650 158806068 792099664 460830845 880995636 210059175 585517055 103404541 197571409 233402335 677746692 954774425 137219811 752835133 34882131 137358937 475218650 188339304 606083883 153786342 731339317 900580980 515979130 300291346 811000791 862905160 87377256 730407872 851562295 211820858 840505613 658101410 219400012 160045737 626146980 208339355 913938263 541357925 98716782 96595615 270430618 649173858 373729490 850799883 649035741 229362457 602471851 441760663 415727676 672225370 586441073 935462209 236034537 249357500 553516740 188748591 300155496 572933156 211177240 210896633 218511838 438261113 271789635 749620226 992671912 678394344 361477319 555021307 113914888 769373091 599214610 352498618 777072226 384501394 600037370 292919532 124659450 366165739 173790168 849298922 157469455 170055217 183714356 816810963 479932777 354559551 504833793 73151489 284278711 146139740 569309329 623985308 177823224 319477220 810480601 924520460 184227168 44708529 660722428 181488218 609439749 545610842 596609195 469986297 137104218 427307624 790418343 433615813 514047732 189047233 373118536 873455801 167171130 683586843 231333878 974794896 323333616 246206950 299851439 663508875 416042180 970130527 18859226 902830445 714651136 283916973 50025393 751561337 344373847 955856417 925584558 427831561 357017810 878921416 76782649 324083035 695311292 177874508 177468696 677864807 490717020 793483575 740875373 636195419 809432958 379913838 670355753 760676251 206147604 689117139 899802755 642653387 897766057 579767828 44227130 388884092 770054734 32915293 757237896 89754289 664861257 487767992 946236464 52650407 951726704 832854909 318554523 876952880 711330802 729953648 356216973 620633230 516732670 180041056 770628938 376030591 398290747 584046180 674369474 196694464 296515921 996093634 993007671 312114090 899069002 616718519 898259524 622119666 936046521 100641830 689388508 512292375 558080139 360449391 111062366 593300916 638362019 724005603 584665692 718723958 947163505 826284319 233830913 608738442 896613397 902356978 199377829 824876573 316212249 217358497 166808998 682619608 392393146 501573770 225669375 268052647 299984971 235739135 815727973 4093317 396460567 974299048 38375801 879487856 878413277 516054313 894578255 18336101 888514810 130752574 696353297 941298166 448599319 40926511 5483952 412305134 589916924 553504738 297521577 14386593 897814688 871836969 380795486 862793562 106635443 445366666 238480993 448430249 218901736 875114968 576588097 840526526 1143911 25300403 990749508 615268630 148543499 17170089 460206002 347300086 809277102 166031019 329760743 531762361 64304032 930770890 504705978 653579228 446720523 213526833 284760512 555220601 748057436 96560235 342768156 604756342 776687893 78336306 57901534 686624912 567380220 330625004 565881217 568596141 140641557 951205171 854849312 722597552 791602698 663503133 321095639 253532603 383196037 420280926 33316822 124238607 448000127 847970332 449122914 676922715 445257757 211234878 648249792 848205525 775234158 631016512 236542434 584737646 714288163 558501066 160456712 960377215 68907495 901812772 116395556 859792385 428454372 128427303 402136214 101952029 670776741 42460002 479859623 630621097 293503634 194020874 328570591 571381940 137958539 901465637 117105202 879239754 754297718 105436599 233091493 406503353 790914915 909084555 735453093 532954219 718629050 879561601 81073374 676525876 968467994 299225723 499838004 771897510 393641877 812639533 643297505 407672398 142015730 541609529 728586039 302037008 608427310 812605407 36241703 622796254 87726784 727760201 623425620 439995784 945298111 209069349 478555526 473842554 489852170 519106856 887595950 283619501 872462744 588302999 708168659 852921592 912118401 42127300 782926668 313439350 685519967 230529483 753720728 837480816 958387465 568657176 528100456 989093493 392810367 334193528 95184069 471388211 190174012 45982205 250012059 754908183 469111641 939947382 931729508 224340156 280681164 183738970 730630198 92923316 728591157 833035891 703638866 372648310 292199829 510119599 629145738 650352622 899739679 135515034 979878913 398304357 215844951 424588112 780313105 372393413 338840814 557942999 528537708 957550907 211709580 844924359 953438102 986195000 283608286 516329277 944760046 61945764 531404466 551779745 539781498 24398405 786202959 689801777 413095195 370541487 452506621 807073611 954299454 542915920 719491134 606416639 768205809 530899480 312931020 758591611 412430915 95770774 952887964 867813896 105185968 104265708 144441068 150587107 795264061 464993489 32965910 428782610 561790606 234837362 604363336 91351777 529753915 752496429 877466458 439878003 53679248 581094012 89494110 346544357 49432034 310070329 360172562 656367507 25025634 153476564 338522533 615414409 997280753 300873125 492103108 715261738 896585016 224488498 315590237 15069888 595184422 854984363 488722226 257240510 886978438 219521072 888110115 116441456 189896885 379020049 788191118 190256995 762548830 329632373 166699732 138871420 593556023 930334425 300800064 294000231 542552530 737704251 207754722 272018025 605571536 194192050 47413379 673169305 563446363 45949065 950438516 217348565 61507887 94485751 461472350 123663493 898627899 398802974 786995440 298304693 109650146 649444661 487353814 709009851 408321274 589962578 5356749 623186777 917745444 342968507 679689528 618893729 502126751 579900721 443028084 710206331 178890506 978162399 621344065 508351269 609753110 825234454 684701765 42090163 643280445 104168773 357133377 30679096 287984280 44509440 379027545 907604532 418103120 397690433 134600128 661532696 186098581 597742136 541226749 884482875 523836270 638459530 312973444 135786911 988032301 317853224 426032667 162940477 805183883 615455427 319827811 399808115 583878926 962419432 600263629 596446693 293186950 704746997 176947911 95638243 123059123 92292388 577393583 527221929 100740836 963142123 74555989 200974156 418616294 387922014 902673868 251343361 159863986 452842890 917706754 520910646 300717139 323670512 881158333 932950238 87024826 390012411 501901051 314830612 985168787 892364766 654647103 65733933 507779219 764777457 845028876 849643574 232947126 481379000 188537396 698506221 472100780 908978534 23304876 130497727 287941083 169644824 244689582 825387487 117216569 335621163 993762699 172085979 773942424 949412495 502858574 659507195 689927074 551056089 382762833 125032611 697330777 395371504 384671592 358165334 265398129 429058135 121153491 556595870 722585610 339958874 622106207 888659461 77721276 110001459 892134317 198173020 626027585 272528681 987923067 752117809 548486827 176266619 649060286 783964289 170168377 211914243 609700469 113235437 681744278 343255296 869894405 338959807 513018179 627725790 151334625 413759848 387505083 231127475 748791290 347365382 459506047 929515384 656848184 332358655 896632959 97164460 733594143 518090043 258019706 654480516 368489429 748474482 104085030 661066090 552637423 387575837 304511731 308978225 979967158 393583346 533009471 26870657 463964449 19898764 309193293 405705784 213314929 243945838 157842947 106775550 186778013 966433679 35809177 293229640 867996787 51445530 199552329 725491886 303946847 130379614 540729638 507910648 591776756 132635809 18386923 567246841 62868728 525054670 578455144 692313638 351798554 825633701 957942322 378846944 368787802 319709870 17187333 16769612 674773492 609489449 888496515 63767275 870191567 805191253 351245669 344686599 593668817 727543213 511736596 160249513 252245852 16262280 338170962 348761138 242648871 575806434 852492865 234194409 956662588 159892918 503986023 29893341 759013117 740008568 26888188 123239762 717410889 944771764 76060356 784473801 335158194 370928166 387799835 414434438 276497791 391391774 39563966 614159293 518491234 466370431 830730656 327736683 720886972 347561584 466989807 340554249 509718813 814080321 961548571 477539800 535772684 582029162 909890014 504175968 571135808 504424560 321600617 149717802 758485872 247515941 578804779 874744011 335263450 898063666 13616500 152151217 665846128 411554520 94006204 197656409 343716486 867516900 474642375 776666370 524074464 466223068 614464333 198269594 675384296 397518181 216150206 212341515 960920421 759349145 397926181 853189381 339031770 163915157 610698749 66485841 300213100 193675575 277181821 912902951 617753314 442645598 713775217 389955040 501607130 543890719 544231452 184576076 226491862 10703624 78150973 975807950 65724952 435750181 919939284 605773817 857254377 627009625 926725858 396616145 565564983 456150273 946307762 645387305 828809653 693362747 864872402 157705649 680869120 220345174 126829780 460062387 366561877 896967797 623497949 128140077 187500026 117712990 691289328 430815901 995611052 491498343 319120422 1170681 651570361 663671766 935437062 197429909 206845151 664478262 475129085 513230584 915439638 403262611 518352748 588635548 104080239 659118458 902915561 29615654 862283782 162241995 860846022 776572472 913926753 239944451 332969924 133315547 293743114 569075901 140408318 71397750 567773995 29402117 951271357 735253320 959772383 917431295 978040736 160148058 512176333 623093750 216796476 619466814 329658652 663555984 759443188 646705430 35151733 957791926 173541894 974400564 79136975 439017481 387621773 874697758 365727724 257239569 991134762 59501037 997283648 835162798 222271014 395563278 263750080 742888568 677328012 645169610 866054577 972465777 660751140 176944083 894619077 320777703 14779622 821384921 417911054 423721513 627532063 376305787 16478497 298016848 3867449 580565443 248689735 989991304 308790758 280773195 568318349 205813651 147616891 862958621 546945854 181077113 401516637 637073120 357061015 143083398 753277420 264967113 246259623 899534806 105790709 699397953 299282004 148092632 304119400 136002986 581562939 298108735 183238586 838652690 635540625 132340548 421522108 668282178 146258304 568363615 402320504 358280264 646254268 335062083 228147356 334666275 763868011 90634449 221126754 312789938 215378114 330345581 924332039 366152984 740480139 382576739 536099195 221013697 114594560 423980479 219705601 394236799 797447465 815546805 338308911 737389385 650477837 44199843 712549900 711988884 41717791 155114744 410508665 646054999 821771535 227165684 338916437 305442068 180311561 304018475 214932805 718796463 615528702 855756487 759049589 778392678 593978247 606838159 485986200 954935474 457259198 653941603 830986282 911277399 16531289 140019896 360429308 678941956 955937565 948483727 676610801 81678995 487470159 832328016 390279942 754882355 136352113 40165966 801071055 109536375 423898700 188054591 21539021 860233001 819161634 233390056 953095060 866704660 721941304 229856135 943369811 887810929 204201681 290937389 4847046 71833081 43784557 584194544 271231909 959191212 593817897 208961867 714659558 909565089 397065832 388973225 852454105 753387990 380002792 748238093 682836671 642121981 314167738 281068283 529873742 932366467 990185701 386912284 97492357 27741549 565220243 532914847 150125368 309585983 836438824 992065867 919801535 490078736 898028521 489849113 821344704 310627322 277514124 756547214 291486640 347245600 767853981 687053061 746952552 164892628 369268599 415161795 823768678 820572460 294759750 821625319 862623478 679536736 119370977 623600066 982716685 537708965 812403395 72228 97731863 132659124 119032563 613164412 721456442 469582106 152977549 875775432 804836962 753524802 508176649 513581601 869430552 836504158 48852822 833983682 448428486 647119506 338955708 833752576 424882523 330597658 275704891 642698781 777990215 891004338 44524855 807782637 212023120 210732621 318926838 345374165 564447922 798407795 867160622 554067736 811610896 624834983 212593372 102390177 445813322 483375758 652175983 685298764 134911352 477149717 933268580 335314760 485269062 531499476 357980594 858025618 800516944 721163343 416269506 2534881 770802946 379986724 982471511 377486528 810369272 490299657 392239205 441926697 93358730 594423580 351311730 685879669 846527597 885586501 752876051 140903395 22793489 128213283 488817002 266004826 661185368 757290684 456216831 197954735 273832026 769564553 657040043 65589766 846864428 22055256 585255091 645608339 213331186 446477734 75261713 101629488 30855357 106446598 524974933 322055064 385438132 367693043 806712821 665581898 644752609 158677224 913897008 645148388 594535765 484932962 65904969 796837136 189411631 484452244 678110837 362661492 869345021 202184559 35615701 36129036 293782728 354616541 966798169 384632300 312293371 716819503 912459058 575274144 373295288 706122518 90803619 231393004 185866120 119359668 451899255 593123973 950782531 213731015 737796629 299326911 654363229 838079016 968261685 10995854 944987489 945008713 640382535 136051972 97063691 907574982 394270722 827787102 759153812 811156688 375416390 349934990 576117323 375548414 159006627 541987242 381181488 716084929 849344820 353118754 516438502 745175668 219294440 266846029 962310874 337104917 512371085 456453071 621197687 660967775 83027101 70795844 763095355 974912355 894474232 399843593 924449228 705029327 58773644 161739026 636242484 290200439 990658009 608657473 946056960 55820263 347480487 353972244 86422550 451139671 761145984 282149795 788239357 127971213 448829465 827443255 958245325 983608891 857542108 505307931 972908479 800507936 830586500 530272724 117863448 933754311 927074235 129515918 194985153 980258543 288386340 789990802 880929793 467696518 191982743 202694814 681318638 418200155 743232009 952189166 287678961 990992197 888280158 161919099 460190044 466178757 255881686 443481294 847986530 5156829 286075838 975641588 870897768 276726470 520296931 889672658 749339988 688536018 418933906 681842375 959276066 932229840 277383509 532695170 949863698 218243430 825026514 900281477 60059292 2196326 843471358 324864484 476444853 574328774 457145945 980729521 284677091 168945461 799550381 177340701 802642464 275234680 879041908 749251177 639867560 311310012 799534307 615146802 263126320 928494949 600922816 75336300 700164899 102993283 597216629 392572039 305245866 460656911 894243101 588451033 725163642 183013098 491208616 149486348 441019641 224245596 210273414 688810612 925329546 986526594 12990680 285413968 11133658 6021125 734351305 592783563 772942050 162653801 725270248 310986729 916292869 413600452 4595523 959782186 554874795 232499666 843795244 139600705 868348876 914540201 733826842 516867764 875262022 533344261 73292546 329138145 150008825 941651049 915953441 840823073 33635370 649409496 475431929 77413364 68067919 676477244 734887889 497130529 548083953 176694654 312311388 111662461 285064054 479195759 614927706 798581112 998229335 912847952 789473573 671930419 199981697 803734835 661822003 23951860 12271387 481652581 471319152 324397344 977900183 518300149 626439828 698038622 957776063 53112323 675567038 646893983 137210539 402040429 413126295 183129660 962139057 438417908 872151339 219284263 45302042 802867476 788133833 360198214 843388732 744953915 240442221 123272738 889581989 887211567 350115987 936642144 532865733 573742561 695630841 816378604 955520210 596274612 938963478 641670606 180252306 613068386 555528252 314460587 489226061 503958676 379866194 400739743 584841275 419233526 480933973 197531798 806487648 773598418 572386177 274174515 621898773 169951890 541003923 463195460 677252299 848937777 192909771 718079370 512391786 119310155 848900320 497533698 814291753 558962590 106582977 848445083 533359307 44638658 597101597 91399833 120907888 18611441 546974673 983938687 58849681 808443152 639158927 423453396 561774348 10830793 641295247 326543274 570105063 242479735 279091642 762122535 100215267 345548755 887934162 334241060 463334858 479304434 683736062 909904818 336865916 810911581 561503081 221085395 771228747 338925011 417510749 663670056 33265537 356164866 843082806 760649354 677871899 100805543 880604730 441942548 511718206 878261101 134135367 746369152 796820584 121831364 869612501 885510277 857819084 226157636 509698847 363056968 676457278 969604199 657396477 186337032 499319632 743629517 939896570 810881739 410337939 922151788 59229785 36842607 608014095 163747765 431505091 70908443 448092617 749438736 771399264 879007527 688146908 248125752 653812206 618338052 962270020 416489053 461545591 834119754 172730433 815265378 12405447 207578599 380516588 635150034 322341380 258141191 411378707 968731948 105891946 931098670 64876617 576355263 522962458 279504331 911576134 211267111 711008294 903304695 588837808 131360559 959970845 934835591 536679987 676121478 279396533 586424230 637178697 543142709 554283614 148777665 196041973 432578276 433098060 321451445 741397577 443762859 184700189 23080480 135520105 186502593 621854809 302539373 368240920 475899881 408336227 891794077 295400399 879508347 911562229 794407712 199158253 757762238 431533044 652375898 951382148 909745949 766517082 840255137 190024967 371788930 778310337 716560013 434747080 599245027 127699971 531763381 998205417 907029396 475520328 897689528 447673045 982102860 2493154 656400652 689909411 831889638 906909815 109254437 982817444 199913171 264088476 58106154 218659152 714134145 36531973 683596591 35650837 165281504 794381512 309592136 371251631 614165045 436951589 581349220 202880844 563002996 748043324 71539485 899129713 650414853 15382907 706962683 243736904 191738953 504593728 639313493 56016287 838935439 544946312 549836298 687666428 166357939 59802002 853617293 855266155 719226175 748060854 429400394 742734362 44617386 351589661 841463322 664839238 508385169 436757703 524764620 753609811 20238531 862501370 812604735 479150856 567270553 583495856 948931019 656297712 256832334 85165836 585052189 547222097 855507797 530250544 805756858 63107187 684990864 284014711 381077043 159212664 813552800 939493704 150970512 133217216 920124018 809450920 420975056 75423283 25299957 470823616 259423647 899040649 893605669 114295637 370715418 933907240 393219003 437554735 142544267 801091825 938572508 233847629 181047729 639509943 409197356 581686244 183716510 163592237 675435958 942424845 224860500 34739783 969637571 889088746 376308670 429907334 165834697 551197338 579186235 74856105 75047671 296122118 97653328 329690029 490811806 16651557 669965128 954786145 35170155 209827314 336818363 658703082 156653468 729734767 893100191 736467854 205288269 195610641 464017520 850461318 109494383 388360857 438321154 44795474 477279006 151466127 283365112 517906592 20981213 986799314 736063721 364115852 394022320 888036776 971600252 569173654 634160343 468246685 179515842 321492508 750349563 860442901 681678472 847662476 75345506 486625255 630187352 178306428 517552386 69202696 584308518 523810432 13152815 468031374 106052003 642126223 487471838 301028314 637178543 736737044 671639899 988330297 183479205 141728649 858827283 623584942 770864175 841265225 144495480 919646734 487903530 358051087 783108200 545921083 385057974 702291833 681077668 12188812 474632914 218553419 713278965 378160953 528035392 634045222 943690912 584440407 176060336 462487164 413266427 583774628 25682723 123574589 951273596 538641013 274329479 477916206 209055143 773085343 6765504 697884568 847508209 681992355 204525589 101420243 985866644 685356209 347973194 479634378 706940737 528417507 188656926 732905352 441241234 516349441 463933950 704961366 513266657 364160116 878367082 489590271 653322972 449744189 590086363 220425093 202827115 730076447 962147905 687110689 423906674 993440128 802357273 204021096 973839951 732347891 206676005 238977122 955222628 843675059 431614119 794326158 609650395 269967671 312080875 851216760 33127293 251344479 272994164 662940749 747977471 60808222 743766571 920490187 142018985 583074341 818411715 963636761 119146007 478718539 356648635 830378896 25472051 610880946 291528542 447199736 861491404 279356695 700453631 26456460 716605335 646220139 424017224 775061776 437832817 820527332 727219173 397497006 656369756 564330813 99644593 292174032 930465504 928816310 900430039 680077244 41217587 810631296 79739547 209383285 791164550 5116223 846128887 795441452 488564340 367956578 375996790 829357191 330463610 584319086 166271577 857705950 753083482 641694806 196628660 573778001 736692204 266027583 904591160 854858640 353220778 733929152 545873436 644719114 141736477 29296691 676740239 93066174 978729310 477247238 317137503 855165365 376188557 830713857 605169683 586477563 895004736 481418302 345248165 43039232 713161202 923078249 44009169 243003832 307785709 75124484 44174319 352700883 823627491 12247108 824762431 245078614 279866503 319730397 111777244 788032120 221819514 326816112 990019761 861121743 490975184 68098474 383533563 961868381 854802134 228407560 672855611 690163527 954548024 4458659 453087597 227472930 478295059 197208116 663925098 303107936 60989804 315602765 672719380 19529359 479898145 928129415 355779760 766762613 482210664 184132364 938849797 56352524 338424782 94094386 64104334 93112355 645938767 317719316 408248841 26093755 225170470 254108925 1506942 261605065 103512812 824647383 438431642 753127142 167176362 286724869 78316138 884705342 947326697 163531692 471685912 880427555 162090604 535255935 760344597 578029583 557351576 300676324 864773446 229815608 646837859 85914561 908296816 37221248 232958512 780578771 310825563 556587192 853873326 795024555 273467361 718233331 388088788 722359754 907650150 344198696 376862121 22484491 659560774 801622375 249619972 451507900 802187528 603151993 803868489 744637041 987458666 672331373 147434353 263842863 783197984 654717367 909065511 311569716 976546727 155056232 444581656 715451472 288454883 913137865 671118810 374667833 540080780 265820730 694323158 410713576 192237939 998019136 547017061 503165695 989325702 158338036 95723481 465726325 219583994 729099765 826945486 24656658 779098873 364805646 804267303 405448651 971840500 307943901 466038738 890831458 992270092 551498733 300166307 306699995 415842255 272481060 562583654 242176308 467336472 555035883 576866690 660982381 196161287 773073679 281564600 222595814 356958056 885846897 469576007 197374408 214081745 917703883 337754211 71066361 411073481 71093556 548682198 164184584 513374980 990076524 114408088 354440756 609431983 881313490 203268097 593421366 958878764 90519787 238048643 11016461 791851746 479455350 788587779 8444794 295837541 813491824 377420259 117566489 379714892 4750556 521663341 7183358 433335369 429432958 856436070 973072769 563578353 423306752 814021441 859277456 698478127 769696744 103579231 660521361 962592105 302155009 396167849 947875093 698031580 872335266 74348447 367889356 500235290 98283296 957719373 309892486 810289979 481398284 794479356 424344344 161274904 377664670 896361097 284056455 398247871 132071575 649382511 535707035 945667308 841051325 782284319 384162981 634468548 584352929 256089633 99705828 11974397 716046082 467883867 339207850 538905959 817784834 446786399 867796174 285963803 783673104 214679025 635393284 437628658 995673967 407554494 955165074 133609507 217163405 434381371 980176401 867050586 550495676 105845059 984448712 287714186 266369643 785425190 599152054 542313376 159844411 178001152 143996155 875974767 587300880 655529117 828296039 620587022 838286646 800622404 693505222 598172479 638865553 919703852 966019857 823741339 42932570 668952531 313082116 274020629 242266598 363071429 917678326 933103798 153612856 460058235 423169393 568660520 331102079 70575874 247227129 60406142 70477220 93807924 397558317 849809573 824304409 875955476 61226565 226679912 746178622 364068933 317552821 688402000 182180738 356357607 57710331 391437542 53920410 583582017 967406760 55938284 465423839 557627103 409451196 786106703 788321786 261550913 899892155 609440639 428535572 496346570 175650974 662671503 275377502 332075088 43193390 375882617 613814475 635745534 109253399 469771253 70036881 498794200 929115545 948543613 872633706 578853918 743155330 440305727 701215578 920788323 386788995 466490689 121178294 730851402 445052221 485129183 605298986 542823290 106439187 207599535 372433670 403898271 816418006 512659407 800741844 48305724 219460596 774706238 692678505 621062832 292926951 528901378 90979971 256015436 899395034 903371385 39790427 889276674 26752096 903984121 560573550 520913492 459430090 994624137 341765009 193042683 719303901 50759691 851517933 902349387 317035093 377340475 798234145 943196986 816784033 101284203 344628205 9927382 503507431 502545594 465877336 267331417 213419113 131212350 158911830 585495281 673231821 225693663 196701076 977187250 693653818 115839811 798052002 427028080 522118416 184434543 418447896 578760583 213096578 111905708 846324263 947328733 629039584 861871604 69033333 145027406 672367646 268283091 557111837 262317392 64097756 164433686 493666029 779098684 221590994 687675437 952874335 841643403 759975555 974566084 174666349 103643500 268927758 285010387 962279875 137636299 926936802 971506209 352797203 775997046 977493227 628253419 57952200 664085959 49005777 814399196 255791099 776710637 472171158 823934040 55019699 903877131 299995636 853159966 687805005 364149521 705693256 641981335 420846336 380562999 690545049 976890388 451325195 444770583 959379006 508639027 591109728 242451195 17305137 618157131 272568769 11816268 220653382 814818719 652715071 65426111 151930102 773854305 205934779 561790450 649142290 295682865 355408435 385802089 938157673 736974284 189248664 238949588 373922275 214336968 698080989 2835839 258194780 144191115 567571613 379548711 984011286 40911998 327509476 47789782 574101045 376544272 74378051 53299985 38836673 778182067 681287631 417495507 315558104 216492073 519865818 127440593 225201814 124710079 755242237 131672517 670929554 369166717 823456967 776540036 560473180 525791540 416231258 471744765 802232232 196910928 666461365 673458047 4183715 657511941 556990302 500267096 172370659 380798632 240235345 28683602 395636324 616520304 780755982 873251955 898998163 621011192 25500252 933821626 83982912 338698025 721007230 378656811 132408887 705516548 25478469 491213897 868445007 479456486 13041842 312343420 640134433 559671599 683969842 606828981 414417870 707886887 832020083 828621418 854587256 382817157 588877404 351623807 595514800 502122283 60081908 641093960 365839830 471162644 599760114 280303302 829631914 458868772 465432482 41026049 179466958 989747900 570108763 842078406 386265179 861638148 898230005 761690089 861396714 474567803 430375709 285259939 332514164 694471307 384845547 245551847 366018209 312480093 282633358 766890131 483687814 407250888 988684301 357343981 830226711 644460787 128474121 627707631 789775610 792813261 434167534 262685288 627958012 289517549 417242956 939710993 466281494 165851728 395089156 701821522 45697216 878189587 306524573 751638773 258022484 763952412 792428319 257675426 326302080 642463541 526348907 982372453 471031675 813733319 658352763 467839451 231747826 557831426 279802207 265554061 461325707 577018535 507819232 702339532 505826669 836753175 290681401 109309624 420802775 546014656 93730954 574289863 586717184 915423820 906850748 624829558 530170904 977023372 723764533 803963161 891167573 519063907 895651300 433077053 249709698 676023133 592474758 960899656 248808406 754355819 827490968 426615759 731848858 573573824 345662454 45335151 426591574 467328308 745186362 235954114 178753518 843882099 664552615 555241729 114615256 591198779 698422426 122974627 275783285 593531415 34169116 209226626 163009998 752244984 983046511 462652551 488938566 296684698 176918377 591474640 220690283 307916373 387437446 507849025 310692363 349257828 81564912 109422245 817222683 481329887 888776298 624769435 888657053 191898973 995695934 989313283 419450257 840412774 564455805 997197936 955795121 547512482 124823268 742201430 792582791 18020701 614931055 998107612 780249381 390022295 466696928 254258211 511905482 451204425 240062121 331898333 289136345 184882567 727837767 334222696 686139872 822759638 959283732 599114134 411999615 113933446 922443238 189276836 411889864 242072876 417217163 633383014 491935806 262654725 252313109 794964022 923616288 426355114 36485006 459411891 290394020 667286243 240506867 764791288 575095507 537594963 538616649 947509429 307474775 365848989 24696370 385670215 851549528 337262597 371569106 116883334 40087444 545961876 848249353 890228534 244004385 951836536 790342400 102637260 783054868 949990726 890342285 981299744 424258831 610374928 298331525 793262976 737055436 71500157 430878247 321934220 18285064 30659704 484156108 834316535 380066062 196716723 664815606 962925917 607400611 654373097 843866763 535470218 445006725 592110152 704476989 846566320 283910611 736722317 130318605 199292877 430082847 923465177 170298551 789814364 417215174 691789592 728338411 989208316 564613146 769337329 944490480 899546887 430307572 144696287 628058205 491882164 958048534 365747606 955333577 829682525 625455201 608711896 410852572 34249693 402277488 494103799 551447492 621129196 160153203 953880499 619886519 905756871 156489444 153639623 30688856 673697875 305664681 101643298 857048701 249819945 496092471 903929659 255030924 385487746 124834009 854977971 421956013 577585393 303717003 761865145 255038069 128233936 138789299 366436245 958372905 237654717 282805024 430601108 508805082 778246262 282474309 532286371 813668821 688602367 945537301 75331385 123250564 129165717 596251585 114975360 525574616 413155993 625904178 540744567 386526464 497668995 737076362 978308906 209541689 11077813 949240504 60282813 368463446 562072236 600569774 425120516 920763742 592676040 749693969 362922360 257577754 509848953 589282601 381063385 172807353 678962709 360162948 818464721 99645648 736387412 307817821 954725695 737856864 998367367 390347441 827546853 603634357 715189385 259081086 568494202 743236437 459802136 198385602 913142386 752285413 781976872 186547491 150020707 784350233 832916479 306052007 194318617 70012200 4086761 936459773 855771251 722133541 973416773 127512901 377534631 108579431 191963368 547564422 346511767 942730527 239204535 855060773 91513545 601990665 13325594 175589721 109334463 612181525 853528248 165320031 220922566 316490909 789825187 102411293 84822803 445098084 939659051 295156753 375330608 257684362 712163108 210915896 51122052 641598836 138408241 597771206 682066356 579638352 516525199 886054046 895895378 421111981 991560459 351046442 882445400 136011694 774889147 787667723 450803516 908842514 869612451 20258215 150210960 49187291 131866365 494304465 169745442 366697497 653708385 535155657 588203056 28812629 275412093 358752406 747230433 436249958 12697687 451297436 36703666 486715201 105354457 553863148 39680761 245900416 915569471 27724424 77588630 337542794 249740258 463899375 719154370 193864101 417823082 887435948 502258063 238375037 776120597 190869537 899667866 413423406 503429103 493897124 749103655 844128837 235990583 779763969 941133080 738754655 940063142 846832409 381271606 629061483 345355204 981048955 77211431 353952847 353362234 60866856 3269077 717399571 971886230 529203766 840758236 644133832 233455429 429145554 307002498 245992024 437335055 259838704 434623525 292225840 527576975 924370995 114460712 991854538 638548099 26037434 658388482 720211082 162150392 826354467 339942093 293818104 550165194 192000502 110365645 691973288 869986985 394826144 514278450 572615131 965386467 984282287 593140997 290315250 816508968 139068314 527859151 79430860 769971873 477396044 275379404 19945712 267680498 190829434 30750424 182862007 63475758 53716910 361919184 786279936 230370252 214808188 925713516 943795576 57679432 630069147 142279571 619740094 299739318 934704094 89758569 141812482 122939328 397270605 504969912 975539371 972076582 699812245 118230840 504152068 508938598 279875404 711871470 754843991 182315085 552023749 802544742 830841777 687328351 553186162 610423130 241197039 970437890 821426293 899491492 539450745 313461534 336320293 98248500 296651892 951684610 947156251 179952936 290281930 222120818 700339502 72930640 114060076 796733331 26303357 90194224 197931675 960512008 901960197 330848786 717476999 230075278 898630204 205063000 973250196 367005972 422964761 308740203 549100702 27556154 998548254 572486097 850802916 45185367 812241409 145612150 925086549 301054885 217422528 951273839 23688348 247317723 432935236 503671135 599491227 495001704 32771030 660984757 255204574 182978801 418131538 519455903 207448467 310236050 819495651 789081532 165720078 844976517 930570384 521190988 996458375 182284259 82565253 660897127 908086062 534591448 667853138 988623921 133300913 399369314 522917891 377781799 976662051 10172236 25073458 477545356 937618212 279517352 114658804 551124654 1121918 259823202 312115466 614417171 698808278 824350272 667213151 326855429 336925981 90358994 663304791 627901845 546584416 126498714 177872561 4696670 651911093 820193105 679039874 494237855 428013015 416611008 69451644 368186693 110702306 356825098 435166132 742474356 760414555 422909723 455711400 456308623 757358122 536206085 464751687 732037192 337114807 572905080 702171732 28018804 722459920 743714915 219171797 464031493 172836111 898880543 380789612 202409175 242321644 843853764 788100439 23193535 984407500 971028562 553674632 471697474 94375209 222090495 901517478 648938638 590315182 514942864 861367675 321304930 261303215 337564106 257125697 230947354 558403208 881424898 893691234 118558307 216628827 702598203 406044617 174850326 507493494 896627026 256271350 878605204 432723262 321884334 878357855 632178058 227126136 440959598 324812055 175193167 477854095 442034078 542430533 401986818 793535100 988657407 745413247 369907975 744787898 711835464 462827509 926172557 877597129 362857737 476131623 482371653 684690423 341345121 418053583 527486847 312130464 747807859 23118752 605732355 469931964 216464848 33066450 336114195 258435499 838807282 822053484 50645990 451778215 115710130 744798405 371711788 399308891 326518899 454035675 708479034 450407828 591791974 20212129 133907877 537492879 338932367 192962556 301180486 209193435 282430217 257566175 857358154 326387891 431209849 640251351 410926597 403287591 318514885 446455532 755320313 10487712 819441905 963601078 678901525 924842315 712591921 69946535 45555543 587338120 808980789 555001974 790783376 761375535 326542728 192491344 476929620 189758530 660926057 375557651 828567663 773194968 167343122 836416148 670699323 526337773 934247776 962167066 510597967 772713827 798003158 645112014 595368725 104894844 910854510 455066746 362930150 661917553 42518392 91204538 138012964 276138115 534920800 640309754 132625322 833460566 712628322 589019457 117763755 304488393 512824086 753743034 958097625 786756535 84701928 541546598 264063841 493668874 342457521 370659200 804993666 416787489 916740044 19850055 669367249 622601501 74188116 977208354 256205435 561406951 807515605 464096116 344229945 29396881 766499693 242248960 622197368 543984018 264416601 512078729 787027732 934866170 919848556 895019241 854833737 851134208 323570127 204297168 113232308 994368879 259973997 426378946 347413014 376434604 227855236 845451270 529007739 967176874 218950916 200318724 413335257 983158907 224071359 891532711 136878093 745354940 815081827 688561872 97381131 302804653 570478935 144448278 886073823 498060674 758286043 94776623 88533923 249906443 152736634 503282137 158881313 373392299 597830527 206096281 912951199 831906996 909002035 922258564 751105436 431942983 657585776 659872575 694923236 701429989 619336538 866877109 656782410 208955296 265986870 744598866 728448421 998136215 59170532 432864637 500790801 27361538 556680094 555625112 971824262 66663742 965571317 222475053 336814170 501470328 285044189 63121657 270023285 477538723 508362971 673692114 701125338 378286245 648545918 96792742 381509667 65869784 715956365 595568888 979076769 824307503 483244886 868621398 32345922 282287881 874034608 135983633 610267287 265974768 711300068 703711073 846096610 13085830 227957279 515665568 640753025 133844423 170706083 906414718 802021738 652536292 431604977 685897956 81948880 467928927 455032672 594649747 656097687 244089569 594817421 964651309 968569835 487372211 401051034 662084305 551539519 172716207 398074306 753621573 886155156 720618158 52895407 411157746 231522146 926835285 267601107 767560776 130283219 619772756 713877133 701457961 891870744 55319540 849724398 123346868 457850941 485653458 790884271 46155424 395168951 673532526 287058376 43548628 965485281 512906254 220439093 22856632 251110462 910995823 136044333 603560438 253325538 856993955 31598781 295731580 38280764 912448462 450667264 174111380 972764630 457102782 651065721 282080115 590895266 924401734 423465683 774973289 59395014 45950879 64314310 211945458 632225276 877064260 271013479 991691331 753325524 446226799 120729709 327092391 350782592 411186722 933132960 37271904 537227868 733100404 344818177 996692387 147515029 760737789 164944242 985471596 444279353 809410814 995316743 977662439 844911639 363264494 763685404 17508950 192483210 108564561 538237026 791685273 668948249 446129334 266846466 194088590 94920697 752651239 816590174 843866784 131630104 217560023 662717664 644009315 536642263 763281233 904329624 714713640 155722764 528643885 731254789 930913121 724419784 905037107 800439145 74395101 938083794 326028874 400581660 924987545 82111796 502298296 688345969 575414653 841892106 308638894 817386403 603269367 761852142 174748963 574366913 483968238 633197105 148133344 31333597 204425696 370635112 483623541 815110758 145152887 54814673 93278339 711759575 828855999 406207151 537133643 978824120 63658452 205836191 71203790 894023225 947786861 765592145 930534083 95473874 305508373 531448225 836001750 807880128 508658578 479673572 935445661 41545571 745304226 668942629 133527345 295340450 724918995 822488791 968626382 351800670 334927420 265878837 239272957 794789924 735669460 471670383 644210877 603158149 739789235 480332602 72865679 834712389 777838506 523989252 308627422 414260148 565638856 163383310 863924460 256323060 488278291 89737352 128770721 282754693 894663731 737945110 111049758 160007298 377372664 152491847 957286874 645853582 646505255 785589461 517380968 815470479 500992417 971047524 890833350 500813529 52586935 967520476 388967476 710934466 960051027 131138854 476015973 872261111 880484381 673844714 843684018 891617421 992860009 615748047 727334663 382152005 48288196 133119012 819313990 849345658 788128563 266447547 990964970 117207454 659589517 233597802 538975034 429396804 219232845 915205959 294020341 646358066 329038870 723146763 502739538 799868643 508996040 932893787 494917785 89540119 567932310 443077621 787392264 962386877 746209622 394236734 938411332 391524078 883561188 250287472 31429088 621093759 346180373 104073877 727272319 43121758 275526687 430249950 706552069 372411400 261413519 782413141 739444090 769628725 971966218 976943494 289797543 307410638 199155055 119920721 600977817 637059996 355407312 904629071 184035705 538407379 932428096 422045617 325793880 524178713 150622996 684097511 565611268 884020509 220710093 469843920 544638864 876596129 573933668 573810455 996669794 326137146 820006453 259682242 771245550 397997112 569274939 698805246 26941113 725326161 489911582 159904500 48609908 666063534 782863925 631018140 260741933 17219691 516026211 39917541 361292070 919902806 363380035 75487791 825394629 108212698 412403076 411508076 215056831 580103611 45516667 530519288 378915492 221415032 668380456 383556881 37743976 568210655 950569069 432930863 627842436 561901789 897014306 860023200 541601267 626654289 767285808 281444893 788241033 254102616 383390052 479702400 485196063 165951195 211656174 422771943 356887279 201181686 797589175 254294827 50122224 394178367 582241541 243229141 662215930 530273117 55279621 24612967 677498249 588118139 598239327 437243329 638053500 741153406 424312165 249813346 71953090 655015893 990591890 332273962 788492863 920104510 340607520 390009776 592692001 829502576 105010747 935566751 248695139 726500838 739830169 444950621 386169568 729558290 371605908 936767143 112799039 735168445 625678929 616544722 798521201 191570175 75415242 609920568 429520932 821886552 970054581 916821083 748033628 978104699 100546945 284299239 691399400 41947233 380843286 571158203 592906122 240177288 319865170 18648440 473793611 491316674 748397418 959547359 231955082 493935051 94115221 528587234 39123912 782014644 378854563 155821372 645541255 892826426 282369087 475494094 227399755 358608228 66546461 952529089 366247704 836920407 690205216 437482534 788815623 417954337 900538631 973639597 127982388 962750308 947378764 422079995 389309719 279325052 429432925 150430216 681609930 477063024 481874832 197832710 952964652 190179841 773972742 994191708 324305881 589444421 250506740 384773884 77308863 81676975 754047735 638002032 160011367 463167699 668812267 152240888 931467021 286101592 844011324 799075079 966621373 540162530 110619592 662945929 732847298 533637719 105368166 192373757 653956859 929364615 149218832 723024571 22386750 86937918 472875678 50671535 497821437 934917661 215605286 967877470 703566343 971955331 897654627 184907359 206890395 517017046 901475322 614495948 66539826 210329587 447788697 369593714 121508460 208407566 557069418 22170189 503861557 992140000 352709329 803256405 969253042 265545696 935829819 892882727 312071718 314860754 831888525 846120886 187230312 633607363 392908077 88983078 885787933 508964867 956636528 868864760 799285493 898028727 284021103 854006002 548738076 405128359 950271031 586311764 246507666 262545386 407380216 331881062 148525759 588780080 681904515 830099667 531697975 946998353 517041211 91153878 376125533 520441123 924940973 833837129 416832354 598154461 676422688 543741608 677320587 150238233 318550870 785672583 975651877 623716474 689249081 560673709 166550794 167699110 857142931 3411811 515242685 293443991 38845429 250294529 451897300 665385178 674198069 427661600 911690775 955040079 170564087 606039416 74655430 968876296 796854656 463214258 940131188 641565180 646957872 431258058 867854406 46063808 335264129 895386919 474758562 768738561 378608710 495389225 194749896 159105220 473377290 461990922 329912972 659078032 610952930 155750430 384000479 387169123 915834075 166919029 596457470 293599137 978714493 940741561 871669606 922084151 1950223 5246801 648805878 799665465 435040766 985067975 839064195 243243373 684302028 819153333 923359375 389680584 499003493 728164875 112165441 519367594 224101985 192348380 725577235 321022503 212227480 791765450 943090210 833906950 567816138 657539351 546780300 212870355 117218361 236719308 507488781 156122446 152600656 210803172 828847756 328392521 381666026 44195441 71097860 671330099 888191604 623613896 869878766 662048970 951082103 8652348 72602456 431766969 889390188 441853242 434166218 203664512 768379911 69487736 679906165 378080413 176068496 788736863 128327582 172806439 991146071 679514531 364336682 884503727 817445535 820359920 310605836 32399804 91036722 723178556 457917577 491307653 491273364 43372017 294539136 386670807 354820929 923901142 609563827 109568489 724983626 521733743 948015527 962945029 533590832 431190009 488839955 730802297 951989396 954285442 187118787 396623458 284274967 819514441 5845792 296671326 316853379 923661587 385147736 780909266 130076673 268659334 474859320 376443506 731223185 79860374 914422376 159942439 773292386 828116123 804776593 561683069 52371534 84363063 658231699 473524271 348076226 240982596 841186179 155367375 716930350 611204388 372623796 21023887 537544975 657143895 980375419 970137263 643958426 765173489 406576064 291987235 210531938 270812856 396707919 428590963 382708849 362581029 992135396 940591006 28434188 696333177 551724066 917840172 619500939 662091165 476334154 605655347 570286834 485025214 94985998 494947310 279451366 226405988 257432472 175231460 317472739 620457453 554689070 923905128 18597833 82233202 33240905 628328633 368706035 462756137 879979285 193909436 269980146 784653693 741787076 231427888 831329887 440801630 152489915 333643055 256281182 839244997 575080195 255473732 409872925 54047804 270953063 41247292 260873905 234289145 3245173 31139921 668824793 431287700 797637811 40303113 846143795 401500540 708916405 874051693 698358691 348939049 725814628 704320404 696252808 73712591 301907603 380716283 196717002 77734147 150761612 482312797 199530935 314825240 814827152 939455012 887031856 537707370 647258877 450066671 498334639 486972696 889104846 702889716 983776290 219886414 123233909 963864642 946161217 161394051 514915509 150149178 292117319 44345925 602571724 319158029 628138521 891911029 826392630 375954070 387656935 446162162 888611433 106842947 846250384 607700575 149869684 88958198 680719505 853254710 340015533 217843581 126947922 899358102 643843073 318581365 214411230 828330060 498545846 618576401 48459477 985110688 605589160 355531418 587221990 197105078 376612153 497839166 207179240 725669671 62960713 746120144 892695904 272535105 731059569 180440461 535179308 872630586 214941671 280257721 643750704 955696417 72341954 621594357 751022338 48778055 674730176 778385095 398300237 441949788 382542467 349679939 789672925 513811439 710710671 896824113 992685557 962253264 167202001 659981354 855419946 165768676 547224677 588922106 223596704 661779439 408375847 180335954 847931829 711612515 935715356 638738501 753487969 351027268 184175137 799021192 824840005 630212065 616496004 93553860 666687480 36825684 301153853 817264950 631737523 666187922 969768060 696172706 703360526 399997198 721970320 153785648 682464734 716511661 942933097 18385157 40775711 761371595 3642788 27375550 479253549 816483692 526704835 470571440 309466885 244809848 135164593 335694246 359329018 399523549 382050002 690569808 85472242 195049515 875059972 472626206 646311041 196592220 495006259 536927070 1537704 21613992 445508497 160532482 572983860 718779937 121363904 564825597 373413778 742811822 731134472 155073819 965135101 922063631 190987628 892606032 197451064 488386571 226191295 314515570 31771089 168094522 20618238 240771879 693146483 730121222 23927449 18181267 287742894 582636154 23321391 312085139 350154399 828073468 725307573 263924066 5995048 839196282 391473202 337827422 831399234 249927910 866099897 373110521 177862799 486973484 153994541 147119201 515839674 260470745 856873267 275744646 17723145 392874993 140650537 21979015 889670541 965145529 554148569 103623490 981525980 99743644 93694855 710836867 941408910 483736585 986657102 603489506 169460291 59693929 133636615 308420946 996727785 331123665 902946022 362104689 105392716 443831606 287960127 993309881 905980567 966585898 787827057 293588046 792689914 910580693 892350472 222551189 364346446 16113876 411455939 946685986 745725093 606123426 529081962 924075302 807157753 532121560 822284989 159493310 47019851 239483082 435167642 575393325 620537109 800619873 505189606 868752191 312456945 865116199 663997496 887213431 742917343 139980344 966221105 4809655 82547954 855767118 766172614 252837833 17815204 367284012 808154004 524355291 685919792 862489959 966425650 452640288 75798009 440180079 626474466 368597364 571818582 310704417 338438771 950108285 622158082 277358756 368592954 82058020 375656914 296307726 699520470 140456507 884365 968369028 845424798 185831511 917795470 328375771 547135796 459206885 772161146 177413686 659840863 862859521 173743377 656965171 709696211 766313531 71274973 116575370 241387979 528991234 491573934 309837754 975576953 903086647 715211871 214718645 134791919 475328979 429763183 661922181 244553561 180577264 201599502 942902059 5389530 101278545 50598308 800485401 522328445 882821603 321931539 754606801 534046340 597920327 216640409 825692694 54288677 117898554 954308622 501711239 5679748 531206550 598081189 835306594 23646739 170031717 57196638 338502341 323115953 971344751 932226022 622050576 584490478 784494079 415328670 961428725 653040211 385606518 736893858 555425427 684694285 198849538 430263381 480779471 851705668 77162273 500316317 585093993 706469502 742930121 902381099 267878002 695658078 688820988 52327060 215920269 206365531 728698852 464136637 16226077 966336068 943522025 550924048 781608639 296636084 596059116 402451124 793795449 330180076 673860558 884855311 795688389 356535831 580065518 389343640 542068425 387265291 559436787 778733202 995330741 893234602 788476332 32401500 993904136 508750675 663605954 953992402 831451771 579076287 52084932 371583243 790056389 306639362 225191228 443457932 387012167 776614595 303809025 256390511 659902803 575995243 467756716 92221122 247604993 699986339 908623776 694900320 796338473 402411741 259687056 811141237 514149557 608950898 28832767 202787030 65495254 132522909 609693085 939954789 842822557 911235011 90652489 378329237 141413967 724285107 59963551 126803695 409311017 834881621 228421212 867264939 322521668 942955978 711517039 826920596 926535650 711349272 26716247 623278446 731195278 918400361 616989438 61158244 532428191 667152240 959599712 758573902 745332200 289108065 439641063 909778252 644410154 729466991 591233290 891402570 994153678 707582495 391186731 190129768 593145986 760595534 607822374 870024006 654509694 884968605 794978439 187705610 580930337 806886006 784194927 890327682 130580577 671027317 643863637 882717422 205895635 973672261 425196104 864114450 737616520 337283369 225679349 416657918 806585597 889834940 59637472 778949923 304416916 674015484 130473660 537821873 172835228 501282888 746621925 383362011 928140421 291991261 87819427 19135314 246512738 391112677 213400548 489435078 653211372 516219845 691272491 934290455 413835272 806688105 389449000 882988267 629671051 248006466 181380842 216453776 262776780 751562713 705998532 848233504 11130957 412911337 243426491 454066570 633378224 644494648 289200225 716673857 106559001 218481580 253998784 250242668 497997460 308965856 791888299 162244197 7030253 225747655 805717145 114299486 17613125 917067278 40080587 313300111 674648769 760981512 353499548 803411677 575042784 786545676 983802833 379428091 664445619 59349281 473346863 354308569 844158598 568325783 307369179 305955945 294474291 945768714 270839368 871692076 591605657 495989945 463586524 16825595 700346711 918872267 539868265 124260291 160226110 273610175 909013485 975547437 19252985 314783293 634344438 878517951 267863295 358073406 519616797 590876217 661326153 689436486 386640221 988755382 756148831 465409130 732843997 713282991 451234572 764325425 446365994 438983252 757122728 829564948 492794121 864876493 202366168 350151179 183158093 519399163 613942963 870379354 406582862 314931614 426920759 224128473 451448522 530857056 60882527 891048023 740666508 621206289 756021111 521247177 800905738 944600535 948081293 744774124 920175769 894625343 947731053 783377179 536125546 344636802 954370797 843631833 702929547 723437105 327171729 714429246 149309868 671105786 587334680 844661134 110401755 893857179 284248051 447721444 137246204 947024161 404840765 901453386 130821534 237466699 175900273 859759783 308479676 470605634 367805832 294567109 63276139 113509575 24535574 159934138 763357030 783071829 472285228 792886105 517270154 667908357 289211978 627523213 285237666 462021764 448972095 612700616 536993650 476154127 14230874 253021568 862436588 847347492 165985357 340544176 628155623 448156824 963443812 985572292 473867969 282646649 834522508 882912704 426965515 457526849 408413542 119641417 470232852 153857108 313116620 820617689 619893315 999653532 529393174 249417742 950471829 43853649 229985365 513257253 480768860 358447149 709780769 539573707 282294166 127969060 342495164 853157636 174821096 636780213 610805899 256042724 106443249 238105274 901521471 417081692 503135708 395628873 341233947 477714302 255722971 295947558 952058538 724876975 837339022 585885283 811665759 272230973 861248472 777289789 793838462 226922654 791142004 244364229 921886477 950081281 214946623 521468984 892657286 246664727 704730567 307867538 999887390 941416839 852700663 509198737 500222289 218080286 748308388 494606065 488044396 347707594 479112562 910027975 4886111 329584619 949906948 512467084 750417265 27328978 554304463 155794588 19274741 941467478 424389174 759566806 616168898 791659822 532709940 855076844 893351328 276617353 245233248 644544964 519624964 454678102 684774682 226733577 390820140 351907169 33079735 249869894 173678808 575404258 689497166 717528010 942541398 49720369 685127092 200130437 643038130 980546034 616693536 63673956 515268589 587108782 94425450 78203474 586757582 930143061 340581453 522847272 922708424 457744462 515675567 609602120 855293166 238752596 206750751 782268509 479927145 400853305 983339845 375755425 954230422 594044895 502224675 673862965 29415555 931236236 146379536 869247457 348773782 439265685 517018250 962294614 780264532 895398059 273564038 872431788 407835903 713191277 222410960 535293187 306543265 535503181 590854937 459925490 241123011 127584583 951219007 592987367 126900982 233440673 536876204 356800970 221860664 279677725 169652131 417749573 567602607 95598661 733256234 888948605 301765892 460218264 57257392 538137003 195577642 506981963 824891805 863161460 355271736 594400483 653531495 136322902 115718433 780399742 398053966 341287302 44319533 340266664 812607857 205799780 937969362 247034268 420454329 831896376 835581837 420213393 461173227 29465124 733773380 948671385 848050639 213947993 130228474 685012384 292940518 220001648 225372602 559454188 69468336 692362993 934043971 721711113 472372796 633777972 426989070 657384520 260414962 683093478 167646202 864518862 265905138 342527162 602630451 103246604 791752719 325129973 70490347 341386384 143818816 711079447 335199859 705200539 487841237 23550861 306513962 202541752 363759414 499855243 166498558 600227832 467916341 326132989 46006069 452294659 427040182 978138131 461069126 540350568 805762695 512135967 137660562 554306970 971280142 843380202 944950921 344663265 22512050 745148738 753916581 515357587 225472024 101164275 279281524 680464443 481076269 497441054 333361693 235668530 190568681 42473511 418936648 145859282 625844953 377324561 649798309 129527142 55813479 254552652 703835038 251661833 767205026 22800929 775332418 201148499 890113333 410928613 441893251 564463699 461598761 893410149 249237139 23409193 707754256 927643871 563377638 388469478 807768284 977423692 46733406 699746285 102801445 818710563 16717517 937716541 464740530 316116885 966321904 141248555 672487774 853891134 699185988 811675493 654898822 5148077 98251502 956739385 379146373 683356278 840740743 806249737 215221951 441346044 704905301 228624187 358166526 973582225 1144786 66911510 808374912 287467081 426465894 590069180 87979356 816776375 255553441 383767700 853491403 386983129 302545060 208723621 46036110 131608232 39851222 896691150 148433856 105874423 908363322 662977880 161529669 757450951 517176520 764811759 960359021 629635124 178619422 266674853 557955846 225301723 637610767 958531109 714555054 97655007 884503190 628723904 575669187 621248639 905501902 413489007 689244334 746318356 998324040 969195702 814422057 213573356 338998014 114339365 875364473 451500734 728498302 845233952 353435941 982658552 194155312 689344280 488092086 878573849 858791933 715406998 770739859 77816420 746132445 450682306 281479421 263876274 371238259 744864384 382656358 45986513 658380121 410897258 215076639 272767700 282281917 746872513 774994804 174101076 300585431 605856381 475161915 849497329 635362728 439331251 791064516 843268858 986248386 41152181 432924863 122027305 582472084 202986631 92848866 241827889 911435630 310645799 289657921 67753561 627646162 141059721 160297192 741755813 586555039 619143204 653129949 998139489 661546194 77198189 926278432 815453940 456971930 376648942 432839797 741911826 353276826 841485147 909233905 289492701 357493467 556542629 963363920 761235390 569058619 377161638 925829626 84755617 144094038 987473021 90196316 491544608 591696990 978776620 246210736 395103113 734416187 219619999 571199733 712524313 947146816 519821812 472015318 482358501 127628270 771033581 381040320 320937906 794200504 70124956 134303056 41256343 340227258 790621971 973987459 537702321 19370756 791037983 144269758 36118279 923457773 750027129 218412627 189472844 826281488 210973641 723479198 692667327 252757423 417556009 917317381 747275729 346572852 814340754 691678353 725273764 295854455 527314624 53432435 701330455 967461749 898858492 786447617 652647730 635990732 673544236 511602902 303781582 738837653 766134636 377221101 250137388 397076988 539457704 355175898 382538045 940307485 850889391 8435978 918960096 24623560 870146069 87463189 524913384 967908186 50254928 667717854 497552616 939597988 827035284 469823327 948519956 494985329 644436195 585938733 317191623 424258020 845160169 937330528 211140933 231653375 108136126 288182171 927619612 503246381 49348027 149038318 704804846 750793416 647708642 717601420 682352481 530864818 553151435 33531200 845367661 767748327 369031131 110412594 279152147 567110629 466478111 376343802 615658019 997232466 294440896 754553652 825283273 908035553 614236429 34368752 180421944 72675138 991746718 96752563 649614765 876900511 498209734 97845781 724143748 161613942 119812342 612790534 122136038 131403956 459854216 540870702 367688544 401614788 959594748 873835221 579299175 377698620 396649049 693306359 358618917 521628054 274775441 215039512 222290932 260370923 139943935 870186649 123082413 694542546 527764235 474672873 124181580 523809615 900254499 140146097 492042950 499665305 831850621 106261951 857750625 965074364 122826666 720066938 567887827 837235142 653965475 377304515 881725305 694276768 686031107 488541388 13077180 594233993 808998817 865217883 513037736 607813137 297254103 345766135 661566353 217107270 324716698 375311069 373228955 675574377 954329654 290995125 47135424 717298607 303148714 511030732 51908119 678443924 528356596 391316079 660483074 73030430 954431355 684900401 26795803 843052817 779424831 470394989 979881819 596386498 318570037 608224872 424077731 395559466 77932098 641421183 850933674 139652008 804133478 802282972 744514765 689027080 685314973 376293441 54434935 678486106 421402383 237461181 289909154 322353230 87080731 316240493 200767407 53119959 856924460 522592317 232283287 757317868 190610888 168108614 764215995 331780450 582389983 579442721 110056308 903418956 93365366 509513368 665330301 109560116 48235061 391991155 156537641 971778836 581495914 703082470 153553828 160340447 444370968 678626231 117157995 413815700 888213075 259257285 716461275 239969458 769393938 370135242 970461032 957273120 920720876 624759717 280668115 327272055 579010066 40217470 645490861 242423702 760362140 388574208 466293085 797317496 265499956 696217615 598179327 973005034 309946104 299197752 883884263 592755903 960170637 303124923 877259178 29410404 206353408 926127051 439336423 150601109 309501178 40456017 972691119 257598797 637045157 495240245 248064503 540142723 240133724 377350269 922197288 527853660 368246096 213874751 104170842 987020228 42832119 72008256 972046462 737873633 266542624 59696117 100244822 79830456 152929136 937441490 308067531 220831946 500282171 677483194 994948591 702439060 910412184 206025027 167715001 675409081 130664148 487439477 405090577 257837301 411825537 323251677 692999189 773778664 691058353 741904940 929805836 589955351 863675939 145780910 571560070 297062203 317501005 202753107 22288562 957809889 785477741 64747893 245941742 885801879 272931626 552792502 633012463 110423235 783888337 899015603 406025307 304993266 596232553 774982946 665189532 498186473 364203580 985068478 458888265 103438195 326813995 698360139 694124346 879783512 572710286 845716517 626999701 937628720 666272457 32768056 493807824 347284798 473277677 875958571 694557992 592720818 628525364 287559844 855165357 936174987 724941474 217626358 131735180 664191350 686409659 832148126 948326860 616261657 239567032 448646723 791648696 798076343 884319879 367557284 113636426 829809783 926180769 836486734 140652738 781443617 224475927 98565938 40482883 262660465 286798461 639106037 630568850 672423894 691985500 885275220 661673071 792532720 786845122 122409671 538965646 184097289 126780457 587767626 28285194 283366345 519114243 615660812 978116348 589754396 90020208 350289788 778696596 591827088 111481370 668084842 882324943 554273158 556914764 191223430 464642950 474073214 154574295 740272173 919456931 757453020 182811236 728754644 511042115 130167713 5593798 366381860 695139915 545688501 674981119 783996236 832519242 411029104 303968827 709820526 315713427 50718401 905547159 574321424 334772391 816591552 753027594 167866269 349605853 147734722 608586189 954270363 688950852 151835804 912611349 78460608 228264430 867090269 564753238 145763090 42508016 22452824 301487809 180100142 767856174 62261992 977049041 887400610 134131505 77489073 630071650 362631078 199849194 393252645 85469034 151126278 766608063 139921722 867682182 154515321 5692289 525684488 503094274 107429227 591500200 850214620 589555776 407830407 340807045 414637663 365487399 336443158 502467898 694646186 883869342 828405047 652682278 773992753 608222467 426085226 183213303 27165475 585869799 427170251 204332758 795113240 578526060 953455476 60511778 784823133 728569592 946767365 268585894 202300915 964907803 675258030 113941310 869287844 443235637 855336034 362254100 245633493 322348381 671952980 550967240 897444913 39795209 135348910 584811994 775754751 93675120 272212438 69186607 816728867 297558396 52612985 258874242 548259319 184379440 673481128 231948226 269491631 557993163 813541243 954788827 582406466 693397935 861410046 481671016 72269373 798825429 728169984 596156696 804301192 56815022 544992457 895303275 673303705 200429453 668316450 252838457 323605808 194994064 15914671 781814149 949372118 658989932 743415171 984336657 951182286 745415359 512866180 996659777 260415793 860304651 11895721 679657632 745880697 315224454 480162340 208473163 663500037 594231351 380872718 770768908 734114730 475241795 934436711 490192152 48174478 731767683 580803651 417303838 571756354 891553172 175473442 538399485 246568388 648825369 431509685 53392950 749612853 67856404 532556536 600681031 452425622 882950853 273346462 773275554 974570716 679285357 803375435 644131751 575673363 341974358 523837336 889634665 701535674 738657817 309361216 434680565 582306888 88211430 226674459 319564778 282242551 314223039 174780063 43159622 576874244 907694474 491624314 984117691 504283145 29785550 645724548 291888216 547116892 645699571 113454595 50636218 320835958 440682532 318961751 901771305 27581919 430496816 492061370 424633295 349958143 399354025 409783722 430213559 215716412 802410402 221910751 836192156 53920371 325583958 568404216 782208733 787523219 376368288 618347956 461428798 857556156 461711129 124222582 752058639 541678639 892112953 86120663 315134721 53571814 29284018 826310075 136725103 49241221 92617288 688848510 204591261 9751717 536596675 721099860 451176906 823887572 694585562 564585232 370082684 553916061 360437387 936264405 65154998 962608022 931651243 305781305 451336663 32819403 296028073 863605750 486066026 916500099 421920134 515095396 902832152 231426056 892321924 609611543 903627181 412957818 131186296 426033648 792786103 707405764 67743276 489440943 21212127 491961270 238310505 50081359 489120261 376599208 178609895 205012659 573611549 21263076 685773715 742004359 225217559 237698648 738405210 473193160 323757133 635888563 717723733 205848785 871731336 449777427 969025317 312104813 670950418 224623631 280502756 448149776 510802434 920428618 653148126 467772715 501909217 474912364 625120913 979244464 916458094 217807091 875459741 264769144 362954387 629199436 571304556 399481460 531425324 194504541 595777005 42685906 772679885 615697079 150209437 549085122 901364576 849566016 785164412 593266473 662623325 468792168 760345479 165098654 81019699 405708095 454569866 25872277 614239801 407618401 358995358 119859309 271330456 80234805 269052599 68903292 990203085 743951698 644553536 38670994 759955133 931756116 950363459 732600680 127808495 130455530 224990839 733521977 152048041 369602703 805775444 355023314 69224911 131861223 336931449 883385086 281895844 164406365 411717920 559921054 33619213 273340228 680399939 664439843 449658043 682256893 118399401 697893797 310307012 730135177 349499915 779505985 840088639 270838578 459283690 231895311 758896149 949035462 594862714 913214876 529115482 973814092 717425466 810156733 313975273 842166807 964382096 71257393 8373471 757602218 531223874 110715528 835500427 17907670 821030171 269747126 635081614 17392167 84520599 509167844 481459865 792033794 962865462 322563010 314053335 568119945 286566858 968689837 967755236 231836209 248942017 841786003 53243791 703476056 925758527 806492756 740037424 239636889 226952442 702232356 563564822 591344064 889396127 671351880 567636059 690844987 268112776 420725014 594346690 212852343 83662860 802232586 260330472 166786171 734759556 603040012 618252117 733311685 558878789 731621124 116730025 234032264 575089234 705582963 374118845 306643969 30625404 74837909 354333652 636569111 62321263 588622850 902290288 514599037 746954684 32004926 727417630 326721812 470840539 661195795 708316301 413757496 215137797 889721723 78620677 979195131 628146430 747888752 724194808 996551711 356251999 889750525 17127514 210065037 13839937 818711708 238150867 89506236 289223891 707818589 604292270 322010143 801373745 13166315 179883069 318926731 822906581 669909978 487986410 134020011 554444210 508985035 65652773 690390613 640269195 803162616 938130312 792511487 886344408 636169093 799547945 818689850 595765099 88974540 101694873 543781909 430677501 546713040 545727507 324790289 696446404 682116951 929716962 274788307 921525055 538154607 45078226 946323164 383606950 456859766 986330486 732520668 145814373 483733224 819966294 570393514 80099397 39475487 303275588 549944262 53314148 940767761 20002855 936391826 206604039 466290434 308905900 871926384 536541240 409591455 910445144 476144212 837410987 385655583 859939717 668316364 407908111 593483889 797308311 244243587 30332163 79521629 995193705 62139179 394508345 977308374 480556445 170709286 140869301 453051640 1644303 773709693 722777266 473517521 763111137 231709568 57624283 687900772 825592390 564814379 429675720 708113900 346001960 433870699 36223805 450534607 399436615 283648210 592236010 959527564 30400017 325520396 438438915 619536990 733336799 973479824 344516989 632626053 568540034 80446292 42987430 945061086 213579830 18781534 475578325 293514222 132816130 706606356 255538896 409923556 584045352 741801658 335809285 498394340 4115129 352733858 600940839 674267843 330412351 571218068 92012827 733201461 950581788 597383375 339414314 32594536 390133172 152139448 132710849 342684455 827230600 972681426 762847174 679672892 410591691 332119890 495407462 553051986 666099133 723120797 898426998 941730204 306243955 4677314 579496817 731634025 435249755 763211256 904466340 559211356 769470723 668797196 822954399 507274111 775382697 114713126 12763262 855336691 683768232 590795252 534812523 620761487 679467714 221651262 696099942 18866815 772450242 21655630 281616479 747364920 267253739 355218943 715219432 134726238 509701950 502005402 2633114 811828943 858138764 608012774 459024623 39722075 796654315 811418168 801496998 69222797 207768591 718113625 755000730 818701339 966045670 522491024 101194056 674232580 74919990 781132848 199695074 997196770 970182899 830756941 548825024 338297667 15675495 254417063 207997615 263520175 56573796 852664259 108440270 972197727 493953063 23404380 753639256 27792724 237497711 43768174 590925187 575118272 889846648 986422871 181489318 774054702 421953722 392416613 814673158 577320124 199508718 391360600 625017971 263285242 361018486 904139411 488856766 301191917 55757215 626513660 294051028 917590211 425625933 427906342 734674359 721282865 710176201 729662030 101504253 875521247 256600671 554952031 468701910 991443385 247834323 327115362 614057341 47568153 830248234 379531824 435098146 96985761 917019048 220886743 837134685 114410113 937875949 13713615 812344062 903394348 520558239 444871875 332865652 902412076 864668115 105406184 331827681 92494153 550758180 206840752 976241809 623894425 862318244 101527891 195952296 153828989 678901137 657948716 877968557 328270115 795030841 94359410 868016308 846383852 720539403 241124375 281404783 201444477 97875217 958776270 67909862 954711012 143385144 413228670 687856107 961914083 402422123 89110043 992971066 380494327 625452450 209038410 985347860 650900147 73100460 442544932 83341099 560360975 501407760 414654091 822850144 751210846 102441629 91627140 303394380 700053219 203077135 14801251 407335348 108378997 245368242 753341795 775515471 556452338 906076299 730213908 891467592 413134115 636145473 939885978 918541094 961843781 651856076 700634451 241236582 645928389 588675155 578401129 543740613 149925440 512473258 954526115 418868721 245356731 469572746 93293605 921766510 215296064 303849876 642935461 522249716 882202369 435754441 991612299 28984445 653087064 544821991 802149112 307307396 836773918 135276809 351857082 55444455 274656949 750392079 123265012 185619834 582485366 123228864 582515923 47688437 437766619 461613583 867088217 727168558 886878850 958780003 769224802 727595905 289794187 513394495 247173705 165450578 261781785 259898989 623664574 945608273 429134740 129973988 409892551 33371308 950686314 668676126 142637945 382602280 178993649 751506302 921819773 847706142 725871510 135625493 797028296 558473552 173578638 728160221 395763115 960632750 523763960 93168660 634795570 246539125 869844385 330662549 213981795 277040797 476564498 739479951 901582472 944379893 210330923 416028175 850701168 95424294 713892121 271220189 63133496 338139524 880185943 401507587 476409207 368713411 349574556 714443319 675600240 362137064 609180705 316345261 938803387 181200636 653246286 334575225 805399357 508180110 216908105 16894885 500549685 351276755 228284908 757066597 956029419 89295989 162631433 47462623 901773359 868819105 99790634 895233316 230904910 606602806 484263260 68151919 135175522 661936580 980646679 933122782 847096669 695941839 686728705 376525110 106784217 698774980 557595914 292267922 680299239 121440338 603618305 360731576 841541562 836819273 461694608 495114303 401343735 672792344 896786892 965725899 566302342 436901005 224037075 52286345 584968219 277270646 473988620 22701688 581897268 443249995 128463334 258040405 127940242 741265714 501524430 528241715 827001947 69036673 139303653 305893849 823603169 750479550 712195829 671544793 738042503 992870046 652585551 363201735 488013215 107348358 819333234 96342314 134096588 613363559 833726353 200324416 67047033 426317063 766485764 287608866 182980046 245375485 685795341 953772567 634839546 781877835 664904615 425996691 756425213 805874691 662354492 502006907 70484902 89225030 552364417 335158473 53082803 309602943 865394763 713709220 952117401 178989472 848326902 383569893 536574599 414531372 295622365 522807772 421346512 871126228 872287657 578239633 234467295 582826817 630776031 431411737 732160727 124676563 846473694 2179623 81801799 722784113 10305433 437653046 36724522 189311545 227088320 18468889 390008902 438225948 48364298 45300237 423734977 184637974 46450044 322529555 729979443 556423573 614043848 937277942 638169117 219479683 999454564 536395383 888250073 179557687 689955110 357097946 875204236 555424013 775079517 903915258 266066343 374616208 958887136 407404816 873417516 53600544 134892077 83958902 612780386 787832677 631915954 55499285 691818396 378387230 683080717 915308614 456918813 825695448 355172255 603341075 929494524 845880908 761768482 873435988 200191764 101992085 290016491 706129231 164810938 640914583 980848050 837796562 337956294 831070259 930875757 310071677 578012638 798070551 998559902 311939896 583504644 232733577 489340992 385140342 493211862 623915661 314790318 165773412 557274561 836463379 363486962 578511799 212302873 331972117 856132494 574515544 37345783 244184895 896498927 615506825 171572379 24042152 327731887 323938259 655709491 733468719 244196884 190178903 525038619 558102615 234330397 630564392 899159739 436901276 139961137 181744115 911356678 849912139 352945912 652281979 521170131 200818922 616091527 888759681 868686955 384200185 1913042 934794817 271961212 360910504 420081054 351571444 992007756 135608598 37164274 63550760 415665631 400926416 320852777 33819138 192207311 615235424 705172052 726856915 651511951 110404233 317806360 367461553 870582279 222694200 497907875 830517164 579905850 806444326 367227192 149451816 947713876 466703031 645380630 517934993 231293165 514585073 233459342 835078668 618827021 420631908 187502968 363563742 997571558 849439130 758146213 237471080 262674007 679168941 712533856 902343868 713036529 640956090 758081576 493243755 816513853 840303015 887582912 969326624 131552432 440421894 533952859 549585621 286551508 784067637 37730960 783641489 131130365 426888304 957025622 528976918 517101164 311986025 22982981 678566270 548431296 134889693 225149326 918532141 523499522 776063053 204226255 415762938 675503896 478669684 853054283 302588608 600649065 222340363 574830255 497810320 987533027 348768995 923088146 297672082 883912693 839608506 264133842 448625756 720097101 848937635 132350474 743725436 185490641 329822583 411659534 394138116 411648702 224366830 493567323 794589305 743651164 977963125 963006292 431980301 496694801 913172245 343633491 827506229 673816665 363965976 652574648 449102898 19080536 540443959 162785441 566347960 263132581 25969238 378950803 404660371 547240299 604114134 895505949 183878748 110748224 857479149 282655499 358569334 318519352 396931849 101523550 124880359 540466415 804263750 276411539 387158433 111623431 813283906 610551 601439958 321478922 862238883 551105156 144857175 282781489 400173925 617810728 377884135 445733726 987377927 992350960 704903624 247554246 212076599 167231789 195876218 395630201 47747081 383499600 990830739 348931179 711786830 44522544 261028107 109300174 915180730 454045787 351757218 216694668 421720178 727310791 36570953 972528504 564760170 950811705 366495239 271103708 887040711 283615582 551206290 698782210 770034382 333502856 776757485 901546282 812103206 703444619 802640306 69910356 224702040 747123803 625087144 541379441 325805109 447213468 221056406 483535429 933583710 761705366 290134652 220132941 66031215 79663294 842491687 459883390 47851233 24644900 764494074 409192632 440328930 842371448 70178322 708548511 18971862 872581475 806408192 814495288 237224827 585385163 704586538 364788203 461589062 287698929 630121583 378474557 10508865 603797505 876448059 60314445 997482355 379482918 367767917 385282044 173978876 884672050 848002084 183033978 786462036 358740566 126927327 760945545 635810053 414360247 79159846 70469045 724486991 72213696 593292912 47876780 836093737 510487780 77591251 717083482 98677847 691375315 617128650 609272208 852259656 524885549 237912520 20929180 848005261 128020017 619153663 517336016 276948691 288093683 935742972 90948070 70034789 793442898 488977570 820489806 413139958 641847259 840767657 347323920 587187204 439293422 943490132 575535482 600639314 908035990 989470760 637254476 831877789 364818889 181418155 450361118 52099450 718074888 874297526 744639132 517316793 715785654 827756211 150100547 876862345 712576142 489617423 180310930 860310932 461197349 471309155 362197545 597884793 16785369 287916115 494485397 229972304 886250320 359254916 293082798 47906596 146601323 373847411 906016822 457219161 304772878 315456512 456986020 190679541 391829213 652277064 747630259 311598756 934312107 508448212 852285642 960193381 540987103 79524233 80460648 600763 7387305 303485990 674209357 222418671 190721608 576780660 368472950 983510289 126713292 328017398 921830302 642707600 725994340 274370341 513509726 688771381 396002334 119084173 256201468 692693180 783200643 506199668 565391413 9200325 85145028 649979017 117347048 550655626 889801937 314090348 440774015 444824956 400351750 367613931 449511165 716695451 973959273 616899375 661812139 257606134 893126616 889556939 4608814 514773928 802128448 355506118 420148694 963488105 319216171 980199118 939576037 44760773 445157650 553731839 499261916 421809402 938865297 896632608 324237124 701812316 827281641 361033420 900130361 411440668 586687365 287046357 684313391 237600640 714066371 836504122 446154554 206160298 730174138 865594109 144502592 421885346 470908228 196418843 420809423 246779877 436027177 526756880 530429782 872458829 279288163 422604538 715191494 960925085 436312829 998419791 904991158 591006118 135986690 884974178 984499371 781021548 471801205 283435823 543086214 306088462 627965471 273598244 810434554 798852122 983147904 884667604 870961439 287762881 701493921 423643010 548385599 207831183 266089723 513955150 268131386 534552830 677949716 859690216 71330496 189185216 243110370 108317295 460809456 595398071 819997184 913085906 989805028 4605113 536016689 21740027 173827887 694912368 101185509 758441724 299104248 445140940 835393458 389392117 883436033 412088823 206566445 539029422 189548507 158808901 393053039 503677561 205509060 443920176 124087405 618520190 611889660 509188579 449815196 63702670 367128382 423472810 576013344 961204444 892094423 866582993 4121934 787050116 416023581 903808625 783666216 957097355 763921353 43199806 769817480 392747185 483769151 821678298 693755713 172651756 79024620 339353433 490586982 395000298 467345490 18663886 91286147 48809539 799970157 406717442 646162469 379265953 250430442 37356622 731092496 927680078 359942263 143349854 510065996 783196392 15727052 196887137 756126993 211156968 262260935 945554843 629178453 678969909 797929547 867537509 717387239 755020783 696273092 98862077 454851746 253549955 366492646 573783663 749237755 841814550 996094389 876702923 916851538 739161903 126472737 957043434 271394101 583263959 472823168 953151337 875619106 247855495 235938288 694667131 629673477 222344495 70523771 233658799 308166448 679825899 305292914 383155334 983173978 444976981 541231846 49052050 298011318 496040091 316295524 363216762 868164258 690508089 190664663 895832479 7887889 6639599 692817611 667207164 281694720 811636230 650052367 628361655 773389470 764360146 496120246 996640499 412731391 836842076 822746740 230454557 900089089 746201593 869796968 473945151 644383340 174018935 575921020 523879140 219550603 120214050 873286239 629385387 222039791 130619243 952957639 689221214 524074172 530153541 323218586 961647751 856366374 54681432 511589395 174871188 247443367 784251692 69799490 183457626 354162796 78929520 26260084 730142129 81015132 416963310 817999057 39854794 123165653 183844324 272095712 854303048 733856912 405856784 813258577 575523739 79380950 101000479 649946821 697357193 189978884 98663644 222544397 199619448 826246214 668721887 239041160 414363860 679479386 363766952 76427674 405482014 104136668 614487861 66367000 944003345 365943089 117808288 608620856 125271508 920529696 135602160 331478430 690768594 642661699 507312082 533793439 92555011 18651544 760142834 519579720 269425565 894529173 935463811 969552494 811609401 933096705 907903415 138917415 33750363 593503605 414080907 393629045 553780474 330305305 838326197 364322274 697604776 362795320 818320602 455065151 776568720 91526812 949323678 370521382 161236625 977270073 335509642 642484590 716461185 342199941 835058124 936355310 972641015 782355109 27394972 248839508 949840914 764236471 809601700 49008092 940197001 877302484 721806740 400937674 9151509 348019843 918433117 89658840 188998607 496888462 908032449 375211616 125417294 952732997 807998572 966344599 847173719 543367557 855353952 822406085 627908967 912166438 321239753 302719446 258794611 900842728 831943011 297498089 679661249 14503939 196826719 283754967 458953768 258857556 367616991 336100154 222971925 300261343 614972924 920697992 338777502 774047052 373093257 630965372 22049328 413272074 592489513 463605891 128691024 762600719 134106478 191316411 441774389 91573931 863149919 899578881 441067823 362251009 508376177 219527087 738505568 151621322 796892923 994608696 431019674 831886160 642328479 624919509 379560289 716273849 979883338 703930350 470320718 548849019 734588557 302919197 90005547 516216837 999517555 61683749 789953042 997680838 352126998 520225731 185681564 546199984 897729500 369853605 676647244 279046624 122382415 424500262 993217633 688357221 251778188 229718164 20407195 126394820 478972435 351553562 985822206 521306982 26578673 600348341 266449672 558172333 126103675 663730068 252591401 759609035 164557635 991426842 643572965 590868965 571744528 116125146 639624753 654561224 25931841 392015083 757362441 567269724 250368428 20305282 45867379 150308423 529961002 235433017 795079546 247196308 544659432 965908643 248655419 518391775 854450559 728283923 34246484 958328128 118498607 613517383 982603463 358164186 526838002 979778550 23684389 842015148 936246698 784189403 772521631 782970609 92516681 312081356 930623079 11682842 404646122 538661321 296534843 102125917 780618496 463498886 211416378 833431983 436144603 710694633 998282185 530642256 555262870 977304544 248311278 866458908 660363291 331554777 26680242 546497135 527982668 288529978 869577218 230454078 931613337 770610427 511773197 75764157 163275001 818677692 169931943 141666293 347922951 202933691 390548209 451274912 570102255 783619185 506035619 679045740 552966853 996705113 516419497 459652122 564840087 812585540 934976802 651631652 773713926 475914736 524625736 172912946 965051978 583527604 238003779 571875829 281500064 181714491 549377881 469681228 622481460 246665993 362456979 106120724 558757131 666053128 677565080 797851763 740120744 554756008 564154285 745600800 194676349 159852565 25364209 413126620 215050498 376054018 665038701 68783448 132021806 503796378 699488797 798447950 43395003 665323197 85900274 332871850 82721376 462375304 685716750 908366616 683348962 550665663 794625664 700033757 813366993 679727915 483204110 92014187 205052075 124856575 176929411 979055529 980673299 746715585 51399571 758918153 127672463 675516048 635924833 964444368 423734795 969455836 514992305 793948776 399201866 289417862 12784212 736695136 811825726 114909735 138312952 800564397 240579169 571808480 496513189 647910437 340444070 708622702 587039889 338319456 123692527 429934183 273983033 274886748 301416110 71224672 892797616 82964709 589513264 763984746 633351302 102129823 304155306 304313238 342743209 121066984 881475866 776185039 249781263 344094925 600321362 372785966 916234779 410887750 546283500 41357433 207421608 344273189 40694121 979069990 177202570 395094832 460675511 797859453 701949229 173438695 353602501 696897153 661673231 13571103 597329765 134554865 467979985 469098354 820133085 93665748 840159505 744336699 745804521 986671937 765542914 836102091 371517432 50307678 157851398 261957011 790545026 266028358 5926529 454962658 676235410 387058769 658971628 860091266 654347148 637569710 344273471 627430223 315412244 969735067 458421980 746393700 309623700 501581766 259220125 238901606 947904254 175763265 438117604 92849564 196165243 44660484 49058954 699397601 74131283 856392613 321521758 801959231 583137572 343587233 484840712 349545977 286829642 192938283 924044441 628545095 199189916 688947414 802875728 187123846 55531335 891316398 353312814 341741744 622603488 323745174 476636275 813106946 262107379 160059169 806729776 16461987 364082478 15490651 236563200 5248707 823732553 171400467 860736874 463506317 764204096 854036297 839227785 807606285 694095543 762029456 238804756 383679404 150004122 289063581 281150769 662084545 709662281 787892046 297686433 681504788 958039268 745336742 376438706 401039671 905271247 540230955 953679855 866203378 886748238 113203134 528924496 961779958 504079128 290359607 2425149 722615751 196347191 423153508 705878315 567058147 135145584 218398810 238751246 975960591 485634577 195668810 282864848 640236358 314136969 116748519 888012088 589261797 417562724 121834492 833701634 712834675 907603015 265870127 295024895 358448112 368631128 172694352 981628616 172526200 360893013 378657210 343987085 142453521 509354375 294736153 771472920 126475049 569274953 831068704 980647903 654552990 237262657 124437588 136912094 579995640 90689783 620145339 752036710 591839696 420371018 152732379 753862849 818011412 97250248 826535698 690131770 817618636 31526544 372950924 85643600 469798948 539502418 286116318 572077256 147006951 756389262 207930913 976133117 3775145 436151463 60827793 94297099 261655366 169681733 10947810 94620877 595396138 120129750 325827159 641191317 568054466 582605254 838404643 92164827 901352792 257717565 884597679 970404382 148787609 872412948 376155349 528296329 54673840 181870463 339952895 859985409 389227906 55079200 165626850 608091649 85458929 304400420 677615197 662569370 927536270 858231845 457930170 19673870 327950939 193334077 15069900 834678215 979012701 523921700 250370153 750602855 147261476 279815719 149863828 9656453 710354990 953198018 469834545 255216368 683973987 837010278 75069507 823425631 879743921 615230313 863598202 81284692 161457092 859041471 551029148 146750996 431744379 10835940 301616381 223435374 238683829 127288033 227318092 629375100 857890743 86511397 736253137 484562100 172069381 136315690 268064587 746548406 115316249 763017941 213648710 584386072 522749493 163667257 136855126 572223014 504392703 507938796 579353564 91431684 51197183 724768378 596672778 106869883 383125661 213314438 52985816 201056660 888659218 828929970 566595498 536636286 626222065 719668539 832739909 722947131 880219374 474529151 317327216 731701236 737023909 701631180 737725380 334011611 713722787 393628302 975416532 853645718 472808850 687646767 356924847 487073873 667880038 202410551 593132762 936065308 894432729 409947968 680633824 798002029 835309762 207078404 865037291 884445985 877695530 117748303 33967937 440113096 857697734 544153649 927762410 292836222 348109895 817717505 111799818 822202372 699299539 89427168 713194262 302188440 72882808 227631092 341847350 429547918 108114385 681565324 963725438 237106914 126393370 325601919 759461509 20983902 918042328 66502727 785530849 502381939 727659845 349029564 15675192 789173886 947125231 562370875 3397515 206692391 937540137 796345490 224433032 864282191 97452421 382318353 689697912 60192757 184288968 283096418 590588510 724991936 788735438 985438649 525280272 637974766 478827626 768826111 25665969 257328486 499001497 205800702 906829793 734927381 690487793 128573947 639555134 664935986 764463250 170279811 580695180 743205261 178183135 532345858 891944892 754456858 745140476 702469020 979719918 417641586 8197743 615519136 13432124 104256362 477684926 177936246 873750848 901905206 867909974 745814842 689102594 225385604 66557454 171427627 269548136 982112735 787351538 800340414 853482376 436517965 438525266 105465488 974686336 887794045 991198449 866729125 284890560 775665351 156956516 769397150 40994005 545502320 966169730 964001645 330307591 256788643 345661843 865219669 672938658 391742350 830589481 110733361 182833316 562697633 643136410 856874996 251533217 393778882 803578265 677761713 735428464 947452538 452652385 405678164 771599437 890043100 57782901 911866664 527089414 70648442 627622208 492399030 65451195 660860527 598935171 370582608 353911346 990921090 355641252 41349570 398412658 812172504 242462703 619743298 486949923 708690044 516453562 10748958 922229002 495669223 613291206 211841281 888166651 563550261 811118038 423541070 274081552 366878808 38153242 75015560 650232976 801247244 425582909 763479983 535724074 669841181 804794005 33848371 126029633 838283805 979487144 64085707 641470554 727367661 380049179 2265675 508410243 353632421 345659257 767653640 753774618 257377068 358342687 966161823 681286619 477355554 856201192 508243527 874711281 294487734 369772542 918337697 536130391 492333683 483978262 263291951 475511521 943819359 945212245 536481949 297072004 576090831 977026385 492829496 179646817 110277564 40397982 98453420 888218155 335991507 193468641 946529764 448158411 850489393 410077597 609791923 688159167 139772732 791812640 960257986 721717833 850639121 51951414 669647187 459870782 412169748 324031147 702370339 775661544 432952334 41715416 610764584 858003230 683437447 410947392 13729417 842774592 652682074 978934894 856400034 994607357 817418904 195635364 895088246 936196891 867837287 207375001 758268678 83909458 39988328 212597764 453999328 210292265 64958176 888249039 200984521 210326744 523590941 707925633 739469087 184818273 172437606 805367113 53259288 43527580 380849828 169772153 104811110 762530342 832587254 281489185 78784217 183729671 365471369 833030944 985846901 95987553 508778000 782085685 678143863 401661182 182060024 638030778 304494310 481054778 28071762 771594819 325184514 939543046 257585551 987320513 454006505 883463904 989604115 55228684 606841470 976143059 370114828 57258137 20818917 922241410 508286225 160272942 366372653 155764635 553123505 70950115 589307598 567679127 606856280 969776964 254597645 660113897 333487727 33656270 86283410 812686110 581957979 428567641 200875053 346214195 507320579 562808739 830460100 852045645 563239615 612174907 551555666 109341684 15888370 10738763 590565676 453366723 59966278 643865534 321513294 492870160 129204252 879610059 320638004 452959647 448112292 815455780 226844748 603289875 175527873 256926351 299193061 206257115 880430423 730338987 701427552 630984324 582674206 270732111 860751852 229465373 333567855 446251520 133874641 117456907 351338324 625960814 213787175 898835061 960772523 773907444 334315978 970626867 983160497 228313752 359439131 941717265 477418216 911222213 783579137 124011588 113719942 799059537 742944328 836540231 454944252 499733785 700997964 557095630 32344123 306265331 665551010 677579032 671536386 117883549 420413788 423618300 792724803 226269673 350966699 914063375 958157212 712440296 422507098 172156844 991960513 709114780 997576551 730126394 698803278 490881938 962134463 894796209 565045749 727659710 64779895 911305299 936191626 633110516 845612927 813563958 457801256 830475438 173398249 570795402 222391659 912992468 965647737 975810999 496426555 902133458 266719125 229927946 652455974 47421556 249194279 217299520 930778532 635854929 920429506 449345140 151702441 133074472 577849404 854167134 426249961 518621955 944599983 621973542 773614466 773944540 474609047 747791783 595220121 721819642 308431163 361830868 751516495 128222330 603616955 219426214 947881071 479469002 188714450 222041922 517399887 384577727 860280710 241430810 790159790 944415812 307522338 356352562 559776896 609081765 455694702 221430409 358132199 229982494 675585863 546979933 809522337 240979678 845768877 426699671 17974211 489519448 807028149 904437445 795349252 698327409 119967069 262227220 821044513 866543407 878828631 997060153 301670685 389395804 668159224 927255533 215192531 266665516 315521857 891025560 50725820 855967777 291617168 711976946 298585673 612877818 798047633 975400463 657064522 800410565 893320455 30914944 175791187 868836084 157485693 980206229 538152031 190770140 495902829 181543052 685844471 783807524 648994415 104153714 147674937 660167948 161607878 791607782 793258610 592777405 314960379 384325871 66103327 345561482 359707583 396170374 114422807 787231938 270690545 424917521 301504462 350337400 755175018 195120497 661564864 192053609 803302245 130751060 643736026 914876487 886940384 881338762 636434401 704048213 443280686 903699394 430474456 451953333 161467242 173773985 400660154 687399816 666781550 185374459 414629299 211636003 507520315 383820766 537731694 921630211 991746412 695185140 756008611 93086065 900072388 648115195 651486628 779813617 471904739 159845534 549528731 658769244 260066659 665941422 935325371 299715846 775157192 911972993 102638356 578398242 338058745 696870972 339634794 680173894 725870017 365270652 205073117 352562074 723295951 722602011 911842596 739346474 973471861 770073878 558420656 747666298 391004683 54782957 505035390 607552223 443901990 925089222 387260463 255999257 194624397 359358742 583644381 701833242 381954013 12925774 405361008 512971879 91835602 55316970 128527886 700588463 452793731 66446406 496868105 509761683 264711708 52347295 166731102 213938043 976609183 634103022 481959766 303115487 473636606 689979371 403053532 584942773 513757640 959016434 289692311 944950983 291321869 399322753 240202370 267265511 55403068 7904962 7838874 522024650 465645522 803861180 992761002 539423322 538701629 66436484 21136914 673877 840059343 567797827 383727758 406595094 185124844 199468379 422242260 736368920 125585419 648434671 481423624 626240335 463638930 525139228 702710044 236004507 837378532 933037844 145191496 533008976 403334934 834363774 633604421 307712914 36379814 697773153 359697089 281892615 537635908 330595008 103504563 16157434 957264146 721264197 30635144 245316274 838280557 956084570 442962740 686029161 45572321 765455567 961936990 570341781 895453513 403061234 687893734 308856498 808926784 864023350 741835477 349497990 748160564 15474704 407040004 619788137 800472966 164638329 317666043 846320375 884756974 387412036 377796650 983582521 165692650 238424359 385996708 834022075 894568341 698570016 682458075 202238674 303620753 949017119 323358052 614570022 827712395 467166072 790832298 286896590 476023416 437675768 325547075 940479721 799173530 496957846 630022158 376452393 856264172 253742103 895488530 229518177 289256015 393465213 210795003 561545077 391108735 282577447 513852149 279389724 918629135 23697338 419692663 988920879 323210682 707389433 771304741 358101540 635660361 548891893 248236963 196907484 851387106 961768986 197027918 496787943 492408792 319452097 146836484 609201152 110754817 93565491 4099334 126830861 858880456 121722752 312150020 77545851 247735445 168788076 388348161 11452630 423212430 910764293 579345242 729933274 805901053 738585740 24475983 581958207 443547281 224501054 769505082 8687752 784384987 567957321 331113300 599473783 938772379 397218156 193877926 450877735 626686214 40178362 411187241 347559867 627503757 485948498 176012230 678314282 53689503 257206222 637077726 543717167 137116185 520293474 53101735 150908145 333289955 852438950 833512247 984626234 876348068 758621605 645867620 601755416 767376158 762977066 264274374 731441975 234197999 581392279 19386015 768261534 505465470 967601843 956100751 733224222 47410436 284812208 714754395 332885312 480850141 444537829 788493903 262070112 129058361 976553971 921809682 4058925 527170018 694453372 543010244 179363983 236680675 429283599 724064236 905929214 261459465 873750080 173329507 326124244 823907174 241393775 136055474 16307169 307561222 203556088 97757841 457315002 995403902 88495707 536742100 878470834 985918738 527550536 207958549 264514583 393454003 191538556 899180619 67381711 517832072 741538380 523921442 677783205 298945119 798970235 754728462 717474184 292678054 157985514 435494074 177842715 334904870 740874615 628017013 154532376 417019768 483161112 755845164 807345359 207814895 178810363 572258971 2825982 552374324 24603029 610280311 226125842 467547982 25758470 400576824 999922927 967656438 547587895 199512117 718820777 467950716 152749559 257779797 281724462 274532029 350881903 275635716 552864358 127812614 756372287 815103806 457986253 521804109 348774792 898158508 267455178 683820188 258481848 300643003 918605985 228320520 875671455 972081855 511863286 994347328 222077922 169572551 269278301 633077332 985710593 35829430 509789481 420401691 495564708 461619343 117026173 633459902 506593649 739146176 929887157 901907818 910488404 555256272 225039402 106546710 263653791 852000808 480084186 15154356 849118783 323496620 305787387 109703032 455323148 293646623 384678243 93708183 477286658 61101006 982124402 384479948 386176373 953284726 687299078 518814702 287466932 941052587 15903529 884139450 193530554 191422626 662081465 590958152 300136453 965904073 997100774 511188097 902236635 661056235 814124897 746762882 277283714 453812787 242685143 512697501 637165675 149635438 222979245 619479598 525314174 875344708 850570640 805704536 260064485 648281801 340916661 66183082 371122950 637567531 208867219 260612841 9713212 531969944 890376660 2420526 629176111 742468500 500499591 340204685 654216392 921873055 375312432 389031572 526303071 18147045 720195533 980725582 553687774 849496445 402793426 203910273 809331757 477671572 589992399 769703834 260173302 315478151 393847127 532475909 888695486 135378610 460207772 126805372 318423335 864181527 841734848 151856889 281429318 264597390 521398009 576489579 230921400 949715231 201547030 210699324 326327543 295404061 892620468 875307063 970587575 266860311 419744243 183703262 483835569 733550194 992218598 215078465 187901882 60141340 986089553 883928851 71508145 202276498 278743227 875740655 293950867 833734743 544060470 717969015 202170434 755379244 394831977 648628810 446789358 325183103 553918544 85388704 646809532 779714455 269611732 476024891 283593523 156141576 745610569 931458946 806394828 380205714 48337327 311728569 116577593 512810036 154543484 655171182 634794968 155900192 483353795 996605838 513231900 786840165 804271356 385528543 782012546 652581473 888547699 546325360 831796538 355221824 578154106 330877654 63868437 311637555 936329484 883800467 978118480 826542209 97784396 212071458 272025123 24183044 765616614 835611644 685840405 83504028 398966807 334568695 594527037 1210280 421120616 53647125 377273364 218686234 332570282 831266598 995820562 959344268 116461075 148262370 372115230 691569994 27276624 622436954 741783636 365333958 12348579 378660755 658228589 908188489 18479641 97937630 823085359 663965463 545826504 251832597 737019987 920929832 17344158 345111576 561305951 720707198 111413921 751528853 310702944 532968595 681342460 447525214 845832415 8464888 707040961 62959576 722874198 962070398 856179394 421772761 951923890 966842412 212804261 234280169 321094138 601087272 616479191 642602004 964445665 611946925 482230572 875598774 770776685 325035952 859533292 469144864 889665662 280680395 927293259 955031050 653394872 826854017 494970744 753676606 108020158 197599735 123835907 507801786 964710645 912372354 438495907 812641296 333393653 217413824 258485234 69325250 637353682 46598273 282032007 313914733 427621053 687078788 237185523 174605419 44295230 222540491 632374715 990008112 294018548 206587633 481543844 175737551 928991652 460461434 804773624 897908807 777192699 519712765 503395108 41538531 948856889 947996995 372058663 387984390 630327591 313482915 34453213 426861831 618813180 380517503 297026175 984134730 259795571 58529029 893021082 598847499 663756460 917672605 596729550 387429483 489683328 848486024 592579428 193950712 70194682 899317411 678556569 13556732 809848445 299102382 170187140 554759363 399272412 562403405 240641667 230425657 487529308 487521256 256061741 297974436 120789946 734570123 992803844 456143116 659125872 806291454 232310386 907762746 807829771 994423645 930200451 626201170 158180289 866024264 223536682 270495707 610605298 734030092 320451834 83297597 191927880 998600921 284267344 565289810 789507114 361154752 334258600 793120 92946952 697441487 251798337 470503394 674148625 456506291 570315205 605526838 535367644 676118161 516358138 393942653 524809923 594551939 514473198 154244775 497397939 22540658 436794513 172060315 389028384 282677878 996104533 336608491 584845885 363734260 128444766 258057893 720788135 273332604 723177710 117820054 976613241 766792673 395338111 681510512 715492047 551037217 130696893 25737924 624046819 228978594 889208328 695336668 57594322 315406874 42123858 545355280 153049738 818168402 288212163 101572052 274981651 767770977 271020903 111104170 456551662 535205947 732333181 5307621 741062527 979894093 543521295 65579212 361724039 508800732 316297093 909129158 507866409 440447191 688624166 305397587 770061119 175968473 876606348 257444565 242574640 169919335 142538393 823403817 903013436 82067284 770732296 514995967 419626983 850561770 274526652 364196813 922457526 258637889 912620112 542591397 470947735 412680223 553432945 710041115 857956164 135132932 229946239 292433022 579548544 268124771 490560002 576671692 227092209 637701383 532573917 367201351 34319680 206819728 479997304 107537191 287430507 3556753 315729424 751128291 595990808 42497386 361077675 8219040 595037554 776028390 259566720 150118097 325354320 916871475 383421874 996118069 620163523 252215257 390437819 332205735 566428864 635921405 594234854 858238159 633869998 462447458 612272193 848316216 439623293 276704502 600782327 239142951 663616216 826758301 629151885 138547597 318119472 826949044 751186957 914414109 268352533 152872144 958106627 514894077 925811207 956787695 358480225 677257006 874089339 793910916 558945543 185472708 489891414 865693606 535046738 281796097 532294956 534731811 85471209 489486018 152280835 878764136 595537987 297355132 879682616 65879103 123991161 681777696 596158488 4996172 167708933 906071784 165406467 936902032 709023734 148310210 488670040 889562250 188495251 23071294 73285090 182095976 620406578 502544011 966902025 797384950 812743359 578691783 135398751 883505628 663709102 281631857 343478476 978025215 356015405 81201325 895994702 56840263 26778088 319537598 400617694 145257507 74617958 504421403 332810723 5907143 451932295 52229898 968355499 245817395 824386495 321158859 476143369 11888580 534115412 760748372 898442061 992230914 628089719 953427986 894412739 521734596 926927251 149355856 230476674 120473005 752161180 263029105 656212561 184192019 747706593 17838444 65817984 736428289 346436581 627338579 796266242 921304847 843417316 614551379 471395750 252999711 461420633 977951606 593100437 192638528 859311720 926776391 656450424 149712743 702073341 484270159 356101645 767211779 459755358 528713697 427915786 279496943 867355342 497575074 295130489 850567454 602062157 844317695 723674286 883597411 549020755 342048825 462751578 395738403 154686578 26009420 401236633 608077253 551363197 999825714 679881045 57754478 676865421 111303432 906825806 769605574 27140825 668059210 378486910 860665898 994460975 200510678 676343722 452975773 190729849 85370053 254460800 156209549 322056423 285603439 657484187 714399183 284578255 400290086 818728301 933966288 869986152 634913231 786321819 11364251 927122635 975561751 765986405 49780222 307819539 948300592 127873584 749383422 209943580 729751678 171335575 797453845 370538529 247046303 602631370 725602953 394168564 126934484 374314104 123307213 244999259 10530179 797950358 180202229 841963371 817706367 975170094 857409319 627931026 455807022 985384938 835288058 295010621 725367759 181204155 267377583 671234357 444793659 360847994 492829790 931272841 421600207 698444722 13154450 501328024 182236654 50824048 617806451 605026700 372521954 345425806 703553578 350510325 110796156 622610882 811349636 142971779 564530010 886111625 940265379 987172466 835589890 660324798 743379832 988062144 924993528 558153682 910363980 445499647 858090647 288668390 774632822 988328730 467019878 228959578 387607773 459399952 526027494 940043892 17702844 7932674 961963194 866485106 974106154 322001772 203040066 632696199 728849922 422930466 289050080 658940714 208871312 833946393 438535604 462631930 920749540 533710681 394646163 934567401 310434719 723022305 79529860 253188170 631599221 241424567 655856793 728985840 888779214 858675864 86930171 12647342 10827530 891708018 634452163 900890170 894417287 321879391 936016701 69610976 926879069 744766081 169239541 93399637 400044056 880542612 577139658 841990000 289959681 594465768 298350865 254399637 847132628 748829094 343058705 516323272 658702501 216505310 576456497 149149512 114788287 149458728 154608571 376468474 432560762 611205818 437423357 506503905 811491160 401128733 517827276 175936601 140619507 473638346 348671236 709022941 366003076 978894577 911296902 193644742 15971268 571391114 81831863 690127126 544337349 824706014 287629430 318726784 546841376 232497281 419612474 347635926 931480141 521079739 986664481 940161761 826478658 890167658 811466393 454449161 759735791 453832495 553838991 872568843 876393517 303555997 634376088 500259695 309166512 984642874 882064512 865900427 348949144 60284304 389687139 846136968 497383900 701121725 944721232 748631970 970385896 383205498 414976832 281336814 771705482 172119362 937242954 24227427 511269094 282956511 690444673 717434042 138275533 826574646 862311065 232737214 470726706 116369572 221763255 20200934 528122667 23239993 122853562 62210698 866737844 557447835 858461623 213699782 978706482 20322501 276042611 307608211 552312728 959042299 541720404 601618693 390190140 591144736 151891957 741928044 912014412 48922441 223246901 93805473 667313040 702336512 332036613 308639143 178350945 992781601 916381004 607895721 339096617 726991513 264381776 578801395 674307440 84208591 277148352 747278302 43873540 762380833 545166489 956862990 938661712 274021818 396284903 536556445 787174353 107967090 772097985 673877051 36222801 763961578 601221959 571351926 706012377 31086073 519422590 335517562 367692156 892690700 116297993 8109004 24234510 530197662 841067803 255595429 641302840 754951337 624862368 147956518 831971436 920764300 72442235 48372498 352035302 605496514 867412002 485286075 289322876 153530543 70866650 140291160 982050848 921847587 254123233 826474413 594865317 159132108 927973377 151906079 457096914 277779800 577254490 34608169 140407664 717148752 766920544 973828739 703734027 506039938 20692389 90944812 21952406 679629862 604980596 561268362 654688720 333884103 816172962 587548032 30918312 760227231 689071268 37082868 409404816 170084751 659608649 24533999 754739088 814392640 565521094 765319426 862061713 116972526 897135063 248814970 298452883 633916915 830421275 530954455 468248070 869375818 662687704 378863202 732621688 373425706 792247636 592936978 46501517 27729955 467208796 342814540 649674301 771556371 288111430 7048075 632941616 666712526 706469630 397948702 547320756 173990178 26598332 600703886 380313228 638090081 70878983 448801041 870314152 510576387 908977343 573549914 632185573 155759427 612184285 216828234 370022354 298200877 436636732 252234303 24484887 866683767 950145448 985584276 889293518 8357857 535362734 740939807 688469384 567522909 672316798 102653954 631660841 672537661 399746169 327694938 190079844 858300823 234807762 701637586 333315068 912847317 49541271 699246892 589290528 201661991 896009593 194420086 395081512 548066425 863759265 376118972 889882610 856288528 750395471 655015218 623172565 943811284 643126637 926993093 536368313 935779055 675067033 15739428 94004105 650412652 681908764 982310393 536180302 557453720 807068340 946189239 676956008 629982942 985146139 209622271 619233686 467930504 508978836 346698692 734681592 855829813 571071925 138730513 986022179 525236667 60595447 511067779 889328599 501097932 341183764 667430459 41756435 143376157 370252856 512789535 327860227 929481151 568738061 471069737 351366218 579691966 399401277 323851704 725331267 960797249 39784045 962669966 861630873 47709451 339380843 667684672 922189190 460068819 148577448 392753758 501746489 172980391 678845629 292464762 981715315 51180403 132365046 114184611 914683425 260655896 66953244 579751118 734224104 796215493 57840692 254691991 138645445 3878909 562298902 590412002 769029781 512037325 740815906 274769157 691995705 578944256 103063954 994223593 552678417 843714347 200601552 301439838 650980129 647695541 294159047 90348573 191943948 520944975 260488783 144729929 712312180 413604614 156634998 448761486 415541453 293390910 101584971 528352536 967851460 584018013 694940774 893480768 65385644 190446658 616857094 682724559 897357062 61405378 70176822 885514208 801823939 7976624 969939257 793816650 925024047 25045999 640796168 320676709 235901273 164419056 410602176 930931845 503460413 879876105 454302860 916805517 771622577 503238700 970302183 621653128 962226662 383783393 107026819 119858497 816854598 432404232 209099850 101793365 287455680 972251650 560958297 624445808 433968935 878036333 957252976 431573088 870294186 895337915 185508208 489105467 383488679 267943822 930633363 476666325 510337673 218458781 881525970 207649392 591207138 418729193 889881416 377431369 970161161 422326344 128865465 605177807 665766288 408852081 345845235 261953102 265420895 480258513 961195150 304001021 395565711 323370328 488378323 619329780 807191037 602823604 766322967 342699055 580536988 291536093 137008164 574647388 393312928 334636842 459267070 359830227 454468949 753732620 331042115 966916605 233024651 830606454 991996681 760555438 37676865 271668524 115013761 919759632 750394763 799980681 166043836 193524826 175320590 506256876 443083697 46382850 153971473 49817890 218574691 887390412 62394757 53497241 640345413 739678859 842711807 186203259 975829684 33984591 349967279 89318863 640569185 419224256 786716480 579484994 249025927 940197244 515845272 975001098 161254419 215032777 863783443 312368065 118469392 534278637 89999499 8958316 509838220 791576918 455201813 122984159 621731580 840513530 850903551 686162376 919614866 322888849 992385868 80529010 71445603 219011730 714636350 636711791 922873638 702964602 6582668 941976403 737635730 377371186 250309197 523163810 594402044 68884589 203640274 101811059 686415753 882042641 820735315 853581228 721242039 30173308 344373889 880652284 842576330 289446880 432169916 204136319 602792925 798395979 430552072 476961099 906554930 253301274 580972817 567905627 188797660 382448596 841801074 777658090 634066689 245349968 215437541 727450143 546718998 903430975 611409599 721477869 421282209 627953054 397189833 12302384 561455348 172208133 152720401 917952043 466834347 617601776 163432217 732338284 992628025 530286291 619962884 856799376 591101388 792913378 426041737 76802276 306048392 733113814 700752723 815381098 18208739 190943405 811226764 317213066 231766099 927890745 726110996 540413273 720875163 872272220 274009560 371825716 257792314 321455741 703238749 511693091 833420861 701266139 867569772 984143889 706340685 818672465 870164208 926839094 53130598 343130997 971029504 257433007 804013406 562124750 351843807 776216823 408783138 331932585 952579748 736314850 950703900 446167072 331178983 32998857 744179010 743045637 341025708 360253579 834585205 399985943 270364147 540745479 313128250 153640654 370904678 684566937 143223170 107309926 302413335 141505229 21968717 157544772 329214870 604528958 718971549 662828810 267372373 906090118 932355406 573635223 275282402 921288860 986408856 853187176 94749625 684765533 369591627 30274552 637398465 666398113 248544521 951781751 452565957 893736609 976802885 280226838 617388943 265065299 97229750 52137624 771795361 418913575 684261781 633719299 585986766 639618454 246206266 949687177 172035898 11116890 354888243 820861459 219511979 657311856 436859688 51075902 447943869 360897616 710053844 682196635 2956765 903409509 437722971 243622523 934429705 971557150 866246975 177717648 874601535 398319822 914862150 619132145 218119393 230043292 65684585 577891930 166853594 246682778 356267408 535193721 502268417 623920293 27159807 448025674 916688154 767102101 421534874 868015152 852951892 7272615 646609461 995222971 162801422 47972449 768741316 512751457 819102413 787222408 247608523 180870751 770928070 371294387 291140569 106250199 852875810 717768896 263466200 442644867 585680113 435018603 698079867 847025304 737714133 939989611 939024001 870819456 866230036 162703510 61365959 717360514 474200426 578038879 292695837 3989487 73714438 74988536 538799826 132209994 789330197 335489027 755524444 747415001 646958741 135615446 55715152 296314394 769825822 301328871 223953858 800440893 776855669 155889112 206589464 52955636 527348837 845518645 754120954 581737525 132615980 964509084 353476671 104933393 477065209 11676189 599663646 940821712 383924016 553952701 632952001 597271374 262741982 555695035 181117644 959468218 403652525 871863151 5970950 997886778 527869163 436556793 245211115 244090758 329895067 211868644 868168692 487667274 14294321 301564419 916576104 325056548 139595831 657879879 845702254 717001160 935725056 354454180 257859463 343944510 732920260 586456697 333616773 734586065 928555543 22974382 775892515 849957972 336656075 219030211 281481797 752033912 499839327 151914437 831760741 289352794 103418435 3843472 863047155 428083407 533252125 819318698 262036624 596335602 896317514 253712482 297435821 981366863 765938469 851303239 379285578 66065586 12213871 784373150 919455155 734768256 142197807 836515725 563359125 202490178 41619205 324778055 826306318 439417334 379698952 367030551 837269288 63168702 893010466 561646055 147381680 389774360 940179033 56843674 556929455 320943455 709729621 678294543 785273699 972618513 249134011 967036801 1500694 826627457 135267341 146807803 20935753 854856221 622524200 109366925 849854660 529414945 933796401 850121611 675838700 676434325 243969901 244082600 433802884 208018683 464829260 880604656 485824216 190683163 19049626 737812550 770044831 278252108 896161657 775650737 255156639 590415001 177032449 53550986 889347187 177482936 288470794 195173391 741172039 706445133 632849256 246694875 841278693 44143198 804110574 818505812 580309592 925108969 132483861 449536843 403485881 385664259 176050848 398319610 88066581 169528887 186582255 517767316 553587561 171397340 151093071 796087651 962358420 603306904 930670035 30263355 943699514 187828766 692538204 662508749 503685183 245572358 72954297 649460938 654000534 975002438 513675735 927185756 512073942 88864884 257556701 147460424 496900562 266637575 513254033 353716881 348531141 416854858 989207547 17349505 565215403 426725536 27175970 610095909 376827768 176219751 755582499 889641062 290058917 672929366 830174014 339740932 856650771 58717850 903980587 675504127 523698200 784340191 579317947 813312709 610895243 244181041 389307197 937392549 602936246 721724791 397119195 10341242 277717422 878385481 56818794 163132174 960611922 706878608 14012182 579659707 305416330 312043043 748899786 692458015 603716973 231670530 901302066 285360274 971241251 132135059 754735754 833611288 178880961 110901356 154767258 437730346 259080561 512553840 765738982 848749109 95096679 94433212 461989619 136737792 65490712 882046824 474662627 484892690 420599017 937500736 968116202 340475986 139939935 504121420 502135278 574984185 845303682 69157203 851295949 408474909 614665141 38173389 754530172 579024645 132582481 991025227 651972199 630288581 381624242 799436391 122869145 582194309 949897952 743136469 25440458 180479162 93781925 804470106 84535909 143353341 790815021 724359656 100396260 513775359 378365041 84327281 150826733 423293826 568325406 580221666 849007286 113377396 134497363 407479485 593825004 364770352 612701554 829326223 662977307 401914350 826889078 340423880 250022760 199106810 203322574 248305286 832684152 225714286 893357896 272250407 252678143 603350984 242191872 452345434 343768166 504588786 34911959 607797873 502143837 903812963 544686235 801855319 348438835 668793770 11913273 650589689 701660322 373088099 776393067 12569009 368948698 216774885 306010319 985416830 455100851 622848630 487227467 969091895 762866796 630898365 83214200 601006694 944235579 212569295 356324921 784297299 561772081 159061848 119529567 531341010 407661490 327418534 511351884 768388366 939770364 118699261 411108733 579407796 782069336 143436628 986218666 234846427 634420085 878179947 181864762 424752230 812596534 815769162 378200831 414867992 567324019 932143831 357069052 427942805 143157555 490386394 694927341 996292970 855452571 523337135 683282275 671369539 957614672 623724820 140425453 480675074 770671413 605699080 156129483 109406132 26215998 385675248 456268206 466938595 694288492 830713799 908943541 623385296 300052275 450424287 302861959 71253963 598317041 512131890 389217899 70457789 40783604 380727983 19801486 880960301 571528731 184293047 519526391 594250483 449012466 282397407 91145499 823518414 873027139 425882803 201811754 190563205 565147509 172336040 222633592 20912141 353989551 999860726 991585518 60849733 440965977 646087966 538311695 950762421 859103241 945040472 328504368 394474964 444285415 673372562 764311556 580788073 961368409 960962757 292635148 386176633 106377006 454596826 802708322 673169732 334230967 539040370 164543626 301014168 859455136 635157250 238685043 927611388 593447570 406434911 530130353 381714319 648411811 290722007 596817968 432405805 600074013 371829410 710002109 433036541 516432112 420590406 721275550 546034974 646252323 738334055 266967923 641877597 124099179 924809674 459240954 353469461 275019666 599787860 847687178 781216970 391756818 630109279 417019326 21010455 608153753 700396446 341760965 480191836 998709299 776628646 379098523 274060506 721596134 272581629 973272063 536195584 221900337 171116866 684373559 745678350 206619222 875273575 395009141 108501057 391006809 943168769 413925217 78289126 206309363 623876208 253908940 79417230 586912279 693521611 306435333 159021665 982668162 519188692 582383734 76832860 631525672 97976017 656358664 626623707 621549385 575377997 379530028 833449331 360098724 468311023 581616855 782029805 754146191 305366055 711002496 170759217 568606985 752392489 302464949 243819915 496371860 715009365 702258754 406286620 773637895 58353590 152704517 572547764 504833315 828628501 113017567 630955636 793104429 380617083 344976107 334365092 684306690 73518799 593012487 940162825 103525267 760497488 379716545 477435626 762306282 901655925 739938138 630726500 433687202 509821333 980717112 135405054 181982878 255746311 378904994 234171004 471822013 396808494 821494401 171582888 323444790 891065500 86522360 679600350 438350433 396798476 399557385 551348525 248488370 110125686 282827072 567042534 218484811 258977537 385496080 171038519 557139712 45210772 374082094 57066413 899449956 125734872 906611335 836093459 110029974 700303024 51229190 8937029 171083772 902179464 828511307 199119040 801100702 559984046 349186589 777654132 935929031 98612931 45529191 127897556 555052730 388319484 283892174 833646328 781020081 585705748 82266235 521019784 289240958 719103614 106566335 921049274 490393887 819888538 319309546 564358014 230331337 993099579 107818253 343870487 24143380 492419020 114233277 743018212 111664341 928201433 8358873 597960615 861260127 558035674 824457979 120511160 299046048 951642543 324075313 271536946 347609553 305100622 639214130 415562015 763118264 816906126 94744021 172169356 894426585 390315471 635329100 768968032 998679558 98706314 706950173 331754248 790663857 990609984 146331082 912905875 467292488 69441389 259892872 220617035 891701153 134940070 417252237 637012102 487052673 18156614 900009074 936428712 555407528 547584765 345265304 734983235 903728215 43680442 880852165 327557611 296413117 60161578 150073083 234898553 333133760 462637968 513180962 964536783 657096891 770705135 147747429 996204570 382976787 844421642 338396568 984380199 345009363 67564885 323028492 196157554 396648733 387116483 355962230 465824075 767692728 698920769 117029176 356012976 25415879 429738047 229436703 543295745 897023470 558227137 294606837 560348377 20880732 762297905 112835018 502062386 976382157 238078695 869581406 907532842 510384362 573831359 699555273 370097886 943548970 702734967 340073534 114213095 57774456 428060215 428158349 216543370 96937698 721760138 168266431 798955462 31014448 930420748 591959141 694883757 964681160 233703348 570880672 651705178 566266637 266461429 763177217 734099449 565704234 324703196 446106404 334766396 140948221 561564211 933528570 299070853 639232558 754219998 33684048 301179269 829115971 538658030 844952810 931084906 651357474 698207534 101209987 29582094 85518746 800893037 252105914 596629233 691162135 315325015 19101809 315971586 761788713 727783841 118735526 430376555 10170618 407292802 914436999 54699227 578192069 953704545 536585932 405632548 248972603 735480497 139593385 426436090 6521730 958354148 146471161 852843303 512428818 841982467 237363631 248666800 791262716 691149210 551176754 466929012 939883076 779071445 34012760 966909389 507284920 163458344 816829270 514816307 588044099 812619009 378138849 296109292 191949981 994396031 530152870 816494163 395041116 495172696 495686168 635911777 656558364 166695305 611793868 954113371 794795677 11984847 79758661 273979295 390885707 910292137 235955850 679950193 95738512 353068355 721211 120406350 794753588 199669002 374196950 461193002 277456370 562123292 818537821 887457331 891582901 59075938 338678563 980395607 819422207 437386136 934441718 671964011 473619561 488487634 746530487 542232527 536866871 230125006 135391908 73219205 618078762 53160542 397745417 914833984 16922405 619238061 413108536 482455617 41142104 951743407 132267007 263696509 651003164 315645184 889341173 825524263 573322970 774688479 915933503 432933526 425989630 666803845 550536081 34399454 793047759 888832463 11685417 605109888 411115195 351817115 809629019 447409664 676540755 112951781 838240406 559814326 57089208 865612721 924616728 540698188 203620740 15315138 768597082 740166115 797596310 655421662 328505884 270041012 729220400 273017394 229163251 841736696 556990684 238756411 435867279 682142563 192850512 548094323 807145131 676330716 990291339 689621540 384852455 55888801 856971344 633586152 736171041 8524400 278987168 901733257 950755796 251453139 344443289 395063191 876813175 16751359 823631228 536114696 766333246 180502391 481221250 363635392 649439605 706682016 242354188 926360831 827739345 238659423 888476800 225791926 650257792 181790199 693817222 794488821 764529723 680376485 460875628 291874651 827802976 826719361 344917497 992649418 861722816 5981854 524004477 268272075 456803133 101890020 17610853 739770301 803585796 701499853 29230124 688786620 754369092 927506147 140867781 790707595 362674605 830381112 927512175 237339734 945203618 911080364 877163839 324051553 611730737 81897608 964223041 570665269 200480369 184168104 216916321 771142056 637408066 873929817 931782515 854590572 809809010 780790846 647630687 89819919 745119777 950853810 321163362 947289466 602946722 35942855 879192597 769704776 40289986 736102938 373482069 969436681 566596561 67893955 991900043 855964728 569820609 165673411 333249351 208664746 587356482 644306942 216485577 615846808 204668269 944857140 485575012 306171235 124661004 788160149 811038166 460473608 249324897 945801551 54962949 469617576 282238740 278657698 663925288 361336933 799513238 268034975 881020782 759692898 98900106 921945586 681695928 280525335 470676396 940206940 279788271 254349959 337535272 764483234 331087287 225010512 49152346 635120181 916302077 278863301 806047610 554726992 712688796 777395190 436755546 128697134 820503835 512076863 772011239 359378052 717405302 764101220 816830200 646793626 656051256 91103272 897912157 915368102 584462504 95670782 241594046 740215310 33648816 430971675 147012597 403516331 329577466 505037991 240910864 576366794 298050954 93368096 199019753 957096145 507167146 123704913 602403475 154566382 959886731 825578813 151393984 959854371 158086214 292565416 887516778 308980629 207364988 570009904 473298575 80584965 349555949 194797841 762522584 592001704 476055759 816934892 816163868 786474416 155096603 21441248 384450868 203134844 236117057 70866853 631560274 788494999 412367939 378785316 554376195 598545028 394678498 281607490 489846803 269991284 924748895 453060753 944959508 968030403 178220376 250239252 377961422 207010063 419316009 540124898 444860742 168376315 698284246 273527005 846415456 769479693 866444407 208245896 154180583 149987143 868916426 139240504 926282658 198263248 94379453 688963732 613217969 186630241 479065446 13986093 369702594 464204720 835223523 919546450 322519574 762880701 614558109 734477078 705209266 301274495 887266561 930731969 378812366 408560499 23367931 382614539 597011137 986348477 810806323 430132752 429096675 464114632 243502489 588926056 747463522 443769474 204551165 550810039 432765585 934064898 201392617 552673119 447485502 858722481 456715014 905916661 438947908 977207272 303796496 231643042 648934402 299926295 520375621 961530234 71738264 913321252 394671042 492762471 401116673 712452352 451909227 607823562 752274449 628866841 26513079 162072240 647934008 935180854 413071287 593221713 520431846 744088864 250396466 522068285 223568268 569035423 3107643 28956912 371599608 999884003 283504663 843038870 929031594 259060446 861265983 572974082 865670523 476756659 290501975 687220329 767453137 492349887 798482943 82095167 815995637 796483300 990893316 273665622 756277570 638413968 475413974 572389093 864566750 735324304 402506465 96831973 538149701 391998216 248271647 93164187 642438320 642516651 503571792 539383236 737185036 695871479 300498248 916812047 970305627 962833497 324687628 572177176 373923673 343078914 319402204 467771814 311738376 489607256 786835623 270357454 651585697 736645254 772665846 649730320 987045840 600530523 874144384 608058534 579855226 249437082 361801237 750146085 247151942 872277000 581423358 644592170 847637026 469865230 128742602 92385459 908629655 918882452 878931484 995938931 177030667 35861081 185717188 709390929 910363182 64202589 704008511 141890265 834898025 183361464 133527687 829433284 922189405 158440044 644239304 842904719 332232142 894546991 602225154 938892267 735787005 297176668 582961983 536265529 650557588 889725417 595241106 672381447 442730089 693430727 324984548 206042994 896934249 465930172 592951255 692708030 648796997 266829364 710698137 842199361 771784300 695993881 487279899 530142452 295251753 109916686 968287754 409032188 824690281 410570479 145175070 516228286 504652436 796635331 30615918 98268232 759622961 702025853 583927083 214164564 122413141 297442865 790386328 221951717 965901642 477832719 520293951 902078229 276211692 771383220 977751720 954959486 363799023 896685769 813788601 73979972 718044932 597433393 698882473 396150462 133811760 900597748 150388652 885469041 132976519 523964703 219649052 175855522 750357385 751390840 806768263 666730616 131642604 761630932 71147852 104388161 317649656 596212206 180616389 733420523 451438031 513036329 456837920 384062355 891461456 230771103 514840819 461531956 89770581 515552280 790387388 346506681 135670124 875318015 371986569 688326403 770543455 280910766 620426106 515414542 498961574 742071753 705251546 566789742 137458733 271348978 883865572 173667011 307617801 822065282 189787406 887790205 590048213 904372705 302430816 749460796 18275455 912490993 410240524 866665004 624850622 931366687 60647974 704388772 557467949 294992570 628767723 2947666 685313897 213085569 238113526 250352472 486336462 696795527 661672925 710639382 965701562 136287620 949717412 255404647 134547781 713208486 246342351 799307920 771940281 527749106 196169333 250824124 710666403 384469018 276390102 174260766 400959359 408170850 789055681 521853625 309383555 557848413 137997526 250118849 16735739 803924994 896931006 227063191 154010191 874390375 100889409 76946676 705918648 998779598 606984810 12156136 642618346 476960776 884989995 484264935 71591545 797770569 37462319 946990172 504638939 819025204 832883892 567484219 28559213 640571983 634638937 562117877 347802315 988883836 264343857 278572520 17096790 234885274 534435195 897343009 557287904 214394026 420089036 323318378 136737657 477923759 577175578 558683223 908016112 391755046 297641198 271372041 172165450 959175734 105068091 738519573 19683378 955913259 879801018 352884336 718626267 552270329 624903505 322677593 617100598 285913416 462284504 205238692 226235105 135864859 815999157 937454183 664506165 566602709 37573938 234064527 58544795 143274724 815798724 372313566 464997399 712696584 307637533 746603730 752260701 566460176 235541590 102795755 580787366 992286604 216441795 398271451 710101360 611589223 664019609 856160844 108667385 46779805 171112686 545196537 998129448 763475462 607909053 994860235 167745904 629636154 884681329 765758513 373019631 440697368 201548219 188136269 205330507 682886066 422906897 911546883 742341252 45140556 749476420 240947760 635620385 27568335 388199058 206905714 125073100 436004998 871334697 180605889 699607312 97778411 522351590 927907002 137269771 451579374 984419796 790473780 853614979 506299988 994155351 584245339 902005671 133624803 266874006 948977105 839214602 456201881 913063346 743169551 125530280 103087557 949440617 522280693 47002461 135224441 285278315 778541443 556405802 225673016 697580453 536638193 427380125 429962210 95972360 743814459 772178467 865083737 415306231 249862742 286277902 116688809 623664757 150969508 760276673 562857819 948881522 380863053 342250750 520930373 511340227 658802281 556129376 62530762 258632860 335823080 717456912 410687879 930765756 101601352 486678098 25111347 4259898 240686006 128409832 499455925 945553808 220064064 954157095 730590982 86441194 782804998 682098686 850561741 744696552 868237691 189657220 672284835 851179835 468876604 993521346 47942919 311511989 320466400 463702596 447041982 466409881 532851290 103215236 441739193 710786108 26722966 237404643 708924324 533520886 902753087 508819395 434108384 325085300 432443365 367190007 49568398 139005224 583121323 695039349 572221130 373813038 824001832 434796801 869795939 577629973 616220369 674682785 90513450 223425265 312187778 402920385 586254584 801008592 965494464 523930759 113112511 662535164 698815254 862750916 97280822 687487891 782342676 427527675 670313885 672848571 604876946 239475531 100753021 259323787 768844878 242542056 948881486 505762211 7312639 822428325 563731453 741581677 914582101 958372713 988741200 795372862 404639253 39030018 418954697 502919834 448459525 953413514 88027859 108139522 675092592 732735665 345972798 551092703 915710586 796681541 399972729 942580967 221418379 288411628 632446995 977659920 651380536 568308366 580379883 756449352 223300918 24720151 969301872 426428257 71322502 2641465 473650300 798800444 453038888 230335732 925394738 476150713 90422715 581048497 734128291 577434502 987372762 344441209 905996893 467272461 893518626 91429178 769884007 833456196 751483151 467995282 291046315 146401526 87608662 97260743 956354405 919893032 865436857 96986983 587863071 685107919 814867839 817863212 909745791 86283905 811669044 1883937 824214349 166590210 716545898 762723482 402624322 559117750 368876417 837885857 970969050 353923895 585868422 25165497 854084956 346779059 962272681 505134466 857877095 580211259 632623633 2688598 627239899 999832160 206225865 680073724 884799993 640272878 371624976 991325076 726409657 949938948 847965236 631279247 319499735 87377639 162755891 121358064 557034198 687291886 598456475 610782748 849421837 523622426 365687473 207196466 348607784 873702140 877821922 578982717 708881976 623959697 424927874 843056126 545553697 461487881 680817390 330634747 672912476 145098537 873336549 180020078 312179851 267980117 651231843 334878256 912166895 220929146 657854464 2522154 189991475 724007194 27093720 708300708 193881695 218127944 450077543 870291216 895348533 210370444 74471267 524267785 820656977 744015465 859600609 343233497 142253384 770105785 970602297 130837959 167862191 509546932 832793758 286938755 590980339 592978313 717010906 44199997 799096410 433711212 805867107 970128579 969566031 877952888 487173451 733578 862370437 571517340 864331110 213909173 442867854 814071724 125807273 510646324 126888735 851801758 825925612 362936434 928004297 635944860 137474058 364562682 39678967 617377533 820031627 816485051 292152276 77893333 717382840 728972423 629928578 759283313 835688541 189949671 418531558 157201732 657213566 943085797 61836400 264192646 112546141 192775364 885842536 357278042 459277491 722246296 269700503 122369011 903470039 692355314 593551800 412159932 350867608 259638008 659943232 83764413 507204147 304955480 880186817 493188277 88950637 89853548 263558580 152869592 253035426 90924645 231179260 402377541 958941226 186992158 5029946 143303716 14609160 713912899 876193718 947925053 331200251 841153022 192166527 955254762 293093834 726267926 134901629 278604915 823924943 220396436 646030040 927118359 430035762 754902790 693073518 965968652 915278127 750416397 837789904 489574437 324668611 829898520 379975491 978129647 171104582 582374160 109153 346095098 986407791 438860710 182603075 415218957 106170657 462107333 661929128 242571202 802796720 952460769 970620981 880499142 478291939 942944482 322054867 519702961 938233436 749267161 892870263 992583159 957640141 708789106 794820479 137165601 169884015 232620590 340599342 677610406 863187738 336199485 648682080 81741516 954193102 757886994 274994958 294530306 1625428 89422804 407159021 266787437 539326509 983859177 755148880 367988107 673149901 786861955 606363744 67870137 930908257 302830769 876763519 193581404 382793900 504381174 428086751 800303359 706158003 546418893 686028898 926313930 733465484 221054687 754257831 800910734 500387520 487630799 295168538 424877956 858765556 358191874 896781383 938255173 615516173 248275535 132231068 274218817 284396927 279882305 624639771 344705442 257834298 757963169 852536544 281583255 76055808 930430119 245907657 647020726 2938037 301399646 780895174 314212964 493510123 445205137 335220833 810991259 902793403 848441519 711900390 682159341 69293760 985578956 745947880 633716838 999580845 200876057 184543010 897652677 47905136 412040637 200110750 153151342 967960579 910900455 363401950 899408804 82089904 769380186 88622549 336517135 265865957 736373801 557772332 358015996 28545035 289015212 560183269 583985451 659854376 870842632 132186723 474272635 197285601 197730693 10110324 168626621 436478069 255608826 734204223 795852072 195094501 114378002 732510255 313969753 879781949 659581845 789279384 863554064 91874649 278017934 571574772 994230738 148142648 830380941 824135059 686516579 838457613 465701334 489064213 931180479 765127719 966716431 335169548 146621258 143604161 41470436 447081618 655767907 644025895 447177867 739754231 172972314 433926199 673597727 751270937 255383285 315939229 143581791 344350711 68076882 840411451 738737412 363845522 168465064 766632234 584491521 890006103 504570547 552772868 286724398 403176689 512234743 394876503 594105249 822891427 67449472 315626204 246714863 984025103 229471228 400114375 710944449 813175932 362927725 349322838 117261775 756356876 268305816 63432638 329794520 603974895 135529836 584628369 741472704 577730276 813470092 595667925 670520595 795533032 522980515 719348903 345096318 935752153 26272737 924836267 461929807 750501843 679620427 34757937 719583611 583120191 847164877 402321427 422559050 173617142 948878630 615905547 331530433 399755742 115933578 367688298 703605479 215180091 8705310 71011214 724866429 829192512 48625895 920443451 58164502 889334725 581998455 221774250 157592207 730746604 295646907 867940611 70589777 715621748 413945282 727778412 94573428 815305170 509361969 28703610 940079758 276118673 622811389 156889130 507182034 992482741 680544121 845020228 326276334 307932496 859805088 365792481 393286779 612242725 946163924 27032114 8456139 71131392 248904710 662810646 629279766 128117476 871267896 148630124 99966124 529887446 987569396 488779398 128776340 898609661 674858985 550006772 515355282 35411908 541050479 172733781 423844667 324476626 829631054 218665371 926819945 403805831 249755158 619585879 82891564 608194249 687212211 85738309 371454664 429893063 985719832 431106531 156671230 567324250 106249269 623373557 263241963 565549255 595301042 644150778 389512113 218906490 144276772 850146932 885282274 784224137 249433873 203499361 481344686 322298840 168099709 840235998 217300557 596219572 399584137 765601960 162957276 962398871 954859697 745042908 93468035 417194643 668893158 201397201 201348561 176057584 308098879 995485586 447371973 101705128 326377765 351540056 67842384 642778568 141135752 64551962 23730674 940733357 440476387 97431740 37030630 515054990 730367584 874704319 632541467 928499613 28139158 275437273 661466890 100967403 60824376 280776830 637896045 426555576 164044527 463642708 834169327 99921323 841557210 640797271 62876285 426623160 395361839 461230394 238796413 579123539 146515425 350929925 665195205 319584529 351217269 616917446 131019402 825072563 217459041 100678116 298283179 62941446 151848683 905688978 502273323 582535520 656397580 924612716 335815413 909033434 824624992 526398215 709504148 128089482 938196167 111669161 834799074 643867033 317968173 458285368 740391050 145013032 241791249 486168003 21904283 464956850 713393981 914220521 18647477 649049374 137095977 872763556 513977669 453963524 341124715 509766949 136844215 186245598 85884927 762096551 182059470 270136935 856954849 572238947 785196788 255889014 533485274 37024832 126970445 944043705 490811351 19056392 181700446 645267803 682732845 193936647 301722751 948353898 547928601 215082094 636285615 511672070 88368404 240498971 10585434 196535036 848213378 505146870 622275816 648121546 84271876 366235950 771057574 238781300 369671574 559968582 354382194 11209777 427005914 599858645 420604807 71062758 743864237 752895208 885750296 991888820 699558009 486516433 316387543 73479811 499855113 489176745 71612964 49141222 663008079 619228789 782328423 658633419 733757392 554510965 738731368 228692143 364222653 586382747 233355889 173869469 499570158 327200971 765382250 989494950 581717288 558521005 850063169 215567760 794956062 830328120 772254448 317637 502329296 105379997 720257302 899516841 578186140 847856902 870190937 941268473 951817090 874346099 252361815 689367760 289408005 980577061 312899266 303595231 632975863 197249908 742178843 700659886 43781420 466367722 599330923 819526269 888248021 636823379 894225601 36107191 621937349 167195191 969966362 790716436 764032086 573456809 563746162 452993019 449366482 870061824 170644393 243771865 998993018 258320105 463169702 763215413 276465615 938376813 176112490 825452432 944486732 405775952 311336089 190862131 453380078 220075022 371315815 509189043 480614690 158354152 260785007 349554384 712044808 20905676 908526126 279555157 422143284 973924178 160578891 296598265 289571403 997720489 936065898 520891949 89242188 83829313 429889952 865132393 633850129 79716430 185075456 270371602 189730936 681986892 648304515 436702583 790049708 791177526 76470472 819726271 62856239 186912027 762511625 227448008 586498932 544399952 684446552 881641906 660075513 300086191 900545210 677074546 895116771 619062527 641939776 300374967 841526593 758172195 810509974 649349718 218230277 305513051 418397315 884883132 917712018 909530750 846940129 436395827 428824057 865749662 260255034 523698050 649817884 977960440 139076215 666126308 868897228 171609436 993342456 363139601 626158498 64228962 542510901 875463335 747151406 451943133 812022260 631271756 859485333 222975155 447788359 823692802 850056518 420113268 897996288 751757075 320753232 697914027 166586422 925241763 1796634 846248267 793036079 206970501 851842673 451777452 897690985 496011017 480492375 701685186 159963418 215644244 518198258 155673678 937994554 930983543 279819801 169593810 939334619 388339400 188982782 356689315 220003900 125940692 603946858 342328142 924781935 586081956 488438933 586435124 83203571 871555925 280651707 491744492 803263042 294373113 75305219 687499084 772008814 116764738 186483809 414426340 979506052 477494479 532522945 403073603 930247531 960672137 421781398 240659157 422013446 157257460 441555884 100445674 410749930 565708570 492833212 525197673 19091076 556488488 131435882 385116286 703254199 67997079 728978151 490845492 628078909 701166859 448138266 959991666 592526847 91643957 11065954 720912539 359997142 750671770 945325706 881802260 559493197 764909472 906149092 653550175 361370217 928678799 354231332 351711137 291462053 663950689 113441920 9378881 561779061 493863356 289094566 60941442 152249953 793065442 613168870 397896840 516132911 384405574 615417715 646886424 757507746 127567828 272161127 314725842 513046068 936636895 66960789 255208439 504351978 931374500 120635949 16478671 347220375 747658545 511338420 567865244 292180021 29323880 653169469 18669334 757428076 924240050 45203903 162976726 254635127 495302026 971855541 197529347 357618709 766065109 222900604 551888064 259729576 838196049 148724055 764235677 4887446 906982500 755390776 848788634 418020372 328462022 404340913 220602405 777464915 70719077 50157 711389962 418154429 236658399 997299156 957982124 763066252 210129438 713583514 606417035 428312294 181240315 499112415 905535711 685518257 861256647 842148394 802542228 440834521 482666106 375161124 241638390 743627406 210875436 867254218 801141965 71213914 626631089 286190299 906515677 158623946 782097666 360820339 788251028 631345097 896936768 791865242 742090711 961375483 643554558 86068924 850636576 517765087 54270881 92738781 250265427 170682066 423611816 804011825 185636960 129118660 701095562 858790105 233323750 204492722 187659374 33798843 559792708 836107272 885508986 449126737 284548269 126959095 316220731 109182687 931610875 640197658 778104348 837102795 970649460 288758068 12145310 476175724 820798256 977710691 702612016 207391021 160755518 638249175 461795114 750323619 71672097 420409189 202437716 623688089 145724940 960133630 177877340 783996581 469359039 337475780 69297794 917787956 870565702 401794117 92736342 33780766 655577911 48924522 760672488 147890266 271675936 962369045 531881472 632845789 469530804 234809306 383446232 738326021 607803304 824689062 871760105 882264184 745012875 792461267 96684352 69699561 378233021 978568436 470727807 233383750 224383251 499344013 29994081 371267576 98984964 112179834 993933810 836498427 690053333 513847932 132008210 568650732 256570860 719361073 26598690 468941488 252842003 21402004 791379455 480487846 86095381 871842314 514191359 467320056 119998614 659750818 276851890 50131866 293262293 190236720 732919446 117803672 531189019 473299589 415049922 162256990 138278204 724886622 984593281 205521015 357041594 799425617 685282305 119805492 706719796 356577357 19187063 701899998 604226564 739872524 16815963 234312914 148228699 166507612 289030409 891449440 947960556 786986236 571040984 163354870 923965724 911909192 902680049 286623768 722205164 728051486 522095451 619965617 379261678 958718271 509181078 692669827 912145110 12076838 634681433 301292561 266101189 129577788 406571507 800479671 831175829 613427713 536829569 846451741 934007251 945365309 869395148 328868414 476486345 953513884 793587454 804601341 710046421 849386760 791448321 985924389 974839283 270739336 237942430 870140065 474842052 669566178 864617521 854119425 221416574 551664660 198544370 215023306 595181244 176149673 920728130 713626613 814366772 382903082 677590619 239538244 52634743 38054739 524769941 105451100 194845975 534731161 962627589 778385012 369382852 691355291 62091853 378246927 903643193 773649088 21324551 558907 868016726 444605569 346511095 267853261 607818370 660839542 39164623 213693038 203534530 467400842 36801084 729524297 19031813 768178292 941105637 154505252 738032493 504910181 649329882 271994968 376010483 90258222 701591830 589772874 178936378 984514926 10140959 293030182 904220847 750050145 908242106 600679559 169987221 978459054 55358396 348907999 399263081 161796101 559544812 720216751 740838148 488664182 479983700 467586209 253228224 488818160 942590729 266505766 221521301 414623926 806369652 106019882 674651750 742712537 814614869 65256453 875318610 645738345 563323012 152439249 554988688 433399606 236807154 543694017 638182650 204650679 235421073 579449747 456693309 196011170 736096840 562103095 710070688 440445291 709398611 416573811 27447390 646601581 207623213 911744809 887937847 279043921 618313095 365785699 955345772 725965460 508535124 746444498 410792853 580901372 583271126 992951295 554126052 476289616 700574950 846006710 297509035 908940299 17240742 807275980 484933029 608795632 914387314 979838040 216619613 808615723 322366180 264824007 57157062 575626049 889589621 308141921 415649925 320522832 89385632 827605499 434439833 87557959 91559835 780642208 145999357 942896786 991204097 528192341 259509667 45293318 397604975 889810485 113886451 993181341 509100393 994156818 17267858 547939400 141314481 884391464 816709755 643021208 634434183 519199230 546979540 463375541 337956216 369745652 891335660 410377917 894727371 302152845 885689302 155156398 215684138 35884550 146024438 968924487 775409529 662788301 816724223 597955355 631069710 152539441 730722419 872940286 3545099 879946890 545048029 667803379 463009813 797761335 947584245 755330600 708810629 407345033 29168086 764545865 634727435 361062025 824091394 79632600 919724583 113062508 23896863 795959281 427807750 655864191 350637645 35628178 459917948 222019143 421511685 457660386 804714371 638460042 798946234 194694675 13288198 61186189 74377145 717051835 806221072 690942164 847200790 190423253 800795554 412609794 871519743 386991595 231042447 781666215 250824573 833336603 698996093 463940550 230721154 527388484 521749668 809341876 886142104 745310294 950835158 565526268 984983838 311764833 615148594 290508052 864920466 147303395 360477973 508672833 71470034 996302263 113814092 996438878 689792632 63996029 122555196 240382251 711008949 706813825 427031919 768343269 851030699 494679022 667744313 676832408 829290201 109969551 151046655 865011006 72325204 526397097 199416543 317106551 816080151 682368090 307891534 353197989 192917273 440216817 229277665 222988420 497471923 119542053 494413907 20584133 982666732 122256211 715946769 47401014 884569767 494552370 920609651 832324012 190077904 335844042 690729390 707763966 436918053 250901362 129210632 104459183 667191905 479043838 441570559 392739364 581687161 215479165 993708713 264536693 843983876 371700159 98382892 762438512 259374700 777959951 385520487 821138448 742564895 785465666 883859985 832269332 131093183 763699534 410066649 536917772 54344662 354914519 180922373 664498883 292890001 848295422 983880136 247240708 902501016 989850320 151768274 960943564 801762755 554404571 847807671 174278606 353811227 217473222 440862659 952494551 240158757 29528613 437445062 730279939 984711231 928732330 114120107 394250470 334025256 765068327 638383035 346364088 703420360 694135405 234648875 178418352 161494094 19322511 185172943 154311242 756291590 768062212 838583444 994336307 424942803 71130492 940406020 510578086 200562816 924572829 956108830 482977432 117943960 868926929 846457729 977542202 241037838 428812284 161808890 158649513 686771243 608264144 489033664 651228793 113010885 729310358 340852312 67281130 107776790 30818711 129575748 823873849 228565555 240216092 929258607 318997283 915223707 427944493 452159837 138827809 321282229 653798695 6251438 906955964 69346503 850034755 581690748 628924458 315508246 875422867 187356450 529014022 863236537 654352391 786572663 529850929 426145815 48754783 286164072 513120095 435672054 893053238 547286088 99639719 753847960 825845476 181972620 325198918 649239473 446310653 243669432 882095591 479120115 406977375 221299479 871897158 300256641 72727715 418891157 412058858 540071029 373395105 699534585 622577559 707737392 653837439 669874153 194434255 890328049 96740798 132634420 409722182 479313071 676028208 689628537 33740566 712870578 73129244 123138281 890240631 433757712 717698902 912352607 589111185 231684751 89196388 70934251 446509863 53499381 228352089 286561253 670218496 871579331 647733111 397039674 79542810 458799233 714033264 492303200 450396245 17500751 982486061 154033551 879307770 74797381 362246187 21906679 363287841 283684056 219410512 246193975 908864703 665576249 934937326 50660480 839519444 372722394 418728646 522525108 265775799 999156371 219500585 608069334 856136106 349237477 898621827 218585091 77985433 704885085 372403665 244331917 154823156 584072866 652992158 461916352 225117784 797643220 343700386 797613215 948600933 915249038 662779284 13364573 636832458 162538089 682694397 796206620 228421842 814485754 457204693 648673392 78323485 836442087 568941273 558079488 213137731 551959631 493138586 979068493 880017552 548408971 269069975 204431095 593722251 880382238 521071632 383722093 288891862 952664318 33785213 991111207 585480861 182226144 842093018 535693858 889369766 778786547 71422069 686369052 933568028 499810988 662402159 945680751 814910911 834685547 309852484 101968919 965520837 248071418 323688304 492300132 366829891 257878647 379478431 680291318 374456758 424724835 41306605 473443522 140388769 195541521 107053557 788092089 347573493 490833236 824240365 600666809 476710373 919271346 453788045 875774553 926848137 811103086 237157807 592972417 79917927 748522500 236119066 627885301 669344188 308008291 830115845 925125875 311944703 423272582 112251277 707897301 95315930 844244672 102820916 269953662 870256922 424668546 523492616 233513421 836339973 995768860 717119111 299666315 979063163 558410125 222118246 28797125 197915379 429946091 954130835 787609036 31805797 522406519 710790848 555019132 757612726 867688401 563312681 143412690 531653907 988264764 602970667 769050090 299394276 269458193 700104075 563696124 277726546 895485462 264008050 902688885 960998951 883284460 662760283 431429376 382617736 786523238 577021383 22920097 606442670 699791197 225587767 205807251 912043858 11599290 689456123 788103612 652773824 925795779 388349892 711901401 327823128 370133610 305841562 149651126 758500357 353971756 330786952 26849401 87161822 83718859 850979961 177792662 180545022 59823881 852363708 974481043 29769363 145141971 595701352 895531131 363713001 147691142 265998461 455667233 813660268 918300250 31472046 63787385 238238942 491492901 45809257 161232214 928703281 467741081 514359750 423161037 572965190 73930552 371713308 971163746 139595802 605633527 561952404 698803270 307090140 299285564 324773255 191765758 925479342 550216630 823379646 259682778 769033191 308962240 364391263 719051006 708667392 690176461 76355989 275109428 71229963 606750152 685171267 11119459 7837589 780445362 176607615 894271244 564865676 495256241 928430124 366141753 602054143 179790001 95657122 900937724 663397020 884643800 142883899 534445067 813069622 553870613 447781154 172883107 472285589 413233482 15458931 881022730 302705795 617303466 233753952 978137293 333600714 470252858 653651951 78237975 155059556 156600689 976883279 555164232 407170241 355918065 374010970 996590672 182373982 360395269 337775757 55029025 228459225 98370394 836933489 79448554 420176486 131803168 757047213 91594734 732596926 729824847 33649521 508764365 424389959 519897200 462941243 648686367 612811127 446615515 497083885 175720403 457869665 973739009 553480606 125248323 892125303 85479957 603109283 915613553 794581055 715779962 895116780 201847788 748206238 947541303 960883730 962477378 277678177 887950073 664258468 358241382 212197889 652641553 703610026 300035685 835729983 813305344 900541827 509338412 535284787 902631311 442023923 480506161 288980739 21755484 836406495 9272523 831359697 951210482 814900295 447137647 88120218 65162513 574715818 939521690 33537052 937571893 64852992 800370507 816773825 820879925 454912545 946669156 452320475 20213858 68312637 467550861 497219276 258790045 933768952 622100095 711515929 932486401 17853361 343443230 492750792 970928224 288041405 100451884 203732390 9258596 611296805 950755718 340136051 920251942 872448796 247951984 109007132 25144712 737709588 206689521 737458948 445684346 408007914 134944360 58410873 388752971 255629065 681985532 848323463 908125344 394491721 266051699 506620259 771724820 800632324 1333345 203228073 978519501 978301715 417301561 826930789 475393827 192273726 450807810 675083902 375644373 871865237 264298379 755826127 969446513 113984492 205607607 905165277 606715936 372687168 1733748 844229659 907380085 166873820 123401992 209081795 924520393 25213218 646532118 989430984 552877398 453887755 600853450 743702934 470093650 643143033 757198824 336677046 373526556 332509501 907481824 28161213 691910520 917755743 433158749 527537117 259111937 958083867 64481849 876215271 761043964 271127884 593167039 944215566 493222220 560116252 877669782 730454869 59577086 774087895 634596329 445972711 51487656 438226514 891968990 955295497 31291773 447461503 854552257 87937002 161769491 121656228 678974662 2378762 168070005 513487064 340611730 932569926 718605928 225220376 501758769 114889821 327836180 547538892 151104489 333121270 283941492 334289327 501652957 53847368 325632118 888000998 192589822 43468356 301363554 320608773 894151323 567915647 695059381 916685923 547732402 661894690 121443580 941797746 813699253 448213309 542835483 154058913 723953453 717475992 884574966 101835962 655425453 828016028 713244962 49703227 431802181 801995002 54619125 937401932 303244855 429119184 855625473 320532023 107139417 405914487 328234557 778099542 185848696 335417955 842739020 258865870 526580258 168735494 755109071 686675446 709201468 321928614 132624284 133413798 628555629 730445815 606132219 857714376 286531335 789575244 654668138 1282690 42503639 706954569 750912747 213964535 45660280 837439161 120469471 265315588 837636988 705483967 21074739 910776599 201245096 297065930 473489435 984527846 736187114 952962470 469084942 86603482 262040048 167097586 936966837 458791100 310434053 298108587 778598442 13123972 656642205 825278670 377537870 281374725 69294527 109215241 755656375 237815842 732892132 997119669 892565892 659527614 249591939 482461285 10804658 136260177 134264032 634091612 708921085 976540145 359251640 646490621 851803181 253667554 355383084 843495539 803041182 530311903 29508427 87359387 575853088 953756899 250736856 449440717 94319763 459652089 297764529 270340165 189605916 683045575 24065095 815388747 770243090 903364230 68485871 28558771 640193048 137391987 694041088 101248312 70181076 245653488 144779998 299650314 569855312 365064693 182848172 563888055 773639893 20301974 55477361 718928284 930989956 904609239 703153786 635967473 578813825 887691422 97096309 257078311 492872455 51105258 963448802 744559587 916708543 637223826 24566991 11437862 631490060 134793015 403145581 801877601 259976676 749079178 566812279 703464300 550841339 744448049 594450985 31778806 746781454 593058148 240873730 193618868 399783844 892256326 231942133 795054398 207670524 802160832 783566750 485194082 555814213 43438784 977536771 854171025 908519957 955730270 486078990 509112196 8920984 408594584 248458167 613125817 420052789 44940010 794543511 952216868 381072784 338257504 263731113 847103365 230950401 794418421 639970164 407810136 369752246 517580524 826472664 497109590 486031314 990567027 52570620 650627799 532040233 872260163 524330595 397117041 100197729 949386274 873825684 157027481 327590014 36098148 108047378 307525656 381585266 827637056 272403805 993544425 873081461 194337290 687457758 612180295 114204458 630730839 626861263 89735769 439104254 335805889 984992537 243490116 58168122 812861280 793739560 283441204 733703496 863535585 562289445 185753623 558307788 345107009 962523785 491088747 124928507 738359674 464389684 798408340 127028685 975475525 246293787 299576461 706844771 904421742 296617710 428804204 87719148 874359998 828783572 911685916 144670700 264936963 22610337 750783284 458935256 513906252 297276896 911073996 194593317 596297187 164579173 94243554 297253107 837862670 718528001 46250489 853917856 416557577 854108078 623290044 384312700 48643356 580636324 781285346 704044410 327026856 13075352 237124582 211223489 369953149 31676763 325913155 85138617 684664295 390373661 263229353 429723138 198890730 184104895 83721185 340635716 120212618 98838291 589503144 722086138 49362775 57424987 246985898 33272488 969788783 939246380 741623062 748007072 921434575 46933967 218392730 437801361 445383759 125437886 74118330 820126532 636068385 40395592 852565048 591359224 461616397 405919603 856126707 507036981 436402 105020613 29297334 307446551 361422837 541356336 15947532 251297638 461229196 776662702 557325848 625815294 881409565 225035721 708140982 693676269 457732294 315553532 838134054 764346936 813644564 858179952 538797349 58360416 288386534 477791293 432674308 704679503 23900732 792043563 521978333 12337788 304833580 123886480 307002387 677173339 291437036 789541009 951664895 668338073 548502134 295918507 700692854 739252273 220943625 213154490 124327255 936061064 959615801 50042070 821428005 126426753 570484224 4682826 852524511 728173151 686777627 998421812 946683525 436561191 935304664 672563198 283789462 48973782 956984715 37146507 551587554 301994562 152514009 888094196 773195983 511785309 171903459 715622656 369345404 602592028 708520911 63612053 927823465 828238851 818131188 723817173 785731813 665915102 797830479 683297418 788239064 717211967 494407610 916915767 843058769 704452378 14890073 833567293 304458703 834868741 170814468 491443438 509092336 64170856 83741282 837431201 412402255 34247706 104090964 339025622 786077367 835904594 550526167 709323228 350532083 852455531 810453819 234716468 929754484 588990933 350404011 607117683 751671921 636368913 344517589 703745425 114315352 739485439 921984495 896315782 556777112 762164182 530665854 77950058 763138338 24738255 533169789 745253280 434817386 888128546 559415879 240556886 657568086 79903955 255622504 567015923 531625861 818089116 35717111 228177549 308862513 23677240 21374058 815796696 160990569 631816357 997726745 377897534 288504942 11224152 569954211 655733373 790963221 854727374 467818207 573135311 872002912 9709153 683374828 973333588 243221638 931132410 271762791 707972267 200476375 27369484 190528556 886990327 226490059 79528299 781127557 150233251 840797584 567258956 685128695 227679154 300198031 842308954 226322253 139208063 446961463 144281749 193093253 731527862 931118287 55795735 497012046 377369862 935080663 889643101 274964640 866865576 336911451 98524614 664469862 36886074 487860204 136930311 57223656 808253486 350273433 494439108 326233515 114635573 566979224 178326408 259246575 920735615 913903576 989143662 386273754 911344686 826803663 900434890 620346459 392512570 519820420 527038326 885622886 974362967 207894879 462885968 533746088 367705901 750296195 776920624 532471123 726780944 232225087 836562377 91917507 124139064 361588781 138902307 991442117 741022547 626347185 336758803 804568107 389585449 584814099 992581731 550608082 523338189 537310563 772491444 88702608 890356080 767845758 742996253 492707773 736934155 197865803 377737070 388723303 749239111 78487034 400593577 973578863 300743977 690843374 897157903 574037188 246683129 472579093 934503597 643204120 25409886 434152416 318935636 840661600 676649243 241330807 163687064 261902679 463880675 19869572 619709262 498567926 285797873 925984198 132809754 536351728 429058523 669540147 730524079 349633221 300410748 226187211 20397962 696265654 253648241 571507460 508149371 636355434 999830409 387614755 332742194 367253654 868777994 621048855 478518773 547286582 881297330 682117507 723160818 939251136 355135196 44488991 790470274 178245012 347662358 182914960 757075747 853820025 171384339 104374631 835749492 393596377 953830268 781792658 820023724 772409378 463433940 935321276 494929866 617898934 375150010 977224157 197931491 499843762 10837363 291930993 682449582 86955197 341877203 883441273 718164136 277565613 191277547 140410224 192589016 1771607 75230793 661383655 80851487 649093443 932757737 579807179 200453478 255188952 431829549 609233057 780574434 584615862 576431965 17308755 615142723 54467519 29229725 116827703 413128286 867948876 643521696 142736358 745855075 876028957 868412196 382284607 97794361 428833337 146585041 5198837 514548194 949751258 697901723 551964724 413771969 569995363 85193061 979545494 609589858 61493983 123523969 148157689 641704672 193190557 363078820 158998187 343958464 990998401 739120652 337811662 333000249 123725523 704831355 934967378 203431614 938267503 228016673 174936963 452557166 360728628 823509398 256608137 334164043 336384667 570031635 543566567 603783616 930298097 478667826 515025823 61552234 523781286 491411474 79432962 773709981 715485142 791631711 923933789 960478605 962878293 509072881 642533823 350591900 67770006 459041211 160410381 821632044 518637387 488183545 556528062 187017608 350455380 253893533 186040977 668505778 976042967 988293596 312136686 694399339 875681020 413445254 474956541 114768131 700201847 256884481 762993356 656114171 624963010 435806635 153413380 627348545 178399924 94058948 889772397 989371861 426917950 974916699 57887393 290483915 454100040 508962442 302037385 992533104 797145293 570718727 719050192 195965779 275869455 915987465 106828024 257445741 317405328 83264245 640251102 14482740 102522042 774384290 857275796 2962146 799189969 938445118 390444703 615498301 591659338 512128467 630070706 978068811 486159817 380386250 646927004 777452068 193371487 536198059 193847719 366137866 527305183 172824211 836590285 523685358 214353147 597873249 987905572 457937367 780195582 827122716 664854823 149628846 161024673 706246222 558525935 759283498 186712573 688176285 429309670 843767022 545571076 171967482 760230144 715328968 603360343 92450471 802880530 152504117 61054424 22277940 993118093 90956745 151787068 635049311 420389973 362408580 841068276 836631809 440140792 431945077 694979250 600207435 981124807 251645631 996239796 856612804 167107159 330933109 347252374 945929640 556676913 498366257 669441005 990537704 751579968 629408704 561667027 347967118 945663977 643565536 813152465 87668698 528196240 66328505 835922390 816060438 165011558 193553670 329660986 449183486 821556418 193091638 455181633 748060303 185089278 172879848 467499679 294644393 411558682 580550956 81595572 541204613 180196362 84034748 720976262 598842616 115411615 33194060 975755041 843056326 945321384 524613857 274576722 573985924 765343306 374116483 80880761 879161094 919173142 802139629 833844147 939077438 851495590 719814020 400296072 501694857 87972764 888005152 585768619 398828306 357646292 801140643 918635357 919015474 929640210 409767096 907911824 268315455 415136478 625161705 269729543 755901775 616380397 907898256 770827892 783256382 464001673 719522029 525056568 443794638 840041534 711116543 12634736 706668069 409642120 327052650 405763004 827625627 248411835 364970457 66106768 581618342 832546924 270281773 178224248 448660900 98414542 138765618 683040788 391603127 235198544 218846741 500325509 681918849 333844821 430887187 112407723 941631577 886614154 930110424 696754149 430716360 246569200 954957209 239732978 676191701 603387606 213503441 850380410 853633055 651577702 684715852 617491418 444222359 806537839 81030993 56607703 489352830 586811911 27767238 357335036 277087731 631351889 248531230 444698812 207263147 530868954 773578757 327951182 155289283 593210685 22433929 744145058 877493758 62625289 560429846 580989240 329306698 68147316 918242843 94715565 369866676 142145926 514920466 346621065 17673599 90813436 210243787 868883683 522843782 373357212 184553594 272449822 291537059 483097027 939878514 608042575 541230773 841362361 480580203 527709533 354827350 704789057 44358158 897388496 263699613 977828597 278519108 540844880 53397297 585366915 829714346 736778229 378107606 619295018 860541063 656580673 552186839 970861888 454593926 448571141 960670308 657068194 831680731 179369430 943748239 129000088 517023295 964570600 935974484 992304984 59932474 977407224 455707492 354476855 412100622 385515159 741394673 889735717 975658027 518713014 201796039 972139250 593812211 813924183 94975792 865614703 759677826 945987950 420844103 573372009 205396882 827805077 927809259 955739304 488405255 984392974 956477823 151140028 959728249 352706721 273402810 843871605 420481614 705782184 730494936 672476325 176342869 481627752 664558550 586886029 995007029 635010115 703559621 583609301 844323064 145386597 238883303 33293315 514863927 319505688 850899020 995306595 565825051 286368407 178035115 193456019 779019294 507263529 272456977 644001091 682377501 415423474 607660701 934199946 537058608 695678957 706877692 236579468 26662031 791855644 11228094 269398469 115547523 775957371 986825087 423239365 537283663 453275584 756938067 943783651 470986086 444375012 601959426 402668304 173385650 192104397 165324677 508786212 978281716 178452066 23607987 584105261 797493898 272323955 512237528 727875956 595258887 380872064 687693827 418456327 542710037 583813668 939695316 478745632 824975127 411077292 150519386 349558978 854080780 338682909 238751880 287279600 443154481 581378526 943241442 822847143 730816293 746506728 406567418 494008609 238317175 200859811 659026901 260800703 216519218 605030893 56753434 360949708 833078008 306785295 848142537 792801634 892097961 81764058 916003117 835811750 853359264 662900923 369931215 448015627 843072165 987734535 131073873 211122793 668195105 208725328 561625167 664754667 844895407 450930281 597157518 802380555 877397633 425569688 837145087 343713557 781292493 620718556 971522972 913563439 452754545 395709263 410767795 435008813 15659530 346620760 688042420 623338055 916198672 68233886 487486424 339584423 248892890 235417274 99285161 61445807 27129954 683881468 461058032 354708137 448873636 441518340 247442014 949311927 209483318 262032008 437619762 916095881 138456613 354221841 368171061 482304829 74539638 530121764 739916685 544085943 198758806 867571995 324325983 264017209 768473016 647135582 566243368 502230113 370173668 836867502 199184030 777948010 566924822 898711471 622133521 485919016 7730297 81828379 238014083 894404369 178925191 295536498 574902889 439703981 359439583 192697933 384840213 48745026 534540489 674400702 662742817 815461100 711590591 531177413 143175593 468015219 410929179 264138289 417788005 166218132 606506207 228724699 987818827 615708380 70082168 723651936 292849957 486395865 729991623 540028674 867058838 640915531 668061474 435506050 521716135 62646704 25676084 209157936 60509266 554868262 698536720 79585381 46889392 103576958 833829896 243800911 456971667 832054218 879041223 272490362 54160179 727917602 905712245 468360678 109771257 615316046 184119798 55584947 401312400 337904191 798781944 43537275 190775644 367406042 691236983 8736165 171563885 912656613 80641249 817762190 899110752 729295188 623863819 315263729 825610129 570180813 148253270 107674630 560595181 14579644 116045155 255641719 49049507 833862201 277039730 307067589 479071752 25134240 116470955 243305079 458879759 394376983 809510637 978734609 243956899 140016596 879984795 218454037 827692778 504721735 745483954 922469430 565651985 536243873 763230803 6124039 766728015 361266927 808427858 599741813 1196248 404974043 602028015 196254678 68880992 408522221 773294784 549432144 311290971 92876295 912756784 381609240 350571496 861794371 939352970 432853273 197219569 668318405 151478548 274382458 647915048 383091957 316139616 872832602 196891795 991646425 236119604 634713715 679482033 141240644 255837983 572874520 374162814 102670473 950556830 256663425 855005963 610639597 579706837 156365097 153654725 626664523 613160133 476086869 670457671 141620395 576969392 536688041 751112589 614528504 991799429 316212968 793195333 409390053 895087628 96430868 809158926 640051041 873277963 102061203 456658756 927723916 436574237 631945347 294880185 402023646 361627496 764796282 724452796 777812509 982465476 883362537 297144450 725519024 837833187 979324378 352934286 852383714 976715445 130297859 361297366 97259005 211187480 695291104 956582029 459002178 681793596 575987688 48805236 590991597 921461136 10121337 303137797 610130367 316945443 3338956 280087920 811145079 700467253 212871530 501931795 923309797 698201450 654054156 771525743 457894279 586206913 847831941 30539370 444300613 571870581 443918380 971458619 691849325 698038744 760136709 153129340 644406866 919868703 789326394 664335293 575464558 898162151 708940764 998588250 795957952 715591303 766705898 546828875 569942091 222223197 227999468 858128078 966619787 135974791 801134252 235329837 118704133 922891950 888828971 914691025 586255162 84619181 810327972 891782735 855564176 441720893 521285161 298287563 795764316 182477749 907124278 849976521 761650818 283911306 987948331 929835215 585668695 448437812 443306406 78007257 481346833 916467955 463779001 438554245 431052183 343450156 696197521 722196332 902647172 174372289 164967094 833620005 544367905 61984567 544955076 360562376 891941444 53735715 155448582 702057355 517195173 653694670 903615145 505361743 982276420 517752952 579116309 50970144 3171312 300949009 456395934 371601236 173791232 781274388 628379189 488974079 914109080 350735023 320255151 652114613 38432614 381584210 982525987 251651758 343436501 870097352 389402232 943518304 549605730 729511271 776606053 759576276 261913842 757290598 168048204 765605629 159693814 104163885 769112000 559391572 971844102 955092119 556937336 620823160 826269033 929220277 248973846 668254939 3704274 582552443 274150481 47298906 122993366 571192521 28043273 252747130 584174160 567618805 825191601 841598677 446091523 141515004 279780072 399937368 369719113 343911477 725378536 577955350 32497166 356837100 172379588 130234040 807998382 420666302 600918279 828147354 422730244 643564163 897417891 572565037 603281460 90906098 603829986 575962489 1170148 626959593 395688576 178175931 702192447 222383770 686758641 834256458 9357054 11744668 906332639 892459036 47025344 654539773 210323507 214353253 81097997 224646524 992960392 434503272 413635546 316237339 273126879 197675347 946085315 293374289 837630820 422201813 674312694 584060660 668009595 752065649 111071506 775765499 759327584 679955823 864877678 189608317 80456849 832327247 665199303 703420365 812770198 497112036 581320683 310254366 145944079 839078649 792587565 53038967 764347598 821534418 765385593 982743370 956690772 976213125 617008731 768115000 526750859 338518880 311248379 379150124 920157072 802196083 582716289 278190013 875782372 912532786 36038183 629445404 40355517 709473226 561527586 978308868 991315314 272917322 505657304 993733881 255027606 520746386 89331813 716650783 940307205 698905853 157668604 86136258 646386186 969704573 819947101 776846952 68410561 443787562 539311525 692708657 911739496 765347919 109774156 989449501 534362640 3278735 774406384 181560664 886539286 660950836 521461254 315718169 5355000 893831647 15474666 375153799 927098730 996159187 942702895 895273103 975143553 755020481 392768409 895160045 139214410 803098018 848920304 169488961 557803384 303837362 485730087 949372603 61176296 978240535 151891816 539918667 162659460 210617781 537452570 975801011 517261466 564346555 734106313 477830702 798300794 66168744 833350218 297425461 257874251 119686307 903135347 208361596 294677001 314362604 249495770 491067750 378479654 4954527 407429861 95275468 357139520 559026123 659979633 71709482 243197413 576535535 513132553 168216691 731005920 143852166 77614332 629703052 33899079 187844032 5441560 576868340 857005001 428068067 916443320 688380964 780827577 333646617 563053270 111298985 919210301 1677202 730202171 803725717 166927784 841764535 438778801 57414013 181576802 949702708 302317875 828344779 821406123 638023746 42190041 333242008 445249071 775424349 10787148 198876712 362921604 986972308 616476295 934240456 890323650 107605642 579779482 582817052 644403877 887079511 445227906 563647667 831649502 35579981 861043981 835836695 279625117 910387093 801422794 929468711 550127081 980787403 468068712 837308406 270994338 906808255 846494744 336801123 227139165 90881529 622454037 593566438 690605870 680105374 19438966 4488720 746412989 277809700 884120699 960402257 34826684 849019714 428554382 314236582 115983483 784168968 882572646 392258221 867173906 545672103 275525675 989580303 958863461 899263260 336776490 107924926 305740534 565540724 693516505 188266235 765286131 586571995 168081405 486433299 923538482 561550856 68003551 975174163 959799061 621042558 556905942 846298144 692529478 658065964 116248880 319852303 57725299 505691940 33532346 36584063 829135980 166852457 278472823 932675278 391932243 471641003 512033975 62973848 78612107 356893173 631835103 757309830 290235641 76354426 711954309 326155467 419328962 908886141 708948341 301902248 512869125 749935304 589226569 670984547 500362162 229899210 431578489 652938360 16514115 337308552 597456554 296175249 135230550 929405828 670216690 322603329 723498285 110773621 484095251 982862478 116667473 356744761 237187363 821738604 584225222 658588669 614932443 245254366 116988419 765652393 593751502 853281716 242741272 759179048 742626778 479451133 965440094 209956061 167670951 950907429 562479713 859811459 612747199 372316848 351045486 595797254 134352322 649535493 95517814 401150267 576213093 271304908 492621353 620338304 380773609 89110416 818207519 308196346 955291671 984193907 47371771 784950088 455902191 10180694 654805689 426365006 727224588 763746202 656485013 889741855 358223394 655742880 496167558 62335789 589034105 466792933 645366895 152844854 759070570 436195765 865682133 422053797 341263706 720007086 381933424 891173508 977856035 395003586 957182743 897312502 844545978 629906123 67314024 264398272 745500323 949141815 436007129 423273874 473920073 322715707 643039006 666158253 638626845 674682706 337696270 13031049 679175817 910709835 383051111 382916110 369807768 864953332 781322801 481042700 580832779 813219535 17910672 819246509 29319448 657982658 240330060 764765913 297195025 973670589 880360966 447446424 920456859 720353427 441860343 747238755 554927808 43736087 420961626 422245392 786916712 610280020 435611656 748082388 487635746 303643786 828011243 498445347 443910726 84884172 541085371 913935362 97623173 754991483 645961072 807896552 809550918 223280301 498878624 143190441 89972732 711537742 578862800 592858799 675449394 777826929 951132493 262874968 73474218 818124963 129953519 737813613 544086089 812915065 191588058 185762230 349981055 964952016 966746066 990247108 251056227 655650678 789577301 70527175 773128426 701873831 807983823 936211509 964232696 931328784 785954438 503308171 231699111 988675929 30348978 148933509 680845385 900576267 858815770 965125779 37467204 912390 442996032 855992682 698624238 71470371 405852655 740924299 798889103 707339675 525071316 708839862 978775051 500938469 213653563 657039724 190637448 316861966 921427373 159173072 168777737 131877561 451061981 136932529 172319534 310545472 101107206 765539291 257625644 441827866 30443234 99287715 693871855 911123321 685535946 470462474 116876021 246140365 922077698 313511026 590712785 991873153 418549307 555484392 245782288 206948127 378787900 495980527 781141357 546895326 39922502 124092177 736399751 432485858 218581063 561960955 702631795 201559300 328724594 511496807 791992859 58886514 383835544 169654344 202291230 414492127 938061961 937888835 235518810 844852066 923076895 207163846 900214057 808670742 24813068 799492246 415962132 649571359 102873957 265978652 109380612 782582533 264686818 50221833 582564871 674776631 421437185 64263519 163114519 11083588 381897430 274093031 723981047 935015760 110853088 849274309 410929906 686945062 774432626 197831232 460786570 362097421 106059006 912507389 390182145 582827582 212491914 694060672 299334156 85450494 724284388 369809797 334664765 421868916 343225319 401704881 748780718 391227707 691762679 614501892 523266643 524729234 919632944 787263882 259584015 43010236 710515312 472094033 258005250 905033939 650257801 288907103 390173486 193631789 49307285 830523191 423818350 295893538 394862337 347223528 178105123 744538964 427493583 723165099 997510973 520860144 144438113 838534213 180581747 790521357 367169170 58673221 566670086 473050403 113637861 698198303 757672114 831610919 395067228 157599437 42092264 514624740 380087601 481136894 341558032 215898588 637033072 428152903 821315467 659735585 934153028 823593531 435605724 296600260 288728668 482457217 162874262 765216023 406322520 732492953 780068899 416036492 814231507 347376198 981410223 667629499 256772490 760607414 146720621 370754564 609580112 214125225 786186243 238673175 977817589 732142367 839777021 312974282 657619648 527380849 454480825 85278588 353172890 766462923 368668367 911771134 213190952 882064744 725732863 372063214 637127052 181431545 85876867 383026853 680526401 899120169 53850539 986203537 491947301 194317132 705248002 265820774 1026947 414773338 19768832 921660115 35332534 819362466 882806954 318671614 47068917 308225804 142361813 692002843 261431118 73331557 882140788 986376247 920309155 44417056 240491262 2551045 608058488 117339750 537610482 236378424 334184922 918011245 520561182 553627136 622157119 335670667 610067814 786775059 3022933 337591257 662586461 501460868 199762658 138711860 466765001 710513857 444550639 516386044 831346748 534217724 437589536 992783238 854001384 274059915 841795686 152627620 93987305 460602037 8689058 391331605 494393309 253582428 447866881 336858367 969208176 272861678 522158813 967547610 335629164 483536257 629628846 231774444 757651101 800632830 69239535 471210465 734625590 415012407 638115763 470875349 547985403 865167597 610611380 302600244 637028761 649782714 975407226 9594860 608859556 59880585 335027502 94110827 953067761 918522145 816717470 275067101 884130306 502532591 614306525 673138687 552115040 508566645 461530932 16697695 835574801 958958523 347766548 973479207 374003282 235102170 350971280 656184672 822831923 904479251 483202083 83418120 530420192 639508891 537698795 238930609 957380113 663160846 141062368 400097933 740417036 792640337 539450602 852570512 767754560 71888930 194579112 464322727 449391476 713031886 648091747 428260451 845572650 594774235 169820828 832500153 603340791 28667536 750988055 213976880 706160611 740327898 144826716 373299487 630637546 388944233 737699162 86637431 457722520 650570184 658231230 937171085 698955412 126923656 246412005 712814096 255022084 294523731 105009149 999441247 442003983 193935469 297624388 784615918 846161149 812306077 990332634 407806510 890947462 546562491 445295190 592617817 320552253 818308468 648489070 929034415 984934539 905234092 744216305 165853903 972636525 984922751 509997779 858153178 1751783 416124573 599227300 837020995 703020953 151169781 669606719 926071994 970176817 393344466 891674511 279712019 13161620 894492957 475122541 242261954 328629437 679211296 484119324 24384209 861836590 559656911 160478373 525902736 711483353 833426321 799762403 909456130 184971792 933772356 261792356 18653412 417918874 856560431 388549545 117500527 475064836 21373986 148336354 730191989 762092544 277937970 151886518 152075468 350383267 758670223 368848022 160558160 840150538 823408245 867981234 738008 728794070 910592035 309662463 837024304 513463898 714763215 66082465 777819799 527681638 529089419 943764057 45246382 886047789 394924255 738024064 377390005 343925211 513388674 838767221 429428141 929080355 502074154 516628819 419951963 319094707 360387643 781865130 546894543 443707765 529671335 155063630 893078783 925293129 662986245 967603519 528986711 811006480 121456453 813229920 615752279 679965756 338513085 698731590 128519845 882532462 884560988 369639144 34127466 5920766 745280239 678426446 960695143 617197892 921783338 906249774 846139205 996502463 293599253 929241297 159865724 83717954 412565534 469394940 889020958 119300984 109706019 883354326 968156588 140253914 416562060 680744538 694422044 708121392 669510846 499992446 15904335 146003268 205740094 35603280 951379806 289987654 370608707 646349867 565870542 78026555 823064568 316930691 640730789 625322585 4450812 219967946 326056666 538197721 183082961 30808449 959410907 528514417 796165458 274531471 788168031 777024613 160000462 379843655 348787939 544693258 530573224 641322413 173170787 536640645 989934374 894373399 591588083 715980287 426309550 845983865 501247574 219009376 906231137 966351360 792068703 459921956 701283207 190261872 898066580 831438006 619946224 115212048 916189530 169054598 814284824 647704918 773130137 631169840 737641388 859062369 759823604 902366238 453161205 423634227 185401644 184123234 255276544 970855060 966329354 215818886 120969322 879361796 832743333 406506115 420857042 406368874 950295048 987518855 738372802 513854734 330483508 293582921 602606552 425648083 525680743 750370111 422448637 903401050 966106208 756237503 949724391 341387969 856985955 418105921 738248433 449872955 697420950 356893584 387552409 311314836 90435813 797331897 142508518 701122253 255370168 284420910 675083062 33221152 330406052 76346454 740565585 454296401 962052079 112595797 113435634 237046026 489659055 288236501 398961348 544248034 317467171 386809142 345708133 156911132 112618786 801530202 610239080 244582767 555246331 614059655 157332936 306444614 964330422 28495355 591676833 985426982 852872493 758014261 777112814 847655027 994857841 788134139 544797560 697736552 32386942 648040154 835809350 820041772 303625543 843333454 303109621 928193371 640263243 248406431 103841662 480559070 132038474 698715293 426955719 383773740 972753128 927399185 913186020 24445210 879350355 974657477 939511315 863337783 481418352 309138938 195286246 546818982 848852930 592268805 854025530 911566932 795988721 734177117 893979048 204368673 688433707 861687563 846248521 721079988 976978329 585434867 500219727 795940428 779107026 628333998 480154664 661035564 38390998 247010049 624730633 713318730 214402968 485722887 964587525 323469393 416382571 600371432 746881961 689099686 422866799 621818846 37682502 273633009 318464108 136807290 695355450 127763300 857665083 332607109 427124344 826625921 379313776 560506916 392697889 564832593 786627240 475333382 784875441 886435605 418121242 421645102 546450215 956723417 215466576 829792125 300093034 425616774 603816427 343422768 566480184 741966161 916371573 363789118 147226645 471369226 403980020 863964835 540689117 572156114 353791849 532759022 866843115 545788331 946697590 575146033 553358462 429947782 198992961 656130626 558817784 626889747 784318800 984163500 684284488 99922697 331165481 85178184 165383585 181184706 319254694 455530585 58385364 244766965 185033627 356614391 572577090 763017825 932284026 61648972 901535976 98113061 417259948 641089473 889593122 497371085 881446236 684698899 303788211 814145589 386412297 175810004 747403319 248883962 911604486 993103472 18375635 475583680 734915325 666147442 673485134 953255261 431252455 40167184 234050127 404155666 971626684 350419236 83609158 438255542 210518751 405386044 873813977 220927103 675145411 628409503 273122849 439767085 405939585 956854958 431489200 996837871 78244446 530883744 348077243 32404125 697963075 346964908 268432994 361982123 423063735 382337437 199162294 31513008 259599836 662233008 249571023 506128585 714591375 190100022 144907644 349120892 232579814 344472254 774321413 973851629 306708200 570242684 86509091 121138011 120360983 712624866 883681469 437342488 848808048 660054432 327377883 580949605 920558927 912861605 605206032 421262534 509386028 586669200 863943504 981675550 874400033 865456732 630311460 309418370 275671054 965752207 268091586 535455474 543827787 478165772 183512218 253696144 421241905 198851375 462536656 146514564 140318811 163644357 46492396 63579177 410603061 681302336 45742843 467459386 590585438 31194290 7702988 852125467 284120761 406585859 567371012 915459343 618263879 245085566 941804002 797682257 125839603 994594825 434566054 789989373 444124592 902716422 255530514 404094975 982918791 245998410 277799163 97732249 892817338 331975685 474079150 934975901 19812266 383712917 232682347 989753522 483678134 981951272 94469901 128191954 26132879 876171534 111909253 979837219 384295585 164231873 875139748 2607061 340236659 783029779 833290067 440934415 266812095 181611419 372722455 460796083 516886601 365629288 852620174 271253612 365916850 571606960 577871980 904223901 798733745 515242556 327346406 774979967 215194280 77806935 471453463 178124059 522570702 177843180 477055251 219374450 455237902 460881798 214476601 344156154 58352282 220217012 330025688 114164931 397358990 516141330 608367640 484611289 525984696 245884622 492283551 653164916 271436597 316355546 264616448 395857797 417437812 39334393 841376351 409531562 969771043 787741807 65828114 2643846 215452559 105706604 342176460 486585850 634066646 987723412 297231832 860600906 899985719 693413613 913400710 833415562 201298967 582683287 137741466 151163302 365197572 673960935 716046109 201598156 802047237 374711370 856941347 677721618 330471519 68523868 560456079 238116396 680288926 41189130 19845106 305350407 794777341 562299716 213120226 643471182 188891300 170677917 206998484 786187823 297348974 333041609 80874001 971861192 146848369 69264027 787819183 113131764 396925665 580246678 994524773 616685092 412717507 905624224 191385914 110686739 225707445 287157503 468645638 755577535 310525253 291943267 541626887 507316156 305219402 865665801 228359644 136626668 254214315 635294366 443187702 789075032 983363609 594504654 745885024 606957993 978267531 263447408 426478225 205988006 948945119 372947544 4619360 695666975 552941786 145778890 667865652 29388909 828302740 53368285 8523110 28647018 764484818 876767648 146939025 977040495 401320512 156133673 839134407 259927194 629930650 423930386 446538653 448237775 10256338 197078846 868164268 673523294 422246581 207779052 172650107 252415353 190131611 903512794 922266580 816267501 895336839 263786382 471798691 968053598 835053452 897917833 347230010 282304504 817768790 486950732 308327104 968940354 950155176 697704911 717068452 880934926 268405696 133652923 717791473 420047659 642957674 521684595 260737756 583805779 33750081 208376705 754522784 467493400 112869641 341347165 786561248 500011908 374918964 253017659 571499141 781492345 851960204 452136827 818267338 588910449 235654993 260692543 124701326 858902235 166638468 61007133 2224738 213259261 44604738 950203559 760249924 649339036 864852409 18619678 406935736 371156942 210557681 674263075 72309095 732969314 976055119 955990724 324961421 456347900 99180252 159858286 68422469 93747287 417345316 666381458 68622403 977617858 623273195 179389818 742752406 727396559 119476466 754251845 777729583 366017887 560563590 765753630 683364698 441998563 459681739 887671238 461359249 393365035 417918583 315482614 125044229 370432013 299985660 743042691 679886697 461343288 607025759 234159533 381859622 454286853 455709249 435447096 69281909 605977604 886194230 258481513 759597466 406769028 548574091 65587768 731584698 889505107 514948694 482249608 30812276 520976949 113311192 565179598 972463613 952682824 996091621 244269463 451785276 614225065 151153354 740694501 744192520 817804287 590177126 976242600 907456417 240113325 552271271 314796715 694888391 584557853 145768766 765546061 892293152 858138993 807456526 511272387 950607413 735385397 36482317 156818614 689709088 211924584 357625717 892644132 699016983 270502500 472887545 111678954 152136388 394511531 994406232 64678329 743631836 241385258 359671410 446294347 751966002 746390635 979572437 835868390 900978976 88229363 150412629 412519340 105949659 581774624 607492147 759176528 628723133 236681581 101989043 887645315 187408930 19175037 940815087 196380315 181985852 133597189 241705359 955341231 858997288 942803048 969406613 988073050 414214524 370210958 879620761 952995277 24558691 476618442 219682865 307751073 465514319 957446165 763623580 711870034 380517943 877931762 5550463 629890722 197606222 231842877 347392943 202204838 566130808 659080776 94577457 785974884 372504599 471393596 635959063 413470046 892672407 657279992 174163656 418384557 905072421 434342023 137340424 206701703 183197480 441119835 990535451 991615471 199801756 827747322 542343319 613277292 450271283 577689303 671283511 836666689 822761657 518566680 338455277 91658442 44446478 836694844 90051910 333162022 438724124 994405456 620204879 688481284 92559666 171798852 475111642 219136542 680534003 800961547 741598352 996957874 456060381 549916108 426013953 125757343 837426532 169387907 282880185 979366297 569526728 65269817 422297956 752346179 222441505 65148012 401986972 937020985 934262935 291796656 548592518 307016617 25707982 597073016 935457600 125411936 735758703 915358543 964437369 259673002 323665370 190348602 907905456 82973419 279524672 71095102 362731512 360944414 216960969 673133717 733507523 414947276 260192619 884370265 112189393 46782837 22845549 206062828 600518022 243172892 312748982 409129036 443204566 614212737 790859099 642169948 253799790 906894756 370465954 191559196 542509501 305594787 263440269 702216885 323808595 260697743 678439817 880514865 459048324 140702412 362454340 961282546 929766318 547881403 823792342 533344191 907023908 38064790 136360437 11071889 107985665 194814256 884922094 982926515 587178192 181065276 249939491 645502963 47992570 972026609 838336673 433519536 500217903 695723104 715602832 773221383 520700534 938302108 944028311 235990752 940017135 838824190 591895489 621807254 7554831 149036101 503329885 978363440 28969760 383108955 940747068 335851903 120960887 15570023 215526476 842110198 938085445 203143437 726941853 205007389 888776738 601373703 590419904 436250082 105695648 592512807 411091122 926193204 541612059 462598590 787529639 267408603 508112598 555393513 645177458 749946519 685679933 323924847 910165765 899949967 859238223 673382706 144249910 735730346 629076847 339217609 915126323 217290070 797008106 658520376 393469645 677164913 280059713 662574602 745365634 108865160 757014603 527165514 805218492 412913645 847065786 129669616 270394565 164289768 678817323 655816141 44746186 444971952 303187457 161626168 662014403 58332893 540578708 876293981 481925059 443835721 660232370 910856057 722125764 810122706 571425029 603851103 587357212 863801973 770458170 579217542 870020243 94907452 118661905 254143951 283776341 838558963 218530645 557572689 303496163 59418578 554913964 493472864 94742078 549115608 15580677 195751433 571650840 737032243 727664697 758840590 408773653 929061326 669149869 725705842 706394426 66220121 521273766 462879805 169652120 219337117 425799790 651430123 103964353 148025173 397919479 518210386 509339328 980019497 360619144 412258049 446004860 804425550 866293427 530709557 803174400 345400126 353251982 52711517 484608909 846535675 596588597 794759246 114874521 200878307 582344911 925989176 510969414 497860114 539089635 291861767 715911315 949845275 568113586 175552448 337223943 172527156 489117268 92805532 539741513 932189726 53130042 855868450 568782883 17556465 556215943 688937408 585892074 701662717 257307776 369530159 260716109 631947668 946033285 418737586 941656441 717656134 885746545 269139025 517042646 798135210 244869830 656128528 137718431 335641548 868727344 450193783 849148149 591589086 327097407 689020288 751424485 539231458 239625528 310205098 861878714 386470196 434412584 390826298 406383074 161929068 165977630 93977415 599010373 253093340 294928266 924209577 545459625 20018202 41706702 816482577 164849891 105393010 124525462 422484675 103498233 744357109 379681881 31144337 848219173 121782434 194558534 481660478 413921096 339128576 489612636 883091716 63904466 783727394 792553477 614205629 343699135 646708222 427913122 698486357 163896800 592274646 783741908 440372048 802441881 85376292 731918704 724577353 670709337 754110365 149612901 936219850 667883220 256418196 254892973 123451177 586133748 946482150 577835012 505164135 418921187 156973186 883400889 972647043 41962265 141109658 563255642 17023782 27058797 879291203 248333470 234724363 172108681 876095803 767361881 752394054 830180376 256611330 799479196 748871778 221951171 237214581 8318065 488482998 982374439 882197195 671790947 179005137 396678293 554663009 800999468 196061572 929449061 400089015 429073183 271797582 265945834 524433690 698069200 859054974 851973132 677348214 279675207 353015150 75930847 664479012 550836851 356501475 932691378 857123137 142761376 17124236 820840394 577024322 950301129 527392442 255350182 43826186 841789445 243120688 925996734 762136842 772813681 851670115 768223577 611091828 192704838 624322016 812458124 197138236 596333180 978435838 495855094 707720250 902323503 595941605 690105594 470198793 61266455 773829568 221424923 866314990 914702445 965939667 603322767 986798555 646069974 906957326 364257752 860967065 279182747 897683013 909878427 845774401 983562968 743609362 908506416 556559039 611592471 641489300 22725787 678268332 663111189 324526100 141171733 870324766 785114801 855921418 157852886 929044082 602279122 733070826 671499096 654115598 18890391 69662370 994456168 375191609 424896344 456366505 883203209 506070781 415620770 456676359 222686538 578185245 815826773 612049553 961397504 635659050 636664843 678751414 399076231 643275762 153359641 412585078 142037257 117972772 954682315 485475799 593119897 993367324 607223309 973149115 55065607 124864588 608702626 290907582 874106457 379001257 848178794 527965096 5453859 333616864 919795673 420920971 414695999 959938686 930716134 623585017 346942234 372491500 842717250 282129744 312084138 16571927 164272892 631372885 950101935 352336692 358184875 990505490 314652147 337453818 579356418 522579039 908791897 761035973 271593144 914896376 275185030 48261607 762391211 769390419 178879224 906917809 68035095 266874571 497524753 548850761 330253074 175331443 353050997 934262517 919856273 947468229 309164551 80517476 510812773 271343424 216225187 651914516 100711843 920318450 249266893 536790675 134030978 685396216 571740078 890603161 357931301 527646136 492576858 936273306 95809298 796265188 520658291 118552309 360892352 764061905 266782346 945768890 346522479 704344948 174373651 454721119 160049818 99705888 20786214 384363781 842482294 41674644 565636232 387057274 671499818 416565200 778890917 875489300 48477031 917399843 737719545 537314639 285941580 481749438 239213760 799470793 246718400 75546628 354961235 101026770 803298430 493298285 264430539 829126272 25058749 916411316 432642200 623499452 899616393 629840198 11587012 629938137 31782457 685370834 639505621 915793582 674041436 755009133 729945583 35720119 872993896 220165496 351646450 718022549 393437809 975637425 694643191 772839047 884063123 27247498 540121618 312644597 446295858 90568374 772535141 925681790 641468939 481353804 105155185 134684658 51937078 805507120 219097880 921449305 144039831 393603455 880302319 220976470 46960771 288832776 944801497 326758370 31579774 605725818 752895308 487681837 718280547 398920219 252974125 891288340 558710934 539337777 117371828 583022301 677405400 492319778 663615152 223828330 306679711 988858375 534563346 457652973 333060395 877650607 846199981 768724452 376575349 500535364 87305303 703235256 295665055 714034098 401265196 270482998 698573192 637203244 500793785 190645530 473734153 202064553 642296155 931620525 469522374 555641923 287848114 16515492 545614890 851009828 564601604 157886325 127689445 622448360 437718529 934960388 654211813 686617224 62011306 338217950 489750127 571177360 175821380 148919309 95300731 799563836 229072924 100007656 237787346 150737405 187218198 642601959 666139193 743989947 370156374 987077816 218417360 567987043 643208736 212039876 365698952 982990610 488305343 381829650 378691131 251565526 911566979 468748459 986757540 190258526 824662912 932839879 814364038 798749691 309795751 79320385 263261319 376817324 685988635 142594268 812890091 50523678 905021530 587859842 43685114 713233925 158215455 813320695 690658634 977873567 119203786 16215954 605444257 194881377 859752248 760907809 565751022 955666778 914341186 529139067 703731447 416546742 869490733 766580586 633689238 768795830 813478725 468428740 878053817 547038470 341814701 255921463 624073578 875658145 702356430 785023485 380286368 997220580 563509955 562094766 730688867 923314563 618123182 141259558 446902226 221587223 708001454 851083402 964044815 302967009 152186541 990029912 911185525 724401513 193871236 662389981 892357404 541308485 269019871 489818752 189544275 599387310 718047581 18598555 266881266 539476592 504855585 441882580 496740155 54177698 892850369 950873125 357729749 708546778 783599394 909738475 621843678 244275545 224406177 691204345 64200792 455292244 181125121 729399942 480375457 296109431 348761006 128769456 507655799 737012789 15563396 905378073 768864795 22227680 908458778 256560225 583925842 252282001 759511661 389566044 840642047 327374136 526180991 446036157 136773918 860827242 19518971 697377645 46799733 864904171 296415835 860740972 506149180 27587292 24723553 406765987 8479191 470078902 771872500 248135970 974546096 80148982 854317087 822764682 261037969 861967118 530412577 470903836 313738552 221149116 449298518 653930925 545705713 888130825 244249224 887094110 10972053 284903992 851381164 11123713 53036899 116701884 537256111 421358552 240654482 227877358 902052435 211780171 238603734 942467852 614718760 13468832 969710344 489286529 257193333 600337681 131460834 444123099 592606075 96568661 829273239 380198850 235532958 609982265 752832540 852004398 843662088 108828145 978680803 530202935 646218009 32514957 122903980 611261145 578070788 544509861 420588813 353151118 986515042 171829629 708203188 487848579 267536186 351592080 105482913 24472002 441574818 276415906 914092368 842360874 69014050 751040397 319038366 527091085 405254293 599870636 487061235 760677726 29414865 251250999 380537034 840195182 886975301 47065140 94836296 790733403 730500060 534652216 835192752 250315486 627472566 615141067 928754220 894123699 37071734 143403043 727377374 811612348 670766376 604611112 821230990 427761827 368312624 687803950 559245861 825689199 566847178 492112056 362890043 799823930 516730415 339534547 709867871 984647261 178709046 626353080 962970667 749423930 428554550 42675266 451003159 661630032 447202323 487986415 70382746 20943445 891921240 446983782 102513956 543996499 86826198 479623611 703518827 746570237 498823965 128698833 133868018 30321814 287596862 190653772 516527045 95084149 518858688 649865498 214121366 434203266 509434856 563666155 434208605 653144822 204505504 676735042 545964600 534356304 349586517 860109660 114491178 656120669 579583723 290738468 44876164 182692131 644193108 787133560 931644724 614389398 762788391 687613869 269014772 732462098 937356917 70974756 97312549 624061532 294552858 167369158 987037818 20722615 159407793 881129899 435556110 520536932 595903143 467040857 443177964 428972213 257585949 932955012 327637259 380148594 643549154 976630373 561140341 382024833 746633828 279849676 477233810 431125188 613481056 879133522 758469882 287972936 43211586 971995417 465106416 191508477 820289190 81298309 835352798 145945474 450252785 425869047 295970106 188534410 582234415 397381394 984252085 677731620 612005441 731403624 103835248 154178937 775079450 351912009 577399874 310040295 229580062 259249273 111897116 864815175 195501647 492582065 785741575 94150505 383888652 182759267 833536191 873193362 876031600 795458998 575819812 541927510 474046389 83205481 878295366 290470322 508822095 934368405 185777496 512796411 513298237 983010236 619373275 394489645 551029179 481364503 646621843 769115100 871823621 51505007 675202900 508554845 890892102 310767061 986113634 184392116 724870482 107224829 2540055 632895650 939528100 93235225 868917023 735493066 150526062 543702397 318077004 445123633 739574635 620138269 119075921 236822138 856397094 882302436 521084684 287082032 763459776 334475681 963457104 994721704 769586909 537785025 91098537 134255025 799354567 804242509 291493511 97895004 948114740 704125600 942261222 381533532 128626731 210190400 512370521 109563006 949082562 967993411 744102617 838370964 781829117 608760368 16982159 531272925 712363377 937594549 865817667 254505056 293085107 620538409 936382200 407731155 109568628 951450346 864244124 5556216 351758578 781686630 118343652 486673366 119013290 220999737 880649847 142281331 840348947 817297151 916047300 720622017 952103669 192606060 49213777 361184619 975865133 733069228 183150313 913222044 276716509 954452509 812044982 567085517 606654016 872246296 31411255 445909849 840046910 406161060 310324765 476701569 705186686 62868946 798187810 565126723 68267243 585026349 6249572 130020073 63323840 344020888 389956220 458388687 480158308 785954073 172589168 663267865 145501225 313778971 524730708 241321327 242039500 53090484 908955950 156836267 225578024 854478727 775937998 736696344 332571009 233980296 862984686 258737072 388593050 484083688 583522025 783668270 551166394 911041730 523768771 687082618 850501541 262873693 319410808 651286453 116830211 826791752 345146099 712978679 721747909 693456630 492148529 700825964 101792097 825645639 718431211 891012282 871710995 153716059 244394668 614604408 942334877 822073987 934153586 528150831 300753549 549346069 866415602 191941986 654603750 893883054 97996194 819260156 578475512 253898180 957573384 222943580 921808562 620811576 446073236 727220009 649066469 117186541 328696429 869847238 284263156 138307540 228646512 894555189 612801831 173294756 948192230 588911299 168131699 709851380 855806923 816014088 590803858 940172533 585594926 51738512 518391461 133805757 53458508 688351924 732404491 820876889 989420288 513158577 6087255 12869616 803469521 353926107 147622743 158757707 4434344 396374051 717449576 695399877 250315501 924089099 369447802 765451450 901458495 545501891 532025294 813545139 671136933 704356971 316065311 749989446 138633050 13291223 774867225 11118611 383254570 348703173 603380144 707896560 676176753 139353065 385776808 172080827 336573536 840833838 91289969 55262509 358737741 132362544 371496630 50958750 986507087 139676048 789227218 274775187 519284702 641615730 560854259 56745274 411955617 184288865 762027454 596251371 267400812 857120502 869657956 38971403 657210588 770430082 274284890 455193257 160652289 355605423 864078827 616142118 101419167 540561391 536336860 634877578 253137852 51548142 869621550 481547428 79568218 54165366 444002470 70219484 152537 903054177 102879888 37321189 623093796 909050177 510752707 343116406 23348443 605930173 32666839 647115112 136805319 763708524 644738680 550053188 784725675 951827515 945352797 886450101 503459746 703906812 757419035 93358411 511456178 852845798 355365544 366766669 633376617 487326666 986138217 227803268 537298672 70854027 473816735 357126038 749679724 817808053 613417916 650910296 276055900 945826662 876463547 353047898 585652944 599693825 940891055 868459241 672998160 695312512 12553295 691034930 833427975 832192095 334320027 248397324 26459534 991239908 77609742 869336947 891242122 900571611 890282705 896443180 435806646 944327463 44502870 829851168 451183546 124462923 716209715 867849109 918236281 608153763 946432429 757057054 117141314 874828184 84498521 556353493 994733430 246767531 651856740 343558508 312559374 101313624 453505969 23468726 809098456 824687766 633832304 653019039 88782526 512667017 310791820 509953495 341847573 432432806 519051821 249440007 827816950 830487916 124487024 826208672 241288310 704503146 961711325 818965511 620535352 7565465 90780531 811997871 402834543 123704870 96559795 634077429 719804530 152711552 777572568 691853776 391555250 921825620 190483745 418938681 937058800 713560870 497926160 341457005 625328324 15957597 898842885 149879910 89057479 247476964 53953597 78193878 385202119 513911520 497494760 883119118 105367061 393575031 638079507 952056555 502123243 936135416 16491171 8114077 470382374 562904951 379915324 904165031 140585026 275915587 139903820 760656608 659647188 979425883 966802057 224298599 724452614 477305379 989717128 226217023 791875538 162494771 923518345 532202512 433766058 167374650 866897603 781130389 694673899 325118477 604636461 926684429 502793674 981476541 170389297 14639526 200328184 221727439 264186393 138196727 777171846 145913532 436977804 754646367 859188758 328077426 130877627 463409269 874844130 250880434 470738670 638190783 650300576 929399588 138735791 285930736 58276792 702663367 667077109 12547841 501688509 70379654 487351344 56605934 793562219 327927918 271721215 346994730 778777325 92908816 445443175 9152631 605743601 460624380 312122678 336272061 734206916 160821355 820560111 652343295 245230295 918216174 747345324 105800283 773924804 399424062 472877549 2135471 383552280 42659911 278343188 974994525 226430292 664930388 88113009 989190011 221598204 209795197 287794249 340491365 263083706 233807215 818186895 989019104 865953803 149130631 75629316 778421641 16138238 168098441 74345584 239120806 670273598 566904962 109606679 293552904 100946306 212025535 332600289 470554529 170914394 694420878 167200155 251952999 663493308 170717419 40831984 752441152 575259477 495914610 292689121 731368498 831038398 327993685 743151439 883982872 667698589 844996847 341145323 752464848 467071501 853335724 439844157 391128319 60444329 432222826 883632859 157929347 865391519 195708328 218470593 23224387 331444368 641237667 664373493 986926609 636272729 472832458 106587701 110732454 312954536 280074631 978624533 185597238 817188844 211280564 726239631 195932005 666956325 333038670 763428578 981160708 177620964 893461305 615199355 932053702 944585041 473407206 871095563 479326210 861930916 960445490 563119874 432692702 43574984 745888216 231239683 641523820 668160312 876189867 220692796 259395232 216039867 355092808 477841308 935008778 486107844 729909830 431499277 738270101 703945306 162895973 470759170 93776454 424487858 147600271 769163243 800890632 80460394 138544175 270539997 712122227 593472266 312416371 410955407 193632166 966008667 178660366 811933210 911164214 891708823 941381610 998271505 762414243 773727159 650925434 554027300 18856559 792447338 237915712 248705040 91690813 872008916 248277896 679196634 548385810 593454117 574350043 970146232 913847016 654903020 878804848 332259485 908160682 733424761 301140105 250372051 793622607 286131746 134664050 672743867 354969983 199101721 109499761 47580237 767441342 585139755 293793452 183561118 729879369 489993285 131347258 785054964 368414524 506616014 359438798 135645788 167764216 125459164 415472555 265143312 251255081 652124614 463935981 216718552 212833877 219883516 843641722 187395474 290363657 265488440 466795523 284800641 756779624 441537855 56199775 606439186 1220544 381927077 809020047 618755227 682139909 782201456 421084358 316573947 580080335 37819377 789363730 805455111 8040685 759533240 407519900 59645862 645811669 69629634 193080163 331089888 494272370 890053752 406786298 126564526 782717724 111408811 951556606 298483454 921556337 832159282 204257508 858874415 55072531 312163209 3614071 208011512 861508499 531707821 944409162 836486618 88817144 493178237 157438981 475124437 473527010 36791569 68791219 313909091 938926600 572784676 324554982 12349485 463718500 755842112 456905900 37955424 365341848 167203936 495213910 329800621 796612872 598996679 703210059 391820994 953974363 962154999 326223266 861033677 153290789 417742396 218568625 468249691 6027591 282136851 645467383 842675088 110543120 23288581 283483712 25259365 42762618 127432784 821728594 23094900 247191416 546363471 203691159 500608242 550506628 517722579 838024474 517161047 209778523 661500440 426617338 409236889 593982829 950175539 502536907 892450809 528034078 861712950 843910271 856861432 753050672 87984981 136371470 484529412 787580063 360985683 771495269 950963031 189090945 862589834 850386123 971633202 763644843 145282721 725060738 496202592 464852737 489531729 482805721 61144651 723556245 497321927 456474809 237305741 67605084 613860846 428659442 675714740 180474106 562962010 539762378 344122436 9497673 408392279 694647749 885446594 34957685 344962068 39959918 135203678 375517925 396395702 33943526 635604344 559769753 337245353 219556099 993841220 537752201 992448889 291671964 533856785 110900333 230798924 323693443 802668663 648853157 11999018 849640691 309840759 902672022 594321811 111029372 420155173 483100515 684169677 81110807 204435948 232849903 99078464 544222641 998462644 892849455 477286076 591349027 265672383 466588685 834880321 181986070 170158143 673891027 944706190 947857829 528106857 213021034 783806333 237768690 270584196 829636664 598958685 385696022 925088746 877258074 970431997 359057693 916418312 200419549 658200713 150198868 548637530 79812098 400031679 174807431 370309747 837559417 410759227 537895730 88237279 20718567 984028558 285889928 375953531 886993946 641756687 147770892 918390357 52110192 134709464 687804455 405452115 683007029 797491905 897155733 970349436 849954142 629516738 657799490 304806917 442422615 116313381 816908036 933220031 769549165 852107619 591548627 902003127 477554456 827487310 429450371 622912149 592338126 986760697 889461160 292393162 507259267 738807419 239021979 416873396 572158875 811145332 134123200 240588303 526998496 603603844 819452126 129455051 139565054 992933019 6030068 633156251 566219023 86111023 772964563 60116253 587928850 493247381 250260971 846883611 611896541 326516119 349400864 49392295 909161848 112461418 3306612 853393895 533142882 966802461 450473936 57472210 350941815 814332127 882720727 955984974 541674406 540778662 823685205 645879641 951701824 270246700 872875213 775018524 342966200 842508789 61086492 290447671 257330956 504503923 46196963 24703107 229745908 319130352 760060071 768746818 229765377 166989849 2030590 351102203 238898063 239083553 905354541 234349837 772968563 683828319 562406800 909675167 231440943 480372919 344599521 805922544 473847914 47071957 580338082 138566468 683645087 652320280 678520647 726042779 373334356 697943693 330382764 317961390 336515261 492275444 95888846 542391164 624881693 218830315 34490182 454993252 932580616 685583589 773883188 377315974 221296861 36875588 448978109 722532353 302945340 772749112 661006267 385500767 477144460 449871141 101580735 493702705 555386413 460702092 138490633 225041292 69326805 697214388 323214963 897312913 707695197 872914014 131857296 336482493 922977384 492220965 652847522 120401601 556224347 855919707 911415429 849181617 284242031 212744072 61179000 385178320 294894838 820270932 679413779 915333530 656289499 619811512 655916393 484829856 279296848 984597594 130987344 977909821 278961888 643072592 5585367 645426097 75666923 996486141 883038013 155122771 326212436 130078039 892816067 241872925 930563552 846892261 258623209 266875098 813758102 457851487 710605682 472494043 561428120 811071280 457457271 553891646 179340358 21905859 978508308 83577945 314341633 107266135 844068590 496524297 9700937 603665850 276193235 313018287 253062449 489604817 678176429 331856811 362142514 930945892 51647691 885845643 539433129 780663221 881808887 417675819 585965611 708469837 908717783 458356372 671597801 831526642 121243070 890844991 727577567 249698938 840405648 472239282 893345774 57652761 312902309 802694561 284275301 526825085 326248843 448359517 643724064 113930222 569658262 521339541 845505652 664476701 898133826 437934776 968544084 325074946 207850613 365896011 578774851 92838033 287555728 265185545 79371204 486459040 863532434 294503907 392842187 970531516 808992649 330513875 597098452 72421604 535356864 120788742 422803077 453090255 323543558 714286726 773230328 389577075 221205888 463618555 108357297 166008040 481585576 592112259 26388221 465453639 921893828 343290779 993732171 261404997 865459554 450765084 748702797 517826550 710909423 531053271 456711569 74096909 748606395 48926191 921429684 664079864 376182608 80471620 844353597 981797909 843851877 758245713 261191580 319050256 386829548 327239245 109759971 45056832 329612178 684159583 559698316 1449197 38365546 244150159 953839197 327298686 363122109 765657707 297447207 660272020 260267125 53193582 746692438 274688777 539680335 660228108 670018785 621489799 620882738 798968027 237077517 796603711 346494191 835976125 967588096 105117476 430756528 810894787 202459944 821940747 382595277 499070274 985024196 133147166 501247545 759060546 270294064 533258781 887963007 874350167 303734829 718083059 281841934 887121660 30349911 981513755 20729766 513806849 447175856 280805725 677486985 571381307 842000830 330986989 156767154 339731927 148869557 88183115 242989550 103861181 914821212 601779473 372724548 636682666 523278421 430238734 42245895 144265053 420210343 861886900 449402999 485484040 230399529 873114835 712738366 413973917 263927494 870751718 416054194 736998641 469095192 819326657 15795559 585953483 158482055 89225989 563764390 503653991 31337832 109564482 487579348 383620155 475277218 356377186 518952455 985169421 461484543 308561752 864319295 156566716 419697415 533049121 841318809 508480968 92922205 829624976 11202170 562063173 418351785 208077393 663058678 263364642 25943824 706319265 242841092 652415137 88142801 454708063 322622944 884467885 765101972 916642494 268974105 533364733 827041646 310200742 46557484 813030044 116631237 370101842 159921746 200156866 471199206 809240545 338262666 183908792 564508113 812045676 900322350 360821369 364053165 798851023 190949840 524938833 839106235 971750000 765881684 850523609 398269560 412242533 522523199 358662168 288699932 809045425 479796632 508936103 65854454 709178561 133035063 233970972 331342440 25095275 590756279 953240113 978920235 149752549 214145732 878014706 495870492 946018293 105127744 935680468 9044553 607118257 657074775 243657639 278900133 746121281 915746604 778947085 531426551 742624597 239903915 526030812 768670781 686526491 326536150 294910009 515988050 541001650 561677312 393319586 266734438 713518164 251252480 159115825 635633105 233602077 667004071 548221458 133387992 609420094 435473717 291684933 711510438 605291223 312596089 503459860 761067434 550937089 133845410 670040872 349868084 64051989 757044555 429991069 579168892 266597427 352667491 911663219 49808119 680749133 203612254 939632338 907560696 779986826 425561535 68939126 318781346 502609144 606185406 343195453 384776246 33753772 467428723 122680820 362485477 953170208 562110533 973340645 80422025 643837555 553426476 686933298 90851045 240985264 206753752 209559567 249644106 44185044 768663734 16097224 707767956 186826773 514933143 784065787 94252281 590754871 790799705 599261700 489683285 481521359 884927245 731605575 903488414 909743700 989457847 756163196 589773992 285173469 187246004 206450289 647950938 856014408 379499353 43669528 561921670 293586289 859954125 918933854 755289091 851359041 777597007 796614501 215225916 886222482 784544752 386243660 473879239 165780708 978296430 124811358 829584986 412454418 63758071 472626998 927076346 493689966 450660001 309235044 73019007 827412855 392801881 175593639 734239094 459035132 226187704 880686792 473506731 528041105 632328302 507923893 545493385 688112924 355877266 115720723 635041408 791840271 417740015 775163005 543675512 529611879 452943813 372209293 282372484 226101483 78864503 31973790 381261317 371975723 895649330 427199084 525255707 373190418 870339715 447723553 804437977 56273832 661148547 672491346 993165432 292840062 635533959 425748450 140315509 656402400 57677784 252752303 750507776 77321136 532911749 762668065 903286117 746577714 508903531 58642197 415486873 540185732 927175662 146499355 938010908 309419073 479758667 720012429 587771885 94032682 778747041 181656416 655987209 241526975 759250435 269127636 967706410 901888984 714772578 609345364 340781400 687682159 249688470 772759508 36434466 86834690 800606887 859313049 602398676 16683094 20973361 671503170 757995586 310691221 177653008 621953952 880649938 404758871 389227719 490084685 944935056 875123365 427233545 143433471 295431152 385126279 871250899 828141857 666022475 583991992 923431297 452017329 255977404 779480084 336786016 651792063 571945322 846498241 100839063 754842683 647237988 507252078 46922834 946626185 537048611 631986419 142124376 487787720 12520025 881376528 994708595 644673449 698047063 762913456 808576918 974968780 528502094 522993924 993465396 64109138 291366541 492101174 19440029 967359024 769481908 669012776 727580714 209253785 605029687 141220341 333955445 291222796 889694316 660853259 264209044 362839498 787262619 128219807 430327337 695473614 288045182 265041264 235659438 402298259 692465025 737277690 14531394 661280707 604073216 842628683 607819825 804801039 34034310 379370792 840876011 353885424 934271889 848591270 506467271 437536134 266745397 979914174 110170207 742850459 126067177 82735974 988368894 24761473 380233654 92617645 545091573 211503766 206168715 890725867 184111909 963718559 98624201 809418718 789618124 838863128 564368051 914421481 683049021 518124175 922756190 955351055 622310124 581940614 865231757 679412517 461369292 249966424 397831335 74666594 794844341 581855557 575174893 667223446 678412373 240084 368948896 988153583 859257235 234841715 260236293 1840867 297880747 655889009 228859811 379962462 264214896 283259370 380268179 523003872 278964254 973672407 238350872 125845258 863674542 225380965 123596816 696308425 960746793 523700518 572679493 143843287 783252124 667732881 618568220 205340361 181263159 737830544 19714191 126508160 810184550 654916816 202587825 627187589 907158978 329919016 982298142 701032148 813972344 844292256 213385082 410792916 171057752 540414491 156395107 931098143 283234136 197028469 987939999 778084022 906321867 629203106 228119096 806195614 571899287 941411807 13945526 846929586 309850451 731228466 979326691 887329721 514350753 812270783 91584255 632696793 710588488 110769600 763800028 583605189 271779216 556722980 323862186 433042528 573836928 767959797 97478783 15217254 654149528 407632873 638322550 669623605 867720181 730820232 845050494 251868560 23114723 736912293 448923052 155393304 774820336 853106134 278537496 245271176 131645027 786585246 393332306 464663911 989893228 168125015 966279902 489581792 356710136 452161660 434575201 813193708 907105403 479857591 4070463 212411267 743238763 302878478 239663064 866299106 25613859 346076933 833587652 333696768 215134599 123074338 643646813 788381248 126773822 346879668 317331278 827345679 762433393 496262255 966777555 71117338 613389872 582225273 931999544 70934630 855155310 534817937 172160345 105880033 915004994 667734579 431598432 423576323 249013734 925628122 138726303 658010097 932479911 255489760 975078548 378510500 257256644 876559160 30982219 483649487 953825876 930721766 760685491 657533472 273497985 517527539 249585333 540300662 471374352 322991421 463920061 234706882 491456599 235770778 429754149 164274451 367537749 41817455 702202661 166212806 476260772 806027981 453760357 677619496 747776320 942635939 645916835 429245001 117696152 854980198 577934410 238079758 231081397 279025339 115224367 677585031 204255260 205442673 643081919 916569069 319398678 805480807 286523200 889448000 346370404 140314431 611610852 947468595 541143056 9840787 438461524 6922889 163982847 478331492 678622 187327152 629227962 697539341 78084261 815612901 290921677 573689257 984409382 233755119 37143639 997276275 116867553 504179933 790873940 679780274 684257373 237067150 10610493 707413171 909359041 935434870 607177105 247906595 112862799 16032376 611903722 497515440 413933682 500715575 207052980 367841059 538959502 794764202 999856987 673796362 906485185 118505131 304164652 960971217 64614173 576183989 498982925 28404495 978656246 360013543 712877138 502491980 106923999 220154804 731962487 225279552 845961369 719679264 248723366 304599468 67223613 22000046 160552835 803730259 624026134 160572852 280190165 475419657 273780806 255982161 755140210 350900494 311804086 577725763 609581414 649719958 246458369 997799436 910273272 501893584 384854628 496804409 457617196 172438005 868895891 709118730 686857211 569987603 54393575 99172901 22596620 87025880 254526568 624572426 522652311 45692622 943209599 540669716 683356664 899538481 440242690 872662559 391071327 708580085 105902511 437139185 350493892 867327750 640787163 632461514 567660228 652419964 663079195 998846639 957335084 732595514 610313382 376972452 759635212 42666379 255173064 22699445 175609467 250600977 538339888 279512945 801528520 993591741 249062617 816325158 780822679 403459063 366936350 40651299 683069951 473703214 704232268 549392547 199441111 376812851 959369634 585630008 756673363 314410886 627420720 43100565 69118569 370159528 24936519 5412374 321059412 23488055 520978510 956799884 490743007 657027124 964179758 199336585 216278473 785447124 103698616 324766033 632986351 816830806 8775546 333943054 845489732 861192085 761386336 584888554 212181539 61720629 98171467 81462592 831960063 954868574 62476643 945674925 700900897 661446197 688392256 685225641 805315101 501103064 583684732 238627772 936514940 692667461 134628838 150110556 3523709 730351145 506732349 29078226 363395206 635897357 92125710 356839061 506041653 858917043 949688111 642756170 369416320 60786360 247581755 985030944 502997695 150473194 71142475 59018073 169261842 564871577 929416607 858168842 110963857 727519927 870838428 289976713 251463501 433796749 206584545 811985311 885488606 9757799 332894444 300072423 975547944 280622313 615813653 907433972 443676103 237015509 938787463 479362364 850243557 137331238 905380070 10315324 788866173 967967449 229687486 969107296 324814165 743466967 102050849