71235 9
932356229 89163765 232327473 999974136 956058009 867364118 596029103 666684465 803733190 821216263 108427179 350757484 441001187 120150570 299996784 815856250 430394421 653973005 555304303 761262318 116634097 783748085 227903920 899600068 589937665 468510692 763646605 59426682 48528018 738780171 341341692 422575333 455661125 346037145 890262659 407797581 865886992 246208595 60866834 896279961 341741711 974267988 309279002 59715648 569907271 725457699 130671694 733409780 593127318 633031027 245382271 370941846 46262121 907366184 134363463 127536337 408218768 962502584 343830562 807918641 971126143 5606309 374248210 380528426 96423142 548207079 782978298 186971287 188640012 940244209 263877322 633006606 595969690 641153685 480503548 262052613 470612025 288422044 144540673 408210529 767066609 521616375 705312636 844133185 553694093 728741178 24809181 927993118 376191183 577168777 426532522 650902536 967359887 765006588 474672701 129322819 349720735 300895500 40217223 344998533 764878833 908065102 813267978 994909212 488191855 497711615 58633111 119071094 880090917 931835053 461344834 741059124 342578111 495687776 341269903 324032147 247659247 526380627 974622097 587948629 199272222 569156836 980715997 682651585 951464239 464673282 623001778 64428025 437673028 686215971 390244417 907842201 101857824 640277262 955293313 512552347 871593779 758263692 74594009 286931644 856020560 174055437 568951148 530267935 458551318 652113832 128697777 424061414 197834906 954089678 363973478 689809370 260313766 146609454 895760538 255177199 282282664 668963014 771584278 812105318 866752747 562448873 40181476 821926594 963676862 511518617 508829122 446573653 649601201 97602251 514259686 572687663 266985615 267871657 266543928 160409259 790391428 518166828 219138146 108368965 123521736 743204649 96634929 623142958 808161142 146186672 16069707 51306288 493794367 9687505 138740548 197590913 200281984 569903727 258072767 918445709 721283827 382469721 492137194 14333879 898556860 527533529 689560868 871208776 908532913 447013947 433995910 29071826 791770081 262318568 165909347 403312032 991221658 579228780 529487637 545159883 235213871 141304270 340975544 865357379 469245728 407575208 579321936 418989869 788929473 6726915 345981609 749575320 458436322 862763039 913076890 394180059 744035198 375441927 458587186 198765820 801368680 378664314 383810194 566410348 185858011 169495901 842523617 761232590 578456218 113932670 61680778 805158756 456463246 972931112 661624082 318595856 648495820 120631783 902812822 133387773 144673961 420239754 587748095 704942580 166354123 916039570 746905164 835959356 819354944 840075953 186562072 221486103 954054051 775123861 346597464 230310437 667542076 846618651 714282009 883613573 398986599 769375347 53083743 480007968 444683894 729615511 797876944 538117056 828225060 656401314 761613622 175198958 153064220 171439945 895537594 639571749 30152926 518794375 934162522 224500878 301040959 940962507 848386736 885107537 923957912 513432319 965618573 770247234 439677199 875248892 172788416 65727117 670762011 343372725 77927778 164679679 71531440 900231604 201573193 87768941 942963248 959973176 587905160 580849353 120852055 893742179 751436049 916822845 650970207 839033661 515019081 564640235 591596785 11289933 262656019 885170922 956443239 538289086 609771759 22893115 391886662 857005688 16168267 270192136 320938732 355785357 913916402 446145973 45328340 49274882 667174979 889202802 603497296 612636727 115481805 790833766 757596349 818348904 580746431 236403321 861028367 555873000 98299536 249225748 138502279 97767154 783470588 637513951 337887483 232701717 54912079 949612145 390652515 606519151 513496657 434611363 422844644 74902294 11096767 33373888 942746158 653903393 840202582 418794206 195111831 938155834 263834437 982882560 76613103 411175756 527767299 438323095 907039613 123734333 394720554 361016096 503776140 467272478 115216251 904693786 349192334 745902928 115083919 940745866 584573955 347494275 598281003 258379143 91191801 42474478 748442917 63202046 842005807 578281371 714729465 34962643 73642679 830914909 381483102 532784036 930480404 814048919 659686245 782742218 356657165 697479656 737274464 375791738 528634771 198212770 90954653 895832866 210550255 24731308 407919258 410997384 853755070 224244306 524121720 291609811 840689493 860288707 547440294 206745628 314857647 821280379 326810257 141902549 599662669 886994327 685425092 990292886 11378453 422587176 126304415 339062792 962928406 36876030 557754640 826804679 685334773 712995715 665130306 487604114 397904857 241545863 480832173 455888359 40584124 728201973 169307298 58797911 544802163 824856431 128244982 771643412 249095864 917770712 234825861 849596231 49962092 899889933 221177681 388855911 174017705 278920737 305809364 975837586 716047211 224427347 677205674 825821054 239577307 226661062 172484251 904519948 977852908 553576023 140905921 845485400 506672044 610681123 77984115 492001237 739216247 683174915 291185314 895321520 306145986 23213703 303501001 492486576 693623789 232811884 810588964 179084107 884012423 438227123 493109691 16861570 376325626 685054415 243705310 592602230 870908966 846216563 867938599 659487701 165190095 333133885 533090830 432152697 639604389 467551870 237607016 523326613 833561466 498068984 214019442 683992371 561145108 387999668 854818023 935340037 405185340 414784295 3407911 45216386 550170766 884821421 467291931 241980676 783665891 607492643 310687038 44094666 152959250 10333888 779960581 906585082 932389973 303831106 785604772 315140847 264219833 102412314 443271343 423858293 997918030 989736767 102823723 649139877 92211902 519561679 644304080 514020507 790949603 703085892 621453008 531805335 959130981 979383953 667131998 825731703 546265936 993264620 702578552 233107283 40370028 668599143 328194448 185525051 538716360 600782702 172570296 464071441 930053347 954278501 937243710 625313986 531988022 896647859 606365690 455592205 423367458 874918093 203373222 413393059 244445869 6743369 570123970 619170260 930650001 423557253 894401706 796024336 411006864 27268213 645336413 992678040 412540052 248668214 806101662 776583414 737962081 19001071 126777529 675952976 611435563 793828453 145766891 924431525 399899403 247887304 234924372 205089043 833857483 498970789 779117033 384031412 72105409 70760793 682970300 11437148 406546269 454929983 19215756 359154775 767166213 950854852 460590089 727722742 804477032 312168665 802258376 76973255 945739568 753362783 228686500 729711493 520822600 583691331 517261205 425700164 107406374 734800349 59052150 623021869 618192552 685212405 135406707 386125274 98893461 401139249 785870508 24558936 27094322 796175724 2769092 341495457 956343862 770215137 65995763 407262773 675615444 160185412 117792503 465192103 341644685 531006165 755082311 409635332 769489202 704626173 764550299 461953969 841375988 735744475 672504083 283713101 273205365 311194495 247361593 506514199 874319674 646967898 457666014 770958307 213479801 593448421 284057329 573769353 312839821 968054184 675381240 753656441 250562649 618998348 1478269 128705498 118951538 278710535 64911776 396888391 621267003 781023600 235169116 921099475 734610901 639541821 12737030 947354871 117301219 760873819 625961242 725672873 614940295 393368268 613975413 584805697 599901041 719853039 872418758 113836994 301621851 679088959 282184750 451769806 780779875 782189742 686274214 104088090 865539184 438411460 506793610 363101696 217237547 610625535 137219721 361038973 951569110 814581112 48498028 134298670 674604818 756095397 773605215 592452791 634680050 807115376 88516975 389410975 982562726 252275645 169906123 887749943 867446487 757807796 208634765 520327623 779525073 351760351 267785725 279855095 329790925 834928526 823214648 574213741 172196446 395546367 186142986 152937867 390647699 280197252 332249090 423305949 571603106 104077315 481079531 721081278 626165517 623915895 565915141 364398898 560340337 771364514 175558080 287214542 270682402 989834859 455958397 592302739 181830857 151227183 805194186 565766011 743308310 428380401 282335740 118776860 96098350 155760431 578923477 878845828 635005715 85843618 126297130 878022931 336456301 806688693 61120389 731183896 965740372 767338582 50867951 579674864 554427349 69593811 778864118 796302926 707583241 747279352 463194453 363515348 444727010 462027006 832317505 684748570 912347046 746279453 949502870 570409637 817056559 558852575 126778929 715740947 403421833 388219996 973633458 687585979 571014466 237452877 904405548 370383965 983298725 564186610 592890960 511673636 64994047 96806515 170516963 359013205 351947245 214766158 104600534 824190980 803194414 296068670 959026070 927223809 670721954 773354709 56906778 623686229 568423466 946183776 580926253 28074075 108363260 414579159 863956130 117035335 765362377 457369829 497489211 99849246 506929506 22698960 423420716 423277699 699740458 895334554 732501098 865808269 677908066 371351668 484735840 530438709 4066926 169858332 813394356 61476276 409575720 702001007 641410230 655259663 895138082 393415725 746864855 441081038 762372282 416408598 497361006 9724648 185059751 238813862 602133028 74532 314447091 217870459 340786742 144515063 784999387 989910757 422855725 17033718 375430693 959332622 120008402 333932211 194715401 664566213 687767866 781796466 326435485 146531088 17194330 475640744 306641683 249287766 816641646 174145445 347775481 870381440 673250243 475996527 985703574 982943700 538870893 372571149 505385561 183157529 209129021 606710645 89218125 931656019 359691148 6225387 650547346 199178373 615605831 87377846 649508080 808709173 650844820 879411448 455206301 508811618 403861891 348046275 762023994 213750248 791197435 87048868 12138462 620436351 190627531 340826568 29260454 705820555 358623478 204122256 727762919 118513873 72273547 231565091 391027470 346671191 575118810 946116839 481162104 208948054 74346848 203309053 745100015 669556539 347656831 526914654 234057099 104123910 711173440 647202015 522448897 132261785 745301564 721714152 870926122 339391376 671573868 214208150 250826484 268657699 689014503 986839538 519341723 602736141 469916353 721244510 669724974 608040685 928881620 131805945 853702551 81000562 844325620 204500461 154066904 361887508 542437060 577162128 12583328 311929259 103725788 531914981 536816752 755495197 361728678 122474034 760324794 95447795 995692291 54823170 483881938 140800914 801142143 836482296 75311703 967596582 958996937 421108255 176868421 916957177 27215013 606367464 700996512 31226286 109460567 417549424 439825363 679470857 305229312 144940593 834311266 795469046 687952011 764663122 879703864 719827239 589927861 122521101 138191377 130642333 350805880 948537000 47720764 229143404 295880383 70714197 640185355 955885181 520224066 931075916 156788960 1011145 955955730 53553767 818448010 967297200 679698755 969216779 858810083 501505017 738323060 893966720 694081267 804720537 678940040 234350207 848758883 654216974 608465301 870396691 805386189 559874007 562100838 858849813 516042039 67955833 389439251 809475805 446070848 252085274 770012453 182759683 116551522 52855483 574520653 885194749 37026688 292456274 209441139 646998126 981244651 790644362 176821903 280606571 252845892 998085776 279498993 815798438 803685468 337597207 487515359 119429666 524833604 482833441 563440813 91311730 798618293 76631564 924017972 182072996 617840624 834887624 780313026 604033141 567518750 325088793 897990404 34508148 273936286 695283996 788133687 529009817 502491267 559000479 414110773 19977403 641314206 548264152 30193034 374846440 156038737 473215268 203715925 465989505 74371119 893945456 503737972 631875363 93282778 613632420 402917894 216285660 281242245 115397723 490787763 169187040 400966259 276334626 854487046 762567574 777613700 102024506 945784680 356549372 667644305 534160001 80899587 555619430 745694528 349917006 390930152 916290443 965326359 325273749 284521672 502604876 174271015 350071974 585003512 879444459 514230603 45728655 676084520 655094079 686308989 175569114 704869212 619133111 386680174 810959984 840024026 74404092 966132953 52699432 895258427 459678651 572692392 465433857 977803376 164068197 703879217 59998019 687868359 956850141 530290784 178824703 341168555 374371864 575881131 171363434 211711198 616372305 662475649 725006631 589140994 625622674 435721138 534777429 682410220 544301926 485498717 45357529 675761354 313161861 721624341 556535870 90161538 553832533 967965753 985915082 928021045 470379281 41096031 705420270 549053501 820317748 382474826 670024116 301060262 989988471 147270345 309962389 342107654 65177528 44263368 902956141 303933724 447709541 513153831 885982666 784192893 818341651 77164582 262868326 581934506 735717320 177622786 18872484 803438613 954232966 307910445 82997524 455579551 285940484 269102720 191951427 699508762 452529865 744803039 37433776 338176136 394311397 406747929 813671219 370769100 949721633 780386996 329189550 677445548 744404118 788343405 562971086 328105079 142025981 590270109 7883795 839534778 945821393 275682904 720966663 244251772 480209114 501165757 451751214 732256769 105775016 981062909 530402796 571754876 834960644 652294859 751478264 835939612 497809756 542100027 441391937 226897080 824443987 404799950 523398149 366907156 731881050 429737628 64986525 868684097 397063385 928140021 225437111 279120885 746062660 858907938 724907912 732167245 636145043 918990272 997484896 82741701 903067137 837944501 724153077 712090776 383498050 953393134 260469749 838653369 46376965 479016198 323189467 900358883 16929194 549028392 933930980 743774663 509777597 688161773 938668259 884046901 787136556 771427210 149475492 866455601 90294297 193306911 489460994 321646343 19506419 689657331 705097932 627991729 440066629 391712718 515278098 218620731 950648351 279900296 754373171 916496546 198616064 938764990 299970786 151300257 675283912 488740989 142086581 865554565 230089626 640084195 578663802 464704058 39655034 728996846 707735398 934948887 841650954 70336261 186675570 880439544 75574534 569905254 853257038 823221064 552589243 799065115 144400884 825843212 282846041 311743794 337861295 499040734 564553065 396738303 437303761 73250574 955272932 708151282 644065545 104289727 173279202 820374353 404823065 421090376 670844267 939593331 448121669 939301524 878217427 667250720 789889278 995891655 757032344 505859017 174735215 92145671 107868282 281403314 438334626 961226367 680594091 715676721 508862484 880612383 504900686 473437185 882305107 346933375 881088880 808195968 476257820 2954752 35682473 327029555 11920949 617022607 38825445 184062850 275523253 364410353 67911103 397361259 954669946 164242765 333350440 401753086 324562737 397518970 484844403 770133086 961588490 797400618 20076875 210337884 813143896 342017660 587131972 313196016 489678327 300074729 846948139 347780248 526911062 147858957 290495576 734817152 770181443 796250904 84933557 991963264 3797779 230743973 770832966 254590612 727491059 801537479 857151812 482688148 172088850 647248497 223854944 511951336 387200923 977397691 511053396 412404513 259294499 895462689 537646585 507715479 984584971 589950761 346717659 338789097 972516559 410843348 351264242 633033814 660590525 809099781 563201036 140742626 654219601 335491921 367337652 459020715 461042112 349577507 192991834 235735709 529879929 500215000 337490609 936901941 877941886 369744008 167079397 868165851 323059858 725435744 505650611 641998338 234653766 180944173 569273432 490977098 745403130 320998132 429960694 104510276 3871514 641200460 643463697 942436752 951039722 372420508 63073976 665680385 502970569 170897780 560315173 662242722 796222300 538757040 43840180 723958234 479244312 213130810 310612681 642805272 408203242 858172953 74071756 511813811 353396748 898735489 957466699 403391987 174472603 469501417 78347837 283381811 350110842 869035779 949657862 359130469 496480300 104457365 868826254 7052173 588574488 390234015 682291562 911817506 372972758 410114485 748413760 531036663 552049008 693585044 42443444 617357872 378111557 93816640 289134988 346053642 878035518 315015505 619700798 644038723 434992970 619424651 89170847 743180154 826892525 321514647 724055640 563766111 34464660 914911307 982403790 446520627 284970204 711626862 464360890 809617323 307278738 879512217 669887947 758508279 799076577 48752229 152402506 13183858 499026939 903695264 718584213 953853683 521564873 376816109 477957249 230300081 824303967 933542486 314702062 122010638 117475875 945281119 511751334 490460817 32159520 837108344 132730383 399232723 464560277 522370818 437884589 324931909 706027418 814745494 934926735 261866148 803135373 102479065 59381181 280719602 223264717 292554278 383454833 50036767 877834461 32554971 748439125 685280347 644084853 229523017 261541709 626478955 525547067 796706805 94311938 152018363 258377786 323750333 546354148 959351794 24412709 231613701 746671398 842810777 329614385 356576460 53559007 174840589 923437880 740339573 572720377 409735175 128200625 160627420 290996342 589580194 504712475 530966466 996664125 46302133 712796041 902876078 241723725 216731609 721174920 215079513 280053344 526453112 220774492 10101134 527178264 726846368 115293797 404418237 927045407 693364682 466594208 803201645 471046307 239262306 200778971 443019728 27442825 314774161 581114331 539453021 117902389 64655498 21414477 863705619 691251740 627207446 673914450 115362995 880820398 357140378 984394611 464819318 794535641 269065599 723561287 198263331 27945896 135232236 730174177 243280684 166476558 703049020 379992181 79435128 363089 429165706 43605279 879601924 813114516 935042607 463758703 819365 699753697 862284822 525279986 710591075 407332541 984723915 720923813 538071219 309218922 228494529 460312074 149817200 901115690 308564641 709415441 215035409 234505268 109798746 515500972 492018697 116736909 815009330 249653179 631875286 449551254 531998332 984249407 98858046 500956547 421093256 545278453 885318870 689048030 320956734 694809454 546598467 516289418 873724309 910554502 666351201 563260013 483627421 301029644 301119718 908654921 11327992 756965777 145518247 1882774 523917444 837585156 622082144 65684169 117830045 613502778 116640853 586523045 127849069 215340572 937902960 442633114 23056381 662476773 38805546 748490854 794861056 165367820 120944183 893345777 746156875 874893782 970962022 492691741 34793652 741605261 985001769 970681023 551278692 909476818 105362042 792449194 562741679 533938708 44645998 849949428 30360812 55810710 439991137 792966147 171336516 343208164 680633512 673891422 65737343 491780459 41730887 985609265 472711137 859832909 996743191 989123471 12113465 591471961 923193573 4510567 68285936 460137533 611195601 394588286 238734698 878876374 851837261 551812076 964650042 27282656 515201424 1086096 586157018 867261535 699578624 380626875 952554985 603561791 498556480 382726611 491758205 667317847 382645177 304992986 2690503 46790387 273466412 968885439 404379092 932947683 413061792 902941776 949247864 771450400 474914020 706448620 627661394 937899215 77332871 846052405 716467306 638874983 59510613 243366290 936615262 411360559 176605019 945470301 910706618 184962306 66394264 494918690 978690976 330390284 643626486 857069587 815512660 36323890 282518771 879741682 149069245 22057566 311010405 481564878 219484108 395171857 190093242 448482979 508664586 941805742 904719688 995066926 681347583 129522220 105725708 694363450 480758698 374531356 516689742 23798665 682655430 839507237 633526502 908095093 360740895 327626634 113502694 39122920 111840154 514869837 548153398 608469940 8341065 454471187 495965424 384694751 362033609 107406103 860099377 981511767 346454266 146328048 901334615 527115996 595492711 706835658 716343353 826352085 739931332 680922484 164823374 638826018 968918096 489762714 607543973 683830180 403775717 193203510 201623594 107297866 22338075 126516476 399103162 554925110 148386681 483838070 907236368 965331028 391196805 801627719 656303405 189291998 429204774 654535433 43089230 975730959 940125079 722221422 641338237 982735922 474701843 875666099 436738571 366694947 961828646 13710847 549760379 901371057 953262694 77291296 864095342 147410750 974928364 70435394 511341539 491909835 463258878 590241632 116803037 795232274 466131074 574393203 344937252 930747682 186850230 331961719 884854415 645833116 430606321 885716572 819000650 491050963 451694657 894820702 551337342 900359364 920983008 923894329 189900665 656385169 729547854 241991007 668380174 610523337 465483831 902912627 185078852 755938882 511208250 936225558 255256433 909006759 380611284 202885313 540531306 919066035 131967406 924191733 600771726 336964859 199354939 535704442 285113131 558395665 734035843 531744707 561661460 908256508 874897986 222157638 144789009 497339141 171517978 962659992 803978622 287355622 920466385 520720402 987271244 761547298 573822785 726388383 646646730 836956281 348434227 251733582 563275738 348712006 718704553 991948047 789355114 170498259 699210172 444092055 210421758 170118090 358330814 409440662 451775830 998060286 545832360 445367050 521700393 307280462 185406668 347843063 62076652 179901511 499200867 3759851 802181777 173279952 224525210 958311644 879738336 705995730 617820952 708860110 431871504 598350992 493754172 940494136 229189123 14231010 856605820 787685991 732966129 263678559 155700215 655274323 228291055 735005207 339137289 881696977 564455650 757951094 481668231 332184368 141777932 80228699 738955426 795150601 230484888 897040700 625357646 330226475 842339700 65980488 650932890 26859890 944532547 649137738 214628903 568140043 115332962 287338534 536561308 254584683 164685223 793886639 789959178 361484738 744089194 528576084 577036573 780564304 605831396 736030065 607971262 768496233 364003607 336636975 513106956 199744431 412628739 451815935 294861318 124735283 471632997 862289123 34900552 208285483 946758970 668320490 318086827 749806676 942284897 389331810 199672608 475295396 385840892 519468725 607785006 46897842 892657176 988224363 882116559 629996912 312639181 349195559 899681011 14207833 406295191 277948905 283702623 993470011 537587925 362119802 263205091 682997713 854137325 441123583 734576151 862301402 163182228 828456891 9820578 744012770 736952721 858071115 288221751 512459752 571581327 306642897 668284203 775085022 456182141 364006418 485562645 664027112 657433886 620358225 830852030 974134056 607919085 176412659 607167048 529636441 582112638 824339569 151561633 408720740 758374776 743792271 470888862 194936187 447803657 280417775 854562176 95005205 563508628 933543437 891741381 631934002 705737305 716990796 750746879 373171776 618177291 530832698 545013161 255239471 245598924 585386508 393103170 908360441 269464533 672845500 770926385 623358343 867781700 898819374 786251778 775342968 646541527 678364357 454692906 982896053 3917076 498727284 416804891 338542357 378575173 187553190 681077350 930565587 698862530 59352236 912831163 607692554 670571199 377990946 577455172 905361951 386731113 72823417 734574397 931075134 295690916 184177434 818868355 176630438 961336833 39068826 380306067 265170483 181697511 848497586 575955176 944135125 961816728 520016584 146317925 32072405 156585141 952314670 72479172 960469160 290880462 848907015 316700965 346630594 290835308 359687587 563134782 1302394 690230546 64636160 372956675 22237505 771243584 393271545 379598504 924344428 131853580 285642879 401358567 626726073 79333126 508248816 484182944 213612482 395453892 127550373 664033964 903281280 935217902 844201849 918015218 148021024 930634084 579954926 670048364 741462002 301678362 908348488 593472606 631140723 340815582 2156601 115712927 731610079 595152807 548543631 877145435 39045537 324301141 890991090 41384598 782487122 219301857 766271943 556923090 34094072 77553953 382965756 406129704 726005067 796320356 169735095 485128212 105799606 123644298 165030148 341607037 573564076 20863573 220694129 218029127 958554599 141922860 523563764 165086490 152637745 887582771 729553614 475194164 401974113 137631323 927889830 640942674 752729833 739809154 310396978 338883910 467108497 730505486 738706189 85441241 74351056 996757730 488270381 878926907 841645023 301377779 476232568 281837539 283362768 262811912 165071170 334979662 498019095 717311325 45107348 335019411 203108972 272585731 168278998 85727693 258143096 372849992 470119862 523153328 79514477 213193878 175773748 537068239 974361228 942246058 695180684 773586959 439299941 231959061 171215814 744958448 309271121 463790837 724687888 242407614 976465366 444101554 817541434 745768535 814323081 926757516 45180255 339907362 113522269 203522571 834295022 678606747 479055267 905275158 53441597 120346129 291850167 132487064 88813227 909404420 84348732 890994031 396510184 326471541 279623497 404914848 258849975 844980428 51955930 514779645 356302912 907507194 798904532 434963752 924079824 530030937 301317489 680449169 79717171 714644769 649632003 718145659 495111186 198886493 353099558 302105375 650767783 529334852 867259265 736647701 508189902 213826801 486613780 557119582 358735905 970356302 726276748 49311445 268226095 780393400 27269741 217874984 378627676 918437970 559956099 741259551 758190328 678915884 717381786 65130210 761243153 622326013 580476018 676586446 779128737 34242290 318192353 3691158 744738673 354994690 162735976 872713553 557920146 595745893 768865272 67862935 913125116 491272929 160698873 350815712 355160951 860731234 760102917 446904463 547592173 758507258 181678024 480806065 576791147 484042968 884415993 563499989 585944365 306566616 294448630 981000506 767932351 568161719 198058758 950508018 796888593 185583354 759285956 964077500 13263892 254157511 494263340 121869238 559493825 432300496 964689296 827861550 251652128 51577619 975189343 206566232 123172308 525754412 617186340 531952087 725953450 465289240 491579070 93880427 670141944 377279569 825646568 199415035 769706419 78074997 795553127 4327650 419577860 698101533 930042517 230287818 942064476 402924085 343333773 557237418 153666743 94243758 140078299 949718277 395509122 208669092 893428521 233800250 440196207 958904092 333627438 446333678 115102316 941159975 967543621 359532240 532093401 991138929 322275491 601288417 272627949 348893937 182371258 864974275 322314562 292394219 617508196 741631792 50764397 994870013 976082793 961545982 940722502 188790404 515717550 905630262 350472430 244386485 958078600 410545220 468691384 693761471 226725330 388873207 439801061 212276627 634414140 532353443 959128190 739075141 915583894 317349751 676993204 356442871 623581396 903641440 684934401 258056118 86110316 995603182 997556809 578017813 350662752 887190297 360882063 350723420 431888843 731381588 706886200 32015563 789785219 207848533 802531242 335364640 698506494 933826432 185205213 342540804 228061295 955553955 738258289 329625056 681817158 292426829 581677858 902322572 877886857 712263113 445515713 278252195 16807563 653450124 326660756 732210311 17660718 229133310 884330464 126440942 20202358 78696055 431029218 508362846 115115186 104966235 898043154 988627179 557083767 789836897 813812779 699210215 270986734 905827394 198926479 520250072 587471230 704200679 378251066 400871927 958642081 196118761 594861997 133255187 509948493 461623660 467438670 111985207 618549008 976709890 13448351 29970143 992228231 234134230 260298737 826833336 335576028 875757698 302115100 43177369 672545572 785739498 576458506 418965128 712762167 794267686 646562555 608837611 102481221 1563400 583176104 428074684 303343887 39097608 610169084 799660100 256711700 685669352 879371423 28083495 433419024 498037011 689213799 388059611 378469753 557579717 483436460 700881743 620732403 331535149 287943309 868333951 145165657 696756446 780817195 45832660 331678982 600231855 412906399 577695455 996075973 454691413 695619310 881213187 478863092 386883322 217407693 15273727 139510621 171216183 426409160 591557946 777985758 931643310 940218210 768089320 676464511 811416982 75928066 847225123 575754162 221126419 731737937 53454239 32740830 992567319 825271155 206245194 556509258 228636770 295009273 187309595 489041340 227348740 102250206 651954605 452969778 491943801 482800986 848780840 172588475 816581227 302927199 738286854 675847066 102921846 431686996 564616275 233373267 40163825 333237121 173952125 958064402 522402946 39757178 367758692 834444181 220444980 297998066 207781714 109573574 179559253 16658188 134547893 100335650 182363855 486915103 411535880 9464500 792141273 964497047 842124275 970147860 939655268 98597481 717211350 980828337 90830753 272535536 636563122 168366897 515911227 901442621 717179687 681708608 433089698 846932363 623187150 803987339 528721739 85139468 648586268 402109712 120880637 711026707 64519107 415281534 192713335 555808427 406319865 585258593 490095535 352345842 840024312 30354603 739911217 113756380 356396148 455012451 314808299 983495337 708267450 843326864 699585861 276953010 350190974 717474676 448995881 745250429 593163591 409791746 412795816 270615715 654929471 274453672 992344921 558205182 698502588 282256073 128697721 115923785 703623881 971455968 786973062 343862546 451137489 863666505 595613409 333986251 950986463 868190348 417206923 792562202 297838091 351733747 530335851 152916184 856659896 417455624 199475972 192999766 622417677 119897003 742343893 929478586 155529543 882403355 490692584 84499795 313879863 643784116 551993489 324321494 753123166 956364114 128154393 686627232 392379227 551569412 990944949 667329870 593102821 955397772 514243642 346529335 413743875 446872822 472568799 562033575 901231205 678638114 343578947 187780335 45842551 660005140 254657524 598686931 794555854 532483718 63458334 721976179 56822520 961126336 394112292 609087464 209789020 273372826 208125350 921330717 746373536 409658374 140279869 421021067 156360358 882170628 889531281 451411037 848875883 159282202 124238022 152620262 369585465 467355049 1336106 424391779 889834657 152637856 650799782 843423181 56305926 908840020 112948143 676174496 495255898 891098395 596749823 42989858 934791722 789077831 633516042 984672361 109809081 471466904 246945018 227434357 850383878 525555552 183631536 601550675 399524604 279921124 183159831 998198995 787133699 818674683 826271100 335879941 578487627 573147700 747887594 872132725 663605382 167927964 836070214 273711906 523527019 273775970 193765569 137348167 725536618 608804288 684951471 991035406 627676803 879435055 706167009 50200357 975290681 240314764 959148524 523830716 413066022 734442216 65801832 309030992 130079516 951406895 410025825 641977312 563893463 671543819 126169018 340169188 680067864 893528537 288790690 244469086 388409344 687363553 340304850 802692549 199876342 706759538 505212856 323623411 921351094 224321346 857842968 373153031 141297915 325202094 195820381 818252483 448440172 57719246 709878617 511660802 336100879 100417749 912257219 707614639 174080339 340091475 904689103 694035780 468455497 350349755 540011613 82487707 928174286 10955568 220659170 545208973 839385780 63237262 487508139 723858835 351869166 801122318 210227573 265320859 784592010 387440803 613250932 106233131 514472126 507785841 594625141 548497164 643986590 111169578 756397897 564474965 914638998 287381967 856142600 622338248 959885575 475518361 758580436 702105469 330967422 67530185 767864947 841625855 182786170 734667569 800758336 723721849 167532391 646139059 428458862 717116882 537944665 182285139 174412958 401354847 737972882 138294329 272827407 210370913 215047094 855174192 699871033 114490683 60310191 419245758 770461712 680193229 234820743 440380645 500887610 976976839 743685947 809660921 696804725 315620832 515951000 36373595 600196116 621166549 29445390 401435074 704396004 213315626 691924599 532079466 328157978 37474027 589427164 35826796 161284328 416020399 903789831 524326597 821450876 280570754 193318063 195393652 570439884 97215678 796150328 962323135 509406800 193892067 553697976 383519611 175200764 84635781 58807072 972942853 450555321 409600565 480892977 535425497 45061080 522106244 854713024 18590781 78917062 148895520 276627075 805534342 178815772 875695554 560304251 289591528 102392272 418583574 143661333 999635535 934901728 358929411 692712434 174794332 859513998 111080780 28668917 248233530 758772763 188496371 146761373 235203833 103108489 342381137 804385010 214084877 138969372 746206941 853277224 816831433 43300573 630430534 102679484 731717698 542716716 305999351 905901422 77643315 29703215 639184664 757093772 450881599 567422550 846257248 99037605 489010165 389955187 57832202 839831125 584691665 966597894 147139282 627923259 409077181 813920482 466252522 755254704 451523426 36069142 990381774 275595429 983070317 903770100 53329628 927354747 992879083 170865653 43121201 711698235 347825022 911773997 493467760 137385815 526523781 84479823 385792222 976435443 919367094 821133292 848448283 789460716 491090391 951476414 808317572 117740712 102839078 573356737 533753134 526235414 145726014 68795806 964360849 450320011 266749172 326013187 891966382 134158890 318602839 46387758 101663399 135970305 810933877 640095411 222564545 678863272 896908896 174137899 575016871 958998593 764095847 152332271 918069264 511426173 991617982 788506889 803981115 916210690 997389163 525487365 66141514 550012946 130587515 948633107 765367474 233916787 498372934 804894710 597315527 172547182 310237966 662744901 125895538 429875356 654713720 351610011 393722592 564521665 965633365 680218250 59924958 76238373 672121105 123604457 527424317 496654298 628359939 900271491 228621474 719747404 242649890 306618211 653410179 210528710 632934771 227964623 970385826 342531104 453810122 336854425 965955869 487409244 822601854 631573331 913892160 324643454 707003148 113110951 647124010 578061766 167930988 755624119 659461123 381837924 501580161 29109038 834838671 813492512 394899989 638805944 304354738 700420284 31122136 822002757 424402256 169247551 961363026 529271832 585605955 299142267 677462389 302689691 551718652 339774436 436659272 963243231 534597583 795988956 113742982 644908126 224387057 910807116 501426598 609518319 429554452 873444346 217922039 530321489 420798812 727627423 528775801 928997843 146026158 156977071 187896490 886640493 359963578 280863067 36380925 670053241 345831299 732041803 239389061 662336892 163947238 114115736 376047028 235799938 385374998 395583423 451222391 210738098 504728377 602508249 382976377 391158912 25490998 15803226 729333372 294113918 649461413 782297461 318019712 633123975 544333771 795749135 642758857 330303309 883649385 12544364 357204397 838766495 373987665 906396953 478827645 474873871 296909752 829116623 449036379 347980003 755702221 858586293 876278397 276579676 881707300 109010992 144760646 613297664 591737012 403421582 459642249 548862636 689603078 377656514 524265814 107996917 35358109 424491393 853870941 56660784 3130300 56929200 9471096 380300361 68522842 120204025 729777428 861539195 451256215 718241813 578753583 604276449 60723546 813257154 961760106 798213306 603920629 421751055 378319357 856224408 468426451 733661451 601687686 295147646 213914886 350207112 48560881 955817596 802968602 488101549 636736557 710505556 718021350 701939346 302052631 283467784 269209571 42752050 378736291 492827530 888210992 468751923 541211464 925029664 144768559 140342705 85945932 246930615 614995312 690850211 58025484 677467691 795929491 872011667 426100935 27866546 250113732 151608621 786703375 689161675 246381682 362372800 747252316 449114354 73621923 628510501 417940361 605662452 717247176 109569385 974105311 833123109 400820483 861949298 581034408 877208589 669781828 426896518 486829428 337821926 144365056 923250399 183552005 219522673 100008436 67848487 271361430 678303575 361757447 797490672 111635892 449561798 25718649 280888497 128273613 430146681 25792212 513538705 708197375 294723990 895892615 665285774 429532151 758270882 81692626 675040911 639669177 93708126 230507820 397457468 31226135 490749094 865971874 857440472 895878404 221918222 466314482 420208116 494823883 220562130 762867833 755228445 456908087 905318298 861925027 358843834 852688729 132733737 610032975 694931508 871633064 874980500 639836635 150479491 361077112 308456018 736954927 4909142 139696572 660520232 89333696 21351793 45129621 422745745 295647267 569958558 637214814 929204237 407743156 349808702 609033217 466280893 731332075 899713173 675707556 881786462 30066778 608026358 356016838 821166715 703574129 939831093 241312720 935188428 672088300 436883052 473313217 823829560 743235522 142687398 164137628 390631773 224276618 311475517 884716348 214772283 893149887 133851183 819503330 897232856 219877845 335373284 743501638 941953136 762811533 878252647 183129449 39093931 149290143 726337208 443324918 8447938 638124946 768004466 295886260 805190819 190942702 460729169 81840762 927112079 809968073 638920970 708145944 390602962 545286605 138565504 545965671 146401179 370969073 189401650 48698919 495573654 681871261 854773508 894730370 143599740 758241826 188235164 285916516 635549658 244582360 480339560 397567142 946985675 99658321 878952970 564408501 279747720 717063840 436294278 818953389 507669469 671372656 980795275 426938939 413700301 540596115 550439611 803483650 569499726 437908405 902145596 489060783 385527007 674100558 999937819 19336627 266968487 581272340 465069783 474320714 46742893 664390727 584929185 209564707 830971674 936075032 762644773 215164281 496339934 72194065 449425630 637825176 771846742 706985097 577070274 488471208 578128510 735634201 331457020 692685758 249615275 692570085 672176522 311241643 93077895 244624001 572663253 80618112 509205467 140079979 878557545 555676683 526989757 737834034 670562480 25373537 26501289 363093268 284530422 538971700 246134568 703092403 177800977 35264682 897140670 899305362 848520460 653251534 736247433 761385242 594411880 370071764 841259414 338723971 284034843 959168195 143645202 507311232 776839690 689297429 779138579 372444150 853013373 74028163 153119324 969493873 718023820 316444641 510883124 800372488 135898256 515472644 6819343 949869487 742839564 90255027 854698235 440371885 454495661 921444664 341351295 484968697 729141458 792887096 347502290 44119139 289570648 636216937 665417132 654067331 187053505 165318202 736801697 651777294 99479882 854009168 665841686 717435201 241564034 561049971 162414948 742925257 406421995 945229501 743342639 964042407 767188510 93663222 846979054 826340897 838354687 128489302 215725344 633146658 101149507 205474398 223376700 802086784 33742365 556392729 59002544 146750575 6219273 660133822 33935639 379519194 617894026 739865891 344100700 799952906 894076691 985165722 215947577 174089173 359725926 432660971 350876869 533956870 530904864 52896398 789634605 951252343 861374427 118268117 380841514 526876591 274424307 502341348 918343776 570722057 481908533 509858376 582315929 30682235 343478675 772513022 185221573 20505171 87797208 871953396 24462866 379977838 367556276 837586146 217031088 663961965 142156753 700830828 935182086 383543191 644028469 594732149 409568412 914224050 399080498 895168212 717107432 221888346 443531423 8883561 706453275 204923222 782123719 373847832 286641579 375276098 594051904 561340076 508713205 623635403 930660001 390623338 459629768 73027917 847793749 45247810 19559273 124423939 652422031 671838324 992705905 111408060 98239757 877051973 617442439 973704027 345005018 941561117 123761591 256072711 196400240 644596251 79550069 536274404 839198006 126127918 883717128 454154426 461000920 905990019 771216390 96287748 184627829 42248281 812780107 217188058 535814855 129101899 961962585 492938562 969773829 165910296 112354966 723655094 922132665 715253535 782697571 337745971 401223603 513466961 943367640 275136382 682886176 95688272 205072115 29274318 84356893 539388753 795265159 44451796 696136824 709275984 293193770 314466349 352054706 854204807 443351843 745208739 513091493 324893461 608946095 800222151 967226155 223821780 268586134 576827076 257862786 814599011 448691967 27048487 229341342 427328605 250304284 510663053 147552387 618954084 589950124 875893459 339580312 745320877 80765693 671383108 764975299 272783856 845932281 409104452 60925102 71338459 355004527 489602236 247215931 578431767 185165991 813759404 593879983 107762492 553150120 612123075 344870455 611887022 759594182 330535222 583429356 907009848 543954634 467170486 100149023 236709650 713695081 178210464 779521412 254951893 115619622 890179291 905145948 244059579 289820578 311103090 918376190 242241334 609319440 883499726 929433617 147172741 492067962 891283853 124289124 522262248 203832065 804550607 485067261 806362816 867433308 323361147 143223947 651310906 634957156 782539665 529254950 704882324 222731747 926833245 762120369 924883570 55399450 1198914 305196087 672555521 26932458 77814853 494976508 78492042 826122093 603424336 504840408 135963853 47581879 911272793 960078185 463016125 695119371 634183024 333486703 915306862 368322770 319385427 68113313 163034773 501902615 450458212 787956725 228816099 384826274 233875102 683116798 657413367 725527662 878765716 490709036 19229806 276030012 10260379 887204066 878646748 352298321 999612572 765700022 839628988 990291305 975145737 326813912 424912734 372526847 630894791 313304053 235671315 844160660 36610623 471741204 499692578 327991165 919359648 352962414 990531768 534284629 92424895 316256590 587389810 60174871 784771666 816299843 522758615 353867213 321416357 396974537 975998626 843434915 890806578 918478336 221969883 468084876 393981463 549846767 721250905 35294673 554254276 228647573 675175616 684537303 520214227 794582630 343740327 92183481 41938869 711921489 930334263 446947431 343828306 57306521 531450715 330885651 25836046 42064576 977285284 51149990 990037017 574591119 206652449 227876264 787495247 568187292 641395594 42178071 926461272 256205725 586800814 882571765 733908332 173075631 824176522 848284388 483231324 334096368 746470722 170028743 389324588 366777634 749636290 410273586 771235014 709123094 955920587 376565256 528522989 140674384 88169067 157836429 83399358 547549702 485440354 283309444 876550913 887537166 544173480 478697665 394771619 433323448 485683352 381592904 85564656 352831983 378723561 437488297 566832677 211459634 727370555 280399840 628828271 426851910 967839813 785724600 355590729 639468951 420035518 406349174 201608141 445663133 516023748 583878628 489094607 493357137 401699828 646341188 974534071 857633855 259294504 853084229 158288958 426554720 506689790 289056540 804267527 310901111 140037966 199741175 372738687 516530049 977146803 161908112 350646304 784797953 974346488 617028509 114580788 761835531 296398930 346521915 86782260 596232986 929132028 859607392 986539210 69265192 789956918 756375933 321674870 6674724 284049803 763201407 866878066 800335858 756905578 166238733 309715621 611822187 895855533 143418349 245073664 403289580 238212595 878425188 944463749 783743460 394545595 528569672 92644397 355517479 186318340 305980171 740934353 221329286 962228265 107786823 952700627 98541888 541849861 574649692 36585293 786195978 878635923 768789047 409159285 330920315 128130444 601855018 806384078 615988784 186735313 275211470 166757660 219545361 494145083 405190184 714994022 628071302 522220313 342539141 97237110 976501685 519189534 718908031 487732720 701874507 166115890 713074234 724965923 310381684 612748518 309772126 490711524 403659017 468133349 400995013 699084076 549749078 554536052 684721533 196368568 233840068 33149603 603358953 27698690 420935997 986091192 429798604 248468083 945988379 992600231 945553424 236024862 179308950 961977881 110360774 102872299 85528996 941302454 777896741 677143644 486316911 364243167 154052590 96954079 163257737 733637416 555227550 896444304 870679285 696375465 305531497 75255235 120860551 998059034 867273762 292552384 37118782 176080882 520277316 894104323 268715192 88136650 402316511 728748251 521644236 702989265 307116499 952620515 323812930 230997626 947544367 757013281 957046536 489093751 196433947 438735041 994253434 801455166 270039124 574582723 946075261 791538044 617223852 529680563 366534154 103224105 491543951 829015777 203936360 394956292 859555695 746414610 125579975 814102758 878051748 699566583 73955930 885778040 246200679 222676504 382289728 272699164 446864328 229881017 336130639 399082015 123709107 314322835 772049350 17865911 80103879 690684995 982591058 743577254 438139877 228899345 263523818 342319625 688149613 611306595 190007349 296674576 248259042 84392078 735523762 291497485 268961223 933286540 501767521 11846026 512706627 888903608 112300997 410785806 111335941 43731264 683480935 542201905 658318932 202680170 401656444 46445384 149279006 892230793 729909633 933036799 894120418 682490722 258424791 313510736 577227501 902419511 228550743 475637163 298675576 313995106 564644650 326779934 585326792 98480999 699095128 720306400 189812651 509240756 943812841 489270537 442056149 49129838 734366879 125376197 51298574 849117663 179770211 292734748 282182937 508568751 334628114 449386135 140484330 271988673 981817133 303060866 135381455 779076306 42396214 316743632 432378830 808791968 652555488 315022400 614482440 887677269 838429732 877687335 404986126 523645290 536493779 893503115 259454390 671705724 425868506 432128162 905024014 604088725 132943045 882565712 728392406 790260025 214566859 397837335 291220542 168113453 346640247 559631098 773652578 837195621 60177161 796642948 786581481 685201700 319211410 687954747 819100235 590051589 33030301 778068020 627879506 771142620 536267402 127139200 397890985 222433464 317108147 940862947 328263786 198453314 541912699 941553648 164083064 840882096 299646520 561526914 726270616 515539680 941709691 355569803 620466584 526321049 808294120 467233415 580679983 939426160 770803434 71287345 728860561 722640688 401282369 875363364 338035346 837117993 803147666 751199033 331931143 660066029 997916085 443140895 964908689 462063402 38564735 125764121 122833687 174527704 307577445 993365424 856361331 660609941 31990242 410931110 941045562 791302098 386112136 907159494 842169537 377649820 489325817 837449885 690282263 283284565 107942590 740126058 356957412 897548834 558065514 467676651 725613054 975755488 966927792 1834791 428635450 623830732 159170312 259767080 615853914 683780887 199254703 369542398 87489392 708588695 355983814 95962833 615184438 90028743 50955705 770670523 200944948 548582222 758508980 958943145 810194998 785738579 834600982 804573438 96386013 656128981 198932060 916966401 450686365 584923442 228470198 345734288 649354887 790395074 676414269 561824306 41877300 752089825 464262246 106996379 853794959 351163642 335985992 942846417 194268240 606883654 60604918 451714485 194632262 732261209 338611186 317426387 239620987 84941567 179407700 790233355 913633755 784369690 715775961 919442650 927216958 446131728 436755391 593192093 748715581 891372938 837025481 801998859 831312843 849706836 64372302 57888209 986545756 170444490 531804929 734883268 204757020 272494993 974090507 891255974 921413651 175057326 523401713 83239650 49492252 564972162 111222742 841792417 547194620 565007126 751738755 829707838 487564177 774772794 691685973 758214809 515438697 511087276 601494846 827512154 564759820 323596115 311983992 499778003 827073014 179729097 183709418 438725153 117604661 839635439 193694254 268104870 705946693 416266897 578013408 476719930 927582717 801485739 235046460 374087551 452745404 628259937 205644457 236428662 32832433 497823720 461968378 696337923 68035069 294548105 226682375 994347056 906989311 53693030 466757160 714134599 59367037 103160910 661025100 839584880 92414278 999540804 335205382 535925855 851626512 670975678 766667937 261437987 831028479 823107375 711420422 302168798 645453728 30680876 456517445 257337164 275489448 464924494 523583951 494031977 954117804 210288698 56829429 299202961 300952188 143076789 766748420 152800933 538354964 744970925 412388017 859645491 939338544 704553299 282150074 879045461 474258817 299091297 968775024 158673287 873831564 423317923 627057038 854412847 588847225 332561848 580173738 381013551 603039617 675015971 792400095 288889889 93147312 211504680 921270917 697309032 290910437 67877316 365832171 31646321 523269413 91835108 556338823 582079713 42177259 156946904 642200217 68782503 845029836 428641167 790695502 191595443 475030792 313952754 961189160 925110819 738633532 404844718 690553435 567072167 476661477 482593143 546055870 468909955 684182431 686062023 10128137 670081737 941859739 556388653 527032905 585986597 13187203 567266891 861140512 712769489 639728379 214066238 328263363 723180092 12081925 140234545 347874574 228546956 370580313 304598328 554204291 757026991 171603640 613874738 164062096 670016922 930933748 270265001 760122157 263007841 648244190 238188947 841459481 115163260 481269844 40329473 630342837 121173923 434873531 407802726 918003074 441306280 998791737 576161858 627119199 172486360 81244801 746180551 618371654 58771088 334732506 733446611 689255338 592895171 927759291 355824782 142744739 127697972 690847189 613310066 573637689 207697288 945974803 650418610 793710967 969740093 467228256 214936259 972809932 150640692 834861605 189558261 692169593 327965232 261303859 845657859 695971775 930098886 208860997 821623206 312073187 759566512 226831665 532199649 647305027 711746359 727174153 365211841 592636520 201941332 153834475 701991394 475163938 945084620 851776899 934662136 902435112 984620471 598989667 332124455 163607005 4210306 169413621 476932091 144380909 280204618 368209994 764112460 423665375 631834230 321141700 752889174 375903954 552270217 636879520 866101868 560669394 860149756 308626605 984378950 473044839 906312512 485697568 843119553 90210305 316335631 565667797 502610517 348478761 443550830 4029871 815256003 161406796 217123909 61999421 970771316 302853846 162107843 158912152 204294980 137559859 451733489 141414405 611050008 536310939 374128474 528350827 205540845 640747863 420620729 766581925 774157969 844062189 743593879 397099057 311880434 282153086 79800860 425186607 323676440 761893808 726984 954172399 89549491 837017711 77125350 811644533 782200329 96160504 799437475 966817535 108379068 915143988 792029669 478600750 466826616 4596219 676090044 67203292 843130728 730576464 955840100 921300972 532229537 888835735 716338919 849714161 791795517 311877424 745325752 286157389 737154104 86523971 5483763 858326332 41439577 157067245 852297735 473781176 75567661 931616050 991823839 156147726 282687743 985021059 459768950 698427773 251465729 522386231 409118620 406140910 979510245 82091023 124018920 716917792 345536088 937536751 287358979 744491959 714940819 550142431 135322947 40823974 411469203 638024703 855274935 805516094 577582996 960162625 229254656 721748718 443446429 845197257 883797954 579063553 637876805 955028841 84302717 571445662 737442112 863384982 333410683 739329007 171984803 175764162 573249494 438274413 949221630 801073160 331856820 106225253 3668763 221758026 70569017 972103190 144624113 661259087 463780170 893087801 898173927 714287 383071320 991368276 865885884 591137280 89104803 559109385 562343137 882295357 47457995 269559266 365272246 974253665 650099691 776840147 548075259 729381705 832739461 643572772 140365694 835045813 195363782 816898759 721432049 302390006 329134836 979121129 525268325 734409103 194985170 307615995 232869619 525523518 935542315 847868584 209750773 942154816 680406919 933127408 152521563 672941236 541403849 441415646 556127314 407302282 410021309 989604346 234771955 639273828 194335732 570376819 866618765 357068700 978348273 657749994 107315757 287282114 342982354 417106174 952592780 198370277 658682791 500957685 337998707 738533008 912633341 663785759 420636148 143269909 843874104 501605960 591498258 514865534 751148063 395819148 510100053 282184482 73690968 935013286 350661416 527893534 161341162 943539225 888558469 252269355 543614613 902935228 188437671 884467324 618368922 488450050 645985272 271410161 401772809 462747971 849464067 754309631 856988533 420289781 490921335 116445955 421691868 901530308 784585223 293729499 735296625 345273674 685864472 579459119 762487706 453719999 115371625 510769060 98434273 861274809 669064449 324521896 545423292 244006166 995452402 154960194 586246256 669851358 253347184 341125696 461088761 150034305 635461033 130973797 739239697 476631927 552078297 661287684 939241595 762075384 613180640 572315525 557014085 477371361 499568070 803553440 94038806 541930902 464836349 505687050 740015721 606742424 200894723 63697239 498674240 212360714 421765018 235317954 590557005 354738079 353140964 365721096 143748429 595932031 986929835 651875774 349312797 883430970 934321975 733356412 855236392 649679902 637409119 556442806 648520108 897838647 997069714 516894475 36841669 718215076 187284829 198340204 174085371 895766581 941169811 500221724 103409597 676640539 920343717 851618525 96828946 108641410 538338299 462901041 337024976 746331130 148278905 898805291 466745638 803698 386292460 606957007 101982170 700096777 301414888 843983759 791638982 255531672 139818962 224083257 682733715 102968514 102018344 337182086 841361282 437028156 75694990 852408184 266011650 698345357 882675224 547111902 391110143 289445770 678284780 570419931 790953579 319460701 470083919 243715062 476412177 490881904 306027202 816490051 81542904 462157812 938228577 427418323 224960553 85263401 526987585 493266343 634512222 532799462 823445470 538356189 4958028 899290925 928763030 554675870 556438593 267149928 287482434 604982154 148924975 297946843 75838557 499064140 372542166 893295101 857601878 224534902 725338114 566747255 471992742 111976803 150578744 437727164 761943414 813192790 222283205 57349834 768246968 664249318 269565382 451378502 687055880 971418071 443436035 757458228 461189694 414537410 158835808 936970809 746774848 804576264 213046893 260613393 747344601 905060926 107263028 808487171 3179019 996519956 420333740 529087609 181584816 297258249 674182986 775429597 653424744 142731830 735001585 219809184 958209756 525240988 672102805 68885829 884136454 903183757 812929213 616101434 137622731 887569617 891389822 120285180 845968157 75257792 281284063 914514175 960153895 11152411 68273054 139923320 954975263 36390220 159871145 375672486 367172640 753381432 987958915 139354236 364872493 681265212 75107786 1861492 613175446 821885675 565764500 591045675 414301842 464099160 292897618 861310788 610963979 460975052 58422854 526169288 547963155 530541016 778943386 951239179 379483552 919921512 297169597 939889256 980874573 146059900 652229829 697761651 118921972 622149060 719775853 33767302 109638228 204209086 983453457 451522138 559671464 590733920 208637402 237600854 76121498 25009387 834092564 439079711 943896653 679419871 157812653 807950644 311741209 295462167 812921597 554716660 508161217 252909981 929246146 638983770 462756450 117496406 654945342 164348387 791200898 562328879 136854625 933343834 462300879 533843987 693656899 488576616 316780603 598477686 207579980 793300389 785622604 431729566 14922649 822617050 383257334 108762028 263912218 911180616 919958692 794940442 353545257 611010301 683212003 440463370 968676619 774301957 273902960 714385625 247025578 576491774 56941574 149455198 482098102 288117693 4978824 701295701 410945378 334825592 978293719 649454440 239548166 468104957 640383599 378967958 613129848 530739927 167752983 977812252 467539398 419624184 129121525 9054272 203122 827954590 244872986 220349234 671579443 827455653 822487681 229946444 782914792 549592859 844240701 580454401 860312424 230637438 961089837 817331599 722009313 916638583 671898704 193054779 201832698 582977113 969915523 326158263 735219034 206534355 247348690 30469357 251375054 777152509 336853338 694801049 730451891 236573328 856745898 555841528 747376157 558298813 478491862 636617791 816661725 543246757 521086720 944355822 420213680 808412330 50768869 262387252 571747332 188241622 235592818 452939709 787660496 967571551 924649646 483600057 602353297 345229218 901882386 240229427 716545125 515459854 576841520 727927384 664710093 767292134 757808915 649417692 44366529 869437048 691485265 744801456 978284663 860045915 836651882 967094622 642925424 697260259 742044905 666722749 796414312 544713528 431517508 665810263 349138225 914560678 830607611 211332341 88241274 866060682 776028518 22930173 696115762 247557131 415671683 39876435 963359370 859087364 212687010 977112303 461411363 3412079 416706933 294918812 998574806 203847897 157623043 976499471 924026310 677643927 535893555 903062918 130673711 87758198 507011055 321352234 665202268 19691689 390467250 468006880 971861198 481975938 494205432 236018750 66552738 69333666 497103965 954039036 146145904 926354211 536276716 493541020 606881329 893592922 279374036 394972489 943300841 915067138 760873542 194680805 262708665 191107785 678352645 318064161 439957319 542011686 125324155 783234323 487293025 663285015 926144945 780384866 578152595 146199068 556627546 185497835 431305643 672124725 640092601 934899134 142841775 47761691 72901666 448554871 886930960 259911443 847815694 947189794 286467996 780217289 560821282 91058090 437800797 108739903 767793361 230858807 101086726 133917811 31745063 744384286 18436433 802720547 244190533 733112532 496452654 183665742 603810532 252851889 371071418 451881686 359758882 3290642 98611623 854312314 770975211 347102741 945894613 214972395 704830763 162142450 69123935 417436083 80767800 187137383 455779671 407509755 870783946 728796336 900903319 757505475 538732245 3860852 180313811 675255988 358814887 93718095 217806606 506434383 220294658 21351112 683921526 105389665 699115310 584970598 523306647 604934213 920566577 355561962 874683331 206894159 857757311 46396139 996312276 460358085 664773863 241597103 871114592 832919277 420381669 264351107 326786063 240546645 817546002 42483273 599405897 880719470 813646435 657071516 255855309 113915371 31342811 286341783 701558016 214524607 246160483 400364203 583086201 713499855 586289659 283989553 209302097 441476653 366725617 83294087 599331470 675238565 352542877 787984574 991373929 196986205 358649684 170311673 894663722 371990705 809002096 510809277 851561255 991835545 663322702 472078101 707464037 585881682 289126291 875978035 312616197 246165440 26035030 667186404 337686292 694537069 176406003 288049632 771234908 450669895 162665156 704698828 619841940 359123560 145629254 897030254 38807257 320852803 553545363 258424197 828940192 701605411 313490134 159042936 197991695 552458032 176125583 437587527 885622984 1698639 550289282 481090186 596706219 843672170 886011871 464046516 210128007 126291390 535119042 862950100 735367778 86221318 72584193 476841330 462289508 711445379 106337103 88920260 243799720 70824946 315195740 752581458 86964355 766268956 977356950 761711932 214474232 613352243 79203188 767134225 869914136 203925796 228506489 742956667 253891065 350954185 247990648 853437207 424288760 744244758 350172805 109308156 595886941 333166706 495001466 901443594 595723217 11533276 531867704 880761269 482198221 899850876 638847530 371845695 440356300 153167879 453278477 756716549 950115567 722304643 961280917 686820790 364571279 157097513 885042686 844407602 175003096 857127182 476299189 167518947 877139329 802237261 496780917 665076936 566124525 920401419 269426242 11377832 897418466 287943613 835867853 491369790 443910424 115338970 635257410 43572771 109199368 543373187 771065876 242904809 571122444 769567388 393535544 19209318 149018499 980517533 845771835 987786094 403998564 930902334 510772154 247631877 337665993 833085816 948408645 706289321 915283965 210528688 109869868 520618091 37827698 780580638 341025928 676270506 967076450 599154534 296228839 892599985 253630074 58091173 826015070 507066456 43788936 740738872 82715757 874192688 494653909 447340384 893948338 26815752 643144272 140388288 704807245 125569576 589427747 620495353 883022599 856465253 218610358 35819070 844326682 659997691 374844272 957253299 1947842 965644356 939818882 533158632 319724665 347035600 961147773 29392967 789470442 534861921 338949835 441313424 229191968 200136373 897357690 234507333 196076940 253475265 372439045 579027935 79313593 817730391 984053331 942064829 264541777 586632978 107665502 284238669 577685428 529066488 715923032 846886489 658446652 966595852 174173273 209884947 706724476 388379472 67863434 674841177 481619174 176683501 971470898 62483002 701954318 238360872 197169146 9395857 761731807 668117378 479410635 886856248 908195067 15338856 49229681 178561791 715377008 89170989 348162241 895337546 932321355 321245493 262578865 820350519 255825267 12910388 707505591 397846974 848432510 89643513 56342294 740499421 445160834 845638542 963244016 354337624 17623628 97556499 352889857 595871646 841194332 543725225 894662848 260262133 546079165 694179357 322736918 20516385 447334058 900599448 323076549 397642626 553348201 483150420 545081686 930628027 720787360 787164228 812469537 405394491 317157220 128744947 575522898 475785987 508132233 97329946 672736172 34575609 589478364 97151961 652717889 391740178 216723471 804787673 821535652 792621023 906316916 865769643 901743734 958899437 840305616 234650265 465145750 213784859 832576482 580457292 292327125 761172162 762483256 878979327 844247032 712453042 593315533 349174051 223652188 809306557 435268323 892323366 570715155 995132664 753511503 892755247 895972664 330345362 904608909 257701029 834918189 115711328 845721415 353050639 795087383 995326294 277716790 528985461 894752660 134155358 580014295 898537534 463806538 337541757 627033759 578560987 836026598 549114591 197039621 570332926 11361845 620633543 307001676 128480585 853091781 177402726 654397736 164783309 858696226 713911876 367862631 481567984 826689320 155874306 254135421 220174450 234435808 807829749 372612993 870789125 514680538 574141038 335859272 777991036 402315151 625984061 543883601 273560737 973161168 149259154 747574681 863860948 982156581 625712619 488856172 400615971 245976509 767063690 691128291 233964770 816491126 481503930 996802725 823969618 508775944 704018850 540019451 881022250 660291131 549488228 614044990 75608930 662348675 137419836 569060913 113077700 975179353 617341481 117849553 137514124 790757004 53637083 693296194 300316657 610091787 318546696 122112578 978586016 958247797 422325331 417606865 367857926 976057358 32409746 416061320 325497315 156992554 261043148 591108651 601447025 335667052 199321260 14423535 361299632 81976373 217611415 521138725 751871378 161348287 49612961 752616632 84969347 586018249 645636469 671912753 638115106 490212015 66984092 933195837 237442023 863828909 164085781 183161121 184198075 344726161 472986000 825345485 56641932 950013319 183394284 753725720 444564674 209063637 796393706 576879544 133317947 835287194 249382069 32710015 931764249 825422474 320017781 875066625 969419395 691605245 541262745 300344448 578180985 332003771 112186943 484641965 366420828 110296019 320227253 976147933 262896206 409547124 312960320 98159084 258810707 899045282 878453514 550179181 882109582 104379072 197574918 848771193 47690927 16423706 140097728 503936058 39373079 783753790 28426178 389741556 901400467 352033396 572094966 928352748 878341292 759657066 883290482 642060537 103026006 949721711 340855448 937365867 854339465 676670392 511359237 861879328 834447762 26340080 89241924 454299712 605066645 124945983 200190957 115121223 229111256 132309278 327554702 475827478 765736693 256215741 509496192 810031684 525893930 862823859 93606712 253403996 861083860 90031930 681134440 6979721 504377099 920279775 416268640 997772781 821187274 671199074 798137312 947287902 978470087 654683867 184976944 25979145 157657734 361550295 628843989 150740157 6898052 247589579 531789488 933442692 499811776 426197811 19751263 315375798 638201299 260947 407716700 359826092 390751929 38132197 347047190 805939213 416075102 899763416 945129727 321576555 913325475 869112343 776529829 976361390 904840672 717535520 535231663 598726003 38456480 877289288 367327440 439060302 354428694 70377598 566999367 641515427 276864856 864710787 649559366 397687685 42838557 254669767 920534353 227390779 496800289 589250720 397128548 150153686 350771467 850280083 663422759 16203507 969527258 997636512 517243691 105221241 933731045 452992264 282749068 207145096 895315878 912328952 275442678 45214636 343964846 738595136 797336988 993616119 441014297 405111695 421001338 458704032 396851072 25225306 173855239 441288348 613981504 707598860 726640886 868469066 945724144 918105595 576496842 709864172 286316219 67289460 318069627 908805950 276944743 229038950 218686711 782533288 746597191 763728962 86649446 974530637 671409837 374534405 959311453 164807658 538852127 307989462 940712620 59261935 374715338 905304036 293090582 518880091 540679748 734074149 711319358 135638685 100611500 338911206 725189982 181541299 212687165 184782651 211464462 777377399 976195677 567266718 153192719 788279827 467275663 215267161 961437780 804766507 218496373 793927816 491786089 79726469 820166053 750675329 359437945 296670342 238330160 56261940 125438859 259705040 959169300 731685981 843448719 306474732 523438170 146619472 874270571 768166834 241559533 666537744 956936139 528618600 368900689 658027928 676802044 52509584 12105633 540080736 782436390 355379558 267693016 399249751 372100768 559188852 279581745 716046443 155906013 490556703 649401489 608846095 954334779 436961859 634704433 70468708 869297071 350957675 729821111 945709826 770418503 82635709 324061879 224872267 875022155 176309337 40684451 533478137 63481517 844605488 145737929 314065470 66567949 421299807 659349669 97419936 699034238 132014681 579976259 660274680 408700178 903586568 759037856 498146582 264671282 759993682 83425221 564342034 464390520 877008014 816674568 515305551 396421819 20941844 324332172 783331555 539822158 400760438 631331656 455744033 31758380 520529181 440569288 741763870 170524092 360947335 502855695 662907055 391734411 387010514 340587955 871320066 284315062 184211667 496190309 485104887 484742102 52263500 53225712 578879395 627402858 86254755 309982698 212490322 70018668 916172600 682438719 726095548 269980777 621333114 435379171 392884787 773644872 794782374 164588132 843745574 431626147 496411367 988960916 35664390 868351357 125919954 762332472 923738803 552639085 246683374 9556911 359343824 570364363 994653779 520540778 892914096 968104391 830822424 451733396 63058246 601476655 777439704 837155987 820423128 481296519 902243128 524287341 667852298 999655588 69363833 578654481 102450809 565151606 392059781 911830215 966061749 872338934 224339290 412016911 284324006 853118219 317455684 310641093 386486011 991062418 790939694 929050730 735332869 360026081 250022073 487674869 142338538 390738832 427555647 60082868 754520701 250194117 394834328 10009810 597787812 698201996 483222940 5443105 444404745 996701947 439853804 708525383 167314866 711324855 323176245 393481354 310773354 32001593 564307742 744613903 778093342 475307671 664922901 560793368 643209736 415869620 584463962 981772125 833318869 419931726 431292298 721191786 880652840 906335686 511691637 259378013 695508218 291874508 761429895 199997296 748177447 655156336 693812633 847669249 504496520 971891857 689474251 677840029 913731847 31071067 585634936 420764254 155346438 462902715 895356081 190056475 218108006 581797748 732432749 581068509 779508021 445970639 813459586 592208680 147695446 940619115 698786766 827136541 178344628 55537993 824449318 529705944 702147838 614222107 547182422 146985395 51661161 506587172 831013282 251921258 824928313 778134190 925552774 258499318 922038611 401783487 782920484 497867302 41272169 179613934 765116003 382161727 1207535 831014011 755669986 140492146 439389128 546246570 78282795 641613958 126337709 436334856 743052532 705239359 806719659 534051233 336152939 417270735 566986721 39311753 550891063 549610837 861239600 920821504 509070500 420647251 296119310 422324212 822665004 362851473 452573497 963401183 146363831 800108371 186711804 110012920 681434775 95402665 798333065 608415799 601372826 426733365 49757710 593101392 71614520 984597901 628550337 451618411 851975574 498785541 498366990 842741143 848175181 285894371 283509184 977749189 83323358 295653711 605273020 611740117 862147795 47058366 97285776 230962149 114048983 151050904 378333587 601553146 916154486 246781413 333711973 937943763 968391930 724003723 561592048 707366920 986340396 661990218 629312074 396131190 617377703 832235001 318468053 291097478 184231719 837583043 251640025 295496357 661474621 425733678 576033958 822067022 813348991 283303652 455588858 631964570 801669516 489941505 412497582 301090228 146980782 704240049 962934969 595409065 258520216 460465919 856864675 144400934 301177327 426159162 603627246 57028748 12756838 434869398 782222102 956870768 257750315 884596759 4364294 339630277 574623174 993969865 875485306 433055910 32826637 562358346 412319695 416211125 879814919 403388350 478692726 713632581 591154498 311645322 841279140 96769688 183558474 25345005 530287300 402621934 812779378 530081235 463144853 594619279 261988207 696933306 786626481 377199468 950854608 638529389 306770811 931381067 917343696 684279799 333869803 216270481 643122449 830180361 681306885 436556836 80775805 621233358 518797909 174642619 672254950 395320451 287653316 905253792 640389214 931000368 6924521 532910788 775474200 223830761 824497626 835801564 100217924 809710775 817617364 727001935 720426824 22233530 829267072 815702862 438841668 772628818 321456394 508797907 842997016 490894988 544764563 606120883 829373173 612388754 973224565 307086623 813224956 546222441 841790030 208446717 772750072 654864005 133100307 500336533 396394361 250840669 647089764 599864226 635858153 369858536 391419206 728447513 970024693 718167025 115589159 224145994 734043885 476709564 954234780 431836480 412901940 15599973 877081366 193477164 7518356 669118942 607711819 461022835 181676494 332485561 111410971 255330589 490087906 653721447 551460397 508993396 904034713 464968081 597633648 904621697 309903468 278967609 138349438 258444641 813397113 312519858 493794777 325168803 515933853 506224390 987172380 39278604 104536468 251261358 396782125 315904896 543602416 584454298 835932678 450990633 818771183 326736788 605169188 638251644 572207011 735834516 783779398 829480968 859522406 290890086 138805114 36404603 123270338 230154332 130690381 226142004 737106841 885268209 514432758 775426964 494026699 881434650 458406649 583269292 345570275 353866469 285840344 836726833 90295168 635354263 114142839 157774271 971854156 166028478 113075555 101424618 534812633 137817729 196130783 875634600 424624754 842528084 312671131 801231882 893417255 953937150 601391986 863253393 10652215 274862276 751795119 826534561 182171329 738365693 31676389 71398878 228112263 142648742 767663628 518074924 995867191 455978504 389821905 663087607 115535193 257808 249330174 168253986 182210369 661949037 591399549 266516790 319303550 946058844 942681597 729830489 332697259 862461506 709844110 152467345 478439012 401711352 620287697 295116976 759674455 250309130 943012416 919249486 110682501 381687136 826054330 6185102 837853244 803242398 189328789 250329154 995970807 93506579 732898663 459191924 922519961 422465142 11559196 228325433 136077234 776794956 412873244 160521172 67231547 367966001 538506109 644134136 506218149 253151296 312750040 591934821 403571548 647005077 484318683 978447713 306043127 952048996 459778681 725324198 401362248 275750847 446607737 175552031 640922221 939439888 309336356 746702058 809157502 557132126 618747817 576298304 691386296 88081229 218220270 396046520 392066899 748566651 494745214 100604497 248317266 721700667 717574805 955908564 366104001 48206036 426352623 315948882 51950800 529665247 83221481 105153633 665802481 225061030 791307254 364214566 308815328 381808970 91075564 914313357 886700002 380119495 250620090 918503038 285747818 901733472 220253713 428509432 283454814 664988399 69888902 877952007 745499871 518758590 897476998 250876631 576345334 364232337 338840797 461300030 564040965 279435 118152842 128311674 798239636 101520391 101318913 467255028 472661830 651399571 392053438 131745612 356304727 863123446 244253353 795833860 459296370 551647546 140571948 8315459 462813604 443511726 980457605 639089527 339508397 974566916 374962985 999050215 964854613 16368086 504130655 772361177 788783309 107093933 750476306 997002337 970543146 835271490 991289835 361975487 522049607 472405994 380300424 885520296 529586947 103041570 827367342 500877612 158467470 232722792 536871360 128419406 209675247 155895342 810655320 864323359 658117473 589633241 774423999 862765823 246207241 889815794 579324676 463979274 551165043 119973525 3973044 77367004 577056151 320734282 837908070 742820303 221822084 800015332 219003696 928559877 268859100 870562147 970797993 103392649 731912380 231355588 26786753 667685662 261462949 431882654 872707396 89474526 110386 479247885 930767144 987996035 903734945 669570125 513793379 481825671 776602499 277861607 9367937 911625365 495791740 959253541 974940134 652193862 882845883 478135144 51773868 900172127 90970974 269963088 349401933 82167254 936986 179729256 260172137 341480294 306264758 258400491 400573821 249087655 716274607 592394382 515415129 383862888 289518315 643455402 996031661 504333077 79003628 948820903 448069023 846542487 983955860 201030854 370859468 890830284 220809365 767395395 220714503 324071886 258593395 258241051 224707704 749341508 4457881 965766850 91544087 915026770 191672408 540611814 312142977 866200213 97764994 538820538 468595909 372321011 351317139 163806525 117951426 821137323 515034322 131513827 255208641 588126566 599544053 239011946 886936357 713774172 15249753 108235603 302577598 448282914 872318320 756560030 332961109 117254167 764701729 504573827 786975319 28956394 472697544 889835048 270074286 87762229 552384217 198109675 424433404 998808374 200736496 839241834 90225795 268338885 691043868 653818478 526772752 910483133 318792168 263767673 826166552 443847494 416895722 592355486 616333689 320289058 24199588 764983927 181048010 19633677 964863599 662552529 772423000 477549159 328789341 812292012 418773738 320079114 18742930 507800145 912365299 140459387 205059105 622514774 621143050 667087299 848741682 315228994 20788771 964032758 633012288 449785321 342287866 131958093 646835095 360459831 62643324 943007947 870502855 32786798 737749433 659278076 11509405 407687386 456135404 595698771 968618067 72256677 52066167 226828440 182156887 760253990 170359477 536660813 50955272 150827425 605450780 407654305 805325254 172693946 658806482 744066631 435522536 688611962 674149490 30077515 660929611 667622898 322945035 363870873 395527918 885295264 634430779 757655208 517751596 951379199 841759371 693915870 261213233 175612619 188954705 131182906 791616508 846609524 122266086 570320564 15486196 362713217 290129814 69243077 60559686 929976854 914667120 859864414 357827220 356681744 257623138 134736594 582193236 382842817 612719799 455327302 413793553 516035807 82387913 412431529 215437217 259932935 396402221 958336285 935501450 532254662 249036660 295981884 808659937 968151919 978858994 316506360 831453539 780709098 779284601 242124825 329541767 631792682 756939944 185561879 288304330 798608088 227719648 654794158 105209345 474896446 637222422 190730175 771440997 544289101 771050081 408932913 818393220 911623596 638836377 496870438 827071394 983840966 293135011 903997642 599757848 311060745 215663158 131791303 455571475 985227237 835519530 648033825 583012887 700840139 528039400 311535240 190932265 68399655 777024325 245811498 738785786 742597133 344344399 235275274 339433548 28097407 829385344 804349983 483504727 320901044 538327149 758512073 779567446 801289386 547970413 294500088 616446129 462520434 722830235 767257916 735476607 480690413 138791773 352857263 945539665 977404536 50805660 690331804 541504397 962620036 841996155 228154375 431258695 756613280 967391903 786433943 788386033 867925961 458122209 200152871 705093712 136083641 122825662 76639768 163268911 897413517 395635867 487079095 760905657 464539877 321350152 53694133 425665668 701594231 761530172 616935623 322133613 109405853 989249317 915457320 466228319 933755433 848813307 984568261 475875642 439571364 366575932 531631021 394997693 815266424 124469103 669968789 168860561 7663341 8394484 884967371 406124310 173487509 887726321 528741018 529160983 146917951 205609031 457499023 56668632 488162770 33521419 189017996 603692640 946719408 363647081 996313748 175649910 567481672 489509844 91012175 765442203 808740212 348300368 417204663 857658611 1785853 37129422 924267834 378505359 72747807 511405534 171878672 71982589 590388818 957346236 716825145 677946689 381296756 62556656 324148588 64472156 30614143 984175679 148160770 294664888 588705740 17492828 97542751 469926748 763398903 221728099 704518168 404892669 634931436 360948006 767849036 458622040 149122446 549763144 305676375 764411904 873195072 222611751 961190138 733415189 176645183 44644352 747618011 315924482 403658822 638191823 830279226 948652801 839702668 935103616 816451160 726925458 355018206 640829936 719961269 966023644 232857172 706599167 775289534 347955886 529793440 362356111 289097622 520056533 489337090 542211718 529587187 871940017 865216456 352941240 988118649 132159301 205997643 641615085 786927828 408863098 189795591 99926393 400004073 59750235 862151869 968840179 196084545 156855759 489045614 487328973 966778813 727128947 406098154 318854200 117090660 499831130 855099441 569025335 36972856 633815728 167534170 951366640 343217690 345594891 818385448 39430002 625581287 488983283 202217849 595617108 248332549 439836350 448178043 592362013 170866276 57053337 578467515 713618692 634699980 783612402 790338075 500753805 727678897 110360130 694995349 273378168 210186669 50118690 493306758 89111969 711942971 369345844 634590937 718683876 300375719 226664182 831603602 432114594 358048229 933000284 940413580 121890828 732970377 657546601 995522137 24474433 82419445 826654139 359209563 106390607 134627110 391566647 489044373 568618393 811353961 386736451 617827292 800439686 229442273 305901918 794327821 389958551 196702356 326989963 376406550 661099347 821469657 274896743 375696127 880391934 687574755 886132227 87030907 99952271 874832493 382462888 670749035 264169399 500460754 347734597 836500868 623421953 184967990 521269945 61669950 267989700 908455470 668124732 936424419 642455512 425123882 385385432 843136832 845202866 524863879 705149092 519712265 290816365 363798391 435091416 685334626 350564004 228794406 738035192 664542628 900644031 515005874 491381175 529539910 33135251 297989847 327431982 297858338 958887068 652663209 818353143 222873021 82137421 77332118 174228767 139617301 312584204 454874959 734350325 588705450 909474777 486083266 267003566 995761863 804789959 703420519 516820669 65082597 29273146 563219249 91299159 894042364 760915407 831255763 756181544 65952485 714206916 824567670 327688609 35445737 277507391 986217745 325436236 259354235 379170315 702146001 218909712 250391029 147976381 519915402 315006500 606611061 201823203 244039266 723588837 360039708 831066533 402234079 242265748 613359794 470401555 765209859 524998699 273459383 606084377 529475917 98693304 34779119 942610351 329809934 212778603 954208058 28823782 396119877 399228852 448603778 432184484 460645208 463026722 951753411 153100646 127833156 18657424 956242125 205278869 206464866 54302445 135465907 914326454 770626458 927174823 852113999 923439584 228856303 445000566 797804426 895946702 736167938 188794084 718673049 224976225 732368758 159022835 516463066 508425895 871240597 45540342 635481795 490940585 696815084 473629368 778837533 458686500 634174668 242549020 282415330 418486160 197198013 307675898 517023534 345097719 916557148 746800384 786770543 649126311 518634560 505968615 471726266 482547453 809291181 25779178 166497582 106873187 492213729 743943365 847926530 89084618 133110993 873065887 419810187 559608940 688095937 585833132 438955498 149435220 413102571 970138635 247357258 831802683 863504838 296909027 764199771 947481774 951859670 322949355 155339092 132802698 880629187 95435344 163570476 852795910 519509941 652087121 773722952 697483262 89059551 808992944 778097407 58929295 360222356 29817761 225266404 54296232 631772429 32660533 16371254 994902199 172025085 377367839 602138664 831510541 582335052 140941082 41655909 278920927 133308544 607395559 347580239 90264182 238318393 941136565 513252710 657747741 929874431 119221317 352578385 40750268 820733496 266457106 934528583 49101234 245617794 429491595 52432016 302820222 205870420 336514564 730777724 752076952 987706846 509530929 574878167 330607522 56836818 824586688 70615286 77233926 511270276 857079546 498771358 654944744 214300480 750205011 807413164 626379875 721794421 952238112 689835115 901379289 841147425 99956792 935993121 624223977 767576283 373390523 848408705 717495702 989116473 488575449 785118256 915423929 943476295 917161540 691581223 88636249 551378830 526327097 377694465 812450369 229512685 997189192 375410827 432243125 399303094 578565146 158734694 426554176 588213920 801778037 245584811 335109171 175526154 59896166 859079720 616580043 530418568 228812673 22580193 662532733 763847508 461410281 455166752 346303995 736145684 215863144 16184513 122166897 329581624 593076615 747874578 621539857 820916286 750092506 547208133 793760965 724072500 509889850 894806738 24229736 291479174 376165490 210479622 410524710 481914719 537044464 856097292 898327909 223730957 462721322 305551669 870864078 833736045 614458819 534800771 716197200 286397168 121236116 483235352 534330982 265922965 675163633 564859687 538450026 442973534 856244335 244848781 153498412 976839534 449145042 979256236 816673192 185351136 446726601 372495565 267297147 886072578 620849319 850425734 592281742 400394931 596444101 90447976 820549593 509359624 741561384 451498635 294147138 985772462 339704515 838180668 174917496 31297230 25045300 183290660 887248294 486906051 508858242 391152754 992704035 72707881 937774257 176388732 323072716 467239223 697278498 7911529 677213308 36192784 991165680 768729502 353248646 146608407 832544431 517178031 373358058 694300043 394275260 360660845 156671464 249530601 822403540 310004992 265999358 894339972 310873374 354394825 666599618 521255083 248738169 958544584 340510822 478690636 109750074 102688267 90586392 12932372 274947701 643684031 395537122 353914803 443758460 52338754 359466383 667669197 708507947 787931483 51219135 31400689 813680375 360599815 517175173 800862820 259675422 955989140 411432742 226339754 717976275 922792527 426390420 618728813 798138899 380117029 730150528 649101705 752013472 164632754 552392460 364756598 997571552 133791119 802330924 573656705 337850820 240910566 621809617 418849534 339142244 169448003 124476681 386495658 382706887 793056980 221298763 744549536 674299941 885895132 963382546 703869660 526502749 7900719 884053598 99723694 278173768 552270935 937521117 776201612 600731084 926772913 609107660 211039809 227875176 581420749 175636013 753475678 849359377 694329776 61593712 365115721 397190554 369488982 49455753 268916662 651686779 529488450 803568421 172794144 871702353 304378304 465846862 498812728 545064850 878599782 171483482 899834316 402999114 726777262 180017061 681050794 355179205 774284036 124585438 352451052 282709403 111242402 399853144 105913701 658884266 941329413 759603260 112465676 762900868 49339944 429556740 575830945 982106720 254256519 345721147 297325839 855856617 832657582 717521873 758178341 255028910 434137557 871852122 740338907 808486727 499848513 590527313 105718664 500368421 57365222 844595715 907187248 345682166 984316333 746955714 840144482 478168823 396616182 43385243 156213459 564371553 715550403 496246372 18111317 681073088 657996634 722714314 941336156 227229216 69047417 641900327 213898636 915195019 927635808 314869436 643630078 787319668 207760209 768023848 293937831 597811229 222779943 764809269 203932131 972037072 593489008 26246605 664189047 187685291 876930741 755862145 883897476 667796449 813551124 244664643 414458763 724862932 966411078 181003722 15872669 530533506 768571891 112786632 495192850 330606106 878912171 518006280 600918306 249487104 822887790 961827695 919188403 877026896 989325931 243747354 674943794 553068937 477752500 852590135 878196296 885063677 375611354 782939890 381457248 454585005 507670706 808900452 621439366 490389147 862033924 100124635 794762344 227630845 655128008 954283468 730668469 440785735 798503687 320228810 174461622 765425396 51452509 641538971 447118892 733803960 475717709 206141646 938516527 857585528 449209022 484212992 472284074 824189452 422314942 986213118 947281586 526045135 314352742 650832930 224164216 314092646 651388302 424154875 498121324 526245837 288786262 667311505 487605752 243512750 650738824 463505983 134943852 702822777 698355168 857871898 28448150 887073665 854667932 575051093 664509489 954384753 843539011 263277864 34869869 783649983 468888278 11129655 644570869 139460271 352816857 142499578 213245228 157990549 135325827 940938797 434293798 357529730 969141256 959522095 468056268 195902388 638248046 729650733 879031961 156556290 271868032 315434155 317113114 104371285 939719879 994545453 738594968 404424514 39451918 461302763 779375495 994635664 551425589 905484368 112121538 542031732 982869671 948229595 507279667 641322952 223620178 485019574 150390694 540125520 230364657 311567303 857674750 324867675 298534897 489767814 151364546 967369468 104597784 44163447 3315613 682604930 571177860 46229922 514217305 389745724 199738234 362160650 970448025 608649253 805701912 518706092 461609213 644199830 527113931 928330063 683811047 841483078 923559711 862568982 903333538 297470553 955249171 280982486 582311373 414133201 16619855 471826978 369348456 430749390 747900412 299519966 983466646 580027811 529318606 897084597 914264930 935117518 744834207 278587207 608387397 11594349 746477428 185366491 569337148 644579217 712334914 498744371 651580930 847666342 779528942 764375441 495061728 803680293 112836940 128781865 978505125 933743620 106311896 878246578 874706562 271961964 306051168 552926980 83098607 732241841 34120086 856506661 154196385 924804156 924616773 827470870 554355161 568135288 860399333 183357807 682452026 306357728 725965474 782904481 757958064 136845896 838250426 295653234 882053536 392438929 676472851 737427539 236005813 889567506 22718652 25855050 986014962 114932067 812950158 117403073 124103643 857536708 96926119 158496713 729743486 955561412 788334522 55594298 968380685 391732204 433855773 787354159 351308500 150077771 217381118 772427654 833312492 934257399 436124271 97088218 663344251 962595794 800482496 517127416 375829711 135479095 549388299 2764057 677728911 142080964 797443971 593811192 938147762 215682593 603047798 679273950 304691303 12610750 533039430 575427544 803289467 156890733 632958428 693444755 236014839 592087897 859567856 231372508 369916256 525350746 684923900 778240614 99357061 654100170 407322782 723577714 870013861 940246396 187290950 406486062 102658345 746155983 56442802 151292974 445631905 548834155 625585107 141035663 224668723 129944702 612201776 803689353 319983352 245612234 997051914 260762110 460361617 509380759 66164633 405653359 7466202 95984161 562658102 250882049 785899234 855702603 72242347 205063019 654369259 963175238 857832881 543557640 7570643 488976245 530133895 122357200 917060908 676191884 83801460 792425914 692862206 627209828 98679163 170807190 549014231 483783836 156409225 841004460 51082750 573120782 573364358 536791275 727688888 624826966 49083533 430411328 228854370 740060391 670633205 313968631 520905791 504320044 495301846 111952968 478646105 745151774 55784903 622393406 864511140 279699781 246226029 86462557 270992921 251482149 151865554 586847659 552782451 392536154 984129860 150723795 694985518 514827825 950426104 754791170 781745660 399150694 739507517 679434011 751443163 127963863 303850630 158995540 555665909 451321800 961471977 94364335 871668800 97864173 489239959 193159253 778387705 948127360 354208509 24844114 121770106 640767517 702793322 854733498 449344039 701613927 125899032 534909260 628477709 419896617 992384816 643474419 632744903 745825023 329280702 908007993 168404934 645709612 521293006 16894736 956062560 751655230 177412500 757583455 899238925 373420664 652973946 740624469 900927968 71107583 265811791 922744208 124042020 753106777 543215640 777240669 100741748 876226500 830313074 50285694 388764179 875880760 16130754 882764548 733377028 925550599 483542555 25927647 470085562 494325323 479131566 515439368 345008423 824044697 547954835 438526542 272378543 766814438 262219284 978888341 821020210 415404893 642041855 423988090 477058344 898325379 208717405 374352305 225579700 445130940 242457336 344394432 912521693 781157492 953499556 257971544 354997341 353929622 491191666 812753333 33731494 893871561 229445010 575508186 235517007 260262023 537435771 794466216 770179345 340844390 729953008 667128866 153061527 142902223 254610137 203778868 176616396 570589725 15225265 604922705 266524639 241571633 399212169 614508128 401091331 776619437 128716972 776199089 660508301 731900783 317985134 616384081 11416079 885828808 665070849 257700769 340156934 534859844 591211888 564143504 252079284 362524805 660878400 842277807 943973286 510724994 260168569 669615661 43229471 333702618 984542619 555000028 839453215 307690680 531114215 651217054 44340607 521512327 214134276 309517932 145665197 615678854 640910044 791429479 261301213 634056893 179600005 26157429 67326579 91822665 674703338 932141464 13638981 546613045 143955081 948021534 750220654 130781740 17296143 929125995 451967603 963280796 393178623 66303019 991051009 301733039 647696504 453204275 695556198 575572290 804469116 392390878 245510778 155482515 874112959 627334127 65805508 54850823 589139400 879908670 323179927 223380201 393496836 368433702 540916399 941722230 799611439 139611423 6568461 157240433 303324000 81567107 395574435 570292761 336323205 956238559 985357350 900062568 303807369 68515123 425923638 776335041 532213601 126857035 193507630 19655700 78324020 636444862 653140873 205917110 98900841 821338409 283014926 522452212 670763147 202963837 932907035 540637478 464318427 372367604 861241753 543987187 954206877 217880125 164124997 260158238 666314347 908550282 210107034 389585818 22012347 940190277 326023200 511201233 418125968 363170208 101006316 157658991 415701294 677663341 373273950 190860390 290713288 858771855 676028078 400019695 834165013 437405493 290333116 59832312 658042055 601500830 758511097 475340984 224655427 888368923 224600962 714983909 804385696 80639011 160300198 604034483 962669677 330761069 898199988 178435163 131584739 658939861 791134196 563181521 129744496 58767682 326390934 214965209 883506385 960899400 512124282 900640495 421319663 135168842 943309811 577729207 886457599 221813973 840082441 623191806 612656478 345849853 547962143 885723165 107124266 437941265 361502393 367766862 582172175 402801480 169414085 46208347 911471813 66754370 150273375 268451101 834900386 829083587 322023646 409953178 59070164 781635690 758816160 617207061 423268106 224326336 152449465 364371441 137884965 300002645 693770075 322048902 775178084 111750090 17453807 897919101 905809686 27970397 410698711 458773267 506229412 986676719 985992285 364555274 875443555 76616572 421190123 900809636 804672880 164310366 104298651 161403049 222256070 130799106 995371895 212618416 633458618 232224136 734403951 854215991 67430288 716183141 941342218 423113006 465120665 512712027 827763840 648895736 607283105 52114358 188221473 752634648 822873645 154045096 568653766 117780957 338433467 3213976 371479572 335132077 44598782 206646001 201970423 449161952 909222431 969583241 188709169 796859661 476066953 676795923 750641356 604608177 314457084 807952594 112729448 679064787 967449038 129763056 918699265 167801000 99474514 175596528 824353158 216058263 45237696 976458429 911967454 861910692 559804232 918855839 416277778 244316129 254185850 883020351 963727261 411534975 387108347 513862887 702377888 50520428 215373581 636277373 933397779 482690823 556721141 108990663 594543570 142276120 715365225 914717133 960258233 823208037 115800578 722569357 642342198 642784971 163850830 400432260 965851992 997856618 738356851 525677774 193314186 974520447 52159264 715001883 734683177 177898329 549458927 523021768 973381866 990412729 284470321 267626230 836661531 44263111 665807567 624451902 890319080 838540157 685908779 763748651 389050158 561765432 528640522 222547375 792208633 111423974 301276489 482767689 70357331 776467263 711498182 462006480 834958939 31142489 598732480 795542214 173572396 151108904 723680315 455445696 43803779 230130279 310274133 768159584 867986954 674701316 855899283 900126266 457351140 792538558 954533451 305972282 831454659 434212700 629580250 568481809 1591450 600224966 442634601 646626617 995752945 900236468 475560729 234192611 486425774 655918252 437329991 905821207 922145374 709544121 922446894 687166297 414873504 851782498 578187511 778441457 324305046 211336416 626677881 118861272 844378455 689932068 110782615 385866755 779367999 94593502 461923956 626764686 989330697 460806308 190334108 817057166 170491072 232241820 685876730 235849536 892664555 167669012 345294826 470779876 463579500 196594310 139854993 495207633 357507000 699033029 440811577 999858767 465719894 535133541 542383734 62455919 17745166 617683612 832661377 824893525 295343442 652444661 973088499 197713112 102472684 836555276 932150646 369814121 701646073 358421739 642268092 794894353 109283169 40416635 515900742 371685669 415995046 66591688 769644963 399928905 59708584 706198484 214890924 453480906 177351047 709056263 345679565 93780835 795476375 77100343 761670471 675508237 969443822 922253143 179202284 43208783 718855321 48557180 714930425 562176928 401105935 620075742 725258127 72200579 359941844 976007018 916379164 897074480 132184867 554753376 606388981 135573600 586316976 445172618 196929261 179762569 596412250 558136375 846949512 894735535 627294274 183704978 214767699 279825141 736764057 883550653 24654467 232291552 481513802 861414151 420889407 734637376 567839965 185240410 494375491 413099574 595407898 846143708 289614312 888993760 912102202 345915619 750335378 784549764 191916893 431537419 994664617 530600936 455802444 541978958 310456387 404459730 900752487 385879126 973218361 966010434 118278743 182305577 354444462 7705308 578351878 876765413 496852041 852754683 98383118 449302215 603642543 696388224 900569334 452158057 307274003 291638951 998062597 170371821 585383442 929697674 276082425 407865381 772460503 902286822 204631296 405110086 534550150 26420975 104623446 5215470 33661455 597365175 144113864 414365828 353335402 458191197 640557268 863220626 649488085 795415925 543003979 274845125 835801121 363369569 551581927 140081743 938243836 254572353 13559561 623598852 224772372 518591436 117961094 358809522 597370967 641026664 639727299 294092628 591567896 334523248 539196895 489900941 571525600 95208706 556509836 302333899 568481914 790144048 214088856 481454096 968226636 678098844 768334681 415310465 244934657 184188864 468302303 587402438 295493360 947763229 121407628 673624151 781163198 892522124 344258534 618424716 186380015 696345859 241934964 537239522 30315717 104425064 297279444 182569529 614067275 572001253 510991328 382928136 683311925 984993321 507628372 786775958 163429726 170040742 434990402 332818649 630682100 265575968 621083814 488123415 728965654 271614709 256974155 167096576 119174463 688670316 753130298 895584604 185505425 51208090 715021435 131431011 749341760 463034436 671614130 84090793 346463656 877443263 298744763 774183694 201470786 189699426 918989191 210040239 177958348 369613398 253500349 636045616 433020327 67765792 420416367 505615821 536240228 381334549 68873752 104854642 258413300 160838695 4347238 506699227 26316971 892957378 710686796 925011898 302872760 187286928 444080058 84073442 880016336 826241816 723033797 259819179 559044110 489679145 461113132 723074369 930370188 265753465 862901272 225010044 293013640 591573416 894853734 751551489 191083661 964723056 77218129 18212768 399596582 851100151 53922556 428571464 568524554 27930717 110978680 270550506 105072517 623543059 621341002 287028208 837390462 488671825 891456694 649695857 430532758 102902451 418851591 497468574 183149144 460112740 101382692 208829171 300865087 323020040 413607967 367740437 892960556 26681514 212334451 455732649 40111457 376469789 114886702 631831790 801956847 295497475 139194448 770824620 38255331 858487995 963636886 539388509 154488117 820874627 432050534 661598427 654406841 284408952 165478238 386037505 237189332 314852502 921601262 651450010 672728868 293023408 115430263 818126166 865350048 111764329 832104723 70417684 643033274 835788706 937944197 168722078 142202762 211480410 423329598 17038081 587307764 630108757 738153156 116442729 948697892 444896441 479080721 194783315 575140153 487124759 217859930 625781089 818726120 236931434 939022585 90211079 186185609 153109687 478812854 788368460 977386955 263533555 658721933 776028150 302919441 148558066 893092489 849709073 293197403 971846554 684676703 877847465 701501314 538217040 926920991 489888413 304757901 397789357 962509377 429484995 109233523 101461881 114120176 715213224 326115513 691655396 105544363 969898912 341712094 631810289 212743353 228695879 873532334 315189154 424269896 545139312 667106423 546922935 885311056 58903019 632151864 848591847 614977313 872150122 924499463 929375090 487652957 956906737 899711379 805833148 103667970 700838867 249389492 55404015 715065800 276815688 765978393 971368494 380918115 77318368 84159642 121893703 151280129 186392574 958608922 902490813 722984738 990460987 871535051 577689239 559719859 773890443 329494812 158173272 653949058 966483133 67384752 908045067 325729565 650682404 652754552 377367567 75095388 468734504 715607384 338251550 420906446 736544840 49747057 595428718 262394848 884668673 132880270 195716153 851630829 270223961 82360236 972953505 905318433 682850949 717310095 774303120 41472263 56381196 489413313 413877148 675681156 954277174 199806161 381762184 244851942 319894386 981952401 490128676 520167797 25184850 253283487 882395288 659588496 720907590 999424304 532749198 317594385 372046459 17549721 791948117 415402180 633600787 762326603 506422890 349679189 272640209 710140886 37131619 526098233 882621383 39866001 436974330 601662133 286115031 954996133 247571433 915824325 830094638 585974705 978939591 440322991 449326004 744529344 882454695 823389071 7640191 593781497 384005951 713600976 542839807 53868201 234409256 886440732 355403355 263976372 683488289 996894032 71587983 883414883 642863456 703628262 531922352 137390754 619854717 730046528 526462827 819628092 88429532 970895215 622195614 559163065 666784475 89274992 427732387 113140353 847018299 55704523 409409522 862069900 647977732 994248232 944960198 106812041 245525544 634744258 768824973 660523850 438377268 598047038 465298624 994868327 490991559 870228740 580149784 393574448 542286166 89642296 874508058 187331308 145342495 38038991 187229687 281977037 717980483 49191003 842723425 146050737 491134300 730412323 568040232 871110493 925481501 212430831 490910339 935268058 503116326 117942100 174781487 489784297 655292096 130025622 17815728 270415333 372817351 178797997 424431420 716963570 626997450 142956903 394074415 487192402 971176831 951873598 769275009 535011362 629813202 843763821 104827281 491146461 185043068 1600099 332111457 572864321 632357831 153986989 783304497 826770239 218789343 815189724 266781727 286319845 477709619 980063924 790286364 429727852 681992294 687337996 359333173 476461351 910831742 744171898 135720271 273412914 967520250 561183297 199136312 109364908 301492871 533527194 60212442 17598455 161348542 295016936 891942895 848793027 782124794 470713705 591417063 975770316 501912214 817474529 418927635 974583244 510557494 988701249 705562864 579752111 466307049 469463644 914333297 100205493 213230912 689754075 302174203 133365514 396239815 318410183 42463387 581641255 123600261 872509097 5088685 820133307 331880966 438802870 408624466 328256404 981092120 15138075 892577079 97846555 65504876 6664538 757435073 363720283 750027709 844958460 913900160 811815516 70363570 5191456 445545867 130556502 890272959 190332968 830467057 608379748 470982150 49347434 63174360 370439549 279489650 399115508 564792811 2072139 257785072 571044366 609430418 26315569 986754731 417045788 524133530 648230704 660832361 388043615 988276580 176759450 648934249 843034455 840402488 662451128 414138847 303525833 710989306 442738623 553026041 736314716 897800200 315711664 630643817 55647079 222039759 299298622 721593082 153279011 645072190 495449590 348257812 505348639 372797394 528900905 733082886 786323892 436359231 143789057 975005648 386665887 268696349 301912686 971930343 948030655 810182960 536352407 845328958 854810015 959464324 13874224 294274958 685916008 730105547 907292264 50921105 736858383 581543225 602419629 328655599 214329336 418630644 795945052 963555666 332672185 37450420 286509702 359529047 59077565 840377167 329371919 733100612 853434563 93687147 911879053 272373500 148433893 463583989 822605025 699582321 436866730 13816541 71328271 504795757 594421170 69967354 62036436 84676457 620553922 683574444 857507149 359430083 145592249 452738788 803365420 185716713 698832824 163755037 707739434 984141590 993821813 52308314 341345489 624188189 271742251 267873435 687861528 457922306 203354910 753358832 95148296 136886244 5283517 372653681 404249355 900497016 912592206 895816901 873895208 754900848 906097769 852403658 32563787 663841333 53961391 426823354 535203127 520786316 54481077 266548849 916552819 43371724 301993806 888871867 672223675 50101064 141968248 966166932 903820582 73461577 645092513 114018822 344023112 819329136 511370720 690481395 937296926 124746318 217633615 743779308 125764570 710114488 17666368 762267923 228610190 89291950 446658777 903843547 684498908 468779042 597792214 620094102 419111575 719394879 871349102 428865126 221062166 590276307 341300400 365177071 841143327 688948070 881049498 423496123 438778423 912990831 829532354 263744282 110155137 927511024 668911996 387477033 256648991 602032861 233644117 412644472 641600253 686297108 980360840 215328862 761605885 86279770 100899908 819211666 506838469 272781897 384488602 463282882 820756402 707623532 480147818 410738112 143973612 58971012 424687427 18470423 803658667 801647609 828537564 376321081 482808876 971336221 886837527 950616650 534974971 212284608 671590064 762127595 348799040 328427507 546094465 44373195 840683490 858475195 394226843 792830759 29620053 419405818 258328862 269072530 751489218 162675068 273226315 800977280 798470150 976510309 389368671 42919927 42205608 509704656 110143561 635951612 863474749 979007734 941678763 79882395 484473100 898903600 967633404 182288921 772655005 504971245 97249175 608666106 628948124 643996862 23683377 107075778 453165757 87906855 648986545 658044509 891100259 852243188 643018208 90480214 568676167 511031720 360943077 503401239 759635932 238193608 969562414 85459001 193178800 926104887 808862712 771099793 908345817 369327768 458087928 674830725 253983088 593641361 394596174 830302369 349039768 237685631 939801381 879000609 129002850 487038909 346774734 761018259 73258586 902488785 648321288 398119154 224645499 274947378 353518449 416334570 373211797 664321281 905875143 374885394 275857364 7663080 146384164 119021876 973330401 235674780 162191508 345625164 890015730 539795909 601849071 11455761 720064809 916279128 73111241 435324681 395377129 299670413 611757922 357579357 769459601 323674431 28494628 57378894 605088583 542248858 452461747 828368803 346694534 811484838 876588664 679477218 992559878 439088707 604694371 709854006 225204196 824459873 22481437 173130177 722190147 739719070 898624139 204774596 798085861 583059068 174631809 243301096 536306650 300331158 679143038 780796979 383226833 360739912 744310746 724733075 952184381 16272423 737518304 540100031 592535386 445590240 308059251 223914660 587410641 144837020 119325032 509214747 136086619 652393783 369497312 767913751 740211080 699795731 890705983 896492069 27421243 57146115 662431734 743961199 727304220 829359673 945649575 509993086 698069714 489730810 68579022 880616591 666513969 210809135 56773485 625816749 244724448 520668835 780087472 637065509 833149388 911202749 574645389 402830113 523313559 154972821 641800862 127389995 436072423 698753926 864004937 250381344 716391081 818346063 663342426 635457711 720258074 967737518 142240248 382734120 707420558 105714570 827635662 729755935 23040259 179571682 559102095 338441228 241677179 190807279 471892904 780192322 469368216 773358155 251917389 649928147 610956542 62080524 969122770 304005817 169207490 638932858 545018744 453721491 556134244 737234794 584230426 851491856 408279360 207586212 820773081 29586579 931719892 107109720 740559145 727856113 275524140 861767130 837181156 455058602 503236298 641300141 977611062 608595762 147792627 864170036 748233654 160558883 649499784 86200211 655301627 87423534 505599569 910470864 20407800 952584425 962695568 986731025 436554307 850423923 948498674 453551898 142274988 543224545 723746342 904730374 418956613 468390694 104145923 883425363 640615462 350575948 393004076 518260724 757927366 952423096 669785413 438874066 511180139 313801577 213670684 214518049 951051976 638931484 548526137 892465335 986533290 234874657 640028851 889599238 753902815 417845203 121867280 742583171 123691118 663726186 53858821 116811217 986467995 460032274 666760471 601026717 507494236 822435873 584154905 728410256 408241388 914365453 550662654 7237197 999130176 97823878 11026640 186137790 871296996 619956341 892165889 989845966 983364779 564948788 553503845 377914926 236093305 237088495 176508624 305676988 485418934 932414707 147079875 511445959 928803219 539735258 781970374 62799563 558606590 546591462 547203737 649001760 528583709 526148062 897241164 369668993 702046261 191087205 656759358 995381106 118499044 349453632 908516911 536320479 343034411 337230404 241147081 516030485 512442562 351415787 47281751 537206164 786423812 201897199 846923303 16561838 108476744 435821547 110929782 433126622 529214186 828060686 569008502 866561403 729160078 284756104 332255155 716668384 722747413 296645930 283761333 145698067 900275225 357024226 246307616 746981436 303920178 839947707 234435686 435393403 161642943 631555660 223371001 340590209 82406004 933841373 903790692 506608881 640268651 673267701 599604118 281375625 247060438 412750963 555341957 50205446 955862398 377438337 459189934 260241039 141673369 403406108 687952372 911620687 849406261 461059911 855344368 267515771 52008870 531070223 673825566 990430146 695850245 386868241 760763022 469556873 610116240 174678181 386653458 782974234 395813734 777796280 660819512 944437019 978399924 586900250 327647370 232453561 253033649 531769850 215651626 160689018 421047890 734078944 778285292 43206082 831850364 48716886 322421993 847770968 602990497 488806959 281055407 221147872 372497582 760867270 332588258 982713362 380494344 363871664 214770104 883612818 554479226 117142102 3847747 9636940 593227092 523668963 337077815 652101940 102498420 966125837 290117812 636850956 88831236 881447968 310808195 664739510 960182428 10011050 769265720 647296962 262595774 885999872 997316150 147102311 872565815 791570233 295158039 992783785 652254446 471960537 574486607 106689973 863048734 428807321 464229849 793314337 132777190 590979577 993095022 393664510 782294767 429712893 587709066 603171996 844960421 761577619 837766841 521478638 296418271 971911368 298379159 358643146 849038779 152692950 993823729 988338627 945012880 698742485 201258215 981604362 212438477 725749722 628534741 12235803 887561369 682679983 500001049 463392662 826668386 314389491 100789364 729063324 582731906 854281217 4709593 257981162 428330804 386598609 18826817 690611318 869329732 476665727 895392099 372612359 876097034 371017580 64005768 781512134 812444241 340458003 667944906 379667549 860607251 517453187 832273606 800732716 574127919 636576806 322018404 510457157 345726197 167992004 501632757 384891249 431824640 672987919 245286821 587701769 769636726 331235249 948277582 867116977 999619928 222845432 436371443 531279235 451694491 466204461 863753450 897740023 689497768 148490412 354430164 55286641 451282987 844388203 189867781 228631071 766402030 708276010 778720335 20179203 762302054 169255444 301033328 117378115 323411034 166725832 964802686 100840991 931507962 669147061 149425311 849945171 482216620 714424411 688749613 357787415 107837445 506489493 907347707 513425948 653856760 617021771 469363573 219563402 228550788 97003984 784779139 868608529 777838355 261853903 996366828 140374538 215728531 847165237 778031683 338254428 242575826 393905246 387778524 310060301 871856093 704332255 863439613 403065391 924134903 552611046 646071627 670484196 303057705 848966627 115664648 562690567 661591444 233114531 94128118 808979591 857124503 410785004 296693844 549449213 690981284 433215896 180648556 510363106 105500671 180701071 688934856 212573676 523984746 49816609 638219681 383050376 73725972 480946436 656676069 387234555 664557311 392247176 920077556 267783910 915062912 767799980 325841886 245120324 45007865 218171820 848417476 649336999 786746530 404327255 999404686 409984424 653451995 297946922 747374000 301538650 315328295 233735098 106242107 101740929 756696597 35023149 210073054 181783972 714713294 975532846 460293518 92677689 708434957 450245076 131197476 103187327 218470157 302790512 780851225 17855624 28984397 517698558 533973980 697191219 934158264 174799151 40083299 728726449 834249299 670329181 358602099 563274247 151807636 315768503 485330166 595636835 534156349 764056763 614184015 57575612 844256570 376082815 667131007 652735606 310968864 16781825 759689860 457564947 741932136 512187608 658733074 359709009 441203113 874625392 978925906 134357647 85069927 441082345 788349316 720033123 196670625 301846327 893011961 621105918 689553672 746785755 263759844 320344318 68941054 520236873 186258303 428915546 699624595 984460694 203274807 869961973 276886400 149052122 166304558 803885296 365757914 379425716 19160244 657179455 278015018 885639295 404270604 817382043 968642867 786235140 752351614 108720707 295974069 195746011 563205850 864842159 43678689 916250494 286509863 911191581 789416891 286227103 858583391 795992402 768817608 163939488 106489915 398933217 543247510 529426878 916495924 535580893 899242562 413191609 596692914 186184516 399700918 993933453 847536140 71825088 458262921 323739883 727230045 484547977 244116204 620036177 338143858 381126697 690421338 253526660 506204736 67867318 986809892 660408701 657004227 259846313 412077201 330477947 246329587 747292356 190567696 188547800 476822439 289747994 470873519 760065719 474653034 939863073 996084805 98991537 476258021 337906274 900847521 76301395 865563934 190959191 263519030 662587021 945670014 701539926 300586057 208841124 778955608 418076016 515723653 733899017 866143846 524190876 284484773 789565422 433613470 353983985 863486532 524143379 680754620 502721776 934228072 254674641 884734221 309875317 193647891 161121076 614673828 28427512 740916143 962655105 613000402 903941908 782934449 278487506 915728254 212099752 710095033 496691330 951146587 997130837 327226008 287396337 802630837 657630871 119019182 248671704 934606119 703945379 865465626 875583645 43088151 558359701 561143712 741725913 148396050 486786907 244150209 882816459 729825669 525058687 795540083 522821757 356925642 1307596 836422644 803575895 395981496 682574292 306375505 833669788 147112347 6575182 621644270 874718498 24273995 913611650 507365229 535500149 379563037 833106541 245818739 229341678 61188629 690888612 464225998 201817164 165575987 665909811 12438974 787127658 655189921 834307415 524944498 101764752 504211384 239154719 436126430 597783514 185168533 213855 16211651 709550915 347681280 727962856 907068321 787410890 389623736 317479938 846285504 162533621 111551608 219949429 337100325 806156098 131930182 601016469 131972201 493297867 875333953 423341698 302338330 454882916 596924872 281321847 304997770 286330634 913809294 37544757 739072797 755569669 780606827 688263053 917692259 910688293 892142222 72102215 941185355 970212240 286061650 412118613 795057580 63784136 552990713 256652533 653396579 176566925 641087797 522230940 561601098 615718816 798311270 523569083 852421874 899350862 330250313 280181324 522705729 620687357 339556965 630228317 386198547 217914992 407336988 362459514 765847258 401146772 233476934 972071747 711437693 61486032 819681799 65141320 922223094 102365224 888557568 391176252 777345525 581606864 879403535 410403576 478869026 76708303 239783810 250402085 928205572 284529536 370349329 368337787 92636043 10495442 101385050 131559583 872752102 746896298 512893641 525500468 19262344 682739557 492217747 809918600 916712774 552500551 367694088 171191656 92530364 291208296 285824079 426480667 663046727 562242132 226898417 75253504 656645087 199234773 620317442 173715726 971855698 132641327 114223447 587914434 237985659 788354355 286601337 65700455 884178834 522408449 223905858 100366770 4009998 515877334 308835707 886714531 428008584 421760958 238493935 213475460 601327632 669939715 586952855 275107720 657377092 861018683 190973899 439287778 921716566 847437636 863711405 756340189 215218912 366608622 199262373 475943119 735470291 664576004 613924401 873691918 715247725 419059961 935516582 845397 992501979 400151387 234979122 775581013 713565962 212818325 989245216 235033061 255344521 321113737 860286216 180174249 367079270 862406313 956690699 386347291 508880775 110483715 60755435 879804626 218803182 338935155 183512365 501422602 641029123 998040844 370325143 959001273 301202347 959419643 414607167 566278819 930369675 152725999 262643909 642319349 516332258 819473799 143873000 622432211 876637305 896636974 48998976 318500479 70407978 855051503 725932539 284762832 53943868 771985847 925186469 377477163 862415485 605660362 629748330 789382142 843211675 144237676 266577300 209402465 300094182 234709059 944233132 415854266 559908103 88310227 79049167 741209297 252027674 479633827 217614241 140700281 137080686 931634969 394647871 629511686 198603465 610741115 574887641 415236266 966893434 807211956 767404895 954323610 65174680 640584921 823367456 96225988 918765677 830642786 328537012 372446538 851906312 501427062 333312836 224754730 419424595 394832832 907492510 399725583 469878622 94411374 547542150 668217493 587251391 518495004 507320662 826742156 55684420 330309505 265368902 639973354 886008163 810706714 123581252 449853585 379904833 410690698 908269424 167972259 98468386 584762264 723442016 231342729 256011287 313170853 852068683 29637258 814432632 445716300 382224201 187994903 987660941 269640512 950579194 450871264 89227232 880377332 962486118 703268325 433939184 706564689 773931228 1881339 775541277 966913719 296248398 3198250 684093485 838412850 3424814 145506075 77197585 127296582 170572975 942738242 307288964 267629453 691007926 324254504 406536161 231167693 587109757 164638888 268172833 43512141 616890647 937227033 334804102 38360587 516448097 939879309 655397035 781835412 751679040 568632688 854529451 83385230 327229650 242315078 132087341 648154415 519375864 536020348 440066212 682036903 241677709 335523884 545652267 253759525 792519705 410721964 735389828 379553280 808734699 138199692 463821469 319809174 512915919 698549796 289525890 82896754 945756470 230305437 684142822 681887083 693933398 356200397 305329486 533614345 849609674 348056844 206413011 315709340 562321536 26909557 88641709 736505845 160266122 417932873 631522210 941520884 762706720 608517165 785328628 303203426 644665664 51528928 708444841 112398820 944135087 958894375 372328317 466709554 942644291 956756654 698765302 620673401 388072097 429061918 386516681 332682153 499435166 840864569 571805377 107800760 611086740 691443123 194128024 405728170 750122362 844119094 678206588 211436813 249439440 984312023 180385935 479418615 473145472 312304880 81956311 933414311 630000059 898446453 206628723 474853573 429874700 771491214 629343530 878990956 166812550 642531578 653205370 167222424 5732539 907107340 886476230 304130680 466772039 118089052 132727823 41583447 769899911 332037046 290575862 593373167 993990481 191479811 188543609 410927074 876329380 906420698 360120806 764311262 580111493 221500286 228348643 317150888 472024753 50888643 340849434 724394325 934180107 711790912 469905988 606794240 40955769 81414459 679302055 595642054 698433720 821320274 244006177 397046408 408540162 744126836 141081943 750755813 856263600 685249684 702919361 9285719 364627498 814138235 753434932 498302977 178439779 744616554 665732924 185566468 203568633 705365579 932404820 544061852 238330741 174853531 75761947 943283739 4955424 393004399 974449960 124802078 900303714 339751229 783102910 282934118 950456562 299711587 465661016 224654145 668226856 442876155 580613163 61655928 75792622 469221191 534590830 936285781 383037989 984314854 656277834 737875316 436467530 813028592 738023590 710196789 978365556 273133691 662935888 168521578 522358005 418385937 813635005 205289435 359388405 45303776 796408488 583242274 392848586 574377498 858624254 143644640 562674725 141261709 456690118 765191302 310101651 284552875 192547803 34395472 640237167 185897457 168990189 901691165 33287567 553179057 186021605 45203539 499897082 946885007 916497042 226712636 186778949 976042930 728431904 816494227 557524902 937689310 809475224 520443955 619583760 967422450 122183928 438349650 111863434 571469826 171207591 873101671 620861442 817769930 463740507 821487685 955725741 35629187 279326226 109876052 658334526 700071368 591433308 363225401 407181261 59986083 867128465 169065226 711500527 80660468 432125654 775407600 150430502 411016380 615966620 299996124 579114579 890664167 475497699 640842441 58039567 291395398 391885285 597426838 883412792 881895847 944687835 367286115 15128183 798635230 208313661 568549793 967982081 22785727 431319871 949607966 870270839 727200678 262412540 885967811 357987454 841146789 743839868 160994018 386455093 543587745 624542956 755543305 333583885 620371500 498003905 650507841 515240984 777904130 881342095 87477027 470315969 945950586 478633302 327739465 734105517 818231153 26327319 980284598 728844270 89280991 113461833 915918565 461282940 813310050 742449860 744203591 991885387 255539333 194469585 10684358 742851302 761325456 962743020 3391085 555223266 528708827 955813798 645008301 936359320 824717345 735396913 293753140 865231521 479455650 777151000 684051571 928691082 183104014 980272760 204060560 870898804 224159391 237196113 805884450 188017032 859652363 474865995 145350474 584686674 334680883 678120149 669224668 902918367 421053079 746149513 327016048 342706299 448922750 144543990 906097095 941786322 969832901 823647906 983346898 224373839 189859663 384576357 772917943 274822620 666963975 114434194 567966427 518230312 291862290 760237741 442369337 601438250 894941707 878431631 347391297 977946585 827976211 665463728 606946581 230411835 17652486 932346590 273283703 534511434 866425289 109203183 983786081 780320989 203889502 616485056 151956862 85792949 510340404 133202215 155281238 198215786 821583919 328085588 700589241 98729506 201288137 977662492 970675571 698888515 189638912 684643090 830893341 228682427 632722580 483465611 651152148 738280463 382792444 407183907 938796955 652496361 383388675 80006906 489292445 401300282 110354806 779327600 386220534 600548693 169427846 541097637 953469530 124323930 605885382 492400242 241531297 995386972 490443433 8634234 813070210 183893224 23067335 301339685 645725780 907254990 348752335 515377078 424001151 946886719 429422474 685828310 501892921 735361863 316022224 491319116 241506787 95671091 636762412 2175047 747678448 687402037 293681447 481798206 692550512 750954563 697851245 516330873 52778262 766296861 767370491 801156791 463213116 231933870 702858554 762366852 143370170 914038688 487024264 178160087 909823210 848333230 406436556 807477744 826704335 20883181 468647417 909991338 627705068 33963085 199482018 364280476 101685555 115279771 862239365 750429423 362449982 771332595 571332828 503011445 391830204 570835249 512376309 210043866 86527914 769092010 164454464 827368801 136545783 344212158 732898375 173407262 393093731 706689326 298418132 675190153 102353541 640355110 361433972 653653517 538894255 400886457 852606783 988287559 246012165 191875779 946653373 992734486 715650989 263836944 685131479 688618444 390199527 443003894 640498985 98748505 262844428 101710917 777161127 811460987 894428769 8389193 216881641 43965849 724079729 439951082 771707776 882326733 718327976 621497994 280317018 19590382 592743626 362635352 103501986 502617598 26195237 992400865 591045279 245879278 490794391 413834677 681200761 546217270 469323729 769394351 74802394 298715447 600136289 769785220 639800100 263724811 855527243 611124411 354613472 83645201 139028404 190394576 66600792 866245659 432849853 853615551 45609523 194394434 888333494 615023525 673942460 278907416 153712641 550351805 218961625 51349337 234872718 59647457 700744922 53260259 559892906 682281902 997568663 373391514 409161273 344896615 22497938 203560968 146216892 332394906 737892903 284876968 494252010 210632841 911322571 101203164 161823028 226404798 448988692 71487219 875368595 601946845 453500509 66041064 791494462 141745343 574624462 342284035 168985702 641687557 576470297 455483554 63372087 989886899 599210870 378134826 217476617 115957089 281804398 860758918 127864783 709241286 356881826 145619006 218370187 58260041 8254653 671079328 197050567 270006373 805981419 789503342 275744030 587537975 785938024 517579702 616050860 346573289 459968899 645060197 942899234 816432200 59739589 844278448 270581543 381043473 986411493 302541836 874363999 821657717 500577412 619617384 629511610 628092242 183848516 400696487 59605569 536066947 174753065 340719124 630895267 342725813 495954048 428187105 867093461 231737290 469295623 304359322 327455804 603557644 833113192 621873670 564463666 463271645 450457636 31625043 456759756 213379786 865800114 140592138 666166110 258241073 452923842 204162350 20699107 206902235 749968053 103028726 657168239 666893531 726939171 552590624 619270690 857383056 984135042 36351732 609330797 472421592 197466291 684818034 626215999 152642850 208667052 343784171 421126409 213655848 118966483 821846877 216900264 274708570 952664640 219427265 446423523 755672679 590260878 586996205 369978158 725594564 415864082 422222770 855682762 44873172 384402190 28106217 323991797 522792224 211308814 58350292 270469087 644497675 736232209 796439917 127024498 441956056 43415857 51876054 247394910 800736609 864305974 32643748 153766896 305496739 373891858 544022890 62394229 38352683 754294263 900790626 267385492 854028418 816151047 570381125 511308604 57972297 190664820 10371533 14806276 414763898 576381960 774064469 937766636 922159239 945851002 807206251 368748333 720223773 25938583 177280144 456007024 295825856 251442150 554860866 363107346 603561606 862403961 165200234 30283123 33790165 19751495 170958432 565144649 6812760 279030530 924319172 846724502 108852912 435553825 815608504 564234128 666745221 525548093 192263375 714850271 213525740 159074948 257416212 394921970 168326146 822019446 808836817 793761340 539119778 983747454 164750329 340786268 34134085 93691321 979775496 500470142 143752342 664683697 792048189 922998735 628662921 878023867 93594745 999061033 119840847 442985416 239009778 123414262 615392196 885955738 358356260 760976128 42080874 236133183 89801185 572776516 413081207 726882146 992405828 481711569 271441590 39428049 34794660 559940875 151814347 817667758 201005371 468554087 892951232 319946323 944936435 934106597 665280736 503756918 16271130 603950830 175618314 444122317 144019970 898878177 945567424 812049680 478686647 777789394 422755288 819111840 138060974 652368644 907548793 488700921 501014437 536001804 620458200 403196075 463839192 804647955 848771281 235835267 183368886 355292477 928412598 122251951 533683169 570714477 580527170 291420679 246257278 973878985 949191001 191550877 766572538 946488597 604014598 148727314 72829057 584615120 695307888 634831090 798514923 549739963 410748168 635493800 184407931 975521489 937173130 628472963 92762453 325695573 297655443 29374583 220262586 857198398 926479047 868574620 867877604 596728292 237340030 305820834 540442807 666032576 242613489 14173872 636838430 610092360 603199362 306343842 675380877 209588763 983603970 827107462 497111906 191545031 883944842 55055046 318381665 448766939 685338305 669599323 699443018 16222751 457690455 370142209 663234114 49174372 286933623 485845341 172947140 939773799 994572278 711049816 766616085 762768017 361481829 256286924 916705758 936891891 116313033 260433241 559569465 66452529 968477807 128432750 964406511 208099765 445502774 877019690 6231672 97790372 705093256 253103466 705952433 879367970 995941199 729355387 566463005 800901209 469099893 310874250 81196012 429309743 617832168 314037233 194305379 889183643 260919707 534436107 710310529 934369584 35808973 516880015 718745499 400439008 68658123 344128106 902864799 357961553 471846839 991245140 918069120 621536847 858189207 289820612 826446678 202099356 159499966 917274349 921582124 307571550 245346267 732493155 116866192 804522642 227453875 977378373 875546369 332462861 961764861 944836311 7925184 776332709 963370274 642434042 714581950 486731950 478800970 58433433 332741128 263998615 472350759 388493329 272020921 395256460 572782793 644237949 422277648 698177507 84690269 262792557 412969582 500144875 153061073 68844246 366839622 40794602 144994976 70970954 862598554 521520002 249510471 455034646 485496286 836008556 569109221 685314967 988236772 53981897 939145471 114306772 807514267 336068202 958476802 476232837 470123638 740728354 739455375 748546916 47662476 743839028 305145397 709762675 625122715 234841050 379285768 771445434 776399895 194732098 188711570 219380592 62236255 785468659 962469841 572969594 999867663 155503719 384899882 488612489 244754792 154752901 341462714 239305374 379731310 714649224 940925160 989320252 964734421 35879295 382526637 497377387 68803129 259269836 911235811 519061084 600809338 467016266 635305417 57407262 612529479 143825360 436170667 920352167 923108396 447522711 925516835 980731735 392206691 359007725 597072156 793641802 603088074 151274872 550845428 305204305 20793420 198512040 299467560 590348768 282357734 262635264 468885320 247775425 814541127 624996301 490801285 447998731 392290025 88076088 374887187 907169250 757798936 16018081 460779253 114675028 145478026 40710197 166081927 288897033 444761833 580637178 256361975 195190963 663202958 319727620 958765285 898802766 320854357 642254113 26961144 722836693 834118478 766159001 383893258 381504365 27134830 177655431 391602720 337582440 176433267 110719892 533607250 260351353 868913420 681003542 773988487 71402265 89532765 238924477 985526416 524151703 230576449 555905662 225375811 812658616 778268498 53067257 336063101 341328195 181856653 749287638 306680683 904284073 813011338 452791892 318453318 205682247 663079816 580074301 749504910 828401413 752227760 287514196 958091347 172560550 233545404 50654128 874702257 877925706 689170186 108888022 247317555 322283805 898862727 485904260 762768060 41031035 965892471 55831366 595248241 686902378 914259397 451002295 772891293 478487354 938661350 888115850 79213329 524890867 119553167 962965438 91908235 227736794 988260563 698037734 497277417 36642442 480829740 364613300 737558559 50462237 467870787 933754744 821538479 333465329 633740973 460046589 669496740 454211259 274644816 994308079 501651987 772498956 94541887 374385065 43932852 273782148 15572264 627140403 8163629 573787880 32646838 516240899 297356690 81629007 31810523 506924412 103326280 336635880 469944407 447829544 672095808 399197283 978068080 597316039 310801208 178029394 75922540 1208802 301896153 243283235 950142131 755899694 286872103 633804981 272721677 169647533 711192475 634639496 422068143 79700629 444494881 306658744 417094963 248640008 858394579 145012042 609507498 454475895 170621453 631928871 791467078 304600980 241151165 88004403 751145608 678513489 235297862 728074196 468705451 430184369 759374937 55037436 486034372 573423373 97084430 764967132 179880365 821352759 107363193 454710908 318745461 936942213 635889581 352551622 810145416 403359239 644192791 7203242 992440759 605293062 328443752 221069156 541980132 833460450 456734239 857138186 873219355 798177790 405542852 306045186 606821379 287522632 794260414 854318417 908384758 839393719 522327330 997989987 926268934 738793310 179963094 669799815 415197652 541427468 365924439 966875891 90186916 256103329 774840870 746149929 69859507 901008383 56353190 601706777 664143 543214833 993134848 748289558 312423989 491488426 52925074 645371691 692850422 337698696 30869548 930525407 302953220 987154479 752952912 314236357 594666727 361673870 71591755 330404280 384708033 31229209 246721778 244368181 827234617 135059702 688981208 443488403 604360928 155305168 640462230 555805792 615944355 14459365 245567653 389402343 867311332 673393767 933982955 259845301 42900938 552302895 367019052 915080985 275866188 947437349 434869430 94334561 951796814 72117422 150180874 301138703 358725765 742065186 193859975 819315465 759538448 539343041 832326892 770275353 954954379 218906781 180372658 911722374 739713957 835242673 594006205 946429630 819069557 583715266 725391330 242152282 854241156 515877709 592878518 779721579 304128505 827947551 984886197 377340452 297074676 458973666 696931 453412488 833955289 187490120 114653852 559549917 458591580 695320388 639308485 133986701 966804994 383753441 368694936 652175519 139327436 785412517 47605123 630925761 497847140 910516448 756115634 261411983 872598898 780387342 892286027 448054208 847189033 352776297 794763750 845648688 502613999 815508666 690284293 186041723 979022154 649851381 625247464 789919052 106705681 631633763 557843740 416397802 717134152 576996116 635468830 112536501 289954198 82789828 734971274 308660424 230875363 588132124 122984557 358310567 390773283 883079718 571588089 376430927 193030018 849692615 29115173 441839468 827323833 344874008 65260613 93371907 840907062 843777402 535062655 206194934 488861671 623131781 188338604 676667472 940788337 482739126 839315755 609890433 789691012 592909607 506833947 652150740 228667189 128963787 963998561 864698594 369937505 417844795 749629478 661742940 880838774 350160360 895904023 980543007 499361379 51658870 113626046 982872735 587166396 782648818 259342856 410160038 12297921 340676156 866412595 400275868 563282271 613097682 915206082 368916652 425304549 555754698 409082722 836873759 150682882 647122358 352569612 843966326 454006142 231491839 330980912 595034855 406411384 715768240 287128737 19097132 633421243 735575789 721121567 959646431 541090344 800389111 259473200 310994343 51295489 416901406 711985431 391440987 679621957 206215382 640142215 182212904 735096878 168176412 365131410 751078165 899040974 228538211 976648267 101837467 510970674 46948967 303749605 889605928 511792355 534810552 651233432 751394032 547892746 305399969 170867364 303706138 833543460 681903869 170941953 916682431 516356197 320444670 323747216 388292662 757465887 585115532 318425883 292978228 87940406 194694215 207759740 169270205 304705137 400797942 362580789 356471269 812117421 538314359 901800377 100921203 704302428 436152101 647325759 372211255 298854240 179396381 610952149 790095349 224723763 78767656 172398588 570074959 885343405 813982173 649942994 326754597 610105211 58427132 5594518 890745357 476206745 587807260 647454963 150635702 890067598 806999620 395008059 868100852 85006630 69231328 562380332 81828899 303308523 723693573 63102114 680176935 48032098 877482937 644325667 668563962 547874261 773125117 89605192 870851617 332312663 566371121 255064988 206832024 664124512 506640753 478611587 435678469 357479151 89714053 676648986 440861613 480991570 367685659 960893673 494591196 942001941 230486653 996912001 423838616 522048843 137321485 147819936 177330075 449225966 823543374 624428533 733521801 38525644 302914391 630929900 874258658 48513776 912072138 686765726 406455886 574849616 227631508 435051308 743062727 619024801 600744600 135738719 486415529 118855743 100716732 541905730 364405586 742929434 749243942 244155449 722527572 371752759 672835384 585325663 187202157 445617924 209287086 366146839 150007964 772608818 44650896 27511638 273881119 769217117 470583267 261058549 431140859 819939986 777329441 407167426 441971448 3945477 87006181 17785024 27149181 325241471 972550720 549971629 135148914 987452839 994869734 829875951 73634712 852985252 986333038 667012591 644295249 575427438 970491295 446330297 650937668 833112924 99769654 459039692 309425817 862266969 431066074 802623486 21079019 664757029 618343581 929751690 649082634 904646905 281873986 787443682 462126202 916401858 34503141 938307355 319248548 199795528 937334610 88125554 319345834 901149914 822874679 411860437 69242702 608610782 436178339 426087738 220605435 174108898 509186092 541519474 745034566 102585835 892498372 623894340 114239762 486569731 355650427 731028466 330995362 511269831 931150063 323158810 387626357 335877446 800759769 154268917 876989440 569949350 611106680 517943353 676135359 153371748 171723269 647076698 577290085 259846430 394459729 787730529 248450810 698325257 885655087 401998186 84013025 956755208 548883335 227657779 449627683 393142306 218034227 515204164 194724678 418927282 832346341 492943673 305916575 407346643 952639291 41425904 405944451 166307531 961980124 744110182 101432921 409630151 230959329 831665717 41036935 659594372 91574749 224293885 646871654 404431878 230970601 447713024 80230800 451449784 920715855 668461808 450636199 244878124 566400788 344772008 552306087 417581337 993321730 961983536 197440664 193431937 698756714 273703319 714563261 955757968 12363869 306439059 828478957 917605882 174335918 278473064 189461954 793268949 163904978 490654385 67762842 594128739 806990269 252911163 299406642 111412696 506630130 71944787 592561278 38918558 508062188 15126038 246647028 828665294 237878808 594952898 227808993 878057953 854458680 667811630 754270018 918742571 993581926 920515878 517519378 450688196 985310328 378022375 573307843 443744561 190601708 97493486 359432916 786616494 123815053 332729657 672687900 889301568 877873584 927187185 919111647 512352222 465418348 929298470 898388065 585474333 533155520 554343082 758418927 43857004 337740768 541355724 647211318 37990159 877419558 26622029 995814939 135420204 716450220 898574170 372685863 346927113 983402857 970960857 951895388 810715860 780340044 902371249 243707537 306630222 358075689 538762285 140807328 980823975 389045995 602789244 233559624 635108329 938593224 179876820 110290854 56213477 678268304 30727654 687694810 33598696 116200776 656322062 591932812 853618759 252351972 827297262 869518570 323842937 501183900 532739588 671323078 233791531 292125034 772256115 883197645 23639459 96307355 11832476 642623823 358606206 905216718 44892173 484500797 457266648 823199646 218246976 141996708 319644161 384325682 791912787 797882419 913427451 84062879 498257521 18104897 7893372 688574724 210904537 287437353 759458370 340289802 20755565 348666778 146986854 826630432 400335832 858114560 897481961 174403241 32715181 460458550 341231219 317724086 417003736 932915060 316686907 522521258 103643453 856997721 639140787 517615062 283936826 858461211 508019440 15268129 856647182 233617687 669071149 452024736 784868949 565487792 639574174 138666987 603037885 610900708 103222489 111697061 282172055 855085533 318576610 571446496 785693942 400193125 847215413 874522895 502163867 350046162 403160303 429600607 754773909 32130356 183821550 765942782 440137813 821749179 231895026 955031434 164205156 551606648 736156482 864478525 328193924 536616307 769386871 503029313 976490573 404827372 570989289 303412031 105082125 282688492 513158442 910584906 199459898 263403877 338604179 501041840 386017841 908354715 753570165 581002923 493914370 231268075 183608273 707885878 565752468 894779801 914396422 864559193 278547560 89072791 927582559 435168073 615323795 616861091 750984361 210141605 488122007 183291577 70935997 697044387 814830969 460031719 799342608 661668444 581399356 371558720 899050534 470161493 985811033 31681830 76801243 299057126 273144769 361814120 574731223 866004659 402895232 320806617 177874537 987023511 292285481 681615127 788708083 407232753 369245599 150772825 808701530 722602873 588047317 299364866 898418001 822447993 270569292 83261608 460166724 46918067 626161322 484016697 327550963 642610939 833394904 777308522 419296725 218969984 442874915 102540889 836080542 774524592 846706806 783026504 206521769 558593851 386058230 284721696 574995149 714048570 993237792 623933128 951637344 403582295 556926062 534972115 44749435 986234261 269146794 496388522 192036279 776244665 995223205 628468496 327045007 923577474 388460360 462393772 92102075 744193559 292577169 628764754 72588662 946486662 161619473 40966644 303308962 370274840 721902131 276403604 808605805 644094441 446653327 309471259 165607981 941343563 450653878 137068079 980152693 400226230 537904054 237135848 274938219 902281203 418721507 942380864 717045255 960392178 508450510 556254413 853635328 930524716 265312161 97885469 794992961 257038983 336587499 189858500 673590576 113440620 836494151 782571769 759235774 454957418 666545941 444316711 300941830 540185006 32824945 906859142 925824644 149605555 797503474 935708115 878309474 327784555 417965329 579209643 440886842 935627085 448827161 739611765 134654939 358419289 396510482 217811479 505773974 197901571 875317138 821567467 199118649 109022310 433174338 390569703 684927273 126289765 670976689 991915678 460226673 115216402 760700737 769304072 448461131 844417689 101287590 478432882 53122631 257391828 934693004 546921122 621495405 490825401 520806235 311132755 450406531 684435037 813023438 751115751 133958303 847229796 680771447 470870657 751905353 665592062 179797089 349342084 589570159 949512459 766130809 685416930 234900026 801367959 376485897 158436822 295092136 270483077 598275214 730686169 591818322 879387496 691688199 261729935 120321631 2636039 932893472 487230112 415678855 809068815 394466541 640513684 385078666 143426703 85916755 154126369 948671213 212943713 735273349 677138204 138848716 495187396 854698751 805936132 182125361 179269119 745264004 185776174 312253172 231145386 632661492 633655768 630270006 811603373 636447095 88183259 860001462 344704707 170977457 26052120 868989546 432192452 403478584 526188909 832345615 164046950 824827790 771595717 250893104 233316235 836350982 171546378 11811649 822308110 672634803 472113800 329314206 480654508 62682916 200923397 775529405 706867079 945698001 119901982 685101911 280505213 91061410 94138996 647141581 941319879 507727128 590801125 774733614 457358896 705716186 61070168 794200722 264666262 667636919 237990605 32867741 131408348 126389511 221600046 812408186 606331686 59465062 328006456 689574417 496571380 776694801 309605249 28017237 510006302 714895119 98723352 906791300 292916298 270662554 11245810 129021986 30201698 607486997 453006482 873297548 625408186 173183175 765372936 84224208 497656992 346785555 80350331 431962080 158769215 250418469 70612059 861846855 724261476 461105223 262182889 780500692 750681379 410785305 461669985 580080829 14616479 824730828 324317836 443337369 712324243 945807484 798114259 111278129 926729598 139517624 422576095 790105781 154074672 602416365 104845063 37808051 164389388 230180417 27749749 110850856 911970065 970779565 111699517 61687706 275964283 422744164 500199642 882364790 471763040 763829095 274965470 205056878 124662659 544965576 581173966 806639486 788312583 377370131 94152753 539680337 797219104 607173943 442467462 668836268 644512442 19916147 949440810 358069655 445368618 729912015 429667525 582152499 388287948 266840347 786392225 96463322 738424790 887995172 786342376 505048387 860477787 861741304 846074816 398976743 930489091 568475818 765391927 526024031 686255920 955559784 115154944 162567430 697313019 885518406 267983886 258212546 128676751 842884198 474248691 52617964 166467114 514450459 371655800 30363603 469716611 450314467 955048512 770738121 106237861 483529856 337656985 49388835 312132182 881852211 408466484 147029692 328991005 951630246 762036126 962999459 439817630 390738515 963917858 609060540 974879372 294219304 999689382 300971158 825278501 706122060 475322441 886494863 752885709 790558193 159445016 421229551 538380737 649213991 241377548 15194103 255464584 366695739 751517660 879339587 576216355 643638666 492215155 722825914 210715890 157518547 441377755 125277272 368102299 861412624 404664539 374513635 92257139 899391259 603854319 784364113 724691855 45045107 880974828 476986150 479448685 729909136 546130650 644546048 917453790 53315433 707858650 514835947 354369877 355776791 735121181 932049052 549874437 623375080 273499134 890056187 134424627 661303516 195334135 637428015 629512771 645021851 329212967 599882139 825300052 294995201 994752805 25080014 479767913 56451601 218418095 483204605 697318907 702063721 145582660 16064853 782670011 947117983 338189824 913395605 579619408 958253066 403177835 646839745 79040145 559367235 126913970 334765890 449363273 481162979 80500736 643584905 587845981 975096277 251222493 834178825 714234909 24325410 545519868 530009041 868392009 771463313 199538452 829727562 67499244 553903689 799932087 213110445 25428030 84678657 146960282 505958164 297361767 569051824 371960691 433880212 338776341 875223038 557167099 136097263 264015824 334321019 871155619 710597311 528242433 387940898 765418435 574375925 544525542 795679026 865827391 271556709 586471077 139495445 2865181 534734954 254934059 152132337 999663015 682360382 718082058 671885966 482841038 971124485 669115774 444431148 419600986 33002555 695314957 192337442 777126952 845403679 163340647 549231207 762204834 134228785 102526001 611955487 257566198 154617364 149360274 524086425 980602493 653634348 711737864 417521947 314025907 597173812 867683830 214291620 815040287 928549527 813305703 571571898 573900000 734680963 591741370 651437919 706974043 563354563 341926124 846173538 420124740 371408213 979342800 322874271 918351694 679564492 404678949 580426549 27170902 868796345 253249938 78874370 51081011 167920961 578327077 376768778 980214281 474278647 721942924 806064282 415192020 739788804 438241764 775942797 195010028 862648594 593570831 166661752 776846589 122432294 895676504 507325515 215916214 524696851 629063359 737053056 170995888 877102124 991384735 399236572 485007089 182696405 393371666 441012139 747345194 706545633 212371243 498372291 807774734 698855219 905843916 418248426 177328639 155250392 313228166 434638472 316160679 586600831 363093648 702971632 427550151 374342845 121966131 117832578 205706632 412131857 2925833 621194075 798345655 995809645 551597015 68064443 688469178 168513854 634208136 73904278 636316539 459412102 296965988 675924629 109629264 99883530 241862553 810874814 353943266 646372154 268090898 702637035 319134512 316031250 399988250 603606209 227652721 205152057 240966961 850099868 40312973 867403682 936019972 984569328 677277609 291403430 641578078 776813041 70152028 9351332 258821546 417447304 88475924 849631371 286774692 631140814 150952329 454644592 880504766 731144161 10886675 125468304 292169744 202953571 691694467 613124950 850753182 898525356 984314342 813817005 686489359 909429077 880790823 713193097 435271011 883006675 448610619 713865649 791799514 872725592 381877555 643404475 198125325 951704529 941685068 194422481 245242460 583185037 298644124 258174810 79054255 628486075 387188681 782268915 420150019 17427481 394908509 380186860 613244666 716935757 661153558 997013777 730281571 270960861 8899599 824615074 928291935 947681807 818614281 745849364 304270030 570363120 232436259 789030636 361049690 681008543 380760461 520402760 380547131 124029542 387650349 177373890 344380690 402096207 226240378 555299906 270857846 155217053 484966484 809928413 829407559 67722182 405762156 460274128 62363989 557039840 989753541 353578485 592095092 313093927 610579317 549716370 594595131 709349719 919516560 419091828 86348093 753521699 547114931 424148014 104619261 4030678 767709858 865813059 570743351 60209125 474218599 969084807 589529310 225789936 931090180 934712689 450321739 480008265 248211097 401272977 604371931 781490699 351044223 867273098 555974696 413928658 479509888 375866373 210485268 559181943 937312481 709976901 569715437 585132959 750833503 279035737 233173563 752198471 65860248 837768894 703031975 548059325 656352897 260536292 961661036 26416066 360414619 449710858 315388752 58097134 754996768 91283025 890878618 456596051 23320241 146041802 100526492 988353154 45706516 854051799 657922228 675585474 995974446 957022834 990829550 967736208 73714796 169133949 172313270 788812545 544411977 362522525 360190498 833465864 268665766 136653746 628374637 342933075 186364354 785167807 272230673 671888823 887506555 173493684 978422510 309514281 260746458 650067725 46390408 228136475 366353967 12912398 819029389 999367042 462023288 182483313 502370813 953160848 231261982 859782220 824086630 141722960 943631480 52311621 346827448 43323188 573297865 863314473 201382811 764332294 611207369 695926809 939766706 654924144 832288443 245075985 158616525 379380012 71437611 190992519 537870082 141914442 879808638 33187592 738171601 878203816 91872618 762465374 815445182 472357909 950997769 470972933 101329475 601648759 352920487 873895456 572272237 829354320 514293338 705121165 169433532 276946867 383003330 64907260 449116081 602823623 197480579 96993310 243142631 288860534 350801334 214770228 461704477 304126146 682489344 531447299 783258255 684470767 904464231 430766817 236420285 314917842 32929814 189730274 859646245 442586204 803262737 98984642 181496386 966720910 292803185 624539935 331028086 215369072 882256457 400491785 664406949 936799700 843998870 405779354 795453578 5096589 338800414 531253868 768478507 81883895 170052597 705746691 601159876 726669917 261276567 572853341 434584377 420799843 48315439 891385672 989701202 241701473 538080775 534302025 958044087 982001168 541409382 521509852 935393924 978034780 251468648 23204614 541608218 449864375 963260968 107477667 256166546 538295692 600621751 919057275 216289653 343993654 728302579 400347204 592225752 819460845 1695553 285482611 35228382 194648018 359231682 393160130 339734549 730667135 170585979 24268073 52126181 925452480 837946480 105788717 977203589 986990417 525309358 366027450 142026754 955895672 287315971 807191498 170533777 660649686 841131466 474229841 616652871 261306076 613106128 281660484 833211485 491497732 543916199 838444447 985835909 813627165 292610708 440335484 213361501 84360515 733496369 483837427 512185907 176516772 737412054 478251651 784020110 620378765 514104942 86941426 647514523 87914913 217890280 320936678 901964885 702382957 101400865 194747380 466296201 772456141 248358714 281944972 368951982 165536704 537449917 273596444 721336667 305246711 36471173 418443935 39593649 593138722 737933174 191836617 395347335 843961420 835179906 787614339 860660334 872105957 652216019 22636329 699128933 620160830 316316258 428930299 622783202 699660381 362776957 470086301 672160854 301581310 169126624 956008589 655400853 231357533 30606214 740056833 6091779 83761478 756459087 770904898 752077322 962107278 719776652 331871308 436609272 248436153 718074109 866833418 887901698 909264052 866462494 31250059 600792390 627276739 291327903 492219452 161957054 271773096 682960005 2970562 883504161 678599616 907517084 794188063 738153559 914652666 821678464 11070468 525503177 58908944 525833858 675661509 448280310 376832405 295843863 478880186 905670477 441357155 249071937 752185680 394104549 737404170 254386025 121774619 266325047 479690777 552761281 827314828 933186330 27183774 341481385 343282720 820757835 405941447 413859121 528960771 706233863 167383245 803165017 794386240 928907074 178199658 598122057 415040339 806287095 160735667 613806115 479977983 893740213 411947574 509571661 338666252 990366658 304286543 241635421 776956810 532118740 46977758 228703862 615971060 174468249 180187575 740879836 483003957 490060439 515376115 520732358 885911709 833271985 706740388 574357061 293650993 392525980 160123170 751797830 756043973 413580702 878118508 716501065 948413228 136336916 23942778 464584263 977506301 302206472 292294149 99243809 44459657 45324139 51204520 525980121 225946784 88658938 777666401 683275424 715354774 699928516 413496585 861932297 687345199 296748636 275206938 177241530 251547716 905320752 368168567 989928070 948815214 592316181 800081353 11057022 912919658 969007769 879117102 507277010 440173285 745024828 223593540 228220930 740131367 211686184 55702751 658506486 554788559 647549185 94872578 782445657 46317189 191305762 936945243 190182408 834397367 717752384 999302287 467589815 895063947 674719235 442527130 318921099 372583364 398153135 767424876 817903901 874364643 825942611 865772394 514827384 61140813 331306740 810975944 350104980 646114101 146031412 262157400 742258581 323225507 806551659 775259620 357569606 110267532 784516615 165646646 739951158 116191072 772571159 297899356 280184348 777849272 345492300 313055113 122962798 988479443 337339120 169787673 170296724 552935592 527834441 553765666 466507064 78142378 809958505 31049472 651900854 976949272 483568259 561837881 471265789 444790907 905099316 341007831 677755397 93829463 795559574 53935285 486885438 330688748 675604137 782876744 541645987 782257318 602588078 841011759 797794972 470954978 451092417 611781556 904733847 503574882 594722349 26018958 852899372 363448942 737636335 589224229 591756913 56316983 519744961 304828332 874260889 190973806 479098174 341486073 706635965 891389557 261444957 87018886 50570807 25607467 623589971 87955522 172318470 154283876 334772051 134322828 871081899 177584170 398162129 638482626 927350741 428914608 199127660 810270212 401973078 361099323 754853156 37821535 328795236 565468919 125588483 768078305 310888315 891703196 123811684 491939883 8133675 885834469 90794629 478172823 132752492 471814584 890317118 848836382 381615307 280440891 716347288 28066547 421039876 70758724 43193004 665001207 726245656 538279448 954265933 548171911 263059162 688969980 822969036 458552352 467049341 699004239 430069644 919217078 206520001 198449424 5086397 13086612 702212347 703366923 373007534 67445810 536520540 60919721 347046387 535027625 538122255 875366980 393802465 511733061 783369601 399938053 969790052 91012138 990206920 154183302 793654895 127389210 483710585 90040145 950063860 106692598 609653167 588350567 901543530 454779939 497081910 619718932 748043382 195745301 482824431 835949428 960335869 602697584 745396833 930645838 814634270 762735848 88793648 823424192 423814689 16694990 49743944 248674352 125088651 302309033 750546591 633229580 352355902 435366930 202143981 813079178 808185057 274877609 963708593 28477497 161897757 454406805 787161592 296904558 653861695 735850566 968816683 649737474 725958948 596817058 458809353 897022379 299184412 57260761 108368056 970396897 564464062 275481488 271577588 209153745 385562060 214934520 436083842 880170840 688195292 112519152 623406455 439714920 766259791 185334878 689249166 887303560 533759817 447511792 445244128 786149069 136069505 835722547 569292807 322823812 829255833 344971111 425036635 653681562 33114380 434269773 478994252 563446934 607103074 362067347 719083884 534988020 786119526 776410856 749811885 970429013 278047406 222492223 83051511 614575341 993949266 951341319 380856700 595596971 328800564 698206781 835461030 34468832 831668142 410705253 175684809 259432557 896290969 972465000 9405507 583546997 463904002 796260879 31535855 803033709 1547310 84908083 724587822 601044113 481808964 770680170 908454921 2198945 917591801 185893227 840702563 4307677 712532229 527645723 869786262 312602047 496285792 926779772 421163354 507424532 40256883 65421094 739708272 978287539 107333258 159433420 465165951 573011655 861652709 567904586 75515350 489798497 240411507 225401994 669635173 392207424 484473521 757670819 186605479 993489771 974707181 763190035 386856716 47496716 428543594 402308277 417508263 557748291 610285139 867998487 404531334 599745530 844283550 192399780 933980180 230508130 144959309 414005598 297723132 112392942 434238122 443328088 127308897 600672915 364315314 679666682 870620655 508558245 802035161 38118215 423191053 670364217 779307964 788877312 656417320 964771886 287166336 516051025 791813472 552110648 515202491 280724639 366983936 857958726 816108247 313861821 697722955 17410664 863706789 623062058 865268438 619703456 824296533 570006589 508236436 454293027 739863871 576750982 765057007 901247041 121307383 500383934 897052232 912966718 487334293 397297472 874359460 901655707 71791807 70571094 68566685 585618591 861757090 543729519 456360328 560910534 888376715 873691206 998918585 809872149 629490246 957629764 356661004 640819329 893651541 711909866 61248111 801064702 861065141 304692568 899130486 957842521 554968326 445000310 617244949 763893167 213311899 990625732 424352196 441796787 401878420 642374988 477010700 790904274 521692430 25264868 123161898 426264210 209537692 11191321 388965994 127707589 361358084 278329256 821210035 597338837 963758928 288885490 843348930 861261475 571885565 164268293 114359127 391762935 85774148 674436000 162216334 725828654 731649456 270424350 622018332 730952752 547425586 942820844 657004755 610347735 613085700 572162538 23864638 545844908 63912150 88936235 361992280 67681039 605754932 76017375 819820649 75553423 774669030 522858416 882673607 964270798 521451341 645810891 950274807 608649874 385566245 866214524 653085011 712553108 359539877 697800722 145963532 464238569 461510889 568973649 915865014 102428465 740657353 484750712 113936554 931807277 574995168 306126914 321800977 84828002 284646030 832667323 183708546 308168241 260049743 468217526 18006543 316458518 731727372 649550525 6034786 375132645 133089011 477361129 220436992 271994052 515509746 612382905 583948998 712134213 197211087 42149039 577555804 559423497 329765044 350602265 939881233 647876783 974524236 795698312 133534724 905449000 313569468 103949274 766088577 553156550 764462714 763665799 783278121 579053330 191951089 294196015 62879299 942217114 156705078 21413593 310357021 282123616 43324785 644402966 416700348 221188968 289051098 406076901 357490645 670149858 94880279 138495515 426761166 840543446 479312473 115262809 714643738 376997384 845064370 615040261 874288422 635856156 816230136 671136331 618456039 433919972 283407354 72546483 785506220 836975 523748546 657112806 133990487 157826744 755536045 538654487 31104503 778243935 146559155 567450462 335554184 566006850 320693688 392819285 860864424 284431235 403447426 675488189 129558338 922188241 870249441 176237884 29319420 831766542 551972017 339811438 802008318 571378222 427059956 495650332 131644244 232040003 989670199 563470196 784429996 571857562 730933262 299222947 235649213 565322608 141246765 782159388 598888016 566658681 287492813 912634065 198601653 462177282 950042690 116919720 611011091 939789969 483208723 787164666 428350502 775404065 644514794 305510025 541567444 7359352 571867675 308233996 674457181 529899740 382052191 333130041 836228538 721794252 709254117 470978235 459778776 349111758 237942538 112489633 631051373 868965846 333914315 428495406 362432474 665651147 246637300 413447838 357200813 122907165 997206808 830881329 556755329 576328427 698159834 522047112 704685438 642286479 178130756 536507483 375897783 524438497 152772909 772211519 658796556 793004314 117913193 703686299 17511326 196039198 123129112 486462297 959792062 231305433 732438578 659572015 423241016 242567953 527512703 341706427 483719867 855683521 58687365 487489532 13314974 667595175 13954322 745593796 778118700 412283430 951657800 209169624 124332089 734873945 563383314 281624455 485378776 460381701 414402863 847467738 7362121 127272923 131540082 593880117 874250195 682335030 443414675 113462206 499326214 855174137 183828400 389007500 906596375 437457819 177764266 288027466 669031640 18589651 53629738 102712164 504720623 835233346 196873221 238671016 643732245 262287320 11178149 882149952 195339216 809158758 698581953 257556649 368167072 434577224 631839472 560994645 104579877 270370147 472778098 331186834 91898549 175047620 41475549 953172073 97247438 305803419 597295193 557182361 644948621 293899051 744757824 251477772 130389007 441702037 890976694 27744854 340941060 164367302 580640869 810314615 732193939 567232129 412342469 607921295 9426824 634694793 483456826 273172223 224649855 508705964 622487774 499528342 159659911 808000446 562534001 969965737 711800230 798722408 50504563 598267846 243785889 35492686 638714612 655302277 872951846 720933368 353067190 136284177 461763687 515441495 711673132 131888994 739804335 570075053 363367315 968585416 352878098 690294093 552866740 455266533 946628890 529147802 161681277 145731051 459107039 423947316 517542086 764326623 29282129 877857034 900946403 615792306 220546301 209899675 501228346 412689840 230474757 440011025 309298143 583944385 661174678 714097080 475246668 39381798 33221855 709136183 386819916 670563968 671797261 169207528 805091863 195181195 654816281 704842743 674233086 958776202 795533550 639507729 18792305 278631079 886119610 503790150 30937185 477335052 478372470 179596577 238409119 999191173 516780976 772597363 654638144 613288106 306503429 572024750 630040913 933349386 89864161 453570505 587459852 877621557 796255372 356454279 843769432 449068374 138264903 711340820 418050600 520950487 872915600 410862666 530501191 488012582 645766736 985070780 435005450 7446785 249356623 654844488 492589168 635230301 264659447 666952621 756085648 952483491 687745452 471197654 44188996 180730761 955609767 403372066 5497044 596075559 470088748 53473160 406408754 812912790 753448983 599205267 131191316 736062709 211359056 536863 953591537 227208464 177872670 979495014 707463641 138035885 1850145 113290425 377817345 185772747 751880282 974319928 485330777 904312926 4800656 730898896 200996287 628090703 646341341 804738793 179229560 549372444 638391040 112133252 476604802 739088019 118279403 290041702 19547771 629618934 758495560 868542269 597090600 155598961 502127605 939206203 274124647 335487856 62800832 297240806 408776565 186939113 637351506 296008032 929901511 584099676 344506315 233151803 890043793 164382296 659104739 859007832 124392894 865026340 832626315 749003060 547527386 868430005 98914149 474636835 975993815 555331554 168693298 297900346 2518625 551963156 176936670 244791037 567458718 360569956 511588814 913178105 72244227 702389359 813420631 786130310 579414797 170312160 684017026 511103553 684520742 977202712 874216805 697044780 421721396 454087467 521944111 775697984 689834048 339287029 861660453 184180573 279713183 255320470 133769824 974592289 613428500 522201060 410462001 978529187 891986835 30592787 972864737 484913518 275248750 963224148 440146515 731915186 830548638 973913441 120971575 826680626 401652692 715094527 508128274 236252109 221616107 36824069 133892859 176833803 203607398 623175364 21813427 805201060 500885305 566484261 360724546 620334633 685127248 389906325 838181008 374785025 431229878 46364688 506408044 805626024 200872408 740430324 935396156 432277118 337330620 773473919 911578174 911116016 173674993 278966068 455265185 449941129 34919577 187867433 851182804 443139347 548078954 529063541 908619419 810264579 193289982 786385372 724155269 850674248 363652299 281792233 288525725 176304130 323868477 551232539 202129434 273077794 207209641 294550603 206267119 136819930 481074129 651864390 911204927 946541571 881876989 407902124 158286052 478222431 30015894 51347809 770019584 355645472 567635136 39296309 778024482 922221588 620611097 51746710 302711902 983635964 414101924 665233326 91728181 410896296 879130156 102194590 57453954 39549667 530908539 651505196 751768531 925548507 855130836 868712908 936270016 935882642 719738471 517035056 156534785 888615010 832594439 154590983 146234572 772120459 981788425 165653552 725426289 462351561 238037791 775513373 486204379 93081269 682984069 926398104 525019949 917152738 323859930 293335400 150482629 805387996 756828005 824587044 569203268 252131237 967287371 875691797 352367766 935342149 921895996 189515671 385777221 906516446 220771292 884882359 640266432 141532736 152095701 639770778 289310276 242364130 921568030 539392628 948840370 756787936 966718955 447669041 75292344 917971950 86446515 732175410 702268353 832926608 177531839 273726009 826137466 908868655 287999367 855685064 272762920 492477063 518014340 159752759 901684054 859710111 29345413 446449316 942391521 925895526 593144262 198496998 307435160 974837830 804174688 887789876 954205431 72364027 450721333 776443740 808598980 282162681 285076847 618362542 512059159 458370171 392528663 530510519 653164640 685933246 989411171 855144749 970442303 297249572 592529476 955474757 674418926 879436223 667325249 650458135 203558884 588623545 62397360 669197556 144216495 933919094 439166964 515410567 781623357 535196089 862183753 72666103 997483412 790317529 677239348 891539997 971366152 89741354 827328233 156652884 186292012 298916315 293537486 525317130 914843963 369933923 498208813 783929650 647791995 337392173 779465292 320161927 177785288 617729405 337610165 647443688 747261823 817709825 219013256 723401770 234058415 725589869 991105445 605171500 757527737 700744246 623848372 253850048 592027057 480236544 586602127 182338862 195461641 107187379 559641347 253038333 351644825 598980720 316342826 114141750 335003819 58718150 962189746 645786596 595578932 787201650 861556322 190649129 528827629 663053311 517388094 47211562 825929985 571567830 350225411 418106823 809257693 4047286 112309942 938752396 164901327 417345681 115796276 619663844 366881358 878204619 526389372 529131650 648987214 764962936 291177851 957024934 698301355 773917591 202740433 413942202 770552169 530667017 442354436 124132083 940470564 447127345 485308865 749718111 348378928 846719731 97579711 991773703 662190571 325711346 95201969 351754396 726519637 325872197 630681965 571037683 831747730 446544235 153916683 598047694 914766980 881780858 666705321 593233846 610870385 11418865 518160317 384027299 151377004 972260789 893319070 434283590 642453673 599773455 199550 887421130 914436333 933065639 514665467 128176786 472329158 22427314 138702219 807892167 387014749 250014214 455378555 964296809 126350935 717382793 803332344 574985013 452470973 705363986 588787438 903919336 952025008 958405076 512929983 699173541 778702837 289788808 125873115 985613357 418361686 590240093 168108543 960077931 906863766 932660171 31022887 470497209 315651951 291833301 905022318 110834433 872663703 556425410 732941072 431302634 174966898 388631262 406530205 976447268 457285227 292042537 392003218 71694562 407186774 688056560 955978750 342272658 416562404 345573016 543086800 831909316 787970102 827749152 423021248 293169306 710139811 296211269 52994273 371888726 720511150 847621122 550633132 591373595 451296440 432142800 854319537 970224442 859703107 341752565 600214001 171843586 589121574 688032789 632524653 559769928 22791808 624650905 21678892 187411602 974515591 393364173 859972824 813694102 447935472 397460577 305426607 243744092 61397044 332610825 329670288 975929461 393227090 205672878 369202086 800762079 799245712 202975702 102181880 659100279 300025568 106708291 870859705 809539999 706849399 54457994 565825015 580319238 400001978 771142807 120811925 920862593 493078145 113277444 859306449 251487039 320355877 159219440 22863535 349932806 45221480 520239796 496734048 261417747 475899905 323951230 463014857 578058780 152530262 659382371 101221263 553059490 185582894 911994812 737575117 952952902 814010612 961663465 974460444 481862946 858262086 742479141 539545419 609740955 518145390 584205499 172514471 894969116 820935639 61103167 558156278 961238588 247961045 355867886 230832565 913857347 8224733 68580346 465571531 26202243 310295637 910047470 934754155 237967756 162353618 941716996 411266848 294004729 969439502 329124745 763324368 4376325 683689255 796043895 765272940 809834960 672025425 921259028 722100648 81504105 632571835 134084328 319922103 671749748 108231075 691599812 613263287 593895734 147535260 834690970 774248510 927596052 346580698 48233177 857683687 308838922 177600050 161241481 814593441 927099629 105124747 111186879 340406326 592756654 651398023 139467437 295797374 220739928 218526035 586071540 843833079 938195321 59174591 780155027 111002507 380944222 36935139 858860246 911649572 214969385 641281604 779966639 48662622 520218682 256043835 122948711 367594807 295240630 630190892 140640671 406957531 681248329 492495867 727601705 275202382 108117578 408237019 896685929 767407857 516905902 42082335 107338229 629065423 103164250 372232465 143565541 224907270 27475372 619277408 91294217 757230470 710439752 965815054 205098186 815266600 486501930 693672837 208609225 683126818 397030921 963101151 955548172 640387327 542265667 346239371 870725744 461981516 104057567 880096713 788831180 640732616 282684055 582900933 65347487 508239733 106815508 57275107 354180293 477381278 589861917 403221006 583107751 778229075 755714366 810337932 415961625 464112777 917473728 766439781 853275080 584853119 697032022 230963714 536716425 908542515 137222360 671317590 4668032 900215097 730606301 478335043 389228809 119802207 214477544 120084434 361275416 736256496 570730065 615674503 319932583 564895324 141206600 503265446 389169705 364477886 50075251 931216333 199370527 226860747 152611239 312204488 338191033 965510018 32052953 691015119 985691191 497100691 734530675 628039910 539441930 245674594 24870697 985719985 553445726 606495287 778316957 217559286 478739451 436585479 81308763 552166800 182152241 34144183 320121440 884823764 12339587 807491682 109222179 192742632 891707403 78722263 847834630 761518136 781950880 994180193 996105059 198798585 439317552 143551359 751405100 381492861 559799454 594527390 206575806 898390757 956044688 554369697 407994190 567211198 287739639 85485311 760383698 984655217 663252848 955056195 549915475 609089611 319724412 165149159 217479260 768963653 98727393 997440187 27848481 284786348 868353363 860001769 56495607 24970774 935019691 844279209 146858639 786762435 650836418 774484665 812475752 220632563 626828627 457326949 420265566 106740964 398459548 748699747 665444465 799295209 794835526 142523014 605183867 151455360 573788109 510128768 810906808 615562599 792113041 786862182 433972670 651120335 424917117 142599143 71039254 829107070 835738787 994616893 72565465 503655636 358363455 612884019 287921930 564996474 454953730 227716133 189353244 657409250 253752087 810215769 203635812 324737764 281099570 133574785 545160384 200562709 302528755 38776619 121103471 674887786 713829983 683328620 523972776 6877972 153367950 518039390 379409805 770169975 890550118 537301017 346279971 272922348 879770020 941478954 936036418 883631563 369216785 438930986 133708272 866668664 289620842 626354702 260716745 755110803 966028848 288662303 40104536 296398589 433874654 934284505 645284833 436382564 856487000 741280858 147910523 744171153 633206805 119621285 247014950 168724206 37758326 39586796 973475609 819685023 304350674 830092025 574689359 746188891 925230508 252664866 504242431 975104731 249654786 917884387 526871373 583071176 597224130 367689573 367673416 352437019 440097711 493528294 716229291 106917204 232099941 197146603 832664987 265787103 880196278 623132740 206696356 138187567 496644133 977613397 861008618 315038940 88908062 405271513 17251895 505882923 133615048 157898992 6014575 140599261 922173215 741369377 151859934 865115776 948640400 32443955 145103109 675363893 866537517 649868882 468362615 969363661 164338551 797917277 728207440 415646571 868468032 382767224 187622939 300556853 421249582 542282993 185125117 6618159 732422384 907671550 189469835 347892172 948483245 61926710 650779772 647638853 65169299 829141676 645626472 285294438 834293882 171094969 915447269 344992784 66428249 332765305 256051495 570795657 186536895 608680295 708596657 604692779 141264628 2558379 583728817 904365047 746699281 299170580 603675926 670737741 461722326 523792752 728286511 416406324 454546514 598656234 596763877 687536877 163556009 747553657 767772659 39456434 748692968 340883587 612722773 468956249 128836800 761750086 232754767 335905025 632488796 95758191 243144938 880370564 718857971 481567141 475277235 711785316 357024022 578833129 120693985 428107483 133434130 122258194 600214433 933232706 602092402 536705263 246850964 128750058 717812758 591065044 700654420 772894751 10365555 505958535 742442642 351160264 300381227 333971171 448689210 806418532 196402148 282957446 88476787 665948114 433948121 166856807 446711073 77986 921316812 272696389 77870349 967834156 886339313 643987826 897623348 669154929 187478986 190599091 694385773 980770897 714837409 519499796 305866025 552342402 365837947 914215273 95115876 339151561 817813910 646909144 105442807 355343949 341919201 573585732 911155967 42562202 5064716 681795126 432765285 631953912 875122183 190098001 544097312 460081385 149655230 821148544 254689790 860921718 899583398 42950839 54032352 90533442 345322930 333574360 126530796 983256567 357593711 339616101 290893818 637805862 341380084 407817828 28539198 998800615 298944686 638309879 592251596 275563703 925619597 413259586 687629047 123992260 79186189 824115016 579137708 95848971 900976050 854800606 680805906 32369656 960633435 555103870 643457295 188036066 259200551 898295167 6700175 407883462 505625868 277433946 174391487 997553323 472662241 913075241 6576045 602492981 55608349 640981505 505043078 41413945 451470580 614531416 579941613 653744063 963368099 367098009 507474252 710970695 771557066 105352317 317272502 346945717 65808561 236802373 214810747 267776272 831261376 404227472 474310818 858071165 634839312 195084944 318829757 770492001 80981352 417915411 844489374 270040686 250302633 689264990 464000484 964284758 403828188 166436659 129379643 846317175 29991749 243330366 313727615 88044999 446922093 686372325 55977329 199251344 928217375 960403999 454998204 501343242 477133661 894703027 517751388 982723132 349319864 539110060 523382256 989977570 742680077 563554817 657352430 558087926 900804893 394155875 584471634 13042649 146583045 553383281 743432248 388150206 996431447 572439739 24243253 994085293 583216338 976507596 101955166 54313985 583907157 506724470 94935461 181655037 66881762 133786299 272788307 794735610 731107773 603504745 547162557 282350142 763566821 181775355 108843854 476094818 294558087 565904735 801812133 252614863 352527151 648531365 88216609 407068653 478378588 866748224 996919724 480294221 718838820 710928156 10864625 685872970 9153586 805433988 293273650 298981189 244533651 261319209 11035806 256262018 899671466 949252763 507319631 588561684 445580183 877195506 886904323 724651424 664774771 222067105 502588784 124828458 770898076 763295660 882785228 280426338 87973130 171644573 714556145 513036642 209859072 437376090 662779251 243040283 349316903 305766715 136352966 195696915 102278915 748775098 378892519 262379174 528789458 374680170 787433538 155306587 633810592 6989703 763341491 234560953 898350797 6792981 476393214 140433432 918894174 891326109 305720616 378437642 560289271 945150689 166326242 98823831 842336854 979609622 725716660 301853303 352544735 593141701 249146704 663811514 849801785 35614968 729570021 877992439 150821498 709815931 54761784 239320549 217897675 47555485 344470230 216711098 724756382 620853070 700081324 443027444 930500695 310536526 408189900 637751364 124914625 207018308 18821382 499959551 106883106 562042837 75867311 291179602 556652767 733867296 725432842 981969963 232329571 477388238 737050734 37206364 331075322 715041260 515986524 800273132 795259794 919625377 174244035 427033454 557600761 525298359 922690984 69666725 771590262 237287254 729342757 127421965 555282217 579191844 741160754 926500647 421233924 515291485 420898172 351110571 622735071 59264565 533285124 146789178 655122276 898310259 308129339 246147523 227518457 903212188 224206064 486040951 387077973 846054612 679253165 575944236 522038169 848815433 524726738 829848407 78295734 191525902 309080720 777375501 300857541 337009558 487889910 330602993 153503802 896395293 105124505 844101410 355483704 350774981 557721239 908743228 101999848 125868890 9734216 729835389 683308950 147368088 278790079 945929703 848053798 287777166 471127059 634040880 363555314 460537146 764117896 553958843 652196642 451895535 373677048 212082883 187012090 223544037 128158108 350017111 258958317 7613465 284810363 361364696 819624740 492713364 671251801 125661181 546327576 779902258 878679152 319637498 724569379 92248663 370574586 876089539 654562005 271173477 213624374 655374038 183787716 150772428 814241564 641226296 831626514 28020211 491951867 88013038 171450484 853613224 600500308 166611749 272219660 882011855 550918221 85208999 543316776 846352097 654517978 672882928 906732895 4663551 627984971 617962547 820817848 62140383 647442352 527007962 129464770 878419042 53272181 818493949 73364754 4605546 231877865 674645134 663707258 403682267 525503057 712461392 488822486 659583822 356856276 944474852 464305452 461731934 397285966 497350036 375424277 252879985 871820550 502715299 857199933 856175155 669930353 972862681 497876688 746637316 936099329 346798369 745502281 882412713 986034811 827835449 591753937 300852252 700847278 762158385 855830546 585256095 7595928 907575451 847734780 377541798 454367997 591079431 930061718 42774294 604458472 315222037 975529588 200075727 825339465 385045434 566682778 754906047 95095192 164510175 535003172 938105236 132690049 445058401 755143424 256085867 348275888 588397369 171476749 262730355 762470258 195746268 114255945 548395813 796728995 338881694 696133020 83731346 163949332 382438130 638873891 880805342 559077182 163312336 284570241 544139992 146616205 346588476 421755544 408323831 993471117 345060388 479922763 169121054 346696607 6483880 814176922 209046288 351976113 988707469 921541560 899159978 727236896 963901834 459133015 490815122 715837457 72996284 636902442 682022049 890044211 112281996 709660859 104316784 942945827 502239355 984897518 67550661 215178086 690795363 589339883 120493641 387955888 761506117 136288564 240394174 760134040 244350332 358809029 823730810 345406400 308797619 524109341 984065352 401121173 649950327 383269783 182824264 15650129 899400715 979640197 118725868 386380371 116847632 348371029 69559773 416258422 521730501 631101793 231982841 716249432 266715090 301137649 237188028 5538612 175637595 422299173 377343091 568689797 976404365 751129497 173907785 202529435 88729427 353788253 720855192 568769519 616928481 539071475 139402115 223517101 884452616 776462668 954849312 771284144 24566456 426886731 800756393 344374620 576857220 176554338 716082188 101428030 249789487 536714400 364712080 294611401 861327686 35052449 6471473 227341990 697207716 38195952 649559081 533364783 207869111 579565300 444558127 877459849 765199925 191547764 779084992 386326604 135531659 488153068 960705836 804952265 110986435 94399438 598606454 994231815 871123159 952849242 407921307 944050521 380703916 78486572 278712270 142552543 567943487 606395077 486469240 950050606 406602083 81877183 556733047 761436005 444764982 841793981 74194060 744300762 251347774 261623506 497528141 33990797 311722071 677771452 275036550 376555601 169593063 758741532 569084609 666565111 577114608 400957001 846993754 42840145 805792449 156244122 118754596 15189351 2815986 58426223 748657122 851073304 598198678 924673935 857079513 498679406 778846469 485558770 363345235 844905475 457220989 271749005 372193098 542250205 989118628 922623066 22489265 975600562 714521548 463802515 929520408 268652781 213008944 386766833 191581928 391582905 529128741 567177464 26681228 156237454 672283176 330457961 145564669 31924772 382125774 484977359 938713246 574631688 191806729 599919353 608128907 606462696 34533735 176240904 631758399 803655337 252498977 754116145 546526092 160305125 527810162 107836298 760794275 473112426 199975568 857857630 324938657 1678701 717579386 536468256 235590861 464255129 768972157 780766816 905445033 522968900 928329590 343262403 714858318 77321096 197487108 988159891 167504650 999540967 619853545 347238738 467503571 919986881 414741825 737972471 111725700 639990325 671159810 962242675 598153912 448514014 778961229 728075884 537376623 264533560 171322552 174985450 769397451 499905515 237326208 112339195 615498320 25042342 844816417 386631476 919854457 344222069 781806334 187145864 246747529 413417805 456200932 420794018 473632598 19940799 53174895 796051628 177304618 924653807 869076301 586701657 749559236 223455859 678759311 55789079 469388252 235673691 993902658 880898093 860056249 534798461 915310305 703905660 58729090 214617800 915097291 100690858 288524425 416287884 675128182 325033336 133565634 129111930 476892487 106644362 840272811 373193092 530424959 161292371 845704090 209820250 849015150 73334108 263685964 911339267 116039267 974106771 901278518 159470579 237586060 260051196 328632 141478065 578854117 361676816 81126033 805930105 762823148 263162393 828761099 974251419 955156531 173643277 276042910 418375743 457617010 642024786 409160701 334464862 144651082 378405756 938620512 784820423 605748503 316108658 397246304 112255540 295057176 138436481 862768035 611863619 335229072 659750931 37218009 792881245 566148347 868323087 242567483 155750852 710512587 794927178 889792056 21355004 693398619 516249933 600750993 121464830 68794259 518758968 494573852 482266018 920752379 916933514 338448146 698949050 562737189 652169503 383883941 180451454 332091842 659324910 515180591 370861234 638930452 195081429 693634704 860254146 767120751 265348697 633707243 882081808 626690862 977831953 368708086 581871225 367619128 895563207 120209695 198153936 77920407 670797864 810416246 879905535 873665422 87000194 633815467 158636308 121413184 490225960 634788513 70286715 951581369 789648226 150203626 653700162 436145727 381632333 43580480 42590406 401516231 707739759 630383733 448170662 463274173 469621413 854963688 212767092 781228203 756438846 825538564 893075217 271428407 717809015 769502155 782938346 50201881 695162087 750568362 207355035 778382964 497008464 828455953 230155868 63570464 49917974 351496645 464121447 199007242 837741769 997550578 524237925 529061259 130421389 738967416 687855500 782374925 386719085 840921833 918986348 338566476 560670843 653999260 90319569 110384681 944454439 633800682 329032453 721496264 8290094 941776216 666324775 779773979 304338241 907046320 180341813 503018116 477898 79529479 14766226 702579043 827056558 164328413 517882204 407820276 674158058 243304620 62980209 406798496 993642668 440848499 292077312 702332217 563641968 437070604 613385563 294461557 628156648 145246956 621387858 941333707 625559456 83857928 249360023 986208885 51422422 905403272 187867595 424073326 454563085 342162417 349710009 491921808 917213846 413387167 679733470 324278749 48884748 268771259 626749537 827874474 25485247 167141841 375396299 421514156 267878818 501566551 921188794 633135575 555841700 880950119 914862027 293842726 642986084 966670097 656618173 706124036 942391968 549337207 99896622 901410461 724039253 726219045 325332447 763727209 311679223 168844519 577740219 668349388 631944996 473811422 686825552 115855972 71634213 866610674 98368854 62760873 123220708 394990392 201071282 608901441 744187899 875051315 828325826 72986009 415319615 732396232 28396471 529077007 542711056 72113564 100922843 160218645 769746943 976288928 399824702 415172067 991403399 483275883 475059837 266898375 992583897 575663806 546276916 254367753 531757648 96637831 347226664 851156240 806195039 209543609 590219217 118924417 544367326 685795501 451661377 214258064 204566462 567643463 615801446 298258939 383214078 795518526 599649944 788726809 144007227 512542446 843327039 23807676 661314517 320163569 37404354 483095234 800155748 997408855 821632204 230146172 83078546 353494219 961707631 328617908 921182410 489099119 673929822 349273468 526494767 833480313 299862011 960976688 43569702 427677275 927184417 516516496 280146608 388893162 486795792 23034837 245128555 270936333 609703682 995797882 194458979 835771309 690200940 389476094 302741486 689219731 243791548 715611111 722250789 12101064 707285614 667060065 609659405 470057789 838233846 436795237 49683177 631021810 361483823 980952215 818089990 449761254 186705201 420258248 599309597 450265732 897175755 139015726 450792628 237412700 195350854 934026385 866479736 577738282 663948345 325846626 772635031 559199669 668931514 480932544 258097304 327526656 346059418 69043008 418428881 79075055 297153467 747571173 460815058 773426487 294779515 764597019 366478326 25960086 620384332 777803443 402131566 313130044 519310613 409961998 391803333 426488513 575968268 68863954 147299064 870388745 156914447 256746634 172013656 345093772 43791171 748360537 373373148 951922529 814598284 198554084 228866458 833462155 247004068 976590648 404729235 520127182 990050734 93645134 415694970 593100051 340270461 932287682 745356741 548432002 670656286 785305961 393922291 506022289 804224626 800603915 207754224 256800338 489761338 263780037 196218789 980358877 779489804 474676501 43445926 225725547 276005720 192645637 861731126 540730558 408793508 607541668 121369629 635235628 745212939 299872903 630963511 739137019 425980174 948900690 47649023 71625613 999528879 613651983 864719325 603535688 647835651 190259024 835733443 799598219 686628854 268202983 499922922 854341677 886837184 291577835 54412714 646346537 355308717 141149549 841037772 930466771 646877854 297739971 618677364 122693464 307045354 822758104 39634269 187296456 236886258 401395013 814133267 261265819 981476583 576227584 432636025 754549883 22887748 118898059 995376279 880762281 148345624 192939304 669560580 819708244 930787066 353421302 717887690 566098497 95521480 128003956 344657737 43354507 514197408 377203220 409372864 314389664 938218780 670134088 293910129 189025638 287301790 828174636 900753969 749866696 884181086 98347970 826668752 195759344 192801217 475987540 988038445 276420771 685007213 603909919 279232977 240044459 817411637 935457926 438305592 439682667 656610021 253813112 857588939 436786037 6607707 186229176 658602417 257970698 209503544 474010043 978160503 943021823 906654275 564364410 273686473 543882451 608817698 657241743 349449463 553393505 900747992 178795973 76205455 9838462 64787378 743453340 135527175 433592747 527208934 37728153 214743307 798022895 519695537 982472857 934780863 378529247 473785721 790966660 606105010 8583868 586540749 647465287 718633325 597972048 950960118 251925722 704388822 477832704 247914252 192380821 754817494 180080229 592903921 121975357 580878433 279239692 747842121 993131436 653818595 779867607 434195336 813493430 795993602 166692358 883669503 65075401 691929536 367627236 940963901 42368449 414582104 853495900 862801560 961959080 319205936 887827135 570877853 263874016 7983107 778569065 501689865 248292493 717753075 692391402 420051132 850734184 104180345 32739552 149237827 303484860 89743268 601469572 755876600 810491802 124743838 782175936 133890728 42804125 800668729 219162459 709232838 300755914 765954245 44769953 107582041 523211401 475152947 749712886 809206301 191431808 142003421 621122189 333126610 759420028 646385101 403351873 720967741 456374803 84272754 106472474 434216101 685321475 882948840 514568694 504299231 201268522 136452057 538077815 27079958 68670209 460397018 545463630 32965602 135237675 104232057 611342229 935184195 629810624 567793621 609111644 366243289 848509978 235251811 470965833 881220743 74672274 603819563 301402674 882288787 809008298 895297654 438438213 731719928 499943982 986685539 803957548 838733056 513937018 116443643 908587539 12648931 117779663 626968983 715740653 619893674 33463362 388285272 714733873 855888882 312070384 269667464 483418147 145323644 697841881 154147143 149323280 128678925 590537746 158251873 480156 332223062 193033069 990013137 318892683 88240338 406444701 502884293 41735418 162584642 255530281 530422874 400922717 254312991 94180853 839511301 225949870 722870444 147810123 395204489 627475676 530561010 168276577 275908598 433534581 629501149 891269726 807898575 17523687 19839043 219144514 287763898 446158088 459643824 533537521 283580132 705949916 613814439 620945513 263520532 977169801 641117295 213944154 218061115 666797148 886709887 40735777 913480399 411774108 343325646 288450014 124419759 221890275 861569048 31505883 932054525 125907980 989605430 429708575 466871812 884268824 181839325 664216186 9778339 3767299 826148015 686142392 492222155 983122200 76388813 269838561 497604246 312868929 245915093 79405609 356785563 867388702 559517409 82300415 70449718 991138771 109640182 493550552 179109220 207294609 502459457 769923806 117297908 535183130 359866409 66988880 266598920 76371456 531151430 395295474 27290294 454142695 437743373 660909325 610957071 250525800 892216548 706390174 652140151 545963980 894802979 881992898 175325317 246021961 48741340 738790553 497736627 979689625 699561093 206676281 272168594 30034789 311487482 638046948 176491379 980045209 54239780 620574608 450570414 286972508 786881845 903182810 316812371 806509931 617697111 117124100 508438995 94953265 531344815 417702569 84060272 629494290 10416059 889581408 113512164 624747051 945761172 313516158 126410055 391306444 409947753 106689677 300563941 629136411 809728325 600791927 717075238 249705973 67736219 394957775 566004077 876530795 401626197 107262790 305664895 910070459 226402233 233410281 289255602 150955075 108091519 688780746 826348336 321418513 386596632 341142859 561688536 620070297 74705560 705126133 793382859 962774844 959620571 983640187 632227012 367882369 409980032 294759015 222346769 883037521 872701023 594454298 776125770 449316265 263416446 695537278 452265816 796601144 325610619 816353795 670589100 823058421 825489528 390979042 121306623 296429572 169378623 235500141 421355969 283702024 591932082 655477577 837551471 596491227 723112069 559745295 723390743 761167846 626562314 486227183 16673310 747559723 798064946 153817629 995146993 927525699 663953681 101084894 246275928 217345151 68174839 613274289 455186328 497804018 646406134 429297192 604438471 244632910 474427894 957767832 822498384 25562708 712514361 137141383 202452864 337948091 92860364 251150788 469900615 685644560 67597512 153784293 265647457 294122030 566469554 914098035 591062675 429278090 207151853 676128559 717581001 786615078 920006780 905137740 599742482 486089387 541654880 805034362 157123051 680403833 293800250 250912584 993660137 630363658 88983671 227970445 770605120 856995260 66970029 341560753 917125173 802410832 291467588 783432239 2720182 225979741 358445911 653581752 254228490 830447678 401985513 101995837 474471447 720006055 170560175 2975058 141544108 92065821 702857463 784578337 311936389 301622040 407482601 483994421 573521761 336705651 323091614 765293743 396782579 198708150 848390508 386524541 294437182 180076980 909180779 429291949 300808844 522516963 816691500 263530655 594614299 448034653 322806936 277454628 286544451 223798481 336149655 989081546 621787569 559234166 808950890 852358458 615596297 76402641 745926130 654136211 785311770 858867402 285282562 691894726 557397001 180772184 145593446 348888710 946498870 622078791 624119491 576713955 686253210 945477846 965413554 125683630 98926147 735844290 331034831 720761629 398091871 743243036 610600573 745941867 317798388 587529232 345814020 942190701 552617948 183175806 134694874 537066905 652042742 857245419 397884338 470293965 178458544 608472679 747522834 36161467 368889760 337381007 949405241 785635515 262727814 315154504 62584925 444696170 606663469 803100989 938440368 846261908 129655500 598713119 383939040 8764223 344378394 721721432 645107787 929356991 261728071 918131914 297372349 707420495 290796100 120581107 964654544 324682915 92941907 808860749 429026347 247607110 883328017 563816441 867856674 146367023 142583469 333636936 209931051 275957410 879437689 144197391 611030429 122567919 140838790 17882283 418783436 165610880 981392749 574304653 838639742 44948798 845201351 368120949 569370649 562668826 759212589 157244250 217934356 539773504 711392538 409950274 852632134 578056808 855884499 58697764 459116562 642389678 916444784 60917236 91173466 137230831 681731167 693621553 676427224 171577962 445814347 674381678 279967061 952059044 727160620 14642543 506979342 600389645 657445570 692866058 501717872 368424829 440308454 930942510 647428140 139562313 835749244 279276075 333333349 299240729 269433732 625738228 317096600 424155533 327421246 490189840 690928637 631944350 850151971 165156137 819954631 262426224 775933008 209153473 69493683 530892086 173265414 613932112 518231077 231754859 628832839 804457207 592587706 883588000 876094496 168202201 487310508 211569512 532086976 665897314 734226248 718959365 777631874 588717673 620809264 967092647 17393067 175401531 613113880 25854640 291159805 193393314 712958876 841691945 122516264 405745633 445431223 108550354 743787915 918625564 883871772 272098504 327755861 878925163 396185472 232427937 952354521 179042532 328520637 117224026 87696121 110518615 482612880 599792037 984566111 28257724 895857347 12854917 32489580 568094741 556273174 637298239 16578303 31993725 738939077 724024971 800710279 322003638 452792595 750237443 867870470 8818371 992578580 829474472 248422290 75704564 985519838 280236088 188069840 740004264 93253058 300289137 328069465 552327971 548051614 188314979 990802807 495837527 954275518 373277178 31558656 88242473 639624190 94259957 554721347 691237847 312668734 113793059 441774335 292226921 964002555 284437757 262794481 11633646 460488274 80774867 273143879 603274561 914661678 38998439 529038012 379988719 517276497 144589931 741343018 964018280 467767154 470216234 321627852 616373411 628963118 795721991 785889697 579848997 516966975 676878643 304329082 84783882 953211158 97420244 353344538 371587941 240161318 150981674 988462186 8280631 834712243 353987631 81168798 385428466 750075476 382927879 638153980 183013988 949642615 694313010 943064032 178013081 369108604 64427681 598415349 813546446 894861750 3903784 675021751 248840433 551636063 991766017 953906588 275522084 407295858 415464318 927370471 263105653 712019965 874614721 3940463 134560046 537945712 149651335 799812052 341525915 622727951 288150981 988576441 165462439 334729827 248327646 483560404 32930703 386654482 908871719 40215351 763168372 766387168 209145538 68153905 547476790 834817595 922082202 218742662 771926843 385274605 712013072 464985351 789014827 978428605 135347664 899876292 780611211 463617759 48889081 656451339 541607694 701737928 429020093 865695209 713519126 835212991 160185403 924530899 398208785 112892085 982370013 616779850 57318898 909858565 24206985 485644414 428475601 102390656 464363785 444202795 625215763 691080398 762960581 628835444 980633196 827958809 921417414 802017731 478099868 282957108 802363564 435595130 56461619 39572247 135426480 263768088 767781005 220411456 976195595 650048376 669951022 928342173 110305319 934297380 985671005 738157702 949340261 87169224 463768670 836836938 211039486 553964600 45480374 737429481 846484296 975318981 840851345 438949621 191308442 164756793 214745480 150566941 594425243 232899029 93191873 722385012 15393607 144133169 195992013 790777390 576417883 957666164 715225083 286330473 297973870 951948735 560868313 402207833 825855650 167069551 379543323 383925757 101836808 131484879 455211665 725930611 895286736 987626606 384810718 609827103 528209058 931567146 869288016 888379335 662334849 465347110 45152371 679360626 62816592 57839905 525535565 708162581 704620766 439786984 100250460 537741186 654540701 114705011 153777608 978932041 611354000 236420791 243090944 532010843 404186196 152784692 828252503 861256327 108246055 997322611 352276809 598075672 676961565 357817514 836013811 185746292 74531466 51091795 816260333 252308810 690883951 917631961 958229735 253827791 45797724 603971816 496519501 468468962 928457558 282040439 665642421 945439531 514633998 775560677 551805404 193344254 208663045 924096186 705296534 367235815 846808325 970366723 527592250 627007064 658633330 721560618 559597616 244504700 603770311 717014791 381144296 251452342 549255822 16551369 856065009 394900289 444248489 262396639 184792073 592278057 332838345 801639554 353536005 916499975 836730602 865005759 466213978 938468426 599752603 895735613 458811725 724841342 981489150 971110061 667543020 838991491 846491469 519895365 355500105 169712035 973256226 755781776 580188517 621149732 770642999 967913695 337834078 379597069 208890749 262997082 907302702 584986192 489424589 225481361 166659405 970630892 801495549 150687956 630430798 351404632 705820460 392270427 307851005 464187409 97779767 904145759 30664924 298694285 976741775 549473538 913832207 545782947 266656497 953302373 177560455 933621816 887919265 274022588 256583705 584702232 341378866 595617116 535370432 111304023 49913373 188004620 627458054 567349574 687026832 13593943 227491230 566681739 658821373 394073151 579021643 423864415 475828700 511305759 221526665 877447889 606418900 143017015 255225307 827640835 928245067 799554098 226816893 85850961 184869032 809210963 879885056 270543156 377490135 269838310 725188567 688106865 8849473 476221861 273995135 855953197 270021043 569184764 466107209 300910327 12099090 180890194 6722354 235962785 771155285 868118817 705150406 96389487 494735824 215539785 593409360 837914864 636812997 912857712 701025773 349569820 524337130 963491649 924964711 437749391 430456727 640884778 470993878 241916433 305889029 63670895 937967117 719581900 338515803 721565470 767549734 359870252 419850923 743493754 590315191 321799792 131501937 592889587 197087973 796370548 589035836 565351166 730638125 510573877 905996597 797284427 612460184 577504152 553748925 473262569 324429299 936445470 285487819 651106312 392445770 665534204 481260371 450411880 596794500 940855533 381747174 685287723 7039984 881129060 7291956 265322310 438088570 86803623 824462711 336995121 471370025 571850423 323037320 574087341 860041281 354883308 54127357 83785253 570915093 109809236 264274748 533082056 924711497 324475173 816943492 147344861 973421190 80072494 236999705 479145809 298850089 448646387 732314254 333347215 699182797 235332282 331439338 389042364 954021447 192068378 638318316 198151515 415348976 333827050 633022825 999752810 813059553 407561191 778643920 732983286 411139813 378412168 452299819 254486332 535464756 322799360 515663883 326811874 92039622 323739184 406606374 779501105 557336911 600574671 776327951 969820120 419577815 725110811 589643704 106557107 754210969 727558617 730778700 95438706 241060913 99044925 208733292 762345974 146709562 526687787 355458595 203923795 919134562 131071613 388384393 41726239 991836190 717687767 5682407 560673550 297633810 783543815 258806746 251765170 634105083 697669356 53156372 182467551 461546789 956820654 506875389 503151974 773886348 672909225 961771460 587128332 438669918 955993331 579291419 255095348 484906637 822259409 964191019 227801530 975306069 443257744 470075515 402912628 200588303 784676127 211382705 216291747 538920226 492107736 804141648 110714192 146216980 958038471 645210207 246546073 445564611 252439295 763224909 309346310 958908063 153993270 647233630 561939961 202813200 138985361 310070517 530770176 39675898 641859829 445985802 205218390 522082830 673888669 283746261 848802286 928510012 840797619 417193006 885252083 385266002 42315143 242356699 558729477 961130146 216423176 394786337 525059915 815505342 889847674 978892096 506095893 978748351 636420731 570121691 731940605 161904388 567484776 156279200 277463500 389545527 149228135 632996382 553171990 139984361 679582837 597825166 808900108 560513322 837475533 706259998 402535015 942179977 275587106 247428901 236964493 121409211 434268936 127820271 777054409 171369391 93132052 658278608 948732103 526933065 947481702 114515674 606215277 121613177 753523478 256904927 467867704 890614870 17331293 889042261 321374036 598346050 548649251 274336648 767199003 853548727 681024666 84768302 339620334 774215156 120908320 747466375 722843505 740727617 346826596 280561292 136005472 230824701 193632388 468200765 925712528 167672351 290164550 325780160 723653533 511720372 616974257 121636147 588495755 861336424 564188586 254598341 632803743 788452518 354541408 45241877 357586812 949445613 90297373 92727980 220665053 139118345 555993101 303548002 601553978 402550713 351335259 28965230 712055352 304776052 897418036 223894615 792900465 891537401 566042650 171954697 845109798 827274780 159670307 627432466 331866648 925505079 780455587 169156170 540106136 492136916 149159003 758925565 670344336 395898988 499386213 558867880 109816090 218327444 668622755 90359218 139255302 660443316 714348514 201536936 206792205 145247964 221936116 176713171 298265167 482425505 204261668 693863453 585144594 950832473 941671189 690067004 875077541 433658839 531688069 556315312 836072145 634242688 719055958 10777792 831181205 685492662 514431234 458106698 980571213 650529968 315006779 638951599 10224144 848407106 202766281 682465615 553786180 150619171 913945283 804972714 978197443 938884427 612145215 661221552 498873843 521441435 558336621 6939910 567507322 136568741 625749199 829424338 363755980 752900178 532767417 580663657 442796407 744658148 772440950 25628107 233674749 178344276 105420044 97892061 876295534 220585947 858953701 416376617 505736159 403595478 635167651 186143328 251021358 288454784 723958532 363557510 978031732 7421400 143616618 455602916 326111505 509010575 865120591 584128621 494314533 69229913 268120234 768173283 722076975 360906832 350348238 991935750 843572513 901870121 892933782 614282014 742177519 533534271 175034763 465963281 588523689 169132117 711172353 977777571 676720879 457136649 264644051 452631389 858283199 413320474 445732274 692093059 484572891 706639858 314471176 677973780 540104854 211885842 305405153 431912736 668768824 192080466 430638262 567324714 866138200 417149805 52764107 619220682 210353713 320362411 543146565 336155848 6856576 108830527 902166212 397502681 28991205 139255256 933320627 905895799 710792089 992546705 155106826 737585169 457876743 479071845 58225690 739267845 27396768 341800685 438345644 491176820 15786753 618206019 696105064 921426085 841975254 127057195 414655976 317812044 568028076 678751870 546180696 790019628 50902586 584708980 941984438 552904846 174939727 359310864 18060622 899424124 460628026 227496578 424368393 74841227 202491094 279850524 291045694 296557403 504400613 842798553 421805975 194795384 431499625 257195539 592449266 381643194 957830612 689421140 451426496 354100079 909207980 128974785 63319101 384919294 352546656 760228003 192624200 385048767 198962394 214673641 237237012 312413540 651350360 871851969 754382420 461900447 658040113 382942210 817619616 639548997 616788027 910079048 105392630 59477833 90249428 127882285 630870093 728353618 708679906 499387472 539070494 86261655 453799469 900646059 221291295 940170607 589238108 277777393 192177311 915134015 382668961 468597631 123230722 195973138 357816319 209093933 366743442 319303496 877246156 840263700 843316131 331100970 760436717 901460580 367657787 497086189 206475333 840022235 515089961 690649946 416073319 818933129 568820417 529881683 837797369 919164659 320099848 692634645 747479608 866194677 101665577 669280227 23972674 662333754 874105799 635505455 485296258 783271460 767816982 873592947 769462140 420758549 556069591 650439936 770940833 936901590 504178572 413871958 863174170 199391203 81172330 181795705 289359877 709163026 53316179 880949533 195553732 262640807 726155968 327806525 871356296 663958766 57801157 498879489 486843078 825325695 253546472 785154906 772842871 875264338 925928850 866292468 956335103 878856147 132341317 364010443 15345818 60668646 926672649 318916543 345628984 58002046 132271450 396343497 654316382 867368011 555355285 648390234 260601593 303108953 622829115 688939175 992086465 236090288 449438704 202771463 568349674 716849875 12547915 745448323 28573930 515747830 294996990 973225683 595975597 258385602 192629400 538174111 490029963 845660078 454896099 984712324 84815292 48091316 122902730 732531272 279263111 270709149 211268360 125574372 455795021 540626301 178476437 831204412 919815239 605958784 560789365 511441569 711601638 364094269 608150899 862433960 444899672 156688828 223781683 936437091 416284552 621557348 308055792 685638079 622076948 282391152 740835893 693283183 280686876 490272564 341045845 994608657 160986308 888801714 22754748 811304531 557011984 904330988 313252097 737702379 438811897 894203864 870889112 966205445 18890274 355600602 231172202 253885603 366943619 393216374 13636173 673448353 124515655 188512565 103864283 927525214 274572193 491610410 429414931 185395716 912642485 139355696 388551761 340372734 627187934 440344539 8878621 84729539 908307142 552084323 473422705 372915459 705471296 308769145 499259585 575228683 798069266 588314387 767843472 254582498 445268051 71132196 46230291 978954655 741464463 431236250 965929318 423150420 188731636 126107393 80437225 342978530 181863221 159691995 113161965 129654395 285281676 27662088 26411889 779093981 157755570 146345839 729338670 759449620 318927084 233294571 276146536 96280136 989609276 438310068 439937262 743029867 607265632 932202771 700219327 944305434 896507457 36972964 110851020 970045602 106035813 801990760 498761991 378334543 686245159 429639637 51932033 905059849 142707529 990275420 396488969 434412333 480492234 805324294 312595878 55570843 611074085 491004136 338532451 401085367 124896588 143316969 755733729 216958511 642480382 788655319 630602106 803654051 899815139 439844476 704253009 239940741 458755646 593270682 79768798 1917222 305904863 750613405 903421250 736879815 190102150 750364678 636214794 173072094 896693643 818031663 546692676 15887492 430606875 699784805 385644724 278565308 559385246 318323085 677711090 928848495 279463253 706765294 212939103 786766364 202416955 629268867 324714822 358339316 466272312 765362842 389344260 581037390 214384523 224602149 480299151 939849966 997634998 123939650 495479429 277229062 125270818 67058234 991327904 862118229 407473242 577928602 197794828 200489708 28314073 114325742 250891184 206320630 84934700 775333544 480691866 849773661 899357275 31501474 983859235 829939446 409503520 302217907 427856235 118304765 456518175 930269908 36963861 993546133 284626962 703507949 257966149 44674452 767253180 479001724 534903323 706932579 413184954 675742735 68652436 356988656 488457976 126892673 356653908 797957874 270842498 960149801 176788510 25553619 817379115 355689950 463388198 369277804 561836369 321535968 776427422 550034413 506281425 674155999 783677663 285213095 370292536 770840792 342399381 550334081 768453315 487183652 137334016 118809354 335903420 829600636 254329360 838870993 602980735 399722714 194201255 590958151 539058004 743909592 706185654 934121697 899745463 574565714 742675856 740831010 370987654 512162806 673910233 695523149 828646692 866302100 615916919 515319923 193590602 75876950 833644271 327069374 970937534 713598213 786518086 402411380 241524594 485596995 384132627 262210889 94074829 76095470 231406030 993282816 39552154 900321605 314646252 633536998 662411774 940845271 77547522 739200189 892680790 397898051 801310799 19308757 356078309 542580550 146734687 893798676 780156135 527800966 230668456 912095762 679698398 278628370 118409503 438789039 376183157 517435572 865572779 74181158 734623154 97254333 148379768 187240409 330061325 873066339 401740326 594724985 338501298 548167520 715838871 378339650 461383974 763546178 619429727 607114714 347590769 354420082 558382602 223003705 283573459 878744589 899053233 695068876 133680644 605245158 570129077 974672894 222966326 762359198 597145766 709639466 790680759 333670895 588533298 198810140 953329869 611508811 889909308 185053303 391169834 424733123 461482439 522032381 4149523 333840207 567603084 15425084 453940960 908436540 611654178 573314915 351005369 649765223 465104115 515505748 542137865 24031262 177188468 679372329 49330450 876871731 591397547 283408931 445008389 68029007 918396208 911134453 432269176 815242107 484079892 11146105 378051355 397896142 560436157 617656472 347213327 315647159 897541308 883148551 571220028 989404174 943616428 947251470 864241983 1402288 398433060 513141222 490542082 526632351 57929709 827017868 264659607 616991323 20410487 675773307 280745680 971642170 673769535 736624352 362676568 575171820 930442087 658297253 392808654 889938464 676750817 928503388 627939253 924634930 667704604 129149541 735534306 404298053 182023637 64692719 246431527 662562379 143505446 883546112 673676766 11151555 202257645 725215364 922505778 458845414 745140762 342280033 592455015 567352751 490403126 315033736 545606142 70122881 660789327 980164887 693758545 858774561 269016605 869736751 892000057 723240908 797685732 585508709 221562446 626153171 120079305 817728437 793113925 87024710 4283477 330996594 477013914 816935037 710334149 254297781 237134346 320869256 771235331 567274198 994028710 784711458 350433267 473787103 643398365 730206973 989444944 746228761 807110027 502915906 289561820 193748648 3202613 672845005 923393648 824972606 655042500 452068473 975994137 260548020 127839024 64782004 47078684 14377456 952491003 622768367 247233491 649789838 350726009 278742800 510598411 618403092 539518593 14195664 392568397 91086981 482081570 278397004 91030967 243895989 87565242 943317488 6775013 235704341 407122464 108115808 883067185 549438378 520561262 118543444 560013106 507665310 664573009 273776502 679276126 838592596 697632968 960888910 539977505 249667154 595068659 217556000 644045926 899082133 940986617 321611122 383579989 64676248 788370805 561866929 653953782 493552635 740139904 3420585 791870615 52606266 85532785 669193574 206737982 329936377 479545370 798634848 820121437 991020730 609070055 32106823 597577295 823711066 871894678 730708331 920274464 624738887 501861352 719936866 158240188 772341187 131895800 155004286 968135173 266097934 230409174 819136618 901924966 979558432 93697236 365248498 592837980 822552407 55678544 670635614 824054590 595096308 313328122 145221511 207039600 158603973 851622675 271931298 100567678 16139305 599157322 916145406 695976260 116732313 251682422 957766913 953889869 554837003 687372733 67750278 31999674 912056092 749354732 450387153 393687933 336982365 751374785 241256554 342701183 405118681 697902447 864131512 179982208 631824630 915946023 514502978 74161402 614770537 602163027 468902735 790657717 184186347 498355722 694067184 100518143 471176657 285438026 304091652 981444010 799284811 14635443 135560046 312476516 202987396 897790096 542882742 222662791 2976468 218452656 25892973 466185467 135518655 476293664 591331852 153329461 466403098 693250894 665379897 679206056 650951586 413919214 934136998 343293752 916287728 505959131 723246665 618909680 20747696 557596544 426787225 337422923 839222587 762166297 671532142 825437606 731620992 668564107 643586955 388783719 11331342 429028311 152082514 52679077 68558594 740186889 532435152 339855389 725512975 322226102 402753252 42946892 179050450 287611239 740227795 78014546 184394519 379082581 472918587 822172008 857910548 753897440 299523017 747125757 773615101 466413948 680290152 202419943 605742238 455286076 112227151 834296685 11121707 317010390 94123312 355115596 576217503 890164583 358310274 711929421 163166531 937477940 361301124 183359430 935391797 75812408 695310993 500039198 308223877 54729668 583744014 712775351 229887144 515715190 256037060 971334190 74385877 284488873 716520148 562522452 934224321 260188755 492226788 218630620 338445587 775267504 302057896 85234979 50959318 578401173 434131653 913051676 366134976 271720647 839906485 369727445 38377670 334360594 183310291 936355831 766508693 720685583 836242700 861200235 234105513 415805683 587653640 507056303 368010526 822875951 523530475 722844023 607678525 82812673 800434212 64218080 445464866 512201666 415930182 795071706 367038715 250247288 605735397 158144245 256914405 690776971 935818204 902282612 889994375 752057231 891733227 48958251 77332249 763837499 994391200 71246127 861361669 23697241 161745325 175132511 175784487 88078994 438720778 390346193 967362070 192463408 6272258 950699379 423698773 433770211 499544390 342295420 910995434 813513485 779150153 389609144 528878730 921484379 617984843 122436406 676994535 839351735 781042055 483423330 16971284 748461483 894060123 260723298 618212438 176760489 745333072 732679337 457797761 792469922 352897065 485830595 722596326 273668579 199044959 719838386 741766569 302851586 818895767 801191398 105140507 453104601 256382157 736561417 281905891 95020504 71183595 778946864 435659610 631412325 425043090 519043492 730953749 787974310 272651217 114588474 106286800 225470555 775759425 881413236 63263790 746821166 877533078 924185543 276156473 173317048 217646583 19003633 506539245 911690494 739131594 372713118 953676441 313246828 828738855 103744251 272484752 445647337 126361400 782685427 346107097 265626154 77744253 226593107 979038527 808414277 470224924 65973080 964181670 570844557 992714405 78844370 235654620 790961477 712615668 196452330 536623031 79915239 79394063 544451758 920956548 924531029 118823136 764708531 471249702 929851375 950681368 580427604 769544539 450479550 678257485 282723198 816344032 852903213 304667189 1637547 568732892 601309204 561108658 586788621 480637236 453601702 800004957 981022266 788857793 904305040 988585527 974801044 727383928 168997195 621054765 861976551 155434332 289012205 443624132 462578093 598666708 701057344 541586721 334575775 382418955 69053360 623747465 291807282 947433390 187253804 656206137 972497165 634797465 15189798 950917436 886454425 695403920 539589385 378891058 542326583 116557868 879949597 514593006 424917270 830115447 883308065 570243338 254414277 542884017 759785279 945820491 129077517 972009370 876889820 912406796 860215368 510088225 216127166 557930059 497506646 3058439 973588298 732048951 69810784 140469868 973845197 535285512 157700528 493881588 708975210 282757677 889876731 415151203 255522006 294758239 475831064 633617823 364220800 482471402 427811139 583319600 848323259 815423327 30795550 883768008 957922563 60613773 233983080 24237999 445638385 821141851 577139553 910002613 789474474 982498632 987908949 338426800 437770982 934503506 655518612 864452351 744675410 355137441 806813973 6670959 998984874 969907524 346396744 939543792 3839271 670115119 447006124 821689731 613085489 336598877 367383805 568323107 100799875 341179830 469891576 801352802 826494414 914338197 125140049 152670536 745264704 226525620 133311392 49232076 280175115 908095667 666774357 742888444 161040908 932038929 672681117 966361267 944485266 352517186 104840290 672566551 451472492 661192586 27794333 258405389 453431694 110446978 774081657 550779853 199913939 271773128 788262265 849731630 791760581 549551791 521279001 272214463 125604164 945081889 716793584 761356666 116509275 688423905 762404540 818182248 691263630 210109874 101923167 236834463 770029734 300134618 130043096 177911501 543336527 724946955 936117019 697409884 60459699 809805139 408934163 944157857 358322370 65287801 807920924 174576205 273782065 497323632 255952591 313398511 238876414 364499827 695292597 641594931 115932650 464767101 573503389 766718203 943930612 968840311 753136330 266124960 476278342 117081448 793693713 827759591 321214423 713166567 480562925 171473894 320038980 706038390 231282425 634673505 823940201 258183233 374338338 117793398 496301787 434693610 136392574 852322746 596041422 445380833 359016824 941033929 713446254 849766143 943903515 494058262 40655317 500616379 238316100 867663967 106446651 823719515 225276972 456774327 881461474 880192194 332579176 715256467 984810692 543309607 544557405 102868397 134228245 745589613 117246470 154891331 487344971 983503562 96772607 687172887 617275975 80612099 37200800 24099526 294423602 243875556 441309396 338629757 705914376 589204246 204225400 818829450 240643380 209607898 510663032 221003110 389545790 638263297 431128756 887692448 328337560 818243653 49261465 240628205 737976945 592980675 522526573 633921776 185968062 377386995 892718208 164496203 999857192 806977219 301654822 342155130 373115396 195393317 985875263 29537018 565441840 163915740 866289309 896069958 447011690 322440091 472240134 637109955 912158990 579941720 837705793 637017550 664253569 631473167 548108910 454719699 819362571 999092174 118390598 362751268 906376048 854200838 849341402 480093572 119430962 940019310 77398606 447344880 796308021 143841434 82096754 153601883 52461209 813703223 602223436 430971961 614889109 694114689 87522888 98434635 318606483 576837649 405039061 719572853 994870638 274219109 873249830 836001822 132478733 246745493 676539436 287049109 410921880 828477375 540721686 103887599 763784495 606603442 972658650 531260897 753920418 964724778 16841394 801226487 369036803 981073347 137342502 155485840 674782073 263321972 528793212 504056442 915172047 485860628 846053130 54532939 167109952 877790344 418420275 866666071 103418177 339849223 849287849 505070415 546821329 847983542 122155970 755685879 978067904 487384039 483638644 49542942 233668141 72500473 787945892 111504658 855259204 827641675 515965279 600080883 883146181 332538721 148877931 842825559 981622384 970110535 741997858 581383804 196644298 484408558 152838357 697349427 615511640 775961203 216828726 344365674 361786639 756332033 110399405 180595271 737606200 661096544 738712579 975208153 618468618 290511335 539695403 382098320 762937894 562672428 207406471 726539800 224194078 545489550 722829419 858837495 431109189 302755799 996765137 811982412 393760517 919825463 719669625 118785701 646052733 348595240 874152697 46555388 629187453 491339021 712031092 142771908 446192462 312152228 423027204 283954595 341895601 59360544 359844423 214768442 659798253 312457223 464149357 956531905 421905604 858260493 454522263 780531585 970936035 806298622 773309524 118317646 831693067 657423418 551948267 380783091 556966501 850232626 903685912 327625076 436609820 408855858 766204374 960218068 101848107 522978561 356495488 895800684 451553434 871230771 837235680 904308775 401859531 535518020 767845606 379433358 534455896 447774630 266083340 621207007 237412435 11260608 33054703 702850542 420839066 610689416 473557014 544761928 521979115 335652882 779912925 800077738 927891167 249068284 268449090 503884790 232186564 854316141 943868687 365332871 759730885 442707540 686316033 48611921 897739743 598544347 284569010 835049433 12630656 663332047 378643445 828420283 184636574 457828948 994168662 310793384 833133895 188225535 44043671 376258709 966613720 482662783 340166282 146636082 948258007 884682499 100318320 374388465 525670990 605881377 980809533 983490547 137663125 722910369 151676945 166253724 681278576 865090012 454125697 254363944 327499512 102998776 104318858 976840119 404072800 982789467 681470190 551785008 580545709 489423997 36770234 540232666 763543385 665921066 758182341 469524998 31178764 894948481 428913890 545719330 575298553 387096858 747657029 186720271 713470989 171786703 756475126 840502243 450182866 870969189 631065467 366179437 219343056 95104857 28773655 639912303 445019525 553971138 485007918 893114673 882762992 381353396 296536315 104290621 1591513 552557735 228930805 396240472 236330350 766641051 902757547 141526466 542101473 736174916 404317581 582131217 11434548 991709008 143294493 572018362 96670358 262568990 550555450 325106240 478280461 494474408 509774385 642182142 696847880 287052717 788431564 901479533 387266528 780392793 682815658 815043502 921902407 412573332 15167423 228171649 252842195 134195996 145715193 300989318 785426289 189016951 637091168 334714659 149541348 719447769 516885212 931757308 981087473 33671979 916980570 35867052 702748121 862872541 486016224 743256578 654473759 766061212 14558363 746081154 712161532 159069546 501795921 105704907 770511011 855230934 180337511 828110910 10410840 325505591 426624387 166525871 364613044 200933136 235749366 560751215 708912917 737731536 696080285 453871110 250572201 627943007 891668521 715233034 670187522 907446388 264879114 585400622 27127673 838157452 352993508 378231835 654219712 501548269 647960935 628210463 507189904 666750740 469502848 418444811 39971575 843147594 940258840 678538167 444295878 929870570 436586092 587841709 258866605 421215131 264442661 263287593 380797181 101486650 211458313 163597125 298454772 640542399 787982219 422179212 466949127 83933827 40912599 311534519 719686464 586084640 254411905 523832166 273044668 628068647 548079817 402039707 374695184 318853647 192007022 13693796 706818246 628366031 222552753 919028499 672589497 882246627 261149698 238115555 277978938 399462994 55068293 59381593 630938244 129030726 725736724 140273167 169935197 795768405 254771755 733634207 823592820 594278230 98076055 306702807 42915291 208646444 418283300 894062907 807266018 787138569 977399370 111593580 499476799 734248282 192913091 708150586 506262456 851753889 946431511 372307692 978215820 366433692 448677833 490828099 792960501 216263388 845723570 126271395 558327255 992650347 527163006 559136117 370383174 123182406 967861367 994256367 193616957 424755579 1016751 527936571 438707690 306425398 824407821 952618523 746903747 496686361 306664703 831950652 727846052 432612224 835637356 419723120 192028937 426835015 103964216 256261360 804631119 573182949 904840150 9666337 406606156 274547883 717259197 304347296 284651395 265119239 49591279 968616577 252704037 718059105 486927196 611285352 608480817 381148385 677253007 925837298 786435458 749532773 57419280 686418044 53955145 163768102 567747698 228500432 78249865 54713235 454482448 669633654 272818599 270314624 433398849 365610810 501467457 500588129 215480763 450863108 788590610 28775547 186756304 124311621 360121849 572969328 840424987 310641090 687508810 741933872 77295467 174271389 358907477 912880690 102145762 704862237 68601095 308536304 10291113 450124834 712243322 350558190 29652730 637593138 678132685 435489272 908725880 110466308 884325180 923070905 891422280 448868722 921876934 280953488 680807207 110277579 75282640 680276046 935285614 227137700 901679328 828939517 23497963 877779814 241034545 415882583 573150233 271780378 107506781 522283403 51799066 293486305 668276350 763445760 587121462 236922846 224994262 762798170 690960421 164705917 842999097 721632055 29653467 694745816 493136890 964230066 435746586 691355184 667754810 506055630 809327185 668470404 218037608 750152525 930349168 10726593 583683241 270553088 90055462 342246882 287722574 699834921 79171058 414968063 414059453 984796795 55453428 580669415 190105379 799164853 607090037 493406980 606464172 320183853 916496956 4744893 599254669 379224279 641556177 971295009 49845681 876641971 37823800 509995747 293364960 426000059 613050041 508377395 230585579 834779511 604678171 866390886 64716660 934281861 70191191 35828001 566143041 673117788 890099859 717804719 432925654 661446688 329824109 986211195 129462850 372785215 944754917 924690980 948084425 50585322 305901272 537354459 986457194 686194651 356732873 201600135 312543188 607547420 295020977 264037286 337430616 794772008 848835388 632736204 74305159 841005810 637006381 215256760 894712572 654343224 64462641 190169878 834384275 802363379 179348689 974710448 201381863 517620674 477497135 293260965 543526016 353475302 811514443 458433151 519238287 365753250 536746666 808223961 85477257 926115974 770381335 780328218 980255814 866098102 119967716 651212383 789507056 619789637 937792316 957193604 176193895 21594552 534238045 944013670 404728210 423851379 72131536 661821958 927062229 114919247 373970909 362090670 920471282 691512667 964991636 134660647 970057316 885164084 632419507 997125512 670628004 911942696 288927272 325238120 936444156 479423531 94682106 811594717 832519238 564896681 592376663 27351249 739372167 391783994 766889803 577893432 644226603 111561404 177061233 583348466 511523690 766886655 473638074 214667480 180433210 279160954 529328737 821450444 966204474 599330822 442206667 253519719 975119509 138402741 30001907 981515446 430934738 735265549 28596483 396018308 891280893 770326707 180956691 200669327 258109417 861180522 174139204 978564872 329721816 791623686 587066746 916428915 454917241 635519317 606309428 264475731 49475512 230936795 197569023 904517545 918204249 894227247 32453953 664995233 935273189 834709852 461293379 62503641 603539018 848396643 803182926 469614605 251037537 15178718 992390681 216959795 428444601 335912388 471327495 751220721 604512027 31068676 239658623 526342030 365104479 285219180 681285267 570428819 838813695 995868726 293733465 343656272 324196137 513724601 807823030 698101365 363581879 91989455 978779617 255509282 342217512 137702181 811403290 964930933 826216694 344173849 229018927 105687845 371369099 666084895 842465113 539096673 109796790 471987732 53013805 433875184 544516445 510590821 544991001 659147434 252720546 905488745 286826924 136258378 637839693 913278919 804486906 417200604 819318595 45971707 707551877 91875974 907472629 485075157 484179298 116708987 666886654 684271662 276095672 240680385 938254786 98731312 68141268 579325532 600714446 363590209 511429429 491433075 194161865 237504029 987149397 946547894 357304216 494132004 799225325 61848146 752396299 932001927 877815246 71423260 666205461 506486122 57776067 726637149 949205556 328630177 381995032 607152994 68508538 673481523 22762553 593513179 790527572 213134013 797828009 437781933 579586639 641396619 923774510 320708697 407884247 272750651 213216589 796500183 582791301 286933343 623009330 133773705 116903378 659291051 419739036 809177210 104025550 951614655 648409829 906870374 322973223 780126867 152401063 540906182 710418310 444098140 979513184 97514818 76800504 84427846 84367920 695949531 474610593 568661166 603566833 802642825 723892653 329715164 789368741 957972730 604023872 631432019 366008191 152703312 395682609 103905936 844104719 896461070 603496415 460426310 417867448 829641625 121094502 558701059 745444830 924604398 349423245 438099401 282630556 779356556 436390379 560369628 445843970 624787817 493070157 693933119 182018404 675015540 546373628 423801939 527769577 832948188 144059369 888711936 526317752 890508625 697579904 471298631 184761680 765543700 563068930 478979118 883774443 911808019 711826161 903476187 139071738 371142114 63494464 722904042 735330072 438189775 141275925 996189198 225495140 824958687 187233009 697393295 483764671 289114490 194407291 236709623 1298471 135861426 236470507 826088736 623845344 376913706 985650589 946865185 258659684 288963866 97559081 336262374 913830129 393883233 972141619 585726524 423622906 959040028 59089587 135162542 250578581 12370288 671686013 848211577 212891896 308158808 366061579 735764195 887354411 198416763 947092032 551830275 941123786 717671241 997223043 491194472 730570507 551894541 581495861 254469983 195028867 8577781 377689186 420594113 567032314 544604979 826298054 573382075 461073096 78083144 356508332 172867312 667483644 329724090 865144774 128382497 882912485 873533375 451243546 397518869 944180414 815803508 709388830 713813817 953430151 18355161 120375558 184403503 99153117 247475762 821211457 55103373 378948851 721199029 51593469 483195596 528379996 143515178 545062243 136621048 387013167 732508284 577276530 721594336 77586362 113965107 39375912 440320373 553757180 294496020 631265820 374997595 165816735 307286592 500665687 563938770 238415543 40844189 483024191 686524275 977722170 676728070 40056604 607423204 240975690 524153384 636598731 84368827 634114495 239123409 207752775 577165745 280363498 96578127 903726565 529233731 584182592 94833785 319440360 994381930 21008094 342923744 529891131 680093521 163701807 978197234 814116049 845366309 750011139 211646891 25776293 63120986 15783808 904915916 748283607 580316430 306255660 365608729 533331577 132300255 4970326 502712806 414429048 847825180 867010686 976216444 548925643 814411844 782277819 312694038 902688093 23003174 196979525 842134742 694995885 85251861 185569510 500333650 39132637 545203998 942388450 381929780 552413440 435341979 924944707 615222815 66820841 663833663 11889150 669717100 143891342 761411124 474785585 915987685 84491411 547413078 917715512 599535708 667499482 700315202 752208952 358398176 43026211 415324000 831607275 646636835 499003987 256157764 377827588 134408415 675566411 577895605 178521660 843689006 914440306 841103241 940853192 529765571 84187459 14553271 735658937 401665322 194008955 985525812 726599703 599221466 788853481 817088711 923055159 407960702 416738927 488372203 689552298 932373896 496779710 167746735 81751617 709555764 436439913 470179978 80189433 865652021 170201944 735587611 272678377 430890029 377152326 647159975 185603509 261934656 293280812 412537474 937832714 156719915 921145298 794927235 911678262 685984620 881164765 369474861 500501189 34424209 627623340 794827137 221238436 231498506 309849700 992515703 809980917 822829691 789112106 491712550 422098813 911532864 936042452 854443906 367148048 938133004 375458109 825717868 690471099 380282151 470061927 369128375 998620703 124233129 137919544 681723242 154973253 236412616 84499638 981809109 536561124 485384876 125210891 856075474 729209968 526439255 360426778 552514710 759592942 918455893 61549825 794241802 949325914 859206161 893575767 575670207 950147184 666534539 877823568 323310336 505773289 660823039 501698621 324166744 274144947 550867995 913159294 338723920 187529658 288131788 128195767 537851387 527380236 824570468 158829365 137496764 586641872 166487898 915920021 482845194 539876149 297863371 382639719 596645537 14608262 235045442 587119300 633339858 54668887 102654581 272057853 36243424 301758998 765945887 104386301 483707078 902306039 178489860 371023162 625082763 479764587 387273648 385699355 274102133 983060152 922958038 453156049 33494040 669614353 619832067 441281067 195581583 392552586 806470115 747948645 707393426 688876264 466015643 768704236 756029146 476214164 230355960 973128075 575636976 373750550 886169548 655499324 398409581 649470259 986168297 869324711 372963447 271823438 45691341 590610686 276590605 388135375 588095412 430022298 20910372 781835562 120474852 995941220 175553357 273483406 628840709 473115618 484404734 100374021 667277398 866035265 602487370 331687241 131447455 855086870 463142349 853265647 177860133 391254455 335785422 972921219 861866002 34318672 840222994 459550549 228400702 202504807 180139743 386879332 935228304 58627735 571467306 668679713 553737232 827967008 628826101 656409439 748652593 568747157 417204790 620502859 615205143 238092042 893883420 552455451 485577770 944354805 951376129 750019801 506659285 377867836 44416398 448759597 150010002 634118250 478453735 121703276 212157849 655498344 886025139 147972354 87019538 478086729 711300570 38552270 55354148 701312347 988876256 310820509 524026834 768989498 725734244 873186634 78601842 592550955 215351049 397282808 799497073 616218503 558765229 706036173 328329197 323271275 874834627 810667957 731564940 615857307 541233213 988307407 639427629 740382065 136046120 437767552 73222223 30995254 596808023 252876058 949314636 426897115 645619845 619319556 484309092 342014615 565904066 103160316 389085097 763796084 614108510 616217185 250931321 90625369 385385146 508969459 69746933 797820233 97488034 124664140 251032326 205239118 13033608 936828688 410245828 470960439 421257232 692879908 747344499 893856440 169468951 629335004 355779521 655442961 306036487 329676569 88422767 769025805 505077670 758591653 370649323 669160533 550471951 648274724 943845643 235662065 302100422 894832515 839605228 816441184 602906611 429712093 33041314 669036153 106625376 996101650 13482256 998628184 1385067 831982135 291603011 875942663 546282109 484826176 300555740 179100077 16600999 889980958 903862551 328991058 405086319 354256043 925612767 242904483 365765017 132438145 593546909 220428163 177116474 874640831 727725291 364738668 576218141 416823061 456197753 406296652 306583012 684050527 827010217 842358241 603815480 545598826 64787101 706502984 105343035 603573648 225425240 653940765 837652819 313145788 534733254 962524277 615667582 378332709 336190754 200290540 32171487 52997147 142267763 907925789 55123046 596155822 905650515 400861893 570163364 579534221 359012443 20780543 846038015 343727410 457463231 279459628 217708943 423543086 31629182 605285752 573042023 52527425 544006955 964171185 864032344 984623322 449254439 254681386 136252020 551118385 958744809 260160237 31612965 841429789 982415825 537047983 694193801 325998226 44383375 824402048 131819044 635093008 265693235 546421225 280108108 516640830 101820856 673720894 362161906 840532844 855884209 957832394 570640699 832461250 135997892 661500871 307318979 421597667 545543360 324616049 787736671 594359538 253154813 748692027 351185182 773987316 234062123 67904854 710715063 31738748 665980885 656656046 619905665 369297582 700784626 585318353 256986860 946213544 209871869 3532424 97638532 254086861 45961626 305080906 810037588 363006844 227625139 649087526 375152562 882162967 831022317 256644988 867931919 218907258 943216947 962470337 271825825 55284551 355907413 860596993 417989048 518699362 606451779 883213549 200392499 247826200 749793741 346770994 891967933 728786550 153252426 192017580 957519612 90045628 328858530 440200436 434410580 349110056 586052594 804970659 117353266 701745006 41353901 516732215 69076935 732655953 880656675 354183402 500912661 264057679 35535028 618315891 692752545 427606324 427636921 454815396 70631518 777434795 739283753 429036255 304255138 680814840 778224940 614494060 139597553 808696731 52158213 674490358 13016177 412184298 991320277 407361235 610627447 812429599 862706708 530467111 179894877 909639532 439736541 373559081 700227225 432407356 637786850 278457495 802882829 177437135 329262023 31088083 814539815 969223594 590287794 214625732 297325062 703184469 420235996 117597216 660841019 400802473 509415618 909217262 425326199 161853739 771218181 848204606 516266707 181182271 733641094 313934700 316648536 327095484 836197679 21881022 608070741 3562209 214326306 967268738 978199811 627302314 484128025 613152727 199448682 183639790 435718047 656444461 750264406 217587087 845440404 358987982 678705176 236461701 165498211 308008745 362089151 468705638 357336611 487108560 641960564 973794674 100646781 621064829 11986190 414015676 792476012 676202369 370171067 905945622 100464460 52344158 992392267 366270583 395157026 885565500 400776977 74403064 917353166 741736389 700871066 391072693 113384162 182779683 623387081 232296754 925759526 857447621 259780544 96628212 509175196 518961060 195592276 256503518 948131128 40922664 813133865 581514321 65991133 109921667 145858742 97856455 360929171 887186414 972018764 992912426 446187131 834045795 336945511 405791463 53145474 518061029 868019896 238146164 426457289 541518118 725507948 912483162 352524237 860154783 10486275 638704434 58178182 665641514 607413811 418020408 672651113 888842777 493162758 338188642 788594792 404183476 234371401 328179262 599976092 133876180 144487611 316434586 412873443 900039478 627595357 237838596 386683002 444915870 874113308 509631179 113393707 633105283 261304624 360429378 300874250 87238239 579929207 616282411 328456975 861892811 935055192 593066702 117950393 784871714 766990565 145233264 613542396 301201200 680375112 956974721 188160967 220001073 903824298 636164777 986238887 203039449 594521780 423608885 708199113 505861931 605838479 67909822 236040012 861468368 513871508 307920571 481937666 967695599 530438006 737284031 804558597 664177455 236291512 397593486 385441913 571498500 670588181 323797002 771752248 155698693 921334099 750337117 983937762 58945597 151720817 11511942 628128847 166810634 882225915 140494290 400416713 407167287 571139220 942682286 796940381 869171818 77013530 501727943 610142556 152577924 428939469 643543024 238260090 193874605 466705903 842735635 165674833 520570786 524442065 928784989 292256094 447943613 30646413 162052722 560798638 286133820 438866299 896262213 367532161 260512244 992117381 977692568 530349864 918092115 630390557 458513555 666706944 569997120 886908668 596136015 922753228 515174972 637421909 401635469 887631093 744477270 828328973 754620669 32499332 140304729 288813641 379022627 299430530 729516823 802484494 874636196 796373303 941974378 93665694 399187787 673550625 339361019 899193235 307576020 645993301 421954064 366573260 202356396 588793750 566300381 954782473 708621227 541846090 462262068 162836814 627817522 571041935 634685162 571283961 643060081 538918952 788967026 26860772 377636985 359820060 579078691 715414840 487425790 373930540 8091527 837380038 355824822 876182472 884569528 143085104 396291730 70314262 814301873 859037124 154621023 675632296 793457704 309608444 525128243 670910972 833014870 939767017 803098102 554803051 662535195 521072244 649791847 834521641 865337228 77133588 604664120 963013600 960285279 757875003 720054852 715761063 223176678 206524798 152990470 256792337 101445661 116954569 910268807 624065558 510187181 850259823 966128105 594819011 226418823 306952672 973259508 106760237 96801337 932840192 708995388 232406091 36816017 70453642 112254149 599117676 907025654 305471163 73398795 79487925 819403683 10366280 611017441 474651929 675294578 860190438 312458445 218707464 692282056 265268353 504677346 311176602 188465097 305764122 328890650 518781117 561590693 177906387 528914198 803516811 524519032 449035345 838379978 364383596 15911836 136037856 661715060 131476894 128984461 222682341 228619147 981577238 670350509 713110072 903482836 517579626 748537054 713644978 342452273 348947654 249799180 623659349 6060863 677131442 438048599 698288518 838754648 598979034 345659549 810348727 854437361 386491717 862246499 306994709 867207925 159735852 100929496 964107441 656175766 443485148 770362439 477803197 981006549 267938375 216892986 397318346 973757295 60801411 380524312 634800326 613527043 370500956 206793207 931982069 929761788 344435770 502338890 830570879 640052630 42145463 409247126 886045889 302260176 77023285 382121757 96590999 317128157 481803013 238354383 116545483 470762791 118630191 657057647 635656728 123279076 895763598 100510318 575719351 537606014 809587659 222336653 692557319 716131460 38918794 560623514 828791727 979328050 806561244 122321891 345873315 243230293 262295474 815929060 331570517 243690357 412919612 491834656 332742576 433549339 886474170 162807583 631612496 283460584 18531515 842741510 576744235 245655260 585986076 201231081 62692629 697948426 787837927 329813999 357615363 286154087 118065794 623272109 103660705 360067117 660828535 708606206 563927048 645145605 906638688 537661463 941882816 225069072 485946169 92237801 497466365 752605473 949219305 895346358 562549088 944649221 252721096 746768616 962091589 41609882 916207958 623461249 375153325 522581720 798081463 238366770 198921727 751080904 257409464 515036397 611993966 392693528 416375862 75638692 995926589 162958976 495012320 39232613 910434820 354453053 316891151 757957134 717906925 538277532 159748288 123160783 523678391 988969875 528324357 781174643 41454145 830091381 164222304 858054190 625306295 801920851 286210321 719315112 600713365 551773249 392040133 805067136 782131009 962381122 144676053 716410146 600872961 259428896 830009189 544862926 648981892 241718180 553090273 387878278 645148789 671718525 138205552 90575236 43827562 116595559 545835020 433337244 281219653 518534425 951908893 570841351 994691984 346431914 899232235 732298453 954886681 308218753 408251364 745022146 882815004 609281300 770830588 104813143 296330281 46159400 934345291 590045150 636082344 512687139 211490221 74970546 326481626 532397927 122165308 103075321 962916998 462677921 341759937 172161872 617491144 610258723 819055896 635647080 676961762 808507065 142083561 341893988 164798965 17980839 202106153 77127965 412184327 743173774 627322540 281562967 148341525 307837161 691572264 205306572 678697350 126689830 167262935 93033467 512199049 186334767 52882927 483259838 608877126 783230919 233048165 486820343 757966526 317084393 115024299 260977264 660389526 777107609 614466879 208103111 382429089 86365467 342593876 613125914 930020382 424634937 610383940 880140336 443094020 749725901 616308077 571135257 153965919 579011712 579901942 251888421 687332081 492575422 481126178 203271061 589058211 40905036 531779840 906506702 167664500 819112024 607744818 545935662 327825040 107166706 984025715 460219208 797986546 529641181 897724735 536438916 147810581 237005347 547052594 770791263 492448574 907045561 81652503 493245653 97583670 583941642 319921417 990705305 184528498 311755830 966733816 441586282 347927945 867711459 980271631 891703062 314408218 849791213 324431882 309374917 704595970 332006826 875394557 548606222 7173350 666199311 776494054 241986438 699744662 847795920 484213783 534038958 529392056 763115895 171821755 694325352 478341166 310576812 867652907 678019345 196007168 983990188 540103853 52304675 352166351 496487220 990545498 355705450 724495770 25810788 107921057 611277873 69405308 150392594 204791484 807868936 928676539 225120054 801191722 819305761 13107964 13588874 553268784 268940936 832602611 69981852 957169978 234837064 550042856 836993193 739931946 751196745 15648532 572406276 267477246 461211246 510795805 780717711 103451023 220703443 994216594 715161864 118310065 603061931 538673865 902390521 244502821 24002391 697951319 179343832 140809203 615818610 151435379 284927021 641976225 566499297 289185559 379197605 647321886 920714677 279410537 170052783 500731476 117748245 934348608 898944231 706443933 658952335 559544913 418357261 104107453 492263995 775526776 160190978 11869825 400748565 454584815 968741096 223879182 111830412 290157237 489739739 947873754 372634804 406121920 166861274 386545886 794452909 621754120 868618042 473699186 932759242 454929344 859690077 656148369 866182347 172653335 486815788 945543653 671226676 720092484 831643373 558707184 716990455 535067473 477244988 108896649 699104995 959867738 104935646 643778538 416158049 207758225 585206637 112507815 732282454 534445979 948988300 605638185 41239430 687809978 725004042 374399225 317097844 981759851 558192980 5224628 881650147 859430302 926991752 431585794 132563993 782583794 763083784 335216078 721197660 911431368 818013098 728579164 142207652 776213593 576789504 743532258 426274557 986353295 39508183 719373662 304824592 335446775 432647199 131633086 401502107 199743671 496570668 879479059 457727459 699106276 855563265 678801627 202509757 607362551 243891675 51410819 290430093 739918980 611185863 19339708 231993740 252089344 121667425 456125703 428407725 25183560 821418330 173260228 797081225 681588788 297497157 784021766 250376153 123872177 870878539 86550327 188118731 131075353 966244562 977307592 642492460 778994120 445308141 502109998 529865753 841663894 85855846 619319870 133167372 397140245 783288649 964551112 61995478 16591809 612882319 384549469 289805903 474338387 717064785 100870700 553853396 671140237 477936046 113929920 145628302 88305645 639339621 149949553 376099072 420656570 730729365 153803536 294149389 870693215 996106278 47387810 990053958 982627392 690030710 9806249 877908489 51504977 925147293 154307939 900721662 64399920 660006138 479567192 100548074 17561273 562973462 673690890 301001998 238258868 65703749 264724725 670486487 433515121 562171807 604642284 614183691 732509132 366389921 320907980 650304642 902548283 909990751 575619143 359641885 668955585 699643982 646285683 915898971 774907425 924804605 77588589 647515575 111833833 778754476 230089860 816252443 838788564 93293858 977990990 684808571 794180367 678388331 714670725 859786521 818418132 930333296 72064725 402848061 691125147 827119863 900337395 227145945 666505190 784299151 560888516 602308302 826772886 539966566 505161765 701027988 544735370 832079314 457694578 70634003 992855995 503381643 726531543 26477750 567011592 715378230 235285242 885669744 753629028 698829332 824598641 445909066 856292396 532938614 181462489 225750884 840693803 591041817 116234913 384093431 358673511 12358703 361572389 534613364 930737567 747786828 727335622 515798274 802976643 351535777 639902130 59047517 456541352 444593261 168318936 2953696 534855956 784422902 635580958 287765638 611655211 913887826 39502485 874225700 887909710 102378615 598960804 447537811 550276019 834650519 631139938 324688126 358062515 945149549 688792194 81028608 772565748 672263227 494079062 967314672 604057888 297826190 683370989 124224424 168494011 80865203 859709000 829822766 812413235 759880328 117803578 51622790 149331302 616540262 168702047 163044173 975031099 581223276 842568479 814189187 236791676 98649368 384077239 405937089 986253569 48775576 41325411 809574309 309952322 762252106 971484914 712732911 991364376 329537819 743575257 803926262 786661598 614408820 33625057 282798414 328382650 858657964 499047626 960047595 745114934 759515667 408238637 435543876 176155654 427388700 632699850 891190425 398232771 48669290 56575309 675261914 103030567 137288102 971252433 384242537 980286001 100928100 118439851 80501312 811759342 407837152 610264437 22065048 487242795 960108663 450437859 750074323 597330908 53293283 29325693 60806411 407924789 283908517 171043690 678005662 541008659 379105227 685230807 352040317 879408869 673341982 971302568 693093931 843335946 647394371 474609808 410545452 250669724 44601197 459513761 109550550 912846325 396683615 409364071 941612555 168240294 735684542 395592270 44509442 748892326 532708525 29987978 126140063 133838513 793255652 690783165 139171229 418568484 487998976 931995147 212057720 572596867 290806323 901346749 663754711 347011690 981356240 367526363 664413632 110741317 283480139 425348500 488240160 950023232 224021319 385847772 362959057 922278850 689259187 374666389 553117285 85289690 100698627 303305113 329667863 918966075 385386082 475227189 573063459 451436632 363106461 419703160 17567863 951355892 732288001 411970884 693448713 437988679 75190962 598018988 976333290 754436735 213618933 821559306 411125854 313335145 455544507 106460160 415501127 542652047 869750936 83583277 950285037 821662022 928071499 362339924 473471330 461442504 460717922 952816585 370700966 634386784 863650793 2437601 135735651 27969487 203597442 725705539 535622940 796816671 672314974 98575635 858076160 235040816 882228844 133373519 561574192 409615888 952466115 278729883 149250150 365773394 573048939 829985225 369847535 154158319 471951949 258733753 550902788 157433547 371330730 355822170 405176144 639172658 759768795 881179788 74521145 635523658 802142424 831216757 289364601 798744457 505252468 298461265 62092938 920938862 236483338 191730664 122009752 432600677 783405924 275349857 381635901 311642857 853559878 122279976 51739033 503182440 855602801 657970957 197197327 122474953 267170175 637068765 35953307 807842038 31745992 41521666 398156664 138254349 553734611 438129895 168479032 227756856 185137976 707469804 373809422 54319583 322752475 227320676 150160796 735052142 474971308 494651772 197277510 440350066 338886472 509792988 347951397 717674959 167909417 495496843 19821427 733601114 914982972 290197247 593754604 681215420 762705578 966101924 518181121 824741251 924064561 655922215 68465964 968734006 626814295 530549854 282120451 248478722 847167037 557540479 61263708 941668373 663057471 136331943 612531066 393432151 899527188 540612057 855310337 874147692 856007761 283442695 243020726 563828042 54028725 607264095 708598425 783513324 357194057 645195484 25076221 169432813 156453452 752404451 618784602 117855669 42924216 66264058 470283075 646258287 833217121 232439571 605335541 674502125 490573733 43802542 955510180 85474493 691595648 514998484 714770894 423660486 513126435 872130653 457242993 215469528 676407825 646763839 577577292 937302363 960481526 552139095 751240962 739656187 26847452 814602131 729599926 635485267 118863878 997786270 162731557 698373540 392178966 660108170 894594071 268270615 507037903 289999745 494144355 353398679 807581783 53103812 937318986 509741005 593734202 841676028 500665882 263017804 650500937 277206190 644302514 994269425 935185776 988540445 431956004 933328518 878834951 317279580 65553074 541739863 855913933 85350713 10968361 674758256 979819750 492172797 445165408 790632675 962804630 197654906 141513820 173315831 172166621 513760420 920462772 704728107 199496282 267312557 638182324 534310537 833234601 459042213 753611442 765365378 84387111 715987580 433187110 329808290 795390971 41212957 353898767 656088943 972476684 197071676 218572892 365416561 374647 890757372 875430626 302135665 797521365 655632139 733220549 981061817 593140756 896443727 603786627 929224186 134311368 235654590 856761399 298168115 212781074 802128798 145050003 986249832 666046892 686037348 949156962 231173583 823264809 228431775 329165818 216520314 632695864 155036371 399181120 454602342 349578494 688450061 618012893 859164511 875723892 499542146 647214602 340224364 292336111 747951121 135614139 764537958 403828817 394179798 208896463 320202271 139592633 201651244 213761626 946520115 648606530 331139984 883811066 247301598 109478222 484739199 81086289 757579688 146080790 263821181 89086233 362219199 802591853 319040386 449489990 195276586 529483584 634648926 720104517 283229793 657028656 176048911 354072602 721269187 692348137 533426457 151854406 720025798 34093483 52354392 940243337 790633642 573682518 946629715 959655594 84725298 397849402 765597840 640882915 288489186 741020590 404484822 339915769 402544377 586599904 704712723 237803998 998612323 930342746 640212584 96851674 242604012 690607462 564191319 261369348 957739799 273133859 562675332 443453123 92917005 405438267 197425214 618585562 498152746 365597472 78725167 980077142 765307389 758922251 547916731 987452396 959986943 201924701 932804961 223907216 20597757 440825492 839130991 67918722 320245257 722065309 949976436 805141805 394708197 63838635 572396865 718553537 971578410 862770797 427124684 857224974 234956000 564865943 458916776 875948224 367580726 193883979 440752403 34160138 819288236 677472233 482140134 957997189 650611311 251272812 18219373 202542869 308668788 707220694 578191968 710635360 51317227 799735518 290446198 135292053 220161599 380954567 295282858 13320750 166991989 68482140 21746049 997365307 473073808 641740546 739069409 959183556 351213516 827843872 88822778 618356461 121284164 291548631 646084566 192106032 264753041 808417967 224194590 660816284 841952732 523466830 904969172 207609263 548470565 111234001 793641946 252741399 593558750 427422204 228140319 186407330 1893061 626909558 695752865 162844985 562236857 325104858 291361454 351855471 467803850 796126128 792165910 287721012 99106419 205057708 349083887 265304985 30906682 661816904 356459191 481740416 244389981 756303582 67467673 622713410 284970024 592494311 972082104 862725135 264817617 363682031 11868670 638632927 924423043 347023839 988577461 971134548 788218292 472982181 986515727 411539874 421371896 879611955 312504970 131609517 454368948 737237963 519502684 416347060 40649384 720167648 355968556 663147841 805513014 36684583 774598808 232114303 746782829 216250238 208086434 502810122 254804061 118238724 864452859 718745211 448675727 479208739 353746758 986094157 613899462 970253499 588315365 504574591 198377678 926558615 306398137 271665329 649904667 992175639 123238202 738551785 720067106 363009337 928954153 45030079 724342568 301136070 188166719 233433769 613741381 130701665 914208527 640803217 141901145 281279579 668583230 221646971 419929444 737033410 802115597 647355866 412769005 98704077 412550707 954879767 18551992 806601864 631661318 208684682 294438163 370169163 504091132 440212591 701671272 771875056 363636643 162620005 224002102 110143759 528577306 835121341 482002768 493284101 95582395 217984457 488872549 461254672 521049335 328668653 476842916 147468727 428829523 824215252 694878071 595084472 590825204 630356263 47815441 901530437 126792742 531048214 636696337 249542333 54036134 97425071 601565569 121307013 47247808 231735645 152394504 829026706 830846590 226054357 232256021 792113602 227713192 867570349 636547377 397347311 499046000 965679704 492362919 576754732 197638753 954263877 553171210 581440734 114747035 639350794 532654334 254182858 385431907 310905076 623068327 336187004 647056272 498414467 94310919 368185954 186592387 84161050 112532420 233610728 828445786 778667631 929425647 222716120 15739652 292553012 15140620 116188483 634963471 933735773 298485869 709660525 39352149 251984134 370788359 291736910 827475753 538112776 964744487 294701138 742852823 901939088 207731170 280281063 113047305 318554265 882707993 624249383 973475617 587656741 610840196 391076393 719925258 830858585 251883166 369914831 745290582 394289397 557707425 932613119 945774897 377587728 948940032 598386457 688623240 298399665 422386455 600977758 337629445 849954188 55823762 398524890 96906693 141372963 875207930 475232751 328615490 21800889 60183682 31684331 693200111 924923759 223775418 191474931 834364329 836421490 622420117 989687625 679616535 621244425 749842327 996330755 728826319 715491076 813785758 14083625 310491651 892031190 680746109 932680911 439520741 770440991 591665303 641404352 713012545 146754705 35519814 926357422 624429843 42429076 322794008 609035493 599940062 990168930 487361424 230687537 259282807 163966669 864193480 821886004 266114625 827605332 923944260 687248106 163842083 683011391 553823238 883253625 621842948 988300007 413754819 401938182 472461733 428045631 744601594 565651111 361536733 232892642 241750771 744324573 204866238 509796219 960380748 123224069 4873527 739065589 831691645 103252547 742582973 635207768 291629684 359740736 811992253 757744295 916189893 63822895 118653633 51146094 810631395 499958020 694912192 633665575 594965765 748518948 704159306 668396178 502642504 676963759 173897976 229513288 432390786 330611198 923642050 455065077 417461441 714815122 803194085 262334010 655681613 953684501 187553849 230573431 29286961 229603097 563005791 289741761 823425049 530383404 652880461 342688227 218187763 159963479 258038030 728628664 284072592 56789492 421439121 295077976 442669098 369808881 317812809 477565343 989961890 615508601 514822958 760244826 756892837 382743732 756872408 496398208 922308628 308062695 648108397 405824377 179295646 271161756 302177153 16316831 381982612 800497121 530624298 545184893 74131726 495510539 884420123 248404541 695730053 524488988 495685122 772366497 442800615 629161834 126694021 468184894 386699366 807222050 915987330 103249863 159783010 812836802 342681130 238514084 248790733 18924884 6263417 942869289 227832394 981439461 107296422 448423684 332491689 348243082 59011845 352544823 775920189 230002593 173217808 278729219 223340460 807711276 432479623 196928115 775824259 265973666 919972975 498752394 435271532 281149800 550768780 105099226 626178850 14019699 621832845 847633157 554064164 52962800 641339764 757291030 588348955 122886504 154900522 327263761 833558407 993254754 186754481 848391634 709576012 265002654 862110263 180393790 315446327 881562087 551946385 983249562 962687963 397463050 410049512 252110573 110396216 250673717 355500020 563959987 351079255 156707499 348293146 969155859 467623026 198533549 460939294 203899636 821918181 319121604 910284555 940441935 357128670 37486740 632641263 227812870 727590618 790273850 793925442 108125184 218645666 89895425 758420802 759332225 411215447 611444532 78471165 846465826 489781110 766798309 381786200 435670764 527616962 136961306 333756922 674150167 365374672 317038754 625085163 271019810 417485638 472867210 157761297 751989912 675765285 353355218 854951689 447073511 380829345 463725311 139925682 744426510 78723798 223669235 180124334 668658825 494154560 38149315 321260123 817132817 114435114 553208540 213278706 939579938 624582176 364045944 191103808 685290762 554537614 355562194 670864252 99247035 288649396 599746788 256195678 565409793 688239126 672438916 375737894 68139099 377264292 281223752 953968783 425823663 821823292 742235671 138913166 78317884 551987307 833781610 501982703 84821835 187178477 265537795 27581104 384954788 881786699 290167918 809166447 818337343 455381402 397069686 361064721 769196982 551721016 834975488 845315215 636481128 38497198 565329476 381207917 433193785 181062063 431844330 764535621 428440987 768995407 512666604 566575988 895745533 674952801 13023050 429883379 235790866 122570867 184087536 500575297 391705074 905145906 570043044 220205805 275564455 851425562 545130115 692725866 572095444 561993362 572642104 810741817 158236369 146412796 665692879 484025416 2735211 379406686 854553659 182424369 763183978 148022955 658140040 21040013 900717707 767333086 702322019 456649311 171669575 584484977 266310128 849182447 807003682 486785829 302504976 533453061 828898414 326135154 654690575 449746180 183742363 168214648 112124578 465604927 586381929 893987484 866466038 59179927 397298441 100917584 735164523 423562532 494211959 687725687 712675479 845164407 724314466 926654099 282392297 262846008 306661160 958663498 304230101 354226182 961120410 254239749 860647837 971684244 340448185 682615652 578998098 112312806 270974561 167925469 593042396 232231055 265895261 701810690 833031558 540539158 104771989 753163069 933818884 788785628 168943885 810035090 284157926 680614649 814512395 371550177 415792567 973124211 808340947 659695459 884611036 691578845 213579814 157398133 914088842 279331048 993074174 776348344 512409844 497712287 220650122 118325910 640478665 3829723 882008270 597196274 640627942 760957084 713510809 835370227 663201779 956026056 632221803 391252945 710124012 396799703 237513133 470801176 725165012 433234751 976618811 178104694 511835823 559581628 445560256 984789806 946336624 893818185 799891393 761761516 930993087 292329115 42810302 79204566 225581228 414451327 757876789 886114362 206243624 514212775 999589161 75799061 790455271 503676198 311048575 450684786 125315367 80698255 726378585 864193370 402201194 133576128 832235311 34962890 921650262 912740309 381141051 351514294 366613996 580856499 521057674 959193736 530416317 699441455 577015419 132627251 113977591 929027158 238242325 942685037 320448883 65714271 565743900 912463487 995893920 810089318 852335494 179053084 746459040 481463852 594266051 651005078 989840978 531395962 418108240 210591703 388749354 437032412 376176427 751021579 801087150 397512235 943509639 707928410 148591378 975113834 20473810 183865245 732844453 454124447 382280807 994955110 798870760 440773106 671310855 42638325 904050348 49869141 169858495 336610829 805166788 288158396 187026214 858312563 512494610 684973124 807195122 257770868 484744719 791066702 866048912 550660947 400425303 782892295 383771472 212781834 732327530 20246052 441106895 74954900 681281711 88566325 977695028 267575689 811510616 448329259 395233511 395130638 705768893 542555333 401003490 138003658 958117836 960532093 614205675 775804312 513697881 790528538 680770557 502925118 659652281 150852345 302551414 915218533 767556627 952863194 897360911 683093890 267654882 257518627 883277754 654743693 768380113 850989111 281173206 343389082 182268894 65707838 874440118 524389685 473461564 325511596 923489800 667601181 152962822 124298580 86169009 111990430 784464776 373073228 445873661 183982694 621035660 979227871 4643624 932203264 478932300 73150767 979191163 814911749 753415288 45474642 24759342 522580198 998600202 834364131 750861782 913754428 117778179 788747953 647551111 54383000 732127888 370245770 233993792 239795719 255040098 490581566 382643153 211467369 753398737 198999323 917846466 655492862 115384438 126073253 487866383 706224819 524468075 799813984 356943190 56774310 310173751 689601303 479551577 1464769 351139460 926182568 723175394 189415275 831067647 192022680 413686486 903243434 831651616 982449384 694826439 164067479 954305301 629929578 200090107 535161155 126795816 740907230 944302568 823369685 566246868 826909873 847188349 281145723 113014273 406217649 748536034 275198139 909953043 754751931 558769738 636847933 439042095 629371057 749899164 983943431 366256380 529739630 763744016 25134900 29839009 813659402 984838189 923077865 886809095 469055335 390063266 538058175 792324881 757043227 248847513 280941942 368366222 110919596 712996517 373199569 24381719 760980267 208170013 178778719 414777972 717384340 931688332 135729992 590995363 627124317 923156679 267641753 952222280 854891039 9050719 314586766 16545186 704039384 708650806 807572731 29222126 909834551 185980656 113396371 888701289 613575963 883843560 735604794 385658225 228135022 839196744 445381616 385848673 347013792 361947189 462497120 976569347 21312119 18263846 460453887 743336832 53864540 737809413 252016124 962122810 781303496 697178931 163529618 193904576 72767037 351590217 707931586 608130362 620777652 406430350 881528091 191497236 454227965 981106185 368318743 987242077 628128659 555558097 226243269 714366197 104991446 10410635 24817944 795709128 539330710 847535453 680831611 748284191 681336609 771273973 474969585 885823982 674811078 772179107 92302577 11023037 680799704 310879844 440575968 807797743 88887732 782878521 814066594 415835324 408311603 923463469 748790141 61780186 533675044 312744687 75752876 988772004 833310854 546486089 817210348 524549224 426086221 557702732 962832304 54783298 237313810 651139102 357162434 956503402 385838926 541085944 624136830 357119563 573639307 867283744 48076098 239304683 217284972 218746248 255723391 352676699 258030834 801808550 327464366 465048272 708928830 508016849 589251183 340180891 963856659 166071211 881629046 755915261 664920252 726513355 610341713 849633866 578358918 948959330 174506958 339784740 360272395 107871669 579876079 645243192 710308673 316224859 62266481 905645294 271030566 64322969 977752561 41465262 534474975 103940302 4546263 620819909 842299282 734676483 148050164 600365050 365224442 523190204 710791344 175993130 881813235 554199589 127969133 23281482 184437068 453871918 241470111 189067251 633739881 738904009 295082285 602802239 731303125 818408635 938402107 48183315 986033593 845898037 767828975 633450044 106479196 180181476 448855684 558596935 86493459 901906980 621228548 528566620 144201500 910686979 372161426 266946986 22221431 746713874 668529904 397843614 451655580 875938784 521390051 484837953 519602664 30582285 752773106 61422593 482275284 708611595 646523535 938306498 337627179 287894369 954396431 834193561 23978891 180711210 797247957 368971214 952901202 728265157 815069748 190505108 21623991 450422293 100049139 930914614 194651651 802824124 562544130 577260943 167024394 75823464 128595963 946141657 767870217 451560813 122122523 892444945 256848540 120384276 243672899 374673512 392607743 508888891 53853305 759168370 287725270 813689744 486627019 556678962 497686117 891892389 331307056 621249262 54459676 333599596 970399446 474032949 611252585 396833028 721315834 479505012 279932836 757907464 476409365 222281428 356428064 301689013 286103379 807287420 639038487 753899157 855337441 502068406 203742324 827556646 641138528 754290377 912551483 229214278 444132824 457748165 758809432 677155304 319672884 611574316 901413658 234675974 39021246 603694348 907305118 87076925 560721153 923792393 654696585 867148895 763712271 387271143 521844937 811466790 635736424 98079535 361814004 469333550 731849467 877180259 890744371 343393172 773525689 341129614 469285728 963238866 68275692 462170977 158155743 48328548 657604790 794676780 95231611 163508158 445575584 774906928 367862409 992493956 286860730 481862269 656044289 357471720 902546701 724164138 114440877 912286542 236425014 303270485 336168266 484560826 311986783 837547190 819789043 595993546 100973504 588174483 828685512 175641699 6529104 359648471 806390485 441506927 247035419 121858945 930495284 422066206 347100443 408652074 141727656 618830416 432193649 209484397 369186753 48262963 852270313 840003457 214683328 857858879 292527911 893503456 816699866 124130255 683029360 142274312 549612664 73947508 765680208 181767894 17356935 55417941 77333898 407900436 997395500 74971668 757753163 549011938 18368106 232577225 352468953 712644413 117438955 886720452 757114049 461555668 647162071 797130420 382565580 302745303 918423998 386711051 274866082 751671068 111243278 562549421 765417443 820880366 840496538 800600672 839872969 594087588 44038140 237596833 708622163 724954671 587098638 568677413 473089799 690019883 229674080 632770843 705775407 130549812 377845538 6196840 550786461 714087758 508750908 492743984 554474573 847194677 777606434 700831929 758413845 789083378 959838224 862255766 781272809 20295751 376637345 735412169 70761557 834780611 488687166 628703229 388413344 758553477 230054380 100760248 276850464 947484456 471366265 746187122 547135317 495520990 563191713 311472518 207920741 464986858 738846248 385552418 744904586 30400158 443269086 90417794 119825224 873539389 152552814 188334733 782614005 298008321 618261884 969227889 182632794 891171692 625581235 196901334 607404393 557288349 461371743 30522077 996314420 411372425 657590558 82909993 97989465 929188714 616247513 892877501 471231263 390871819 819759375 972069895 147455793 67520491 828879322 996200548 674049544 735333636 114128113 511872445 87665223 813960943 393498790 937065737 369510650 181659652 91024446 132382173 744979328 774767496 668438464 192291249 958291526 907440340 39412897 688058379 334870132 100973708 733794231 454694449 629245015 899541010 791629323 224616887 432417677 678578454 223754152 638162802 593940995 317854676 141036802 765667441 148813322 722257088 460780883 40353359 733761640 479447658 836499945 594165321 639895957 293620893 875456196 617662202 581617663 751218249 910724834 279995117 858565435 939601210 958430025 715083543 583918654 141751013 131581964 692949795 151781947 943234579 522612948 781017627 727012988 307202046 923502992 523024369 372888530 824341472 427506374 724639532 196634162 23101079 292280708 104614581 121938693 74777830 791604625 965707539 128536752 706776436 506816447 567886933 410947919 147017578 213721718 753577768 284989912 829240515 651343624 672629535 693920862 450770689 330342546 230250596 411676601 220493904 264319021 626272513 816006646 198110033 722731343 738574983 982022976 651136116 781238202 100296554 327696208 803852069 633230445 913438383 714547454 686350529 669611010 199188066 594479762 944744139 760711948 810918824 188079335 418100437 741947027 402896586 72576474 575365101 63523463 213914011 477569914 338385166 2005052 370163481 45664887 914419072 801647011 166407925 428743838 561158043 864453791 542821904 221032336 535656795 31808384 143150237 631088560 561300446 438588800 900207351 57871674 851937485 329457634 156471680 529918850 505744906 52359415 263959452 19143498 264755756 897936938 46089066 115690544 763284009 145467783 462049606 692832059 95997586 256954059 697267152 817610303 920921307 469044460 712404993 749060632 881836772 51811311 338635242 695347504 984605762 755813054 633463255 921005340 78442982 164310702 721098905 850281186 566192069 119718966 737498954 348791304 433439731 580306309 408401244 43861092 830407643 230221752 571462363 796641353 148562731 964625101 894432447 874555588 912145230 418378024 752213204 922840928 733659791 326753935 368697446 947788986 157464190 225637500 300729206 603658085 591298047 259983938 45280705 856584263 362999882 788380519 969901102 425807493 960461438 102918555 582436572 174259154 493794873 375171087 493042728 633346510 580214164 632602748 915714827 482741705 209578976 569743295 966734463 317859578 429225411 155994775 191581626 865866802 392091491 135257682 863767066 870134513 256009961 588248600 720116935 905468428 329711210 971408170 707262603 956881871 188638287 171225794 495853561 683716223 586634238 877498275 556529846 5422397 758280481 134695586 419283713 189105866 782213324 622009790 255949268 608482098 317076635 921284736 388580638 733607003 627264116 649611200 935863833 155953517 40321891 689834300 133779266 551325708 666118907 708454525 843918625 991087054 588786644 905958756 21835520 44108157 832802234 148169546 172298445 875793058 834777011 381940083 250711539 154049848 604671305 137243859 900732044 745174642 204272628 231322478 412744891 1760199 201220270 98185102 248052104 224703085 203428930 442909185 635618646 174909810 920899811 25096767 349300826 466948119 216838248 710654966 509299466 940935233 678591521 783066387 970046195 404048792 109487559 740923357 432600813 482947098 99231237 716990393 704333076 381256896 430401769 255426560 355089738 691979542 871547708 420275202 251029190 43925380 938436953 960045025 566856177 521023074 348345594 922036652 801893737 507117074 694748329 33965829 820868142 820358571 870675095 626737177 530228613 781788486 905284095 847615219 814720162 830008832 824956064 602664952 956506571 72760096 82185855 93189460 395214047 616482859 118794600 803963642 879440776 35578570 228218810 382168466 567995068 405379924 342257471 244948510 363134233 127997867 674907501 697642770 387202189 626976854 675111259 529125502 166489810 487390598 60079458 582982665 471239978 834497954 720800592 629700561 417184742 577891571 50174153 491719572 475838695 880421187 499050272 387330699 185008696 912033749 888829672 268964959 421998953 304400955 370536435 847249742 646960185 898482757 640388644 775247673 970870607 238255903 528942584 482290807 347944149 670250984 598410050 335664173 328066085 142192198 293508285 31064923 120961246 257540234 662961669 157540171 967413437 468023429 201029162 512174356 972194002 448461587 310404193 602072469 706557521 546568133 834894171 379856041 242715609 479960553 270295455 174204143 794973535 86456366 550844456 604341331 232712136 686921318 27281456 441797541 595756690 169303003 45968517 787609610 517691351 851618840 150564074 26066861 28788645 990543473 276446273 896505788 541768640 143668534 44639950 801897899 566557751 275855981 601627294 312010902 289739379 368453077 572751043 124948586 917338371 528964616 838079401 628885895 694359906 600949229 463941146 800639153 908788053 703097536 284510711 187208048 782917388 601329706 647462502 210199373 208424702 772941357 298200229 252852009 562047761 705994524 782287099 666870198 677206010 453855496 426466724 15348580 812383499 274434137 976385717 289804480 140558597 394880497 76410899 45844612 919895068 424768903 10671956 614163588 40728446 121268061 477052705 37441132 87149525 49773798 180083267 450114134 420433557 487391515 116677977 337130840 271459408 714789672 920976036 174168315 569038810 280341020 545010375 395531897 872089385 717287798 155588148 377168232 669694389 395969019 821214949 85037559 407038084 671354266 806030752 215703236 178652379 548609111 984040307 453781707 569726100 946857108 719160128 871570254 785140752 8809474 444323944 914194589 491993406 477298845 607181253 494091039 135260213 333104603 857076538 972924263 533591363 698211602 760984186 139656769 963210824 685087349 275060142 118990133 662119733 844621046 161348554 416390095 858962476 953814074 622084669 812420323 846227547 941383880 105970250 694032147 648342959 674637461 721719033 121612016 509013858 248783192 242027068 62413349 475702203 670975045 241451748 48384939 652849912 762794833 465037350 612815143 216305408 957843587 390460750 827087273 661003053 14853971 328840444 921168461 428496573 512043412 265148334 63349013 769584764 389532334 993446844 435731732 4526767 343903402 196123301 992132085 865924836 606591135 567239146 763054388 315368284 689571820 237636768 902043772 319308686 819929358 448801696 487592232 22422459 784135948 754643879 774901139 531494617 652713247 338506996 939784921 781368966 602418963 18916048 196966729 89031906 28095771 655528509 112056935 941180541 508734912 371931978 607474142 282391835 605866779 942545725 749084418 504264217 839193328 580990920 149993849 43912167 827315191 606930881 760960596 944588954 546569692 315460147 858596796 967418531 939748117 846043103 655639582 814729625 904046773 803103791 28779876 582370521 438727703 600549723 793802464 629229145 49938115 567284615 355635971 361752309 897750178 212376151 14913427 305727281 135608762 211309459 121116816 403371998 363131618 584785245 236791734 62894264 290966419 795802971 96672788 474921042 448251000 724311297 981083285 152477705 95304334 630966643 621012753 875841112 725470924 240284180 244195684 581285535 74101902 44956187 64609921 821516135 813954828 292916599 71174508 860801953 117389585 174643951 153384470 46921698 363477192 549354925 373897206 422286605 323051379 753064152 969035993 443815096 763851105 762702134 352174382 701587016 90446740 370466977 375834750 902358106 19826362 727339754 596116743 769874996 928638434 452076357 489370427 983167022 78684404 668309119 820152812 677597579 742106228 347456499 754703844 787193977 668367169 444257906 474544761 50802961 987837442 519251288 202631881 557419225 985942696 308907328 983259617 250886673 934092436 192987342 426859194 675612106 217906714 866457193 747086156 470328176 489300230 891667835 803201270 562932526 652138774 252691970 540405644 747200655 691405015 440002444 220880046 847448788 372681274 720748480 445142208 179863283 534965089 951323999 423814699 144716573 399876163 12513345 914998840 62356991 272292983 584632719 452666490 503134047 251048557 39759439 491263257 271638174 418227147 247380239 888187394 284889767 80523408 53063594 711923871 306956513 68887592 876609878 708141797 449139821 255694032 439562352 315017734 920378625 333333548 102045806 406323367 986913474 619197646 266717881 71398036 903874886 16940221 442935790 547800420 773985127 955709119 643589135 753534544 819266608 491834742 365764173 694909098 329300620 850617551 73334388 808665506 40325886 794602888 477013454 739282059 29727850 952714349 168211513 134190524 193889798 682166291 834783188 137399780 661396783 971344495 510618433 663219693 255702987 569720883 570247679 656489242 161214081 147897041 742173851 502439914 206202405 780841343 774875418 637482528 758835110 147406490 291164714 816088150 404221398 999495675 246394204 689817121 176164970 434251052 529434193 530756581 363825561 10721224 709858677 651219029 646785685 285388286 92936987 331617708 669387494 831225884 827744761 48693150 842602862 253923073 744000122 226536572 452088492 515417265 987570055 726501102 890315967 239751304 23210041 187975073 953610154 539358868 857782969 724307629 60273732 983491596 894506435 656172136 859671701 618737648 703564596 26543206 227521916 777062829 250435878 370722117 258208491 887157093 702649337 875827309 835708100 750233965 61929819 321907082 632821013 923358431 455552457 492687480 285009358 781009824 469616070 987760405 815811661 776201016 268589094 627499153 637672490 91432663 564028257 986276029 269086771 849514536 244488453 641352001 188206768 120766805 586841271 768315294 971355746 681277320 188978130 297866593 216204807 418602072 186199505 353169432 813345218 370283585 437893260 78606960 886738873 644613098 405995471 885244498 160192960 227783259 137187112 336009601 604295922 525757252 700044902 944454047 3819101 309761163 901874928 787151665 612698396 895722698 220745372 893528035 251993851 920245828 572344625 179790860 684107548 157388722 138291970 261364595 132099754 478044648 768216363 460118149 223394613 412122052 714712387 799734679 926580775 30765166 253285023 304758947 503502246 442980146 143005720 806208298 688188767 543647795 279006689 625611009 87156101 143440715 973273400 230292358 463552760 423753365 78128623 442976914 804882187 273399679 903737247 664395892 361143465 619756607 395067526 178267270 548369672 937322636 945948207 552462491 884504318 35821939 155001117 117766352 627763844 294803607 220835424 364868396 509691334 52344566 242764155 572862923 868138666 504385455 59897562 495378205 601445518 524118843 972632391 622162698 625112010 657093735 408658085 431542796 637164886 150438878 318884088 749525744 785196268 636884746 448986652 104201962 816334586 324631815 583852758 68004860 201279274 948550212 165432760 78629762 39824888 409883748 630188419 720256685 406981464 271333127 271139402 80978560 659260509 403731258 812508070 653589048 70442999 609397350 218656382 669287767 53609836 255248067 738305459 637652353 786364069 438005559 318083232 718597043 641017142 285083753 69631688 913857825 811744275 806970811 406999720 364655079 1886352 374822558 335767095 33210247 99799351 612793324 600116588 288282110 926348544 381399056 676881815 538525970 363603292 503877857 570422886 548754479 929336604 878910336 445211166 757419460 722249738 792875190 931117744 864208434 412930775 536725144 624541378 839885014 430475710 477257309 329964433 277427814 220124410 827059444 616711714 696678762 382974182 690756364 537083501 625392760 70751978 707756058 980892406 185696516 884391743 353266804 197971331 590939425 899180323 286469996 829348167 913146116 837788476 861816585 646540476 962258876 490267100 870996803 635966870 715327654 936196139 412067926 445173918 301570071 735683460 924353897 96645835 584469643 354519695 579573764 581567166 422173664 657477724 594475498 340020773 748262480 337096569 2036562 564198867 868330819 629495047 581268866 231916008 273340185 219569698 399615388 832610935 480688065 782169750 189489028 412588999 999967734 191222896 527589969 365056666 183022364 662317622 856331739 37853705 77182724 897090814 987369923 486882686 366599963 787219086 205663693 392948601 548845103 919845094 671594869 648245568 186646646 853784557 674027571 803385728 313357353 168563582 110623879 781286898 382389878 959037764 612314836 790029873 100426210 106357625 417642581 838677012 637056373 127626813 771841102 72223429 782242822 159135732 623686631 167539981 866719780 20197019 786626872 132516488 672109587 712189255 591051360 55965738 328830101 193310634 194891695 339174264 934394339 254835003 178094189 815185275 860435436 509150846 739244087 493942231 325057061 746358873 375983820 611674958 206034594 69058566 412962834 151028167 187676660 760117627 368198971 594860187 357267460 648374803 352124062 470832635 695371642 791275143 1091356 641851495 889968573 804198176 105135420 130573886 85803969 199566864 971943114 280427172 840809050 602857442 465101139 931124899 767703570 186881559 564056828 397266878 94030969 987340777 322010434 947810277 658313065 292937173 238432191 122069281 871538847 16226161 610561661 391741736 796372841 6255226 232147730 987877766 638953006 747048120 146534617 752882158 7485768 777951736 802276907 46878864 50743357 769458707 263178407 996916427 856675585 371133079 926786501 906835726 305853490 329663713 572927339 371118544 355069898 80615457 135427601 577788223 398301608 638533816 991489275 4056247 359934189 460771940 114785643 678469503 283137451 898495837 191347822 492956168 34024037 399224221 724315541 972067717 314488264 162234298 289951754 471769710 630459569 309646793 468927363 895135313 344061297 210099514 405556107 165812468 125284578 289457646 774259824 499429969 189219591 271185905 871398057 277998465 966385149 283529311 259050104 487978000 170158136 206219725 603975619 282634456 291843800 988101349 912596571 626205909 369270385 373495074 434844652 339136339 462130792 255399326 395555644 784274283 828827089 720140746 645477015 957747250 563465666 97520590 920190314 521781267 461239193 734261293 393569223 936421369 14702198 490255890 723393388 661258704 39433725 207060618 903230364 785141242 320146082 472492240 567271357 809480023 764441974 404431485 583451348 762572120 55284286 903181865 704562929 44334628 857508572 978330799 993225823 795073958 206825447 268100899 666992344 255253810 745715011 991485324 444207300 429599896 615427090 762673124 312576400 970930665 219366567 745332722 499651980 338695326 571534672 741697733 473997824 249790496 526119266 106013500 294620037 513032739 815329690 457007288 502142494 499370357 483618282 589419687 43559971 325735515 622999891 416222728 516535033 139992973 180078758 18162766 636647993 452840346 257493560 46954906 470475686 34574597 671973632 338929704 531771566 447713738 421164465 506527673 389600344 698374033 114517947 637783893 516801076 447683710 774671536 401941701 428234998 76729730 953722086 723643740 287706178 723326058 127247500 168436438 971913879 846398710 39669601 700599568 322815496 224472723 851372233 802478687 903519734 320466335 460369692 238427125 206101789 748076783 745309749 812762606 58802641 301171230 99552734 894719962 754036833 11333595 767942376 355716644 959463156 596333165 321761794 56207874 890851627 784238706 375145057 627206605 150907620 45387174 112095490 650320523 54773000 861398560 563825934 573208561 604143248 387641763 82482119 539435275 429176288 165019445 584610710 412830132 412356156 15919733 261940581 22228526 830655662 898699370 127603878 280083016 794508376 758088366 767570477 954309739 206997157 170129471 325517144 169668908 820159202 912489966 3562656 293103742 898064132 103459839 585791894 656504831 638961442 629832237 184159879 456471947 481605626 529181292 603037077 84753517 247668295 61726116 271706381 400158582 394249487 970015642 357800421 698245219 166895376 43311357 733529211 28809262 228042397 216406730 713757353 200106537 469554669 736430257 48522649 920392182 802832504 75790322 227493366 428208205 566114100 190944762 424885493 569675937 350160706 281198713 816707482 215017846 877211476 931930660 944330935 625909284 466350071 927611417 896092215 884731394 620589718 741466201 86542390 190322711 891148830 196418170 147620201 861738194 813108954 143652966 522936241 220500914 526415696 253783913 874646159 592253806 690112018 664020375 608715203 482734255 334902936 521667429 845222541 284182527 648920868 789405052 573672365 717012816 273284547 271642567 177706252 336751868 743522716 309062110 933069367 456211706 863675041 668492218 172734701 80042999 105516993 977422101 722977746 693157525 767034931 849734952 135922270 195620872 749846638 842163178 998305531 529905681 172201910 757486702 143039866 58603822 442650334 876586554 664286514 846110771 695322964 981365966 391932512 806591187 916059141 46814140 410997368 779390504 88595434 847014131 512459765 564844859 179323135 300735298 298025234 380983206 201504393 525418907 546230788 116059167 46422219 785360956 241849533 201024322 628025347 998568510 711020511 269373582 792336989 803835790 964812763 776839510 349161736 537350091 63897021 149365100 441265632 809948422 651780377 999303341 391068817 245214632 853619360 868628183 8151825 498516888 116305024 198720883 263784615 2277549 495996696 568572873 176747153 516072793 529544364 254029362 911732196 340840652 717931188 968289238 42639996 925664373 161003844 686882791 376646248 975960906 611739799 252843895 962241798 802716816 834259251 364677129 730528316 869475564 772472339 362148585 892427230 210363424 694072662 691543364 262750446 131973336 597625588 605256051 32268987 225508868 604727394 374733692 713914029 995145379 951673810 383758461 129052159 969660444 741773001 849800259 870601291 108184330 437861650 149100348 345948938 378207986 79972943 736531196 333025778 88040850 671859498 971589452 523374961 402221723 337148239 91880734 291507393 229163234 913533710 481805470 859169757 455062857 697005218 415222189 811772022 525428823 252972823 73236682 836788929 593032415 74880783 656315106 297347405 388351233 860385080 827478887 386865175 99814149 483850907 950255364 613583990 511872106 789295263 254385380 237370030 330719950 770864680 588986111 744244278 524318042 814600991 572752608 68998647 783308666 731430756 902485382 192990664 302368264 864361606 451432110 537663908 323762729 595400719 530910780 552156617 540164958 992121057 457367423 325434477 69877565 793209260 800228031 658821803 258042042 633599570 310256715 76790855 30453278 731479260 898572883 669816887 275862465 972337130 135600587 766296698 344759622 434451819 737506086 214775503 849901721 66608338 875691374 705036114 342757581 7993343 839923866 763553617 768104990 83579924 776545649 183168859 599649692 530377297 371834946 727977415 746094077 736849002 732923474 117447016 132911420 47529612 907067570 195803740 95090584 224783859 623139957 20746679 293527286 378882282 901769614 901114761 741773715 887418906 691976976 41597330 304909400 532210483 972117596 298718892 819455671 312924525 824883461 523562823 793043619 400816328 839718827 829268304 198232156 159275455 43347558 499250867 576879291 189569745 139243423 921401918 159210630 509934564 632385128 231729709 62923533 14400504 756149764 636626320 976623386 693973376 180979123 961192242 460491257 522395591 811110327 770981538 217785932 759331831 173321481 998008574 661687662 405834026 178194678 710444954 364157088 762481730 407051623 481605621 492146576 22476938 97328429 635480072 480609857 2157436 455028104 631679759 229139539 57726954 876220247 592041105 95112687 924053659 185703196 306475789 478223826 631290463 149900350 659695728 243951102 309951607 787990646 11102474 577172952 786859462 29061329 401960971 84207297 269632883 317866887 965201118 423576772 693161085 395430801 612450159 536011549 156696327 118296343 882643888 47066282 597413983 79790655 457056878 481663164 273096781 568821588 79469471 881373567 928675475 925958291 381556840 913610197 626202426 422077217 744260524 526935026 794920991 411059302 400043199 357291275 327094493 277424525 512454088 708264562 173790429 82295138 966023543 247124162 583530271 595024000 187975313 647704682 670573445 36161333 958203169 33029065 661346403 498478483 353709381 9269300 117955844 860184268 414273962 256438968 202219317 464212527 61895882 376222546 783171947 400733030 854824920 201410767 15519213 495303752 487402071 636772437 19671334 391089386 177750947 964967091 991570196 36350543 356827855 645722325 898571586 722296282 127765344 353309870 937691641 604478605 767709194 95352815 589796856 474785989 998338174 955765151 193834449 943245404 393558277 524177031 179419292 185378321 507622745 998331194 737386611 536678995 183072252 249912317 407560357 711031395 550365274 477117156 566328374 1755280 508365229 623271271 460994436 834692661 860799020 305679658 247508417 604823472 845289685 374839794 877067962 60437868 836742480 801682021 178955487 556856691 640885226 25238185 144492209 115178663 746132060 868928657 2915345 78310574 822122338 224853029 181260896 879682611 664491763 54488080 127835152 338457169 566591789 720849560 415660621 503765362 743458186 518667424 973484701 817316489 618609224 116071329 607123626 686652641 989707799 873191490 622406635 595866630 735535491 508307551 637555995 573469372 806596334 186066127 912784239 104585092 981344228 900340155 723974727 320335669 23993171 51195294 962357115 377034909 278373341 532397517 243392857 877973219 978382992 219917597 440124068 406617021 727968277 640425684 540787946 118883438 828843760 767597389 579346659 658662391 273911495 197598950 551428154 508306219 451739689 611954579 440101025 901422723 379888129 299140612 750656950 541111281 112632998 966831766 138485122 594962666 14974798 967205906 281434056 700133128 948312505 864778063 402073959 747632833 602637429 617357990 291593209 847485982 572605650 499294552 844049466 19674688 656692163 172618691 340589148 785613918 817820270 656109812 24008416 740228421 247726658 459398637 592544977 107795419 250534728 551437712 142796502 656251782 445722401 953947847 574901447 347799139 535105118 727540830 239546301 945619342 20268406 263286884 621183715 519987825 207402383 204599545 992643146 3537941 453017501 321064129 226145742 27797424 896502219 616475504 502560694 714878615 715572059 833415347 976460343 315842942 173807656 641409460 996880635 171536840 440440697 376673372 250861454 77174938 140805257 616692341 484264678 300000715 498461135 552792179 458157714 675608376 476492438 718718723 257047164 533297511 15386682 898145170 256082344 661028034 881965461 370510551 457130933 443390401 404852567 129929431 747937051 706680484 301711141 493031230 260489106 626546500 719966076 607932013 255960942 935521175 335759095 999746003 38200819 306934623 255816347 661946653 134171781 814039054 679576474 212686637 971645461 144247719 759806882 226151912 601977021 7124846 22712545 842159931 539331635 720242429 797523266 276881254 270795272 374585598 954820256 661780490 670194503 876936866 513240372 179835403 368027901 496401688 478130647 861892169 473269630 659387096 484650452 264284537 344004325 350242083 399093986 987013829 838245887 381813387 767487317 393728692 717474138 908040022 873404365 760032349 458073258 84211276 142959106 379524003 350319062 284132763 532068154 662624547 35819192 289218256 116328104 58044196 459930408 514486344 383544652 38263397 537973901 343776130 15730054 291960261 261827297 125353074 593418573 970787098 223261573 73239412 239008434 889001138 555422461 952994531 262523346 96595632 240352462 958619773 220680645 499095082 807033945 266846884 349860410 347380196 365672727 577333885 159024730 221164449 553980361 486755985 595161910 801903346 937309753 720779450 593767356 683627862 287115603 869729862 991635451 269559997 387346599 944955493 552388258 947154638 560626491 850026143 682451053 965014904 612948161 833521185 646813690 977487070 942454984 918321316 55333167 810323387 925108952 728285076 247761909 510832089 662917269 320609725 21652407 295014885 543692270 89324586 1450912 313352270 706264471 934639984 616503558 329504146 973188830 204977898 265527326 828770742 60879414 952441587 703857815 184768996 259255654 425646306 132580448 763744850 325704510 142186919 706139490 691999532 781367696 399929465 458724755 355929543 433163862 262125588 821449165 792975852 853550751 945176675 261460730 129745306 343799321 686772150 576740664 628541449 755585903 114254702 679349142 843280491 371557403 918268840 767518060 34592350 516404217 98898490 801219106 22343105 779733114 392125824 691084834 218465993 372045051 347243695 982010144 471847540 823548279 425815082 713274026 819539099 764591055 371268387 586379051 453368565 841347550 711455715 611832648 18485409 736903621 852212153 786036022 666393724 334125417 331478694 632505751 91366386 660538325 156106856 716444006 375593128 143851560 505158769 758050929 465324885 301033100 206403429 894946522 212404512 423177310 388053096 169418285 595502323 428067758 569907571 567132286 624476841 148647606 810852826 161658109 166754209 18398167 359844834 390917706 616183340 787737517 355577908 515839201 5449555 30972399 368680012 597001994 319539305 333546921 171771721 294576292 213638026 82430329 130611507 478389983 99099507 424388979 49940846 535132145 729877776 55239606 5575755 354432823 304166166 988866177 48193643 940630623 119803948 434669195 846734920 528343210 242479551 423989459 681385059 639229603 25866055 768501697 533695677 386744157 936447591 588264034 905991362 296472706 116469030 727246914 105295061 494423154 114745893 319270850 920055697 168452228 681335303 256534387 202748207 727366211 94099844 541286444 928348563 151769748 432685905 789537006 959795546 790003724 660426670 740575935 280061755 409619975 172216626 643391965 515864791 359594206 558349430 221201804 797024197 670195389 218353613 803627920 511236348 314753704 825984462 581704809 691624428 491163822 673166483 844202592 438168815 345876669 711853205 359875276 23286957 89392424 796038038 212213424 968429542 236938460 111638093 248068648 326832195 366121066 834550635 360512809 280034577 892521940 910220617 35985012 511365313 101073931 34721507 692922881 465224100 410115845 436149445 241849649 184371448 874217532 639866742 549903589 332537944 864627718 299120682 843653996 56935167 264520781 317081380 393670183 654374102 204876702 102244678 258030095 533791240 750811116 497854021 297535825 952269513 888143935 79317951 740164502 606378077 294935541 535208919 109089957 259443586 490729461 201247248 330339576 84107980 741326078 680484054 741411956 95976271 264544097 986559909 52797736 312367170 304535777 680087111 326715471 808843657 52214862 419670246 123291406 998524519 28268824 697690289 266368497 762854136 844328659 722877897 931484897 643515765 463091006 180950896 318202907 144970852 472587363 791842808 577227316 88925152 955187435 871983531 892258253 594825010 140617709 624388542 302461590 187240277 421875296 994722720 517861207 12376532 530742091 859231881 238994951 477918183 527119544 959676757 982591582 422894470 508743220 821283943 606153483 645082719 75955372 178855515 809857382 195269903 166102956 112964850 652201898 184416888 841416148 247626154 770569287 576492949 161433490 766673830 438374844 247485755 733929976 234461339 592433335 467502075 290282606 718837511 96127905 541978801 793929722 779199824 295108975 140130666 784257221 333192484 444030567 798924062 292048664 172106326 45111160 90376370 972298233 15928255 69348367 279908365 986392939 946515261 640178338 782132603 593420729 109485416 368624754 670069757 358454068 50977000 174794559 404925586 794511727 859653425 684776678 835142691 945664991 86473523 980654133 955942069 959091412 827447200 67973648 913669012 694288635 194412295 352369422 799828020 89465443 762946237 735438808 280140179 748929375 245304468 476928773 261380351 796229005 722338604 388102210 692406722 753361677 72229352 989695955 399665329 160132974 215947555 786083239 412455459 537596300 449797002 305496665 336200108 2179327 72153039 863826649 683400692 165920960 344570450 842910616 694951316 465134541 576267879 124854774 262506525 906696388 495031053 498842459 907312742 915271224 69684138 386600230 445023466 307127717 240235874 400440690 12855090 658488692 113926261 729012842 125885557 104374590 248218432 309325313 641256347 339208086 747743354 506393246 475770884 934773350 757309311 202462718 644981494 593680975 42807725 617989498 960633740 812991894 750497580 332769710 989944147 775381754 826697771 66704712 862701211 203658093 845529236 612252057 166631968 654326380 570522891 640083513 862342364 652914246 706837389 8217348 504983796 518249304 272218325 535008518 34327997 301098719 953751185 221392675 562664076 84193564 591481087 154727841 479168122 723060222 139603087 890043694 301673128 679408188 552885818 661392042 47345609 74552243 159007917 248529233 113953496 878308859 582669254 981638862 632844678 756336358 313601614 421378047 683742405 314980984 76544164 1803239 301359279 772541580 552961215 869976784 989564580 741538402 239718105 912699217 112109286 308516024 452767794 208238251 509278941 78704883 168389104 447922403 14459759 173126575 968644728 456675384 213529689 581617790 166448988 212560283 340793675 485611700 689756430 474629154 960871964 592235201 358368607 238811438 536993913 542753615 218306133 370667927 452830502 689239386 104349942 678966980 27633539 108540644 531450188 402109135 425709465 132801903 937696188 661659009 179532299 293701951 949007523 7896437 213800952 690701791 674763367 555165377 757043953 848250045 573394805 553183673 226464424 638977267 406822130 713369213 538624458 562300812 950430732 540498743 456292999 635351434 659528193 576489018 862717264 546806470 161709938 602113509 359005174 105082656 819526105 313635508 45193737 731280809 556283593 781004068 675672781 35002299 403653998 962360456 354412240 769515917 134958967 658121153 848311628 349598768 967487162 264635877 643987134 391096992 540980956 491255428 429676305 320467699 646519701 393218519 248925914 521666880 307782976 240645686 788223554 387725455 633575435 617326551 219036411 36617565 270941203 293890902 249089173 250573761 756187651 429830501 793033135 739889521 329611858 784883058 580035533 438212104 452121737 189992991 561273401 741788283 689589493 125833535 379400315 998373501 619345810 288436852 205350588 45427872 985085857 352679008 140214381 202123795 432365913 237871475 910074024 540815813 598088192 842576256 586581298 199521004 825003894 326976372 698913514 269111350 763787031 793832700 435566978 412168373 642797200 905860903 963608332 233540321 570442327 871324615 797448325 649605389 581277583 510711906 61741751 664928446 658511779 745187511 284719589 258292623 467952528 9205286 452319935 631443505 256974995 309477962 746655856 429961157 43278481 599428473 662717541 47373901 345016052 409322326 489109000 205310859 84644769 393387159 267539155 499751461 116916385 139001298 277646687 233866118 185465885 294839809 956074160 481800095 842499928 431290308 135964346 86777220 307468554 81388165 323018613 140896945 267755363 295085561 768271003 714220599 307536277 515142442 196223077 889416460 407878564 302743488 192884121 929145797 276735739 388622534 829866894 562545285 793233005 452862614 640778383 741730065 407034927 912086146 209035878 708742032 225916017 305595542 529117614 109054824 786215453 516986792 15134945 809773042 355229386 425374936 230177946 130209581 305082921 363655398 735512278 254203054 943532223 201262350 68005632 768635354 972316639 884273928 432175100 263422922 686401876 162161668 509018043 222450075 455680320 565977388 876107524 382953228 100919531 414411940 639248406 570069790 862156212 241928080 648400433 83061709 915171703 532955437 63488787 669604903 352587420 830967433 808656796 575754693 347625602 967246903 126371000 317544410 790036364 89805874 369474655 750682934 939509516 291135034 240867971 536849365 871467066 611820405 921032631 522845035 482449477 34308755 410070998 169531824 309491137 58355039 611242942 612692585 246688594 80806898 773340188 124053534 169778584 893819221 551475944 409560853 31965753 956391875 537679510 870622077 624257917 895087582 113094904 996363432 945620722 141663076 604572692 27860163 759634194 597470026 248234384 44625620 954908407 326289063 946217449 85553135 336142676 763101072 467774871 441861740 552260549 801769663 829958293 123780693 646109308 117721404 83623964 606674487 890290748 268496574 320514328 194358102 462448715 687904754 822079583 110651208 277048358 268167169 742824480 63424887 217668710 836774767 970715185 451604334 18613515 794808951 743274841 474623826 646450045 272138244 265467301 944397515 154587579 702837445 255681797 593811138 494823615 559647811 65155091 508568473 385134543 905996812 286150491 29899931 457789096 968699886 681393139 416886284 573973081 299949051 106100915 305303719 869021873 36594388 538984759 316312040 921265670 688547961 432330441 485857981 848121658 226064502 900011680 713693758 363940753 4860742 195355104 931961986 858150891 923649051 314793191 57134649 448979636 192518185 197993932 579047536 636020549 6982721 602589502 198782723 268399269 688108099 611171050 578621177 292590975 510007392 201055121 645806621 938621403 993689793 688991240 996146357 183820437 933237098 875562646 229848115 447763007 163992703 298260890 807382940 199497930 570433762 469436282 269047891 591327536 316968035 588211817 82194712 283830794 917567853 333411841 465961116 387760352 444604279 704163114 725871265 925502812 69431091 507486105 935269537 978939044 163344833 3989840 538038901 473260393 331938309 472428749 1355440 756593438 364087477 329441757 290512619 530474990 123270029 884672331 451417405 190157475 686289114 511230204 355199793 834810159 121197537 36617120 606788608 90912556 539134299 520946007 56827951 969163980 160733176 772852078 31473743 144120604 381361741 533351223 419609680 761236880 168159214 342877037 235286823 990050458 552341256 411907638 769384904 787381355 262425967 555040176 783460355 334541330 373596388 807952686 629928253 285608074 968274040 673593007 164503657 364728225 312546103 262076241 548350609 420693143 674293668 98977273 481345121 323777652 345752563 112446215 36979287 818505823 125080185 474048186 801849669 124519082 546714226 290217981 29688985 174410907 258241381 315524143 346538167 537933190 108070212 180835122 421235609 554484996 119460975 744556902 252501944 845846333 450774522 271792434 299779498 4177604 616698910 469092443 824119892 358850318 78306540 243981944 647031126 988778638 384534786 849555065 138200632 860352810 332196872 244261663 208924428 22450713 703702844 440775405 40469688 531668343 796893807 419582582 66303323 605623948 119672383 798957882 121425072 296273248 858150260 920916901 464009249 889460296 983480261 453952968 409508783 686713435 244877093 277391362 300311834 881006777 636019163 295044162 89714149 705496331 961152998 202647952 399341941 319694722 158673369 563082966 958073099 364344301 470950899 131303468 871345110 627743295 211310241 14070316 542045418 648018437 145911609 565636161 453923883 27211762 210610130 180227294 342345767 97979799 444819355 978547173 508762983 101703610 948968554 181147280 904354570 208779795 216377699 231645533 681415202 776979843 609287683 695277862 293467544 434842518 659880822 66335258 436422192 175136103 962396860 660142680 334692380 983365467 815468185 429422239 576403053 643046645 114109410 576988740 809929508 643598461 507876027 687287087 998400802 888124584 251092401 71589889 655797754 738078506 540123460 649735405 476511216 4134397 763723356 945751769 165943174 211582429 138642866 329802092 49775406 185801409 705455846 111757888 941702701 778002775 206714763 792869342 239795481 145514658 646448582 975856209 184718479 754603704 938422714 576123748 43971311 376943986 14666179 860015015 143471687 210673272 280208312 964392800 204369774 719848247 830214417 600541642 291198881 375805080 221859584 460638182 982998061 236738273 188741737 967105479 727314976 316649210 498714415 828902056 98375932 94980677 509992697 674989079 213752360 871280632 889059521 395590270 166063559 582948465 190108836 25490319 311830574 165348405 811885520 444657982 80340457 796941152 542355842 375529659 413345723 308825227 663441015 691417937 670500354 213052037 432685662 320811532 834430816 91339694 919731391 424226688 557819413 7988331 852743449 39290642 356005358 313469433 214994637 913142796 427586832 247457570 803258461 792498104 634658755 219412105 824310948 368121879 755137197 504671535 885533127 404599895 929739097 706777936 902197608 913090102 818242762 267853921 191184264 570055916 479736074 90542161 708166215 485047431 986166644 726521016 715574903 293392617 844029874 929265476 794310157 907066969 41882850 397653406 648703540 339716482 158140005 782336301 642660132 825504804 628825786 500639933 662516132 292775165 712046907 51808000 831722819 59729664 879354050 71305631 255366935 132057471 233500555 81890539 877892098 879034951 768189360 216380818 273240939 692471890 668185115 162434433 100775173 236831199 778135878 465247260 920211250 961574645 513920001 280329012 28610871 110869667 302274440 444087059 969582767 187516909 356218753 221190489 914752409 676307961 648960377 449035002 821203801 551873032 268498127 894948237 984294126 218499004 888764522 757013237 489158355 704022038 911095998 985930561 280268261 288607307 270671159 350212365 990318498 393140913 632433600 793032295 51268273 652614963 955557259 932385799 247399222 598200261 466510540 966061960 67962460 100073237 545216155 958160836 265271178 890084085 237973701 546049077 423539552 594785057 14869313 501114556 239729781 365241441 202448574 798692470 979185862 959465187 384234401 20249464 897688245 154193179 619065999 603647987 420565722 562064240 805704478 636916934 29605651 950583662 767320663 271538829 688687867 43733405 968733300 695993927 747323086 794909917 229090012 768684669 166689216 196433397 643649818 576910672 72075774 755207219 893038538 871405431 242261614 451818341 405965235 835710847 643905281 85493392 243488968 459792937 729547865 710502431 515457761 256448924 154022140 433147579 745806770 718679287 995882905 811982669 151141283 317473777 695812592 524727539 752916141 856375849 313895924 972041699 131065234 717179940 890336608 334934372 181592937 296290226 611026459 767583319 305324512 677706229 968580120 729284261 98214898 360471078 623156319 179069271 167842140 799865929 49810058 495454785 474836605 780807891 679525557 843139835 961062901 50691686 490157208 885263680 173752121 534901743 392837141 948645308 727146402 940890682 344034886 903789973 15644771 985605878 723828243 257719730 817343901 572365960 345846097 279625236 583609787 562522985 986799288 862439570 761447638 677715911 801184385 978173091 296736054 244812777 180317920 389781150 151837180 449892779 928767583 194278598 240469635 702139458 592091651 714747150 224058015 600148374 390932984 810561948 59266274 542501013 198722161 475842503 56887052 173708211 18460674 896419535 269873055 376536235 222364075 741176810 536921239 439205324 763415737 326109120 497638822 780375680 364164437 697887423 787438616 156688607 351653778 513190547 326416619 942707904 99487998 639924790 227643504 403274294 955367455 138389764 134767655 904544693 777511184 952629382 538479222 352781809 364125696 369303047 201064708 96645622 349499705 41832142 847710139 742701485 437567146 823564189 34404715 829124437 762873223 912620769 288626146 750690086 539460309 798479994 432326422 981480584 789992055 641431998 300417435 109222873 230656698 847734771 698588821 386852606 954788720 931219493 225638634 731438271 156578000 330174790 407633297 746803455 255533424 695236112 282517656 559662446 378301564 808395571 290391657 747661925 742375599 63364245 236854015 43979347 208336731 514858336 893176224 820670316 136707673 101910852 300838150 113998037 595555322 941052253 208118846 582764068 700191998 791542543 18180508 939312363 947732018 417779525 818587028 805603022 443444760 946624918 306876522 312344531 959717662 60431710 972049012 44212565 627758548 875203294 703180796 430771739 417288533 43883063 100764891 143631651 451775118 441393127 632002471 720364606 226371323 801429244 391048385 465012316 483596040 541825407 721533771 444632098 570636532 393718426 486957357 437417021 513871637 128631713 262046093 637642156 877523194 636985369 934632035 234346653 363730120 755048882 580778552 244212549 572681639 429105408 237878895 66651876 697262909 715391452 834980232 278210213 902437859 151464676 236719443 994525642 545154352 548690029 736407835 660167833 600800359 380013725 724951638 907955496 340002229 871257768 117368122 610407020 237498346 78077637 630537828 157319545 357254081 766495017 824961953 189213544 850486421 653954276 502130002 872640952 415322292 878367506 478599373 955271125 412021945 272155073 463580627 193165637 127485089 201145724 283248303 807857065 848882290 342014533 912852786 445572934 484136260 124920035 335154276 586420639 942032224 34318175 665546483 191949371 71354455 763757072 165133488 474970969 601149156 273617712 468136089 639691285 965638012 569665680 583810367 417414346 116998166 918233715 729482524 502802870 175342953 120116891 698574001 682866561 102162761 224834079 326381253 830305175 876924675 370829201 729397913 18395607 920078842 939182272 991761615 674407470 318140288 555387939 983969340 270986698 912359791 405613360 929720072 294873044 391094696 300172991 288160654 829869319 957822868 174338090 50136028 850195549 184667285 170431424 878564798 27803239 485172168 754180619 577230926 864326507 633590895 588577072 420999448 236120527 176495823 883577054 543489458 964466737 750799037 758708334 516187357 71130187 21542726 982841731 870932315 978190848 325359502 203081368 168928671 415194982 529856897 227749493 548682332 200409760 188508141 476596317 764732107 833616348 881068773 512795887 695018213 167468536 724221560 364983211 864352871 214431095 385090074 398757236 370477640 625892702 742932151 211024490 434577631 421881688 630599957 751222145 206386507 442217748 731431607 793460080 20626455 563241453 840357904 217337763 197682718 830504915 119999168 70108618 768336862 575137634 902575774 800300076 665959430 861902092 410630200 899352608 715128394 929890813 319101981 348571534 402040868 811131222 627166586 363583944 523817533 412137790 618294365 563749609 70925534 153058525 481961776 618407698 31497312 214531737 265494025 949367750 617068463 6692177 226590906 320960304 549607927 938635980 385767017 58311379 82752292 286484487 929923662 150125391 971640841 564132288 290842044 787234491 275064797 370314546 747469700 760855671 714891407 415667897 404852083 239087075 212011177 321383725 426810000 83203693 960382289 700805404 924543266 203782540 906427721 830710950 913659942 690724260 574862467 392084556 490612304 294381345 665032994 577220670 70042677 576973169 934386703 782325033 953285677 385564455 558680799 790924178 174327610 750510760 989359148 150538317 333068205 234146073 623806043 197014377 867905055 381007452 902506301 478127105 107907382 361103194 594650847 761871517 329196591 152069346 758422568 742106171 111526750 730484445 247547316 754674501 940063568 943510214 774786462 173222785 479503661 327947165 468079699 829581773 155091394 67968125 501770040 330598804 361229400 44355195 509589121 944304461 966369211 38617743 602099479 907283827 380377115 71667862 997085857 995072740 302332516 768949982 660412545 768021086 805104174 7559616 318367877 306224868 507971762 57739629 214145298 336855636 599565140 362330638 708274278 582122919 978230417 192586627 88700145 789962982 369847562 437098498 143416398 986798804 365273631 772794503 244971491 448035848 206217728 251124624 307275785 844610834 544885616 921576875 827774131 7682630 345386809 608977093 691354092 441081908 169177508 810160830 137817069 286586434 252748289 924062295 531374953 674798175 961175901 441066876 964433575 817183363 251965769 396156224 838192736 982584480 981923140 533096546 318156355 821373073 581651951 738815702 529475998 208821890 682473999 803198764 493418054 774614529 995340261 569918832 967427212 985989496 434660234 79761659 756467739 702470292 220385628 322241353 940653296 833150953 314683980 431635241 157095301 200425856 711251939 570846687 586217440 182258156 69556940 96099466 417274772 791945619 263600424 563477020 758534535 932183282 506274276 49396930 671224027 814610550 531938186 81924053 58040835 160844338 289715130 324206546 449012937 389741363 318233120 37683737 487217645 938887672 973850653 691666888 443335615 396743822 807000670 657873710 754802779 766575410 174965849 548327146 513946185 910282276 934700610 852144935 686845733 374131341 684671518 161609556 858966093 898703180 253164271 269488954 368571037 711421902 294123859 508213298 25826308 559018349 9560180 688911629 681680817 870291229 130160058 259024700 523870743 454118001 950046074 821671433 121406339 720920425 635844042 404717049 271096743 391517665 498031409 47697572 420929508 709601966 754717101 450810234 426200990 769251382 88196395 265374094 400644682 243900271 859079722 333162887 782834246 600295608 417345028 248171351 834329965 3127724 99132859 519625167 647452796 384596155 152767764 836552846 983634416 726488332 364544721 609995521 199900233 902280162 106254704 376151466 67775626 193781220 748103183 688224048 221583873 441523709 600490459 137955978 273848037 200972414 703149460 814969603 292063260 867341388 220702271 259604827 500863370 953949464 448862970 832438022 428992093 453886934 537962995 394321816 396440495 898856643 500126964 890438778 868793616 548268785 339799124 891630725 159819394 9286401 106254818 965732681 554741181 634703298 112441007 465960337 650853600 587498484 759711206 690565144 177448383 467493395 357657915 382454089 866648826 245883793 927678558 85453661 379615861 240844517 668784319 599422525 41357109 697402042 649275639 344547349 163676391 186822741 290554791 735744391 21432815 748961146 689748128 447797255 729778743 865891283 67235285 807590858 894824102 910453163 264734634 547245501 791490712 553246224 204043283 72294291 21175809 932876515 951009671 781294788 786841045 458210446 736278723 219149860 859282034 581132708 131295627 879270016 516775004 892972115 322516857 759603973 301115608 160646168 731778953 412330558 795003385 361290333 896611447 542880100 390384836 293224798 545729685 708235080 520636937 614942167 959376094 739147032 179221116 289331088 638936852 44602895 512768306 377017278 745065275 407783927 729594058 151697114 170239537 376560167 412738580 760387355 607629343 652313970 216334445 218902919 955783389 303077753 409923438 278577846 465961265 227086482 66788612 806035035 817582044 401319443 756542958 895572540 18979352 385303850 495544380 994271371 220844981 474878306 740267169 63773676 684846843 837396135 404049496 167007318 361517806 187965900 308352599 697798126 222898078 535987434 82617418 624617080 191376501 42252217 674544179 324853123 842371414 7932315 993252091 202770004 408568581 888872558 293640534 299107008 607808795 111109936 782669103 377523514 129650154 295822447 827087724 114745018 325973022 923794194 662110595 30581065 737654548 286871995 266858825 111134027 755876943 29449216 968100200 629037284 107296756 949525409 851170500 476641777 311206931 975194835 250606008 917045384 597406792 186791871 434507605 385778415 68555800 439881459 932805911 545362140 397086797 755070803 889010985 532379799 440995523 765036573 743474369 967092881 51996464 395780474 599367073 724506589 912626836 39693237 991271742 999802050 264414195 289210255 64787118 559180425 531804559 939438640 94657460 395401634 915602871 231253444 652452443 283411445 314516734 317545266 83889634 408289763 764078616 604763704 611882972 306284871 216957622 267555571 23636731 257166800 855347477 388807293 858075129 435886211 910075362 293560594 177900874 686324539 656269110 20759699 531221463 914247237 20262087 261162796 8172838 733273102 704726341 614841526 276448330 420602525 63045802 124369444 291265159 164839312 856588240 347647333 396939014 929049055 748992122 388121772 898237305 519945118 891948608 319672586 327873584 697639447 53842029 7341318 244443826 259355443 86550974 343256967 169241550 81045980 709929825 391644233 73894757 476927246 339175077 212784551 265199555 405715150 97853480 132591689 498821434 560462507 561391100 674061982 84219981 354368222 170414783 79866808 484901253 187738404 207288064 458447802 739337898 868462851 791389079 672486108 888267518 78825573 685937544 301709679 914095238 420004725 199667337 325240037 266257891 19532281 70437341 133234641 931804370 998253686 10093670 937959254 207386056 882574672 864296349 999446320 849756867 991259028 150362447 511633501 96426493 791590102 154090906 741879060 315553908 692586689 984565102 601762796 466486415 477194514 816538491 972945956 3585004 26234400 114352993 366528375 190986684 438352244 483385215 619626821 760720822 79532687 175588393 657788337 848159519 690240 333385304 325120836 353671023 963426634 162061638 107973759 915979477 831667866 965740239 297493624 650600787 986926761 81825012 390998541 762314646 981898195 168720951 302059751 274477458 945234314 342828313 578849250 359211830 903588511 421120117 650485769 512110102 137451173 832921005 823348506 666482583 756430916 348482342 969816732 651990968 262800786 710793950 940572328 984626263 204358629 664761632 560507640 21133645 682509242 675844567 424360524 17070822 678113672 803814243 105543782 871702914 909979876 27436916 565941929 422060910 44715451 428925660 341513068 477581196 133041005 166824289 288640650 647885381 874435382 786265670 592596223 499110357 733493491 483556740 835591728 747689095 293201400 24398984 707187298 67283182 606230396 977593226 88182789 23894532 123986638 759261184 84113771 602042373 341289194 578361928 101105439 902275848 328731231 75097559 100446675 144844617 525406161 636072856 320718227 297132048 826434648 333832911 138070598 437391589 24946522 264196003 334464773 41661750 817958990 864710893 632266802 745896309 444019048 41818069 483882861 634173775 357043317 990673598 795500645 127739852 263627749 599088239 556607122 641644864 377442230 682157103 440433677 947045040 335813321 269549000 143946336 50608166 396245210 275790957 905943420 695819697 961222657 222943799 164760114 294937794 508241482 501206561 726175038 42747939 833054779 221373713 337103075 82651687 524717701 985874154 626913817 656135152 921773021 604629492 50011247 414273239 361517022 7417713 683837381 861826598 68451621 625097420 24694190 621912673 378028247 251421343 509715094 92942503 833422367 25580053 929028458 293841720 429009914 401281230 28270526 70515760 842926403 435999596 658190319 126949971 570277621 125535131 583719898 128392302 483090511 655508642 131517495 568922015 643940414 601964865 408943389 175029990 50663534 120637268 662937343 21415205 513572787 91231490 348369776 741930925 841788534 143835200 11351002 111160711 328009081 352680411 686660225 759607871 103031011 129155575 711245873 505205068 544639947 952051342 374069495 548994447 885986198 868536163 159310070 472511 57487557 672986430 760449890 75554610 632895586 402656438 465502648 847074075 760555947 374417790 320373147 300737237 488192848 36227547 158078862 992749205 923799599 3829751 538146432 915186037 650999665 30854853 266713058 462628582 699800294 75544187 310941245 558841869 708341417 116363448 256000974 474397472 250661589 532855311 239271362 849007874 841145249 362698447 215429455 542328258 832089053 686131373 878204807 323287924 872575541 890293397 401827730 417039777 852620433 846233319 203685567 989216044 758422274 629099916 720980029 883484315 439984112 900798952 334743045 410329102 391000283 933311621 920040811 485139214 597723047 707701580 215918764 653122116 656600299 493396792 634608218 518307641 40745751 523925923 480866623 57771442 628617298 226027149 83921747 79528410 698513615 589966431 664768448 131321909 327897637 285627855 829426153 210883715 721140465 634412463 337961866 515829806 45127203 463541943 671971327 326711104 727069875 662995891 869819239 658817720 307021280 473283708 865052523 973442557 306030553 767040621 156210132 230527270 886612822 140406956 756549811 452236186 427219098 280754086 357725677 298280040 459165286 504900322 771718494 306950148 691889311 153313527 496664307 258058041 257600936 980999266 992776821 2131355 33869000 305670689 371485811 619061493 209066564 314240580 948814165 479812404 305700871 363108239 437461013 647339202 85943068 621243277 305262033 879189678 914374490 431970402 716488201 219739669 17603588 374081047 200923536 78135008 358488612 388237031 999610927 998121437 660392274 977629579 335859459 66102543 26831568 384731290 674389580 628697945 790549781 318641271 480739331 486360734 49383423 448988720 397651821 530012477 436698017 8389952 928725002 921296258 901100304 240288036 518022472 258913321 428927846 94401925 450820940 133070905 428384442 489892921 473498511 666727043 504178451 857794492 273193774 790205185 533430634 316125473 571687534 266180669 18062703 246138071 661303293 201098595 597178128 397124506 830559385 508760501 145681529 670302934 762432096 147796653 57968818 60187639 117020168 516203301 493889421 635718602 85803309 833377054 501813855 18079555 329599808 990471872 94032060 933912743 554016138 294890752 84238929 225323451 563351948 983727054 588499579 548838292 940652522 61315415 64512367 526485554 177426130 504380200 464536292 398798718 757802354 837566602 76685885 359354243 422137451 802818085 567590616 156004779 886328063 990345464 748661981 236981340 836923537 789147765 498712305 523454333 766415275 321053627 996425329 732554710 677903966 108424371 107738072 629952790 330236421 550870841 230895620 337389300 633209133 358932764 965618708 616768136 292525340 922926107 645124241 83940312 647161574 616179797 684628055 716562095 166344981 366916994 955109006 803823023 128440364 430682832 912973089 979703120 295604200 549265743 391679302 597155876 986709109 97683422 576923006 591843352 974046525 872514808 181649143 817302868 550752633 628049164 105280194 248189937 242829897 967509390 819955008 217482990 778988120 969139902 418111136 188971695 736597225 259504891 559094931 380447375 292601701 934673884 131075826 44960998 426034657 130087179 422609031 565645303 976982828 784380928 408601060 553713812 294059467 130289992 638009240 232412145 565893154 138109176 668490128 321150695 132298090 208044087 561635149 385527071 837462572 245636756 963806206 292427504 630399522 93905089 353654365 912484694 735213754 438590289 466067083 704852070 300202756 50972702 230860516 493612498 961974766 150299435 378565037 235636372 868565035 183675500 865363974 378053848 197588186 447915396 3446120 794704675 867488427 936157769 807815060 683948512 845787625 709484441 333388916 375752282 88906561 222939373 351718708 799473723 829435622 704146958 825498942 734513409 886310790 871696279 742833557 376662397 472145501 925566120 902567584 340378414 747348233 91812732 464146204 671860087 896145832 995509485 949076946 759897540 753642368 615876416 672109343 623536403 782098731 740739168 175262794 879887764 570148550 493509990 651847959 424026993 5043097 108518826 265681230 538513059 80128642 477164582 543096173 988767572 344768339 412395127 576291062 692284906 306155741 178113115 509073891 245440526 130767335 738756416 345286053 483768281 14824113 574805420 193817309 771640496 627143355 313851899 423715856 415950367 991507751 769804284 960402778 722468804 858272663 149109563 723506345 908477388 690073226 197898193 449255744 657699135 800553315 555432444 954573423 315124063 769461524 723232866 106988799 770622842 52352295 275041983 20689151 827881919 352954650 474692789 567838083 568440651 784878236 587003562 282498879 40417239 951038241 530823383 47508965 597487981 525044408 628278368 730787653 810514902 534675203 56244383 288144777 460646614 922954011 229177021 999944335 529319413 763273204 210336127 48223512 605424906 814854834 526304854 541656131 764384771 767789840 442620946 541657017 128363960 588190394 969860247 935180759 675604885 158467387 492767546 42059221 68096341 603992703 876727694 135040222 678468619 310803494 599158012 797735708 490769055 673997842 789949112 393412915 775244369 152786321 813411373 829845235 748974200 57444643 935783669 824267488 507141969 225834654 610976302 289593043 225055732 600887565 445941793 63508150 256347365 411395770 12505000 404324671 625065310 836913551 800408338 189664423 854160532 928096674 684034511 266025953 183690857 180371754 46005713 871028093 376395025 417884239 431486461 661323149 216560527 993115106 238506552 537655983 581450406 548889734 39849414 889765638 265511566 360108250 17396819 525747819 857763700 6571810 845130807 18621754 906373765 657567886 474533293 976957239 205522250 690932837 633238236 283559711 350504993 758347142 548348049 375573096 461189769 153584826 501093776 827465708 336118008 464347093 24150498 353389847 343520905 351364825 751668230 128614167 633369886 593973694 974208619 949623129 223223455 516031719 802163458 576814712 556272029 268325735 128413332 901201500 520734943 864137030 116552699 745277293 36136859 163385724 16314287 507898206 755338487 567074852 126512309 989675262 437859578 592207228 683822974 723461558 493682329 136115490 428293965 570336280 400423458 684393387 739249682 331921227 54063038 432421418 917879221 283334782 378963234 356493691 845891814 505980184 495670205 668301003 87211284 27613771 389961203 586256182 768032159 462185006 462385431 276973349 689104351 542094424 585939128 974193115 697703724 723065591 994030729 852463239 225951940 35664880 786334580 919829705 633186319 839696864 385272379 948628869 635750984 191027027 717233645 974952310 42987612 576469411 699906246 721204494 831587447 157115402 66345615 1313605 964260619 131010437 81250961 914178499 98111604 167265215 556861252 385935352 215726761 910448164 557272934 464892002 755647506 637991599 565313578 898627585 855500175 203234961 502577159 771083660 985631212 958214358 353377334 265005496 511693100 881749463 827694191 658410480 30333385 718462290 114244190 539471154 207743487 37478960 900426866 416343199 334981006 666785387 933518955 215363657 511447592 310543228 3550882 955390837 76113079 128906130 552073520 393447644 801105951 598795060 406223874 169557765 169667954 554245181 398058228 92406477 778802832 33766001 399360197 667225923 719152759 122821597 928302351 740305395 189821610 938984728 666697092 166526890 206350260 747457870 114049631 603010181 69949167 262008004 368175786 616445014 308107836 105959782 347303086 550534765 497992424 214032444 75318791 102774484 824050531 45977723 263258497 90315836 778179633 980665259 497118902 492891903 641966143 315139804 119929930 316807147 844369931 350768704 300749390 518241911 941941864 389935784 402594633 789531963 659307079 592837060 17282728 314956141 176420060 374492229 255712840 287296480 474348228 538958568 488307408 268366847 756930292 573175174 454100806 501773613 102618477 723842215 414679431 724636546 228419475 787779633 723134200 1186607 719530062 970362707 2190390 991595896 391655788 40076655 859431567 688920887 758956385 797237332 323614537 740265352 282354917 48877049 459526747 339970299 556626164 516084539 942238531 386800923 194364173 408894982 235284277 258974543 995034299 944003641 355085067 976714605 555603900 691996274 394332857 911650372 267683307 144155334 523896475 43291246 582783647 330971707 608876505 636676707 323664149 227354494 300603586 139783498 7706835 774738143 241600148 152980446 178471809 93129810 476702633 992551942 320658629 321504015 261114243 928184502 764575839 635892269 161977427 842621269 168182410 723185744 859715430 656651932 769440174 375838480 90673761 159848553 251021602 198055465 144336610 630412576 447124130 153285988 137769431 59836513 993188952 774359582 625739461 872832534 388198113 692663138 157911526 596112902 922319012 220780907 393908140 181549927 131007711 5169676 869084636 817351112 730004661 985818279 184285754 127464449 132122680 567737605 499807789 582327034 114164570 381540668 123896794 214263494 383874800 925913892 508791273 798792779 216799804 678671260 931759105 786178713 374753176 668657512 658383112 773994477 950770871 937625360 771976655 489303294 329593348 892694864 241836073 503149593 938849594 677750498 636029249 135040200 124787680 197300823 687015707 788624011 903184125 584348430 704381291 529839061 707296352 298824111 644980627 273875331 623008334 795489245 91095124 296710208 5005872 154030307 691176992 633939630 471614473 116409055 767940385 177184033 400418399 504465414 714118786 989956315 45231274 371372595 221800354 189710909 132779761 151847736 724647365 268880858 365530874 937273854 857700106 71217742 596845568 750505452 881902460 453614329 404261969 368365009 135325907 989761982 971810216 255455595 455678742 818820020 249692960 170383787 473706359 621307858 431283566 289666394 572781397 375399452 919929018 259406105 201632700 841961481 356226361 827734474 372233890 368283171 494161709 276557750 466048119 220960034 520339608 995438540 958698551 113236806 357236590 920497932 788284386 813396307 396910566 675009657 838945150 399805500 166769425 445876112 738531601 873578346 584216519 124779804 652101094 113662233 18122242 575194114 767708782 288063441 899461486 269984447 479454435 106279610 829273150 367798378 169140982 27500211 711673882 374841590 45677658 888328822 58178458 51228466 379910931 672764638 697904191 806461013 543625014 936723299 514996589 202948844 963364699 251030122 533545182 507509500 236054611 593645171 484011070 981193191 153096647 27482848 459524049 103934472 842539400 835698185 193863313 144275829 595402383 743725569 239250302 824072391 171537518 171073354 491145560 316184015 230100036 143111913 130776239 432857034 431797704 84169177 116298481 233648022 359933029 897764132 106904262 348402905 629806159 197764025 281697111 414124581 245265767 656996821 274291373 239455179 737637974 799021978 236173195 547247272 574535312 298889403 365760052 610478333 528493190 271041313 846739465 121615157 469515293 977996140 200822365 148558525 464527623 672173049 293690950 692700337 228887872 154634364 879053054 519554631 906265936 268383732 281884796 666565087 579271751 488006447 462928731 467053488 9052743 643574410 288587227 647846950 127201159 182738790 162383981 787448550 506407037 5806438 413039427 679062143 665147562 204228118 947237525 544813489 712160924 67674240 116457073 359374410 829725773 639052777 840488321 322428305 443835217 957478902 977380490 201064165 345731195 52965645 798261118 447528549 977603940 551936563 16684578 416297870 581161673 577585739 311470466 196097547 290417381 93234763 252071928 208190923 787669178 376818319 696483317 875478826 346309773 55563967 681217215 520935050 952111085 186369142 241185142 844627556 305903932 259876898 849586422 859389356 359495155 775780802 713714047 196034146 48983754 9135531 648241369 136196894 513238652 76146408 285507159 581382043 822330280 384864824 493829583 474062087 306771264 94739665 186690689 344895813 677129139 34320816 968539455 568600284 478049695 109017815 616801779 151841250 800575838 162259642 170920886 840580594 576401116 934128241 351499237 321787326 778072049 434814478 166874717 695377359 96998093 554405665 185114102 394837090 257617791 206414977 992731149 49770565 493043970 127996594 156786681 659864653 56736559 697219769 549116259 60027351 885273466 696335979 144407343 211040493 707454554 902061694 277287489 631551296 697853089 524901246 785028619 110374880 333926333 651866724 238941739 160001428 789886121 478106271 508533114 147758694 250830257 347314295 864173531 589315844 607523315 238944362 698122827 402358429 828071814 74115922 231741269 939805518 872208897 811420640 643312670 767450318 903843018 52124171 296702089 79948042 279824912 537928847 973698363 150168623 306670456 910834183 646733048 291299969 538345699 451548159 733772948 934204281 694437854 566444626 803136477 955888447 52563787 656280081 441441622 730284062 416224337 551375015 427275620 236721392 171975350 159609622 978240215 545978655 990395728 953674664 886014844 432839719 260859253 920060641 375087179 292668244 57329125 5076585 124013778 609038195 441824748 87558107 790131698 815045275 677891117 765662386 782872404 149847814 701962516 586668760 382472522 464695430 554700253 180819716 177846033 243713719 904594275 204685902 944079801 557469134 689032987 478435780 700746482 297709906 395743402 779875131 702732810 928868123 223531892 5169678 251328870 649651728 863061734 378865410 291819609 443815440 257652701 268997636 242027434 335366907 541550808 471829694 15558807 641181674 355981769 567713895 977947946 365331526 352026515 685223188 453876172 236495287 665130888 189955420 324512687 491388318 970412437 96712155 949776362 924929092 54663458 896527371 499076221 891232075 53605534 347394365 369989220 69184050 420345306 850164556 203168880 161019438 492637713 86575837 874707988 489782439 651893291 713224332 59582996 580428375 600474483 817452361 950597884 517654552 722279135 383059771 933556244 364419051 110152662 154979421 216977158 563731485 458077258 403532986 772108293 488976289 152255085 777966231 956675401 345064722 868813518 958883294 289040970 834295830 475184172 192890089 713753757 482055485 254491041 61108342 156753975 114435085 140401503 469560792 923555805 244926934 501650219 466157362 604970333 906874218 284662807 631300092 822079504 539958204 823013483 951248166 779944127 270329042 161340302 382022618 459034000 216792995 268746528 662124702 771872605 714911467 298260106 449287796 939188879 933746268 911217268 206439127 697799782 567917805 780948424 844641605 136972309 89163331 367589285 138000742 868509098 699110963 833648111 566572119 526515886 860021755 11020255 824131672 739692174 76079239 758730137 590504317 746150192 974730718 90699253 41366549 499613487 47495988 158961506 605050804 741049617 253632839 448264303 833870566 630680447 779388354 436650271 415587398 428647919 769002032 227983057 306222109 655192316 528367077 608600523 96758253 970031191 262978401 84531522 62960014 925283564 441009921 195850739 811478858 245538708 833461711 145714942 166285121 723305113 602378652 863459056 721676938 788713100 978534462 469415820 805465704 628699346 122687422 425124125 199874443 225188003 539526092 777912172 420236003 852202729 510553863 971549632 542047651 864931121 653400703 633599871 991184727 171158138 129081217 205975840 289761885 146770873 767235278 775681039 21420369 376774311 680846067 988003037 863206720 911700477 448504138 71226392 996355423 248311890 744027568 748329519 341479289 112443368 908602591 668329238 651640100 631675292 57184471 601057309 365160356 168419571 163107394 730387861 751608640 309332399 567034224 255469057 937776672 37486989 451806638 84204790 413205198 218434567 931770263 599892427 452559934 79205699 985100523 743477991 515007037 281667652 48237685 908671995 776165864 211828817 854778169 144542676 502768880 568617520 476593745 94820913 686060255 441852259 648134869 603449068 685343779 602154105 196542058 289640894 82114098 308123783 243383711 839601045 210168776 427275022 169083356 469950670 354798625 447873151 841651210 729740198 493376285 795901843 233803273 795558252 329830215 653952143 418908209 163214821 154619280 536019407 357021208 13681854 35591379 909350256 632340019 814142564 374914633 558314003 725619017 775305675 930417088 12839884 970586507 608672434 381761366 188541565 8504024 744888838 637069987 776541551 979014502 19001345 653769753 748155393 943704871 31688774 401068825 545971698 781750196 625708871 261376716 527938835 976274676 576568761 987024087 537383305 264108006 44570956 187730095 519022427 37601899 445333418 322519932 121425905 749793709 403166088 943955440 883645666 585768843 915226078 707553198 994120265 67740077 496764311 756425945 163939937 939454177 835111659 983582742 158615934 795124947 699249644 880441123 573960231 724095105 299352410 40710149 745710808 772808873 344633953 585332751 575196282 855418684 930437879 263846786 900145569 186894592 744529527 385246564 656105904 929150479 242312817 715653247 427337539 576302158 32751066 580687430 412607118 17607479 298364088 375319361 568477419 166908993 322904677 136290572 291252395 564712879 66518520 181043020 730693622 198100706 822588914 743393727 375942066 732464083 890462093 919746319 699150554 6410413 812808234 601119364 746592908 31107498 655412234 159733007 867183256 97346135 722821928 556819008 751790573 269936490 444998343 860527740 542314883 266477927 743514861 874087802 731351607 525233592 481521725 841338514 551327969 667623889 834866302 870043303 958078650 392977720 348754716 550100225 224872326 438008369 845849077 362687356 949428534 107099446 691803677 227332466 487112312 957862060 319868003 477645233 386436533 361812580 43234438 847541296 616136116 326826912 790185248 763902145 898005190 967660910 337779915 151454949 990726401 808667515 338381207 121254786 824573359 39351371 810828095 695591310 224857208 487548309 617159629 842443557 797499259 995436469 310002896 551943449 182512282 876077594 293552608 643940995 183182098 749979745 374326243 734253056 999778520 195279007 692043549 563105112 423083525 354830872 832746836 180178321 806127040 980301389 614280057 185893585 721641607 398129590 496001426 143119864 709931795 865258903 760298028 689970101 834374494 499047155 109452043 336688841 372329703 180892901 430661670 492915834 356325563 893842988 699107035 578109978 527504937 285195577 594673266 927384499 431609052 671264729 398059569 163751679 641017827 786951908 865671115 901782007 361039608 853368767 296777170 966378575 798492614 485533691 401232388 307452226 598500070 853199663 368294353 799744000 588965608 523131306 619382667 275555707 312389712 924925476 412324886 486394473 37408714 807534721 802139021 789959498 544388013 391161048 635252035 225886662 462008867 95054635 601314465 25934682 482638168 804159494 526727771 111625552 335805577 592829301 988150894 763303744 241536272 372461311 576511272 755132358 246930639 73184997 660999514 550745411 338136097 17827739 405277626 24111391 926447069 331131146 640854534 60316432 982215535 339320996 2300963 339837079 19272722 266884584 819409611 750156210 653976665 792837909 411194033 94036313 79232829 332770100 117764336 621323103 195840464 579277045 180785333 787326311 838062207 478039891 75094878 7975476 167243102 963114541 232500576 298087163 38461172 310812235 898457269 647450203 864732591 158370010 580872103 987071363 815810000 128651774 400503299 837315140 636650353 222412592 616304211 174557830 900112667 251427868 121030648 579913715 426265206 837475604 735837259 221235530 764170644 308526319 258105228 92971204 645550191 716072248 933407839 798835009 642955900 305691922 85754117 528345130 260604401 940485394 454390114 411445254 882589604 415838459 902746441 150836337 761725975 186036221 334979534 493390831 600388279 430896512 9877906 301912022 509404581 434116054 395610119 841246055 377486944 113911238 922634546 320515268 624121780 918115692 882260967 137333194 465729118 378554764 988374338 198318638 122144649 531967194 291747929 179138761 633088065 786182285 941525061 511362687 748435505 91168378 454679924 135747573 207053953 396759390 684867433 134224294 458656223 367410958 807904384 444998962 211069004 93420099 731898940 524050009 290107956 532892675 811852574 920078976 719792568 528919616 264039594 227954687 655704763 547412078 519334625 714892528 52327824 981966445 734371466 423932881 254205812 482957763 535179391 701437848 83702353 671409749 368694031 371074288 656356987 272807983 134506235 724218526 844707215 987400766 564768294 289167514 959394954 75184771 720440871 344457850 350163473 243730093 593027899 139941039 228775883 668502437 152963774 762182988 487183760 268978828 990984272 859974765 655969443 11301418 918929865 566484663 667295881 383538257 891978397 930408285 504282432 45817533 653870316 372692996 540697295 192997657 577287215 121349797 717795313 901113807 506323165 450198391 340684687 117565212 942247257 15492477 120415936 362044170 735650023 660546847 578589461 291580809 792198378 701538276 830695981 818902265 991255369 570612844 922562445 25847752 514371863 452813042 132270095 413229546 515870513 865358038 909881203 340137618 862466138 286019042 51758286 231189034 373297649 844550633 171569059 204915350 782290517 824277431 410598825 327369076 367812248 981910832 882493223 480769264 642423179 586625013 696189659 330361356 215869430 116307496 232010711 538301769 956721758 822151610 674599334 238070199 858012928 749668888 913234150 153681917 666439981 419838525 346696838 344636138 86880623 919079341 350983970 981248583 701731824 535915181 874883988 304872508 400084306 845164979 702010181 873546102 895850787 61522377 878660509 119127281 416827741 549332312 299379245 454792457 411472895 393225413 704218529 218575573 8939377 692487426 17153791 552809283 318715756 466604506 958991071 699233915 211768852 415709367 229666118 901799053 429052153 75517144 11059414 413868628 251283891 499364154 443333029 526760875 349044357 197284309 532194939 975174929 385068573 224482734 723559175 894275379 912739190 634165660 738050586 756908322 999687354 638729862 30879513 387883432 134552076 635581986 727081380 869825815 341927233 736764048 687514991 582885261 140676601 839957319 133364841 608037700 111761890 850070403 982259510 593132980 686381959 709216443 159630456 317038681 206517586 619722094 816993765 810556627 249739486 546576138 302585427 201250137 765675822 642938622 864064191 476236892 528583498 488876754 254026960 234272570 214678342 992720624 536095671 492888454 163919182 598205329 455052641 771682240 428354687 715124244 991226315 167043822 222805514 547282994 837877779 158948293 497708194 850486647 277086464 435505171 910686953 287162885 223442621 978427109 351295280 267490503 736381856 815502710 45910630 958293732 793630769 235848747 819617655 534238648 522188926 799446659 678067967 56582045 927790791 752943204 528283995 472122863 429366769 747627726 894346658 497024604 287835678 165849048 485650308 449769989 185224806 669533509 649252791 643300095 654567429 908381572 961997755 638267160 831105515 252072776 61964511 624484725 584060610 760949502 99005497 118179377 734183583 775132672 547451453 203338686 144415108 276120822 243613095 424009188 41933338 233283650 408334979 665498872 219781174 23769217 960504336 58601343 457104577 313902865 722224701 767308466 674382981 752285655 741456595 201172289 325269185 450126082 198300357 362443781 141015134 676261166 420786666 213413186 749074426 762826495 485634948 339861894 429129170 857468939 646574577 315112282 452771806 161370749 991440665 802835086 305036584 198244904 663707983 567283836 142438278 947357492 91542951 443505745 556046914 18787974 180182964 817887106 607113226 642710924 53137535 790370376 102364728 841360405 17368022 769511581 320546253 924162084 335457612 332664605 318748004 436350514 436317882 653412367 74377812 202152965 336662187 837470189 993102640 148862072 974936180 398929171 289093248 813585992 710598030 925559935 498266957 945815758 907486507 550015086 916670734 965183480 226601554 750533356 637495338 21033814 32043619 126226201 244260498 872081840 418744515 175008024 213659171 470361551 5637705 517576781 759810729 992631256 674555893 643447897 687773138 253390542 616704033 151171168 313686656 571319699 595771419 168914829 715839777 740941958 169436252 553503971 886100608 730697221 759269344 393834662 802873640 195963353 253168738 870614643 174944080 592431269 347384380 974758307 737626508 320607959 261321760 465720299 247778234 467339720 880178254 624594438 103890837 392006395 973229553 340579920 596876077 666634480 738229650 34254046 644205151 502364428 321400218 545509767 197516893 457360282 333289439 308855502 36035453 857629287 353642935 961639948 880234619 320422502 600505871 87283063 421816368 254399539 404994746 791233410 327625415 689343254 308998135 335553405 916512601 445338360 344219365 578871541 94929586 431562228 59418551 483847090 809776464 528536240 218463759 870985555 276234872 703877686 515109532 192607960 824272745 721859853 515661190 619543027 129981118 835512797 191978159 903959805 794496556 116440037 164942265 778468834 329029132 573566148 923711896 896677849 565152205 405566750 905283723 571983875 962359758 515224792 955027528 26316320 746535344 721701163 183866461 754797287 46389670 617326249 756083039 248716905 458500731 532061386 844322198 233091979 895193752 665263702 28781674 92774215 116256329 621045477 725293949 848137888 725330473 528298506 229028157 493286072 726282139 712786493 603692048 110456249 797289007 833019580 44174472 338826263 273055392 556435974 208353407 843148857 76885215 304594131 25311227 539472799 275545719 525153334 566030300 673841534 760761925 106112665 4131198 189539266 457536389 677037034 472620526 980852218 46549775 205024715 489599503 364795412 830925782 374510905 832598987 976511187 800901782 313707476 226226138 173396214 191527737 721187055 933800949 456160860 480246344 18484547 462378990 341841511 432687443 873905043 273599944 178713076 317908977 224255713 977842098 935958041 703959854 702478398 476118495 686871344 566166860 182530250 738665033 292414127 413292576 121837523 264887776 736180415 113494245 771801695 630265574 867634317 252613169 209052508 521697446 605661678 902184231 407933630 566921212 456868965 345035918 507161310 740842582 822412344 413920545 8354951 91870830 311481992 153301407 340006523 662887950 714425060 775520615 415716704 122275310 586295530 406072492 963607696 50353709 241472665 748628843 269541026 697817202 427202737 926061661 157492533 822229104 522814415 170428516 67397562 733528425 240005921 823524 563151363 726238415 808285768 101218533 778044263 234733949 911367407 647326183 794516955 297725542 296569348 738176068 547433517 770825699 973148764 53595079 496454672 383795468 314469661 711219080 685743292 534392457 89120095 914879661 88588100 494719529 533383255 514278722 279569871 984199390 648431980 685403710 969897316 220030638 996730057 776697366 867673302 632203438 916078360 897289881 646895307 227292754 929074751 663196771 672493716 618537673 922443919 862845369 949781679 958291024 223501525 547194145 707131772 829770570 488076214 845556826 768026980 424946879 19351764 544309279 465950267 882671619 803033049 811928655 20679140 675376409 552213962 477906312 498264497 479654801 102469417 106995194 388300773 44874089 537158735 937868327 9770692 565694919 189925494 513090152 380925070 300842551 428629460 375403934 526721378 430068662 792640781 662225176 973748727 438004006 15171752 207086564 650069030 678903437 918431894 952301845 566219799 609587209 368964154 823154954 57812912 832229914 789684944 399841918 282162695 415231642 340727470 75764739 737895315 651469254 953216961 755188236 874010194 807572634 563335858 378384894 764134009 337401504 789885089 8700394 614231621 256990816 913289258 134794168 385237036 487852344 996726091 723628559 15226878 482954690 749627644 666176857 779751895 587731347 375557782 644665449 483138285 114433976 973415617 363203108 716289135 462885386 469594863 187994064 579230583 675392922 569099522 368903839 526510997 184846444 181228987 937275305 869357289 808885562 168570320 856826056 832876569 502430763 834625733 567595372 739532233 774549406 237380071 780820304 615751859 892867362 158930079 815663121 53450880 504257400 382052730 481515326 548959990 33056470 744803251 237742848 921665351 79351573 725997216 472954741 985511552 664261011 231791837 802592612 795685574 49983813 817138688 871212001 368583668 234943636 280826564 477297094 777075358 386802271 173217998 381931152 325938453 782658938 209605145 247821584 51728787 582376996 294338360 858995969 860108897 387337715 134195271 958897130 887848971 381580047 904572068 934604402 296785325 785427387 652798757 88314500 975639385 31052220 412189628 22079176 747904244 15135176 434572389 239604515 137252123 125623934 585221257 430349126 993341815 787261621 979747834 198633688 891823890 633605512 953899630 644125586 958626704 409480873 366225467 498093230 259982471 491677991 693289673 721049579 466287788 358234959 871152518 403221470 779925552 387418996 34122547 297189517 610236413 855237272 508075838 820811985 316888500 379759591 433122849 389759589 845615205 729817128 83645680 471616332 748170079 148673603 89546625 971369714 333682526 313323433 302478803 252841248 694745964 265096881 860480496 366738048 500557067 285855275 144328456 65114745 630247717 309496864 386146236 636722980 548289032 126348311 33118550 692469276 216287883 783497261 552424751 500179347 290432841 96719889 429732845 21612018 159177860 942699719 492125659 896964836 354834043 613990822 833048424 794924091 568746865 666396559 234216643 704060754 217811448 785075052 219017089 333879072 463585564 639599806 769200834 622667898 705173522 284319055 973142743 612120993 825711607 333377757 12211773 429104848 877854913 425855438 322323933 855451201 399271382 267521675 745883827 687829191 836050694 991954313 37015888 859028510 593938290 341522561 505465395 929915507 117886172 303422169 170705640 464281949 828653668 536877927 352019804 702261523 180449795 205866945 992532885 858698601 563695572 270645443 464036140 661486336 329938722 872856430 945334038 833864532 448730341 418101691 645839150 104765314 201737462 890615213 914314463 782705934 238015284 587841880 32063756 372719841 488767980 434349540 474348658 306893981 130550753 336398850 2500043 481975221 546472010 231190643 887631346 936095971 731001669 603390988 966641506 307586236 554786319 442768161 989058601 316695217 616544762 248947991 879769463 794399417 829446230 97876220 770230648 10592891 883306488 485751122 665322800 930180447 543924160 915072972 494589498 440865355 536499934 697395593 313471938 321506434 134378744 404619725 109346186 138019052 372841983 622264866 421668104 115563177 147812163 191901431 881840318 611683434 705899065 132801808 208058233 578885420 379717878 602592867 248152535 377601798 504322194 678900709 27597122 246757642 985400579 651341869 722324607 152203801 167395156 194180725 586797912 29718805 812183545 754552807 322797616 42868609 670541123 317175697 107491207 225819078 427177455 736072083 419289723 517037010 748496966 905113363 853109905 460299865 800798714 449554202 398186570 133094313 983494256 993777242 582335341 611095572 452756341 662554063 368069117 274054143 825246109 984098304 701595964 997505445 682413895 559822385 712596075 822707021 759692860 52850692 912665376 710036702 529266952 435954951 785777547 598506051 593069676 824871331 965250399 410452093 811924863 631325723 849158059 581038762 748877635 174819825 912496904 450820228 552173615 274483816 613771238 702797037 959019745 98482008 498374152 801120883 112809453 465544308 688737646 681419094 199674985 966605920 253114335 753972343 47759877 705637701 55178642 563213366 359348472 887211603 489516954 288343933 737272537 362740513 978335584 505565525 273556816 156788813 950119891 766874118 472702363 383310542 169433804 143812053 408791386 537221919 542566658 550300200 862855524 773740033 246977953 29814009 248973098 971019062 843760656 417672466 879398068 359849671 777404102 866562856 92696736 947587138 887919573 713599785 264079165 40237425 776719681 461755990 363456118 799860719 823081239 238190759 346142198 577064514 648810583 427143768 547715458 902941013 414976948 533439890 77535440 449806597 377179628 168992011 824247907 523763874 585357436 901022478 80297408 702882117 498417542 710009349 404990676 991565412 66512039 309624330 906111290 481260878 403409715 665961257 361478184 474957923 21395326 965706276 965326377 165336891 853167129 667011346 373804431 714704096 324902745 138034572 698480294 875259993 353259601 566327896 387063536 403060995 127181162 208345306 165089354 130797055 205153341 675603033 958032705 653822051 961386354 109916914 592519287 756371787 307938871 499119775 864831971 195801551 970483756 166687863 79314494 245478092 980869404 20559529 273213567 601357245 43301222 403058326 75859645 484482699 235483280 452457457 750742312 10568499 242606558 312654750 715081927 971438977 423648162 924865003 367333997 73702070 378820207 872070594 497556179 305744917 366997373 659227803 206434357 618922784 964822699 54968976 550121264 199540047 629325900 630549177 976106283 180617003 811491796 514986257 485127125 804906899 555301105 779607737 686602244 317431019 251654848 413940025 985965447 949057435 345254763 893748299 765265542 826145635 388337135 38594906 609208745 863138335 10994234 596678698 264585177 1591319 577515370 765790611 238399585 390158839 860811191 169396482 223533093 705433250 578049462 64654836 939743882 174835306 574679658 614248688 408158500 302131314 447382239 308554203 140037668 414014560 89611868 602779439 383132080 661525080 508555595 166482151 855575102 576158984 625051 743732560 257299960 976203663 44932922 651953415 537409353 521905083 324769456 179638588 794670983 739797271 30279303 104825248 916271254 157711045 559455780 11450785 545743013 913038382 665571452 17688975 401396341 101499513 610573485 966297386 958957586 317796790 783312507 926431392 22063865 930240446 164193430 532883812 858933847 49410581 433279992 206355796 980240420 288259459 529402012 782606401 896281751 393412421 550007116 763867733 557716263 699081245 711237640 345289339 496946348 147110938 245224301 685465545 167401899 359828400 175905389 733840849 557508725 885096635 999518804 981594985 579422125 597197472 252186601 937463827 301053869 750950629 439377797 255232001 446810499 305789103 615038542 981655157 662083270 780466622 321212080 119566312 35068594 156445882 217333434 999003447 843752421 243380450 497638310 195850584 204120704 18629663 875324931 323207451 285116223 9814439 550529802 147895942 413600727 399662192 939723260 539036884 791766943 896339098 311949867 846580331 180728116 452190966 955338839 652727963 407150394 484952603 152210517 250139697 761469314 523807450 834012377 978934772 713184466 595865841 324054260 128751537 252031320 195632679 380473702 483767085 764987463 527068968 942647508 464573445 933282140 148216593 553030641 725128614 62097999 751638094 324501208 507913879 24129276 262116643 457611327 145381126 506542528 64998146 459580318 894868784 175206089 715459745 281699161 400193110 600574099 46736501 550695089 379570893 932428281 896945539 924894425 525454607 861769951 654700021 87400110 43763161 937581984 28101219 402923218 494632328 123709873 783796008 924036203 331772567 668842071 835612972 152998990 135028722 508437647 891465794 763147938 429121403 892379637 103833175 986769125 29000337 260766930 750355069 247168584 149631520 947376709 170600073 8556593 131348956 894331096 482044935 276790440 597654842 609550352 363730893 932477624 307595350 84448846 628727369 461711266 574409113 739998839 305783112 881621426 219246327 694573560 549525479 47265076 656228959 653707197 419116923 152404034 44916374 326747458 380250173 750472314 453280668 837369405 299927686 791662998 360397207 75338949 853108165 275238866 176220780 918008611 314626985 743100936 634835432 47804221 74773037 322797703 136883094 818594498 889621453 267412650 233047699 92195902 796709030 808488604 27620949 388859418 219581193 160042414 591299156 49186887 461330381 879879557 238747346 643603079 738331037 866922219 557502623 790361730 397977553 12177100 155196209 976204238 53130733 39633694 225743888 749704523 913631951 794724751 559574096 862163632 10607704 845928686 281719801 815549798 554609640 572868422 217299640 3402098 348824820 993448545 571596416 25999622 85831497 147208872 296231705 811108280 631632083 791260120 585260489 860729773 418761961 221646346 80129702 114213360 476333618 242424253 63614289 357452040 55828460 164563091 291322833 528392164 648469704 678967763 596943093 107624276 161326352 928179383 189385900 98208623 970920753 577672728 599908474 966668738 725976653 913739714 583173145 307018473 54297097 307304633 435432741 10943564 730766650 626467501 793906885 411419534 305399305 852484654 437347394 289935185 759109790 38259073 953450712 93020766 579900223 883980081 106920868 544095509 272082950 103212442 472694405 185728988 672139923 835611536 82341452 51719581 328331402 854269202 17148341 718459140 67138953 495511978 232272495 329420281 100263482 188636637 610172216 30959921 142864665 216478445 772471857 614619131 463353122 466245566 364452610 475673335 923163315 786079995 370759734 795324173 422244834 954134645 935134564 270957112 136652692 352395088 204284516 633101713 121187227 78010417 142047951 211004537 784939692 841760362 152463983 369569470 89065256 484717963 918337565 41684857 337488768 155823271 796818232 428253941 939900709 894140146 997466829 628889749 688293922 184536549 65361412 79573588 280550644 478022429 469019296 329192093 120171613 543106249 530194814 180338312 350501230 50947177 260120684 543351684 768864700 848773082 97533204 358285779 938294645 294050114 780122273 114554031 42212243 294874932 361715036 745850790 732900804 400508713 484268385 287733267 549184944 116920093 207466370 788926850 37355767 484702764 249581279 649362322 827297252 833786544 439895098 562121569 434085440 219413107 943546552 978115693 414258600 389423490 826061763 995147586 587825322 274545548 981707624 601494366 806090518 195053182 50156322 76047615 31435243 405725683 946835886 139860017 632540116 574139418 708490055 940901890 979039304 640816262 443360530 661357159 543235027 302200385 622720968 171423662 191098245 240607516 213521043 916610554 871485839 641829129 315405609 717210028 858487928 48106320 139369166 759278645 411415736 385241071 102624670 720098267 24852275 858147625 689926766 568461395 713670600 421755850 160439639 800352852 64239625 176493029 867407833 398946952 349092239 434700460 727556225 770434420 676577645 656710298 415907798 432587118 326075056 640373336 793041428 130721805 799480327 217029660 338349175 925293685 144914861 216486997 378127759 679755544 758177181 519622754 878993334 731096081 880282957 493571947 813020761 540216771 611664454 598057118 358593771 548008926 133363286 529141531 79078971 233673323 490671430 331400020 607799176 475308801 839137449 188787998 27991733 236120206 140545431 119793909 879517251 195882673 375950413 862972668 31324818 608578830 967612819 145571034 103104921 498627470 625528235 490840484 407052440 225000487 501720244 735119655 735373331 598984453 750994127 731391257 652811422 519801002 350988941 697877162 498740378 480031793 338483039 472544220 511930659 899086113 577710501 929652708 124633927 69702507 380058002 48940408 583465312 580920788 24827668 117328598 153970128 193915429 584147876 301922836 727539468 9019605 627117533 246980116 214429215 475508806 1261743 830678248 919696217 225245176 605053647 358120173 635499515 657963452 53402848 486183271 140117153 458321404 309787476 7365278 588959830 277049742 580053679 37735082 465577970 229086514 41822195 660151295 562740605 312928395 662277157 113125151 783747642 964900581 728914027 78488416 272253604 799823596 795597789 913372493 628175403 44354159 660878259 90520781 819816550 285186360 388559580 103505595 406296734 641631854 742753439 723179593 378670868 754138452 104186889 392120567 9089848 22204745 848679969 294857375 827881203 276758523 658666943 561447162 10447178 621053493 155022383 848682298 767283924 65371942 117666150 859512444 413732673 156817985 601184277 961998358 701740101 93692980 81001026 811344855 621496166 723889815 104520694 604628305 718053739 603019205 439325017 231455059 603460238 606255187 280424844 485743921 12751951 375340902 868900986 981693286 342864816 29684882 757436075 789973146 690857374 310347717 762678704 90685760 493674303 675103470 87653689 429474037 276104668 522375335 189294772 305358194 572653397 98848360 808360473 186208487 633150480 690944527 65109878 31088743 367878017 182760520 291121476 646971208 91540791 543503893 59698033 694020948 317814891 866464551 613951911 184000007 106559786 573510111 550840820 413757000 262034625 130284984 667214366 755737601 951921754 473661569 422502273 475509202 448792367 238783778 59817333 666710521 466407861 17656093 245280429 55557048 996315785 758517988 380772573 59647303 707307863 68632594 476794238 949688878 649413007 859435459 666972085 16076195 524971821 406464502 973835499 756745459 17495717 455878306 388247313 784722619 545003529 541546211 944286341 384423762 701219579 474281962 14845618 579203239 648073030 687687224 627547910 545059294 878886872 51925775 327771208 259853113 982828959 645423714 362042288 300780634 639248505 153529138 778963953 697409537 461128428 394413205 654361406 456201215 998124278 771431980 665176723 791511141 131513022 874621281 360538229 196951289 149255343 4475315 890623553 627582204 699323959 629755477 483092740 490273045 340737149 922639774 38765190 906742821 782796956 496192877 307991072 913973711 431556017 531680535 868180964 812353888 242422733 709151949 765182768 978695334 141302049 52324830 482219562 818022834 132703030 836367625 526390603 713683544 622408166 81376875 571238231 685211658 968547154 575602488 517916752 308605781 514289495 791620670 113048494 585457182 551703035 629600427 324637665 704768975 423587135 360878618 442271819 675690506 533007251 101898140 45958298 739749519 267930526 979722475 999702280 494190421 971001733 402653798 762953366 602424121 58989794 759306025 122854450 993035648 773120286 732112677 331128717 678631167 919960276 495812551 532256152 891028138 591772719 562919542 129230677 146709842 772800290 830432550 820100371 849277045 278469756 848909985 872742364 749682054 283793705 271961483 805549787 48201797 971555139 823867799 846469690 252591722 792252103 907412797 184390575 12904256 683684048 71421045 145965115 41971224 240701510 705481335 792484860 110738889 813596920 657966432 280414717 366594565 20000664 266422059 39066140 290753456 82008487 913465205 333406578 633341124 101259234 35176861 162952328 735875410 331446536 423831276 534104858 8844073 777446854 903986725 8883870 250609270 619632357 81703012 323477231 511337720 624112176 244363949 64968331 914847338 666244276 452201544 957533783 11193278 355677572 724116404 201909163 907306567 881038213 824276190 189628050 165930348 999878908 499919554 622617087 330300580 731617400 37417156 161191856 491886192 423060459 358427496 481507425 115608666 615531478 26225220 24455613 393206836 527469644 818454656 594285370 78037944 864871388 325831667 149746138 259175019 224398184 430666776 971502375 339205818 295985926 139883010 92839115 60636752 283598118 408198289 375790584 968008968 554795097 375181978 826689242 433521 202090340 293819783 960459564 87513594 563184855 673275908 566649825 465608470 740873283 582430580 801734056 380261625 466960218 130108299 43349256 303051065 142073988 941046825 481735913 723327094 571117188 681790015 510453840 120153935 603990644 680273920 574216084 202009895 600809248 795768998 906898433 800538503 956575570 790241863 433521868 442790552 271887953 218316402 668498236 435657172 888892262 343096555 313500067 894579107 839345507 825422259 801700811 777104532 436436783 894345050 524757844 718760190 955878472 863402172 174144699 736711325 844774228 853060647 767813865 936797196 990571297 20245984 66263675 424066250 475329198 743715323 930044862 471556339 575099550 144831653 654873133 226941270 181575471 91199959 471501133 684170878 804202461 848886643 754864769 605100363 199116594 747117297 115020186 78790643 875057410 211892933 535307930 751589957 596808003 854897074 515630923 286127641 709992127 213695591 923126943 931882669 79616673 2471734 648426923 609661025 153195809 635636771 225524141 546434299 686883182 538069050 947380459 671960449 88043390 283723690 164563068 471464221 675698091 700594344 220185270 441358507 924084903 651592444 207310708 632304180 528098521 596528602 243919659 683353078 371109664 919503243 33395849 17102550 696314214 122179594 876904743 678057891 559250540 388395984 121146417 752110415 262899067 808888635 390966133 965002787 333985294 426830407 11317012 865526276 439823220 351285802 317593294 756824670 881894167 240309297 879508025 816597944 16237350 695019170 395568473 219736666 101555257 87675398 663407764 171470309 297180926 332274788 260037960 622583948 816683693 627845569 913654454 847711429 181961675 142749637 584218020 146489726 168594645 39227051 657692424 9523317 813220526 815533383 920688718 789486872 202917602 248586691 336400736 179686583 332653239 416777782 706532686 685131085 791834504 441999573 323100666 74154096 610652957 181130160 155210869 412227964 559768894 743268491 57080077 209291179 614985977 34331785 320163968 868377450 586932330 295526265 718553881 194591752 150683616 570977151 238763063 455648233 679116635 348916989 157423808 206162170 24304426 66003370 657611637 902644155 957149532 413670558 788636088 16875363 38419323 124483487 279449829 126317826 815691614 688955017 965536327 379150713 724461284 216779467 555193003 272353197 158823984 851750230 802835049 156841477 326098391 355848052 764367039 145733252 566841202 984360553 953174152 836401937 925865483 179635224 840752347 245521437 835990702 316446884 375711324 966619848 583701221 238896358 742514876 245216894 74188639 493611232 982919886 102372903 529546486 82336302 101173099 425850927 759403244 866812253 110753872 736748767 886064717 728778820 787139612 706548116 930299965 865819278 267229351 288737029 185723604 77711221 949543430 248053371 258233689 206039917 519760293 803269505 628997553 359271167 819659027 259270027 859920278 189462524 209056600 824895974 286149221 99683957 158990904 692658406 712076205 341138264 462370607 989436275 567494384 386780778 889525717 660950746 539064656 594017123 563482462 363159257 389006698 357386794 249137109 925882151 391469709 404861311 723366282 48274516 733034135 529535661 706750078 620492214 402897955 735424321 288672026 605028849 795669246 623620298 833228026 780510512 486481552 937793135 393126183 804101401 833298298 819211921 654905800 294491327 794480828 956990103 370090508 800725198 100783512 432412552 74393423 472898467 945981254 212898166 255004446 320176727 330566071 36772314 947303973 335079523 663457143 727080876 284300158 850276222 752251050 182627881 19055505 719302006 511936049 139728207 827206150 368113072 132081410 128357408 234878123 187470926 969680002 485371876 412066140 269309021 436694185 392374252 667856362 922708114 310884436 666869449 756377207 758203683 513456254 167007544 263882028 415005161 27001624 996267204 787850040 942223301 188369054 155231182 591410288 689215956 541022512 448611536 779462364 980850219 930178430 309690980 951013038 324714382 624120858 999593759 980145042 191297999 300359447 198957125 475110072 284574418 506128992 297753599 191832009 200386055 90823372 986627768 628812339 126871025 336317610 843101698 54306610 311618835 842585547 340288563 69512387 990556268 436741965 555146959 906258989 884938648 629475310 362813260 928348587 304305547 646233016 575156715 920652859 655845322 928065208 515436227 87105393 234841914 322879962 716551390 398342783 165455441 2846889 149216926 431114566 991332952 883905125 41690134 406748115 595246146 24157276 72473775 902376383 947168922 878286490 581086351 125341536 408549210 959685803 539984567 299750865 593302543 578534180 342358968 78449185 443769417 461107832 290133784 261537536 777503618 493804897 536678288 62047574 202221509 300353581 79068682 782697961 610708304 894446677 287447126 416428918 611884165 34365601 995709410 909996381 915217480 940355003 845570729 299450160 261022627 247229223 61543457 121068950 243972481 952260269 694481347 591439424 179094965 11976054 446071652 748315203 11461611 983954341 156213987 309360409 169820409 687441992 148219684 982123191 872037059 489581219 138100983 686426313 608096843 705714893 876689705 208968292 414161762 133989793 87783652 765051038 22720731 793095533 58166777 169958020 474249964 860609023 58732017 974369770 327954329 222861598 470769479 40245744 288294113 562749398 403781667 184224689 397982358 16454191 494767181 527110677 321787069 132766283 98582617 552868780 717997891 168196718 737704003 86990543 385103585 111377623 205874782 260417434 572668328 522037357 791894354 591690148 719324746 364313423 704097178 182451746 855269245 726681835 943492789 340993890 302435095 39560505 880825060 395607399 692197266 48630667 574933801 259488453 885982110 853478793 596521632 306275004 389392599 940543572 530942401 517479922 753837217 1609384 318602801 341063719 283459495 679110149 423641013 410800321 630128584 396047703 629361395 122366529 90909023 899859266 739665466 148783557 208404657 721383689 117968856 369052349 539413091 186933829 956567913 880669394 849115781 347199252 891515000 397335286 688552592 984253137 108711382 938710646 379925765 932946101 850748534 801780395 699728276 88042649 11260722 18234687 481664630 839453067 833518205 634474659 959275616 838651246 284220355 159699017 226649247 757443088 917883676 105600679 730726281 734269435 538032649 329833744 57159764 923666308 883117849 763584821 386248900 119002123 797770296 412822351 611184120 925765321 693799866 527067034 342447565 590900537 697066541 636571896 443475386 665339105 813869170 876801931 817836379 895913244 642711318 168178308 392827428 500713928 786969316 857939441 895691802 543204038 597721835 559341164 368099270 788443680 758273717 746374502 715726806 787019798 911552194 99709663 276966330 81962748 609087564 376083338 694184187 907285767 156420157 919099579 292762805 639046600 565239644 96905017 326238422 894241226 944747159 356659394 45969233 244428979 10893094 700895641 98830860 907940729 728422130 81691187 13670246 232299536 940828945 858929354 34335240 28155830 242858623 917413581 569920628 217443042 692000740 7592809 428825328 228943252 895081985 419044917 187664099 448410108 472363761 519438421 680828114 51276598 765903994 183982566 742232431 979931656 638164071 416328860 144145613 504794334 248633695 581354457 207923499 344964145 277888218 997597453 88558534 698804563 512105490 666812290 394382327 583861709 844662132 988717156 454795144 937133036 209860683 722676268 266356911 145620749 560227349 278850246 439420685 778073251 321225929 613916484 774728712 152871416 119975403 861244876 570858233 508710194 974796734 721026504 237228262 842532890 733047555 486975756 962993566 498005396 150545786 168053941 20091094 696517017 410852562 637886302 708435435 184634120 773530352 848741829 641580641 355842889 720790356 741212950 896755103 551652218 67414367 265372441 182495986 144504228 446681399 712895219 381164341 542580964 329647751 951642457 644072446 124964086 717004352 877912938 238023791 230734873 906263651 963908822 810213375 632113001 411158196 535285533 648118915 260738113 730225822 814869364 344733488 67259492 461190334 221285864 334014079 360986662 454250542 326086192 952400502 174300683 759436699 339298316 838109074 187630399 824896814 419378212 577644804 999146004 517632791 212029666 927102621 839942794 576298863 217221874 838531279 591150439 216331570 424520081 163537385 250362538 903230422 181229111 245040769 655147740 65036920 393537262 837802128 185314124 448908819 237776128 698038661 146816346 362433731 837433310 625918212 890096062 719113102 713037710 766489957 256241383 714476544 159579624 530229087 620448066 36276594 280185690 432478896 136105071 577796401 929952294 911804993 545441952 615616484 195739019 505823814 868917834 687982871 937169741 507501809 334204312 343223188 950016078 265704488 920451125 73182014 536164139 921295306 990082048 521188772 572498563 536835776 764361221 768621989 287941743 258152663 1357870 504439346 570873884 697908944 131685103 177062423 2944752 954215002 867925536 768070402 946447463 260135476 212295085 957040151 629999589 108071605 741011374 247241538 334694160 635959675 193109866 507194838 802354859 601415399 95371172 53591404 834848874 832030194 480780958 530993762 254360919 352926553 24065583 645678187 465822241 802584428 53505052 663097014 326588571 863547615 431158611 959687702 346280552 195318033 725982031 121674110 508751246 737154719 546594567 81889133 16709058 453089089 66624481 469173430 36441278 664383176 189821152 656055574 221724703 193994288 579801100 722982161 110552647 957483611 781350981 996042347 459398630 493592366 625902576 934311817 123716468 421588513 86659186 330394722 66155082 868933304 87775830 358339795 458253033 459143662 993287017 737455576 716694335 195492163 20966823 504144689 818666922 309314353 781452241 264616781 359216094 949007081 885564533 772072280 703050834 230211723 351034424 976677483 248595234 846084641 193940162 514964623 11569688 8426088 36508642 588453620 56767205 497544840 277179245 194773590 779306399 907282569 686471432 833568737 963639346 188165228 794077141 532401117 505427192 455460726 937623323 102257447 110978683 275356967 150720705 115939604 810051548 22995369 421058988 110281234 974908422 836292292 894132249 69565459 707029572 163632092 14612663 942455769 804628213 413048044 928112595 541567771 390415929 838190070 250265527 518170161 553093508 581411704 439932827 860163673 398468238 210996217 665173437 743966719 168968252 524108356 933819754 736252020 436516932 418082972 285797630 282314881 751451973 117660939 214411481 751155497 879870434 845480232 610349286 244991199 61896657 402860279 965316071 992781858 670902081 898928626 152252239 589978001 72974484 365103378 822887592 289233224 826861712 15092190 909039248 137963210 524979100 711693178 858865039 640413067 792688505 844113954 76988211 723855635 973902939 545071179 11770668 55584348 227762985 469971305 310987703 170370799 964713364 346150381 504716456 784179516 723568551 289439636 324986185 347175901 652120248 31304121 793813246 752773361 930261714 409705794 792963853 495513194 892662517 101580846 845628390 895473953 827818949 955157267 960537530 635997069 824709647 275975350 844854938 173215944 566997271 724473300 220657414 908616504 186746723 722691298 547560702 35317867 362734964 105429544 952350651 252283619 148557783 147949772 369225178 3552819 409439191 551276116 253548739 226071120 321436686 556805396 781901903 20345174 202913685 937928565 483643028 408189964 634140905 573770009 755243229 350284541 71691632 734016415 546660355 973255572 264110279 248294677 158418865 725531675 908665292 432417193 991076511 209122127 597593146 980382023 47947000 125676913 411288549 334873249 933897817 546936608 89201997 534867267 688664806 391376370 509641779 545164516 604975654 375043580 632034356 692981356 263794830 525224683 620027338 14132448 467010324 457718879 743191993 167811364 582569991 550803156 151809920 19799657 870401373 550968120 654008665 644069056 470570643 295012065 591630944 415676604 298955607 391379774 956632987 421899847 544224205 499310915 880042346 97563430 667370729 179492501 555322389 498619829 175229146 266691565 780182995 211141273 233919463 687964159 238946743 200659239 35248034 82688467 749162448 322361664 468860740 703362050 569561492 261961999 618984375 107854907 552883589 441828125 751567436 408733749 750681485 52816332 46009407 225403495 789283444 992806812 506450008 955830077 510613495 510092506 708673428 626756978 961405668 674235178 954364814 713607119 491875346 671910952 906361389 276706340 839340371 933339910 90215271 335700880 335814957 991310920 570493455 380097782 365750825 217705430 126234912 870638381 383761622 798624418 206278665 509973912 210574376 191408523 319995311 403952983 412290355 583381448 209263174 133290848 420930071 768524299 786714108 186243432 212952739 917990976 637894649 109531757 13320477 942172672 731728701 187408523 68059613 988619436 137939120 610156654 846229063 560248997 405192610 126311435 91952280 901285075 267092032 262414130 411961280 852760937 655272816 907631121 753008362 587525998 151190436 509120015 512256715 678194229 675489920 308756213 485542855 285120728 10248697 635836419 45730188 801444638 971819609 984336257 838547547 870767465 334532597 888610397 877442933 378962931 496850288 573648596 976952535 517649809 789858886 253627277 476382024 77314456 433050461 850873251 472240265 885530467 997708974 39430228 325805243 852813237 769555032 213057523 956331720 429600491 459455468 716879605 220368778 644234896 282550588 251015577 174933387 373116212 480544771 600695589 761523737 923217477 209572495 264878279 258952465 904885594 974343196 152382259 243540403 75731086 852010887 624574071 29327730 726839982 80480527 427201433 773556371 626245429 60298734 900766619 759702155 161194168 592559354 860939103 730686422 755319935 48771115 74858409 348708094 231253929 813220624 761082610 846537787 389928598 956132515 464896139 292739329 24432229 801017006 726332851 90446257 960497269 839241277 185969122 931186873 608874475 999164404 723535616 211657344 344223080 325255292 226906665 39825057 974697140 47029994 68058352 229572290 548845411 179949620 956328686 222567181 355120072 645677814 155351024 786946623 126752051 986905890 483492552 512929746 904508942 425131410 783869447 490922805 874749525 294337652 240452701 525233596 457291012 325723334 756679472 875233515 659416908 130501407 359150792 954280169 91489114 237620068 204967067 616550184 722404914 875487039 693078948 259022217 408295861 109161102 185473075 693795100 675059276 976983977 771702878 973523394 415133007 651646733 457816445 223623401 410716981 927750832 710157542 643089557 957176696 636997611 966292833 146140362 593174890 343678967 524302819 477935435 360165 673482121 455211560 729572239 98166954 216887161 400797819 59743872 121946942 342313556 729520528 908280930 686490638 58546210 900938556 128469918 537774139 595143545 391297755 63878683 573958693 745099121 600653934 838307258 846580791 684337670 605324240 462872799 258903511 705331095 696066401 954083179 304369648 508037580 913161014 42018925 930710416 145935616 319863618 858639996 177393394 339807105 772122334 260540774 987091945 863882729 169760412 704410722 154489083 529621772 453012877 393019016 517397657 876936123 662978230 333671488 24441130 992609936 901784025 168981995 591862983 32026831 567285357 908002018 281552138 132134106 902560040 295907974 781584936 673034886 564718591 407710392 431934407 208238759 66268383 938615001 48036099 593881394 383666760 146249040 309496719 169432356 616375174 883544674 576263173 569590459 71584780 333166707 301339838 634337417 52001606 808418943 734264290 102507877 633406210 484960457 512743419 92107324 961466505 951491137 518424762 820728446 729156806 361644838 577375409 58457407 754439963 833975831 950053103 214871873 397415013 801078145 854694318 3747049 840967725 556749895 746793313 342135805 394407065 564258047 578476482 796291066 495710955 52834502 735691269 577374968 834455991 114486355 60146054 49710246 318850398 48157151 85474692 522098614 505337894 146884521 232132346 53860586 604430814 138279956 252457153 518587179 789216353 857967901 241991686 461676391 666206231 276061849 466591076 368131566 378192556 933993465 764285142 404753656 923367932 573252774 684483164 454510350 178552205 521397054 181606519 258042868 206337259 881261842 660589499 626468048 856950116 585798631 404189391 16684576 204428697 448449266 561570667 925173392 257915364 562080611 482151691 263786157 823618314 576258000 549254738 818137643 452457508 132379858 277889218 82819078 153493943 767252757 562867613 6746633 411826359 308149450 278571499 290520357 422756976 293787973 713681353 497844032 550144657 348881198 853769729 207765069 886552346 732021104 571262451 524173623 114072155 28153546 753903593 716902576 478008135 35365124 582196705 480392683 226799191 920333316 15091620 592575845 263069586 984703748 632813831 110719063 536995271 554203790 797646273 437112876 222124968 954950473 367771618 334255466 876449333 713230988 120631215 799071104 808308835 93743985 189371594 540314316 464940638 81734032 183928756 419842683 206080157 676215518 255108877 648373544 587734674 946159699 446451988 232305900 933875603 953232176 748816158 169921195 289573765 559515097 262439614 648046150 984893025 48639771 121974592 106686786 796608084 109614629 398461768 1224639 661230580 34274506 143247111 313079855 300840793 451216490 795006754 490797507 43445395 454316613 978227428 544016544 475902612 898480712 808365304 203582667 978216412 337999674 984730774 680687408 627808704 978185200 288336849 784981826 908392598 501470156 248532157 946268440 721627396 941118465 872388914 628233512 482159264 589512566 862418320 265061271 923555535 641333294 303418583 568213992 183305562 839729030 578652825 430406255 526529345 822729719 997398747 63700439 264580617 487036398 553688681 256332597 642167785 991139862 443709395 975697022 543420485 289614390 652864522 845675766 447002185 584661643 658429733 95724250 512744174 372462586 87934474 441716247 498559061 163272072 568615664 855179225 183435177 371100646 558480910 434948496 3268545 76859785 125906326 932757369 271299345 322837531 494608580 299450325 184337600 234882889 285700765 184907568 312257775 161439156 200055955 694522823 566051741 366317713 736715061 99508846 261504096 194234036 115508658 627531826 788061094 772646163 676200823 610656519 453276869 77162826 119964325 503318612 701832501 936472388 287741509 639046873 598326960 827754879 283781641 377714782 112067976 117494804 93762520 188937272 559697416 70667077 337231001 35225760 715655825 908036404 869521443 589142405 31857151 640597422 829337448 431611960 686192550 355924887 655252494 493083179 822130482 307082072 506785233 642343808 13272867 808908728 145400806 874018313 494215244 899837876 55168745 824536451 19804126 52933068 248299663 396990739 827186768 795789976 134215833 333968350 684964556 200926764 648997062 101721718 824064040 896519359 720108962 840211863 208710348 370788004 101172266 681704246 299987676 175608277 961990286 990081952 211544612 562527342 775509548 371284743 852587481 917179812 689919090 753550960 139446691 169868160 444642867 829989854 150065181 180514964 685894865 990077562 159502202 177284254 775093150 388281433 484288844 578243405 659199441 544033832 286914259 256142452 436136695 845098417 112247027 127626979 200182633 624043845 10850587 698057547 976378305 827379559 598927440 444123546 609636673 716834881 349604249 426235897 783319403 752938847 268098206 624477746 263567130 48265806 853054928 172735731 797053704 662694962 139107915 606637213 679235259 288035619 695679550 174133195 418682421 483546543 516920286 705998070 161404299 62739404 695340373 673399755 506186103 645056229 882156769 518424943 604340955 706147201 667906542 999161635 577020063 42549488 822496314 78956139 905332915 286570768 97065016 288089556 234467592 476528638 741947809 157373548 136675191 151553489 621254199 614042416 70164082 210438523 694523125 336499331 366454857 937371414 911445671 742039400 634926511 575055304 759661406 4731426 259463625 525408417 495582765 225863057 29661762 915007845 369527428 776679883 87557740 266215931 933231465 513703181 339030457 638107698 954384795 198370303 622481928 721118470 501748748 833455437 106268816 507464544 994246779 105206322 546710948 716362963 908492572 514481411 288059838 356736708 552404974 393984676 262538243 709704408 858487407 58924100 582461579 753660829 39380297 709668775 171235143 341663998 98641303 850676612 374941699 223390572 905817955 772237928 390079682 62952863 52354294 228225706 248139702 322146443 249794514 391769276 379484097 621127410 472900374 997796185 349082635 241382592 46867537 393249049 719931155 318688499 892039726 149719360 24566328 647592188 34225674 681397115 476967036 909681751 45897736 641837295 631851103 53439679 824908674 744000987 632974544 999557795 339723891 178815334 771877044 395905467 145114941 435668637 619519357 45876018 346349568 698053209 392652106 740649760 918349474 120189429 859726744 551315154 166922054 191613343 430772105 987760703 220391010 882057761 862875022 905344924 698481334 438054069 881987727 771387655 335937729 994128468 4942596 983770755 382223660 396613935 113638764 727776995 451007727 209152992 47461841 114741498 348199970 991189767 670054343 810503439 514888768 33112129 126116808 681279044 242530408 51332977 827564429 969393755 486434174 301887189 136433775 993899 245281899 692847340 130123131 79235529 373665010 512516851 162943355 769449365 533330347 650572771 626766983 711807367 882489328 52235457 123464692 325363580 616390904 940103815 707508455 565545912 640500691 648431798 59651170 554598141 283884956 697468160 924743487 394696469 118747485 264244833 989645660 827258464 611504358 985836321 88647083 806292471 307671315 794255075 817078270 694625419 823451283 623954362 680629952 872636823 467976041 604574275 310212365 226299229 812079635 868579207 238163334 732452960 473778780 762303157 197187725 166951866 875564902 933100907 919397191 454253060 81450615 966582502 437158142 677847472 462368638 416999824 547832127 265008882 738560476 998072372 595694093 168194055 841072504 858140665 737424783 227577875 982783610 131058836 608591509 421301017 694123833 817870745 231821815 477350522 202041814 459154514 79675062 441429131 453136810 566247637 474689617 629608888 318783285 421156832 561934686 914290645 59383626 627136526 658180368 719430675 44633036 450644242 92309738 784944581 205198959 31297562 322209928 634517073 589620407 159225754 214943065 729311672 244038705 623530655 680100944 600185771 454345232 258440572 997925004 805322699 521611515 751793967 385373334 596601031 43851967 750678771 945395686 814926716 778590153 457359771 818731891 735365470 237388286 466196974 681160095 770873474 417325790 467610709 921961914 605392946 239506411 42577253 881584422 258655974 136274544 634281998 301754875 144118312 774825635 820334470 425309663 599811030 63858540 755497247 634604941 412543049 683580675 577099571 527270611 965991162 269963181 640693815 165881849 818513514 31700164 492108155 906723420 358412755 865465070 877616704 223115110 433760998 207627495 648229960 599870742 728412648 245984580 23000816 969684357 977756573 82885525 810847127 856261747 705880669 665094424 253205762 188572533 824043847 497970060 556448834 781932220 438213525 427450441 827446186 790259524 443333380 171578834 841367047 262835842 914072933 488745098 285510259 612089124 572738387 597105781 548169136 711803678 358866465 384435405 529400592 835896978 702990725 949749681 253150087 34158577 346380394 847605089 417120879 135949282 573870032 449552905 350066277 34396341 413622783 386885697 636828381 438633996 136237120 415133381 604031197 80538235 71003996 512043568 66960310 242762937 910068535 967411966 329597574 519357028 589155973 388978603 614031421 745812182 194707155 950559310 520324008 418214427 753226691 611947226 263834949 840183954 482287871 771834482 553630150 116644022 27133627 805476054 644191075 722398217 396211407 440964375 574913320 672530748 101783736 139138389 786974428 581879953 818709367 311449570 719338066 441467730 741907821 684805066 563366725 972421162 237557704 328034686 868376447 75910460 278396262 986284737 689872859 862589927 932459785 418973771 175669854 509019929 525325628 603271535 540258389 552528818 708491344 256291763 16191485 338302006 528443070 835148338 712886021 209537186 574999352 728424583 914890499 754293054 853477047 622788196 485783388 139875933 135157426 400065373 268344000 739284542 680537108 508927713 761923474 879484320 377740449 707900563 572727685 616051025 470848830 320266992 985039256 106099320 136193837 189313455 827589207 986795280 151278312 900172061 471725534 808645309 131578211 919302307 139640051 117172297 803060246 350123697 474516318 425284753 247813221 621441188 611258845 55996600 48220999 588468849 871090267 194042106 5273793 27335201 183278132 934579306 625653368 515627522 213388311 140052629 382844842 358925666 732334510 31597047 723922916 898353214 978220112 677525009 698734755 575772296 386650138 18063012 949204261 229959996 777520908 131325306 107103717 444477721 568166937 812423565 153672248 101591476 555116896 882411604 391254377 962536446 262494746 212064422 135805869 426925661 755067262 670575784 371221323 926602290 38719983 167379987 311312719 607720389 74212776 831269831 174242526 32688430 457986452 772856945 190400396 505467937 946795335 476796469 170240241 379606795 613066824 904510202 118543905 532267117 129618814 541839371 926107792 539427657 276034506 168543403 768844560 348123625 123735263 927839346 696573443 171365436 952880646 199941874 971299662 103606054 226942210 521806283 838921191 494175515 383065307 568383851 260250614 732828974 919439684 923722331 510558276 175816272 326437694 264428862 691563044 932430931 988373951 911761803 973119455 789746795 629113943 2989726 712465580 678373391 260551676 658200582 922489337 641790396 536213618 761564371 364897169 221752714 92223649 711173653 521526244 25426624 293960991 397541359 761020117 467787690 417209066 196065634 338693906 842393707 117002075 488120079 651404285 402848205 290380409 979450491 186047398 545881430 431064785 936961266 292942428 486617432 347091597 870335945 749337121 819609773 948856803 104306860 987320089 905240696 190990495 592875569 108805749 909281642 404623317 94961438 126175205 700276050 823386904 481310586 305999627 487253110 82270004 791491467 611791950 889468006 74448224 992685449 379406609 873553110 145197192 328041730 57778458 53913831 742481057 73218222 279614577 7547340 443342580 709983858 141992090 305072477 929276137 260742854 290217044 332739102 157554142 664488344 819364083 499946178 529095359 963425278 436348103 960479620 786315877 229387970 336428334 497428378 800070065 69842859 112292479 325504091 480333488 950695426 37764101 598248619 188561849 29109144 756947091 727088353 958457106 648279726 193523094 286241332 828148144 736983736 791639628 477551730 436340729 932923617 1290980 856769019 509425425 539863809 295170535 524573566 468202642 442181338 83836631 325128089 323298281 446567865 62634662 368512882 817382520 161724845 447915554 394099942 412497377 374812265 884832019 269321985 66119825 843896230 121743820 91377170 136087654 779670700 739603682 462846776 439147869 341356423 645668506 389520696 126381860 607994454 915558934 307531355 932679334 904630289 69444912 347966693 969630709 207082992 349108537 398539496 475788634 382901742 94874913 573667036 458030786 145081325 473097178 377933518 124895683 78887133 479776189 548951680 111403834 564470667 339613407 661419204 362478126 578272517 186735043 855194055 138388915 465743901 24634805 217951306 210646259 46509704 961125792 765909611 769301346 90240719 331065732 94155654 605638787 364951651 652200001 210577842 478962608 962214406 412395868 600618373 620127931 811562246 82614435 778221487 592095425 131242888 124241187 991032068 714942749 535156290 82314443 930756008 744713795 463491375 525463954 520909753 208990838 657024392 743385128 808698350 835193511 188297894 260803651 965571838 126019700 774653883 329983930 555319952 80643074 862879668 759083099 420163584 494902624 928291302 239306019 406562846 515680011 512994580 505365569 411999093 148440368 43611528 555180522 733728783 300142190 909347690 690048784 72511856 145656718 26441034 964784176 331845496 284443542 424456750 558488005 481894632 455024397 171841047 226600331 125569204 477437281 87958692 724145416 949495918 360398384 516352692 538376773 222367310 473544327 50771438 347010487 818784570 19606298 791165990 334257757 166782499 343526844 618325012 741465105 150702919 786305913 80609499 346649667 504382592 871632948 752381982 496308469 327546122 451648229 412572613 408319148 778191076 738341053 177391188 569635587 393803068 717284671 773217935 924351587 279462415 604212380 93362798 146841378 707118994 345721685 814878917 594743045 997823489 670886730 517004221 87804803 293237106 15264443 575228080 341307778 775153944 346801472 266739391 796854665 389777946 352909495 163009089 36232330 757957030 553369265 640036280 363979956 687309729 788837854 693317872 553280030 706929135 579799142 582354682 59413620 778369565 536322854 45534113 166801909 468044979 862348988 246378571 815782208 746594843 369156233 880810656 455615461 390697308 288585599 908109520 745897295 598393442 392133187 488643861 450421432 778607218 904320488 74230795 552745710 890538636 655281842 14130127 385864161 612788469 79634023 710374079 113718109 923577346 740622212 468523269 44373627 825389515 218809793 803708676 3997065 59469544 423668348 539609998 51469859 476639451 497358320 804000251 286324201 77331225 174905176 687726709 879661946 426194081 623755909 151650364 709399520 826901794 780445224 51208967 461528190 989769232 34034591 956768682 528148417 2676533 179874107 663309358 897649208 481900171 573695429 289155428 209434813 851581680 53881704 549283753 289551630 694828766 847462147 578055087 168374718 672882689 793446519 876687534 479383354 931351979 152798130 3175190 246690372 204919257 464844144 921928708 680338166 642376154 159666545 81110012 428179937 436628737 8632187 822672378 64495278 559824596 79085644 684674404 778964017 40027799 278528724 867388067 425332399 438474128 581024404 200338914 364711481 697994801 830173409 259257864 549958737 555266703 872108165 235626404 987619371 237131276 905176144 641339729 31006070 148253526 767434025 961717829 725831019 151407166 327126755 383193082 826450807 797807905 585091364 662053839 961370663 517490115 299834955 825983700 910641852 496989807 292983686 76169671 95525542 730158405 52435843 161335708 847377573 555477722 592985738 911218785 504447527 640193757 876282768 987780412 768115712 712468476 752969485 896319587 563573992 251173227 656246274 483106710 891136282 244578065 235610949 415502453 203657455 609557950 469401176 770058885 489295601 755235244 722710204 479253590 512560464 276045613 238274500 317712673 676695476 626587110 958861973 853412342 965349780 17750329 39684204 429264993 798624550 653720743 749054643 184825606 990181716 681632191 818170645 400547216 125121958 212202161 493519699 342226162 485488242 127230474 437350818 465800959 176931993 753410444 167174830 866165768 375884052 987053996 93269231 917706121 576083653 554112579 375770300 72400611 361033159 600419954 65099008 694159346 665751873 851898628 728719734 544267843 793558760 522543613 949428151 414168917 449833734 686918444 730390273 472341834 768555384 392192410 971967535 266072039 819823476 496893751 608885613 111684261 904038418 339439529 562006557 916063415 645774617 614938389 828455215 772244897 529400602 512638210 175251510 968288384 248360581 912284314 552683021 135423728 760835626 601195833 168417145 693639507 767068129 865967127 255790323 812911071 858474088 480886323 717305139 875594382 598754593 388295344 355440614 51878854 816453261 394754126 776046413 551956219 382689664 111109648 275921080 394824224 848368867 947841146 748709202 531484185 797875697 828863540 162733144 224531643 314362419 109254892 706881763 38080113 524186529 188447196 161447960 156669453 24785517 623254199 590517746 447733817 167883583 207884867 824417738 107150257 299890016 908252926 813472385 874084242 460164197 875667215 534541951 347484890 880507134 638524484 134223522 998292143 708313258 428543429 931339776 347066441 151219504 55767962 365980664 984815072 732737836 249466660 822007752 794414708 163341031 598916920 470637940 321782264 521984976 677405999 396594048 528703674 44263123 174489162 68074511 134534316 410845586 922519694 950696801 316722860 744182358 628991912 763644575 209810406 928801393 861198783 547751451 783967733 160832694 399745499 879225634 259177090 964420090 557629320 452725462 156980858 70240549 704241613 138071684 754373986 376340275 970411059 383862568 575958655 609965498 991259262 54046091 496210710 984609314 559221649 949874229 162029952 128625435 239530017 729754507 904877179 552363078 227499758 538676135 787076280 526308671 352832605 838583245 376882530 684783586 715211130 382187807 363944029 488187424 321412138 336112105 58560565 359241441 65795095 459097268 155229626 31938810 699475158 594024358 694461000 174695378 190948132 592763557 47711374 467818432 208558007 184583442 116148183 114040825 235341761 764884064 666792133 168732407 960330936 188454755 525589272 202410226 135303325 539760367 390754617 155943885 632047703 548461620 150220523 703670296 654518322 949099428 845340601 922570451 72410011 181157642 318153089 291213599 655948112 949139678 928544071 702843078 503321989 969477827 756288941 591206724 607443340 814328387 485697249 440145556 128173704 382538258 75079130 50717794 851666376 976246983 86865826 793602643 581840966 225545513 121070604 641723921 490972974 573818662 358863229 171311350 931054449 925104933 455907251 818643246 298886548 396585995 465202122 428989283 113429683 572341022 500802241 253272994 811326052 14224850 687656653 46866184 943406867 343752451 43251601 954053382 829605204 542574663 68996496 640356511 436558291 197433507 693407904 735621654 465657929 932287656 586085534 503641251 206732629 445835297 937357874 467907862 427287795 478739804 426331474 536401734 668986083 287423371 316551481 769349206 68406600 940776135 939486975 587389110 854073024 706325731 84073269 651251234 125447665 498752448 480175592 681969299 99402029 126959408 211742595 523337575 429446530 901297719 481005021 341630760 120172622 308547171 122353063 149846775 303587386 612152459 25161505 420640618 961671504 655819730 216176073 809964973 41137486 775490067 835431837 685851781 997649347 957449271 326992514 746766366 507899270 151401835 182049421 483961754 755258234 46194735 961484265 819418539 114951387 792080916 194777031 776027870 508042189 568104537 66204028 683115445 383749469 261255700 508828848 794404079 254613419 241276047 343235271 856887514 140538726 869079359 763989311 990577797 49797976 311363913 671605154 595885083 36639996 643694999 14015931 157483847 476020035 850498523 330704620 260904451 690577579 787178075 168652691 43878095 303030507 136252398 895200030 936551554 209202788 191855660 279561734 52775296 583343791 902830067 249307664 112783272 977345170 767728515 466968007 388368931 886012350 362192433 183636540 802931313 556532372 815909844 917440005 747916291 439181975 778909725 132234059 270920716 258963423 971937146 848638789 480679131 961733749 177911067 276012817 917321995 447354557 284119330 206787347 134697839 17105763 136597530 237123985 666427510 983573843 607083412 788653485 805153030 229602634 200220937 23015422 782437050 332797796 480267246 373026527 838619380 931366586 793829282 544954257 896186659 158370003 517507807 641376623 604347109 797377578 809656146 282205018 466531106 736139593 216955614 143074909 584355395 354190573 117120896 704870745 587577914 582416784 947799953 724399428 896375208 668220405 140825614 349449457 929286654 635318712 362318063 547209705 224674078 730778013 944427582 770934310 985655370 370363826 65663440 911369503 796056483 65600611 343410680 551214700 977527702 565593600 547168045 872104377 877007938 905199639 687114865 267285700 395642693 558056836 692978782 112769527 1497433 823611910 72842473 277728895 125568660 906453160 105750938 509673175 496700190 320103217 900374792 838121921 468871387 801749424 391602505 241799904 51350187 870300337 759262628 673004274 970107730 743738221 298301963 851389981 546756909 495473254 419413058 616743062 836364985 792020299 886517137 59393874 7060938 402627990 785814541 476080200 61684677 260831032 44627571 583870132 566938826 608440984 408677970 870076067 937353510 369691855 527115270 972798897 876664018 835549825 84741172 714828614 954323227 480605947 501288925 484919427 803552613 178776318 569088773 542992564 439211432 40715558 302546964 467282835 865234235 792910227 147419112 408361919 386498442 165844397 442600263 341310697 498316198 333909641 67133978 723344558 818349794 955169605 721452038 85110211 468763017 793610047 250391926 444180201 216986830 239238397 846860678 584057885 795456821 382732675 830264697 5971754 571037160 119091425 745697631 347117368 911390804 254218617 81782611 280318312 593701715 77941218 336173215 198913034 822734046 58929119 286866768 66380410 547829287 942671794 343000944 563759759 156102861 824041524 291110867 380662146 552065603 722164271 540593122 354591691 884954253 920326683 819412853 838842419 566706168 747353150 273252542 890828927 694991678 480270860 84336258 58324882 751923123 645554669 157643684 215866648 489569576 971743459 672152263 856428546 458332971 155318996 73393832 953073962 82825681 995150267 20646583 330033795 277950177 42999848 553856207 278884874 810360523 24870733 995413687 511421923 273174615 648287689 773680076 846733879 936625828 891484721 706640483 966143994 440521770 160896040 703766853 251361030 33036926 29973382 262283487 235150406 767566357 638735728 938046474 779654537 336245856 684566956 648061316 706010440 915990092 358339317 368741924 232476156 844024611 398520343 13796142 606139418 231123462 545810372 597291622 800073365 583568416 929893368 999504975 802837083 520065395 357435324 547928726 686143891 955741092 686445625 556600630 575407131 954292189 264383583 212659891 996229625 843478260 348669426 61709238 233012534 763257978 175467998 903672644 387090789 638219240 210003440 527898633 781326798 542455715 657547541 126252385 261360082 850637391 164699774 780182803 865230483 339780256 823281725 695567592 948723246 453182577 534804133 948126632 29717596 452446886 295164356 171531674 334098238 237975790 508663706 184448878 424012025 242158321 604729562 86439091 820491731 946547731 137169290 590055178 685779016 784313165 99402838 722771234 603721609 497246632 165265174 510118135 217010014 194542504 686943653 531940546 53047662 263576491 314552351 72828979 442027311 729738462 202795211 942428075 537718766 110232148 309296209 121267380 557938999 729063258 889252863 858424896 371287243 254608707 113856923 275611285 905697302 390780017 159543 266100656 997519646 503441048 544894254 981107730 55956605 397579120 459940244 188412640 849402247 146822925 267522257 490999932 840060036 734962020 695647451 710258579 4435507 902966450 718980825 491153409 217364653 98796554 143693149 810654551 815769293 425375313 668976139 181143811 426314596 270048456 856501716 594257395 822871697 130273550 915760313 607811020 436855564 398030606 699204660 407147547 411257017 657387148 730028130 820539364 173047480 55322407 196900554 723309588 388049495 431917613 673308385 109592411 329319001 179363726 368459490 910639270 663834447 316895979 667658501 784520413 161631546 527317550 265712964 658968419 183730955 134870408 285862851 987835398 936619325 296010926 827129621 314469508 728994709 818818692 245432217 412295192 569840026 157594341 882026392 746402703 678578947 956282810 576977345 56305311 704888151 831774833 996144970 141827459 456108895 923601584 32591350 406206378 911357731 516803134 869354683 634637110 298014045 376963372 636732991 122439226 807692142 326555147 498720128 44334538 675127392 681159249 896451229 331584593 528406156 818587749 955955527 847685391 97658218 430257357 733138695 769543147 916798799 522204000 768301355 922256157 208042978 84644668 696274188 568639417 421422439 648745089 593734082 149382028 30638155 111394683 575029416 928077196 24708339 492542436 983489167 318771742 788846698 767729729 925877310 495470366 872114702 375638500 706081475 22282049 267406542 568785770 105237682 518641388 138851376 661194017 741289450 885378416 339015943 979883060 747393322 336350519 641802846 424632439 798671873 313445187 166158912 351860129 197828557 912466885 575732497 682911333 614009782 303561780 806960008 39017127 723467437 719689935 378177443 774465962 373443243 626021994 577390898 908735768 846523868 52557592 249878093 515650160 209757446 991313787 869764270 476817619 233803246 31433775 127997895 965459531 147912598 930124240 361442340 123533607 433021760 72552156 673087415 668818740 2739437 270159070 583598973 498285528 667687917 222941892 530705146 305363478 433149035 598082302 517264282 636837623 892793950 460298555 109869592 719741021 996649054 593976506 415883063 963949866 897992715 387588752 96407629 647482276 794776162 260285264 588037224 74960346 856927338 983694802 443374285 746903360 128376448 330228265 257946078 762496892 150938661 686111664 461640964 773480043 403649102 934843536 316299008 227703347 766982714 962576217 727425294 881588043 876531779 61126954 608265729 908957399 849135964 799166570 333242531 669250477 641508882 78077252 338318862 120231864 63044537 757409584 523663660 282653390 695865868 659353502 336704345 415451870 259608694 476973456 959298907 930782762 134531376 470322906 558006214 826158983 405658452 905615207 786350279 633540266 741336298 352847463 753039721 836899170 97979652 890461641 754320520 511770744 869707271 176815777 957716124 605863048 862971180 773379995 511717909 51697597 448427557 217288654 34985864 940406894 504358366 344840436 139830622 424150560 614345541 390092886 62090537 648071058 392876488 993759594 430366255 644862315 127818900 306566566 564024700 614751343 909283329 420271788 325788468 414208802 101583435 911099147 221568470 580011980 894467202 584300827 730693969 696525344 922044782 257374773 110372141 334972490 376651916 352796269 507433514 189425534 21734511 434004099 467937027 416713611 538644070 501140791 35850490 518085096 751782789 821511024 595360846 878968034 604155478 997770979 1685716 674103123 156980460 632545172 220603177 439215936 555566035 855473597 555121516 386226132 589925319 677465475 59178013 123158547 366324897 124985785 584992003 500751691 56647231 362191866 558694235 112295186 809382478 594046203 298130514 375144803 623847104 621321747 634711038 78429848 385478938 658827681 132590460 655815060 142435173 600287516 853975297 153133425 659209459 184793950 483979322 683208559 890504336 907633870 561166877 776963383 732403513 82009433 554782706 480993811 179593961 92329114 517458162 670425160 559061075 683926848 715084257 668203347 324538112 247792171 687721170 691594456 912789474 501267209 885070211 866816580 466059134 373344437 824446226 442212585 75258847 347300646 444680180 561189057 913186325 679972825 140597533 26458026 482583466 837696367 431481512 339294144 811289958 294889288 277124303 898237678 219353267 733857104 512606821 688428802 494926027 792276734 288117710 772158428 51105937 431633760 798536449 614520205 500377989 375912982 745221628 991747120 490261265 5879067 553387330 528482625 526035017 931064952 156992248 292084534 700945141 193360788 875464636 242272886 346344797 815180847 511062118 464325327 239973765 635047026 483158740 669159449 163215538 865668150 56006903 209684923 231888828 633237838 443563347 850159881 249943522 970880474 810009323 503590589 569352849 455415594 49920384 931890513 222689289 188632847 186639287 300964832 658452590 256881415 782999074 81084335 825554786 4387530 991791551 264521 324252378 574856127 584552518 162474409 280556961 952718882 866492460 290936601 528531412 258152362 132513044 566148737 369787594 482107640 564444289 640741862 329296057 636369620 268499196 439304778 961318988 989831962 987025509 529674200 487771658 618440312 758179065 444310818 710083042 995734743 692706057 545064630 986324540 763775759 247874664 6197922 205756006 128962195 849221608 24791086 889143310 548011949 997536398 956278669 311680978 991664128 9689711 938435095 859847351 802010706 36295559 683832414 210330540 927555010 710705816 204987054 478659718 145225820 664259818 43319559 451478741 35225720 379209437 622190958 973028075 870347027 151145551 192504946 547440120 754852351 718108774 954976081 169164150 716180723 57308715 44420261 976956271 326387685 771803525 261531540 527218697 326485307 275208615 300846227 731009498 20420472 849742888 435604984 975527762 310431795 201049577 72637806 44163444 361499085 189931331 145858137 650108789 112216457 595988051 131093753 287430308 640935610 310121951 212967957 198155334 706760478 916351323 199826406 138571872 83002175 909050508 779008072 897020114 785679990 150091406 542427689 710045371 807605622 134261618 302638512 962642196 179929468 268390784 178478953 160435822 302711849 961413393 31173525 27644654 905917577 283275940 426766493 334563358 209551303 411735552 782375923 192612564 313974564 241738639 978761 756593006 593958046 426408880 984833022 781315340 899474908 440573231 86990486 636509282 351325666 802035105 269676771 317325421 275227176 65633642 741042011 198023282 626152927 237410178 105761419 80468143 47801563 206256239 314343536 629014592 460857328 247843029 703694628 379747789 13187622 259475378 910839579 853352028 43214890 16682720 860492227 919995206 173300855 484451240 743057404 55912527 164298364 872535567 549339570 542406613 171684627 54406208 640128138 454686971 225052453 132743619 877173302 480079415 990255356 958783860 882047664 731800132 146075131 746515609 724624704 895902845 594984738 278123884 519135272 96994844 529894653 724833942 830084263 381871234 616660458 124494320 111743654 611919397 203609876 495241163 373396026 436180704 150576479 641962669 170276270 472377050 300164512 867468236 57554833 773760159 72931341 795519455 275636036 777281980 201888579 354978093 239567954 201900592 151610142 332230577 585658125 451303519 254315864 548555323 978984131 468358399 230531261 275601436 560338480 949242109 281357982 304620383 799943700 518491923 673260876 446495304 973457818 492886655 145844115 299321780 891479140 682839680 891241398 146053387 314384352 627392754 44871374 734627481 888557941 127612428 62704924 563070913 182305736 851631320 821319156 255757409 322428693 497812147 579214831 688428849 670977514 631828987 921115295 291810658 623614232 100807170 874830193 349217558 555564280 823785242 639842731 216409820 473099757 633313891 919501347 925906540 396809023 110756555 804605654 325656027 176978462 315238411 667697858 429698531 216754018 496237045 402961028 288406639 239524013 814019445 16919969 177579605 689749894 533100613 40497770 517025834 445219866 411749680 20857189 815567927 481878159 244601822 325647566 248630324 9224640 320810197 162452743 668120484 197709877 305764501 578567659 982915359 324778234 435419137 481337270 987241705 47194429 914008635 183108139 285013719 505696472 130640298 684712018 434809256 583314203 976131071 410572956 545795170 784600565 276643807 191511135 310447715 915315131 359559716 395761322 911651099 340422293 794102446 551361390 194342420 447826686 359328049 655837484 679763437 116799593 796971880 548105917 527358094 3521625 293348889 505382199 660699011 633183765 101141436 924451151 81939280 979741685 487692535 938962020 448725058 187230373 368281475 603872643 549726994 91872210 908063539 195889456 775728464 832042005 682955268 986126849 468494203 28736169 47444628 238588919 990113951 170637261 725930507 386602361 827441802 6259669 175390850 775844253 266959302 468282752 592279684 418085232 631443050 369094354 681668601 610269727 39075009 520552376 685431767 601976586 134800227 334173928 246430453 318330523 680549361 302081049 222911206 474686002 238525305 698525866 221799 196295382 409172454 844806767 294815632 882461978 462492466 19446958 881769825 980944772 262476263 297534376 167538329 518665797 722200158 4439787 675515691 312047489 366329239 763640444 379261779 853541685 291989588 376957969 716701440 956103339 373718982 950073475 490120170 384212374 419319888 637642270 806705251 924299641 749624205 821717801 805134674 607329999 629324322 239339317 542284646 960563684 352692215 520751595 510798826 496835642 981297199 265383837 796670790 775673964 656642760 209402208 579888231 296028935 706046889 621160964 914298 146673156 375513061 812190510 351528003 534243277 475643562 466961756 591574880 995161459 764834904 260936669 203563461 679126632 181106021 742689118 500604243 349995150 859528542 928572002 404992781 499452602 791278496 890130582 687994453 28718742 676701871 569596083 371377464 751806280 294214667 408715774 476668762 688418462 772834145 37756961 558646403 819801965 20966365 543532816 669107425 847994274 888747524 232194413 136292615 96876768 845251297 363483656 490562271 981871866 794423210 793605383 289741357 833106588 784059986 570727518 980204323 797795446 698781414 297137799 460770553 96398970 754565353 731665092 191554056 157530378 673417632 117633179 492373292 138329282 498253328 463202405 104707076 925999007 984540348 112097836 61047117 455620834 62561562 239214870 613377232 49914388 892501193 404983965 620285643 120905960 914514892 23433071 498944271 995626073 524524400 868181777 629403367 976623982 56875249 316447393 999772087 657094894 980209561 462582415 372454792 917249656 309626485 717278844 579307226 626325971 701913761 803496769 695447463 936124223 57760128 467527930 706799647 74283211 502592388 854390199 990422558 81092512 981493330 402135129 461076577 945152533 525034600 783563651 677029131 915758977 158060867 940302400 436456483 16280620 895033866 595956933 140439094 122178868 604409807 886762836 975832889 459946362 247109802 654480827 665512573 827256351 381334729 712510001 915185338 692619352 824681208 365093766 528453593 191199116 296273197 871248520 653276773 822413073 814016962 4603129 881336438 589685702 254214281 457760452 306111538 985407780 233864670 460436246 872652121 364953731 671466141 581232693 513917034 896165557 377748337 327518319 722708591 91791629 863889796 678317208 373137821 857494937 189231073 11694005 334427521 876643611 965558793 603455718 722066523 164766766 969797754 603104000 55783582 221452663 508644760 833265300 87177191 222217181 509264706 659077462 91460678 785726347 932852432 986248737 695612392 996750412 926112670 460244893 989907043 323466481 397203458 562916963 964392591 648297756 484552951 935849905 638999221 731470536 225920283 224065444 878363558 506986533 913010153 431172162 626896922 384467976 883987569 895412931 54112617 911526613 703619171 767034658 154999784 379390128 591170166 163430561 967876472 351867359 624942729 550121148 584471591 394416676 991606039 478943737 661588798 942976407 323742810 478893839 340301906 81947110 305663171 709812239 519666136 866089402 21897736 331618186 188982134 729817260 220411326 216786913 843695720 488266574 183799488 505611410 985105621 967923367 839640604 217340828 932860063 900940287 842175794 325304050 353745631 339283481 595428515 609996644 883096289 904088754 478826115 100318951 694754544 575299160 161184908 460945569 872512910 385833329 765556449 471382486 364092206 540240995 293319372 144314603 441667601 273109990 129126896 335144902 18420761 251600234 635918490 593835980 556353703 85026485 231725969 835431336 540322722 315501538 386030544 10818687 72807424 901126646 405530331 290677429 912764428 908945996 967860643 888348901 249913860 532130971 270427489 666999182 67092520 407519078 739190075 624287068 269319025 27082551 510599120 6502220 917598683 229143172 301501324 140830808 187670222 741500259 338273669 694751590 635116020 327702152 221493340 673817352 634218171 797431150 219231670 874723058 983749731 386881796 238832680 606669149 113137228 453265769 485754940 306269942 731501835 420160029 540245430 242987453 715073245 424016314 229786064 330218330 54211308 128272718 68092258 496552454 355449049 73534047 844886185 733457547 615420678 595811321 829337497 167281017 23988637 128074135 999772643 881718895 361127202 856730553 371209373 831219639 759215585 453505437 831549835 306860129 473827804 417239185 15612949 306156524 793913462 509006961 183999992 81530316 610450546 590999893 517998916 727707441 955888259 714321141 694709649 722184176 976456565 845479621 530529374 639968036 570111050 746550412 184253260 566743927 845237836 587502175 191064612 203610605 612372072 680623753 721388665 727721279 350139898 858302357 533133697 453829521 799218809 723597330 496968561 175837359 99385915 811384475 246468982 742886883 730309442 474761189 791974473 60439191 791302914 31961684 300517329 608278098 907562975 439638869 869180521 525215299 57489670 602769598 193526980 35222324 375955115 46830573 293762236 701059661 987769139 448586126 260615401 228496950 931379297 652535633 225667830 239005062 821943752 535002026 907107841 703312124 779696417 188305828 126920991 731656060 521975467 748656131 757345066 941586745 5228980 444867245 235461861 558206641 337209794 720783760 902086823 870013244 396855384 750964578 247975811 551109679 713680444 442457033 935176512 157516757 957058868 963078198 920229838 184792981 625143462 630391559 514827733 806883965 603824792 739696072 270172537 956298043 889735452 271889147 292893167 372105818 707079111 175910654 142256644 445208888 216857158 563616660 250886408 848847550 106311534 232230882 256182706 417621133 97609844 772729969 787476592 442098394 514688145 904472815 777307126 638632605 381554774 104019851 689268143 551441299 703325941 414799187 92875296 112305690 832688130 911585278 385948603 196515012 53166520 989434323 703733864 861449503 391022178 844292174 117000316 762430153 120525648 749052440 334465608 939093841 981267044 618626431 369571802 821604039 525132243 222836159 989910445 651073051 164959871 168560133 276623560 159035414 949708646 118070355 791855625 499107595 248424318 734129880 415000729 246487259 638045216 113444925 190429029 519754740 327072200 549413691 666545567 818904373 759208338 315418002 384387010 42538806 20768137 879120592 226562060 819318382 733988197 830130787 940396034 862809049 925242528 791501124 495463416 91971914 321976333 164241712 602484592 558009102 574782414 129328724 674366457 197964594 583442944 589284184 767450092 276415171 322727674 687752137 982326196 212538315 953956341 30149599 974126981 327290247 456497187 445729400 223915599 639958346 519739230 439914684 320668503 586743135 350529743 911479787 892659241 265455151 344839896 194287684 358067234 804794304 411176382 589458033 388567914 805916050 466377558 664488222 718305009 250357395 918208979 912749848 659213660 441833499 957799102 689172572 540379525 403223597 408482825 795368515 411306931 311440935 925859780 515748176 937659721 687738044 411597853 583981631 654649351 513234837 70062825 320445898 10527654 529858429 226822768 881731768 586258874 231937753 714389957 840912349 562032489 874645197 374692612 604557017 582558311 276077416 859157363 877889808 53638015 804636048 86385240 434252480 98128004 182166203 482443222 340892386 341732192 46891865 2136230 230742482 227876849 969341886 507983478 756339931 727235993 498970734 477608968 35578340 403685255 103847338 49516368 286318000 71110967 2810280 919640456 947539059 494522935 389017428 304047481 47800329 725571355 368096515 176258343 26154094 564158035 713514225 408396124 115240891 159033520 959191274 227745762 251477749 176209848 799281004 465785615 151520295 959697109 983534705 149162331 643371996 56771921 43811671 566879227 846494668 247149860 950063360 83424003 370256275 442078593 392821125 160791087 560192156 706844420 437571691 523153894 305593716 239526616 431270466 434877380 340814354 203677856 396624552 582198497 893262172 132298386 132144275 253816917 720200804 101662480 673603416 227541123 149804229 384800591 383375974 597342893 92677957 589363993 769053752 298236570 516370494 552900142 257367135 408056896 261480147 661965653 155082103 682164361 270929168 472753334 662754071 502119023 777832028 789993653 922404000 622902942 749681315 166254589 391972408 89320730 910004148 951956043 151099383 301391991 539309378 778986031 454033624 704944349 431996556 605786018 244453526 477130494 676532664 319738820 644338508 302668361 914073302 819432342 709856093 936864423 606059927 244851822 107835804 572006606 752587338 253096358 211081503 692737830 841960751 636254886 278525285 510683886 219850256 377097744 67781008 940363384 246938799 152645678 945512808 947094515 388525732 880589201 390678896 524878447 224880197 944065427 871032544 429872442 739038916 643281452 191396298 886781338 716260549 811524933 409068205 273274352 360686511 651148384 794222015 952878640 787469603 105308497 496150107 261582204 49264128 773137628 4163609 864619923 283629596 261801466 218965903 372522365 253338607 441659042 873961143 327568338 318251002 526138100 190582832 844052348 375474878 915863936 226853045 848670710 373914650 953839174 486329045 381504878 254111088 205265078 198184732 3528128 538987803 578025195 236225218 125202205 450351224 82391185 603844364 664746131 564355011 402547270 618574356 128152515 992295852 55953093 333402953 3919719 957130149 259953335 138282601 858271641 641056746 474464003 722932143 314945049 686877870 927861352 112162347 726436151 13896753 359637742 409249302 853972648 871897157 93064164 875025993 887278086 123561156 522505358 657288076 984414537 940077003 495593081 601778431 524923962 611691213 408389376 838769481 610630311 673520626 634912762 969939040 388089498 836210996 183593869 291824086 362799555 81156411 3155236 181612944 977168960 281515537 85375691 538791956 719532402 633481154 158653281 43615959 608384057 258419796 831558982 679969046 302333946 477322393 609334705 199218569 751284168 270466647 575383511 585947152 972936295 787422873 241575569 424441406 955994168 161342405 976482714 32408297 973367958 995624059 423935706 21844430 428843369 57923299 999312887 782972831 288313683 641647115 412249304 861025800 130550921 458530357 310925955 837202722 564492734 635109165 730022942 43816824 670195622 244709468 835362007 442419215 252660568 233954988 721062670 96362186 868888791 197131149 465076658 942651709 839446116 727352448 280294748 554201577 727186191 645895962 908717975 434305415 324493097 95772694 1732671 965796239 969127470 853338733 178836898 873407521 135036352 95851379 58400658 379166086 484036012 621120306 112246838 365150118 606263866 978297093 126361302 559971887 638810353 262952652 556621135 839687966 922932960 788141695 221090225 889862104 352286311 202026560 310642284 871960740 363341211 484207050 154910318 147511914 901667098 385550241 692102086 624548595 396477682 635535598 451603498 189085791 853940296 963963865 948714152 373045718 57692524 984878998 170000469 647345730 461398152 997476599 261233202 512580026 571610463 526482597 73785998 2416330 389603911 475726374 107348256 884035522 117265873 50130677 339404481 511221071 785832223 844771900 820353980 112679223 347701197 345519298 419407835 362919317 937515049 630013321 28822396 762619966 952158684 902133780 627136719 177256542 653731282 64037854 428891503 337582860 168478008 694944336 884566385 210403540 356398510 458262506 965179723 181563720 485312121 230788971 519541613 1398711 560964522 662074963 810568473 427644327 762089565 167712432 383644583 608439586 17329083 114951933 523088982 668543412 729735077 664155860 592858629 427009522 437851263 199881600 608477487 843589864 982196814 102343141 454441962 662005347 36419680 217236364 875804172 831478604 332871414 854694230 676286998 622068014 765228132 840555632 177338151 819104555 422420486 170969853 374833771 845956670 289315335 157528434 343552980 155878842 625903955 191197815 755234236 387777895 341557929 339776271 646749356 594796403 957453725 323208178 962165813 344338857 808615335 111990300 682211990 883973494 408846311 332606817 409471861 695829634 894422689 763486750 576181137 176545962 987846148 268227497 414083868 916895417 212525268 529787174 302708638 784106976 492620164 27511982 79213677 587166036 435967362 851894903 817675598 312683786 845555734 382612944 592760525 253979053 616998604 745786388 81345650 960610970 532564231 824780122 326433015 612374095 545543383 919791213 703081954 59339676 48482351 26617441 807097514 489889947 949195258 825545593 871012362 27767749 842338424 413107864 418296042 896834268 681581942 631322995 460600472 733624044 953725460 886545093 379208416 570629203 913840010 952317381 239740904 326621906 961088696 115981283 506120901 769137138 894832741 254660810 328389055 759962286 457820997 391447820 945809149 789277101 790163410 977305586 607160135 698958449 477311301 564603322 61092992 692719923 173085327 767742090 890769171 763155704 179695818 381085378 259416411 901377730 344744123 756638443 478634056 748900071 173423573 647634794 91307327 570676034 472969239 810634898 141333171 350696593 974477330 118786133 105514714 960964624 317102131 203743344 196989731 800974678 528786847 325218085 458499797 473552604 623958310 443580072 554691412 168744868 914051736 73760657 421544662 264466804 766628880 709394971 892019947 437132667 578658692 720157181 520950123 800140765 877184677 604633373 360756481 307227061 90654464 82396499 401900301 100084734 876385140 886737391 263169029 325264563 782493294 927806841 361133467 197652340 107065873 260229376 698125003 395308254 418348370 142584115 145220149 348826904 942171830 488403243 20523504 224425876 259564578 561373141 282422527 443003683 826054000 953391719 487188581 29097363 903139444 365480576 323566171 59298250 766709996 279814685 71953999 345427442 664700512 774771892 855400458 714488165 975251804 585491303 376274443 71879605 648437081 430558974 437698402 77065090 28608856 607160109 185126036 784248982 176948368 53740467 822827944 119348440 780322188 685564432 534647773 961781914 458474741 800617468 957853848 728243457 496012101 820434435 406506852 993175591 501070407 388407165 376815551 283762576 404741334 807836489 301630340 516640427 110325761 299379663 716626179 143884429 328416281 680500144 507538185 408174706 51990081 274400753 939480802 524586183 998735630 813003859 376054432 267654290 961815504 249818321 939405693 833327144 704299649 386604350 802086357 751971212 338806453 653688185 719842729 678415515 869692912 224443417 927279115 853547969 859076024 80416679 368418520 484670365 115612202 784365473 687859566 902607389 376961062 368994618 942377687 239919482 895312473 279419399 55863672 444668959 128520441 8742477 954493528 639107344 671235039 854880958 364153493 324752798 538127017 974548219 798281278 557102508 662908778 48852103 254914267 640603926 420752608 660820083 225080286 611484684 304262919 314874646 862121489 994476863 41050348 132791730 265804804 251016604 305697588 152142639 858507035 186256285 168377577 199449681 736334661 207128238 757699459 5566393 660082231 171712614 359214225 974736641 843680740 651313024 602104550 816883649 738922624 16201743 381775292 132254930 424726370 583609778 195394444 980845474 89893164 492671718 53341479 32015494 241713018 51382125 192311267 947588877 363736840 518193611 782142956 709564055 892662941 72494638 418113293 98664653 146922250 393322200 648412964 134868444 38792807 548776877 931861962 19034278 452513328 456849278 194850975 391108529 411900583 504082932 782884092 871973927 952321802 20023937 31624921 738934459 720069781 771413204 376388706 69693079 127879144 318997439 629534409 949632858 31097997 69444136 894247313 225885984 268092866 517797851 932903372 838256220 476093715 919146783 514930722 477326828 356464277 125192013 509534070 392482540 665439808 965034266 173800640 960088000 562569372 509451626 315092320 732571598 359338618 430918551 768895551 36850471 821382599 908670604 423361300 941589211 612994251 153493244 73280103 571382343 217450362 587617278 453647152 851939930 626122440 17082426 58318616 111760035 664310368 721754411 89890805 498191778 286869269 714168299 513517085 137462703 219764156 693708279 562450290 409992085 10971123 882046349 962740713 73601272 173717236 338514810 306902523 952342726 160069490 478711752 433139937 853666349 773595356 64139703 856539065 114831193 267774411 454630810 96675617 434410562 945375768 49921193 394543517 945663025 908912456 999034439 574920323 572341242 542538162 7583630 377782194 337610509 238990758 283192808 341397767 433787841 770060189 964291429 211984703 140575283 650877469 501341376 514439733 136322028 765289206 269086861 295975693 4327445 491615711 969101085 495954890 111694588 39123055 36143319 754092964 764185200 818016859 892742618 800783702 796215163 552853448 367506781 841506363 406410393 601210197 926681535 908860979 171303009 697277575 267087567 681722291 148366091 166768526 923035867 495584706 326637352 809939296 491912224 374817531 203718096 849665534 679147646 988569670 782475950 263905178 710173193 384951959 284133669 364639844 465852334 34268263 794111452 200204761 533123226 729952195 45421356 69774258 718344579 609731942 216954768 138819011 317540780 510283981 740995973 461587264 352725197 605262667 85510963 771629460 933330492 242547048 174990102 423679741 150104903 739585465 584130475 673087672 843550966 285818312 243244597 614180958 967275639 555046296 657543972 53438146 470342316 718744640 545918440 299815986 813627031 929389687 790232716 811340137 708977348 576185396 50376678 903474320 18526984 125135608 38256918 422196981 207383300 688822236 691442148 70114162 167790612 714600105 579490536 303534261 929456653 199718127 254423007 797527165 116193411 301034526 396879644 420840079 881138123 143473186 566263838 756657948 9193865 634811110 988750180 911117137 263905388 750192493 347863487 434432381 615712334 487737177 797349191 952000598 446622514 246490320 380005833 390324472 475092469 432813654 382963357 482551555 561924251 59490350 908964750 221294515 792662785 36257705 97398534 480087514 629543657 748946846 83223094 57898957 331605219 741681361 493559732 576089084 888642293 220582336 102665538 515039817 56667541 246672584 439378177 696101101 400154052 394632396 192359718 339331227 523502065 699237710 523710652 575950575 826339826 314599346 490720279 69890524 145037271 29822603 938588139 493962640 59788800 978169938 727203958 507414471 362138129 125511802 290701141 807135767 646761342 331519871 662171281 252782522 143289710 83241453 587730479 454372367 442241445 673509096 655511662 83099909 600157295 49313743 626268621 862825458 447117592 828050758 29646498 668457511 681943169 112689728 592309962 614831193 514833367 572174360 235613758 617208206 315377306 362926160 51266898 937056139 583452003 107511668 477993413 388060495 728997098 293646674 224261166 270198731 510794454 165232416 438355680 380092142 126891300 523026523 824511287 922519229 508958131 487993237 719926102 120819254 841000606 256622103 467100165 727180664 405992386 813784464 663910292 372440243 580717234 684307570 705917101 917002845 69463318 401389815 372445318 869910931 524425553 217860207 924772173 352766959 315557544 981021836 466544224 855393561 168963530 874737983 994550032 425390928 571286190 995818969 331957011 536577041 74683413 459303755 504996982 782899726 418344606 655789967 394311992 817360111 480375223 626223198 646061799 319582841 643822302 679611900 561784033 678708082 359846139 34421058 134284615 376476871 629015900 773212930 120012006 981950121 401491730 340721326 152180941 176460365 327463397 748365793 249564214 226269352 796247337 63838069 102002268 591895851 886804999 446793559 81011460 889446802 140239590 745293500 785590417 530706978 316981702 962818262 960202732 313888590 32232245 215869290 167417494 709333099 224837270 319232398 483012166 530132380 439312492 796465157 478993250 933112311 791139652 48062865 7041707 519810082 777477073 563470508 297619147 975180145 560794974 671731515 378741168 505767787 535851438 950366402 362217178 374522825 705548539 272532720 349232740 321685657 59457766 472864763 921118351 424083190 106379975 640931422 732392857 270087846 979050707 510092747 665453213 497995411 77792679 893672996 679638653 877693500 29969027 685238645 944166361 406114080 242388238 83697574 71318956 67420843 172699835 539264928 772326813 99342687 977186790 831879626 39633089 419775441 338188496 423579401 677538855 13493764 873024296 279269374 759436976 75529448 570119725 239812700 24577273 264680970 267390949 220564181 801855401 282285896 552707692 253831278 910547523 500751939 61379894 155621475 544396717 38099605 49090654 498406542 891497690 751394147 710372033 539935832 821945872 384203314 507695463 929631141 64563976 654067895 891280565 441995632 865771511 281328797 16809002 461507941 76992691 258092597 134418441 961327297 215749839 768938309 931503851 29164035 116567938 902329601 790560879 656495137 850198799 133894429 807631768 322711852 97464079 838654355 193081376 926396696 874245576 863424928 142065245 117340032 965047509 666635600 57073197 315008578 228036492 798523081 22195333 571781641 711851768 763952765 397863910 358095276 175306073 602692638 169314617 551449688 873443319 197838633 12705897 126093613 241350117 586378637 159709562 81303941 822943940 297261121 35848918 244253968 401177373 170681143 254543751 932273744 429364488 596426634 281627690 886936049 434835119 299251964 338592303 209358142 24325491 736717819 111893710 724013338 492217890 129045366 242465157 955350571 59230786 928808771 406156399 804557416 276062445 345095304 891038251 601122328 312940675 412205463 518062023 190703736 856114601 445611013 987086040 661568852 466477744 341544560 402262953 933369449 854958187 143942394 928848178 661373473 845390520 197490048 295297672 9621678 304584514 824300141 534777041 660415973 362350050 746065326 97185770 222976237 529617978 411533244 562375999 636569182 60755256 268900727 897901547 258841631 533960093 333209711 897748799 399149757 256727865 842809897 150365675 132261831 254980361 942645736 596272737 181443436 725645806 853273870 223791455 184572125 739107101 421922615 119000136 841405718 547160264 288358343 642865178 140440463 252888935 240504190 819298149 394050424 586097328 609513962 551725952 353405247 510314819 245743149 915838568 103672380 927688305 767052490 591269723 250515303 567603940 133021805 527386872 883042159 856498379 970318727 685875049 904110269 110012783 5188872 163357125 234536010 966981248 947112594 711352699 307917577 901547578 233023260 216726643 769199561 490752294 231569910 755830946 728432834 46763522 356880358 675120649 642649255 408143308 165309309 865994850 377946441 617779384 82076536 383899697 234326828 910701758 766336031 335312477 294377691 795883683 731350343 559318694 47390013 496895648 487710748 52519895 141229522 512401512 818538329 693752120 430589774 90909329 764754122 477080982 551152970 87957304 891337980 52628773 763444488 431044019 929819674 300178158 986777500 20688149 427316990 872582173 335456432 156056937 297563976 102703843 942362731 688350010 862322890 110435923 506134960 558212635 703322007 41559645 918031246 879161564 556513541 169230139 357266439 744415819 310480828 674464481 10243222 599126422 49313607 368409255 595416209 530285624 946792380 141695105 483745269 405889707 99969578 18287624 150796755 240994842 353268239 862513254 965063695 72650836 269910760 807880802 413713183 736198457 304699562 987521603 687550786 59177862 688486661 840856774 704039909 352692737 9628903 963825788 300239197 828008591 155807211 238232098 767577229 23830852 506605270 184385358 734974246 852408882 576502053 499495543 403199567 161200906 703729965 193478848 823933263 681760285 618373218 176328125 271488231 34214090 54468278 175305825 650928280 460417076 300608716 24842473 575087794 14057987 669694518 621720430 193091850 290678445 618159489 972655216 985794973 82284507 530335145 218354809 686270960 785439682 74857633 161608681 23306829 237396080 667843711 264005793 987475907 644002605 950651370 433683746 947783210 370076997 462585790 455781788 47503118 658809247 761245691 497095819 664496512 748586619 572090107 773365119 109428307 307149075 359949693 633982010 70719253 368968364 150641369 879678672 770028392 175663609 204159744 626433746 446764501 742293463 877055434 119295665 880354491 120321132 859323082 500774674 434981131 287354104 801789167 492435192 756951806 688044526 986743756 387103785 60369228 824214973 86254133 675125623 50802513 447151268 734406033 732091283 621387822 680122712 931629639 792777500 569434869 926569606 373664065 240182874 941846136 206970496 391084057 108069603 888322671 264007922 628717804 445189768 350709941 944322557 563991818 704981186 963517047 18007877 368328566 16566346 191687300 939261582 78889258 8197740 868108362 378777168 31979440 443030610 953881000 794715155 267867740 810616145 177966564 602182237 577539237 807369627 483684507 66514734 200614066 12946736 867228774 957457624 929674168 835926129 143760105 166214703 661154082 870876650 607478620 871492918 910695805 153126380 675400963 883801126 40637226 472878307 978710698 362422180 379295386 862615870 39159890 838618977 227476580 3586966 664303490 800919640 532097002 807303652 63387330 214816340 687225075 999201311 238455917 850643384 700603287 317656975 805575021 54188553 785593277 243821 822458214 932413378 756119958 182345492 516176624 683653222 254443256 894049411 926411538 608742633 727869572 862416806 717348769 197612958 420099663 50535193 121032756 694650014 606428946 366342318 904541318 214656351 2799319 422485048 556693113 974232071 375640546 500598080 902340466 216273261 281998673 71122673 720507787 215694051 79908717 88401122 456688110 584691368 109031977 553080848 248435567 437657146 119672057 327726485 142537262 336238784 783062713 919529232 832202772 147248413 582210035 973999594 147875927 933361897 424635786 567984414 922203953 904042859 569623282 166234641 580909290 690296671 489201726 470349669 278487828 704091528 140361891 594318691 382265352 643563723 981340355 55092066 786808156 965936550 948668840 537908483 354967990 641509877 414434114 483180573 965244900 282820671 862265603 514581754 387052831 130839134 738760528 294485771 316168355 279023000 213794451 882418408 46155785 681308931 379200126 648708414 953829235 967833875 253006760 302844636 931783193 57915193 8179154 64031485 758766303 154330759 845525382 398642075 736454453 983537951 326545644 451824859 693036795 259579541 311874841 348493922 88472118 508811340 594984962 269600954 238447217 130541297 398801466 938950828 214640565 58901191 571871371 414500011 775363559 454880112 329330218 203927477 96366079 10716566 639302704 389746435 31781857 485185446 799005624 40688130 239284110 319966916 448817122 93890997 112505214 935798392 857613875 294821813 117221751 238326043 615782905 444778404 551534938 512559253 551730527 146725675 20336108 185819706 909217006 354639327 17072308 41468815 610994616 369583126 882729800 243316459 956352957 879867565 577038842 891658597 584796409 786338409 622903504 823255276 763143097 48981375 907904168 601042062 403709798 358876728 473943368 313536280 717795269 308520829 184783274 351285290 254599410 375665864 621723224 80052714 792025366 396992827 25532875 17278579 343710361 86191832 457403576 792843047 162643570 158886393 678548371 658649184 954540048 828377207 693992627 399492328 419466673 770570777 527093595 180492063 421650709 953031226 252477735 154856231 432841272 697576955 407288255 172949167 111771376 197851241 992990300 115646914 646123888 374954306 193370911 109783289 989748625 342179055 223555628 24901578 914761068 451190796 551017700 123350573 217124920 875057567 719973747 593099435 589350628 102979187 569835838 845903806 540259831 455347230 441814184 319765197 718723018 818183536 742036892 545685420 762016133 142543385 217593424 369399535 646076809 598768092 593669585 454299349 821135433 399252648 573249441 323334443 645814035 64319721 186474767 424292138 8192227 703372013 181859130 934994039 17328687 32980171 83755510 516937443 173693012 968601238 451688463 972599811 923239402 76810245 917131010 942434569 599741174 933050290 189289123 156857372 74977356 490283941 12434114 463791423 3004639 371519818 950037279 647859481 329084614 229104208 15117753 491112899 390640788 903271095 717642492 76500981 398310795 420140036 888191737 992096032 788843778 891176516 913388430 201942219 347282767 29018289 994674115 78788449 466013273 859312592 602096718 334651681 566978697 643580803 755934346 732254274 59579370 420641535 705808450 209600391 656933853 924820759 480153133 238634459 785428101 502955178 418201617 257985277 873001342 280541586 586664764 139783790 377725792 203729071 491938942 344516678 342165760 460715572 764978225 918559118 959346105 550293833 839860158 343875322 361415296 567415103 116961256 975813462 757586766 985609881 806636974 867561491 534923378 653329435 954036214 127263697 931045789 632774899 432947450 239812995 798859213 100991371 334289514 454254512 122512684 705923073 833028406 333142429 85118395 911903466 846948185 229587264 631430953 612156645 942754199 119699451 828249284 990366039 935286557 955150966 837373682 675151094 292118261 959185209 529709023 478250409 895731969 877537005 885653256 192998851 510380840 801618768 694335637 137030901 376426272 457950962 830070845 737145058 735545 75504378 423241911 918701968 826507826 4719119 819396326 876428861 90293184 884633543 595247330 859338537 970709792 658894431 150368199 634937571 37655471 330467178 977339433 402425846 636326294 305091531 538912812 535946774 169004459 82559169 750626266 326577414 578703726 53146349 709541306 160930008 884241425 147357631 242562438 604019438 857647664 788697066 75652903 817051380 96310789 837445627 375842476 714933729 327257583 281805670 7773921 588807559 32329797 315737347 918301997 58105008 594449560 167915607 31786159 86266832 549023017 923314899 468909827 4859143 818362935 902130972 4939856 432180697 191713126 52359821 927086262 329176098 914979583 712581564 392770169 993283776 587041310 245686380 142568708 350966467 511340472 387283118 542243269 788538910 932699232 651629814 183066748 392429831 536837900 323305723 169260873 160930714 573412512 19257505 513037319 313276985 663092669 111028175 937291264 374114325 647596048 453984753 380116042 460576713 824535116 136560436 432546152 73961369 281979497 323929244 668032592 287003832 689720061 200944235 604830262 242181236 434806330 834306442 611609398 38996332 234344892 175069572 719997540 38909241 613797581 511971433 750289987 410576438 374770239 621213494 271259195 218548914 398331710 146004207 438690884 623872693 846810764 97115525 562480037 243642987 554600851 906743590 442053123 502212700 495740398 712116250 376470255 331607927 809067953 908315367 866811186 308339160 122683041 879809136 878150547 763709978 928824716 602597314 637918687 819150424 515985243 528162826 772648438 423017596 865538135 772586493 437587494 325688175 390838395 959668365 118496106 499784065 578912951 977918485 164462398 474742093 240927047 139681079 935691402 142823057 360705956 953176513 821517357 528281339 538543739 783261753 426119375 58663722 302152550 894760972 195890342 820007536 729428228 116261199 875388219 751290740 752141803 537624111 458525806 675915809 319501772 410333835 293687221 830073032 862924352 680710996 688470656 431977905 527117908 96509091 485425706 208963595 632693684 364027581 440513220 847383543 357205068 873899304 882287746 11154960 404660779 515305102 34178188 532883408 626548511 795154387 367929550 529144288 723082643 464074366 122635093 742930498 356140263 411044534 38181394 639577767 626197650 447059325 136962691 776638625 270454351 704980293 156847710 578981538 529104342 958651230 269369879 845096765 887244519 658397989 27927564 5377505 492457977 426424726 541539958 446695407 16261693 282618833 772796095 831073655 646158988 2202423 395377374 528184619 416557701 37268852 575759107 839557821 912092670 150309629 406880858 775908705 238067642 206163827 849324868 191114483 701502114 767374648 511004176 753954076 326268373 178090835 489707623 864314802 242986462 141891292 19263583 433648014 293881800 549680988 783162067 743032774 862667475 259048119 736908508 210205101 447073605 534803658 561802311 459882259 144655990 29402119 548723632 100284998 582001559 936225925 887139873 654409800 416199075 278092110 710624363 136649460 613281548 337487745 603532918 668365717 36053071 712936115 79157005 436189153 307276617 733181681 948307869 71848753 425362992 540754372 559889325 81347456 639668423 541653798 665641068 899861026 291759893 40494259 761773379 595236196 103857964 859943067 988617242 559152086 667974639 120333333 552136852 566034368 171398220 1970238 613417053 477586355 627917452 655172370 807259875 933353970 591979828 452085414 942431112 607344191 686957632 169113333 163911298 924741381 473656768 720181380 100566511 208190078 729186559 795949964 53645461 755469185 985741590 264530353 106563102 814109110 233683518 331768484 370821093 217702284 171302531 264803627 432290777 4076019 921880534 765197329 386614420 907405531 763932773 964538421 216552564 453135448 891115653 507118598 611525804 982560782 896877145 969604111 642423181 665337992 158326415 397241429 110461707 364270964 672127772 521734788 437364798 62904567 205181884 196552978 982788783 792022064 755009014 698704244 417356613 915434219 458902619 758245312 937921448 241236266 954896793 422938179 595309391 400283311 535508203 304837945 240983277 439379329 845729237 243828818 766194637 672195269 828530485 711316960 809021829 4289638 461838344 536009141 687706704 396634039 283688527 106936403 908859141 424309221 880523444 665684279 940387458 87568387 185271970 711685849 445536532 783900309 526194671 439486923 835355774 260559469 618248163 528770275 498488653 883415333 799013578 522125076 248660323 817246944 233476800 715342074 80248848 322014795 153181324 167376194 295602091 292032300 456565395 947283466 649870083 956714766 534320770 510236062 477226052 743789068 457193293 882999255 83166021 14991152 787743676 67896945 791115739 908085603 260701113 409461874 425399729 856731684 345880506 548225544 114130372 279772984 291487651 953307291 392401860 606426248 462127430 974836648 42906886 367513547 34601121 562685743 311685016 805175329 470055178 908748235 839075282 884463234 163777237 353067165 968807593 584002942 321910524 189089832 2104991 169708039 171655282 503042326 865036809 494585283 136526393 245786020 669295313 228250710 544366226 170770420 577522365 978168840 310751425 791570424 641513880 26016221 477696481 848840579 215846475 408886056 359813466 264440852 166175098 988264350 246184664 112038174 173932027 568477576 167982877 320480301 913867567 394251528 872458839 899149403 762032927 814041158 266260881 84514820 606184394 418794996 683252468 16150136 845471857 700846917 649953104 386534370 878648262 792278138 811417063 48676497 375843708 442967438 152999980 178030077 711294216 247458965 474663680 132288584 165986921 613518440 327576360 987691654 676598740 434761627 960777148 994355098 637521729 509367362 666247089 375095566 813874382 191508704 100739913 931157622 471852083 667646004 861731802 501099657 679791787 995528590 853584056 691215706 746471784 423505788 778903956 1463697 994371946 180570144 956086840 781204358 466933574 935130557 472966182 237787633 719280554 89649889 310766633 871849836 973904316 77187909 305953744 3674237 786763254 11236677 952416602 130878239 160923904 263683540 455155993 420509447 485279454 921250377 391569170 208357383 978815660 293048049 494500341 380899381 388074441 883854788 247920165 154064331 625994703 691370254 537950309 48876876 347069483 731183216 918744239 646755644 500009881 505475973 400088390 386638807 814757199 94489169 715397528 297534557 227016166 932453008 317218497 633761305 676875908 786236951 467314384 32484627 492099367 305412868 52020124 236827552 518168939 17811750 676844290 95277401 1357358 781744267 585040368 675055909 997710322 906703851 894564223 220339068 76005338 722697008 495826873 41003182 706709079 636170554 338674966 20836936 591817464 749910538 779047818 33672439 140466925 465991164 52480215 451075109 814754974 569617698 380188395 749731958 690524176 708778780 960204218 374412714 353112908 778163991 941578801 192575927 648692527 67677417 51997787 172745289 919485221 770526338 72542879 630443585 167938051 209197976 446648291 126315370 783007650 905719694 409019907 39373389 34709031 911502675 47351270 269881548 990377284 751452878 757810156 797006082 583007288 892437010 898003462 657690033 748548886 696895510 2604331 558780355 458318204 153549955 337581191 433690071 964719359 703817436 317714525 13258483 919972015 481393397 609502253 555374357 886289806 648590494 938830876 870370047 518729111 73507620 313066177 23863682 224392906 599394663 522580867 56536225 928242109 635704653 142668844 151908027 730032886 356957210 773874659 161337002 737799124 52070898 656269922 123796 515871280 184405292 827479945 102234017 488348615 191141094 139274510 294574428 80632088 771667852 667513490 552234484 530374561 398448143 272149575 317649057 422183847 149504907 913904427 837086918 27775020 174489817 209130901 594461322 85165184 111252663 740236740 740073270 710855179 292604448 833617509 180951192 678306659 760545447 505887260 901121732 553685275 903740685 856821874 214852642 587806797 704709597 652119329 887449854 944745262 382828572 264528782 852602460 141206488 306030906 476227937 997004273 787067514 252971109 732649818 227762619 691788532 907154747 742143993 789515465 234510379 907784673 644778514 786492395 513317318 254063276 635473156 73648298 91800838 568278710 353033158 397729462 653290610 745610418 465777664 391343082 195734480 556774926 400938431 832099752 79007962 645765496 708325663 554859236 303551110 432274697 898332125 65226034 151122085 876185262 751471377 444689357 61754895 115280333 499564577 186200451 737349456 148540936 697364596 778651352 701961985 772553035 573283516 491020640 544517414 53752637 380315339 995845461 853291500 251827502 862880373 420241806 1941087 75575006 514984707 344858168 666992201 356947905 425068994 54400635 106305769 49054203 753493023 49459677 557572258 90640473 847460169 382622089 200587903 638675798 894993456 611559325 548296249 473035685 39979321 343431532 934538362 289565365 894809631 392003521 66353717 158134430 308246934 682957406 296956453 675183733 728984817 845664765 342135274 823436746 880621790 617525884 507343638 274778226 481228134 840971918 406584046 186840718 722057105 719577852 234532401 215371793 614707931 417030144 62480813 110788998 846252417 897754778 584011049 842690936 717016133 791087871 167743331 861967124 892493156 748034728 657439124 347059112 153988768 400963019 485133672 863487099 427573202 219226788 6076837 570042243 824877233 703712225 271018875 449943889 87458949 662119404 948248063 503841650 179953417 355985016 401714987 90526016 877573913 173043260 846077765 35723038 825290050 128930049 48575002 726087567 890981033 178903306 270888588 478549830 841645839 183945922 336473676 582644641 70641529 131363765 863740293 827101268 179484250 969249836 97253037 696350281 592981028 200387070 21690088 171290169 593949706 462235234 700543052 761522909 336201957 932323706 395762456 712789714 304433048 251395687 448947790 320241409 831981094 734665031 117126049 381136816 818551841 792576431 849731588 993259159 396477689 818589479 116315151 381086621 743642412 910301594 649667148 437897660 912275401 491916124 941428289 406257835 497197414 235055896 392200989 883528069 733792204 628452858 850540458 945994656 976549498 417523331 817069781 788874110 978456280 50562046 767415235 606874972 775707892 584837131 525885152 516526330 945732582 409746747 190439641 478984738 774024499 14611841 974061607 330113859 713067859 538153892 136592521 687870641 278790126 861744754 432526232 656979457 116884879 70775290 397139809 623429929 648909225 81722408 803446250 203330896 553495516 205996671 33006581 334999867 869810945 494499269 590808943 268441043 992046735 456402939 28647584 626550985 186409946 988669056 957049702 647236436 953053774 750633539 368394437 809153412 955266558 694321553 391266742 665954724 136764976 705172391 142823681 327792248 767691896 538349422 210937156 216200863 867980682 596893891 130284759 153958740 707258580 228397481 918495622 560387518 819415951 794778660 543553534 520532671 655036987 462475506 827310591 471526247 75083465 487032071 514992327 512657579 150917738 491566573 654570062 59421903 969666519 896410998 511385104 653842620 592184647 3121519 469033445 406562041 996504882 596656105 326405528 803118242 982347692 851914677 975920829 737646509 976946599 549573584 44628674 102306176 363288137 663223681 819817350 584518471 819755226 912097070 10352524 256037156 992466156 318968624 624107310 765943999 373313044 835784429 127430120 740132794 450221682 696785559 519137200 243437394 67037632 548944803 464944209 262565320 921660557 396086127 416581816 223784869 870019094 982956016 945374930 2227576 414979929 234626221 647765292 297796331 990570430 500206788 909603699 387749403 779562064 896843080 180803959 635468891 383455490 849050426 170023803 799299922 926815903 689696287 379172344 543238805 783623714 773403780 3268895 960035358 545954843 375458984 770797097 443146904 168665827 231422584 692111588 724096254 316038263 26679740 742963301 783720983 297672752 561218401 953791881 874562758 346015761 953518618 531929186 336411891 358140204 779467404 584778492 634709918 355086895 763010104 23053849 37373863 754112735 274909725 803959790 748250417 113923266 822205043 84482547 90078576 827157212 49188821 868148858 492422996 990883162 97908982 463956099 40912404 415240411 827270857 118205040 246578506 688183951 467551926 287226655 958405147 197572354 876328797 660165563 576878025 472984595 9227330 301440325 464937607 90956523 991089559 801102735 771322331 648722999 93882218 653381112 578144725 150846801 301384659 17595505 387603833 500061146 818018614 310311952 937719467 264799802 579897750 638144180 475466827 1944728 702661753 211528544 489709795 103110361 564490324 679504717 536228232 544306337 629010537 846950162 96277807 393990360 441304095 42253585 792666026 611826384 758402735 439087007 976278327 59461431 999470372 452091200 29653276 659194086 832866780 917590754 309594032 129019717 70819924 557991882 820768468 422563610 391867839 135063531 580630925 473646686 795727684 570172040 26233464 304071235 368802 619832993 561960671 307128857 281288134 122573792 672058069 905061485 787122185 254258200 747789087 856337422 293406727 640094903 853880378 768209539 20762791 590233169 967069300 950940973 225447666 17249577 751913026 984724948 817871431 384497818 302019764 51027204 773717206 956703674 152148153 386083668 528051051 410925620 551609718 895022097 349817013 832457283 360633572 327126835 860824304 63968657 407297509 678351846 490881722 11221453 256135077 428892223 275797305 808640528 657360278 926715247 521716522 211244395 205942916 263287557 328598006 232521898 659467111 340794358 416353998 937895089 328872144 248487997 574973870 570683269 966760881 975215616 89537509 583485861 702035503 876293473 441734552 901663685 510691161 475370723 506621827 454200566 682747730 435308024 40589540 542654987 276335547 471860128 565277328 451482574 574916117 290791680 130288928 34628174 728983122 940718852 869121371 904009607 2823958 702135145 459796667 526341055 588804628 661141482 980781210 668191035 10031300 193919340 120834910 154567003 316089320 202306026 150360461 480040809 548712586 977265697 966555532 49813883 909542225 809283475 509396941 622864107 905212038 239037055 852193567 184551963 796444378 67053254 156718036 778422376 336413422 28387078 752125920 329961958 898299340 222052161 662786657 363097629 823169273 368872623 823585461 698057394 293486857 921089603 819349935 794455849 789855407 668177737 914248819 467678443 988391641 354535195 560340191 593967060 458093001 853423517 217554332 249032251 141610780 31948713 910302914 56155640 934655550 284996172 338976836 672759474 832135221 94310251 432075887 537751607 527006065 758826723 291819746 255766259 758931016 938159560 713153878 946573835 739281022 130575104 504977772 485933770 136693071 955449082 977098024 719678073 770712637 753549963 594570939 662247617 86804869 73965865 394311115 499851794 947391112 137644781 609792356 341880072 834843963 888705662 526479818 334165189 445546921 364124483 109208056 807176850 299549430 605070707 143139457 160503783 798989942 621809622 377123752 632633233 989622047 651671260 296038614 292657208 248599137 1983019 306450370 347145111 338969722 162594749 229123793 363523979 796391477 191074043 831163490 834291954 479627201 524077635 597666171 571838485 70390085 874445224 728988245 991126307 144909155 765229106 482885040 419587783 686702584 879613179 206100441 488162240 610722752 281181430 314097929 771174193 96505452 710688956 875442903 655151422 823345689 478409174 999312999 848897074 724931964 600690996 571251478 46085824 591396361 246018228 324012056 422633568 356203572 295013374 264491549 519279752 402635980 369586517 657548637 283534558 47630699 464685696 482171794 529846186 490412408 535100487 394763642 466858847 482968401 133294401 235023807 119180276 263411730 791308015 659253600 338729835 796356730 55518425 258150011 669994324 760482868 358263550 283787724 981204759 400342072 416380654 721861628 17038678 294213081 695490273 890717849 498866647 477869920 51794381 726802337 385312128 288494619 382924437 465013649 198003316 617535608 858098463 380841853 898686904 631270093 566669176 517715006 591377623 709573625 500607630 729116153 161015065 795896398 705246524 842085530 352978499 731075582 158009842 929753308 973809402 172704932 717471393 767225505 227832760 862758972 8522889 888999832 663181485 522182062 730329635 857111117 638373856 716257686 503586340 434356108 172009913 580925693 834557331 780423510 164903922 630572278 374562493 243735834 868179139 203290279 491326727 331668047 901049935 792117862 767809540 385910166 991832437 743931573 271407261 228023705 691025678 193634218 914031811 433894410 412314456 215985901 378612721 732707202 198494082 622232521 353321104 741700403 25474988 611938361 663370166 54127549 679813751 409701406 51333041 146040377 534178002 516893027 933359211 356784743 641887448 810486337 574512605 986038644 198409306 556165635 341782348 826060002 834605456 304762724 266684602 717468693 307664815 190475134 252736554 911657329 110268468 131250115 472128074 426081875 56307233 243244177 633729385 676125592 83553546 315995594 834271955 943698176 823264207 808533523 819446570 129362010 921822443 370296992 547779001 22388884 30577239 8934453 821347302 550442703 620854099 570407216 108823020 6332871 263298942 666576625 577237874 42243756 911001343 809023186 773051359 738426784 209223021 465245559 54943126 838580632 882933370 762116324 142782421 969053041 635545090 486745688 429872359 573800904 219353639 535135086 465127849 476415582 132871502 568093027 436847537 919050512 168842118 518711965 551892758 54386502 165461536 559518276 475592685 827649791 393589423 982549362 117312751 992797614 518185196 247355734 540877670 950382727 52888612 154251414 495339090 580495530 616146963 243568009 411532630 356400490 508175865 255417255 108131643 790892145 264883881 834767568 104663574 668739702 119264002 715674703 662481559 502013268 379873638 333538598 21917372 526070066 506285963 160643010 645179334 841940488 522360522 212295572 748068197 822139075 482663203 158445988 17150562 364111088 984211622 123561942 233518977 730420907 31754706 964703990 3160169 184556603 82043407 706631659 787286793 302752564 974035779 79193141 237809520 828690992 580721195 884340357 882836769 893039741 409914436 609436535 20732832 475559329 21578363 384303224 8882758 166702657 593996934 353361688 358698355 669637872 423825767 289723320 514359068 585510077 456041641 846826518 849648200 15448882 351735312 423417741 922339298 673549968 147722334 811887550 810592316 107573202 616446149 556761671 883411730 797331698 274812122 779250249 549983094 743333678 189600526 788174542 912029332 699414139 893395957 855159641 773655246 442041684 410904650 658642136 887275721 968891251 68449757 743741917 194011576 490627547 71017510 574647543 857791758 55103080 755723706 367017661 418125718 693652208 680538253 533823963 945781580 785657847 606501716 349826711 953316197 42439059 505347522 138357586 569799557 718894399 925211216 66760761 427681575 793067450 325771884 766365315 522823833 528064664 624050831 1760314 732823622 495349716 739258072 612486758 208994071 346318740 252128393 601323283 456038357 403748055 772886471 719306067 174251960 111518215 556499635 693173153 598857453 686815363 942084073 289209230 738786654 332715817 653080970 650042142 914106667 608597151 2170681 551585518 216155383 884648546 149063097 20140479 701284692 901963173 981857240 573416122 875831874 285056772 284974089 761571371 298040896 787468459 450637258 953845745 321780034 258178029 623380901 385312202 238733823 500556009 783612837 630114870 629326963 600198872 924976711 933060191 207773651 936425433 572480304 553282969 424479781 613989303 832346228 630737064 544935546 13236828 831942782 984839847 814186320 203042368 620670787 448153222 265629502 994635236 822537528 337238173 403190674 351311242 73068011 595097470 314018234 702417074 216391314 299817443 538532904 903754999 367724315 600681231 615570225 689944210 795953503 159155451 430157264 453804966 654956725 599791030 287143923 181524875 666858454 120427000 900223913 198564856 415795065 49430461 751765416 632117121 245009150 842090121 283470316 957773162 533115617 735753794 449269455 754362678 433291100 336416433 333870829 822562851 324816947 273145429 965382252 114017327 378048269 444241184 722717368 11402868 267994432 984606322 301754199 700258239 28340062 80242592 905609665 644160244 41937873 927647754 462694474 823559563 225180067 370736732 139654917 568052160 916001429 446770465 87542159 648337819 252103133 113299592 524782382 933636886 88951126 551386965 116155220 823407990 420866947 447155641 728562454 752093047 196653049 948683623 659434308 772272432 276083214 339317649 936957477 661558119 204939407 707430730 239200925 812773050 545561061 377997725 777887665 356007542 953090057 298959592 234331400 107980730 373041786 721330270 981867894 792676187 400518903 701126803 456640315 623822501 341275306 670657024 156042505 318477308 445991201 741236534 586927726 9547898 282579262 375736363 755443115 193885809 667722185 382584778 341251537 155622248 964447298 512382522 57004469 788718336 449207586 703400731 96096299 423265049 61112331 418107174 432417106 440787106 210769109 267194406 155479699 415805424 701120291 236838382 104746998 259511027 726577867 548821724 600128994 896889403 933069880 35187880 662153665 808606465 216101560 997035083 71049708 156345618 715628389 645197404 812081147 118879714 331838170 363904947 124628089 323558044 564088346 100720109 960365895 41825738 565212068 221237890 45988673 803671049 3998836 61008868 591070728 35831409 408314721 808021383 246552022 229564234 482036842 395177481 98542206 356115648 429799342 326470692 146197908 735912548 45398165 217075806 317266214 354021802 389874026 717181401 751679472 218314361 385625166 748577980 94755911 899994941 521195552 635745119 490771647 986669478 887158445 508459529 538587574 173253071 369573253 630228557 620261180 295855367 727457169 386653276 843038075 342797710 541227434 712229253 634714847 788370919 532308499 456831338 613187447 41467858 802584774 632705407 550907534 903249999 44916456 229257534 154624164 789719008 344104837 490700044 686752750 80213542 669854512 208210800 850042964 44129166 628434301 558530125 964303937 138940819 417232843 383269849 3872126 489712736 206392396 852542880 212513297 780960203 954520625 726397908 728887648 57832368 841819929 298998746 17156391 525018543 62616326 658826547 559536423 590200245 451088664 378223197 798691752 814535665 590014084 630562831 936633959 137401247 712003941 278906501 199390066 333432183 190979028 699231721 450442026 439973561 252056608 125796117 697020323 815476988 532917494 207291954 804852618 311228525 910400860 526516059 994660335 257865245 557381013 232223899 731471125 18514524 586348293 632197025 823455461 221588320 948865738 774924945 266028924 631908737 980661784 301055374 520560756 207123707 391112963 401771636 353649266 940077030 762744189 473048348 471915646 819812093 969512811 919150030 356081227 46456840 415611700 175740170 564487462 526587587 843135124 965277766 68727451 678410021 405807140 525615125 600224728 920758842 182547750 257789262 156546407 605587246 963855340 815544549 203526715 97894434 784339006 503553914 73330377 429106127 125938183 577146540 955189812 665004974 497918998 592080064 585959042 1124624 378547094 389482257 765028962 325785539 594949970 65213509 638995868 387886897 139768010 444986723 42813984 317950228 116117356 44237162 213929948 70875367 274127213 653296020 893559301 774832126 228139218 61049672 29572430 390436585 420301461 97653920 727371493 13719779 424002675 453873915 263633632 203118465 688439608 546891387 103995777 752743888 84377559 326858200 777211991 96882347 525920410 327138990 167172876 86862002 718294305 33871307 126844686 774058169 723901527 33796773 135575507 994144299 471920185 471451407 274029524 893702700 808286103 246194435 496509678 681027155 941973610 891934729 693142868 71384019 734125124 269907478 761449744 377625377 88692469 854031651 748500366 860715470 615902554 194624057 319016628 838181741 462363421 947621553 367068955 341026993 383314505 779055166 830561199 924273067 963873701 407374479 709077603 39320792 828290697 319775979 925396907 301240456 862393849 433952335 274544163 716531645 362595449 487782582 608734630 406595276 778780084 72802423 618988676 320425840 988956079 489999294 553832537 781085460 86803397 894555114 933328409 724691638 315216351 936273530 399440672 132250868 682650348 698125821 18997911 363525792 168053349 98548422 111003233 332674427 600231848 290681303 262906809 72694856 62535738 435518298 675685101 532035265 660682112 858321155 673470787 936859144 365969442 383271986 971973723 688382478 674387326 673246297 72119624 9496742 694662775 553606678 735836797 32251011 851835708 31299130 717931070 557147636 146157010 80940550 771684335 472023405 669216700 969331412 452135775 461060309 159002812 576605345 876619432 59898230 38576536 532084870 703072284 488891683 28707151 792463278 152773779 122760147 375002914 254308432 952792854 205214922 588927929 987464967 999533281 333397396 960674268 509041682 839328387 366954871 787986335 928866402 728007245 868625100 938688299 598662043 842522761 833279064 394226536 96147732 298397455 356485029 1231904 579806116 26237416 955802797 989990368 454592369 101737639 897220086 739352227 260884882 611280613 640752054 953504080 799802744 667529679 846427730 667486300 741687139 885582768 479733219 623319665 728926983 894841093 663480117 482455931 676287192 776081076 276447509 936800498 116506478 575580454 282034005 600166582 508364444 10864286 979771525 310262150 641352085 400693660 371279557 851611957 334441096 803508237 946281002 95326067 270351991 611460306 327056268 10245146 123901070 675725830 252110502 545614585 434789586 525198233 352317996 912521705 425735994 584377500 214987839 638287224 873771141 782352747 219524620 282436831 337599285 629862207 201187305 347843027 830360216 206659787 815544020 967421717 717738866 614857239 552304638 22902745 252877989 262975910 643939542 724010359 934988134 361932474 266972562 533193630 695985049 996947693 928952791 44806123 741710424 87285568 165077661 185686284 137824888 528870266 15851725 659005176 595919140 122400270 387245096 740352406 758492237 82372184 122425042 504014851 793528160 946680341 837743237 999624847 975109878 215840805 842063599 449021084 231308525 598536906 867192847 862546557 255079610 931771493 42928892 979042222 857183192 704179290 575396467 303565269 759712170 952187306 375888733 839343690 104811094 380993229 520477298 876098449 930883906 519222226 170237149 626193670 223912397 499383322 409876288 186597813 387376737 980216062 745821548 437941183 105424567 468650040 456977613 2178800 595841112 106140672 632676827 88370822 827717179 319889747 31107090 562933640 484245360 821781933 854885065 924659337 140607439 240307890 28430197 534303365 369600412 587538273 313143124 638705875 425458853 921880859 500052608 631009408 152775485 121528095 360174241 511311450 125813996 431104811 616382404 589379981 760138811 578549863 680270426 453064486 325293785 483288110 944099312 210704961 147732143 32866167 834115431 330175483 376721484 992694498 703546782 137450696 112907317 818411875 799666920 656496596 594897746 359810255 674883946 992981569 561298636 809453349 410678186 561399659 494460093 894820613 956313547 743202863 342981141 549110480 953122961 554647566 153528002 984399814 50110645 118343924 312428729 189005767 16191243 673859203 789430732 235965637 617949430 388835842 824291134 283814336 248215603 727670162 460967048 191869826 362068016 349991608 206840267 725021411 654974337 492012770 464289159 921568034 274989344 845447584 26018631 782384123 419807150 411506112 696293602 936187581 641975963 903152071 644285040 318370121 929874180 868776491 538920684 732271792 574591100 292939111 975539022 832181524 666405101 679942955 763384763 78472240 477243708 420171692 507220005 27464377 425638046 797032955 399089143 583789225 429682223 995434695 21913892 771536952 866006009 426817481 758111089 325886434 942128370 637855329 828666099 356397211 617544666 91724479 384450806 210735440 242972382 34804112 365495755 785383664 951881681 389056621 160996721 312582764 68720035 605883868 816367246 534087088 727330928 289321357 973166359 427452984 38774455 242124854 981213363 81710806 911174412 809800793 254607534 415859590 264956990 39824072 854930076 166438651 381317124 233808079 743626081 210342197 551038775 453029358 658972725 458029823 188858266 525510182 525041317 685441556 225144776 440241585 141862669 222274198 889816214 12275762 363708617 36472994 583324530 94113792 440342686 44877932 646183264 91861853 507274091 339529964 103389087 581320032 689978043 123114038 493606513 635624180 398160274 775562516 400042746 188526594 39096057 986800587 686395888 506803621 52002387 545414462 234525900 37081489 968171506 327317742 113394538 904413284 769788909 901316835 183583760 67131740 811623607 998817731 647390455 390325450 621596754 357759409 37454968 546441546 820203942 572439892 257053478 328498302 737616065 980138560 398119645 905342795 320352745 941481283 298231158 477337718 684313546 247873502 475281906 169767123 868364125 991996247 109361158 325644936 135797371 170805180 15566676 687283106 128145981 324330363 829171098 959245382 269167195 211321100 883929600 850542260 721951849 166938452 378216647 915584014 541386363 522510185 249336132 356571077 383318997 385940279 952607008 329740101 158773230 641585618 384023958 920577541 701475902 506001295 68234383 306453289 961545962 177039906 961733971 383220031 912887158 257179750 561745330 643045220 213695386 332948378 557158597 880070895 460617802 508698897 849267832 621457418 820338294 667730575 289542324 224373064 916363558 143355714 204350010 893395046 820650851 204214992 873365872 808748703 214958599 602317935 777805027 996545467 844850085 317732525 948520241 760763655 943777835 921656427 93483156 717269585 743262302 175097082 329192114 552403516 603318122 774114759 138733734 792982370 872217383 553755482 2389784 448264489 357429908 578815162 996587763 280881472 550126833 309716418 249380152 179689098 533284149 490227740 631531890 350919171 22793733 783390013 436598639 156954322 362977340 403177391 982738369 574802075 222164192 317228011 562693678 402695375 705939406 583137660 87831281 950596106 159046562 923446510 833985182 617662370 352137642 777149211 59160767 495613332 957469587 715024157 974891151 132178573 906709062 453282604 947650837 288094255 927968505 229512500 787226591 736091520 682018829 354693101 217465835 284717536 236322736 600836788 408463818 346013369 522385678 316278737 928047267 148237119 604099076 704180332 470674595 363261508 598006545 654701564 549561973 198379453 537142872 112282010 205306053 559699845 668974217 336647058 460465005 283278578 842520783 19320010 490425731 33403511 18121008 54638442 5387536 223845739 585663067 789613361 317418718 278105538 653113467 433632179 772028621 345311040 868864912 373746116 188232778 886573380 474431923 701022396 327910215 910673768 671008362 911563073 65378004 805958931 820016051 945379107 877498458 149158640 694647112 874208019 243280143 910475203 464407917 921554448 85675979 911563539 373032122 175050366 750193393 222780659 321050003 557256233 785437374 845253603 246803248 923071233 592828261 632238116 535237225 721676649 892100153 28917501 548459766 598714842 403911949 727728599 905048585 384489758 431205253 510835507 761126661 672645237 909858471 381157999 731098186 740107301 550296903 527195587 239274592 897196465 67736991 199461718 712669632 26774000 798242006 831143690 457248586 865417627 374506277 816987108 256689029 673375455 626537976 234266750 624628894 521204817 916909352 597152229 359285996 137450670 686838687 924785723 598223819 105102614 264855620 321517780 166717417 621343423 238563116 302544638 801803352 889580308 556904595 44248068 144846868 507064470 191694675 235949359 735013605 451219829 304485592 339650630 987311514 939527882 864409697 275215751 794634574 371144151 576938814 619671556 484415652 303983463 549169660 785665986 356900546 111222182 967280572 999634314 918285498 806758924 387623721 758168106 70703137 916407408 161807143 433424140 697737600 398585575 324705976 511344188 732031557 727839445 804579116 542637330 275810565 433648105 984058336 95851927 129315609 159407415 982884851 374876252 72312645 351097346 345310665 109094283 360002618 34454735 163192443 944808264 745189845 674589583 218223280 707781508 92488774 874192909 618043822 936657100 832419159 574223098 192110984 344126141 369532163 859984916 399404557 981860231 849242219 946181506 554122291 736073413 676864611 461728715 214938068 672671731 297274806 609511248 304687666 567974059 186536443 544189014 832320978 734485765 641734173 394679194 908220260 591756246 484137038 796478910 171178107 533311707 643618041 110762763 604679045 436716521 454383050 413207263 108610845 654796240 74199214 845595562 538939186 208873184 495486641 612152511 335904461 153014101 489345307 186761781 997920056 813201895 842975434 108089143 841607093 961589071 737845915 360574759 30494041 932789404 813283105 725353997 820532653 80513593 174366669 55484728 321281833 223910016 153689760 400232242 989915776 617320536 560053514 985067201 331996886 437410825 701054606 547160977 638249577 31564042 807187702 744654802 896698674 976815337 344534240 909053017 315379655 387341619 130741357 787723781 775397927 67742418 867620537 233880879 302783516 439790445 432899294 815227412 655242799 415166077 450640879 865275954 307956217 293600908 70368136 833288960 519836645 28453655 384201238 791582045 139170433 603803734 253548878 988428099 343404783 11214750 998979305 575000009 266472329 69371379 491552635 191236560 887521926 635333976 32192038 529956046 387508375 60082397 487504546 341136433 916805872 730866948 504489713 796770617 894518887 558206505 728710135 782576892 654681659 662967738 1550335 556453132 50632439 426889043 131614568 392683268 41076358 234751945 33651337 82781859 359297895 712172111 863657083 628763118 626247155 323773884 61953060 497540175 394637017 43510068 225256807 996609855 372995509 357455957 896370608 92939836 272637366 235704537 249294987 354390299 920617077 483020547 336796235 315589024 531305826 69121670 999937999 979116172 568631384 754056996 759521421 664099887 299480458 218961237 22623620 705605372 251083005 583279328 864200244 123753377 238767824 860169028 733407621 248139407 608482591 840995535 244873767 845550593 593291242 6116978 908142106 427599444 700473980 75066067 568150736 249026745 959346631 299544808 729457322 274579640 488154870 646458494 109042419 449475776 101322874 875241227 412276654 394198360 457464968 634635574 539646337 756737329 560404375 901230572 797912404 197115221 874311056 247716808 110556606 944990127 402000325 813982612 790148340 40241181 275411138 696021890 60151549 210249713 646781009 101612643 579003695 579776760 865058499 477641679 177529445 382920556 312744745 604832722 209526538 80037637 313659099 220710719 137310596 644457082 780812577 242756463 710020531 165699493 761791973 345833849 106455000 197555686 546430 955992763 652826957 920220824 412959673 75205534 827633282 157696502 410228477 643583219 772772287 362168717 673993930 482014762 8096355 718757417 280550867 603112445 877054046 594199858 789666626 73477960 110177249 839291409 705360340 749308390 333595686 740649556 429775600 5664846 840161400 850937703 372392236 894499728 256114730 8193113 387172763 827932090 472246126 254418963 411408165 974563790 808938566 728198830 718819967 13537894 668427212 5919878 560961608 383679115 913257783 929837210 975459888 215235688 749108986 552616568 422567997 874742598 874164878 662302595 924615155 942051385 622659707 637250784 800632807 223348330 457124373 61342281 15857317 491095285 763444939 35621129 794682023 869280463 31663104 569035061 903196362 323168910 762981266 25250668 914155063 920840310 953122236 262701932 383244198 411788352 33488641 52774255 701375882 143100420 718689223 853006625 499397367 153364464 456868656 4016468 589191941 315191308 627040618 308023396 541698228 723273389 503201000 663530861 185105691 558327243 903489127 50931520 670356951 385650960 109158814 989999150 688864601 261704854 984996792 669905087 883691426 880499962 297673481 661735122 935733011 585183176 328697477 629147038 77248805 39164083 855582485 105713092 337133082 325340150 429636593 451992339 618660792 700840421 160841899 880335050 934261174 647125355 868318075 831471344 152124625 24899442 667693449 11779919 657111551 716344864 701680281 695525957 168508311 256171192 337039955 378220923 492158317 595174418 62928485 842636125 201416758 882422543 680026714 363983320 537525836 471062248 571096076 926513330 420823245 229798386 519010515 524013147 889949130 943172161 412648083 473469397 258745338 307131397 213942704 406220782 116113218 406447141 635482255 871980517 78278602 874838656 444366696 27380819 810466048 32545537 577678803 620820658 81489630 144807525 480407768 684260988 170990397 184425749 368847980 338849965 216752281 406441398 840473974 498630232 866125605 481932938 481101755 847151269 107597630 83160107 667163834 782245749 958939435 521425226 908555364 175694700 645767032 433085213 860763014 213880872 90821871 153250826 921700784 3819413 617154492 846600846 705900128 846695218 72541959 51552828 72792899 302319468 588002420 627311216 684117320 8097412 109013068 512076611 272742658 217511926 936776058 652700282 126027916 515462474 109998570 111411556 550854787 535113746 279388084 976510864 395142125 549194053 281730522 697386507 178348673 284184052 582903084 561326316 284673740 941287160 653442374 862225584 541766116 362571660 650074003 14398246 928935202 114950436 188678999 691532973 320054213 807124359 36001115 401183637 269058934 735734571 249974410 291723421 697929154 292996404 198267482 249042658 789894767 306104538 743092168 954272 21388134 393107910 351585498 648122319 430311679 937860798 425970634 375471050 598117700 346609346 81453688 697966631 187937508 595979048 510583674 231309176 42755035 149886007 616273559 436500739 948865163 954575622 335822750 294302162 44754214 531532327 542486316 671645083 544776377 532321302 502599110 881324233 152266448 411962117 263207469 583112071 610822264 755849848 976329039 742461305 474555957 486036631 266635658 822170888 261385647 688597429 15558431 972874037 399062183 410934406 613110251 358406191 275237156 430906533 32150366 583566914 283654484 591838235 679537875 640715607 622082314 340311016 677831205 824983660 750727615 832086311 476216339 404761576 632512441 150347542 709893579 436208733 309522347 856614426 63970157 725479577 289401494 426982000 162517385 89527675 391471668 108207357 190105813 139677434 619688943 946889563 175250608 742826508 245115613 356877112 217337397 45826032 790979569 562401269 132485221 600037025 843250397 915662105 264085202 76202320 832851322 409365857 411421199 920353333 753704184 334142180 236734522 242994026 724876669 683295107 57775448 828375319 204554326 35524699 541642743 632975798 23602923 516653484 482132980 376848375 951663605 808054302 131001422 335005724 58996045 933946514 171735521 648650397 701669689 462558763 59986676 993044433 144200845 206098333 102192856 394031470 964992763 214866251 86106472 330986540 537158005 341909953 506058225 84756464 324920895 680823877 337596849 880288523 74910480 580266271 473843612 7151865 780427359 45485700 886143485 308152479 139591550 535032025 661069350 751559640 541169708 446055337 360184998 381006312 691938874 64198682 436631471 697573057 54533566 61691034 685933910 181996182 707212097 510869765 174444937 883509350 738126244 982254879 797342052 188653684 425234187 589766074 534927326 248453159 706101301 95166739 642784256 757423266 274705834 59490925 758970701 968199442 705433393 884218147 899431543 776609535 689347858 19679952 459777257 525798042 298851940 474492642 446257533 933509802 678635689 123326009 532923521 229989411 101089594 870066413 107061329 890739739 539171500 260199553 204288341 127525041 539582317 410787971 762014226 684630334 666517517 77532934 162371507 795768602 905580509 580381595 59538222 581823471 792090213 936310393 101050317 163049890 296596840 828002699 989095298 330757073 524961075 392790161 955259395 666167151 773587044 121628146 503608027 573544579 474022374 685115927 441562540 601776403 384371953 558868325 336045414 478110726 305049081 58762053 339423550 179794378 749074550 322474676 649446704 394852038 537380384 946223087 866656333 95866324 342559582 62941286 156676179 891894469 29246303 500788129 411609022 256799367 820607378 928237576 68095756 231695872 51934834 866685146 951933928 991439266 684306079 130111418 338177340 100836770 310542209 441902058 969877953 729992189 263181847 270431272 707553008 914191351 111183142 203955073 780216643 158844729 106560233 190988762 42390573 498536164 615518090 871820578 175597167 292062816 185199971 331452490 735436806 91413399 230490302 679534199 297406583 489314097 930006201 179382848 976212179 357258036 252790844 991263678 522493204 791110709 588204995 50656598 415971356 896399715 481759534 827728405 275099276 370205924 260745142 521171235 233746320 246973976 914046382 204973033 709127503 669607636 15156238 257620030 453700412 42783658 871663009 697630063 227486083 970265962 832494201 179159884 369517413 373795978 807991555 299172420 194647182 147998742 461620827 546461774 58494172 973680686 643204961 36216592 84329542 39253143 923305286 591425322 168744826 34061330 161548157 729015641 722583005 880647957 365829562 360295599 924435799 126308446 167590676 826222248 720582816 189641021 372670549 467885791 478160214 36914726 9462715 557031627 476600750 374644368 620969410 206348932 670788601 875643953 527023974 698927254 88699034 308941355 996951074 503842014 876955832 268301218 16169795 649005992 388731835 139245742 156004077 609346270 284839403 234504244 196326883 328023139 765329007 717974380 868315330 454040492 895325402 340209396 297532604 615165040 219672185 957449776 520791969 981812404 173485325 31036659 335353133 924315170 589814665 892288803 959161098 951843741 638311127 364829145 977619150 818865034 281811203 796938582 590633691 272474263 494124685 960859068 701398960 87538310 345982055 664149934 579322086 661392935 859954075 220148883 175751038 720884507 316561133 649410825 503850356 202431850 808717606 673955614 979625274 674919313 669539683 695075877 804693287 610736519 961067886 901743318 728883005 229759075 782459597 82720731 827152571 759692744 13164457 345230154 630909149 745971360 11306228 821970599 636024785 64295682 533835597 887225255 183030851 261406591 286295048 547503332 484679807 652825875 923987861 569097443 451220114 624888406 649289565 765145259 388298886 958530215 967304931 716041096 667975533 927710367 101785197 231565583 259715156 705945009 986475458 39149929 830550217 134756529 123367544 997821080 470749425 299267188 684421711 19881521 116023887 168301589 848053218 742026076 608325658 988605916 472881311 597756345 225806233 450647864 865552186 672375573 80244502 662720830 709283503 844478471 753746931 38227950 999483411 87905097 741242963 135681926 988197374 504062315 57962327 81531138 358370667 819884219 682246501 327114120 720520548 533866209 958548202 841667652 448921734 283121451 97398593 451212987 139461269 783532067 152422165 405764719 132331364 283188473 629029627 909718791 430930531 926383302 251978265 496205620 626907449 274042732 689681801 111040423 614894053 954757811 290882515 441891266 30014123 335424205 961217201 360999851 766944296 851547871 953801258 240396611 248126746 657425626 787358994 430317130 170355140 148945164 331671777 853065694 900827336 289770287 828418275 446907861 257013435 993275994 564125205 216985262 315002387 330867755 188407474 905156788 901988302 783998297 8947548 670367476 916801208 576865881 789892820 740273759 939234677 393083932 739897686 835462209 202206804 309686564 989651081 814268337 139192584 149396937 687986444 378601707 777016915 134598142 558063920 791255505 824673932 934832604 312019672 952601146 180673571 539356248 122286950 583057005 975973777 770267070 310003572 761390446 803452623 435640764 904046712 907006619 234279649 747584504 457652726 420358801 958688649 322447923 847095530 979026311 817327074 553725910 562180900 31387212 681698316 730313231 976774706 259926042 733546090 590689974 612016017 464118833 276712023 503641124 165174286 720139416 778480598 16197714 468447532 535663312 223943296 169970627 448327870 67288774 805146484 759509497 602263882 683792187 733079783 307008608 861632000 800426527 109789017 295553815 50889194 550327626 956677741 449240765 257197968 827305291 567157502 294757295 879571895 616276852 11402044 750655216 400089098 736045666 125832738 170327305 699400196 105708053 282391106 671058994 108307425 643084905 107877718 946580434 910038291 60434066 86270370 214231940 597971690 658556312 821355181 940004916 562975743 287451182 967201164 909045692 116178327 155710254 736344534 355833683 127766243 39999898 594283149 860186688 5751620 285830903 732536176 212051453 393089547 989497464 225048092 320776526 731118747 976317675 570374790 699974543 970227748 720450559 561898581 472347097 147607687 47623993 345878824 811946999 15873374 669162679 103890296 726069434 577418514 836646362 946621913 547493849 802519843 876989237 656126554 702820234 412687747 558942102 260128875 840865693 377899595 759159178 624077609 326731007 933717069 666428923 171947426 931275348 481970771 213868753 445476400 511220645 107134524 462165299 806216601 607047169 308879943 317717701 924433012 639930933 124770011 63769992 252867928 516998369 838796830 672777022 123966192 814034715 27085820 704033422 100619719 377960361 567967554 511001656 95732633 291463798 789102977 10084480 472487286 83169029 290458214 55338688 317377471 800567192 248032921 398788643 239942670 516294821 46114435 879825257 685036963 980967495 24017245 715988020 844527592 960894971 412132192 657848879 926554663 483068054 925461787 810633382 575514780 616503845 332866214 382528194 90201175 190490019 351786443 156634274 244050440 59601476 84558935 303260357 682778052 163106919 638377287 978414107 172438553 287613318 826186416 988351671 694507393 891876719 224488496 56750332 274949411 487287874 943443263 141122868 900733725 481351 899953758 538362680 793232997 941415895 200708174 947265300 135545500 529222922 181573846 908119588 883997581 189814321 394902389 644119333 648801709 154446728 638547876 556951867 464779784 377464627 257641724 160143336 546792501 81274058 336367132 904460018 46609588 881941485 116913728 36508914 237666084 62806369 683514108 804256323 127086761 513619394 406964311 968318410 435337598 566550568 930665410 366528408 26565132 273187705 246052076 206790505 297999374 184309648 738803348 27166153 71028667 66407454 232367541 96778613 76690983 91800553 273022692 782258022 812672552 779198324 620026131 823534459 354738294 878235026 232352906 257789263 350037522 270066467 677762161 403413727 569924703 610810133 184193740 66098181 315381029 792671047 924252998 65594604 565268109 816425959 641281203 387253054 124506320 872365167 659987807 287418871 876693915 220579320 227783832 501807380 267442098 415570265 968395889 800689484 82385207 657992359 827058128 328153151 712201305 835172660 681279154 419175727 153885159 543880145 825124367 466861616 932633165 247178186 2306188 418488152 240603253 134392657 891528800 650152156 844092665 703866966 240606558 851528212 785070603 669215730 742680967 259783595 293124537 648982128 847553854 274053267 567521495 63325700 415294160 516753107 742981728 138223289 876312612 903827666 438580138 317720762 247982886 47703456 50113819 222618396 26014834 227403523 941496136 702978016 301916451 199621625 775160607 544576618 711819245 860225242 718554511 59430788 302477756 747196287 921896124 940374476 28293860 790145746 444420579 169147325 960486821 86074876 903281237 922404973 537081298 715002389 637720284 36043478 157676299 995908096 940959793 787169734 719273781 919257539 510184140 43092893 817612755 516791003 224915019 259723289 714058469 263017217 391625271 364760126 635669061 54812800 775146238 251489296 557981755 353389556 33880830 661510781 541581602 805849023 424846075 878372465 856779647 448351681 64404496 850571803 108800024 952193534 335608206 195733596 61037541 300022708 898838002 522241146 301344545 917269386 523528056 488432858 769231256 485299199 195174990 30944802 50467438 584909436 442924385 413541903 546511505 686824055 240884514 534279357 147265820 352258936 499978747 531296610 292602734 3243355 937236523 895282636 681693960 941160859 26993012 50675041 488837430 22016179 65149154 554379663 219242202 330881743 408081091 929370433 596373859 248617456 5592981 479660903 220724913 754983316 189719343 805299977 616333548 856860310 859124676 338862170 416431757 393323729 629439117 462323994 603069937 122078401 495140342 94737001 308238457 22730675 827244901 796455328 756784065 641394247 154247861 89575107 846267933 809932149 863010881 401676541 558147629 595007044 992346600 901276713 606745755 855446955 880980624 562191939 747196527 172881166 763992335 493728453 951737782 789022082 635722184 937336614 790581871 9536510 547240551 598244158 91409941 711526880 414368054 831955693 955685635 683256318 929797817 481810096 696697705 90303858 824495036 598785039 651054059 992637136 65395083 309396226 282172403 283807571 708067187 172502178 61287005 872902251 284173896 456245966 992950650 354828377 764694362 141403943 125588308 960164484 399299676 818037376 100866401 765253438 35911374 476635587 594376287 319889625 814695347 935454443 268051883 178545474 537102794 620940210 20463525 930354940 726992064 754194056 394865596 518152622 606443511 45537865 828943989 859868231 29499238 327492158 135924408 705250367 980891372 616729048 415855417 258838200 471377397 834873606 645838729 569592540 211802255 245562052 257317404 462609421 975606401 977768918 77696501 109711492 40158019 458729867 524313640 28238046 258726900 6087885 121594437 816932789 174919479 526034316 517897276 300850664 999513486 984570584 993187300 101743285 294996752 933400251 698707823 652574336 513594953 47476762 398699306 445095964 970134724 933261772 503455408 80478806 473031634 143938072 69257662 326023468 618289808 238472476 826735952 868708281 459453543 29525914 957627088 990821593 187799077 15579838 496098102 444755613 276629812 367353790 379605869 95936320 66886336 727008674 815495161 809567675 55015962 811616567 448716728 963020502 884213640 672593974 126625951 633450089 998032910 931160241 435366932 946169810 454706825 599002590 181235072 553733135 785777535 701659575 835992660 533392609 100254595 180363008 877998542 634936686 714428982 610685185 95987659 563494768 993056310 773034746 806513580 438854651 378497544 672186587 171490368 118050674 616492694 233178244 342186289 130994528 373083431 772783303 405650952 520633698 977844771 83383142 319808275 693665874 931028386 298736201 962904506 801512440 626489767 957067439 129096573 927695870 550749156 655783047 181091145 283728052 696091275 279995556 861094059 141536222 565660613 844726073 175785406 613502775 950131925 934963790 724261892 523918542 301429576 741618466 671079583 244800913 658918527 957755381 41244857 449375823 565900475 202118865 78130167 564636478 29421826 510429655 179264826 792816055 346948359 378648881 164964044 383350523 799990715 149617729 756513534 507026760 946094491 475285525 570916891 504321398 34700234 310464655 251348535 667377278 350935987 386665067 143648769 98754804 307414304 812237903 735856431 18714469 372222511 200333135 635407850 738932963 843907888 496256135 707311623 630794204 620140337 282285763 513094197 342394937 791297677 864293896 117836291 91896179 716366244 766477951 177033534 931860461 823381591 136263332 316532000 421411633 207979778 212063087 954053205 948805170 58381496 264555923 440344808 80750241 173695207 541922701 106306793 417512172 172408064 597483310 251291739 28843271 447248204 878139087 781984302 785386766 887673862 963171207 943582618 623624955 845379129 382993069 433429215 526272492 124847928 828776171 189152395 682263514 304636599 411846140 568552345 494927946 249922523 367198640 98349048 341969607 339431223 421089026 356673615 135800122 570752249 726822316 869281079 957253805 707491932 884613895 425210731 844990974 81400141 592810182 550329576 5205150 202535033 351663920 590369701 615705106 64682143 656462617 140022988 462393508 475097767 242530348 601822272 542510463 770723716 134592760 108101391 922574041 209098464 298589098 422235508 566246031 724559047 860382946 136017554 769225154 636515967 538573265 815579079 546490168 397628327 235550088 852960479 329135271 659478383 280103303 930333689 771281072 431734020 598846631 748212237 244818791 385753697 737390748 510317987 197302514 53034636 808622017 11187297 255969366 577501267 624399589 661918726 444274184 786379574 361623395 703851246 322642755 625721401 755022452 788649903 965689050 23253415 598846376 103804013 713748532 455977638 810434691 474638084 699822537 549486080 930667827 175793718 104176129 368981161 425877208 13124941 753592137 991084784 390756703 514258059 847951461 313378908 728999273 642171802 293097717 198525871 215367583 315576417 893669320 748584469 497215518 853380664 798417080 896315266 385146888 291809161 671287157 576107194 808026465 780180158 77464072 722826874 607965491 390816917 787039905 675306646 803556356 422486302 580721845 595105583 191093372 278097200 127363754 29197517 266240929 738134897 797460184 556554782 522090021 398256186 428911282 687592492 993316395 168252702 87755903 834243098 996156095 257404832 932491953 861572487 343657538 311003041 689144903 716395571 787109041 460109841 660386708 134820700 333516910 681730875 632632909 829724369 3427083 442071755 368544696 17595507 231187352 340301870 878303058 411645285 941435641 711610496 367049665 928556925 491403535 179220608 40227730 941870512 14387021 396475084 39367650 72194222 847154983 883820357 267022021 178713568 146957931 951193814 902684977 734635740 717105403 628925265 615275574 170759296 549530262 447662082 172971264 728006718 856238206 143934969 715592749 407008159 297924569 419182732 468342632 609452441 842172626 382766560 220486544 968016253 366378794 913041905 800568371 147106697 343187485 370361184 873741646 908170206 63173061 672848406 162624246 352372986 189583497 505315051 893690485 751151557 791709446 418478745 604333883 577829635 337610086 928040897 537115666 237198601 71811199 830504726 874291792 119576891 519904227 80019113 610890873 433114364 31760661 210991146 205792637 615961892 811508592 508577494 826871346 464763786 484584296 752606315 898592524 628874912 352686524 187972983 14258663 868668995 474754987 977386104 989185872 73656682 60194354 955215451 411777812 547841827 235992269 358484952 329819350 899793881 706362971 71663991 748001025 175113590 774620135 941206998 574119610 816753448 628296052 211469045 41646373 88427212 128135476 491507015 978638407 358576661 18360870 662766295 151122731 491170149 608023331 311692326 382996775 37065635 616662899 243094544 752973807 242574348 264423294 641645200 656689447 316717200 529368925 447139474 532209275 963661073 876177253 304715560 257699306 249344755 587168236 374090920 580747371 870420451 996785941 629066947 401530523 963478146 367491385 120868393 546416879 908561724 283494948 494835320 555314325 661293265 883060980 29285578 365264963 276610523 189070759 781030858 201909709 541043559 857523285 513772991 727962803 859854567 806978172 255338677 845676862 439981440 562069468 63833157 396351907 167909787 485028313 8922879 648946768 199820364 882875166 881843526 538368169 342045590 584841644 879178960 774361798 162823348 759322574 375487462 600820413 124968498 570230973 64471273 496204352 826972828 833636284 48751500 327988858 74430287 693751768 48928530 826403203 616823539 843995366 441490640 5866970 147607380 173292502 383484641 853585691 583116170 283316275 971956910 294718293 13857032 350471437 535842257 662563334 597862528 152895692 96095273 681705780 127308399 126420588 352646958 893554891 516948733 622227893 640801829 577954315 948234689 583134103 935726074 313458159 149267884 241215330 256786157 675545326 197885492 821027793 273818123 7383461 357263985 81340451 690729285 211838077 853747592 236005253 290534138 168464248 467536513 686084604 198786776 323689567 271319110 658190089 425859795 524420702 995568599 356186184 173289982 202668849 930007319 734405039 621527095 625319255 325583196 476575791 200585892 650429085 992618691 374378123 23972486 18200566 841000128 208053289 431553587 881455130 332379071 472699726 403522783 649887312 747227453 539624288 830595759 601248499 890486742 571427651 171977804 503459420 234721992 448469804 663414780 642165239 468699169 234546923 510954295 898125940 946775039 18018847 895035798 599719511 864043674 497860004 565637126 901679800 417459918 278249248 697083939 939166435 667993444 38825077 389683816 418432729 492073745 549960251 104445541 424053332 106874967 77452023 636579129 263973638 565302159 472906657 960320986 737986892 734333879 563267504 370836564 566500570 680757867 667112431 24919566 475224363 307639901 224326388 383544823 229050639 136246804 380578228 823329904 897827608 441327652 509733003 326417747 759859129 12761079 488133571 434833035 850816620 674803127 476137374 216807193 103427826 367624714 374948258 335894580 102789258 451161005 149901174 249670932 797269063 369028909 705365412 875553357 358295436 636283021 389358917 8098511 972517411 554561829 312612381 602068154 407806182 960136954 698813748 946784970 956518979 16998887 734135575 126905083 772651542 850079899 925473475 921464838 965992626 780562471 268461841 735243629 305518892 497039936 736269851 396752303 267244877 244435947 27027439 955233919 324313252 744755807 988116618 443390724 11216087 348895327 219910095 131027862 297280958 690786233 833667560 368508063 318982650 657360521 245303946 589910017 392930594 9978632 783611182 446489021 981436484 588937937 934973686 721289867 911627911 277547704 583699309 153748273 847595060 127347586 288119807 285144265 567902421 783679010 125083238 805183055 115339288 752483188 820556173 179165428 78508395 778851306 845603385 364652941 539734483 453803334 693806355 871511920 170374540 36727306 693264106 393776545 935647840 120476748 1708181 390134437 797019866 812422191 48371873 635289300 142052039 142471717 107819627 870251078 248601291 150468788 500484849 203090994 874425852 493185002 94582593 90605282 962372773 300668396 235957274 370080574 609959827 315011923 224619724 13676973 219051824 273852716 854374909 382545161 914087281 620376230 342707896 979769722 862477891 183803005 215802542 104797760 506653559 989377857 688955377 97875968 680987739 785913321 636866844 589782266 560344917 974379149 612882473 532937516 81744768 506738486 12266956 936791301 782301082 467328810 433289540 235324158 488569252 257090728 198652841 747261306 486753206 250898873 227922721 142265988 293526069 699788235 29764916 615768182 585135926 613812758 78190005 245494534 303585388 250883959 592000884 360575393 350396806 235873210 29081175 762407828 8387149 118010926 665720455 580153779 677232959 524068308 207248676 298539428 598436760 696594001 446123351 51425483 727319140 840621641 996156226 420798303 908187674 520568587 373860388 763437400 553279786 100386777 642728347 107637241 851770241 540672909 329138978 838334638 3515214 272109989 540011624 260331517 477824084 226332575 11253370 362673514 119118119 325424491 307051413 443188839 104995744 904120998 744478922 78049227 511171781 925970474 250200025 993302476 297653650 760093104 841687213 433006656 888871841 759507852 937019533 874770817 835011180 516521053 141398340 275149980 755361744 138593121 406434866 436499645 844745241 655423759 230066224 138208937 284337618 282196624 937944284 103922700 345446852 564699129 875296156 33456224 775431596 59588466 762985424 764201399 712355755 161221138 414620961 108560449 969069926 464035295 577215597 95205858 886557149 991934605 286205784 765889334 756042353 829295905 718667986 313909663 942928256 617635806 572195918 23233113 489537278 41654781 285846044 671748437 569659385 51314457 511055103 942339258 312361006 87324302 29384053 475128841 164203205 730650668 237710031 644845181 653173593 944424540 528225370 194703803 205384315 845119328 394639640 942300876 833206662 336306473 514177133 823916769 236370336 722894653 631319548 786449355 511912000 553228956 588164203 232627114 758562223 947597773 628499965 417544655 209204036 362279521 616328826 599570580 676219515 465326574 890128664 353222990 296853758 527876047 472248155 610141867 13459523 904959178 616252681 313152943 656665759 878959592 543494216 556203867 441930303 452684401 994801370 109799049 197079917 559358455 826457546 414587672 369175128 724449328 307456893 102310570 517302014 36880175 75646345 829106890 303708212 753546759 303286559 437391839 526841464 417377119 492784796 545650770 861438762 439462233 85787997 903664149 609099585 177296233 23359941 384457514 651057475 245533208 13891738 768199908 458034415 29618485 713822876 212651199 722566019 900848465 896611865 916294002 704446417 329416833 448999941 545548589 508270798 991709400 357977869 432819109 704813314 719599660 282672567 209219029 903947054 779937276 951633063 415871647 82559065 56772440 420533129 369738033 259879001 947398820 317250250 706568241 500783651 877818140 594897827 62349118 923347669 471113540 198359212 702788144 489920929 736023846 271796543 777750007 993154112 410123824 780088504 160691446 608543224 710281794 379408109 530829791 121118505 686060525 828694185 217364105 761091942 615288682 652104071 138379480 299662530 97403450 896363069 820646832 128859778 375387450 212616104 433258954 613061504 365237250 784596516 662883768 495040941 298321907 345115422 869762961 858359162 625912027 596873253 90004962 622764179 679008573 166202878 460826261 500273460 120323623 55920874 853530660 371438803 26786619 240263289 217014856 410462877 76142441 61047646 65557149 309043883 902296370 219125571 560156692 723214505 903899124 894746287 378262596 32074271 918965658 462720577 927730570 738203188 624309559 504024915 731572389 926758942 888277211 895857907 854315979 792441969 948106715 511018068 826703837 371203922 284686455 39406758 622498884 249431576 591009869 468786538 739186214 641369423 543627293 896033511 70404539 599705331 925520253 502207804 267190399 933235448 621183255 164341402 466578392 293551269 347372237 602280540 791787027 420117945 861177770 816166544 929647962 661618954 539058379 607880029 491760250 461461466 563492486 999255470 637565937 150816289 865037730 123336924 32619812 492848032 721756232 59035980 482948671 468553181 678966087 91928932 345657270 15806197 671653053 737112369 815532082 251655036 681763528 565588303 504790864 107281858 423512110 885580252 516851228 230393788 843694934 118762264 977751234 420838830 714673931 28058615 602843080 197076804 276249808 881377797 476298275 450874310 484224465 706099628 209980725 710174983 644729275 367587272 854418468 268742921 937611759 633209478 770563181 464285558 105520033 552932473 873977475 103292018 133392437 163832146 92861386 911515145 57664754 213946042 348667902 806065617 680161806 122493491 762487975 996452852 642202439 242334195 128048719 394268815 468392741 540000739 36159782 472495913 354972353 174698218 366950510 274275067 778863903 251595738 862597238 160477411 305775271 657963437 17519010 959861813 127314393 907978194 460875520 96285261 17021375 369688111 157110410 63236600 105805021 969705543 598464535 65244166 609830306 283367562 375427536 994596571 924671196 926071806 525476052 71685721 847766242 897457516 782787003 466280871 329307102 392911897 337189233 610813358 246249233 925422193 384929430 279500779 272912170 682970026 702983643 242948867 191864539 722438714 690173738 840869402 280570166 935741352 305231520 231269012 225479727 967227654 489520532 942439402 86775680 527560232 748972777 515024598 30289528 494530813 11436428 945469425 32852388 370496431 938526673 150345315 496906051 737160909 159802366 91628160 630468825 719554126 243532350 700092010 574583840 705792612 822699280 336960682 367121672 601871012 286407058 364238885 650081516 749113395 828723965 95776833 869390470 774266295 159385147 464782249 139926679 964497081 436420470 992812277 528097095 382205208 802040496 953066724 399916433 721014910 766610532 24668728 603539255 87708760 229176646 667336349 951453051 274004065 608098185 64089310 19202598 943573704 13764134 975623309 547684874 129429395 902498294 948172736 567164394 557500822 428034060 792969152 73618116 970508656 483869404 97816333 739885855 288927630 823637203 712241974 306716839 460815326 58581045 579458109 712349316 857140550 191313522 941897624 30873368 10193712 504305176 763526491 613032641 807020009 526773976 196474716 82238088 209277719 378888755 858865806 575799351 578098748 345470120 152322046 387000437 793553501 624921755 646615180 495485563 773214273 294737327 905546530 69983051 503551060 444683560 757643423 838373857 520663047 568700168 685901339 593574959 783801411 310616185 190326704 906342167 992283763 157210070 199646079 144114097 199369313 25835810 486165915 283725022 205716520 888352650 851903545 11799087 230377740 930063286 589038337 221741672 543490993 101324253 292997064 62316990 263180706 583677537 861995832 351092996 263540884 295752230 68644783 910553036 605002565 272088457 805212992 541677217 755804305 190125571 271589587 507802010 115407783 245294733 48360207 461884413 35230398 859157863 576652628 766214535 332929957 278211333 976115225 329111892 678189415 52472985 667690049 112233897 806881618 959311387 307404872 94420158 543661084 578899836 566934112 500449380 994053543 366071722 200731514 617880066 297363555 358808924 255429223 220029924 391801460 375722909 597268155 212469131 785052977 494335583 827293193 618377179 781983787 179170515 908855831 753572963 892704106 982091662 44232233 143417626 120468037 342985716 556203215 530357570 647563905 244371544 760426847 160081082 193337878 107473050 524106037 82150828 568282846 800176488 845735739 154403465 76541802 13023646 54362036 206531235 543669147 752866308 735275011 277815365 665761031 356768319 624308848 746900733 49297769 50867686 820409684 695727488 997137671 126620233 974353513 853238254 76624468 53302649 707358123 731874602 24979728 900703713 787080787 399498723 812360294 463270950 49871854 594372420 531574423 577264532 993454974 67634025 318989243 864086367 236964533 428578812 52820665 512763060 612821427 981436634 209427874 918590594 420364341 615571914 210630614 32686494 83394996 818871212 780729826 106892193 136518866 389976433 914055246 725035904 17919773 358995481 782582978 977690875 162057916 52611644 364386914 935730006 199839126 958117982 803629229 846312393 359169668 412555241 228554725 933391974 641336614 36691599 821921508 180109960 772158907 683474280 107807680 584059869 531277269 355989297 378711141 725292855 685166906 558414223 960767725 551138684 423345866 815835110 193788155 182579799 33447532 455436873 761019026 735128234 479535579 373393928 702073622 362144088 715076297 18663296 313174212 818158833 421708326 650312016 735443397 990622735 820056726 894043822 551307624 431965018 157406851 712380877 825603093 597515615 570815928 746833305 870752578 733647149 346503880 650991048 965087423 403491746 471172192 729194497 490182037 979702599 364238762 366144896 865133631 823045525 115456111 292628389 578159701 263951905 823779732 659472930 559499982 857789978 542575299 141237634 656165 419337612 755207587 52846215 480205276 563332125 205257905 833511894 796362891 392657605 238149772 898791565 288874532 944181496 972165803 559787048 579948814 567572584 735052852 194178882 156968716 592998919 519112666 314124819 418874218 906072546 981475724 196120136 441368348 125880287 411469822 315717354 253387322 214393402 737303888 266403496 854002695 196084900 945815968 720472604 461457996 515014776 131396921 555926336 483268208 138615426 476958190 437999170 130246245 648126087 807793438 950734810 526634064 628869352 373552994 373940082 522249075 159037512 60655829 108051486 271173159 700541562 701696118 824869327 912462085 408381932 253494116 883835567 877505532 439457347 777292538 644288292 403239846 167168326 547533666 654304295 205793323 821305064 417153332 139104993 228372127 883549201 451725373 181560879 790188758 614859338 222355244 636679087 790559000 786064823 938992244 975310017 899427099 446894334 986836037 803953480 475067101 284480490 574860480 220082895 689529427 952208807 439637296 188608112 241581423 394978785 647917550 441016434 202356401 666451071 247186546 237744331 81383839 851077408 791679517 793552249 853314947 598302138 317253404 50030435 699930019 641154148 63558865 106773087 103505519 351425175 851663413 46808886 696970705 951716013 745138498 990541472 757491952 803169585 899431790 611685157 659143623 404071767 173546677 53477418 507639066 89162760 860746794 117158560 637225223 530010668 560564460 874380033 77660765 14529920 330113495 476605475 454511299 756236531 861984588 851323713 536181815 342916013 411412748 100145394 221432351 210988810 67526043 583631774 205533735 836053312 448085844 489019745 756534306 491110397 406588612 926583363 164987476 717770383 683929652 97898669 151108088 176172953 188628818 247751874 508133603 668992736 432498520 92483853 397840507 647617182 111494340 44782519 45059562 485239067 250567678 626940831 362892776 100859781 626793036 718213663 157575352 956570210 435137791 131954497 278408920 911960148 177805821 137395028 690222539 810051419 525936656 668499012 666520436 672257829 429708448 232508234 612900118 150686215 598050300 735644595 898748647 261694318 477603559 673475406 215459850 918581848 120351612 807545592 876410834 3610094 380060165 109577832 863306942 283967569 950918939 805683363 565592319 619317076 410261616 512719746 483957916 755026847 234141345 609535150 392908901 922979574 615080830 5405327 708017932 354840725 343503811 768211392 787498882 194549420 672973255 552735992 877308062 133346585 727864544 961029748 763419286 339694229 243093966 951357430 947610322 464050810 449744434 119977749 781923941 615588998 889104520 680519854 552724034 720664340 377644408 429828033 693004227 535930646 492662478 279377136 835194749 816172403 802806266 269476579 806003569 897616527 702759715 863191608 80494251 999779158 766124308 352779121 836267140 783964246 494891239 215493183 905189188 883474331 380867100 492443838 320652573 793359923 619837565 222032692 48861515 108922590 633998050 304553135 218600498 659720901 160533137 434903934 819810850 869485542 193827673 697126801 253159824 67707999 617727383 832512004 45335630 835197725 323568705 649982226 347665580 71401214 236953699 508449980 593315024 230012406 579485083 741787063 615068640 283757422 16053144 279549732 492764878 154277597 65306714 520885995 544817947 270424624 433165996 180999173 621411371 875558814 772455649 547988666 820922212 283653999 269498425 97461837 706036854 842283515 157557338 713158532 240204638 694555270 208615594 268348204 443427896 174355967 582789122 517030626 139886190 967268035 653744780 277399958 747374286 283533327 182512764 765950441 462212861 93193546 580092640 815507776 686155781 889315555 222983110 12297916 170079193 400237591 400821123 425814210 169552749 445124756 872502714 399344178 149546982 176247446 98590223 788033002 139273977 221972404 582039495 521028102 529559341 822863219 308835172 20077825 472410435 53099029 168977017 954884652 543792094 778884759 615424541 84076926 116570653 671943273 637234598 869167273 184066454 192230825 700257530 79964356 445547834 457534394 252311613 861994061 581544042 113177500 782543881 746081590 103315772 258760261 992724976 664831745 690659982 154297630 846870660 735755711 873986857 814214435 316071702 997406128 688828853 582492502 213105631 22149584 421282048 41565132 763925766 201659065 482419684 780436326 686039510 928015913 662188175 353937604 227999356 458083933 998965886 162208021 573119516 213386025 654632096 479481095 461101500 59512403 643842655 494711355 929097150 546664067 731994421 12563875 412504483 554666771 648239207 529784062 396976898 53066823 550980609 826956175 366384771 44287279 262838891 224196907 601514966 942784728 491169623 642336511 962782716 554742468 202744085 952909459 184937059 176373870 868296190 290882101 610535096 722864357 463674554 774116801 145836598 698059594 645005869 219691906 548870540 991043619 254680315 406494432 229746072 443637918 209987377 553765244 308999868 69719005 648859896 199008376 689141288 366937116 858430456 103014304 5419897 446378453 873262672 185657476 353384620 608497452 327262170 202618876 27502835 882067228 656049421 708246261 597042744 794817149 279930843 325830211 902262298 933622334 347030814 977313097 309963315 466910338 407661279 581661472 940869521 56199419 414908605 618151427 887222473 82442435 981866972 258469036 337531086 841030942 345909765 683468619 453020622 963200900 851197 984178691 341784369 844667830 419367096 372524505 260591724 982699054 161101652 411070052 283894060 175827868 506866675 927752982 379539913 467813710 591227432 309108743 59899496 525675536 946171562 318887501 388872253 597324829 123758769 348767623 178044220 275882005 777740209 445944673 620543555 796611038 872501837 162842602 716929833 51045814 430029364 131530498 731036834 995022368 897781834 372839056 527878125 583241911 497678545 527486016 885310981 687719565 828562129 161152040 366931325 298100699 954216150 604922451 787421391 27319334 887209100 921806855 976930094 460742028 718646360 105209926 231851680 928375173 94383268 4555835 255292277 89404133 19388495 89260247 987959920 381780867 203074478 800023114 838485439 662511560 374147468 245133554 491783778 323563659 247366151 313198620 408331981 826070034 571645846 415288078 106400069 117113698 502203809 398874094 644809729 162043776 268306388 116110602 46998031 111739470 863505908 656903284 823258840 310502358 852593235 473212759 783655975 941299724 59826293 814645651 295431085 195465586 399084210 870151595 97041826 209184821 366479102 468227478 388085078 573943213 113662174 169233706 958697008 510181874 666864334 871667840 549322788 199925749 297944991 35891082 180540032 707128677 356297137 833239924 494745102 193490217 348562129 854220334 472224853 945858597 823619630 580565166 677552697 924019723 273449496 441075788 671312014 139985061 468683252 421354880 236738739 950219156 619394108 653496918 858727874 772682651 770103440 184199465 991768736 42208832 660390619 208845913 781920733 33248056 143562602 102435776 385652982 620524750 459473657 626617603 4498816 125089244 48847605 685731011 506851638 486464329 28037347 165245286 312362006 335451523 316434692 476927958 821105995 148334335 260236610 16792979 167895905 71735071 736217992 126622428 244861601 543545388 699966949 493382312 684963443 913623055 40217528 906669168 340462413 688050678 114380349 928054100 870566836 381037045 504302382 743235491 732303454 582411522 339290858 35125141 26969947 790405118 785772507 132083231 2598635 771978441 229721566 676857367 569704839 264642851 693591857 354001110 496436704 865058798 358826939 286634684 652632905 660806599 391010995 476509236 457899712 61190309 936500107 704740305 250993232 225226655 332026324 3913185 455269636 976741131 88788974 11668992 732753679 458107367 902947818 204660150 211238489 766889957 539733218 595420245 512012595 644218392 587176292 393780163 424806752 763358539 924473039 266624599 107697875 10117094 896885332 530953878 149346721 586620320 199174564 557644665 155066225 880915688 128486453 326870619 930225624 554712307 905477441 701747918 76557974 396395466 880106975 20332029 472235807 602933211 397057742 795961356 827005917 559841131 242930563 420281311 443738436 459191006 519264094 93335157 708596352 692564932 487160872 267192983 650581422 526889720 941245386 960468220 550114300 382113511 276785386 594296247 7796402 675951362 277363492 520645791 696161258 897079208 165088866 133487155 216726659 527907618 351989910 649092735 677495531 113971342 447907892 856522459 863902887 903042134 51759773 341917956 694503154 101186716 771956112 153174907 872849351 200063594 617247108 255595701 750217697 6572048 15339652 706210499 184049945 400218183 48687841 874090365 296483221 375525872 509762545 962803607 500225688 139998790 481932100 947062907 463527519 495386475 245506908 665692975 71351283 446675637 589710991 812002171 832722437 657622565 572292473 96666349 429635279 807583640 656743223 174804149 149723443 101835178 20064361 203114046 70559675 854663678 293289884 991206979 85927463 845945234 196938589 436376725 762978547 591550117 537400023 30011601 914167829 811745842 656291866 845458915 62518784 191776329 803357154 850222194 468112465 196266815 250932901 626282361 397409960 311697801 787221265 252628875 147870746 6735399 916538421 244764476 553687139 816141143 717018708 471515841 339973266 345360891 321814619 242842886 420855478 136534873 543106324 500337738 308536214 398918495 486499384 673797831 290342812 857683558 621162800 317752727 885645839 855306311 675856785 23540085 800101923 316365899 760261314 821077057 583226558 601233057 897887087 197699572 522014102 157708813 616916357 901489635 608832084 755850927 741139774 847354536 151476453 768530952 768316150 845653895 839648462 366471280 909529168 23421077 886442729 16421482 430293927 121069728 534746792 173223812 924688312 323582236 382830752 309983377 417633286 504569414 734044441 258100804 667740974 923861688 135201261 374001795 55181487 444319856 390830779 802086106 368933161 526610295 522580554 762866603 648508336 442850507 761658672 558066757 676266519 844089348 344590508 732510255 381133690 680430638 477572572 988429189 425234900 165150901 19261376 473330948 940807188 784556359 804668886 849132964 466790334 532224102 25803572 191944086 644885221 53335878 933611887 150354669 768045689 655721320 51909888 882520155 466761487 416323712 501945745 475952213 603651582 641952487 802633167 134175204 323687625 988223374 602363601 380153755 386251638 34875925 745296495 323072819 48224142 39476536 520456698 697497223 810533105 477132234 669604431 455897776 918485234 172147053 365463495 89877679 53786482 561143516 863135897 911407908 825818784 762431463 595698484 505190 393023672 201778488 250750163 422748082 586401063 757093864 549949242 368964867 387450568 120183972 943995273 389046716 485478921 111626604 397615180 834527597 223471566 818591354 319201737 9933534 612218557 285392046 961020498 516898617 192658870 236599598 839832066 884944550 626162714 510394955 311033980 529609395 181686378 355315714 164375026 595865592 273899116 589143860 523778823 896834747 805352970 130702788 288351792 985387398 346986748 209165485 362590055 20068597 164615352 831860312 569532522 569287441 187817913 93038344 961799586 114938059 248408537 925109789 804700907 974361455 199562410 138782862 884619839 440211069 887867530 760000922 886977556 965495725 843054481 574454395 92179142 223363109 74495202 430375423 64086447 63761772 333084754 800307101 490193422 841570122 946201852 671979446 45790667 279566192 659044855 105823305 78987156 415373300 703559428 643519687 512095403 584863801 277841446 301470641 685412215 472296190 747898354 91869221 46754028 779807810 290501365 532738840 619326471 817366782 186327890 65403053 48554855 14187692 761628529 58190995 984604486 112368783 825207375 737555258 620968649 497643927 120365944 818039727 526040660 143239623 310615516 863941824 39435726 325132488 368707963 13924576 293494476 685469999 482943572 917427846 847887528 425452123 563998698 774817154 403026275 227610783 176553912 627169117 410130113 141533789 786321154 789060868 336491691 764255188 538228012 918513365 752153369 141610767 348213821 455963290 397853300 725092532 492229682 367355989 137390980 405759131 72639113 566551781 738469408 542623249 64289032 674185293 345803055 682299635 611647823 870167757 857012975 195870033 46053541 957899235 302347360 289351754 612949498 858971405 600200298 315867947 411225193 218569903 375597923 896112426 402459688 515377166 155321666 686394232 155847786 730219551 167422707 77660172 836312533 880731786 793031407 912657771 103743485 937188125 870762463 159243519 845211169 641704784 744120337 479929306 684731127 97394120 771133782 636781448 54616241 591354006 598956645 760449829 511754674 325168378 810220433 819075814 868172896 686492641 829250916 714208775 44054951 848770222 197331405 667918471 5052629 335057232 8723935 525584322 647546575 394303477 451556581 954753359 934354938 767760153 873414658 796774422 927182770 61445355 13477995 202964611 818875456 903042518 658706449 195597545 39216877 193977824 882670868 663238724 583339231 877946928 171658035 104200031 26948286 660720125 722242058 49603485 515391625 419261652 199892488 806453179 962654740 314378057 157826786 821421229 589809699 496914568 420936363 189568745 583499527 602435310 104156781 108780962 941413616 745943502 923226401 33074184 669753955 726583966 629010368 916593898 994553553 758450114 626892798 25292046 345227771 32540522 500088953 133325142 967193347 824548801 459108821 353103019 261347339 666853685 86265181 229070305 467811597 93981373 391205302 719875879 225781341 968573211 419605887 913940497 931987799 454972961 808012481 704700512 389301752 229467949 354584358 902182227 728792086 934006026 915318221 102494681 392097673 905919609 206640805 783393982 366806383 739522735 746949075 807150129 830617982 439461721 814987517 970727947 928151574 894855704 365997067 349965861 170598843 29462942 411893498 983668667 296838515 105364326 214511490 990963602 311590177 973331008 699988607 570102477 32441672 164607697 799955003 824883186 127855815 886401862 646006012 133882144 991673389 249783543 113213812 301138000 745111076 757029736 833513224 978372487 260335733 382491635 926288228 310251253 727784778 202928242 519668754 255651882 443593220 205554573 359310269 773252974 915057925 208293573 313270947 540162747 427568275 582934265 662441781 591257031 957914522 325056075 779754743 807122836 837449214 37649698 793169829 561481261 586121566 528317703 504289083 450452171 619019553 455405597 187596027 920728504 980209895 892148743 895491719 791453433 614994361 907369698 896305794 753932383 512319261 730581599 346684038 421645566 806713655 50525461 79969845 55938588 446629000 882774428 623874155 629963623 919287249 120450419 578383830 586478114 119228451 792387696 68376983 292682326 142506102 510783007 749700788 490345925 97159211 239003299 314035921 363206941 784716727 595610565 74061831 685712231 850594724 944201791 979543608 824453434 697487352 188985882 971875946 615224808 715474365 593113252 557013515 569691745 573301192 131321616 375948750 501150133 716943515 24175199 905490018 890133309 819384673 735600208 79283716 163656767 183162270 441422967 607426932 548405911 56924489 86398174 115977768 485720091 155325475 754602331 236316286 342065949 440607021 604917123 608571585 449499167 820167033 622516968 336865785 708640978 308333090 136352987 562778191 197816468 604971607 44735660 761105354 513367792 624772354 215758758 699991036 363335374 241438502 821021806 711920455 259377563 918406541 542646102 703136211 653863650 441614475 853663324 976096606 926192506 520952253 304532560 550476945 952499385 266050181 164061328 445087404 763387049 328491588 387701250 485164047 952014986 328569309 926783622 677195637 823326309 984935848 116135819 657758732 943229844 792594447 605258068 616776043 770522834 735555636 351599407 694042053 866978954 284644338 358120764 840165058 939928670 804968784 332768717 797667127 558554421 152449789 690028444 120122059 207769790 55683676 772452704 939809767 990059883 10884362 680574718 37523578 397078264 675614189 668380184 118658381 93275313 852496777 311447430 309610321 265047883 411144640 86510330 925329573 627661423 252534620 572280784 924632215 369616716 806425609 455386507 651896494 137229059 414804522 392022050 1400248 488848314 705935704 265964002 615025334 249785074 76671736 258315580 308552421 590952762 186934925 454873373 295176550 723312031 439929882 204154086 339880232 103277885 441124575 622677312 913059878 310997993 646755804 57907377 228118504 31855405 996659831 430916235 447282626 570211959 621718482 142595968 839678583 697858567 53652579 281130516 604790334 554723968 312309762 906936244 326856854 896146045 90487269 959211204 12334245 893376007 237287502 987693157 599618137 263816141 729511056 384926409 319589085 791353272 718499340 877011558 415157516 832149948 919234777 167662094 847175541 56545873 82734053 71073665 600190022 837506769 656840215 811406757 970265693 59923063 10382943 223827702 838165655 505139341 745236186 357130609 716135141 577664221 277144484 125529887 269143750 114949412 54062836 753533030 64409891 922080556 453298963 23494392 689472046 755407976 706310696 796139628 919053089 560221302 32093750 711294513 202621418 989874000 680746245 960754013 557981354 397896757 566245806 944287952 417518601 744597195 256223570 475461631 940777833 956486973 52868600 598265221 561456267 43868277 631161100 147379181 475248458 594090001 242659012 447666694 101501308 844914674 154679795 9222840 754156674 733954561 239109266 964536709 168656048 411026476 330267092 596431942 938868318 518804687 210731100 298253541 514003701 672418107 430331425 877317552 575622704 850873849 565723159 588425904 362962336 63982127 717062165 306212754 890053497 462464820 212742727 474963684 615398011 636109855 736951786 732524728 930195249 218219872 187752454 274414384 302715895 976476152 486039243 276477225 123406557 740921148 756394273 174869856 451353647 246483942 50277945 596080864 4006547 402032377 856584775 606398952 264103299 412926293 292590211 554681373 452724617 4919349 730062999 277900161 594704049 610636993 709993415 746601887 602150647 470593062 2391288 846887955 609298594 297885831 63470664 532739207 811508042 492608219 811962526 587892548 171362871 122326883 545041871 171390104 642564869 881288578 725109890 970868048 321344007 357108522 200147567 259132712 907343281 28864437 797224525 583687113 619213243 409829889 374672954 292068341 399749010 80110560 562083530 686627400 872783917 636991340 59523431 625673384 432274250 564736386 142390679 75777142 294771327 830348357 709478512 851176320 528105236 680696726 436156457 633993771 233420008 830349119 580086427 353651231 202916274 683540517 155131089 110498017 900005780 838301663 506854076 184858314 582773697 877335074 991986529 237985287 175212255 586472320 580087753 766635109 185274041 553645717 963680304 465032962 44990498 524916541 116792390 58807735 587457703 874350379 279247895 536118131 63411193 651188277 672068204 774126595 484623602 182840161 666290777 249506795 516636895 10219742 889779983 974652807 197003642 198276340 345227719 396839416 733482822 463126981 820550103 725914795 425889974 320164635 429313162 156211550 343355518 700682539 467456363 791032123 827391850 421361386 283514522 567503392 978240948 940059476 647463555 724796412 417764727 238155649 915630071 217301074 274961148 728155785 320809141 485002061 548922855 958194254 272633302 910819813 726172644 362848195 949366240 7397721 746763969 934558174 118654132 493279789 857266358 315031687 386344446 732176203 224212620 19741210 48330880 797200560 126054851 538968143 224389794 51691395 814726629 191989822 593676832 876725789 276532913 362096156 710030017 545216226 346175142 253230603 478043214 117159089 556959712 487151943 827304904 746392892 143831019 406368702 854476811 465101852 237131588 194646755 675855886 485387839 540322779 810176434 553202218 22976402 606856642 564328091 429877749 876029025 193120106 383620775 475218315 248563352 123883216 449544564 455283156 21833792 668041408 13564883 842725847 677745861 160009743 580892010 597028945 925239852 194894866 591740370 37519015 586158154 245947527 383788339 945496320 821538367 53028667 679503822 148897860 600974646 528465134 392908034 202881485 598987769 339203833 527698158 791389048 669496419 237225245 302987280 394313780 141016295 425264773 593487176 897366951 881211727 320292126 8757675 517006161 231232231 776996074 402288960 827891776 267844988 490745166 738467291 756127082 181576605 646226017 832984498 409527269 901887126 866509036 3445119 801419756 410049593 674870174 298264666 477827573 157444898 49618635 750825970 536323882 276272375 364653208 435265366 546580010 496239427 536698418 251137656 421831700 586211335 347051305 475380228 535263184 661202808 291778806 408797232 660807169 38134344 105398894 452113458 518860543 358601526 754688914 841850311 619303896 269707593 246444411 960015245 350610847 731644734 591242245 436083565 185903554 698028574 804178405 928214728 575039915 479199657 38381523 691908202 372271872 767570021 307210379 960075049 781607738 765459765 24696689 155188461 721138150 121821806 103532671 200517008 283877004 782336834 758400101 717082396 883008706 273323048 333574281 999702918 615888911 272061681 981772209 259578332 956528288 331217554 276299751 335782305 776112489 788619308 487481879 125780837 811987951 301436202 379286147 621710064 123661133 979688289 491778337 156756459 178634840 234771813 672935758 252413240 844695032 982747420 631936635 142923639 868239260 296721357 477584114 829374920 303591320 276678574 449760505 165766562 373209510 725089423 40746347 757042275 366637035 757601916 150069124 64680751 914252402 15535364 484612900 110138978 588985372 717155514 570378215 122643363 493522966 293468106 468100558 551484265 889929980 588641203 699887757 524432379 880424240 679351160 638666874 546921116 718854464 224810542 465631455 776882868 775376357 981486523 366381343 353784342 259762326 918608653 645737693 795480909 83835833 208673159 67639466 734776266 637969593 286023920 114069401 381300379 610435022 189132812 796380173 905874798 762152856 821879811 50322592 24133833 616276609 759435980 589023602 208796429 947707637 436652400 161697854 293867254 471299093 152484359 607194363 181537827 542086144 497250278 195988910 839795767 614807730 276848638 526921589 47287332 341656601 742520944 174130717 303604267 34296995 721100549 242858123 930752218 871938434 907445215 697448477 831343756 266251783 871234157 134082660 66405203 675449127 843266573 36885787 859330959 319429874 49374437 650832072 880685357 298582807 337589528 903936218 487567621 902984461 43643763 251953787 779691391 723474495 909442255 502492712 609330889 821279704 961078010 882517739 126941531 653655357 628309573 229560447 315654029 47830188 127682999 715935246 806909656 707914261 100462998 68933434 322744955 513143704 56992033 849019906 11220582 88817385 830481520 782614132 390651381 478676623 532122631 975036194 852221836 832869612 780543475 235248126 93270339 244648178 49373698 292458213 91099738 349150203 496433271 105041971 713248988 141248151 61245237 418064170 121831526 959402390 546821666 597139170 311279219 182610932 165607371 371432430 349502789 295354347 590667903 531642629 503061657 368750749 416900662 831903340 527489134 837690504 625760084 420464261 710411760 948966080 854495939 858619767 744832109 213698069 396169378 944951843 780767679 562804535 380560099 397059446 250649847 625504676 422918865 537361683 713855662 478223295 819926184 399645310 527525853 126518864 353127580 453764009 167869842 526707190 603235242 145715150 259462812 113607459 422240589 796541392 82237660 199549506 971306679 545296883 96544322 193933737 250121708 117513692 500522702 427878371 722058307 668673012 925431505 711506717 561032828 506228719 997059737 472300511 192613837 587088664 723641534 210054197 676769359 777660278 291400350 219226718 726158634 257248429 78396006 929139961 726810297 684101518 767284081 134063597 387495047 609525950 363926645 906684752 228050511 737612976 57402363 37147813 934477366 110123846 767747801 592710249 7069292 59048698 47640821 280839050 510470938 748208188 214647289 754802412 439553688 603673860 55724147 346321642 50466367 986324141 488187167 295431572 441079877 125259921 511145441 125384765 369090831 512781270 972686308 195819737 354058903 605549833 277463285 436863163 799790414 451580372 942853377 297564181 54124186 453064611 574359751 342376280 15623977 497424611 1792803 935365182 825277525 207448411 130199675 367560865 993326900 971691119 73594204 989516676 517711494 898980125 57349878 696644346 510370103 836399615 615111733 926920856 2905784 505039958 935731747 73456435 427639880 520154527 534378592 379007751 594350258 991737808 761244231 696860492 24730258 877336454 383850248 246542764 939627172 244868289 457716441 911541531 176869534 461046883 445538287 142074063 478167654 691185799 679367753 139122739 235830560 397462114 495418882 698297276 424610723 85403335 988922697 670300762 280075797 26285796 352255741 925299083 625834647 144038053 48923027 332298757 483934818 749718505 177127024 655872269 852435389 467351637 231183906 70673176 372592901 494299770 426921181 319822738 108326526 282001431 669064140 344617664 130541929 644477359 269139278 199890395 503979749 79931207 219593927 608235245 886640659 918027046 39383338 617604408 236442073 825617827 708765691 110339060 386215562 213617128 275521871 240576374 609316794 415157131 513754874 582687442 907230810 411404974 127617838 392890566 788489108 512976567 694277258 211476038 919106239 678121004 498441502 464404025 598949060 268824188 554176608 603301374 265147427 720031327 239097366 89276735 186022815 327920334 296581450 688602171 781864404 245139009 838935083 231442024 115271868 927245961 729944963 855248796 768588756 431417898 666017105 888860918 773181893 270106322 751488476 799001641 319204234 223563825 475125385 839205565 565398478 820217208 531717683 852733019 4210907 352693133 247632541 901606876 406716828 943729741 631266796 300935740 252710930 238028908 343340642 303775418 681008541 902905611 222033678 872889806 265759080 230997548 847165670 972724701 610032941 90551105 137572151 534158235 370273802 450305538 821775957 582958871 850372527 703121872 587009139 511462397 43678881 330670438 656835981 259930565 746400265 385928671 387131900 881827059 938472484 353015519 813525849 967780545 150672485 859346302 830689863 68582667 269637130 323046231 602150808 170517202 437269431 201455124 983843939 654775916 362849994 151854550 919068170 17707900 33940113 779524667 190492355 236592220 745316711 65141859 684691059 143664144 403252569 339918227 317098864 133311593 385234284 31044637 555370486 718042744 698698457 44559296 694503276 75385301 226486646 657582498 173101851 591751460 847713048 721306719 352652226 773344099 244538606 998184482 457584286 372521704 763638374 815032974 74187491 926169395 945684600 286926045 300151422 368277358 58856580 732321637 165446897 319018639 364540233 991678361 142526561 586868020 958984376 837620349 266637316 58811330 520239632 776685559 244888617 743984862 221179392 694790730 740103900 895409448 377927537 792368449 307078071 874673108 958396693 429172389 329525191 691576577 776581647 542744289 17137635 419175241 41704264 355214304 757726327 641458770 10928539 165349643 124956481 424716674 425269589 359016281 530697212 702570531 287523029 831796986 989086491 116841864 825270089 30931245 426934716 448853809 140475890 642179804 101307414 835633893 522155574 890147994 679295630 545898819 848804659 661793839 202789920 54115510 189162428 495708485 800938208 11412919 329691909 532693193 860154562 5183605 513832619 993664243 769749147 164332503 703694397 842417248 356344489 6827234 259501075 243166818 671529326 188896628 883353761 222135446 296814856 918241346 661568015 722659389 828278526 918490308 762691093 838925777 441896362 370124221 265596066 834477041 333666730 309047637 896218556 389532249 530631880 835953963 480881438 232646948 872182432 473418068 208985177 463021137 887107507 834383812 216440698 498146930 660160292 553623608 331256650 942577636 899967183 621120726 182376758 518457206 306019826 122617886 352727625 308371706 930916483 974603859 924021908 238672677 603058575 711583044 351538198 721694202 515508999 120409303 936142285 74638053 744960623 696969954 386822361 602972203 257889810 137096077 53675873 704980279 955026466 814425481 951438045 687874782 473376743 818442413 532217133 381242154 869621361 864105039 657562854 778589135 853535289 326841940 42419954 291770871 25987045 245639440 306850121 346172848 643050613 978186069 331244451 8126954 890530870 467258102 948918134 92244062 475345104 154219178 810374897 593827183 674536278 189880467 857064177 698949120 439676091 388200555 332866582 616231087 230166178 641961987 240358042 448691656 896367898 129199077 417825435 303743202 408672450 725199058 576372642 147864569 739979078 78494503 456978156 518523462 622759125 463276264 138463451 183206769 945346479 748381992 957394382 877611503 208007406 476229449 330424644 280876463 699385414 375224660 400638953 301351732 475241582 551342370 344472276 40033627 143982170 872379660 573046747 285501229 17713552 825664990 571725164 891377835 502307713 765838070 519612443 70770372 134906363 782057841 270033854 61859144 369080492 584596325 359735567 483960087 229398219 940915135 180294537 685468579 874908627 639326050 859404275 275494809 645442661 665400532 404641068 508731214 228676204 949482149 843921674 210600193 559731134 115270305 528000782 931166968 717053705 539606229 883305471 730809893 562438011 341621401 986227683 484624282 549110240 904596219 615741651 438758213 842746389 807173056 478145021 459381271 153247504 690705623 707361849 399724416 524432988 551768370 109730022 366981965 72591485 42749339 401601283 403843050 240558077 991746149 171154419 260392830 586328940 223430073 874963290 194768546 220627129 127026638 680829141 275886147 871997738 631812638 853292453 550028100 569135572 256637849 252233181 384904345 633646559 780628975 67512402 246970279 698368591 24510638 594809888 563469507 270263793 826399504 984673305 366175485 374973254 46470929 22062730 133449436 918947484 294838095 676279619 500587573 131589008 770822189 594045676 295951653 303351351 660086846 305409986 295730875 618020094 437882444 857686034 159930358 188573605 362022 972150391 307891021 952313938 267497216 842762881 869556373 162188449 907314904 608744720 142614820 304722722 178138756 215211503 592950561 838045128 56579108 613629987 393633248 655697100 444620532 442826861 38973723 879585637 435668675 96230498 745520404 545298031 263159158 533726273 447119005 186508800 412592948 253126396 312088248 510730968 279677199 673548468 398341113 730939358 958565008 695586222 342826487 159304813 493776554 136398936 757131218 683187231 140290308 984891002 135351470 963108526 551619200 57425635 985313258 481384464 445444729 470892976 692964947 690747200 958779867 947700012 79049679 15239422 981529995 932467743 10368699 674850034 804730555 612707209 262565939 123057088 711228335 538651520 533290424 352139394 155813303 110345820 882281043 489677082 155146127 241427348 944087590 602834999 60310750 691917019 422259301 192605783 590372068 595721355 225007086 677328717 170611835 94406315 73422448 129833469 375359930 217005874 951222725 310194547 306704407 805486042 322905123 787724465 282874836 442643053 190054261 525474933 749911599 163274243 568288161 574734687 426708778 621473385 522463159 61822239 246406694 648580424 649541820 519657897 571044521 587664937 666100526 112256468 149366735 365581597 900531586 427266208 51892347 710563619 421410191 409907081 74809658 723143481 768233477 9109188 992568199 657546543 203971811 681779732 35760280 9268408 996014846 658626660 931028430 29005241 823979524 397422975 671833721 328923853 144179290 423763777 941252145 583175646 349190162 53294460 686208862 996845376 261869880 27367725 38732433 331066135 784140200 495964181 581385206 532964560 585058063 620607863 210297522 47837892 137491980 694962936 794972775 108439542 685684675 238152147 125573951 746361881 392665936 856936944 887035956 637484598 33299624 941172393 93144174 579910515 418249771 122402762 655287089 164051171 116179249 107011516 803457810 443928094 113669462 362058558 698351197 774880091 877234768 824808221 234828988 487763704 992465121 70689955 620349135 304545252 478926552 125621034 743518147 17983915 631909941 847223807 813938101 391504636 71755276 791219988 60327873 929668585 721453756 231735998 708660565 716212349 940737594 845045627 250328266 838101070 818742743 248623247 96802333 615743071 727683605 266685537 164485950 47510999 336923800 755266676 679414549 344536664 118998837 724322366 612574799 57759053 461138012 932924108 137508561 7398333 349731679 604874668 293813316 208033924 43808454 440598515 719724511 19161228 817663186 771959552 823098204 873851164 319034644 745591443 980489277 990281486 214789147 874079267 752112621 502890553 307483438 296702900 125333793 330870034 276396264 627911537 353654646 363363676 256013958 316585694 486394202 991277968 959744284 10458777 248757058 761821216 585910057 701225707 955820790 548194489 166565947 435675898 822805052 98411729 431928075 366593057 589063716 345933863 953107230 709622891 125732797 992472253 151492512 365293211 665503500 822261835 616033106 852941253 865442510 403132701 751303691 992066915 268603618 144598844 820004318 345362627 701872504 601899834 202784171 289666939 384657813 106051870 511287024 650338565 891181079 162468207 260127151 424391620 999739333 4607078 309909785 757883766 144597032 273435572 494894265 169204607 890866289 811774395 169380041 56330336 296876220 229185830 240371002 134771591 718509996 303797496 783658845 283881583 306878618 729564878 565144791 154531920 524220519 563840993 220790462 514840372 789871 474642509 454588312 997602082 310891436 195691488 166942904 550778036 456744850 316558338 410299005 761095999 334975749 734517024 112463284 9111697 957862312 286552030 519335081 139601742 22254176 851158660 47867461 739624463 591238672 670722114 650997901 376120714 139381151 368100581 653883385 858354687 126905055 456741905 197949689 640575509 881046315 632279724 608237499 306234785 643565939 24144244 19707108 904807736 412000421 547862700 632221719 188298725 769723366 39025335 193518377 158404971 422548546 681821969 694921191 144849789 412003125 111966131 992919673 784847900 919313861 723223407 468399200 527504687 988915476 119787567 801280129 809156190 283854193 122824651 53169974 977569853 751847921 395776619 593915143 686912255 24010215 262774199 222999057 136452906 461461296 932513964 466534633 483012160 300277263 107883427 642018831 575157792 395665054 515512331 401603190 313113693 54879716 663283608 673115417 149073211 583879179 175710898 879886619 923887317 144270692 861488847 178623461 781545974 866778823 974935934 747946889 735697811 750959851 492771263 381845207 835944405 615670206 593059172 703383934 788045294 342402886 854911165 433631065 201386933 462218525 380122542 779909526 945832022 448324432 592841881 50095904 114037781 852265373 355135154 783800197 207193139 855563258 124245681 814479179 995974211 91612701 132406525 56248252 421259399 563942310 965910345 943685373 352707216 419940215 704123965 172142130 152856786 645827271 658621756 107111537 649509489 594797098 421776396 189610272 343400925 286291151 189978996 297599241 950672521 467188924 754121017 666735450 171763200 129416046 83169855 575637341 998676512 515237388 462368034 16949627 775445458 68029542 555664230 880310125 883687633 40940750 706764056 910575946 590825162 719742908 17910386 373589498 458355111 559813222 48113465 433078902 2269561 827624682 550202400 211716799 206860023 985199141 39130385 600160990 67626529 377087811 396566554 621575911 571950623 939598668 378041174 245542367 642296252 854071535 133731218 855446580 905943077 424736269 668119022 235335196 606735301 805034941 192795056 310209497 728207531 812620165 703129063 153473508 73750291 405139317 599214101 444262563 415725141 399074810 770557814 857378665 355350061 743287464 804073880 436889578 915352351 100457435 266562869 265103760 680631688 859403332 42613218 560327487 558435347 767104747 257800516 491909417 894779888 158226922 515367284 704025905 388480133 299396399 545139327 866616157 610742541 899275992 126349334 121665472 22278278 347436847 199440744 581355213 493610612 549075343 46007094 185954741 335513693 163479751 369809362 794404494 873375024 779472469 874145551 683234957 43788399 313609211 502049327 269246342 86205937 691321877 157082000 61829805 653406214 568664850 669248669 636484561 189516240 760452429 531270419 25942492 445434479 700758489 456383994 395288656 407971300 856135749 782765957 29085794 219167368 949014154 435582207 402124249 794979196 95138653 871909704 608226001 666499018 45261251 292923408 406856082 209808381 237121775 609213447 167352334 899295769 405755620 758863524 781490042 185670874 343891641 394760192 283168331 353819463 242811403 828070409 974338388 518992992 154894030 228930066 122746094 202505215 558395535 419824302 385862269 833863308 955421224 262392447 373723915 334877489 116900401 812246859 674284946 816288038 381518461 356319168 504190847 282428230 149408956 201315870 423789950 663593035 619441131 327922257 412210694 471014185 449830741 254874934 243869256 197925676 820047534 547620352 870339962 97158911 612489949 368423270 457499778 886980321 104985727 909855396 199840404 230843026 642091465 288290664 845982723 977586737 949185636 645814610 892133941 873120692 362721955 481275022 396928602 855609645 232304390 134165433 580797000 772859419 542572757 253048814 844067787 180815973 635779632 572860551 942117308 378874416 702971777 246824103 582648309 744192549 903252442 657118489 834946796 721360007 265612557 798796165 622977548 291152699 135734370 719617448 839201940 900767935 965452474 836821881 178226732 102068 604491392 557367415 535855895 153555014 619129089 896487143 508153866 885693999 19504908 452868449 37845181 925252848 50676053 578955999 969025960 250637434 622326427 913147189 220875461 187611710 503038907 346730349 561385334 453669677 778931587 733121358 217405650 52862695 470536439 135377654 242115415 484260867 713148881 17084792 359057996 268584438 221602565 965341026 161816190 204762480 912622340 324445062 893323972 465201645 907391485 875402831 902489122 416467315 885285792 257201250 31025654 583080796 73954907 181372581 887939046 655252809 88621626 108949748 127960711 567713579 244098205 396403252 855074500 350133771 869180495 967249415 593408847 216617484 627670096 832559690 653757432 587475577 410796364 381394706 708697929 967916534 576485434 496562099 374141669 352573349 549458314 251393259 99892916 930125531 316523609 387640517 606239994 368403937 361233077 839008340 626905350 221764078 35954419 369819 119160876 990777742 2549430 73314722 787170799 365725921 625389737 279417221 498969673 770837368 700798453 318754679 307152084 96832334 280024858 771632204 744741517 932491119 144685034 749475676 76876037 450628603 464321909 344527083 329116458 46026195 684240869 951322437 591772533 596010144 785170220 301469542 853029623 199299680 587809675 23219234 247852070 938661246 767413793 988289413 806232002 322242387 320802733 100155621 240423208 63292709 819581589 960693525 75250653 936071103 72290484 147919914 71136576 356972660 416761506 321123672 937582409 38680092 848038295 394793728 532858510 107381976 558292415 745396516 793478316 813946322 139355341 745277792 99248601 586266206 779636169 334915733 975016912 772001571 685540987 900153 441402525 27476868 108953338 436201822 668640560 718333181 909372179 875321761 258362668 385087422 461555540 240641716 98793771 568961692 907898717 752899678 46979682 838670024 661760797 674818567 603907769 538569380 161181306 516290211 163465894 902913803 878500780 454817340 767644495 728808379 492942726 721488539 592067263 227621992 684130090 865588521 401438174 294831081 218216757 10141724 941456736 922207824 966390163 468116473 9470343 603199668 565833643 825720362 403913135 629095478 912222275 357589121 537950279 16739462 633120794 867009723 652785471 641632921 363970267 615599187 194744464 894945513 709446453 336825983 62375251 957069249 915619387 280189348 391568225 840315810 401389507 386056758 441097635 851334432 319173123 689191205 450184831 489270106 379682664 896976897 901457857 168416624 691233953 193059007 250038099 545803966 395984588 229451380 203359191 595114259 550305015 346590388 29493338 377658315 407607589 102135249 249549335 811576777 719659857 8809525 693016326 958008465 948381045 827562907 570390948 207565317 552713581 495637687 764666842 842699781 665303970 175370433 966293568 405232985 100785278 301936595 947186607 380198902 604865087 727405731 511302093 158455174 415456994 483681096 464569112 97127786 288434743 993146589 948519706 856005712 92158474 536187518 619928176 628723567 293660524 620582825 381917493 318119704 915646351 615017854 867381914 855939932 170372047 305358058 194261123 937763635 258295752 610581115 954400079 381945591 466725391 992316191 381991683 822111883 886548880 771879729 684464126 924242609 515796425 7457512 551631953 944465316 483350689 605972497 756461950 449527150 600032089 55088028 698715705 319318600 735480554 125222153 316684698 537091965 838719382 20245208 418891821 982035288 756447038 843120794 355818933 390580772 875467987 843576319 7103693 641111260 205632169 866650498 866941478 958747572 388861519 482165141 686988938 613660009 563765796 457432121 426276789 371307276 128282417 974718050 316501748 76697111 442076405 904013900 962987051 466785345 96024591 538433132 714118805 280986393 57670566 567812835 189203849 673738362 977919714 950539515 600139322 52594660 333238236 319362571 39557300 426235334 314246974 483734285 254423421 721895208 840930025 357407492 542238617 587330634 619569415 266096277 780028181 774579744 382358555 379523578 58851075 432127235 823374933 461155503 453260550 584845492 48479126 657163578 575149293 280675541 482133493 143133788 346833203 753662577 442908063 448511067 228376975 339856551 871302500 72136805 322019959 199969177 81508594 330175638 444755834 38879465 185319354 821586316 735866871 595625389 617586375 5091529 270978505 410113504 632041578 187204168 239448495 476418091 154814256 621387392 625641704 346106377 344972748 65312792 695268870 365871493 418462459 426635389 556969666 998937113 452228740 225368272 709599854 427646840 998628595 827484004 739904265 779167576 883201041 728201484 650873822 516189266 246446202 78059835 449751666 344532739 654244290 667640981 382145882 5824567 122298281 549744118 976608939 815940107 814304186 728409232 707373250 22803777 66056762 842042184 665128652 610712191 440625148 600070119 387219899 797749299 227831361 314284037 185274695 290320806 846486196 742620798 304753660 148121600 958275027 851070535 983612895 58585578 300840784 674448354 709181265 821626704 351219718 70571174 795348124 648512435 186219292 173927949 702925413 922310271 34279395 795653418 382032295 614141536 910772767 103856773 806674125 706325585 844711694 572154524 423759042 667507292 973754685 856971025 767413631 830341314 594919014 287837215 2763178 79141175 285480072 498441544 544764315 936737666 316815657 28283392 649577851 816298218 379096200 137863437 658130114 797805053 947955164 231131440 248333953 285981441 64966240 727886526 86001754 752740922 66763236 744985602 260333164 366547539 586628071 409840007 536063726 734741200 424178820 373819646 576669824 206514976 676266672 112076639 299642561 281733037 757448458 140582857 516890559 43113785 924101563 122934768 120190536 62002770 643362886 571188382 404928107 78006962 549999973 106140105 803347390 502229904 889771582 893390997 40304423 305297954 403675992 876959607 881319121 801036164 486909078 324997078 95338415 55184985 905693837 451555419 168108784 588796349 664044735 15093005 106084261 596116190 807906401 91392502 535745346 598290011 583239478 184170347 931493923 768297672 855957727 222644598 218899097 484894907 714814417 420364074 970160020 854652145 92627079 26423272 277852715 47902203 935314507 557372977 402568585 96632042 834598056 764697796 291054309 432754405 867313359 429755286 81998109 297865436 902770400 473787753 741647323 163408101 622419777 790711770 568260003 131637273 417847702 109323605 754734159 574064960 256295026 885550922 391883889 62902394 664538354 460749061 663898033 72219684 273937028 363790675 795089757 699085090 738084411 39816925 664314830 971515007 29296004 392719429 356602173 901633184 522899493 41904028 449595276 149944000 813613364 51304863 332066440 718266648 226207954 423134002 235879831 969129507 121251557 377983062 68338873 592011898 70976421 524962087 16576577 826273527 832373558 680342062 716334103 676081115 900465618 587709567 127121030 654198068 404434371 501874678 213080593 507698275 66316811 199502489 383625886 181625782 114879109 195945636 890793727 930937271 447016 203359594 514993676 125904090 151162197 787846476 916457563 704901897 689108422 215642287 157662334 660454215 820046670 359326446 639193930 931924086 380375050 832758407 109784926 910868116 458217904 672031515 367627435 442351164 545416386 636529702 141980345 241670450 484144369 936795689 566589105 687152662 187252588 706359361 11665981 354324318 789333324 262101006 264630348 446777139 889923194 931699408 972377572 991574900 526765469 206756313 218463235 900933145 228717897 68334908 573015428 609459525 304280553 996305876 853990626 829171780 423698222 645134538 258062742 71052766 225162185 508439973 646220316 47491252 902342518 111461941 879609182 365917865 446504837 643784482 876754547 714653849 897284997 798694358 929490088 609999678 380401848 447111694 462145379 822014603 201692494 310258754 988091037 486698225 482491049 908511419 148074204 288734615 817452162 802113824 713138025 638269369 673565562 567679275 190638795 104896074 993204961 13279415 529151215 131954282 652045871 873092584 214799887 604232713 463591936 420480460 488229260 576524755 196926610 614399914 104600796 430007544 107907942 534601572 336480566 209099740 69732235 197594311 966052190 338093323 779113031 140878425 980871378 381172605 768564789 940762257 15378706 536787519 513677774 454158457 983130669 183355507 396715896 877070714 878710441 534279713 298158796 570475699 563865851 494426755 556403751 395396246 496880396 67109149 976449074 36089242 699159963 492198689 535900777 636423804 866364851 52590701 356953629 428180458 334257178 320708774 689046076 122190870 629685870 963233196 891490951 15019811 183565553 926632976 480466383 922310144 175516439 689502182 80061924 766569805 377306880 406136795 879404064 482941752 267173978 907570178 218925600 555366862 470770897 704146418 982048155 806030146 821126429 899281981 586337711 8649269 358420296 123994208 942733609 869094022 929366348 942201748 162217442 721188493 730669509 257792216 201201776 238763023 664514681 909570645 742770604 329477325 978018448 670575570 228587696 858046019 922971066 811423232 387146333 661249111 901862412 794938294 872275375 312683014 466087330 362216313 567691309 155173838 286447465 648227325 936807177 987020852 565648321 260045845 848989331 777494525 787306042 45791570 517918282 526298486 645298129 241581067 800618044 678858215 766602770 695134538 273501803 2356938 611582950 506507148 922826787 114670551 528995461 642112169 518557021 405268915 866065733 132691200 382880264 135269488 940673421 641761676 169205283 845249990 408973732 268273426 668628752 762041574 775017278 198908851 305694972 204488038 283485142 642685589 364810602 890433558 417585572 520520629 48406159 291237540 124932382 168469525 639522871 163662605 131027697 994699526 264969546 275931081 729589779 253066158 382155360 708545346 221829537 806240979 969314823 524674217 281737219 752159004 258375816 861646794 737141883 658797835 948760988 163249779 241185166 874154739 330286837 403060866 499981163 540655445 954591609 897908377 929849371 344510518 748621665 826922231 71423421 413011604 373788908 760491456 59866569 802593803 743081030 624480601 101576186 336620953 798752366 37856592 611120100 290092116 123205692 538826846 156838603 142855710 161570960 770030200 427646162 81834817 508326147 947330916 766151191 723578821 896448829 77951411 369664940 282846483 769782080 659887565 726661986 66283036 110282379 407719264 334670043 309877385 693911893 700393000 975350417 612561107 78775140 846063608 787993931 490248734 785346911 574121486 591657041 733933674 879921502 915678976 150936450 535676665 409006424 376647186 574773619 399332007 970217841 959449050 377618708 989914295 992083173 69318071 205858692 912874603 78912282 436679121 692340725 649703160 898105696 218162041 221217101 247123399 518055241 638405656 39939330 908006598 262437543 488538722 362628208 574255067 652966393 657338215 150434736 160682936 710431911 566841646 588392941 703008874 539937831 635346369 732009676 321587701 65947494 555477152 307299215 988933917 36670905 444266165 371980694 202134964 208381793 712746432 278117442 163613133 148951156 912808902 619426246 168127178 320790539 547918236 949367240 573908766 63266794 98822485 335460816 884847327 368892812 554136291 45345416 579872986 294755160 438520755 352511493 183492628 510504610 347059109 489637362 690072516 256980990 807349482 959723664 761556397 339233992 337099023 773476292 209286047 387955931 202825568 550035360 806334344 300155385 163546916 719347613 314862530 309684622 768268777 79321178 962371455 69300649 481151617 482066689 334490541 904502128 772373135 762068941 197014262 413900211 162392040 566926374 457850860 813640948 96996999 512736721 986051383 154669109 924174768 108158220 873609683 117937528 767153994 104128668 121171929 356848309 630263045 982909483 834113503 690416348 508605848 753826201 903097973 148762873 336087173 307440211 665163862 439897199 700100067 260984761 501749688 906898258 810161296 296887848 666084929 363744649 672641622 967791178 860195499 604609852 846316532 25035485 199979588 798647055 98353180 971819041 844024754 439586003 932244241 16786292 950600312 456594147 767595943 227770829 123085934 459939412 334090392 742274789 107275592 424394598 126471596 458448451 337098061 195911808 442217924 55721928 85319352 712696221 524762967 738854815 512471744 220551042 119369163 624044113 27271140 708211269 120161903 386040686 519504950 334353837 447372508 75698429 929727930 124218617 43776840 966990083 589576260 16407785 88890875 900924504 985471340 765274428 41515445 903322473 992900297 820432673 251928037 604117041 855103762 77807269 743221645 252504527 652545255 472271905 304239057 145999268 613300502 410598034 824117989 188282965 211200221 275250216 246064684 943331269 723260289 178461145 285493908 817989265 899141295 871035279 600454250 687033519 827410625 51776852 755844733 761812293 612705635 419436918 798340415 73129698 767819912 306023198 206495110 657885486 449283482 676208331 686747345 800937464 10297722 916323271 244341774 191098961 52218662 961194103 925192535 736853620 210531339 888708511 938072916 770956632 8290016 170115572 634830007 983767910 703139549 713854420 414346181 42123948 133741957 935689565 991167506 350338776 259732562 304139144 67140525 183851625 738955942 693916819 590752551 263079125 711994548 533683472 39814480 824127373 105479329 363201117 550199201 246083103 544283448 249218677 268117101 620097644 492164946 605257698 112861699 73373907 428765335 646129178 314311028 68190660 857873106 715427390 339354075 572480651 59835618 319431776 565836318 31564980 194618739 158319854 44452587 713251556 419962012 902901183 910028462 332203953 707576615 20670508 73422400 298751272 738628316 318577762 736853499 192542397 275470019 239559717 940709819 509110577 483473050 18574313 853610834 989146649 611761218 432630931 649126506 29651023 582806478 467569161 794022585 365723655 2451016 68992726 776203971 849026791 415362946 654306953 91087221 155255739 891564755 430141185 223818101 180710629 415058773 895055415 641817907 589963322 984393473 43716932 839123344 288651610 72359 618453158 848203412 134418026 660407075 42279332 680317462 503874516 158083148 777832804 314955778 124140420 990252076 784202241 824195090 888408187 853441510 659113924 472862707 950691834 4409258 277505580 349216953 911095803 95681183 388158018 883270254 630065920 221129216 245408136 379754765 318856783 49447050 530704561 279361431 50096613 335234200 276033807 407621365 221788024 836599046 253173196 40619337 988897587 641603370 380786204 358738097 858715745 143888367 440345777 437939738 97940133 54725149 498896155 25568329 300929649 642715822 751507808 762982123 695287034 341609244 441501078 226119819 99589238 935318924 57967899 370436074 2138348 486281517 408128152 65399741 869731311 348244799 617899761 548855857 171137142 725446713 10852778 518272905 95334155 137323338 608198475 809366681 233429954 38823366 846403923 714727358 939335359 859093710 621405508 205619921 148870795 185271855 714069818 261735711 81331990 873355214 241902064 793273841 365013881 693479007 374948226 867807163 214770404 212327185 840591275 43358496 646293793 671287290 590480857 390853751 709208507 490333137 517892340 599514594 506176486 661176259 509390129 662354851 18610478 427793407 387932066 124325562 410956010 874435867 68159660 511324529 610945698 535003418 142964897 925485712 493557841 620598966 716655638 465434800 131494571 645027503 369714992 938350704 538250866 717615481 729065900 250386044 747544192 684603502 434322339 82871910 977441089 687763415 613191607 665088241 275820815 685869224 553346740 63441743 434770168 680147462 419240420 202401090 536364254 725324400 360462926 116788692 690858309 265115319 494462670 480032065 933877672 456764771 705937728 705915877 834929095 560095235 841335646 368254009 208280265 790526034 232635079 626293539 765482683 351198298 175924171 429021169 93307854 667318948 404272408 466788354 130224857 874492367 246084165 351887423 211932693 789590833 167189935 760831665 498227148 26670123 601188697 40442261 471380543 800033628 124420681 973944773 170788526 874130323 438381916 835600983 968562657 949595823 427239557 722865085 207093395 149767894 510588105 29951654 227130276 137483507 686844099 277654538 721485565 957297211 705611062 579349787 304785512 302174100 45133411 705613169 928934329 190865959 132495088 539052141 175230396 341003223 647716688 572326676 100627334 560733974 142435314 637896728 116498239 4149491 523388048 678288116 645138986 731249298 550854154 148868149 534171362 485052484 131886903 150492049 651651572 171035276 50450202 5018112 979396115 625410706 887651368 876825491 351534423 675163291 168526646 625858232 419218174 375253155 808429960 52212790 874759050 981905023 435002243 176888654 148247364 492519782 868678756 49439322 65463277 581051762 155537897 281329755 450307792 7394291 994820729 986861828 212149043 91701369 646878412 933341818 519426598 542801522 50280862 579329929 977005827 894761743 491904636 165300813 12110074 122183080 873415007 574257104 315819593 825562585 870798481 623836228 573968920 908768669 970534485 45911320 535840331 188387428 838705251 597473741 412040952 502448174 722299284 905743509 658297229 926498888 383733559 603721861 667015069 788131462 619628163 544481658 36373406 427344435 894820200 878923475 443990739 549627587 511420425 308702559 464032560 549199302 664089362 428952568 177677760 696759430 292581395 875664855 229588396 544101023 233436160 274475825 450466219 295264142 209746865 535445926 845290386 630406797 915016481 765317475 764743975 806556135 194230661 328588621 486407479 46471964 767978846 304242355 305290064 978795726 302447476 338710422 162574203 46469217 74795140 254715599 676782596 60336463 438130122 606527497 314541977 876739664 844978020 627560648 881426198 253222645 368282310 787898187 28970036 717599372 986640161 818095962 522242025 51204655 837878859 534310010 961416879 609507026 267507814 892482042 510593545 633051998 23687974 376984417 147504112 545099300 31434790 179224995 545920602 281566202 639047759 838851808 268861099 25433158 982468164 212250014 631592736 657335929 650126540 917099702 859165712 931451466 339428311 563317872 958969640 869455152 652177645 259861096 52872333 159325097 778554933 112945393 32120024 684370224 41181826 568417632 533549562 278384268 418467568 242757963 969575568 196784909 227669632 427117475 870158290 25487716 175286599 308941751 373350732 592777648 881242462 693789356 922907743 282437797 39999437 669467141 343786477 60357147 533591958 158263359 981820691 548221589 380474953 411392453 929861843 333707776 924143580 228238847 67321420 272521585 838848376 665766549 510506042 141873478 239802255 729438979 53408463 773367891 753954265 934287729 2693278 78719445 384730680 545709707 851947420 744339879 411284728 500961019 149348385 495762234 597935524 123255627 1790200 547006939 946880284 564207786 933627937 322960298 93656362 431371476 966806307 535715318 276583949 117342277 140651237 238237323 686194005 96493599 872161912 364273141 572552962 298633300 977584846 82857458 304421268 852257221 830449910 333518575 193188861 853128203 800411748 879043713 396536018 767949197 396208282 410639075 203750330 27480020 698712787 611167853 972771810 531965506 443280562 956796788 989561027 531511120 701909628 751834672 514182239 702764419 50064954 629291695 230638404 764422288 499078790 149695677 680519977 788958098 717557721 907836754 708057283 242503087 667890717 937550656 872830100 907023424 438356626 465353484 442147055 86291883 585795497 813326541 5622577 959224139 394666589 736579752 81365102 796205614 342827893 897763897 905709358 444379816 533278058 964189729 298108744 283274429 994463010 595878250 50084929 507616972 84707243 598474932 488298280 209827717 604412572 866058568 125926002 361801302 3134450 795401612 403110545 9666736 194259832 467257900 197826402 51672006 920889920 999110547 187026179 20497099 699007068 440557884 416360496 117928763 500691968 888827696 460455605 639708570 684086881 947850311 209185859 135087824 971018501 306065833 40141760 755418144 846260924 318909962 310979768 372508821 264868347 306003095 801341376 667509376 335211028 134337376 968472216 66153276 172236171 174036287 258116556 700363197 472981906 340781296 614228592 493719801 87057189 270168171 944595064 867527906 399755792 707479727 615029974 117000693 664315290 651058647 536669728 634031190 582549476 540564882 53377043 415189677 67550716 382760466 319542989 593787883 667288833 119333052 194501771 69032670 741099040 521149997 221244745 37678075 426859954 273274551 56042454 561016900 773546768 2282672 59104301 512090391 567691238 162398194 28281832 569787759 198882866 77237388 617808543 115593761 960965650 315593403 229696943 940015208 171005077 722033167 767429836 562839345 670862465 239350523 78225737 956663989 358200798 324653193 72524082 979936004 729635966 795744168 332976242 577873551 120917260 96232506 255220608 554930523 165270440 246177165 119758297 301380701 77064008 788629076 635810837 232694021 229639696 852731240 876365208 561451008 128126857 755108171 412548218 759847186 234972341 773587893 656112431 449641491 191949175 394829533 791075082 225520032 325039920 640215059 123760102 773855278 619017388 455679694 211218207 581971238 743099112 284048316 500695252 599574834 385382663 433045547 915631237 712161436 434399066 844601664 863819142 929993637 30812858 107587348 535661625 760228101 867394114 99573592 348390251 39378780 859198463 113578191 377970198 250311435 150526723 86351841 469187863 991385641 51182065 777365090 405413460 829233195 601606092 430364307 882309678 836352115 683070795 449317607 101003172 400875909 409364859 49247368 869499973 598955103 460264168 501013120 166827638 712074031 376027709 868568390 846993624 77250272 404954836 996943376 75366898 630497922 802754213 160056139 275757962 392319643 623101918 174048156 998636651 171949932 305349295 989929738 891799163 92803809 71944120 101665896 341054888 911497959 136384277 757267980 476943996 590099930 180492709 213251298 915736867 107650409 80556932 767258359 480772690 56157546 959661157 628893642 208348906 252150441 950971711 680170064 864783095 984606996 778074507 750812671 466402390 725927997 33448147 731034474 917317023 481802097 383039142 220901832 177807821 664453846 886336029 881258227 10686239 992457526 913801560 116648127 721961361 474749827 4462091 701743169 841398003 428347943 788172288 527757647 631800921 575324951 333849696 303755358 911947850 732505152 502141674 276503104 712213406 992225039 892138074 33480760 590644471 410308294 311570337 964976615 580257906 128196335 426633174 591254922 685204024 963322107 991122692 952894487 880166419 537313850 343044033 179320372 400524283 233471415 917051404 586671952 2429995 983317072 273288883 682253275 920619900 900372743 875962414 675528897 699750582 994937226 178728536 393192559 186411769 880876743 795232471 993449706 898884304 459061059 650174629 339494792 596494830 659976845 389116653 36207451 77048556 154295033 481946636 207604154 611292814 591780021 114067480 231677087 306580047 388390470 527990430 687719366 76946684 123711307 248344426 915209242 926239516 502541461 259263457 607852853 231949937 350065803 796618007 949866042 541003450 38418580 655235095 255067053 970673382 381607384 332935484 752978153 228628810 291363388 102102367 500227215 789369161 568504462 355668080 482187985 706828628 98883172 141668039 484950179 72363322 738067084 115393638 297379573 321322435 566644317 265502315 289102746 630967223 140191649 755104260 628868213 811526250 544236160 735719991 472109307 397085454 524593354 547593071 407004492 250715824 41665937 341009478 958329658 481242263 349785855 287461444 29908740 14919879 904705509 8183633 420853303 139462659 778452685 441915652 225527622 318956688 243680538 341488355 643781682 888011924 197608476 270594892 796919737 763597112 820772632 723359788 263582605 314858104 561014503 933031007 485338885 339560240 124165610 943086559 680266122 211408851 248495575 274105698 177013942 698018689 883981110 198093053 260610634 521850184 732315253 642564065 144891385 768066094 410553197 507333457 32655044 218850145 115758146 35877633 451921750 99522945 325856793 970413069 894470562 825366427 969567929 81458740 205184962 804329142 330272528 453296618 770663781 892104384 667550927 341681235 103031664 528597710 829031744 957694633 891302035 959970663 910236733 743484613 242523279 901768818 406031164 231490742 235503221 549450243 874864521 24651411 194260999 514174876 127280627 453741828 405872145 157632258 963839243 683185811 408067436 903546566 272928093 100631990 457432683 100051727 965255412 159760882 478023724 762187273 192894937 751827188 3906794 984896956 10860160 700195966 931366314 863834742 106082420 91613439 504032545 562347870 670066842 657164676 193822356 329186754 365841827 541331757 661654101 929665409 296482894 434263368 14938974 67239428 893734783 800248084 356705397 21877749 898939655 697695298 314112361 389598425 60551815 952114085 589060916 341272153 821624701 849967510 363634302 175865486 845551733 163749564 650704199 324600313 685535998 248011029 851017360 568012830 413810759 595257701 101950437 50649011 117724588 622460577 545454834 256007069 208205508 291074416 143632044 502422074 576903683 864649878 429077369 878775667 928872428 995363760 152378274 640342714 785379315 723102447 578251585 627969850 409359126 808302722 141747199 529246022 946572408 279866434 94700495 153462405 436238162 705892108 871918289 641611735 74046208 582523134 342155105 904880358 27976104 499775281 498847675 899279468 524304669 306783945 646008943 890275074 520628605 420219397 719749035 711345859 553270301 22762026 946501314 265003123 542569445 313253036 79914861 76919828 478662601 712825686 122808869 230724372 230615725 432856958 976339755 334404484 286174500 589618891 872611234 728678253 120516111 90893737 388618418 623168236 535940515 843254757 502812970 475725576 330715081 142171675 787835475 819558888 430876468 760560812 610875396 901667183 863000323 251208148 427514628 468965205 963301826 496843849 514230657 777325464 642871929 66166795 443540841 15769656 258504303 267140452 920419071 216647270 111427056 559928617 13884455 881473818 36672577 110940186 435367367 263976370 936262588 966196409 373847497 380435835 611452250 911043912 132964624 807384910 845378510 231554593 499033867 287565417 522202618 805608522 307504390 737357825 615207799 236668966 524327128 807394904 371512115 778277515 577864062 110495280 310799000 6383376 38241050 645615938 384557158 989502875 941980472 52756076 921754058 790910186 715742349 560830511 150934406 713400946 823939235 151150811 90715384 36362834 858113076 471370526 966658106 629016332 232732068 235243353 700928912 158418708 294403957 295823430 305468796 373690353 372422801 742225465 213041651 698145795 395910153 412505679 805428818 70967877 259591943 508935129 774579524 802395685 491781293 946295835 914902332 952983439 482939745 927413255 389064815 388211392 300978489 210456154 118426760 493954502 771921613 282494591 680500703 39357265 871026530 472861936 19396837 924939987 281180539 200048947 130588258 949400392 143392700 770175912 826162594 609892009 202857279 438549311 495287073 334705736 449186551 261219299 904659464 400984097 573683698 807371167 677786808 2361201 997114302 980818948 409109668 956943492 101958591 589825846 432350733 933630622 369745712 742626399 864369969 972977749 948545515 328130020 336565162 645749082 46702706 968943674 50568479 500168721 104208471 623848737 54408163 698347505 942830266 593810265 938287759 393957878 539814073 794418374 873440608 620951123 965387125 840368430 373872996 560296533 60963403 434061986 253534820 605707186 964322928 676567919 185530353 265917269 313453427 326345029 648457175 162551011 271858514 483077734 443887486 220565519 632606470 909273239 961216550 228093524 806938462 519509031 204496386 766135469 301390695 636637847 186535500 807789225 736214623 921205422 631722923 984154856 635305883 888122782 811494316 345829093 614992975 997897006 155267594 551394662 914626557 394006792 488590504 538840202 33367728 471725192 984096387 783971540 488627781 264971314 840840975 591794377 11726550 851421837 897446051 828648081 458512911 590597405 825705421 32676215 249105727 355546615 309916274 303537982 269749063 917268589 446509221 110929700 299662413 602591116 343956432 839543033 389866064 762623968 413157229 502186817 938134832 121492587 986358765 13247561 832046849 796349054 484215046 829826591 721233890 593102681 385903292 865506660 904875656 200195031 245135507 658909597 186800714 156879150 477389242 28754110 156871075 130036371 111780283 915682006 612770421 272213545 66556245 692486620 308003799 326401591 563288308 95567666 186384078 55898998 495304162 507152022 646040461 541678257 491055473 138731901 992029992 430657621 757164793 535940026 398431566 278563825 998986630 289964487 718962985 731747587 111713680 597653138 64458128 852455655 615187806 740214008 666510414 165119981 809575977 65149598 34510852 463013076 481985868 348212949 80080334 561245780 744160478 520109597 299590762 390992816 361476898 301025565 187863303 262152415 647059973 701439226 722060891 168984688 506208664 59220216 661377315 558396298 787663946 444704 314030827 255145922 280166757 673705353 976638895 918103997 460814574 694629870 922201323 251658043 762471830 768626664 182494714 171507705 769013987 918858653 829126230 975021908 938263911 377255498 919180353 345530455 120177290 163796672 337768706 79130958 599711534 355986786 809079691 146034768 587426141 664183442 201597551 844016399 441826579 809042860 26596107 979346556 645916641 386988401 544712572 870508240 911437648 712595874 705491246 148083225 580223741 380414137 31625776 88166315 871838408 481318192 885213617 916649012 994641752 245754891 736823594 641649221 387807262 15436796 226302098 661937902 19469216 647120046 21940898 270187327 853239237 311008022 52892253 749915618 497862258 821059101 257252039 727179827 805013896 198142876 626234139 436645419 883968789 542920568 700181143 457727698 428998220 78402316 76066433 506302553 104840220 891969770 673360263 339621153 75053154 195785742 403101202 14822845 547236083 508292954 745365172 921266116 761405912 450992091 825080813 191418275 637918760 106545691 131724307 42204989 881968783 711321125 659636191 621495329 974582560 255273515 867069610 33651370 681939457 879255220 352479383 677913096 84663183 608466283 748252518 496065358 697089428 646641107 809019739 637910277 770558656 371983243 118587460 389662661 542057138 352494647 65939733 825155853 361864840 263792563 248794766 683446502 253037612 931794175 516345862 50960738 517608083 703992458 801631642 681739648 297279584 511048523 767591155 848173096 969329490 128580713 344970495 461217977 217259635 655228531 451786033 153561475 607279827 657101115 133689398 375752056 332355003 821657330 793042048 437873361 848099876 467992927 340855 114838715 915562470 603336441 279892900 754911391 839392892 142801326 160854585 704445803 717201186 417045014 819409394 240080862 498099889 629806741 492526169 753767189 17507350 68396837 401136905 538476224 234016967 209676505 624302737 885146849 443303446 981675093 381347177 780660273 212550875 446452751 716358314 832250114 343248182 674092551 860739053 743022133 122278249 633097008 312901733 404501562 169652730 729951944 565653482 563044914 30217008 961849979 354721331 129476717 767555772 328727757 31482254 93130030 901198038 124189842 246652931 704215342 830498202 516477416 157000643 921403472 667708198 587917179 9407087 886753593 200287218 727248490 491432740 206866635 458024016 612573688 773528397 910151187 388171357 779362853 67969585 248837237 818308852 627281613 325851597 571568431 214001892 237910145 828312345 752961972 251224662 180351861 213331667 682945795 161911831 479527485 155650661 183560623 37675822 534048997 926804601 216312602 268002476 94203010 719305480 546635048 385990745 723586979 103928711 303362117 106157191 264348141 450276431 124818781 697443878 47447277 665091336 762513698 886195026 703628841 990697081 388839140 192512869 350756321 896424588 660472283 89128985 128602667 333613204 751989132 88706489 743065143 846705177 662209748 477375421 784398343 890003375 34474761 17358695 958690467 998298180 731975731 898424257 943387957 909680377 211367278 173746222 41832550 376722060 405667920 442728930 881609438 184887873 942175266 788776304 662508412 454654242 265499218 659288420 943904640 152541593 837039487 277647509 907175717 445184448 821365914 137895769 951392917 273672481 83909692 73437821 564708049 949882127 818361817 555265819 41048004 516920223 972372274 76816896 773118233 392583758 433500806 999851152 549994720 701880576 111436348 432214093 868343034 613595346 997182242 61825729 192432201 801838623 34156579 265342068 370944071 286817486 583553418 781979363 543762875 499413463 128728134 168451332 327386175 627230088 620328089 601515020 810726866 443268379 346658778 158585464 631795043 422138039 406232342 648688816 748313617 814680377 658156363 102252986 741547205 346631374 712233922 821825749 85573165 726519294 564305092 689748988 93582937 494467417 958769396 582674769 378500497 793879987 424313624 324964081 269542075 124932814 468856801 848964270 861017618 526671486 891359894 983781049 988106598 527293912 793696033 735875401 186322014 165055080 348625796 171882515 512955275 607664334 416169876 276034224 970845355 648737431 332144453 415061567 471896120 301431661 730104747 833431713 154352005 631947003 830214207 856217393 922329797 558525981 359689140 384543293 843155770 783746611 880067365 45807205 726157300 120460262 719494677 339534301 424066216 250999954 183324211 565440093 333162608 68217273 162693599 193142183 832538211 249192130 538663359 689164242 405861217 959477879 162746273 755106195 581694279 401643984 367834816 736004609 717766961 587193727 405107 703498820 75676661 425951307 685860121 95745572 253955893 144853004 373941010 372141521 162699921 637154134 118740783 564006991 864983430 403928238 631425378 105288558 356571746 207125914 741867190 722261792 749293842 415947259 781079188 983757779 780930208 660730045 787395503 963190160 191875673 131936866 175312566 662091847 568038121 560652816 230448988 594571760 610985714 139027190 471012698 266541598 318816489 116949324 62592680 523199410 278838972 155457319 284741036 624502626 89692922 435277055 869951332 205976710 578435245 875180227 667087787 655171933 921133743 559448038 804334259 342773972 838225939 257976170 759460583 198378435 568502647 778635579 849619915 306505133 775120614 890441837 501933201 183434208 767583989 900728039 284271640 860266525 990676693 475551302 766761054 594013676 426067626 679828797 682212134 482698093 406629010 530622578 154734492 154528650 854697674 377406428 445249828 599440284 155552949 708794219 186899380 161751991 331532291 545189451 381256489 517867489 810111058 870866818 603526952 893972173 964540227 682856373 212760498 956464170 513980312 547082558 949884271 463715185 885696742 645983489 645853259 117725149 798489514 269677112 562835081 363063573 888003314 368114014 992140021 846765140 216077330 735915287 682166366 657569827 855410794 737980351 641675843 972659992 68510124 367443405 438565466 942258359 695075281 848781262 340352032 856492776 657425375 908381687 832151971 366626559 804960157 243853176 138850690 628471484 98684137 641922674 320267119 756896040 351138975 713298909 282894401 84577193 430843821 760108583 24351673 436163336 778955913 646692309 721930725 375781696 293377896 561357520 121372117 75650985 733945846 258370351 61623402 559299460 630708301 680743648 570954468 331912742 835410950 714902133 926634399 536540297 928902922 806196792 788201523 703728837 286627522 986619532 446539021 34563381 279439649 37071804 861102550 60411069 748393937 840257859 912889444 408359955 326181660 347223081 278373306 466451914 394384196 522960334 719257885 140557369 886633739 341935254 282107385 664829881 735218314 256622180 436428967 571632425 73168579 154822300 503919813 236099054 364213004 368160063 424803622 892263945 106651223 553048384 102285753 918749259 564090284 734847952 851507437 424734879 65523602 229120506 993621355 512667342 190681363 401098502 526755262 281708698 106194045 365470501 809843732 81381263 105175483 452907487 285833219 238176396 88067715 638964316 484920665 874449257 934881949 368487247 516376065 964396024 516408341 313340531 577752941 298335181 592831589 110861991 395883025 744657570 639465018 265113286 152086518 60327556 162946828 720627870 418688788 108679150 946321791 565146141 551204908 386567462 199963369 376563885 444650119 256963116 934001707 161016695 729655539 864173184 82912438 727672842 93000239 185387451 436662556 833155567 225673284 435146615 40483057 201895457 311189176 639086192 934383818 880223711 149551861 136942916 789719710 871586564 149428959 753847548 537655805 542774620 315157717 324221985 102972428 10033240 8370798 292526557 671734227 313763988 472533177 282299276 549909621 28480486 887526855 421474090 953296183 476536338 633958170 149832268 952450584 736738822 66383451 972249572 435489030 75273849 41944717 831419127 785748857 889336495 694837589 471668531 897269870 943307115 404675448 553266819 227963916 638377422 483322085 860122032 28379132 537044739 959038646 145217912 785031240 111810115 313570579 239935940 283580617 74892707 7596602 79863021 61063147 426863735 299944672 339335298 669407579 982752332 389509234 187481532 559973424 599426606 565901317 705972154 232927201 768591932 598807933 132193564 977379101 469437703 616808467 202090539 754866102 544327847 711091172 900575844 253459558 976353578 180293971 838802762 245266819 729680828 55116014 704053152 18836914 854243821 96236902 660724139 309155527 93988545 295058106 723365648 563289456 107999285 665875763 717559709 498765923 452563303 597318317 487985038 634009260 896750747 986109150 513031262 340644999 16079875 101337270 553234404 712835289 786012168 182242055 938635024 412544930 983576057 168614209 17741754 61691057 780132314 346492403 749540968 725765026 157452620 599835909 214540502 975231710 514763449 579341564 98018446 350299982 246317583 546909991 781823870 262972006 95502675 756390027 251539565 733248062 50800554 608694718 404007383 853388399 16279127 427408326 89580696 838355924 916982556 448874405 71951607 776414029 847466929 88382635 568540428 134021503 943557022 611534728 680285148 392339502 468537926 195054340 811478607 578709715 308309334 597508096 988117418 241042921 568482959 655568412 30286628 855001190 106679313 993510220 335406208 582266752 180750369 664921114 555769457 96133365 496489912 979246555 594434054 945430798 382575433 141942746 490938413 597691910 393273321 833203585 606078599 943166874 356633557 580469053 139418951 613355859 62781158 495720124 686139239 737824866 334607759 567916461 654324234 74970109 189661243 870517591 73296577 235935321 763498741 45138150 991472146 850809155 401638774 741820283 15387806 177764424 755066284 602213576 927722909 288718994 590565739 713233333 991977993 577783196 665661176 49550820 609868061 885298145 346238152 477165337 258668732 540545834 410354880 62117368 655148790 324164170 20616218 810538654 100319782 565526220 766558098 286751611 577206909 489524292 780849668 904788897 283402317 2034903 975722123 968612172 916864959 577629419 859128636 496975674 183300631 916435680 434866976 625041550 7188629 476864715 83209479 659393409 436292325 286994147 868474111 723950758 298357600 420103075 797664754 390063974 957268683 988845104 270466210 622601205 274784026 919458329 17180680 946323711 157977505 446159276 537322206 678633423 220868767 871275145 729951238 375361963 526551175 264686126 996714437 727235230 58590278 41657472 45231633 20030723 922637737 575278698 641950540 162597710 591927874 567213394 30134882 510673255 436515165 45609999 388338150 436248881 876719648 107086732 487696135 620169942 581343964 341719847 381709955 243728170 33208047 554639766 326763835 808352350 790114160 763448039 526673883 803255269 227282151 975032993 16067984 882481108 418513644 19848184 653559605 515034989 843050749 131668306 278656137 838200325 802695702 783678240 34939063 169573472 919522272 17172200 164896539 805186746 484791200 256712933 130425460 326851085 656054806 817262708 571926980 796235438 726725604 730137268 949247801 793012736 441540770 251546532 317849018 732078491 868372898 811996813 780848710 847855846 132963594 571443985 473196372 582272846 529862187 363983748 411164622 543970339 378269375 67525489 74182535 412693520 852022413 694261451 801216022 513052526 220273138 661634005 184578754 85491774 854047681 367397174 821376219 35627232 144990072 294444311 137229401 106184345 441459372 563070484 658622652 58666280 93339727 604226503 104616211 211304696 310013431 542249685 15010678 521819418 674955698 542971615 633412293 42350596 611823645 289959754 203330499 973125615 354473537 722636259 173743651 367545300 220384682 781778265 400761213 70099418 340821901 738884619 655028235 68390715 941641925 903034577 935983743 11003282 727049128 645598330 209798972 151709150 793027686 475428023 69610426 956968119 640188404 765658433 484715689 340588347 183370251 639337630 370188770 984439963 677769599 571511934 135247266 300211015 326405887 738691451 575551694 942057364 383301110 944929550 984254033 645952046 115505608 206223616 671465043 729309913 514195795 897489304 256730671 356160640 361984978 174670366 990882612 266039831 694261687 800844620 817710485 533709527 562352212 883544170 135312941 250279381 823550089 285775895 439948140 424500904 154246276 481793466 594637114 713080158 424270746 438686527 270905438 448447058 603908321 263058051 615064094 699029891 301494965 17148237 695575612 956197447 625823942 347227288 420504004 662913345 759281802 122778171 513233031 140223385 356918820 526179124 64739613 762848269 607590459 6089176 272386984 372321099 156930362 638658390 55340893 376272753 732918438 525184973 163626337 144424456 131849431 139106781 221762620 268607327 390291078 259499630 52961101 467887654 411543137 59676548 752178794 198572474 423279810 802108303 885002775 968452033 282370295 791278552 785487147 829324219 706782330 702655813 283026039 943229220 667684211 621751203 772820567 4449210 63363193 315747138 891473079 790060874 11409803 889189695 733686571 704289009 664132063 613745685 438830837 42224058 511391734 557979342 859707504 287262662 218825835 170241602 487179934 226165376 618519590 12810811 107158381 211669170 485031087 658749027 963536582 577496610 115407385 504792994 541039042 956482985 811627666 242303391 526272713 913556524 875004144 648962521 602738339 609737495 2132455 606285175 525594142 551625313 519424898 260139560 907199456 560247968 965795123 30460952 598858485 968537669 192799364 800222959 65495072 973233888 72524348 547407173 879116909 870133952 979844442 214562787 777635524 489086318 830973355 761408472 202461042 161114341 741414392 930731495 88228142 32977149 224971333 615147778 209980636 696751109 941475145 371136339 944993598 502081643 43763550 46034035 74048772 481505403 751354288 211105106 167220671 5063465 606066721 507271498 295198323 962226360 631260524 959896692 12747246 842445718 626840227 454973933 288155940 306244884 61070330 978844504 294433908 647499636 686431968 353691689 306784307 789355416 506613612 451882204 417654543 544701748 287290910 829797307 665413920 389206474 320321042 944950948 590306222 773731942 176756371 917587786 696073888 970451630 585858427 658331969 443542970 969222273 154050014 99747650 726122450 803238497 537149295 264825740 683374774 801697346 879726570 943331935 370189799 116135796 497524094 383120521 643922280 931710301 292418646 481283681 761491147 193071198 841939398 836161456 104502061 169617763 155235646 698787832 118833316 725327438 781659722 664307448 752810931 343702615 299635432 770100839 457570660 31937900 161851793 495795284 407621264 491144056 890263478 237660545 245605031 746422933 491616810 48232236 349120622 322028569 441721269 758187038 711106712 73067177 830625285 776414409 118647415 676576387 484596852 367814327 220042427 951114224 16914623 802192938 566047695 290473333 733758192 680056500 314455781 325770686 802122780 699178674 572204599 437091528 460398875 940280105 110381625 925078849 613430315 562603774 107991209 615296535 338880047 386653534 534396532 950423175 306110897 768778134 444251796 969471447 865600831 505513346 377713931 709072424 426806932 47434696 81567667 537737931 519514370 701709296 187758777 834372603 164387999 403126350 539348223 334153180 51628759 450172124 258278387 230893676 52982790 341354415 722680699 9141116 117202807 176564900 813341476 409216044 238986695 418421168 123421026 933822322 260465119 534838546 946451259 219756771 171146673 5412823 282137654 415370174 961916559 601807381 579935778 205775213 178205301 36706804 650017929 527918386 900510033 237805249 629220998 1539862 359779407 437364380 81831178 714856985 798509673 65182490 211671681 676598075 474625648 380327051 205679021 109191223 668958447 514788219 29254587 917730700 145697007 745176662 49672065 903196442 710470480 457840002 105450625 636223254 3745499 161485886 554133829 378401682 230787057 32248796 275348861 974356070 3127786 774577634 939039181 959744597 308072640 935829274 145514758 949287490 924821935 780256856 229783400 914356094 678795969 735674819 357278972 583415780 229671367 923935034 755615613 81722715 849887757 212661020 646336140 589643211 828929300 564834751 11333014 912054048 679928702 236362238 268836529 850809321 556484672 721033740 22450882 415482153 325522628 245981815 258716973 416714918 609059032 750317097 277332957 529985200 695004202 424035880 359194852 106030701 219794458 655125417 430161217 733701025 683850666 505976874 611560184 905008037 261574831 912994997 750447109 625884069 240995693 758685981 496624736 21181971 548555249 715136669 669476687 729598290 33228078 238399232 140106907 735991681 711394476 577288716 214143325 610519353 408772692 834984657 104132006 600506375 511147159 822815083 878577989 985002200 316836807 34336632 405967590 148908148 547395416 267008334 881856546 563523001 598270006 986607856 118766729 743132688 115046008 292159279 110622563 628800314 994090555 962326422 334721993 9554510 431524199 713217125 468057332 404798268 364860311 621300572 69757538 97235920 26520690 569554468 371120317 285324491 228073393 207076501 431907151 31137538 273963559 881183593 764181619 91527097 599043833 705578581 700023690 728215664 650402855 759530860 225637464 477052442 935371248 33964171 498068887 957441350 281347657 858050283 375007588 544067793 513618053 369794461 734304931 350675932 626678415 303544986 888240163 697033062 520009668 983845453 694631001 345763303 717695388 303411546 447691994 56542587 628966222 25168266 532855789 726529882 678790379 668948437 539958011 646120350 711525035 958711172 125223089 12538597 991131578 945965731 418030254 329521415 313174605 254566950 738571608 867234386 731566882 96815239 982330816 405085173 484374400 56070152 600793034 843105334 965658198 773437855 812585740 467507231 48270880 387411594 118028076 276855753 644159244 222339217 54906207 36985782 909953121 322126614 119926808 311375640 992335318 954299845 968850238 556655696 282944497 874996439 941372768 965386276 457420733 829471727 693962073 508454323 916309591 896659966 493644410 791992287 413604585 422893336 815164236 789457353 829109398 618685190 781838840 147575196 36152205 777606896 783023283 450988636 575134936 942257633 467046759 227300993 436341264 179009672 392316196 802228895 708533043 266624480 444593021 390783511 800678236 376581511 37508041 260206657 446520568 817002069 510470900 78981297 613840961 90487740 491846221 926253186 143547503 663189052 7238778 50462353 89757252 846138667 398405107 67124101 364556948 913433421 500219902 986046628 438122566 75097385 954047686 834007072 853811420 415019584 168788707 682614733 598596696 876749846 572576533 532150690 343861912 145530190 85092931 21026711 415489451 1520675 931514717 157736386 529177790 906977470 605207896 982748111 756769687 329515319 341302900 227410444 856229890 500716185 931568547 161575897 780598440 890418669 544287922 332388620 915856475 32027479 498565515 853459659 491481213 364176462 393915082 309439830 441018146 293828771 333302000 81075739 744004847 875847332 426613770 998028552 145340919 95041163 843292080 131121080 857588231 960329129 75178 630318958 223372601 578915197 143525927 905803050 908866476 123557199 698837073 774091273 162483422 71541949 742992965 939875082 427916853 567185187 107071717 695534114 898222460 737546054 343200189 286045671 506684658 329147505 287896413 637649831 122139710 84440054 371272222 872687400 719013803 619182765 810214839 195552216 261460326 504621979 248264090 229024819 138662787 161288047 488320866 844270435 446757628 527080232 595366216 720099002 272995603 137133420 391230331 417046726 858853161 868641049 660294983 643731731 350957000 768318169 828603845 947060998 190340881 965848 275786701 343592488 934915632 700088837 776991723 874527506 527948178 434132389 405530569 967095442 710286735 470125826 491242224 411788718 423378345 230993692 695665622 609925860 209709204 561393333 553356141 341145049 555696920 77203069 284035182 65294739 499883678 400961323 601168155 201376523 375768448 284631357 131366382 498868603 686527106 130687572 180586392 283897488 516021155 641709169 55520588 59297644 697950717 646861167 456688724 536549667 758056257 523647969 793699334 94221328 660617441 75251796 925117220 906014795 356555264 827580956 427273052 891127123 760975660 102811047 866547704 70839936 668396146 942074814 780083616 37686428 736766626 140139063 419198922 435840347 238298214 612433324 273454519 859607862 344589290 389846743 667741846 796860735 561040626 291346638 924444961 178519081 120751211 358614466 131940306 669042921 359510794 59305081 469238583 370153071 231382037 499993911 227968674 129061889 842623475 359552981 20519828 493285206 104803683 247229718 539435069 893604647 325487509 512218797 38872312 279564689 835548541 316679375 967029782 579233095 714686427 565884631 450618709 759147343 629789170 762653054 820272637 168860075 96549095 195739137 411839681 43353515 593558907 384004278 319529969 901466856 823227314 490942628 41060002 839068870 432559912 539168744 525497811 230741595 348682510 406916455 34087062 997393640 23546195 719092319 364791448 567610897 364354478 103074774 136129906 657009072 315062224 79015560 76611033 109088676 818598117 238576868 793274298 660460661 506326936 907623857 496602180 296420639 726200456 716973034 70777445 881196754 201342207 676970162 39020831 259452349 439047614 143347956 398028638 96345475 481897468 238947975 449226115 721997520 42594902 703711393 8763975 147555779 813755097 538399463 837893696 236133838 247172398 393022928 729781022 793377305 944356020 33924438 846285610 431750709 913209785 266149540 593359376 637622093 104856611 759027839 959644249 561491630 839279763 171557474 232123844 438329481 695552369 701516897 490043264 274058872 301861863 648199358 975441559 861994815 563084769 689967405 241979533 526510545 171756530 142236995 158473660 585228498 712587362 568284983 801086567 917608971 692078586 626838774 9109115 36907965 602895576 219100176 207840486 949558673 477001541 516810029 319320951 448290990 936870407 998843442 344368742 608003156 882284243 975079321 507584791 98758521 625049400 272211126 387025732 72171504 944365815 713153471 43230710 49481922 874486758 815911179 163094925 483346134 378064219 498813839 813273228 395682105 193006459 196052629 594123222 375595568 850573911 585445828 725885622 44534883 934780399 318197730 815789373 135821221 297933484 862538656 297951230 397744008 434554344 441278908 136284582 840711393 278582791 359249630 502334550 431486479 867100725 822392027 211110214 300431492 560762923 565346474 215419285 877470085 464439202 879195651 869639224 482136763 401074832 172199213 305297287 119314059 192124168 521461816 979177793 654344872 974671513 156013821 266162328 713539207 172459141 189330933 65303937 441332363 95993077 877281713 458598314 870253527 268098644 959401773 338273320 610022090 67188951 686088853 22450007 838454491 983478574 498261515 950205655 40182387 161974795 411191308 275137725 117659290 835635598 110997732 402698375 353326860 196258753 22908244 807690964 953266734 947796456 320395918 312163514 614877817 986598568 436437439 898405387 387131297 670499943 277216101 87465907 948507964 369587753 540878538 404766242 324526158 608690207 286718611 858146153 513223421 719330131 136078120 752242192 231478396 628864691 406067326 90151361 968150532 851816740 212658954 378620629 925489320 180474424 412682287 482647919 916692530 520067341 221373582 148481448 53121265 358530747 143442338 154017740 620391788 435296752 294430781 637228387 320968868 280309562 703642897 192378578 440555658 772388924 272622607 607722983 46943168 980051449 561348424 907623099 220068087 334018113 466404021 425451883 760576205 855422997 137168661 887289795 23682347 851131706 449041511 237700116 701996858 789342720 614158048 569868441 754143192 188274319 381798764 244181021 453246000 849282736 560923019 363528259 553796664 735682602 717358139 544929429 38988734 600821653 436471954 43451268 197928150 414227207 786741254 263279071 922096682 44145269 191792843 702488194 574294799 532037430 660094721 833684266 347330283 977653157 83707182 726761752 201548305 499813673 64609547 329912724 814072464 920019429 978504332 315216303 30896127 659382259 267272211 208819182 224716491 832097833 783195437 371201120 430511189 206685132 513972156 468263747 558305808 663749599 575946419 967825291 617637005 314343030 771703501 667218091 89581479 200092746 478869817 404827254 384064389 164669149 945706726 363407495 190249265 830713228 872287908 243156340 677143496 740140580 851893088 516357875 139154904 521580136 471035602 809323080 98293648 195270427 147385170 490262716 600381230 359000415 57317502 899037234 826605092 532420113 330878556 758090902 18669110 55451610 536318511 868365236 142153734 47102876 735181662 625367817 904773481 354659542 443533270 666882786 855414950 143833648 933061934 241242802 584145981 807451258 584247558 460114822 883033109 238951105 601306943 424989605 39266134 477892027 696624206 741597767 867420369 794468560 87358449 985593100 899166574 889758567 472585277 948655429 248032967 328529214 411337826 607367462 555266858 786894840 811971450 226900458 546319687 330479985 33345225 75074954 930976090 275882362 678924949 203571165 664429684 86998832 910673860 308528814 239143299 291502206 605006204 550091050 517066962 529514208 298823384 262530321 856238771 887547721 93242958 317450091 517713883 836690259 185044838 23075484 766998648 391490629 97275773 881978952 836760669 385696872 12785418 590906445 405780513 585196016 241693921 232241031 824580846 207111922 922019627 251299842 77195837 464520407 494839431 974220745 755264175 670821410 268223832 908713885 234476359 102957467 93244415 926687522 477644281 146328530 601433296 359957291 696771189 996528640 431597760 137896091 610416423 303593938 25796307 783657770 407552580 273500953 153022409 442657836 187524379 220970263 659690516 87834906 77483133 233287921 33186622 847969935 712637957 855165949 486440659 504908781 182554391 581511335 167898628 59038802 681684352 541103793 536265943 195224156 121889761 373930325 650351912 23223338 880901157 207471419 377512954 478820827 748568002 563390935 100674144 569470092 807060801 954742091 268924828 825374513 97612342 563210107 787946160 80169040 47519523 346530179 118698781 215721376 537190749 121754760 474830786 547756168 509540008 731205684 633217223 315631860 126516124 565658178 587514755 729659880 227869943 737652547 929235122 184475865 979335681 679178717 431123771 741338965 840517372 459846840 926127397 757201336 691687225 699094274 221804624 508372182 163343915 443553791 833695297 253861144 683708253 14438808 48660992 675055661 117504326 782143396 489838774 768074254 772366364 202295067 798272573 757868182 722266738 185946877 625261042 220448878 580269125 586480181 113269136 712650799 847800855 149783288 823589067 133537237 403366860 456511149 431650218 697137228 139669475 454086485 518944739 624414603 327900048 181907448 433981019 372287685 589646297 331403011 766297453 23167875 412428787 468537171 895344445 623485536 624893594 12018577 621924524 682839292 859744034 836959176 911197329 213966413 101344886 680820357 287842792 584276472 821934078 769688420 451236432 768116052 246594644 458552875 277073957 288289150 592637831 612358897 244432138 560956214 20544249 260612858 764685763 39261938 830259866 742483812 923014200 951235311 740069625 338157380 811460592 446362918 980908250 381217319 104161307 410810310 112458870 970926121 529410719 896030244 348336661 906695993 522913003 578696849 906206697 57844033 30216717 936770260 327313695 610366749 387066424 442957259 155139259 475990420 323732803 183851993 480721401 806398990 638525843 95749288 835074357 233354158 773862132 976028634 117315316 188487160 448163365 851266423 239063477 763707905 341296400 625730105 786946739 587032929 27554177 434512308 344892706 403059128 182744283 919135083 521173042 891658143 896129305 946045898 393870266 574887719 316834843 199363727 98179114 635101084 44792574 849373174 744263324 871872200 854470241 342106815 28918643 810825952 866182281 474755541 736781503 546170140 490043842 192739276 475650127 565019353 388223035 469373154 249466961 725501276 650088879 330819214 649650345 657125338 977217045 873154793 586119092 218764937 723455785 362988795 449509135 151734715 583719913 220050253 672168977 222638582 192542058 409489823 837837145 360846030 907422097 984535369 17237805 606193015 696429537 668768887 856334315 402942012 422790672 835076528 832675682 329405547 527732868 566102883 218836476 422075426 712185690 614791182 887607295 312497936 466207873 791326377 245982535 889431449 591033709 238171712 357321215 534587548 299130915 394235042 404996266 749060452 951328617 647260775 20910936 32685449 663857553 10584186 894459356 546418841 480870866 966842893 454500100 285015727 197726300 12910627 82161071 290639943 957909334 350417372 12302810 798886044 609048273 878405671 592244836 792368527 119021268 920337923 454669507 877406952 893785041 85477753 197541078 821971132 152651119 501077635 809758639 508132019 263371493 689422801 593985179 194120569 45652433 978519382 695003098 279445504 31756362 383488435 727704029 528541911 721715870 291308417 81767736 10700388 644495869 47387092 233060899 367666005 51870200 121042791 439787728 466170372 623894080 230255510 198307637 647024599 922675592 914696112 794817586 438555599 597190853 695841816 80597028 73115601 787183166 333649140 726855412 757403273 445204413 497754848 80837040 274463238 332902125 845173430 302692861 756257952 204173397 338703340 954919032 885045104 564702371 887208591 823134844 101652060 290668487 188357210 288567271 40333466 355161226 460438365 211444434 242437597 385342297 930603869 942328805 644847999 706277261 469976932 143433433 333048789 83787090 733904678 310493675 520787017 842982512 708894578 742034375 345166000 208752487 279405282 897783191 23030215 500445773 734369423 867596612 974922835 928773323 719814291 203681607 257831888 193497763 417096182 440680597 448814965 376101898 180454090 285416558 960884634 471229856 663262622 801567935 490789832 518046611 807992200 601443391 8582338 371916115 892303799 351411964 30444901 217827162 511223177 766886851 246207592 940693003 164466604 370341506 19765090 580351353 572473316 458455039 322086900 4135120 738928575 956054813 248661218 787058 833587293 280457546 153053824 208699098 937395202 624020466 373405196 596669520 760161739 745911731 846048414 930021480 818966396 3056093 418747257 710452900 585940429 233709868 363906771 613309521 250580650 170218461 188668651 362221010 262031938 98041469 877105577 893247648 260585743 554709862 702903367 233663352 340960578 825470043 990475364 910989497 278081479 602164688 301316162 211636557 117980576 83239744 909630539 472405183 739410172 642866341 223655286 29218307 204992665 682095857 164631766 922329126 354591097 118592672 445060489 609895412 855992944 887460082 783344300 907966418 496844534 180657926 40059997 695498316 246485377 183144585 842582144 190729897 725254190 149827362 759798797 799556565 338048188 547077795 725821068 806468124 323218169 70081823 378865946 382158624 565645709 709522003 124761036 451138626 657971518 450655203 689991875 652180478 525269782 813828292 713082011 374073930 326715422 326810627 985067960 258405532 695690179 915542136 651815432 578328416 196742606 80625372 458936019 517753361 748591724 516304579 159319074 505770621 911147672 168715187 928534743 382162400 226096311 268249794 247030844 445014297 490509578 756062337 582450154 484953476 888419152 338357159 13194767 719358127 898674951 171238537 124346912 548622041 390580141 463221085 676474781 81993236 158393483 126034739 579199557 690693396 97843722 522503996 3744466 880679346 599755185 436980867 958481125 902800661 613137069 972621500 842642383 697812349 645996104 960910388 104144789 81377806 291199132 909728112 695203506 716992266 262301244 491394963 705489018 573856700 217592279 691719301 203230378 880914781 193141253 800990876 924389876 179936095 609926282 605547891 855876297 684342031 829874916 354768118 471894562 737126363 595769847 307986398 695389188 130927749 197197768 960351965 739686590 180438906 24099612 786639224 455198287 590728262 560309248 573808322 137704828 313263225 225388866 303344265 720349335 434601269 473109188 6138458 69274629 626688352 433967805 117302080 808083309 315318038 203754670 162531086 517862891 616492130 205327306 681785357 236467537 573311276 181321640 119769879 945330010 897809271 224508057 346409201 744504239 500057664 18833596 565437153 2645014 535065690 946227317 397313153 680950305 200112718 862494571 539630832 608720788 544195766 693566459 26242324 250545470 283631645 371005728 232584742 71709025 166885211 562250323 383998497 553452543 344537781 52680050 739149569 154183335 677815841 113773330 503524022 986278693 475908685 297026593 820311522 649144037 105242384 913983199 704847782 929975618 917551666 798804511 423727065 252398137 216319732 284535786 388135880 260216373 33952831 928841641 142997914 353196606 286416166 43703488 6842351 534765155 746463792 120207230 130969275 624655694 947002031 799159107 264540951 277461595 346275563 617138147 222612066 32278304 755609220 322970302 714027196 671750846 531661163 61991588 650877099 889964732 466311165 734060222 715787268 259448714 516953314 15460186 56438928 735677877 580023250 377162797 18393399 971948540 403982855 78690626 415009162 361994453 409639754 576312464 403081957 377258845 310654372 695328904 238167939 598922643 647044707 716084948 920636687 626855597 290999584 975240320 185054883 758489802 14310211 769378975 243910541 541212116 696544656 971675375 702939997 551511928 890946121 730679134 579972488 413639159 215711799 819466917 326935504 282227366 151240000 342548861 693647463 738166636 720525568 809819667 5999788 61150597 364589706 933564769 697892810 241563741 770177739 469073636 854180205 465850398 718174183 76534875 496165337 672000969 468729520 615386773 32650981 553402960 218028154 334497520 492453962 1254989 254762981 271911512 308173850 468548051 874061081 539351289 124085764 805277919 571369081 682370425 400729865 445613150 210474494 245631745 287001140 448326372 341717951 623817903 760197669 478028674 180624133 17776496 350946153 901599306 527930653 117617805 593109934 697698213 858494820 601373828 957967158 193670596 4097334 525094084 411339368 786571971 24357311 723021129 859103948 853481949 996221202 83030278 895604753 429761187 100385273 111356159 253615669 422592531 697176551 946624995 792748729 318661544 544076328 248294078 534381478 321084115 244180671 182371688 7328485 600263626 136497219 336137969 604516952 255821961 307393140 802063928 34618571 958509200 449204869 482523955 984779717 853120874 370016789 622889368 737815389 456477119 889422274 891968907 401649022 350676226 659457648 707008364 191448244 371311583 736149929 534238271 471309834 990910765 898154189 506891060 955194301 481163148 111407543 435253417 11395755 43112769 680552549 89781520 916514061 896054226 367605550 887436227 423847089 34610840 745514309 486693225 214926341 527489035 820835875 3955044 878294837 60827042 630485214 106931396 349197074 553922248 801188724 71914878 80069077 78806311 283723129 884725173 684313040 558305831 941254277 782194635 484208558 858852311 493386907 169076226 89672974 100332925 388977423 909208404 201831707 704341194 748260849 483473077 588724923 806257850 384391412 192908523 51630533 162803262 897153996 31701905 379622488 714392191 40052057 633976740 123172528 593551807 693838139 657802909 516347761 775464915 301337949 271617570 147573502 494283589 812818643 858333360 300698812 402369671 946761967 7546967 834723848 970981477 428429196 179647818 696324111 401167864 413672193 661307147 342160430 612980718 69753075 918277545 555608081 575150103 990112432 873032575 515244365 927077095 520971256 139545289 154978017 168227445 179405949 287008962 624255487 983878852 267509670 925888505 377131197 545614893 716235845 410359375 814535624 301698426 489797873 625992876 437343879 991709148 930849829 417795600 455720400 112413569 239092707 935552013 664693898 282053716 640362723 563714110 660819774 802832167 772382707 271532955 532535365 447786114 289229284 476040114 822601102 114215718 716030989 65038894 752361816 216648507 129027629 250689765 114964141 73409800 981684513 567549012 851649923 375238027 393174835 57159320 205931261 881795958 950547026 120182158 38728470 550468971 886926842 662048465 296313064 266412150 964771810 575530567 339931510 278638558 914729620 240198185 511774881 422750187 166117293 471770301 791038178 287171144 386623200 846244361 330602307 593489641 908914077 153404721 460384411 110799781 686484917 133038246 425921634 403533772 594700730 111067970 242743255 976252336 503210275 149117848 66511347 954188284 421891742 430473675 583025185 662722506 298603695 536027329 375353934 474724322 894591328 773491675 169440400 669333021 898703186 523812131 610479885 586514326 961115975 52861622 449794794 713982596 895261179 422683305 92938542 330359634 911860858 18472882 998319931 246499708 732620621 977879871 235032543 340155844 246040647 263640674 936085315 386399317 263955343 682354549 22209109 583492334 746273814 429617693 533946044 242805614 49204984 194758641 685165499 828366413 270496665 495447774 336547854 978144250 385758418 892348719 674350983 467891636 676411652 509214087 636730655 602453753 556282187 911964896 590826283 50797057 522213986 846346429 790393469 827633322 294091004 389996419 494236815 979559423 812138760 360333454 910625007 976214982 711663864 505644674 176072123 101378178 685200506 987466310 624360602 636726684 11406918 492730255 954294260 651022430 102636935 287703427 929164311 299052847 217166771 630789280 52059855 720634365 987592660 90920321 112121647 304683697 690123468 542102369 867954905 255597485 975080509 792549459 836678624 613259228 865453962 117228745 135119208 142559386 971095701 792889091 76702928 835141378 570850497 203185934 998735519 158978765 799750465 192648329 447180631 899442477 56944909 172437016 497151362 32524114 636572685 156250471 682912859 126133117 331851541 958773826 845037342 564121672 772271837 109636865 925228418 687675541 679370112 131441889 83975700 223199887 540544781 795676611 828571886 345543514 480604309 690054825 638681318 109523711 498122207 427214935 104177844 446187382 775544746 961035203 180101666 174570402 41176484 583347726 433217952 232669747 312548056 418088252 949296021 154231796 351256735 547034480 737993410 41275241 195199133 356168590 173236384 108049112 875755021 620001175 172060488 537191996 299945091 839113912 291631121 218276953 494694343 635227270 928628854 177748046 383665127 953083630 306403330 488040306 779938360 342699052 311650628 670370285 136843049 147200883 635888220 245069919 184701470 676270710 931143468 241881519 109599974 460660771 266546578 553204150 545538300 933601717 238378917 210056454 963332129 692884774 917180024 315190281 183709235 948658513 394142441 149069158 588136137 685110929 199928827 84496583 196484399 59282430 80796979 241797460 641594450 434564103 144774421 88224145 304051922 956239205 565782254 977591229 522037263 137533707 525764816 394654966 336991152 1739402 154053697 479245868 224437138 109736706 277699732 518607295 589404462 376409976 906556578 323836595 131794184 856362276 623009393 375272961 267771704 823088946 873054430 740931048 598914698 780378580 621595023 341601713 857901758 321812969 690258967 725631544 666453956 915195371 199834017 15055754 491978495 572046502 1619362 694381610 292909858 321125429 527588560 41236898 759752560 645406439 920465388 80510229 557614916 65690513 53156546 85510657 689532920 1048661 384768022 875210844 500628097 783831723 327123289 226423986 941461164 422671015 907190748 584974164 90551106 341019267 856340009 320552300 307961311 85382540 924420344 640216273 647691986 567215369 866753844 464166227 269794211 279809807 719811182 512932242 931161531 12630882 849264526 548932995 403769220 513159431 181063658 690418186 212764024 535993974 781645561 458034526 661146706 182473487 581996613 762374269 21205067 286569664 857758177 452160270 78382089 753047359 509685145 980287439 165040003 471533553 810533534 744063615 450662699 321687522 766839815 585565397 676480457 64891013 459525803 547196192 369655464 968739894 581858102 369360047 690511625 239030985 985350463 706118357 709965389 673652783 138932167 651438631 611404729 816719693 508997635 849660061 829325596 178387798 691493159 464893714 558130884 122237879 795992787 722926309 388516 155770240 447262312 137403772 415930711 856341115 337713626 48559793 730628191 151198710 720186818 257781797 424867463 396700939 507002563 443459864 705440769 221247060 563962628 487365671 611481749 509470169 254744576 638859096 334683174 205581805 889065647 494716394 397758403 53434303 860952896 961078989 957661684 677208159 619580526 627663097 913065684 562501017 993661510 282118326 937864464 186812062 190086360 927611822 933895653 44439759 819269930 662250922 487438774 966420858 998348666 790278159 557743588 449846904 660357923 982756183 344251756 737096168 61144248 448931372 520581229 504612502 41639181 486186279 512387049 16653228 233154654 400147230 631014622 289632464 647353119 817391550 466804346 543239668 901035262 132429733 304536804 875804334 105347615 566621450 249203496 387461775 479733024 861436978 610350739 488609703 346083619 488561155 81344263 748279196 967922333 420434781 946231631 465510598 583571319 603933018 841561958 533735137 386579601 434527728 876252398 794693369 135054676 717412560 332391083 721487471 75155598 868677632 476920606 99014504 58511893 810948310 896553812 32271448 336781152 694037552 342019980 242894185 906717054 433434246 543111697 544537853 685139451 779935867 162652081 906514374 912363390 204890185 899319454 511131472 575078500 831784899 308385194 494803302 331074336 798504002 484547933 722717454 118967377 802369118 299608963 738674247 615361002 257153610 482443425 394521661 685608523 162422656 323209986 527347018 242699461 774042502 201558106 595494320 390461482 65216404 128016030 192356328 561427785 575239492 909154268 887595264 84190160 986450973 472760458 455075757 417297826 458056036 105506961 905397183 699819212 10031540 34838659 294367464 338691337 589466438 217388836 614911854 366829119 512453501 882446108 124699611 529150580 821942694 855827956 935403014 548426958 267512675 893752319 948338488 187711658 519676275 167811016 122518275 365068365 607129375 289445973 180019405 599215033 832746990 663810165 209441571 610890023 719682248 709086310 624905728 539990811 743019881 312538235 933473064 89150062 601130296 291787491 25034029 477707650 729907997 298533935 614571293 591828733 473928247 672575537 944408632 194902844 408960860 385744623 879511312 976148263 40273813 995995668 130601505 38858314 230829938 149490001 845832183 587983090 845252106 447482554 844630820 482846406 576878389 363635527 551975400 607594073 522115800 547606088 225008370 833663296 758538826 909570184 296032525 401954041 964988669 241398770 118764380 29735304 173221434 133265444 650912646 910803520 723208696 378254178 770050761 93719148 729792808 363791770 763054633 853111784 942200743 65750115 624071529 929916312 904105606 21519182 716938105 771319646 893939849 590093031 387324632 227039603 318906061 879935523 48990378 28614057 716266231 19574581 171596113 296393419 82942712 411005108 792961231 59224420 878425078 775397117 260837329 763864939 214973214 397215587 887157014 297964672 909838345 72406131 876618511 517521230 954578824 628495621 141056258 937276963 10881779 302781888 554028314 441313869 300885440 357673341 434984183 690449663 492759944 519204369 583907826 723706037 997219807 509666530 273911257 930430269 353436790 282632679 4837475 370699848 135785669 244232426 189425497 398288082 623842784 519094140 938809517 5077703 539148449 591718756 136430081 707062329 395857094 14661603 295580766 594889474 639496383 473476720 295441896 616256754 962785702 860703924 685071049 584511955 899100852 465828266 79903800 548242974 18854197 941512427 905367785 958472145 151950484 697837395 154669475 655238097 490535854 457773603 216707821 367932971 340465010 402536544 763391709 871329537 807835687 570559521 52905612 130408957 635529793 185805225 533654924 468853633 245841173 310811327 15926100 139493347 267178163 867554044 564417127 384770638 583159821 662691999 534607752 843342429 884834876 78324164 704317801 749294047 974792145 985118231 977243494 10479299 419367027 696481369 866592312 635651432 103116083 361307458 827522398 17569010 306110593 17967338 127789555 80451326 51932623 138917889 550406052 755817827 86590813 707807170 706602053 773070854 342801790 993639019 972996548 592675217 636821106 906348700 790538428 643075421 708204640 737519571 647073759 69684384 442776421 115910682 581220193 619529866 896418902 862226187 753146498 471046083 559432895 673020639 895342966 917168182 747005589 584293454 987338338 941703021 408187104 491822321 717966253 592425380 233702414 515613750 262581100 481176149 696989006 875126550 954875429 25372188 51452976 253754294 577403059 585917124 600738020 481818308 607900603 393906793 351889765 293783634 482776983 806617514 82862337 354319360 352289023 672916689 290403860 713747628 967148383 181905695 255597389 949963601 25233513 345656267 556780386 373434753 948015311 438368796 973415416 565681751 922962130 859899065 449575765 982730424 32652487 793344294 525579061 941851244 920266515 515371876 683805234 144185535 25483511 918272123 843866096 70989929 931793483 480328903 985164719 904789030 653426936 658493938 911772985 576367214 505424119 622027414 539918662 71404185 67001876 898256431 63422384 390698013 718995538 363159967 10464861 424752296 164582457 728020443 315657077 346581795 110176155 658606774 846138312 867133121 345634668 94831510 95456600 26411145 10667348 31204651 308425332 349412886 452161595 438573889 169490992 954574151 555111250 327604484 525160521 646165437 814899641 458885728 550215866 71122248 699099004 247057912 183932016 23323501 175049054 816949207 978540700 500073492 283732258 219168834 632423785 834486268 208720749 864527571 697908849 483219585 902443351 309085633 730602196 214813375 686363001 648358951 744548579 782992984 312758040 615515521 27152268 695098261 891104106 161721209 392551445 151180452 240600813 355457542 934106379 567587278 292967535 171734792 875921236 451750963 538615799 263500059 676090530 433247728 805469291 716871788 104870023 447243683 81833749 968528173 745701908 725977648 64768280 909761500 334029534 504072561 316222928 965580486 642819972 213799616 997864109 57026947 849570532 798631437 73729771 289605842 317544663 468817090 770295394 332177387 972551261 118958164 614040738 763336609 564583876 307367288 563192411 775064533 135386173 809695494 951630696 902186335 131162606 580962687 692928504 862863699 173027870 883137813 861132104 56931974 526952216 632270455 170303461 174227774 145457743 809245165 110850024 560056902 935907363 275699946 359466955 319860965 942477804 679546160 711462121 845816020 184264909 344245078 972253522 631524150 491186514 465088847 151994503 796377520 316013541 232508984 914363756 765472927 426129668 990015464 306404497 328867882 662400595 417255770 457522654 821414185 928596627 284003416 357196697 660034733 833261726 590349427 585428595 784910631 876576954 298297031 995560253 406288887 321154597 932885200 438831421 793440669 17159941 407533235 629846271 366220270 880531920 265265312 414777170 801549160 190482125 17349902 781052516 899181490 596347720 284458506 733464201 913594178 381338667 6588483 183921929 896490945 941638426 202404930 881124680 659388837 656953280 237159912 940304701 500816279 273445640 684963752 459093727 368286585 323602173 259795975 218401218 643393804 739276617 342839280 734679636 262953856 297945350 605283845 762333643 340471429 585921071 304145575 545599513 893215880 241100484 508971458 822029893 960239307 395268771 257441551 892225914 331196619 453910414 287029310 621061403 740578346 817809994 771261305 551329764 397817504 260958912 341226136 171863451 615946553 613313999 846809457 402514559 544106442 67356448 757736980 412760911 231706930 946202632 18368316 961298688 971445121 503393826 235495178 894441839 733495627 547405983 257446695 603369097 362835424 135605201 793815371 190902633 388193564 912030319 428513905 492223308 439098488 766758771 523625349 129825660 735860165 524297305 174240179 693988853 389601910 845999370 946306440 821345885 548425704 630381649 892159381 166738008 326446388 613287745 312932869 344437149 31540555 531216030 686193228 398389093 677674808 443168896 311920726 412927636 449329849 757421571 729317410 928329913 297244998 508041737 491433707 494892815 712217939 381171181 720496752 222312921 702547151 322294141 70789685 408806691 268410016 110086458 266221635 900430839 59127129 647849680 82980064 139120305 422499842 104216980 59249391 316663940 398120547 394365950 737682789 408086032 390568263 381788705 222841883 222852065 171691063 259538643 535180767 750502368 258628751 990106652 657954959 643075249 448517554 135486680 465910896 640797171 876433435 31186280 982719143 431923552 832807728 224102460 492069951 381921586 999312840 260202132 218720754 638006666 520453968 657417981 504090043 490093171 28885217 415485459 250131679 37123688 295284527 23629134 63819241 87754702 945379350 961462101 196307217 516572637 484086311 272831454 4954325 663083429 973659991 949631967 615456878 877469665 873448038 705563571 334365432 174705065 891713091 469540198 762498313 141954850 41067974 648145624 41031267 344519332 844202596 15537308 174460773 825709668 757705395 204452745 482886263 949837679 504693423 80752321 17541950 962924604 53958533 611817037 670899157 72692084 876514464 879965113 16772369 113938842 950682251 346237120 32613136 298007502 290293518 294834139 324093416 916998372 657128650 192659128 530165548 956297102 321503006 520591987 38116021 570170934 69702057 898713335 468484484 618607155 888449288 947087641 178344429 298153355 425896440 990038447 82720642 956062825 688360019 668537250 397267288 966128085 471962972 727653255 402044997 373249628 420941887 211607400 248723321 986900705 739066126 897821217 593923716 923062709 777681786 251200678 927429054 549475924 176250038 35321986 423715805 796808824 872749034 993281217 147133689 691804184 546379470 904992655 594595868 935035388 270991118 488176779 878083172 487493050 945256735 744718957 639651006 513373356 125970572 266874585 750248917 686221113 910364007 605772900 263573961 875169628 236744534 103712282 843338170 913300480 206822340 27190062 238394216 952666281 661678046 323959772 489088239 47722470 112410679 178519521 828805418 826810996 89842193 121437409 301693577 607432829 166128243 381222291 998198870 458854017 690655370 734755649 84749999 664949493 223382850 876827789 834386954 102281828 620351521 767746661 404410420 328535745 968471702 493546475 130938928 875122220 438461469 380696151 14074076 409572523 947087729 707795358 910158926 980975668 674059833 35112023 354821539 281932924 733079184 694947080 260446968 843629006 651919287 379522678 993310317 58087593 262433854 840850805 946699363 746322051 120946045 839619117 434654970 611407311 698087437 356048770 980973579 431327049 961165562 281157290 28616862 730305777 551632319 175973063 19623121 62619667 829952082 917954755 302002800 80061561 804349947 5794601 276850118 561252337 769886408 293304509 996614474 53552448 789396966 188918101 319452210 119206087 967007101 750441165 722434706 859322044 989506776 499228387 254447753 553864189 386152702 671500825 58759481 494416855 197294318 616457306 280403599 114992196 834587784 638819436 914806711 587233195 908749043 717238379 329054846 105995148 540524201 683220803 702618905 407057378 562793617 330013606 318017794 818657019 961248410 320992676 677826714 213132080 596490388 847517032 184847940 368119924 238831043 921094483 969962818 712957885 933862905 858298716 946704755 56013731 465291769 559033633 430516805 740566540 709877146 989419069 265960721 860528072 949475239 54496292 354513585 910169652 276699544 739212264 21701693 48169430 205622546 826048005 574818205 308058596 532317245 877583081 66183793 184460891 104556578 157698592 825168920 391717785 27463155 623176960 86745483 193668157 790579671 491732278 408733313 307284397 189703520 679685971 118669914 516579267 602090223 149512942 520166854 115025846 975978959 176837211 425978450 173999676 75753903 623461109 851007369 62197516 34668316 798557616 309138956 305287036 483233408 341537688 101602965 687492531 209118782 480587956 96305596 411084042 100117170 113266725 912996037 249215420 794366677 897272580 997739350 913863209 819620597 58069349 427443101 818321496 377181920 585529280 494643482 567527038 586055951 166162487 282603520 209758569 423488568 42855421 898933581 880006646 288038727 246273311 98231977 466248693 160279501 464349639 37075351 123092758 703980905 968329354 423014168 236836995 52738614 488443554 957451975 449540959 873132667 592427228 235732352 434230994 84291946 253414348 511426827 94779455 47846882 802819009 562147341 836863517 271046972 766628006 222270428 476139988 256821177 904969643 620039121 188693991 160538807 825457562 868150104 870651295 997087211 914037566 250641233 648030672 377493496 746884281 132080960 205712302 895413625 619129126 855816746 951551326 456470450 60800676 275303796 171088657 705220346 408837454 239359850 343642902 543858865 785452869 575181841 810066985 7894502 311579647 944802045 853054481 406176789 678652723 218618982 725558340 156700827 19869105 458447229 158231893 656240007 673429812 429268913 160019800 895189917 521446015 754500231 409519603 11554874 438992316 196416128 849515148 326295910 680044774 84438192 954129008 162894877 555858833 59071181 441808983 52192667 371971151 292567782 578365092 118588864 409000449 217501360 341613088 587089938 92141230 77119408 901788205 419903305 429875203 778888172 283066872 575122775 631998203 439002006 348919439 978894207 32210120 344893008 589270483 69756838 775299916 886847155 26086436 529409796 54044006 224198471 817825351 294354056 487379176 259073166 452310131 791595085 475773087 658183265 775322107 24347520 789412766 692152747 769170791 630321502 252369989 872926875 5697111 130161054 250049182 667528374 770233940 285826321 360922716 973405052 299992230 465914408 57320457 736536472 576261920 673822336 816063675 874135313 819780250 765485253 514705063 100363600 147864030 68793620 581540358 790430136 643621133 116106223 551910771 807176077 592464818 366982539 368170882 839967219 600308958 968007043 321094024 463834643 105082837 237233330 686326152 423764452 877840909 697227927 81328370 58761993 503230166 899451159 652514429 171508581 571773468 921700918 907401239 999938622 686628717 737444710 592176170 716689910 251335498 814985644 282349643 248508145 814990622 99238238 857676008 45810527 107810008 185024485 525250705 963635766 172407115 605000303 30613978 311105141 359235042 261652699 531663706 906047687 259375201 580204137 154230772 881204625 498970877 317110918 610671960 31830728 574881085 167773626 446063599 633725967 194535289 481815587 591179328 588841372 365129289 966958924 234925786 55752753 923970708 310872679 911073150 675717272 829076742 797587230 219698879 677828349 69935847 804223745 439703182 210362768 783875372 115545552 495257376 724210309 384900998 697889655 88319073 873933553 749629599 610774646 639293535 42337832 19576499 836488134 939145991 42595077 739927514 290285033 757205682 565572800 531936396 524307840 784527520 9151200 95543223 545160786 981675680 433952524 880303817 625767471 682843839 711722659 831107504 938493077 207066361 794439534 390215462 281103320 945314318 744023460 244814077 11007672 586481259 669758981 625510675 362060519 133450438 996862556 920017706 485999727 507522777 488353570 470462963 619179001 653538269 24034963 269128901 288149120 625955777 499586458 114553472 545516524 12089670 125670023 178519900 548245537 87135491 719333815 972252753 459621225 343175330 586522331 766584991 862059585 742633459 630486355 90752941 958174752 238533827 488413981 85998500 809723072 3649716 264483774 294846505 255471813 147466186 779871842 279130998 896158865 190864246 89797672 111779375 396780469 776225044 666952551 394209223 29778348 132719469 659793458 338562330 664592522 537102982 133029173 247252907 641865437 311021138 54444608 542235497 415380812 409301807 399297142 7046470 860589026 159310136 991027877 448120621 882938170 879703292 443805982 479242097 611639028 474927764 357916419 150754037 512242176 187271839 107779445 372903256 55019184 338952880 248641245 37142553 345859291 72832498 861215105 697153412 391117593 723515276 60654831 490654115 126329461 238139586 180021787 512029068 754032329 273168992 440607881 241090412 261949265 466571213 354848641 700551935 719268695 463586645 780098737 219566532 7393680 873522439 217028089 655692563 405788379 963864505 658114199 211680837 188280566 812354793 940209769 34917244 454075537 987755256 19674519 631712136 978994652 749389652 747921214 454558695 662053353 315151931 439571106 474958802 105654866 199319971 960574945 803687966 863145340 360273546 295332693 409011618 387045422 772930904 809147317 688345310 219592356 15551254 855342012 454440416 368737845 614064766 1098461 436535324 55121835 572814401 42421487 381629292 481773746 78690999 909446179 362933452 621747241 482070905 737700372 613074392 815303566 885314644 137342434 125853583 469122538 719086245 179594068 696279105 370090530 218114046 9652965 579329956 939704515 50919988 369737192 802975000 580285531 534301914 764798497 195234504 568160923 547083238 227329472 765956562 223768310 137330494 298312622 222937479 436065020 955372378 217801643 876449435 236214573 196258473 858832915 584480920 924898045 453102391 553113265 572394763 671521764 418841548 488074140 827989090 582175852 796895721 966214921 697136624 570372826 635193785 943085081 411903149 316600096 61618640 651609540 719866029 219844177 204625758 197790557 482686497 40102829 398319597 105241466 372373332 846975234 597427731 55641784 592861799 43678155 956135863 661329696 584887640 468128115 101083748 945612407 642939194 921974239 550072592 435574181 633685421 912693843 59368043 563500841 194604147 93603306 285255626 833605849 308754502 999222422 826769964 676663662 972511077 742957745 241598369 612869194 619772194 469249815 220081439 187675112 136993378 342450232 775398664 366021472 348858481 647072173 677531419 450554250 918613381 728692140 634370745 609034381 258560266 701197247 579233483 658014760 391807223 765739546 569154925 449555953 327802976 979911365 576354724 502588946 349769011 891813440 78163981 18829138 206871386 940206810 589351363 500674333 509148495 57766170 449557250 338903278 67681642 992369537 364669420 801080489 435724511 626200016 437464797 764650807 117411740 3923800 124514861 497170461 71409745 807874070 858189165 345204343 709678370 506721767 486539507 512338692 978082816 220227645 858884736 357545926 745196114 6872877 292055446 260120332 453069310 848813105 19357020 745371658 71018505 297310113 416339302 746206934 851944392 779220521 503946031 249606072 893759143 296548061 480264624 665607547 198805382 691976012 678183738 463247097 752283918 930454594 325856575 360702324 355097085 533919604 535774435 584481863 644869820 226682712 339956242 127637633 303979928 898019587 910302618 814513971 204776857 845349595 235581318 297999784 510980089 600023618 295765385 926165415 476480082 751118768 576682615 991840047 145748130 100270752 589701766 551264433 895927242 843497250 302154679 544638347 63893132 867798646 658301615 251008133 165703589 834289014 471905126 876979965 168253738 420927653 295399298 391796963 97680774 7785906 71917936 61860149 742507383 19290756 577510636 17739245 579419847 803046395 634977433 901293561 475311025 810221645 360870728 998105924 452303669 346136009 877690867 150294069 384656427 392977254 857712730 914814164 721644504 986113490 430768538 3192139 41989497 62910068 916528107 287784047 754938411 610091520 140804938 671382050 164694815 771527304 933289721 209836746 1284185 419971219 797103064 635005679 189224008 872394862 71392216 64453728 639017616 305230367 298484071 928551805 637759465 302658052 563165271 878145530 734804119 282623558 436876550 466337988 196447242 647857180 769662356 760867202 386972145 339066755 191861059 759784928 980385638 244457015 481282167 608477341 625293123 224181083 299316354 999756077 888276271 161064174 631289538 587648691 593209347 187379659 430856481 320490433 155254945 27251810 768353465 119504557 165825997 57171173 200916930 644686873 888625560 234992823 102848672 461416510 673685471 796273299 827679566 414716030 916334460 442289123 557691489 100455298 924386550 132737555 230165886 223704823 277922748 45389055 240728101 579449463 450222819 488563158 690138298 357576375 666313892 168101735 237364741 10380537 496065999 344065532 397710255 370507647 141349717 463332399 391254951 200292951 836492774 664658084 616668948 115563960 437887663 965198359 658378528 6508524 993825904 355567456 607482766 325392832 653541004 689308798 56706101 975315836 585798289 435770119 88270637 856964650 861967010 531075676 785637620 727411970 449541266 876933838 459362351 601108881 657170607 741769399 136609898 15411457 742777024 149475561 112155562 196007517 820571456 344565760 354485413 470623495 665180966 5458333 891258062 135795534 59952932 970431498 227408548 561564548 209138703 594717855 239591164 740143549 23058051 334067586 48985013 2842391 470315814 167196231 42640041 639496290 601748380 774595115 556764371 815466931 379255351 567320095 706390592 957595285 476773060 212396541 449293635 635419120 751169814 365656569 926324232 998655175 648606329 381591275 269227401 307156919 688445508 17132114 275997898 409369891 35305718 168019052 400321019 947616496 517344506 997327162 369104595 192662742 780945925 270461356 577315071 604343040 346080925 496754364 562982686 265752226 796569741 398852613 584108150 606934217 954983434 346864377 867248159 105564555 747045794 523981480 768616418 254765925 148371240 711461249 168489688 366780020 54460238 762323167 91786613 511807077 927306627 290718151 518684319 464423067 414926419 329434793 887960117 940018144 721000124 818683952 693007536 339078510 503731836 680261989 528029655 820717031 724214860 48658103 461206655 951983332 510626442 202153251 139003254 916127855 291377371 480535299 163986301 148434818 139777045 322755246 435805021 162962660 541616705 597512811 655884051 619354804 135039284 145234166 381772269 909856680 1995722 311337992 474802526 367502812 57118873 476411705 817635086 20274384 658557066 709766157 928250191 522394054 552807998 260406825 979904482 577967760 461457139 565480447 399046666 676781312 813464007 647556605 521895708 18617334 511514559 428016934 587724714 120337871 76835155 532948466 49791768 364864870 604744963 719328497 417107718 129350935 675030977 251219201 597342019 521339230 798431209 178979040 960525987 266452795 801500429 284283323 228211238 913805296 749717070 895352834 942558993 281419844 939013353 125078741 145712373 541758279 91728498 515118699 890592867 423606370 638180825 943226960 337984728 417774135 746963941 478264010 958784414 383830309 963665287 55872589 650861507 367030805 712483509 404955839 492020587 903357092 732371527 588991657 765467454 297487668 643896545 963624065 771780455 918581116 216946903 537906126 883847768 172440026 949157017 554406777 44629421 691315629 680897526 651151830 129170930 495064572 398453191 729466420 88359337 210802957 979321697 137077374 278730149 125402894 416739757 291158794 590637342 467616587 143434936 785295848 977049545 393021281 467338985 812420919 727062493 168516148 724489082 331671813 14908978 626733252 697189063 294312627 353958973 209376960 482308786 349903962 521788274 250560674 592252580 92065775 382214814 545988167 877889104 905127560 394788632 251193971 152993017 912527498 948050048 301329162 984875652 830077819 816976528 302116373 776782936 894470601 325751215 576343169 805777053 914480190 510828048 552048341 376287133 735099239 777124215 519294398 292278829 433555781 528947763 276345756 55055378 674070094 35322553 461023410 40113168 185320135 793799366 154530286 775070508 905342438 677980841 48486055 239664203 541044367 940687475 12625865 97398639 184403427 222986950 95055652 408466667 375116735 792213332 284186413 190673110 29779348 711410688 490790651 667212229 110712745 205648851 693023431 273554790 176762387 211033998 643913596 759054492 656482565 723140969 203007047 461555893 537362610 514456843 885233923 175590352 955575753 970486718 726183166 988578651 807646825 572570683 540017732 585785442 776646667 807759652 14048907 568425965 883816401 594477832 84626500 292317735 234191813 825384895 770173015 907029673 494683261 520844394 105266183 556915214 286640953 407714336 992984198 991406042 461225679 291783903 46955155 554228465 80654222 438174381 931863070 978147536 624811835 430019388 476096973 315616184 284553351 336919614 417405743 784169509 529331059 44815206 332626120 702159443 232493898 147055221 908798391 59480030 928579500 650726800 751768348 1569555 691770483 829812946 828124193 391311617 262660111 396128914 970800740 922976770 135819124 408889806 224261286 449143974 733846258 106510062 476020178 465654827 742245930 852862390 110972932 879187808 191568031 162789020 912324999 822581660 423413388 218741222 428174755 923834814 288705062 736738772 774683818 337585321 33543962 407617381 939132143 827261866 276667672 334178598 785499264 144820248 343462670 317222957 40490709 229591622 826235454 412403418 874270114 930820605 904067207 667444022 777744729 932930825 471736895 306570747 53788152 111387622 876543452 993184693 646103078 11299373 685936113 426304514 560575938 940389908 899032026 326349873 271661249 240592540 980051764 689046905 401433240 868799895 859615030 968719215 412457773 946362174 49841763 54587673 847492123 819509156 570473077 773386645 657962167 100008115 478146259 851076258 794985957 912623702 981891901 168958952 323652886 577426483 96933196 245387627 207185556 914388210 180003205 774738304 908155874 630931444 207011729 225858209 219411613 52875892 540195120 343173577 109388553 522204779 589896113 929372362 273746985 323277821 323698134 313845895 97826546 740351396 837655795 57855128 149968170 524486924 209608799 627948939 44194716 476530924 671654922 344089218 901844517 600481279 191070398 802074365 327306835 78112546 173962378 865594965 770143617 697581469 471581868 754894206 580959751 497108163 487130578 258541794 526413336 430756456 163556930 126673911 146462264 901143726 424396818 369217365 668570143 193189081 136254453 487803030 766401695 885666430 178085708 667418237 357049441 802758317 361766459 516621488 445961020 465215501 201593688 437573240 988585015 706808368 57278986 329422085 612605114 703158090 197612806 546229025 196505358 856030625 798429165 245456323 162080949 982085380 626403303 375167568 484203495 720315305 848330242 1449229 91609013 714863458 595645399 673782408 771745021 99504032 277065050 511169568 117891797 413561096 887454017 48670431 720696553 314607741 58027465 683180453 994409653 784142525 459299934 202525772 207519516 307163233 231332602 938263003 629297115 571224879 535192326 537346961 990144473 932396897 894891176 471832734 192636683 700180644 481341351 382014225 245236174 170007343 494883762 218521122 453269190 563299648 38380508 959047333 871428711 968719682 614408320 694618114 319809276 429210671 841351290 484975649 418569911 757613520 829606998 700333545 575689664 34701605 504462917 160187029 905428633 509841724 923872307 969925850 120556062 996886176 609460722 131470630 31877901 25680873 770279914 101242280 676755083 315790033 254348668 436639415 110438993 88479316 235682445 938308570 223857738 950004052 293893522 454132800 448047986 29992382 166362860 291907957 669523829 236703176 576815203 235750637 537943332 221969553 123033356 390740990 891229460 243092424 603902580 591257294 315396059 903620320 638017819 705778688 406096967 977981038 614955990 385483272 599349332 692163274 155362768 267158736 488792912 883814833 955461829 232397187 682782104 34925328 249987360 250096577 805647673 954616562 411582595 184034654 121730918 23616670 836948654 247429969 467105560 588918670 26901608 332707815 469337916 440012550 605467908 399012727 208983557 15380111 839409566 691390798 706724828 680748338 908453980 222371048 715985836 881110260 582591080 37900328 309901544 884668035 809136468 747163461 996967252 697166560 281029006 890023833 790603291 367738579 931004583 768352464 716287731 673905293 574364480 756442456 522600960 389526271 758463334 384882770 82486209 870744417 860304583 15796693 858649025 256198303 625313987 780046999 587493792 251567783 497082269 42437075 895149024 686503573 832559576 69079793 298686472 618954881 351984116 279767943 427980602 51105350 422010253 152653931 746038173 421974042 2824228 553095198 935465865 638494531 639088617 283503754 691573422 745932572 967464019 124549583 646138869 130550371 925720163 193533498 929539551 942243979 486394538 165028687 169243988 998543503 290446810 741959588 466638396 751248301 396695042 528209842 29377958 65205075 259111843 575535972 115599467 408471173 932991554 131118029 292167929 41956890 416089931 832379321 832166252 953241894 467141460 103809401 694197299 276916628 419090979 292783927 409510568 93171956 311490806 994972495 449726655 767304264 648777774 563639151 818321635 94596842 781426982 36089505 137432118 828864790 426894259 758198999 580408939 963771351 382295526 950500039 597671787 568924071 22469866 993556408 357160868 832864767 419112131 685682907 904814037 116204735 395233747 847116270 429135015 403484149 700198070 446321909 662086518 95275652 793698543 828679185 757325630 876901496 853907683 337148654 558421194 716048349 649299456 862548159 297422964 887320710 521442071 971919786 459308103 69970517 697876182 783759103 648056258 733707441 553968337 683978457 844283289 953816006 183603598 95537597 748652390 581703820 977029019 163744007 668376276 662390022 314539171 294005356 414250205 604385472 482393984 721227007 824443043 528303152 566550099 649098433 675716202 196157034 746206150 200597269 35273806 398897157 118346884 22887194 88400696 892557596 369827554 275102670 822350872 975279059 940898257 122645304 644723296 150000532 465470723 707062064 39660129 537189526 102263699 189938157 946736337 932980263 375634331 542072649 714661961 126407117 583937985 363199292 737645438 166345966 522333627 414589309 895961054 89339100 410913378 557653460 27858937 77826114 625355403 600486749 795744373 249429785 635531126 605560222 86850497 538753332 200483597 403500660 7971290 407094637 109231741 645529683 839576190 355204531 996493902 270998972 509956604 825155931 585135300 726254580 999852634 117288698 223454476 762523750 844751593 194152476 705347346 499465869 273608222 423401076 673828342 491180973 295044479 956468112 505734725 876823013 81026598 821786213 983814902 792526512 297325487 544532035 989488725 670588947 343647551 494775561 82864961 948430417 252311367 529552770 787651424 723573367 253077924 590285693 466748011 949838570 917469299 942861125 991664225 42218049 719192419 518734579 652986944 458391355 613583701 898178063 167399311 860613963 532211181 153228897 50340689 424245882 383702966 766581393 300298578 217694918 681952076 217792143 865432740 813424027 95824334 608370929 823252126 874547879 508959668 928582788 657962855 917057214 57639121 191105278 823246419 65525158 323275943 864554852 285017096 540112346 181157230 160575997 590607576 36924368 87537227 561730326 870061619 917633897 350507004 331182482 796495422 469842303 435500226 688897756 536704299 903559018 217011486 385583502 624087955 799956032 489028084 360791392 290057882 717441001 15329853 324825844 494506979 736024708 656486871 742927433 383040079 694272435 34665955 72121000 155537930 90081032 63843553 247126065 808312168 906775411 631510824 860187394 286159391 104795556 305685078 44545975 193673961 852968777 256902053 40135775 347630075 905496834 194772176 197917060 998656285 725843322 215152540 825981729 970605189 96916164 258028661 428649473 449579600 823707792 912698479 824240739 973486088 743163516 989874855 574588928 405173853 27046414 182600704 181421293 455864401 675692486 291429488 893767038 963466271 146991917 294130658 982962897 552222424 708035875 52345906 315482950 484781710 876810151 862326560 300379856 949102396 344218248 583931669 454029860 115281444 383098756 684819608 168680194 402416203 35488267 41057391 138097282 698677732 49263926 216322183 349150957 430414090 547568520 323262836 186585473 48234933 722314581 184686096 189593865 473448503 841363531 144333238 608574891 222914497 482820086 397817755 547182023 252770310 853460991 90505641 842977003 544020605 380107875 41362376 405522401 193036396 470879301 359191406 424049940 739617631 714077739 590300768 221415771 351584641 156695470 31974112 745612635 390917257 206407671 639079263 687266757 570517487 568434757 444749449 385933351 942660174 330423216 323882872 767766135 993049345 590302656 174353701 314406129 301128327 719194134 897496518 682415735 346701468 982424012 842001911 606044860 885375494 9335739 255664599 781961132 212217786 657681313 994603931 954384572 466815028 594450927 629439121 360128782 477923182 640959123 925611630 780421548 55621862 223835686 5805938 772218533 35370206 263534748 590091711 605317721 451918504 272244787 924170213 127259434 48911069 398942985 818177986 719378291 623588192 953499111 191817376 992202504 99131374 894180784 663112840 34239086 257883151 442071612 490067202 889217915 611631509 681129747 912035928 528469452 758887058 185705605 34977300 870617476 692512674 135485740 504911063 512969417 988631766 575453705 41521417 21704894 767778461 667725143 759626086 603701286 409259402 985102635 607949915 662567597 213482484 17444026 958392528 73936612 893108126 35807477 441116940 471707883 431246178 323288495 605267899 695263339 588122643 300903901 4669933 792475106 318864051 348274919 285921469 956620794 582933591 543219874 698232645 399332504 277616088 51415484 671913562 324037805 449642823 907545906 481588430 728320546 404015528 424105029 860367936 212077092 197449410 57032291 841855613 196366806 585716258 868498537 503372457 508454663 721780420 322967951 44693723 683516509 541920331 519608412 829306203 349109384 434192742 622696943 743896983 54499528 507974302 415482601 267643949 199997029 116901251 1887581 543991678 955038796 887205491 942721701 981438844 816135492 523353798 808707610 388569495 597906901 413534920 938029071 562189953 953316444 739867378 739439805 26520021 902805771 58449951 520502073 927096779 396354638 899530768 878622804 34508679 671037925 535014429 394266845 781965991 408271934 125734350 145549481 145532363 545771838 698246998 769778038 263208053 958325321 691791289 213265079 850114299 103011737 665212717 389839868 52007429 890038800 88251059 312718840 425402494 435876217 480487755 858556329 740245623 284113341 976908898 896984421 581824992 767593467 389550589 91332689 18714812 919560843 471880785 261890155 531258119 569754331 100154369 944166069 682761870 584587914 53892694 27382871 704057756 840950711 67848740 558278792 851744648 328505708 126889187 384650401 964186382 465566796 936361889 14182846 342962387 361326105 298173850 950375527 557982421 885607865 224443 311963062 805317611 907394277 656652802 737645460 627221209 87716628 811738666 692188494 146916016 649140383 915860148 52026054 430553923 484645464 395224591 109253967 565836230 351259173 824655421 236899510 161138900 137723545 363880421 366345458 747867668 328228024 109373605 704704240 83338604 490977539 829401445 131241730 213776106 235278220 968149824 532718306 622273393 166709106 539665959 306315142 288558084 691238909 840330250 262696392 379704499 313956798 290294615 241924988 806981586 481465578 903404287 686540776 234023888 559150591 709173318 237369439 247670481 724545205 746447718 644146045 157906109 634171406 985682178 117748910 366135112 948537049 177231063 52413821 832159944 678825839 478477166 395724866 397503845 150650604 451222217 521573329 368856686 657845038 561124962 704450355 336056885 647269052 578505345 82547544 97350029 562388090 672180633 638370726 692039248 933791069 885487379 943345848 262677928 453606846 692819561 540075610 591701892 26714057 267882537 159135159 400048618 115703631 377645160 567329251 100681408 629152021 814997115 990404036 872982020 188375611 69865712 426582843 822293309 895240388 984075455 41390790 902372884 629187488 775294308 571903086 666038649 372172579 612559294 519316598 112701069 575139170 461461078 834146264 313296236 357451186 451928969 503117084 181414822 963120226 467288193 33365951 623346400 960504576 466353721 898694681 805110210 728013351 967024133 234251010 13603492 121328187 861603505 546501495 57385152 606096381 655238043 479604051 225854915 454877887 99705433 259541970 696836596 447236701 608158742 582575166 494874879 606805901 666114653 645632487 269046090 220638887 773354257 523713953 338132745 542295398 307958038 218979101 693048176 963652052 200984692 118560731 668639874 628343715 611346059 757901525 367274950 257664555 332387470 558726017 488134625 183150926 961208009 499284440 33672463 839422604 481537147 817653659 866453349 309325710 312370339 323788207 614207100 15368413 780439116 782780793 923470963 636165562 307341602 689821048 768316797 204102773 238529580 328183380 884153783 33528319 703443690 79168562 276425172 200627113 974352589 160064543 73340751 226532860 838698501 51410145 546214341 360236348 214238408 870567014 592603121 149487691 888277308 173980527 262965337 127048043 163840336 942293738 260786884 343126640 58050973 250979451 634419517 367241079 321987528 654266465 720730817 308958280 799413755 908059588 755462596 433013029 981519956 480265939 160638932 904092209 104240744 755222422 21093697 524245876 606849457 227345377 954821349 147158947 194141432 599411393 305381100 427895243 915918493 167779767 425722748 556231736 244207411 882305088 595905458 625433025 503679435 54350622 253849711 808483665 603515963 305335460 810389688 430144593 257602306 420163470 924638706 13451493 611061884 962938166 162051533 353913469 902529718 680072417 851238415 196686956 299449227 974046310 323908504 916909379 529324360 33742027 585476513 172189845 415804607 413043861 190552009 373112311 519529282 395503267 679294411 135565345 540960610 171042103 773520341 726367850 783424864 350256938 870085535 890449727 663976286 173060001 437144876 409901442 304799059 991080142 854533711 761563129 313190216 61211463 783026404 946391468 806053464 703217066 403996121 263833785 670865189 309345433 191684480 672280652 267123981 275265185 51144505 498375543 927500380 595982317 374320047 419700293 660712260 92054085 193222780 362073785 470287760 335033214 688131649 419184925 178716007 651270837 235269711 898092407 636612357 199912459 277877827 917070798 672712994 307320282 868139311 982829843 411719253 918102522 488029461 346825004 529717478 462338326 87789872 817231217 739882768 534511620 431626691 414746176 566425263 19027344 257635048 29565727 797755243 889260010 564734450 415884139 284318079 965765042 104047957 443694262 764081870 511542859 332612997 375869055 217778249 110963365 209848610 114507836 155793704 38728281 864446709 960840819 655098370 401508223 933951452 71204862 942264908 299885255 453167859 424578313 368148870 894053996 99888932 32657439 266748710 619233141 149570815 745590483 598820104 316651217 304292507 203331707 424967852 760321486 492584177 573357482 614080089 82944947 582768606 583628874 634784245 830347528 862397598 248179798 722523289 410618944 919929357 606841962 143046949 433913148 445201177 27348129 212281935 365776844 51519288 594558358 835719344 719565524 111352015 481855810 917222086 683612290 844220417 346864376 796010945 208510001 843649688 69823968 629406101 522566816 358314456 564952916 511275186 943634359 185593278 249246664 532841387 70675180 881915536 153085303 650483448 757617377 317323495 309157787 825857928 661635549 350053285 58814628 772858916 774445513 412768755 205454274 306519615 586097423 520876839 57926874 641186479 90195207 140567481 37522612 974307588 830353376 513893290 183345848 553447618 982510223 38971065 677616111 157713288 383371036 276849802 744985953 204448559 37843473 245944364 999477119 174038679 329029417 134483568 703176764 785414634 171086690 622773912 74519537 83737822 103313016 730553681 997736721 332022288 547123108 208835584 338337194 432577049 305045767 567706954 319216598 782739846 455151650 936254058 855016843 585982708 780991956 893252005 274635013 467703649 783247208 454791424 231457430 520731472 263932844 32312406 699390900 373642692 864535259 695301132 237297389 874478267 659707092 649189759 690533491 322389441 918507753 595504877 342099376 890126492 357227123 703025131 562457081 614316533 860148458 254984364 466602959 103274083 398868105 116951706 221351115 497533894 993092720 844791581 79572080 752652761 837123645 624538585 140421368 972313437 88484006 522218403 869350698 596328125 550583619 65821096 2023336 231593756 282507754 304268235 844958540 170882165 343468596 539007 674424933 549507460 173190020 421772135 192421653 786945945 951921661 266073229 597333405 324690612 965160764 658244121 244914032 603777660 30073205 172241739 744242819 17709584 989463259 572344692 747966464 177222438 70038597 785110381 157793764 674850398 297428755 687495628 965909610 558344416 22065553 251277737 903156771 369392239 179297670 519825487 296103915 507108241 61108953 115070580 633485434 692768083 902658870 559808102 363591559 377527577 737430542 88405047 5001052 308461595 342287768 113822942 299159154 635291640 256527245 144701575 444131452 718720976 776593867 683338849 695068625 690618529 690676352 567417356 926565950 20197324 621729655 671028123 886944730 237507124 380749388 355967118 133020055 139486423 736463205 10487669 197608531 602394448 60804485 319206757 220335135 157744205 220957389 853366572 573129066 505856670 930725132 368499644 82883281 273390772 29529959 167762959 422805108 401309209 347107123 447827892 390081702 924072713 77261011 769197328 411810936 123514445 757454139 707196222 911151320 487721934 162999166 738243827 394921225 279080309 216416120 976248976 850101722 278651929 307696971 640578377 829684205 553320549 695453288 199111844 943478549 712755335 104795948 164612481 791947105 814547938 977828285 616026211 775777722 344606766 40093413 810868358 32414594 117968086 193480261 79650355 416891818 936784347 118141193 479359196 987185153 440731001 601038323 580780660 943548393 622259844 74891880 285751816 881269772 826542702 473100551 616408703 538243852 112932917 253645700 687634453 788905109 515785936 740479476 746123462 759825110 135900162 621318191 52902394 509443372 689710141 751459302 998113973 800155522 394235029 856380786 178125307 990736103 838191556 180148130 266963328 766078327 404393348 245304148 328668254 961505905 216374752 7528060 478826997 477894524 490875473 119561892 285744987 957197820 510778154 442116083 558627967 115852793 741203234 564875823 295754830 829997060 285836816 769677020 195171365 461879075 117711198 360464345 665600765 189069776 882704270 525730106 259222666 437034261 822957204 54091420 44842942 883954371 678937139 205032409 774158455 170116801 681731764 621910303 703109133 970001783 836944580 482206896 415737299 740769471 140204046 634950673 139505386 616873982 49586431 339732691 442833567 239392224 434001059 267960721 108946516 382735075 312291919 401069370 399619784 523737279 483982174 954822715 881671374 974706287 181500801 43228070 935429085 854208613 670268244 533945943 797424384 624550249 774325226 799204309 587838226 418906965 615879524 396672952 175767418 377822416 703474119 488990690 832101425 732364419 624815599 21730199 625997154 967411099 666661874 527171296 896243385 926854578 704249772 791372320 868851291 290599781 988417894 991426082 666390479 812798125 271375226 706413504 432190247 752298974 176837190 811601618 806413819 420632691 447445426 894851706 899144923 743138975 810345147 909208277 100583771 28247989 71796657 615894156 651557586 636834718 633349640 869513605 347554591 193212178 377812363 147812574 462695018 426461121 692457338 838534132 88505266 868618168 742923907 724098715 247769379 23971653 983900017 221304627 305944890 306536342 565904506 829083536 152415386 417364198 909444226 360956538 101874357 28928082 454352220 937479009 642500250 906605439 453352064 688339454 51736634 388404933 572077134 854515088 569038403 65329572 218152782 358518115 280098494 432770282 392241433 435750842 232122980 733182765 284174418 437604509 518106132 2162114 823376506 866489696 411935787 602027318 170857674 872546056 465072175 400738360 534751844 447385547 285214565 763877999 837850309 535938432 775517586 806915703 571085920 573719579 499646340 679499565 600379012 339327322 34929976 190017495 238028014 26910290 972898575 901787512 146274879 420030769 962553876 756110347 15441277 553527222 177101666 600313431 96799791 959018083 598855059 526860445 197345987 798112438 976289148 67320493 961389486 865348764 343151574 567120148 384344778 953652041 905882370 120924256 853641865 13769640 212309790 347145236 934245981 74364091 222421823 226357405 492114281 34887560 35341071 28707841 686230027 629086445 860917431 882412991 182815831 883443546 136850355 968950411 54297567 371138802 372923732 422701636 815560622 553642764 968559054 528096858 687544831 521331379 953886455 191144748 998327266 309628042 282680504 767402246 183115391 27457393 201175446 905925968 829075434 590983584 64316863 204158070 876289064 650718613 527757402 344009237 172352550 259564966 753191587 452332420 122912853 1628759 609231076 897676243 836040383 918162039 530680551 229763335 836896464 57283574 409576932 788217650 175184830 555608555 184870279 683184764 389556539 829857453 990510381 294086248 372194711 532661534 131507132 99698566 54175084 784411898 527754198 780526524 433059049 294276930 320365105 624158015 17708025 732186225 919424952 816908429 557365054 309610765 342908490 600225463 414475765 517707360 495696275 748298051 496920046 589314231 672234416 194662524 633987336 435693454 706278049 118901091 316948235 45185045 534826588 242630868 681513073 742786726 668283362 642521619 597354234 983671922 227522219 336960986 481848133 192962213 953191217 645938103 91988746 962361153 157814438 967651566 635112543 797576061 551506616 121153421 257276917 732777843 467764942 863208954 239611975 626270651 714604675 131156486 953377546 147949932 478836684 107247412 24876100 4130345 721018736 703450444 478669682 691616529 600338906 236151035 825016368 256417611 178200111 162359641 648861779 920657914 234022967 738025995 153616430 142712299 695923204 228083041 368361137 182763119 828991794 159597569 663883778 530174388 856717992 725419855 87582718 415007811 206818080 442395427 480910810 301986622 699809892 57294182 261814318 338247534 902540100 813192843 69892321 225511633 619526677 344420689 305796516 678520094 983289276 687245868 529436660 719993777 884410487 643579007 490653967 991067017 872170786 209032273 965956213 859374498 862531371 90230678 45369614 712530195 361971714 188103912 977357072 210143391 406306043 238497926 852121823 418200901 752902572 181127808 901008917 652815521 357911791 711544803 783256838 372719757 186853637 892987254 638682727 511879612 832719245 904620377 917015284 152560179 255756798 812871393 742194351 424811461 132337910 891313602 678893637 125785995 794168624 982729028 41792782 512354392 357531570 882569232 273546966 356600746 108955700 950945222 818578043 637269448 240714138 508647545 211109047 50388188 209106015 988444523 590990098 191324452 57542442 542466825 674644927 707178240 157292730 13228828 131888732 788429931 66551437 668964753 32339563 331235392 616371591 620552942 227711719 4079635 924631404 1855663 720460637 377099184 245874447 201724117 729855324 630770382 439430220 135615790 742442052 823366021 277303390 202641721 660096947 493822024 949302835 991190857 493911610 991367161 7957129 800052205 674284121 759119976 443151916 238384468 673855352 744972807 541189206 287116407 643267635 359986310 95584912 94447157 574206961 475529492 247395316 456965724 843225173 362561909 753925125 716621668 375957364 544776805 159315893 617233412 711033768 107030 448598551 997739096 429798215 184244608 57161466 345728768 3332663 489422238 631527326 758798908 139197559 392561943 133340617 510399098 35933378 29358639 548654199 371319912 421763384 224508667 408153090 525541302 573532027 520891965 696350208 249953863 923901409 586678883 869195970 116975174 826665431 132364003 191828853 792966891 843553208 83127384 441169072 521899562 236593881 281966501 762580325 820726741 442057813 152048425 128435018 913530025 407518118 780243470 515169090 85146732 718813562 335620951 964036444 193177801 579766374 370625984 776705170 124842920 922830094 568750398 1134409 914640900 887200734 343225542 104115774 241465773 976902284 75794426 229902360 772958418 537795487 753446081 423391207 983207202 29973817 328282953 817681433 255186406 681827106 917483039 409911472 697804316 699827012 448941429 894485925 726315388 146118602 974348180 970755016 906473198 766453861 711786567 36062318 734784247 840365099 302195193 254083387 986958331 499758459 476485931 960871364 256983277 690695614 295473003 624000806 466896175 318152446 268828322 255287222 965077887 658603164 6918746 268858723 930776039 123057585 560058538 290245298 696888554 703074870 566872203 917351379 379558562 108850128 231851423 293323728 954878381 806696674 62789231 517386023 141311825 40473916 553165729 394068653 334984423 573771447 9712687 429733137 597630152 846965385 309976914 496560650 740863734 963304148 219711467 438171162 913772422 420974177 548587709 276712524 204127294 800642610 930907561 938084298 794187167 164344922 755708311 339356527 231747048 844776690 608526694 789946186 647450228 305979267 928559358 771928227 562481810 197327118 940241873 845840272 361717652 585102725 25684307 3250461 710785889 622724918 839016310 93492275 407497542 551956128 519276826 695008241 471434711 401341532 725983024 120222135 215645538 309062791 864258605 701592969 509966745 587215716 658245287 241626480 724743940 464187493 428400876 394609207 818280609 52604798 148340894 244919923 67801105 496106532 657559546 769700947 944640016 538139955 16679205 82980741 438604013 954466647 184986878 338220807 205432079 371602542 438259627 161068118 563414467 397853256 523335849 273982246 43885610 745083774 877170923 215944831 135830842 760405594 637338789 900740089 612009442 758645739 461017341 510799941 110648188 330287813 441586837 414818461 21692007 499528830 25813508 279521953 472384575 251981550 323570417 441140978 441699018 195119669 834074897 680637038 576934714 874647825 359051262 69877079 992475632 221022784 155300780 967261269 378743369 518712708 331026684 861569608 872013323 770037257 685955899 355194229 799139627 403275179 365912798 111423515 581457646 261970914 827490134 487519087 253226908 507956218 423113773 788280673 944925411 55813681 128418463 135397803 538319584 279895036 767188448 860802121 571204114 904839785 123201193 290651826 714020474 620868809 115509630 987897011 511968189 778400357 109022725 250456502 286262779 424427607 265430503 711266211 882255258 641985721 705134439 864942011 138011946 174848794 447916496 518810909 300830888 280553585 674401342 795651229 124463974 966732119 984002546 785105764 313342216 841943127 877204830 271097644 604384827 658654570 827182438 213058391 506197618 904325854 383426616 862314058 843344654 989877939 178446112 827093526 418345914 186230089 510533320 284818981 934652991 479573294 424316486 593473344 175765405 498261645 26279250 949929963 869482292 269210489 478202073 44959079 159880013 424934433 715450163 724969418 669650214 21925432 94788495 579918263 289945625 158681724 843860828 341604409 147433612 387324886 300437064 828304324 142802202 14401489 352566035 536551152 100702695 362683544 565223026 596949907 5962412 348128340 602935275 693662149 847409362 667500742 856369992 385508575 551250780 30927254 112391464 816381285 450838959 689448114 62520947 426964713 278656287 802765840 543652140 19313364 554392290 585210763 675074584 485301481 396349069 76366218 276783998 61826691 460110225 66744644 709732092 610532197 533999097 903095092 838778663 19862248 180793642 442491888 537243472 628538873 970849533 484311312 136795430 506667226 482452008 941036670 733185644 758829547 135752062 133099239 73912711 641763712 841039779 193654508 22607771 461360658 223462386 940924530 476743607 417113709 231492605 746918823 662870844 356230446 486891496 838753298 273927261 185006954 133153066 635851118 344022134 209325759 59218598 350776743 657680358 571688059 908552172 196252693 46310459 413320611 13428974 487289815 441945502 968635007 539454959 853382308 636536484 620977174 921790552 554662869 715543494 65481711 587228546 670879694 492205203 961093163 347476949 278915458 394733442 748413344 375683012 765111940 407958782 300391383 249759833 426768381 536890506 10853612 467316253 770365953 994378211 498017931 170413405 376471544 869506507 466323319 507717820 225381252 269705540 34802343 298869273 717961295 310920120 515492212 513699670 69567141 444334262 795267610 678803820 705001749 151504957 751169862 822851375 822732190 124522838 699275080 771149316 868920567 788398507 349304126 584883447 623888326 922228223 474951616 44274766 72443055 883349123 844742855 667171848 839524732 805070192 197133872 690749030 209451229 118230286 655935429 826493290 464688451 164532350 913499870 335682964 610620496 89355287 768853386 702626248 410744706 255924436 903861547 526045639 265223691 446839328 567159403 514276985 965704785 551125560 692879110 253868476 724185116 125888941 18703519 930558099 741865721 699654845 819217655 470435218 284686819 343676882 296333961 176222850 684718980 936756978 361185937 841109792 91086201 276049938 644440420 683736921 38076847 472661505 189084205 679754987 571392276 151194469 351514040 484340826 129681765 705677692 905702390 938020967 209684016 391155741 692370405 275622311 813595607 558005670 64607963 589643774 776559526 598006139 426339290 104558518 291573929 936709888 912644442 178677112 806315083 893690712 958454767 200492327 940911047 668553563 806538131 952936777 166144634 434449872 621737592 311349765 409976678 101160121 961266621 594112205 410781766 372798225 639792358 82164842 578144310 955468711 401597538 969903775 58209069 164249476 438883852 184309223 881127480 413082512 562625580 587092648 687613038 501786280 226370875 414651470 402621051 740486555 722169010 148380105 955495860 310355601 760581919 230577127 444795069 237341301 243751398 836770519 783844665 558430591 463845070 341953878 488655025 477763233 718175083 252590651 253618336 469576639 385775411 220517825 321113831 212341240 317814605 531915399 571736570 404261429 402328964 231990826 285379255 793287636 856033644 949703234 610671830 137486152 870422037 562154381 974578188 314156327 547743846 13810180 528736163 182907925 10139096 903826546 584414828 708649748 808849684 936044843 97339024 35838094 603229829 841195056 261771004 886374249 558223758 636688159 846449119 439044589 614911735 168155064 899947286 600541659 669827811 414292896 562588471 593777917 623416451 569776885 279086213 269993179 480124300 608634622 100316238 642385723 676204910 732976490 936585290 481768969 331845317 261386329 94831767 104687959 127287699 656447396 219922945 211883404 640669042 777635735 456733129 506502925 610274765 187016719 351198532 972864218 73120940 336042380 690587694 822757681 915547396 654544620 53139820 950530159 523342901 278277030 553845004 82484945 867905790 487320376 76383493 765913440 202352018 966604731 362948753 130128052 695770126 555040156 802122205 766684723 860020631 825570768 850179306 141443764 324142171 37474118 229260022 889680367 903734284 240098718 381915352 371082495 265768267 236481503 6030727 586523434 839775723 617376909 562217810 754346658 192964262 23158312 864164510 29449810 256599716 766429751 244292180 754468858 329788392 721504822 491363156 955242041 859148851 150703250 116785220 66689800 242432677 720050707 672311115 294981745 489099239 541471835 264090986 870670732 665117130 869326874 955632858 182125409 605885028 891225746 288199805 835903786 801186078 482420157 339610911 363017441 91336486 748283849 702713790 61533475 923666481 997516091 718930718 60142675 630929027 230001855 497262819 990941528 656583729 68610065 776702896 227421560 188511559 775450921 79597696 831093145 105890136 474035259 173842414 947245733 112570499 48371723 363524526 360695826 645004614 333868999 515916898 181967694 828121551 148268893 879465154 840866056 525145624 27379490 38238958 547358448 563525068 432631877 703462636 72333527 838334018 567852726 711743339 341385720 726374269 632797335 147801207 584767964 661722595 993343781 736104331 565504941 753425336 191925303 421859845 163608391 780492667 897735209 192180562 476191502 214026088 747665398 779234156 264270416 396090350 416525691 44772558 964392982 136995575 562338407 51057434 141077453 94494693 964149137 801913765 667615234 828836502 847249452 697574883 648285857 154652197 58611181 961322113 502208962 249470405 170624422 758733537 702280606 138127552 129524976 109452697 718061033 884453189 597988429 858810768 812149720 331476952 604813134 471464250 723491045 623583337 504842357 718265391 465045817 126864702 522998441 721260938 378647204 793187640 154996408 687388016 244356648 766718111 660214165 359054373 447134874 237801640 681071813 112965796 693912779 138283598 898034527 581993687 270351612 878494333 662030855 114364702 305416485 805286656 587032038 643180497 526762277 382254583 636946348 180124174 800891373 178329413 652549423 331257443 479394761 395342264 728313881 792921746 158428812 41980130 499706814 328107077 448232625 787588817 64315055 502054661 816916966 879045114 82474618 703733536 234097515 79222900 641589106 760540031 500139110 732120118 551743833 969447086 519436941 573458078 977681090 26450868 613097164 526297586 444925049 937014541 763292538 689194676 629469430 333138125 533602065 989458871 533671677 630725232 930571131 405474053 234218486 650863143 95111295 92926764 181414916 779738134 803274494 886286889 192974302 614710226 391425618 547479713 12774114 670542958 227230712 843227359 507359158 139926575 972951411 297614034 305550168 232605376 201735292 468281182 128779310 767401161 21008861 536957697 930878967 633582848 492760716 802550536 889306028 211326369 356021715 177965537 350628600 863082803 870768527 405569660 254569035 446148612 608485952 163263697 694323795 442713843 703935331 576955039 384860458 576398411 141320845 154333038 838343894 910668379 165484720 874741762 148765105 219572252 675260739 551182499 248026537 925667786 446441411 971129823 824115111 737483287 602232711 415742359 183570086 577221547 812705232 217910377 737522275 14501817 947101998 426465214 323043930 336422440 971994287 52930948 368843820 948603941 588104360 786542284 725847567 879433758 919667442 535612947 589950609 550146758 407204024 144998810 702258413 319916886 693532139 666392290 123426698 263426660 882963248 18437399 981076387 721472496 320210284 952142855 631003000 19469927 392897051 539072198 917842929 566676931 535672071 883381816 976949922 590007027 595469152 202186257 434982868 132771739 711903548 103983845 301457563 314742974 555495684 807935884 27286164 722400176 192790353 780785172 233451207 198331088 58108582 435212426 182892860 384940436 485126444 267191169 98541248 755085777 995349145 766735167 172342227 991153908 483818825 877023919 438263263 587556220 543264996 214128764 469739052 772765602 526487940 918783830 716386433 926281751 899035074 563550622 771661989 784464570 81560280 825840233 615143303 55697133 910294572 83749025 872165828 905218716 330087006 214549451 61005533 207067135 144031776 670059006 176183141 948031366 365779779 652443197 753881493 815385143 846828755 91943692 996655708 270929949 393083772 203017765 381591202 606798787 127744095 790195093 300005225 36669587 739765786 709157180 111415114 677725865 541460510 505278539 597661478 350542467 160823970 50741016 468456833 390517374 787403601 251160053 674119948 578701364 756828900 652544767 615696358 28659585 496621024 524438272 286616246 36621954 759504345 153383754 87195689 142146363 453567634 515803173 406398979 444267513 195455459 881457760 221923333 89293639 561066719 912696721 585236261 78898156 519825256 897535416 177678427 116058904 443825965 205790097 135745288 309534493 259687027 661675876 100343061 526170224 804308101 19735286 646235856 980088466 974488729 793841260 809261546 32334778 579995750 898438326 138474922 53485467 803655506 913992817 70318551 679684490 819714253 340610363 264277054 98433388 980365573 846656953 178411976 39962998 709709955 590938738 551853291 97855382 585993117 458998520 786105285 619930322 969401573 89637049 441346672 671276048 29465817 596104309 158851064 494199184 415024392 520027300 240694101 755970324 626425904 141277554 693021987 474005806 5437122 658031228 510424283 275895948 95464190 163951541 673779712 553939229 388697095 763379313 11589265 151630780 245404953 762743367 145262855 112329664 571189020 702620920 499898543 846126252 98266002 501755852 884281013 645788948 394406030 553616489 166905566 169321484 912286257 222126758 950011431 173481026 585285459 983361149 184422261 622649714 212728225 456294795 569899108 553966273 805132530 600392521 512844439 741855433 358119653 616566603 296546585 699392339 863623956 557184852 275681973 221711443 846280721 687551047 240838940 719306576 380256826 493572152 535380651 678370755 357538433 481760479 749478307 648233971 131360196 164453995 676723630 661473503 638549543 348533531 694745862 365481305 567933398 163402563 404441842 932952133 968146313 590396223 528112480 375071474 197094473 835064561 253909753 7527259 953424982 168030271 839403561 932388626 15275452 322132631 672131157 420261616 696184132 1418166 653947064 11272468 975513856 133252828 913179847 843560914 577787041 634249768 210955243 787162620 190584100 577688024 955047071 497274132 494027721 204770607 37791050 522850581 746028245 509220420 572273114 694967471 432623716 377864709 841124266 562009547 666948400 616914425 927947936 222330350 13376193 173880157 405407407 30570924 551069353 645714946 865371647 330175035 262458465 326188177 847594483 36238661 897393112 485274701 999518836 929568289 819541577 326805159 295692746 961307968 58412474 646185183 163647308 194967465 523474358 935855523 163470772 628483270 632745854 37573764 220949298 374608665 600529160 744673345 513598403 946863422 351762430 644943268 369523505 779897992 171243212 703121137 586297287 26410704 266206125 338749575 822186995 494891900 443007503 742515963 154863915 305458314 354391914 947378104 496045475 222595576 273282609 603122840 39218839 724483501 516845354 948944813 125177362 683257596 576138956 769692396 281536771 87015476 439128616 643505769 232245539 853581570 754103102 876563285 740008029 809740749 887717995 783756820 993883927 21702309 620479714 275563172 222914384 141907711 14012300 645528789 438745707 621116987 172859861 372449676 318996449 396133391 793674804 922912713 701865087 384749369 947795959 932889175 145437592 848316459 329876698 351372166 662918582 102005262 559038092 175940628 394884680 671566269 829691705 348212106 602303630 850982335 560634788 656419796 436878912 333385238 974410518 223408440 571632618 471331187 858271065 293526140 775784104 892782084 189431782 271955575 150479381 365135582 458549183 904503353 871304210 670021707 315127524 329538657 942623061 754790427 915377956 200791985 852347062 294102476 195490391 419573879 503196835 167658896 491705238 105184707 362517357 982211838 774344337 949458260 455635216 226980262 715260509 386064991 732978242 109015890 930824442 941703657 789919893 733443704 392320764 215738932 15897598 452166695 631817524 875118532 154761736 618308695 935932714 746798058 619252312 239163241 315001702 280919467 27767456 749275610 274937880 622886233 252598127 65284812 665030287 350070315 817577490 403558094 112032215 995369606 634470283 598754098 182804170 297969086 840295636 135101937 488181911 473072739 989339454 175322672 341032241 204799946 493001870 769810278 301072010 525733988 596007108 348909431 473195508 776150791 860304960 618299651 192517428 965683240 314346466 300864333 560004553 856957983 691529818 514291408 62503972 574730651 700062613 925266145 63123760 710814787 331905311 417386285 324795935 756555972 733789082 457863717 190123250 606463384 757428192 997809288 381063619 987802608 381961613 787069138 470685705 571444694 479445298 546281021 133310220 761887810 900829780 548738981 158975418 634343061 341358892 266394168 36465864 999022930 562130914 839263935 929771229 402787463 145732045 580414019 295042785 847321270 86069884 420134834 281620112 391780204 554405289 104844568 972285374 385205463 285112493 45998687 641335589 214798999 406659224 709109714 426008167 201132764 137516269 215924078 162408147 819200129 204815210 832929300 587715125 590571383 735799348 882054897 770832135 877584495 142455698 539071313 464533702 485243489 73759706 292872635 4839824 472835058 971703600 143544171 419449307 423619254 73118397 279454709 74284738 867560155 787652967 530567309 967354090 119597467 857022554 14579005 432912673 736283335 763692815 587831951 313357072 685525941 741615303 90636395 529536283 963328396 366887468 502021696 965224284 130326416 426282839 508051504 515358799 272319112 773979350 580737866 277676950 937324321 91041591 826370192 596112511 595639415 528131312 102050201 573074987 222978985 832613582 463179166 187474869 803657768 825922288 597005569 323886275 730369799 525824575 325429355 677047692 330285196 540074136 691762908 495938868 685754006 293757556 244227986 13215417 179271802 694169479 707001910 424821384 316850568 347591556 660768165 768925690 176864041 801403941 828306511 131498986 290371862 874478723 343140463 637353493 914356257 904955130 26583864 703621655 620065976 629706887 202778794 449923564 150298718 186486791 383816631 409711457 157141312 866837246 302067781 784333390 460091062 132586003 97745874 630127233 633917352 967499955 61787620 836917737 682107564 135910603 192551469 878167965 813858184 918048508 973955127 450139888 108523847 702210132 963605907 507553604 468163832 389296604 395575013 707011081 317735017 481864823 393872224 75819889 795669474 480634480 774546394 719814227 396095444 671302650 991634934 2502083 569020907 515618014 341034656 647824388 971988945 846375745 526672103 669029935 284449704 789300209 423259020 908101646 848470757 228027750 386068213 105788517 225847732 694277626 946103256 986605899 216780173 94201797 685101163 873446063 574288474 908048936 835556632 598137750 854224110 196183333 756319639 841116786 42895634 973155744 675926415 247178087 459900861 689740247 519155034 888571814 302840395 555474422 576200937 602723633 532235018 946798820 233522904 658485642 445824165 194563323 799848374 722985877 758115676 304640867 151493625 868300212 144202090 942581824 251713552 747886930 812496678 135842417 97632755 320692427 200350917 144804000 452753580 182439307 878880303 807067680 866740989 512372617 567500962 68747544 744343550 36139771 165455841 632383031 771195398 947236342 664865380 642634193 96041476 81318840 114971750 482043865 475890234 425888465 326758204 622854597 397306369 307369214 142956495 949408266 598798439 819047951 939947718 699720084 763282198 317905049 172186170 300907813 163068835 355080211 313246362 118794589 96328710 101176760 934847274 140533568 987187993 163713445 587039338 678326264 971078733 47480000 740694454 172752625 865365612 908877104 166621986 496486881 945799236 352780474 232526069 568195689 298693488 275111525 281894442 160057176 547593961 200304173 150518994 458557772 914071215 485048408 866031156 83843314 434105336 369201507 330328888 522245486 604123598 368861742 434459125 313667091 507907458 927207544 388838143 39304039 900004884 921860804 264190246 487397584 420783862 315442975 929223578 820541969 31081709 195865301 50977641 249417155 511293909 483354634 223454239 963382002 70408841 115480868 305032474 626219777 807204214 717162084 234823208 319401775 11453653 329710005 421492838 650042424 472414150 550271197 412522717 523292707 701109779 457711267 21511673 674060674 669262819 674573955 687045107 855107978 78984283 43448434 184739387 369433139 955673656 778487073 576655749 734415928 639717180 761659650 564076359 448036876 199445697 279289030 225681099 839329072 959855785 380216786 286510448 299726985 969826765 750837025 391762418 882752562 156400485 600537051 781746649 982914095 617899789 672806109 973411809 924811424 806561367 363333044 494474924 451664342 627150709 736400143 699104938 704194495 765681937 327471229 961464689 828671689 721448917 561211880 334650071 407500660 56870413 627742463 361085311 195958263 140723485 123606358 12659240 440004106 740124737 787580858 408306001 202030447 742785068 739785595 655117013 879075641 547489132 563351821 130016070 118969772 156448808 610131015 490135341 661252071 115158767 353483186 482320399 639564434 785733442 371149369 229613002 849981296 115274385 596020231 390615451 398934761 81832387 559434891 869004690 209767307 972416301 737469121 644911396 745800066 868297200 930514757 153201960 291331117 624677410 322993209 155990042 98943042 48128896 186673749 46003138 933486183 879758681 702373047 315270981 55370382 239602483 624502629 77570572 13724377 378383327 47414600 758133941 336048984 754018347 692218986 106415182 507164412 436050668 967022384 390923724 946575929 191750034 549539373 223165894 869279072 696543589 488923700 679189809 785956538 80687112 429860850 968641616 900181938 258118261 495255513 274368182 409188793 179136868 638292624 350358102 875719946 784604500 202605491 830501869 438892249 910045705 244505337 189937621 930173535 793248332 323599418 430846853 524589910 285241439 183475495 751004241 236338734 657739317 659354592 647895466 780352014 601419727 974066180 869924550 135397249 273493914 453050454 962056452 670905598 541596619 588282496 924873639 718492961 856803682 659932564 425112480 470486129 274870469 95426177 502748470 766851088 989572741 372676035 720754332 614756276 916525410 315386923 717276945 101358010 476967077 253564944 62191085 794748655 547522385 580549261 931751328 462097015 851817236 107186364 113038809 33362353 449852291 510959193 897334384 102218103 658969326 920371565 511558474 882161233 28930705 143482740 901067025 876965596 722894263 360392196 351901857 54905712 187043834 872671337 691567148 704820516 825327939 797610354 840180113 552247019 976836915 68162347 278243586 944942187 690530710 449295654 465003924 444425657 152148198 668930593 135588482 174461333 816208538 815756044 819136793 466494453 825546526 460349903 228264500 486033051 769276080 6444939 345492434 62146210 263721343 569430569 293075449 965724959 111164815 529742659 543670609 940742744 533065921 500732968 424632741 988918897 67908386 481872203 668819416 785644171 163684026 699894230 515820014 134843679 373281176 856809889 42758 308147785 122208110 487701272 7111699 46035388 532214826 512562820 212932314 374936332 518186490 505442386 366790026 312571245 807829314 37336037 961917663 41368343 188764583 606612873 344057450 863091511 465087940 825874886 228515489 975492863 507710355 587379911 787145336 990544691 54413136 911157443 914281145 473757343 788903274 767721081 866728461 82929207 78664895 175641992 323257594 692736426 708854625 496431308 57397939 433582060 516458464 78844762 532841214 412817552 628353997 761003098 954594265 991865980 300175882 987073067 407428667 302374834 613310959 387546360 855641447 270302205 356289600 589244661 164427041 554167947 749880771 365162704 513864061 337660159 992426572 456358148 166617400 697559796 438133251 669268615 98054648 585252115 945959345 447438741 180811450 901855312 898201114 764037034 675125879 774554977 929019185 104616003 203633450 356838865 96510172 904152493 789116073 768411177 793375443 789128148 956302731 167674319 365103831 920731346 292250991 464218119 901268874 953044677 48354792 513477161 786460577 624426267 333362867 990665039 551711058 279903300 171751358 22428260 154277240 639314738 103279540 617097096 226011137 636949612 704049458 889592999 760190739 116808389 617051556 483044327 380056130 658935085 14848000 205006354 143999332 411847675 615776116 712326778 427428889 734955852 560875706 643844268 126693434 145217778 622978793 839330507 301860154 597581340 752691500 284838047 726225381 145815490 863267034 964869297 319871846 924982566 645298026 170172549 950116685 528002832 822453228 517027048 757725909 467957467 404044160 567548500 869018528 857189787 946027497 346164166 924782932 703112136 38530440 408473367 252805809 550926944 91692034 419551575 540854175 178519344 329073749 548212372 439811373 488262036 131476758 56236667 812006370 621063996 807599249 195509734 926644138 183534474 837777171 198273318 602331460 300552730 473395115 825517336 844261026 497352072 330949676 672319352 488756926 50490064 542964602 530851228 113778878 527250360 228185583 592172620 450688492 837468789 618231342 990441586 208068418 115875139 876893306 45944162 869681391 92849979 59303420 501673207 788929053 234498464 182558829 925240803 406362156 985405535 365493377 815578190 550565828 204059949 830876142 144172510 662933722 655974340 322756717 324593008 328310098 223724849 662661016 726759954 741098554 469141978 953541246 574267633 792535200 454494197 146668130 531683245 845354809 132239365 312940796 398399295 67211512 992205621 368040386 354076451 742881808 394679892 317284656 93179025 878680821 790930321 213629674 167375800 658820782 226955955 732550776 903390581 126438794 645021748 756856766 439722548 795307009 224663112 900429021 237679213 215946139 413848959 287480255 967943845 77835544 76730682 202739360 27911496 391302726 539199092 819898576 390661575 981190349 602923253 446301538 280500124 63510871 518835568 863390910 471577185 462329155 451848018 35343027 154680510 249040814 18134478 501810784 800967502 922644066 784012578 211415599 312393296 153292708 397657272 226996143 690310269 801564242 230453858 876021944 837164003 732345837 581333566 749950449 77136451 387827063 53148009 398751450 940119249 410480888 625461211 954382483 600773936 553996412 777341852 293321830 542967128 445489097 450574918 474760053 449678008 285832332 919685467 838800223 99868220 522649658 326673767 236643305 727039905 259341775 625020508 515437137 143404141 100644599 503035726 753388566 405399353 301791978 694140390 786574239 39976952 992943104 382747610 316079941 175733789 83046395 261247881 496006019 979998687 262589131 156581501 143392287 361219156 235225252 390675905 586244165 562760413 787713905 918782935 67858217 982692864 502723800 402779003 211473055 540880919 634679626 563884739 31197933 2445380 317706520 341636802 329210404 611304802 671764565 311037054 930132404 17948027 360881252 784312750 121821475 704936107 780487916 386247362 840935465 887132743 495587943 471565311 974326063 969807652 50871878 355579023 163860948 382268480 975736138 939974397 247847061 557935713 248281868 838794645 492590728 962488735 537094636 940739118 223214765 608289179 286092442 507554931 991436084 921454251 926442520 476184940 899754678 224267116 37369249 997198029 671566539 743406748 590361275 836627347 928042435 80831584 784589363 303363087 302294205 387540085 51728052 801229514 279468846 477351486 629915484 974175397 644993954 5340647 429712517 710131930 532348733 306772507 856253233 13294374 941667558 615454102 689453125 511089144 38512185 438667223 662112560 323925189 740207344 387165811 281508678 410255682 512995848 235039376 506627453 539720644 280167294 682270451 261209258 670381148 314102848 221537660 852345060 544172002 136662190 601399379 4885538 249806721 443338818 927832159 101286876 427177797 818747919 415852518 468918913 337830056 107619551 545671698 881697257 426745006 281793782 691883341 15292951 385675748 894359635 182295493 200880669 743183175 751491365 156777254 630261369 953738790 652881204 504531234 448805627 902516184 420119784 494885190 161844868 888088858 758748263 599941669 68596713 965030947 178429906 806624542 732769736 139460058 551540015 375545980 949686446 551839539 665704109 164083962 984226661 280052960 170814759 908121335 816925014 808182434 987999775 661950274 976675131 813853896 587675406 278363517 770427142 804793248 755875466 783594121 835279946 862552783 215432409 598224522 594704274 468021196 825177961 108741314 952937374 353852743 343480274 578963053 273305017 884899586 352232073 951391435 36351296 799741053 482066729 775167696 818103601 330069890 850463514 285727710 153294784 710757989 113702269 542850972 485068864 379584832 889947053 764002964 126090030 800253555 381951609 610539322 458487823 937343920 229417570 251309632 466095873 926509900 129074102 423301966 432257315 183073469 362147947 491823165 121948750 721548185 907321044 1791423 156656975 605914862 685899171 708912671 780132867 352951979 94627322 662524220 302921531 746543102 260246572 42637217 523569466 732472731 775488167 350734959 392874552 13975920 395101842 56142353 525493165 659676668 495906779 128224074 216881781 581265231 440438192 935089891 842813153 164178189 187227380 599105549 7888519 18062108 55961732 867081204 899901513 594439005 855615774 749790254 379229844 792440799 12536851 32387553 115437360 736026702 683638271 793610029 896629806 810739166 935376035 746001900 575382399 397865595 112908509 187882186 416172020 971134005 635567718 376874179 793320347 92608073 458347695 958954902 88459478 409132483 783976355 567733435 912379852 820324711 766718932 643442796 137670008 184678043 167747512 385882230 12777541 717307562 851133237 894259442 781385036 969050308 333101380 441234846 764796507 787943942 75819702 911792894 515791541 319189359 619140572 375991555 256461169 35870788 768239590 261969737 651430685 334690929 679141722 661906398 373923363 245991081 685605568 724778994 731209217 423442463 501627199 36097775 227826165 73147043 710260334 484031340 329067719 624724307 391218347 226440916 633163284 338551915 559432246 322850603 872120183 822114979 113650932 309795864 786252108 513752570 585006909 905391830 133856268 583201869 230774996 812940395 317640 486093321 978864933 570564317 517680155 494162347 638946820 584543267 865091388 940539853 972608535 8616065 934408550 56244600 948850069 772244204 236057569 760549446 829989066 384852217 337097951 376774327 638407796 467717967 245915961 302840885 341007769 686973054 601370643 319752209 843750174 820366666 142850343 752425413 175439506 287467920 575688989 333683085 237811445 803797399 162608153 572246187 26715383 407811755 31019546 873144946 297599781 368371199 301861532 212502754 933629999 617311195 275032392 18257313 948518738 90779064 845405628 830024802 712085823 426194461 991169277 228705092 626859662 408054685 505624485 359622003 874170915 333085211 744418028 425743746 893589892 294462935 743942256 138106786 718098197 360539396 796590113 209061959 960536487 807929225 214395749 139841534 289262862 793466591 370356315 958092724 582504489 717993155 482440399 6778192 973672798 291178891 125714533 191094017 871189693 23092624 179265768 392479046 620604945 532064964 390558922 590622418 421016755 707318178 791275451 582734595 252157773 666426820 503185341 702721476 61203034 163286448 78290486 175464437 212593668 73507684 767517812 13190799 262350660 64284253 962691209 546458095 356598008 617566750 124237416 814404865 48047846 908901177 297439468 310580356 199806853 475460444 626797236 568930652 495580240 853324135 983387863 852950589 676283 947112639 489128619 460097837 884477552 768695990 503325557 956768851 952103130 822644073 254873342 314076293 269206744 122832680 973105322 805565212 924721801 939084338 745572687 933739048 402844959 314533240 120887824 370167499 456577618 244350543 1609558 449127067 95120604 646748310 546869217 105437097 371423117 291203775 268236107 539242239 361053588 58167997 571596376 47205800 488035776 793936897 22615575 26851212 508751456 93594771 221824711 635398774 234720974 384411277 991655972 443163719 773345339 82553386 598427600 989490623 492072139 562052666 336683464 646861564 312429277 686562880 334719010 603911082 276826391 222774017 1390528 478399204 540220498 1199326 569150819 524446544 587085565 414142989 284021770 50144138 684294845 643939674 753324001 826048181 552153558 27547485 920364669 770174687 269333091 286357921 299171993 62243463 650758889 867144969 99527904 143441592 44992824 783444305 269260659 139351786 201750471 867623749 680800360 869677410 230848287 817330086 895672003 96825250 941984540 378572139 285742185 260582925 24703400 920421797 919901225 782963127 243669908 354529385 723994548 930813701 678976449 767906935 794870143 861947901 157873784 286332869 768293593 480424342 121414086 573205353 885065854 431243083 538147744 899906845 842715382 573180394 415505667 802553141 721732997 641279765 590627527 537288846 317450663 115780023 768623203 430575035 749620105 98316621 259033030 468644641 366920798 524655501 767383430 251088126 557502053 402060988 365770738 319508498 738780643 922026904 794173513 938020242 208213708 66521006 880892724 62850609 485383599 672342291 595985995 175319021 737186704 957816848 312651606 282694958 155764411 620488574 730019092 83261757 859632987 207617830 84860481 98635275 571535012 147440688 7814831 448527634 486085015 215395198 864402766 244381785 744067501 424554268 896578236 63488096 789460538 472857530 607507572 81295260 434725195 121439584 795344971 57371919 772042059 383309985 830704327 104871412 184083568 947734334 211635489 686075714 127521398 484123562 2270260 324305539 867518675 598808955 40224596 50253034 792827776 57308372 961823557 859957719 806309665 389204051 718278745 118901647 25086006 707593219 344417486 252799931 265826134 522909761 968416474 180044966 439045284 778458536 629839479 459606849 264802780 939793314 799308851 255098511 511085410 680380068 913631985 619972311 3318425 463964731 85458324 596608869 215939509 254715399 518654716 437549944 975562534 681188115 724250478 532275135 323056828 916808263 919801947 97335548 881438679 571758924 847888513 728726763 862255275 9452372 288252242 325850026 112965624 759623786 466509347 693824625 13154150 91416238 489299089 391850328 88725210 588459405 896836467 660020805 463466573 711795821 832742432 306175614 522022229 923999637 271524036 540026175 891004232 843820109 381136635 91510592 418896503 754146063 757024261 856267271 93506858 719067557 10354090 813162635 679468166 332972423 603316905 821440844 378122753 89342559 743056278 771333147 896498122 699111805 193740889 97960030 72691336 437517349 320339471 126926549 996644106 656456589 812182113 189876950 30573060 880315683 948204722 159796348 13943710 146620571 603142136 46263993 986623102 53452187 876790263 951111870 518582092 500155524 857009320 55763158 648347957 771373823 393594490 971899004 875212369 354683338 224766566 448280620 647688034 446777018 823244881 627438178 995862846 493464310 32103973 854267626 716717002 98003528 90141616 621323748 972460626 539813521 167320532 438336500 852895682 66326937 296174863 208860551 212066206 750532249 37036987 927342572 949957553 729079925 652900522 249221993 996790347 737724079 669057498 521652233 829493714 360268813 403561763 475546390 877870711 995082311 513062302 234943519 949066159 304017233 49300942 731766285 252519492 786922040 228278913 67335089 633950832 504657109 408902091 728710788 770292766 808189336 724839696 195630254 542449985 806151162 973274197 399161095 583990099 732850744 537124430 19288488 152345040 395850421 843637753 657153417 37440201 178324300 293733357 41771940 460913773 917115510 236885430 413671316 955387273 225728705 190384976 484992778 18872335 611848419 571727327 752271655 499874071 601980093 159215176 40631784 571155517 843902716 736570318 46175484 211991601 748034122 599772850 626035295 309712375 830501236 419377370 597429521 770964983 342530194 7174706 367633994 450043378 323907676 210061960 855488925 974223843 875286421 414344046 280080955 827059568 572384637 520019991 179907296 757172974 5806670 145087407 735680236 767104369 95524638 724967288 48340155 170602244 420374227 468736164 42614761 501710584 479772689 149249642 238651344 461926032 817657432 765264927 160726543 260074422 715512051 534584229 919125514 193145766 377384270 836043727 302508078 956589775 374288364 963465805 627214419 123500899 540570912 17291814 978683947 790943805 521649545 885434765 723077546 987994588 179748282 127645227 742043684 64246885 708256399 338250624 506253287 833058515 569146373 797281455 964883953 166546995 420055066 205794000 376809248 854505697 69039134 599607086 401290586 435997726 463831196 711051984 882999106 477514183 122951832 129808638 291479466 11363767 469525519 12331489 195829889 682321616 26024283 432257767 56766429 746735541 898088712 521102574 270789135 227094670 146256462 966458522 647886311 910203099 9950108 23117923 626833187 453080663 249744383 263323918 482704631 425096560 460576418 277013695 344545679 765310888 366340014 816251037 993555244 471897035 489091399 769345028 863039904 73638942 662278735 776091838 466314043 154262981 728639040 526069687 469844094 145042807 601092179 531127848 88021367 574537526 794642298 200420917 507995658 824982232 545873921 437567272 680192838 771760770 14209745 307365453 627897056 613305610 200099415 46405106 967692865 757199777 46561597 838757800 134838167 755690949 948985223 518170214 856680565 705098769 761701075 280414802 786400182 882836357 213116469 900399186 955700000 997279517 343615191 633775980 8525456 936757474 449094152 423838517 325634411 408707338 47638999 254512128 866235521 913993993 676333999 549957911 484733422 989409521 931869690 597682006 45360016 998553740 346498156 588251516 930238481 171504770 146625005 425733596 126385220 876375465 271451383 857555130 265536964 998819490 59797000 56017900 374465200 519779926 5626140 71428345 186364205 444112079 575484635 701907100 207245212 172585758 543179544 178800878 522134975 949977682 111110708 926235099 491752954 516551098 340015346 972433216 753600768 869321755 47068072 257151692 734994320 772720958 876732861 477644323 438866746 143442091 19510350 38181082 107730082 13471047 909008869 890308324 644080516 398218487 453282826 493803518 735645194 846478755 760219396 841161861 994326901 881681467 339603964 702535484 193610437 543100075 365853435 810838277 164623829 60903179 988879026 759273025 743496187 677721606 142000134 514103395 482762889 362680356 177353168 966029418 937216282 895875702 508127371 697580584 973019864 536472668 493291554 608698414 321486351 139041632 443382017 141442538 858926934 117197945 27383652 938848235 103173525 83423655 406183364 672312355 920807398 651689312 522291059 644366786 804091598 894803816 856261764 922796570 995399249 297209820 525836215 581857886 747289180 198167024 192427271 600144957 625247054 815217994 758616325 915705968 966862007 878878206 864757542 56496661 581958085 670053324 958133381 73583105 882456832 164350815 428233900 272295577 666878161 483911858 43229808 203476437 887786438 42464470 75680742 308962319 427213453 860233811 403091109 311630998 37340066 129054124 704166091 277243329 918517161 899507400 146244167 898453885 566505855 147118435 69619522 664090971 507010196 741592348 673224978 530448126 742586176 78476288 110085325 492633334 844646972 101276788 452967887 542139942 40391958 731953743 957720918 41652637 609914120 47662647 517365937 73428471 286194390 318963713 579283447 711780002 862681304 745692185 894855447 280794045 978048570 146636544 648179800 689012155 481280722 558813726 623578140 380761179 52641956 417923520 195069143 318426549 890878268 929557400 634971081 110447626 492132309 251231070 346261007 910046297 276788179 722343706 280566380 55100341 88137463 332713463 838820337 722024100 854737485 949000089 820587352 56827482 850156229 493510849 675696227 958929534 775344459 412204759 407482292 431657229 506477572 104339184 928270866 381272723 978584873 567323159 450266839 366078441 236782797 811031460 685590590 671098441 437680016 737142606 305121570 347107220 181697496 193678440 49704134 980958619 339652436 587062742 100539688 496219038 666865410 604198259 217971157 166552914 179605147 728717056 847536624 985349793 493064353 351055238 518023595 921736516 145716037 643579085 203710006 494850329 14257110 972442799 22674718 532370498 728839116 329089699 254640606 749595953 621802634 729209144 534058996 533817884 984675782 928904078 716342554 945450910 767695345 362453819 750254266 931676680 435704647 251101238 83771138 532853582 897649900 372768230 933671585 754611504 612402296 799245599 648450116 13271864 485141529 319646815 382655643 356712243 694429878 305454511 846020537 385106656 85348554 401740054 113061380 597451504 613143147 632285935 603199495 324360682 643094680 337393519 154293320 258609947 256245262 665432573 978150802 660817309 917349058 264670559 583739530 60554890 765524581 735221713 878419733 243983585 932708269 9844718 337475746 262269042 865294940 532300441 102197210 48353421 799640861 568240481 914102308 425401093 79212329 873951302 220620539 328965843 235006210 920682218 881732010 776767850 879052281 206590202 898221681 295203313 73832759 427295444 847599067 389560044 414787081 28665246 141879553 241532679 434156535 877054291 56665548 931793661 171352254 13947157 392715800 760798007 298882244 194544823 346602359 431764216 301919594 248479597 799634128 220799478 347281124 204639931 454191445 573366149 477711808 188053008 662584511 997021771 990346548 737776615 843713600 790870369 665630745 876074843 94785756 799788878 419957894 414808944 598119045 645232257 734612635 24874445 596048561 382694562 495740269 450127752 342965011 28829457 346094823 389293633 455314090 150160158 165599136 827219272 645716235 248937680 577377086 162350689 642126313 542239002 383605485 668408459 789354705 274311601 745018322 342003966 90151296 842368342 187467246 856022700 283492219 423108308 150549450 992068683 60677250 608072863 716163564 81862249 180830639 775326717 974643904 264859222 722119714 813434949 92705982 481348747 107854246 736323369 691482682 274063762 751423067 951117479 432642298 526832812 849541493 92129031 715324713 462922348 865761723 315914995 726302389 533267448 875945532 254034720 339982316 566307101 81290427 225029663 460709888 335388190 685173718 497181680 69160015 815195787 239211183 86120725 884298270 598175979 423954096 868600316 803815870 589892469 417038145 818493190 495874080 137622321 319752095 181358239 623129412 252686848 732083367 971746508 27500154 200579367 822114666 530729810 363288427 132697475 877173053 472365736 274619641 872646710 277350560 681330034 780233318 211705283 999339761 934422960 650169049 421960249 173856787 921568627 598893346 553462709 791342417 650751920 277933202 927857322 663502841 845897894 836509156 579944907 453505970 396389232 128219047 792022640 600987375 767156273 765568581 348045385 892932929 572936674 28073581 313133637 789458575 15400488 848503557 631875342 712051057 689317116 636818763 128511471 642942730 815941654 5560954 202307241 993146049 726511139 413559056 298120988 256383624 40131062 161660399 795066778 701365893 830375724 380319739 769552786 881814562 296624460 116543283 371372191 311324315 671587105 432124604 432726402 369111174 940394870 516519749 342572275 139829050 828230155 684689907 20060732 68335156 875306062 796643119 981057717 941393726 269941190 619580314 7212920 475246046 469551024 763325829 977442759 589157880 660436833 296147950 770974924 520755512 264179095 635423547 897894839 87706860 137131658 691543870 74475448 458942466 62976052 44070966 795064179 293620682 501262620 966447084 53473786 575115921 107483972 416693249 766873047 854792382 769002575 806157490 861108204 797660115 385807435 542892649 796415347 886185390 293404778 918316870 572047369 932515083 169852684 492757574 190157095 255452403 486359177 56680625 289467710 23068838 785930226 167128445 904002416 961599259 289448667 903087235 847922888 282823404 184028283 287535100 425584630 67844432 398529948 153071149 118805689 133539680 504949595 561910388 186850861 41764658 238952004 869514631 25324914 681197506 728848391 35671547 393023166 189462189 114627605 425884852 977061617 663819765 716091706 586725285 503229656 706429419 703076968 494765764 64433029 703596772 327817453 123040629 905613216 674194262 767313553 960128844 44578693 396660011 437926308 654852646 573934294 308500941 238689168 578261612 797045133 40121525 835691960 367427940 935890099 668459423 190115735 453568832 504781559 312589989 811813905 453545872 86214772 723564467 72296481 328022756 369048843 822829383 615338912 33664701 697175708 336534531 236698809 702618437 954356841 143490270 262539947 60763528 404121421 111819912 232406127 93893147 68267778 642765563 887076724 95592782 112467158 239988787 908826789 508322415 183405018 415168542 778199667 863152512 784289192 754006625 659219589 50218465 971493587 965428262 914175144 95394167 196512576 433185623 407859970 606186068 408445274 791082985 15127920 503630951 357716627 489437331 642157218 454375114 385897650 658102275 664844888 703320775 49455483 685003895 107219151 885504265 385713267 140386557 998702079 278958828 125664377 331107738 842985005 392798794 790383087 1887475 672149275 649308421 898536833 139446850 488751405 866417327 886128318 599147989 644932728 752795326 472258910 881764323 974769624 107606976 55815720 596594764 973125358 805775619 920379021 902772135 731627734 698435918 329309020 174501393 119630592 10759632 759576425 100377689 17086931 316432691 701552076 369227889 212435191 2166648 979588216 826056122 756623304 953453639 309928459 589025991 760459741 219961510 210607302 534283377 449389095 164480831 656347004 509898213 96152158 341216949 179380181 914232146 698680060 921795427 551121233 296263513 541806390 101187669 916098045 176742928 539325864 679288449 195237306 370989156 568504240 52557430 256985636 578294095 421726210 241681031 507587023 123338780 573693842 293020914 337075145 604896648 713281858 971882770 410239028 879723973 100682389 448087304 239176893 833068087 510196372 889171117 634998683 243972977 557375027 11664130 292437624 107277256 513009762 468707029 848658752 33515865 777240077 254681898 759800255 589354645 214641622 74739991 477871742 3857648 735882101 207442782 709144325 1273998 271162418 544662165 636949946 484014169 905026745 14841071 990714988 454294095 617549894 165047018 597980801 861659496 632967614 86929864 711467868 538686754 76230819 782978510 177728356 556168612 426933684 832880393 682308102 834511916 251602298 643571250 750070215 789405258 519923504 400850872 513141296 535850480 332878881 211965005 527667872 105119759 39074946 301371165 170448201 434915857 383936605 505445251 896953079 332897307 354729942 973110621 515890071 815146447 377450953 123408365 280713870 103799250 701979398 989494479 508138103 877147905 270896845 976772471 883627587 570601139 145492023 259911488 843812766 766750274 271037661 125060490 403389458 365442872 38478326 23903510 592457442 535145976 398344268 298790263 974432160 21928123 267261638 329055804 77074358 551558122 501605760 863616202 822580217 643367949 126950379 106295564 474854899 543746899 491675695 480632825 788378437 872286620 724355859 723056939 334049588 298751133 290374911 382982106 560251671 498088917 475121647 419758985 704540658 570995831 346479480 572553360 206084651 300112273 160930659 901385600 361202429 365593802 211777113 279295400 881929097 149318532 372437588 322993220 53606940 403277495 252916184 927029515 132971302 586336011 599547177 891549730 452715292 853321811 605259199 948875052 579847204 809003219 80423011 42493026 199677584 383236450 410994839 336922234 605088483 933400996 460699336 547320391 245959437 429078133 590973042 113134911 417901120 124926552 797828735 805189379 25943865 645613560 282718211 874613334 264425347 683769906 688473171 669758343 300608642 709297269 964279119 529247074 68112851 939139222 867044003 15280235 267960810 250305718 226029100 698133923 339291768 781279535 676866609 386008351 231647994 230389204 135012415 596430271 709707072 871968398 547634052 281957191 371939912 63196448 460337191 384161062 577545091 436121479 794459493 896665621 759615452 89912139 312584171 962359166 149520526 621501552 840883170 41367435 767677430 608260791 16091719 827279230 446277220 578456148 765063040 362336791 807284610 731616148 887879724 840307653 637793705 27424930 853346730 834737673 172614298 25441422 65067222 192090370 53424574 637674785 496477694 154850833 788993258 853476555 378346944 23891276 36910642 976495524 257073334 167025817 740028389 87497123 66693226 66762572 568339959 829225368 435189385 547889069 985667843 831713537 669380813 808230411 301960844 276269286 880338304 913621928 655715850
