194428
96953795 58421786 928520481 597250429 642663842 500714088 992373484 432985144 912322433 21916162 343427557 223803973 881364594 1360838 338994116 338516607 458458933 13902658 185461133 158560061 951635364 944350178 966866406 461892233 806825881 339006445 703344165 611462583 644717288 144422385 569330649 32676908 991996750 697454514 981592675 607034013 722702584 55158430 469293443 85740954 966945779 428767825 624154307 116320073 816632347 218035167 756171588 290773793 654339970 276762506 392693163 281240396 840867013 599096270 705148377 659401812 860537698 614028939 630327509 37037234 110911337 34499286 854012749 132494990 477522333 201910485 228839936 155711071 966263500 144707994 844328366 508152691 706161832 261274624 897006584 25067025 350472900 30169076 828082648 443495442 693428748 469708187 643806699 262707958 278185881 187833648 797820421 696074243 716327567 619929006 790715277 278371639 531978809 382128572 540388251 489249654 584907568 50272644 388672868 101335085 179586336 32471446 35940245 11767910 190158906 78194578 207627425 176525319 531271369 443324878 580815364 324348846 413103568 30432603 435651236 405440083 501492733 469715924 988323364 329917751 735863708 497264896 878646299 806780514 974764018 9732677 156227420 67381075 675782795 335319071 373233030 156932911 757828551 665829160 756063797 175642205 645018971 154602467 795210741 530561673 915276224 350540088 406256073 274981154 443359024 410510550 507980832 491672827 930551176 575133016 934753325 856743262 929549391 517196465 988328573 840544918 934279265 157378010 347527763 169562463 962641495 520408751 693885535 130768763 197373702 40275467 719063883 586142911 754827326 535024752 800593913 608184363 697730671 297932626 384656310 49817524 864354706 569406632 782313868 233074632 326669892 310733694 314456289 160052659 309059798 70901831 513300171 88563362 704293663 521927555 634481105 395671260 937801600 513610146 921712359 717420295 835518913 172566016 595893771 368928612 501535323 437169341 660818395 639788202 890407700 731969101 826305837 16288518 591741379 528832051 536802265 476800895 733337263 115146724 991268237 681384346 813466820 703189680 949407763 694013440 766350324 160348592 388126941 375532321 949487909 58746839 959260056 652303813 703089375 500761056 661415320 219994070 831136136 36522891 76249325 45438894 520007396 12942287 880014315 114173452 823889597 2530639 402485259 119331760 473449374 290314963 968833275 92766345 843492453 571190525 711500821 453092129 975042980 26435132 379617196 255130537 393797005 365812305 875302437 298138273 442640447 365384648 872536931 648408406 886765229 170675740 722482551 185094545 525610918 364969305 702872874 447531841 572084991 543328255 828532254 273568214 792701384 634771225 662443110 108152050 734414412 478792762 814555594 117038322 397529665 296138260 922430463 908040443 913978201 535986545 892703682 8083627 504316292 432302336 574358047 352737339 818663984 633772128 868276301 766197752 997956053 167064850 193627545 186766705 734624726 481872579 799703789 326762905 685893627 133083758 427755735 175086866 292109963 276455247 590437769 381754889 930956944 218913723 224768693 145169988 979424656 650912974 873872684 591835191 883115867 429398880 445089732 240445552 461145620 427341956 644132932 375898443 527165458 206195746 321648573 231314916 784428084 237594376 312860312 310008900 372262438 91198195 434567122 400612988 593395379 300408650 780627779 269957658 635341375 435136600 825208867 507738772 645974952 558014973 931070178 605201933 824147825 739885075 787100624 685241980 872900255 188890788 351819647 53860936 411738225 359199726 946342641 619099458 977231889 91826425 441009490 317608635 453105937 362870416 529403421 239142524 919138559 736576809 916645278 426986897 546186496 384261084 941912661 789658778 847623208 25634212 89912847 7119563 131366938 53631634 606138879 154508775 800986862 124465698 943154109 826035847 888787922 737375935 864557975 204550963 524243260 431388340 630211379 326040756 889113625 628032914 916290604 446889958 476395652 107903683 124034699 27655274 809795083 28772190 284995321 216534265 977125489 596283070 821636273 573349260 618346893 495618194 860943657 438118282 566883748 163262404 172537535 118470735 440789711 348290614 919659443 343739791 405668142 288999429 979955491 215630417 609869456 564205183 800604703 747080096 893438144 183028228 617143967 521662022 791601949 603220466 837053191 755094241 783495101 652453195 982268738 511737295 888147260 880765398 920433912 641659168 749275547 466395300 555483133 342927977 934346790 850946548 870004085 352664442 710558874 598760554 676141817 594731513 731190782 425465501 981336255 302990042 590675624 324937949 631791544 631751397 648025011 470180960 517486350 87413648 646660342 216255421 672062987 556368706 670074404 70030781 925754103 626985958 741274366 242146804 621658426 19937439 905725021 485255186 999623892 495622474 650722745 46631120 897772459 459540283 648892808 211295497 637020929 479637530 981952115 858133519 896050262 613677049 818374411 372425054 946466588 94651708 263204283 124792987 986352201 63492543 468285340 443874070 582707307 334710660 959709427 547595006 768721925 366013150 841878604 778250262 996740959 726589703 846937483 827463722 964501014 227168382 620811283 315792608 730264809 10629916 291069162 25728447 419602553 86469805 838943956 5407649 775915017 636584040 667226203 60757547 644410924 55898199 432715865 305893247 504098460 153993970 235557373 165311519 530697176 403442766 904387938 895730726 991332010 490340595 921205065 105513913 316628555 67461727 126571068 21704545 195103817 113615533 201164307 170245558 643789203 459179704 909932534 306600249 636982091 153099552 427522900 300930973 809925005 78244504 396404306 319120110 591510906 284822303 525330290 478481065 744851100 159765882 830441764 770574688 788461962 162958493 911118051 558191157 838270738 436517681 817354184 122721299 331209823 233612321 767620837 78510182 268654906 25107907 889094867 863605736 984806699 652213152 771740037 222137409 348031871 100203602 853061407 24755711 449653945 351219705 708351097 39436384 496440996 206344327 784700562 351449158 774278075 379508565 386261636 94560273 419150464 89245993 542742140 356394090 481273556 171967113 373773434 340352082 720735906 440773667 673311749 143067165 701613287 46731912 188855516 178682658 541378649 386507752 870664048 513236072 584295571 216654084 878372970 659020012 869251183 529367998 847206341 180826435 617260832 92999339 114007152 110176531 300857350 203491267 701259597 416709559 675553895 293049017 500660088 31354529 500780453 263218210 323845105 38832499 712999365 483594101 502974282 431503784 855143504 696785732 765819201 243687185 887685898 377654421 495515383 350697707 418380321 183402788 254795367 174997299 509133627 322173019 944971820 733083751 790892950 686094260 879323283 680828557 860722587 529406505 720926826 186280326 494513545 302388061 858201095 37428485 892996660 888287116 932282840 184175729 294114738 7562654 448195142 305879722 926850338 834356312 967649006 783774296 889478929 353785765 980827610 218877477 425595334 121753165 508489953 351358108 489707101 399824601 550520569 161767351 677696150 454129223 908849609 489271306 727187870 245757960 426796850 364953085 593643241 313226578 367710009 365666336 882850908 51273998 451450265 45780606 322620825 290630154 952602721 286575437 979239476 691315069 957967136 590259690 853200510 360075144 889709322 753211792 907775636 459194737 720690693 233041566 926604202 514721816 543115646 463535498 822067353 325209337 598893022 297208620 851863658 715441643 842943440 426999868 560241913 88927456 413509386 206131027 356182536 325853181 685703498 578533968 857694005 142902989 755115340 377722366 407481216 391386617 679451212 20633391 650907981 347730209 874587895 616312174 911577779 536458178 796442507 93769782 996529006 275943017 989368591 39838174 526961316 33172753 356871083 288228073 915197645 185846030 264771330 76547318 325996727 109954245 941039408 193364181 663039926 559176743 879208241 642238914 829224554 327875033 398840621 147872825 651932138 560113368 766764204 604174652 615640964 426609599 473446119 208880313 261495695 215644465 489135228 5150531 539801513 374109751 550371902 544200551 792550601 232455033 457630310 427395788 444607135 395000102 664249213 646530645 945388549 880619131 943471039 903295407 953591023 334289737 573816286 80401738 845481913 824039673 840482129 351048287 651141540 173118180 459608225 83694204 195962736 131084860 678865127 137319650 670595305 249017771 953850477 84458731 817450118 12979746 404301335 151022768 556422972 444590335 926814310 458924850 901774793 468629938 568974752 322674648 836444342 793969639 930292793 226233633 653992773 651274957 720647859 45922518 191377945 27616642 278568575 69205913 138175563 105333318 374026198 28308320 589885483 249409608 955166439 53012427 508046629 78356777 441632632 236202678 899224120 390138574 888739648 291948701 336673701 149059056 632207142 322662324 637681061 212736090 419326328 340703461 457306038 352462590 770388626 308428776 740548025 649634596 950754416 727920270 747680724 481281535 681571764 235991969 863180072 76927335 251547424 137902229 469327201 18119667 828078504 463803828 863281411 686375450 811144292 254243624 309289259 89498937 107657071 57719128 143002879 106185811 401831089 256702510 692824109 419042849 879754133 546511359 754469354 582804946 689521303 193220187 298312666 141920027 406488437 114588468 852375078 383618502 764374917 592853521 714235240 524036088 557637974 340836597 435438826 60029041 143197801 21339692 491313727 128572800 504221581 175749190 203654115 186372983 511855226 501590682 751560342 178565524 572621366 160257868 228646000 76659716 799910512 113616931 750501981 571215192 603249747 1090665 446335087 169143929 869264942 799149257 962052386 49698658 170933695 123212276 409272694 323595281 689832777 525096976 849357106 476406090 945635917 774292833 900158661 732094744 971921063 320436919 397046315 214519849 934806568 620971825 627416279 124563532 344981731 177980257 503838960 347688899 468448734 19146643 385676680 74172911 464487671 166464485 352222593 104567787 913012445 536087963 542971045 481063258 822770664 514045855 847878183 778840977 949564923 327593277 337128691 274844629 752583643 214123952 554305878 387833734 711434200 559663993 573998359 5341267 495313210 194239014 652898876 631696653 794378436 13961918 586242003 97085551 434218816 161572650 394778002 11779779 871052160 676272884 695724595 386831898 976892716 710827664 963380205 958569448 999743043 685276444 931125965 454584395 650132052 362913654 846055062 378118499 484033066 137340485 720161594 713081881 918727268 765576323 842892954 59586307 575254573 345497452 409891594 110166799 518167808 87121628 698239553 593538427 776172798 187377684 924408100 217366872 349318431 26751488 620562993 129873583 412909096 159711059 711290936 135439636 875417162 323468788 966439815 205702363 655429287 504120461 812231334 213815335 482890678 363912072 881852680 198782707 658193730 328344683 902689965 712876107 907265641 317586410 839205816 823353468 903231495 207311583 292264499 250170209 297586374 282814465 588199533 399998829 975104627 325998101 742333296 425178435 441628082 163920248 478710012 53386892 276848977 141564822 323956225 48123287 385306042 131428100 599574253 18108317 492048416 266653820 327422159 19661030 245561339 5755664 545868813 171488782 463821639 79192910 582769436 217042023 898042353 164127988 367758664 105440693 555755005 460538121 615061207 85262227 146762599 84727380 817885804 459437833 867647238 357227508 719251100 222006807 875040842 251300344 747336328 508783670 755437006 253582323 320411918 194069701 669010514 27002773 752816159 687554310 905083253 125758345 853322224 694545229 907261640 756460731 830083320 357753444 385347995 28424949 894751733 373943655 436376132 407108332 418363019 102497632 251923288 161132806 303406525 218269390 864401265 468971047 486069933 280742619 927822073 579636014 994370341 166634711 575658925 225170516 906964228 120578870 682142935 125525443 891464802 468215475 785623480 403792732 766056812 147599653 208810031 133000495 146488972 115638629 277340791 211452895 395151054 105986965 610707783 121908062 714716524 76223256 386902531 174001604 452878419 163405275 337490238 299174223 488049710 482413128 499870559 270051229 795379258 755021733 763687846 317188292 532870066 211175059 390524922 114324034 211957495 148508612 983573650 333161699 919814962 800240697 933812854 92260159 324589176 184426549 207138116 16674466 888110628 681207136 732489668 402584766 974157623 567913205 976755812 843296035 983366110 393566895 968033938 310694103 878550323 101211982 132928685 120168682 219947786 119824316 147011239 116898710 774392757 262245621 566706819 17420335 917124711 314694833 588876259 533397627 967849246 609366894 724383322 571407949 841530909 674769228 807631882 566326111 689661519 381232042 793002783 10838109 854469834 527170033 661578158 584060704 634556513 97718939 98405192 8822272 663417021 29549243 479651945 157469753 963094054 573466166 889849601 6367161 662288830 503364222 551248447 260525100 966618869 876475598 957147536 562606236 644937251 98166274 931605305 925898806 947477323 74178113 835686466 439730998 709091805 391264956 544277830 514324252 734345821 88062557 634403526 254765530 823161301 326524346 500119891 406457587 459702193 427087276 871164399 585764105 812487995 746502124 770504442 635408420 859154441 468012696 967707652 587791848 608716543 34403146 370515904 291640101 513213187 182118 745385913 171901567 610652383 234128988 375815219 279644750 765605365 252977436 300830807 273273400 643383124 49090126 387040080 27646568 754582790 230861237 780420989 63370695 388696611 178254758 389892260 292074105 725184324 144740683 170896023 81722474 414695623 330345984 650933275 309629340 684361930 69975235 908183081 552066824 870134134 774929601 895251638 366931564 900639642 682746400 957414592 339304068 669877371 488390925 676340642 633111599 927292857 193662942 998589185 459218427 765816242 744067072 941171035 73922940 886771411 219195429 849217999 709776475 782333564 160047615 933546098 112617337 321915868 11316635 391420968 143635500 544380421 393080345 645030838 198615482 212226752 97945647 465638412 21332051 780088455 598259749 855942894 696674758 862725422 783120759 811270435 170959912 538306593 18328189 339723914 335252577 436876784 114659048 125864251 75047945 852624199 192505669 446518715 74555772 960802529 705727627 947696667 93249218 153658486 95046663 213738585 71027181 166209908 144057164 529915084 124792129 848920770 503123156 668523174 90975593 114683141 24176336 761618123 11192554 388639629 354261305 515528541 450372675 742138297 532801812 959180498 611933575 860136572 744590142 963943417 694275462 978669858 883144970 964179831 144159314 811130608 241570511 913838069 902772989 994784914 227841844 426969981 419952908 969355146 505815297 789342611 744191759 810783281 153738775 437237039 266820688 820460802 233557156 321250198 126172041 624256786 24725346 397833284 345946780 509717641 276126713 360798083 136305372 157427547 153039070 627188136 72429366 683505524 650218044 745279308 611334991 866696420 742253245 918327109 213772018 374566985 359518781 817596392 499285272 775462388 632357868 722457877 8602217 682068307 649168603 765057969 353320967 472096223 221533697 899223870 696123212 998852451 215761675 546625063 439496097 865501141 591554345 986546356 920568636 944892546 632240827 980315749 301934897 600863155 300198708 949048867 7619450 578932236 36292075 977780440 910548044 952030898 258364603 540473228 396191540 766630310 172833291 555999330 64305151 267890530 96904837 710885187 478330527 696464053 660970517 674749758 429189447 997433240 987293796 999376549 352865618 565541614 114897300 545712376 247379061 596792548 58622493 670934355 470221987 694564992 427500756 832627119 50160407 77689838 2139866 665625808 110993237 806176695 421364542 962814313 223321862 741348901 206229592 855162401 616562218 963401333 951281338 955630816 672859442 833927775 32800877 840658871 535021326 796172825 496678209 625493237 438401392 830198538 11328248 72992142 31771077 878821694 748926915 918092529 219624860 302305532 243946946 643729061 608809198 694005455 191155253 817847737 195794531 460581871 180799795 297811270 161761408 302432078 50408454 995966691 364813345 388981153 27008133 935483462 589982378 871244842 386113257 867719128 649224580 748257921 411796280 896137371 557148621 561513118 307633508 920513268 85805194 833537316 484522900 981347636 520242324 749933533 369190436 978955787 922284322 989973510 735851196 941302243 939746067 992031605 397879527 983705678 911219279 970378314 573193579 948006948 713921906 762658527 622153181 884922980 643755821 806332268 479083368 512885804 309363095 529394524 31800906 807821000 787990505 899437694 129840468 886236094 81831477 260557750 154371566 931586891 470075499 678656738 433187221 549772372 67149582 872675791 288190974 419360801 83496566 629912855 382786442 882745035 145122634 221359823 116756226 282198855 82735728 883284622 603661914 782644098 334213372 733855532 518285180 617685741 553127061 588956261 542174909 961488906 947680724 986071151 371613743 840059718 632652058 663593421 552525754 965088237 198097420 696975581 157149632 560534826 164385205 824416076 541871329 730905731 373342053 593569896 543390420 549699961 480144372 811678890 376310726 856813051 738438884 848318897 676914810 896313558 817151298 902047433 824307918 865223513 200611458 537051765 289777674 461375915 86870377 522909322 175351205 415715443 308839346 587484981 58163752 202452598 64459695 852022524 275266658 829202259 293956307 778416368 776546089 825432907 534813094 574069399 409360534 525548059 265263303 805609925 194170020 199782128 109295118 324325369 38747009 890950798 242603512 516010176 359077838 517204025 245091135 673716595 211264631 784787521 471009777 997383637 15122274 739516455 411809014 792934584 729598542 930845376 256318072 548310588 22325728 398080651 277044561 882064843 59249134 84887848 36515613 507409845 487174666 863200494 431819713 653846587 490569050 758144981 672088211 963476326 159025171 808593298 745660483 867176536 168646692 605503366 357720692 740155882 716416044 861177342 551906029 703842261 593446359 764315946 182162944 673310571 642546378 746888386 726033739 854936712 393383114 626650712 339262764 598265931 505623265 576696790 70580766 293481088 213120366 444985176 392028753 804390093 253228154 854171239 697248663 991051031 901132171 949503684 176027630 543861469 287076112 777554306 60476528 667580805 427032507 628482247 575206794 628224931 145694269 631599469 143995747 690639683 346152027 784563076 341194762 975214056 653795497 812114754 173960238 511672381 184054617 438009602 328350519 822409032 280296509 921967773 398299897 882229457 699787331 959840454 110115577 241624368 240587206 974078022 532944380 984318987 437664673 629779878 131498899 371042087 215808016 240273664 101614128 930189175 641503657 907385410 339247451 343564549 332009845 393012267 293210805 984239448 774035263 802052890 686646371 819957269 778709692 987450488 463913866 497165453 14471316 507938044 71865525 758313835 426787806 740923280 47768044 537548397 26742961 991654512 386459047 679322926 224645480 386604299 282741523 966289827 476215054 588473744 459459122 994809535 586446780 917418378 74772282 148951032 62859901 818886051 444382758 648486764 239901463 929892445 379209062 905508547 592997957 663023046 168525035 954367898 380103052 474015268 338357841 602472095 41058761 742971699 131602772 157093608 13872224 673426850 142384963 370364480 146059510 380105671 20389452 243549044 210269870 326336913 37153315 230284846 11951925 845368070 621751987 915921397 616332812 890343676 168139496 441463284 28740484 68052936 24807090 279493610 17279951 808560098 563494915 939875098 724844234 964096384 337992178 497253167 467703774 771565468 143257257 967126555 879383593 941826588 397381460 625227951 583633529 626665983 607746348 626451022 282816584 643358305 73988419 919586911 283416286 777955003 108145800 879229975 43814282 938724814 387998108 697548519 3247293 942117900 289302625 690338825 223904609 988982479 229375250 252497237 227670274 796907853 102156432 847948712 343723237 781364225 294072950 543150149 500863364 872435835 412530191 887201434 58395526 838987504 404344342 804478483 44673014 635811727 487297661 818299481 229027966 254475342 22803867 649046755 33424059 355089420 121349058 453379544 325838028 612093659 608545929 848903289 214763432 907261708 380612235 595804261 350652597 749757022 479276387 594556042 496708009 716662140 136903174 148540427 146289064 744551711 485183561 772007491 139413788 914319095 121722969 936207142 890151294 996477494 812448364 871684547 282216990 578093030 329181152 958948972 50323284 168857048 30762552 810399537 767857596 988161285 28544772 473470647 233426273 533931902 359137194 579931033 486113423 904372614 430355945 627814270 148300425 175582118 96484032 819403459 775914250 806043097 56804328 802452649 212749104 326031457 120829029 472232804 81463704 805038966 478952160 678980202 509349165 752447720 123777242 751238299 720370249 763132424 280690127 772654057 240697962 915744548 138836832 990570005 776761985 940710571 541683225 840806534 695252735 842987837 790883859 869769439 282016717 420443216 273869158 380087416 249127675 351194390 240371846 407495308 123380727 866237160 606659650 632761810 376843876 928315484 877946761 982722504 604343096 891826822 649374089 955378600 484067467 680165024 634515268 924622866 405987664 881545812 849257354 865260630 36299030 232627450 28728654 749530727 587739090 820009742 560867551 984759151 213507562 505094840 478452242 786678917 678231135 862732615 573747589 707772372 369724116 667838567 43040002 427635044 217407593 554684958 41891283 807879611 770216363 843885993 516321747 567256647 113329244 351388055 264363229 889665577 707187466 996192769 852803723 968516276 396781695 555360160 449475354 994743188 354941994 824434007 597664890 661302286 575747740 881696468 251080442 637738987 433341201 992352176 582429503 712453287 121133690 989788823 413253428 746775914 145624229 541150147 261186993 405911732 265802694 834417726 405399376 576845508 455989441 713096958 236125503 862955599 302181265 441786370 441481588 732448977 184968694 577758727 512125223 689926943 594745824 737412698 18954205 222367422 125844816 631933790 144951703 161680753 118162961 261733285 28074554 636129479 230108054 924342406 303696911 652707990 488256174 754325951 156320848 181943453 8175459 981878728 899046139 955321052 743366363 863744731 350258151 472234872 469965752 883191595 126485740 759821580 651493851 830457576 122868135 397225082 79950178 504886215 425295623 545257646 416332427 922961761 147512699 330891665 232834374 782046144 509480335 907140513 681976675 834048929 529428875 895582785 345040694 960719394 393995441 621543186 84542863 721614073 391701304 538282628 228586053 304411318 283198416 800703583 398005845 512760187 335719490 727525540 599626073 777335943 738292073 775689823 17769528 238586173 84902986 848786009 806138564 957842900 679436909 680088287 357032563 801817170 564355056 789195092 635516507 679317345 144634183 172413151 84216896 866425524 163029308 470550230 149543571 296966456 225721709 456319138 399988367 486055459 184859922 460707598 219318234 744501046 506793244 790888379 559015459 594185405 505738343 859776042 514845231 768574383 429975896 772344894 290860528 320573472 79473889 550057320 259360274 993848432 656723965 954938151 73829203 839575708 754346887 771705173 676715694 939870121 88476631 311395929 111477814 359630065 2796101 69631034 60888609 189630360 151666866 662272596 289557185 628396296 309206265 556486143 36359580 132610853 110031249 338973568 37927363 165404062 71926912 618132774 426517658 560704963 50184787 928695689 342947017 498989432 12005915 204917999 53167254 957966700 569573025 719064863 581112726 610694550 74263118 376354678 154232473 211229361 8154119 875926693 274152202 467776484 226702135 554414045 445978857 803743976 116978033 552178521 540835396 813231617 308471747 601959666 281413947 516335770 399731832 684881731 282240442 655602277 644958449 764549048 50856806 611060835 132315639 799026670 214104807 282544664 152364060 936691081 260446545 927186493 719168619 971305964 200139215 251225200 211599741 305045683 160852952 954338054 652793489 819172686 703822197 861995586 10623908 887037255 456812942 835669079 201452483 434761882 26522710 725181284 416198539 951807849 493622281 714414982 639457620 947360931 864717134 963116911 802787117 950926642 465218357 708966858 430632378 964516035 718287753 782615424 740439531 819926295 348123358 752191042 524440418 629518740 403018215 997969346 250053353 793104441 249211569 616307206 404948081 819344813 531732630 576489517 100275455 205492200 160300106 410530831 309203015 871493086 311420005 956389352 171399519 330662421 171294123 545427265 209075503 398138959 4096569 349914331 296201807 406567716 346975580 362186353 65759629 229249982 100619650 664206542 317695595 942928880 210158258 576422209 490983493 646261658 204607144 693283892 376242401 776163763 440725888 482370777 402760826 580426408 240748004 983292658 824612091 965293079 411914639 445042914 369048226 588290394 281526577 483087429 169182621 312546132 198682887 234038866 22589152 527575930 210287987 752160638 393836254 528403867 220270695 809510689 571745633 671176516 338918021 374244827 348386463 918472439 131998323 994285557 621365283 700788800 100825681 695347761 312762300 453536154 259733856 973458228 879081364 969212821 464939855 994219201 347797113 649842873 646463291 726641015 530314226 866299868 409469071 872939759 324763005 835810068 569072158 673267869 372510944 567058936 281681157 546766789 16011489 179932079 44246566 760392639 562341038 918533902 867379194 937665399 453403674 732526259 15989688 557775670 13994158 914465010 884310690 984977582 283710297 556478370 176356987 906818789 374724426 666229150 268385621 356010239 99216727 531250943 158402305 659574162 227481258 910508776 197688401 987890538 178406974 978962622 210158678 636857099 403952140 885635643 858727666 902810290 419887527 442126886 422596343 738162639 630794180 756019070 373340220 471078751 418948172 471630346 341579731 415549357 104773322 454370046 395733170 756231514 79807528 91243844 26096379 717223385 224340956 823495369 250092380 951174483 478471082 955440873 903539184 905978012 356896048 582731400 344603085 904679869 554988594 557514361 59573761 853834060 607582730 744163957 57217357 744725672 533553305 705524996 582745211 800696267 763527998 898601375 628614254 937101471 170194056 513069983 176425275 621646822 390497970 985164753 849095902 907127861 733634709 853864354 311587287 987270689 263509507 981842539 741069706 993611115 437287607 852404551 264861296 748436900 162326623 749624567 355463775 673420351 10521691 738408342 152096937 422390302 328485785 376148316 13016172 643152781 517358088 535893137 160519077 230507539 67037155 775923498 581375292 856671445 512616218 871512886 695806344 944489790 230629071 627289490 458659548 673560029 601963053 698997369 690225331 782974943 655620210 887470055 36658358 614566387 250483137 753155275 88506654 232552870 111370585 214216280 138359533 353932861 174151378 221345045 33259942 42155018 9964779 268755628 177928587 337616891 88336018 462060864 402873251 818368523 537489155 690147945 642639124 855343095 42167161 48953924 10320263 88669355 8213574 605161483 209153482 710728288 323354302 395274601 314597334 540279521 101299807 804774569 245360305 668184791 291621416 817652463 651944470 772841877 114786568 131717339 25559947 450014504 74309598 637806626 133656649 812012804 618236419 692729289 688266539 704452373 20564009 32456274 24231029 520296927 433190944 628094294 202305711 616714905 166785982 994516759 963869170 994490704 805578593 818254809 226930152 475270654 2358026 461982980 296870669 572690988 553595700 779572250 239740897 740147090 573275129 575427926 69008750 487575415 388389521 452147238 439480614 572117733 236179462 560047889 527936520 773764731 618605653 801956761 235571485 463587842 59840464 999507817 857466917 905884443 188637405 670750476 14272566 277437576 193986999 388073878 107452903 202502119 105194431 811792026 758464178 964829635 696001465 923044183 862942069 874781401 286909372 811553651 476706133 981325920 802413187 987149713 151855939 597343912 587693683 698568566 222548332 463545212 340281805 706579204 195917041 989552559 470156235 715124408 564103006 903584870 348140910 546933696 329197226 399533976 100338997 782424214 462549622 748410970 338144080 701042355 1923326 831977255 471072598 897861187 79191458 896752164 416215459 462982332 409882580 632127377 531061384 803842055 656261335 897397250 622125447 829336497 811569437 880209714 485540528 490527593 139990723 407298808 343241638 571408596 76975218 597178835 255655229 422925684 60829657 668713061 153662717 754212694 591035929 956533366 681595764 711094270 212722552 557997821 358401047 862342306 52911640 115135506 27164466 677852680 296531228 770471814 273740658 445686208 131520468 869307187 511775680 966858351 129858324 189093008 139300099 227518358 12188712 701442370 182382068 225502695 187438245 913245212 173145335 369468892 215639607 978777785 460251023 848324888 621754784 651731052 360303188 383823187 255550010 769165685 477497954 750745417 159413564 504892025 199061472 275520019 94893918 278877322 8044855 974346339 283103340 708933030 586331904 674437345 204570232 465010247 360020785 681070268 665500362 971295552 948093446 997324669 202002692 801538630 443698885 986188509 798756216 981060047 410121436 583427622 97818109 367605122 107240227 501211168 439839043 875048904 352541171 786642879 714935651 809129154 653863925 928161365 768800033 945493183 520844521 816420944 538820096 573552030 512076882 520554820 453106415 570308951 351956977 724404758 221499351 391754934 6913602 552270647 280937226 943165786 18347945 911491106 730214773 876207900 557664870 697266378 203271872 419743612 103705126 190515788 140908973 698687302 496048252 609190179 462561927 794180415 379279202 876198919 350351075 689199265 39147903 752149914 63268533 443399813 283906594 658892992 361223637 877136396 405572219 444372473 37214293 381579204 150787952 708163141 476726986 971009699 78718136 599202870 246753822 557781104 550401164 836558441 61844445 993320527 872133986 925422013 136368275 938246922 553347554 852453374 356132198 555540078 320634715 468849208 311871212 444563569 98861351 888628549 59663476 268489548 47256785 350575405 150361768 390272542 297231643 480389371 433331945 665392836 557940841 809647720 523988510 576228856 455464915 498024665 427533205 778513088 730490646 870921488 187135955 348986301 47498304 489839898 358306441 721786544 38480861 43129404 23442457 712416743 109462134 434265836 157625391 800006248 258976780 897092687 599670532 758121691 138546221 969096843 688792717 920316163 420426910 533052918 250549105 323203131 193573738 529549531 212780548 953488721 947977840 984087912 43540505 679163274 147977113 855868155 833389564 969661814 443602115 666337924 316415192 556391786 507103071 576829004 443200344 508219418 47722685 162248036 157279997 720798182 621417460 727321945 3396471 389802766 187621200 704164362 85068167 159505522 66768879 637174229 259036364 795913210 486857175 812590215 17771756 341453426 183012853 256300404 102926158 177572877 162478700 188146144 92381075 172135225 159776725 841737019 790962197 884301874 352559919 893363948 373483562 902068226 115094492 649566352 501913223 780357345 363231675 895944768 16042882 645913895 469163469 492103394 95780747 287572782 268250175 471370844 409246981 572400272 290764964 947831744 609074031 619212910 66342846 582299574 566047228 577832332 532542963 799425574 94373562 775924750 129616706 246686737 218812310 541102613 531879132 750848977 377215540 564336217 221131341 698789826 430969754 626559645 240837234 824219880 778283920 855379966 518041454 685763051 251277991 601572703 358047133 783015047 18380291 788285297 234403043 560094696 163222805 422994023 310548529 391251794 192323880 844301912 4096206 929881628 795089504 933139338 807060907 812590118 200131783 748569634 52447295 442706327 425423007 730717940 365651531 744418984 167894929 274274576 52591200 628755063 206874326 352282004 222615651 702047510 129151051 754511517 668732476 880978248 58486620 235048597 217443956 517258894 369255255 741076911 393843303 998194683 949371892 984716417 971411054 992284824 68179758 998052288 15094877 533059589 440979531 503927404 267978235 317754310 60429813 100503075 43803475 239066515 166444210 401935121 157466882 295849673 105727434 789130753 679021102 849106221 771965300 963206549 898793368 912527114 91478760 720611524 61472362 760780565 289142118 385388091 223726538 655453618 361164410 457686889 294778413 756658293 122471214 508550400 280392523 882740812 222639191 869439105 438375393 553755081 499055085 748706320 396225864 672191488 567689081 953785707 702807904 712943750 640495079 738792146 670898938 832707194 258711867 428916683 97338249 819408495 514208140 594158622 236847648 727054768 86759804 831383946 731319964 908529743 823934994 917924147 890118217 953775016 497140168 711317670 405530987 568710247 210194808 642005159 252999074 417518522 66502457 432221992 73773908 100760146 33175943 186098265 149905119 162917626 120223114 507944811 39651468 190100316 59232462 637906500 172115606 703822985 533021063 897293412 177829169 669412511 144087766 835267839 773326637 913137802 899666643 996735634 722571800 779409224 133448108 613178606 296068592 873551328 325107285 779149810 482117110 538143341 71354142 467845066 195371827 545034133 523705977 891583944 703283305 737862869 280806185 650374470 602002400 693194462 627787875 893134147 697981442 809928896 591253965 596437379 424123772 773527587 757600563 889635799 326326380 594214250 31893910 886509856 87349692 388765807 83512988 804671344 327322098 719942049 514081939 737758684 619216821 663168342 48822045 203694509 106161013 487162103 236823197 498635202 433423314 767709739 206041211 980949663 102038398 273443990 14258626 328094536 173026456 439437224 284813435 327409751 80625732 318120986 216318222 264377645 131296111 755400642 526453813 876225025 105453806 697123863 479916904 953145761 290355578 766055010 67825816 907536087 654919270 802117151 382050858 886853628 171725790 718935840 199776558 305932902 98251813 876643442 850146962 996498031 206927212 868958759 199007396 316574040 211676442 830150450 504584932 523235555 58163493 915730516 16529595 67570353 3044916 195404598 116983654 215375451 152117315 397650091 70108512 964094360 77400988 832419589 630973055 641631468 7838930 45214102 9576910 261920143 38586211 545402259 100921529 515452285 512095169 524363693 473767957 653765549 545929674 775258608 128561551 490274233 283075856 984438486 386775111 446558060 167055926 510639439 457230164 564146012 281207962 842795740 172345767 351685102 75989267 766458352 374139798 847064265 555168157 889822912 69093055 958380197 615597842 760568188 14031619 178291200 19422207 575654261 395607310 498492636 338313607 851699815 653712671 712677754 371146596 846361569 574736036 927740214 357786107 449964479 207741538 741262785 683005642 805124879 292538471 739958796 662461808 930611522 717279810 991368335 546516448 640030921 19759958 752383662 528576763 572706808 246789194 560465000 39015369 87815721 1158944 580043539 451905954 744278635 422595522 475248951 157204539 351611393 69152616 273543284 108528833 864591232 683066101 697362427 262805834 355692759 165999535 167333166 136691242 596736461 508008376 701601522 360985594 797231184 616736357 872649551 72125867 802440815 16868803 17043879 5278792 607920676 343185790 895091074 221377004 393044127 153830616 497170674 141356720 671873286 303458469 484549702 202803222 694770199 529032838 629619477 232238429 705267705 541180971 650325886 581535738 831100889 172349468 983459494 680562449 773532748 752335278 846884316 396526512 954152615 339414430 491271588 284875759 600780214 194213249 247062256 65417739 804469412 28079175 798521475 191446712 638561360 326609606 356264625 355675269 596130487 355394102 810308019 739052091 842257007 669519977 882762474 249518109 700720846 448517781 623753276 100680695 415112473 393791261 682196861 674698618 767049105 367885781 677046692 519957808 664762355 335751765 858739024 468814425 525030538 243365382 512957758 347719987 667503032 331822266 638821528 23892276 98041126 74041276 719341578 649322793 695339766 198492205 461347495 59695018 295540910 291477664 961999694 602627384 886944700 248669123 975329042 573618859 733663000 569976088 938441690 614410407 615830301 256685285 924102058 175352220 466716160 313216424 668271301 443692785 487423645 394085650 989279957 219591539 372418120 278110541 365185114 210845602 716701978 422655371 447235226 400883878 712581521 607733089 748601149 389120315 575686223 238032714 374909402 167286098 796953817 700495765 767438137 436896697 881433999 435021788 852616584 128750130 706164490 467479993 653514591 104395148 714905681 274085018 286098585 37648668 615566983 454343581 487173583 284632917 998932486 485958415 540697952 433659391 705901195 485430596 827304569 127860390 446504813 242020682 837158292 19260788 662842497 645960456 716458880 560197193 926719262 212439955 950100139 408440637 409731123 232656067 887509090 347965274 637897207 243564534 885863928 429024703 909761417 897749538 989865325 18185106 275200997 71367272 980668240 790896682 973671803 884102600 939066824 696458120 873040460 733029965 786747614 753489033 901108723 728176651 912096260 906809204 949161745 176212558 387580889 68922878 82453980 50982846 953362141 270001288 638483272 195628533 779827513 437158968 441774497 258821836 393020164 177896696 441802399 219540262 868563508 77636365 592172120 512607263 677012396 138575168 735034181 476883433 923977442 900699035 940698475 836857649 923534127 640846592 915722004 765590024 844830096 667950646 851667113 577921072 961114965 949003555 959399732 775432325 957216029 420542519 687185751 295164230 768357040 33710481 568416646 8183585 417575728 43736160 240559900 10761801 426640246 404788504 443097382 182919989 774903439 16716254 337054547 182721001 370490714 169470848 955681622 280386784 468640206 382871175 961309817 717321285 934633453 494734186 745137112 131539674 811734554 550688508 792391164 571653751 929811598 920755810 969910541 821399668 829961044 137091505 600069523 592562678 993500113 104444078 511147990 6280457 698151963 464625070 546444637 430859824 826724530 357916838 488776585 121705781 525131980 267623503 327559276 33090453 946388181 2668728 334952532 61862378 194134571 42267416 625059612 51476997 370156154 138500806 673545447 647657043 887233676 412498731 629943750 202871461 908268935 866601889 978844820 512457047 909684023 166425358 805412643 410865339 804811828 282897552 712481647 251985237 366602804 51069339 914000699 150387453 348868830 87241996 179068147 109630745 171684179 130477799 514221372 446739251 729161450 108278561 840160318 219326435 674194083 561961238 679881835 640116995 948056447 238729904 950864203 470214173 570629911 237428370 669603343 380257588 881063767 542001678 607391393 446165754 755483431 223890591 681951658 187732788 849180833 217043701 437474867 203746062 464814941 50803607 151554177 19427198 240123848 157391541 585286662 464283012 938784649 849557974 884171837 177687849 932200399 591444958 799900006 96200635 645850824 207706228 663658888 239703925 351149119 94773703 613496500 403103560 440960133 90909831 925916779 287147992 896359574 544592759 661677656 330988627 504868347 243897995 751373399 232057539 621127110 573708756 928384245 579060118 760927420 34687167 504848710 20580083 979040434 691550438 754704017 474670722 687957456 652028086 959420340 884017629 909367626 555407706 899035633 836604412 872604028 359758281 690560399 110860652 588230784 569689456 784382099 576421984 954449991 418334908 672929036 636997489 857469098 227167759 645475050 177900120 613232693 12820292 65664790 15790811 382890384 64518330 295693590 187814034 615657971 9712872 722340516 411424359 423444864 359798230 829335942 107103512 494163170 181786064 191651978 168167036 460694037 230150476 704054092 632233099 989780631 733635967 773670148 185436525 283315791 133331634 513987131 346022868 456544601 317640474 511573219 439975759 585066611 382055846 877574932 495613715 965478292 786901263 995909313 163544005 581723917 518365399 922551613 499220434 668521664 206161792 343510625 301566752 697060548 250316531 654534011 168970596 312530108 308692832 750764816 47380993 133466989 101232013 789354322 314101760 564176202 475667943 742597354 501229572 843924873 489931261 813190426 596168824 904719309 860090972 952589248 786408107 998979484 122478363 538580324 311853422 607157681 520536587 690391228 370223734 846846644 173963650 176213619 131443842 439226525 331653997 463296780 293703532 796946246 371183734 857939732 562246357 982173576 501287345 820283990 465282755 612297944 560521271 667344583 54554664 598863707 461592426 692997836 674330704 701447406 110633720 234567019 141164674 608938183 562299313 897490985 683993092 984235035 633789339 964128276 798440620 891137326 703099769 799398821 427236686 488999624 161873226 813166340 700816840 763039268 679919024 965243816 43993935 652923519 650003220 845566603 271591941 780563029 74086188 870345575 99984131 137576182 39064358 293403819 64353471 741080637 728639419 885195215 211515513 899071211 832291787 956711804 626522919 964600936 902412108 910563679 437164550 512816895 294387892 929260009 446006025 872091149 834745173 963297263 568177711 841706329 363537603 460558506 142082606 808110754 323021334 888211141 235984744 631897002 223579763 891206916 341776571 932810604 156776757 443020634 34460762 498351241 43105621 403804317 236825479 756022124 542911190 691556803 643199917 839247731 545541416 633929206 347029186 403644718 93384977 876419624 470366378 784529360 316716854 978380670 651763051 675070646 337536629 719586662 230100858 930694540 374176878 808676260 289694734 917675545 594104779 707631114 364336839 923470932 470946616 754370200 484951207 543168427 316297450 337643691 126119356 577836634 476463428 479746326 21926467 454499388 430404222 553079440 304776061 899412094 453391510 558989667 51895508 826122597 250226725 972175109 192380047 772798304 524601235 529949949 473084752 510548028 403215366 419531550 283840870 883923357 618372644 721395741 399762079 689785419 468791920 536440560 467479913 708358219 249770951 982370829 456631174 655255788 292662344 858159793 374766353 907056476 361501354 684869431 623262311 869459187 648832969 742558213 91450934 360386261 187758561 992105607 267093872 708260860 116565081 337964112 298781299 329063643 15673734 515778803 247752534 532264510 151239235 324775829 320276737 603201658 145819079 539467341 485632412 689221023 446737608 656186824 354667219 711918682 295268876 539305744 267537873 504725714 192285509 976968120 693597554 727151692 327235648 460446605 221020212 714436887 100347386 913714732 386589372 448550443 337397710 356563428 336726264 571382277 466748971 558493546 69992953 481896370 423142718 879174447 751887100 908068221 283046904 595067258 202420000 562912864 346251417 617816080 207322252 244624736 157207561 941663880 396576129 623405645 169600360 521641640 213770974 690652209 187805666 966258788 615741263 853989427 584162991 609415800 547768861 757932916 417607762 962227662 882770390 927609679 94949498 561157826 458393742 757962173 321541195 419915208 72176988 897365531 654061949 922544285 381521988 609888940 466858818 516437677 372518558 373011133 151802146 277573070 124275888 190606221 188648028 854358432 136321723 714231863 1346247 343149618 96471009 947039093 307311546 594750146 213901733 863683995 103835970 967729726 771486037 846813761 157255124 338809292 82560923 840684905 695085013 825873071 454125583 790123913 367750742 632314675 113482261 776201854 265620640 783256624 151457401 817953951 229092684 994567276 199076581 594825097 129726661 761755197 737663566 820240623 389959444 615193978 113696579 310557211 157431944 323006106 297797558 660917870 173423124 188942516 77126209 562698630 121857275 185603805 812684 799400927 614644816 725045074 308159399 744026349 39215394 849911318 68840415 319445071 33779025 538825850 197489157 518196318 108754437 679086580 89364043 187507611 133214569 419637366 153643780 385162649 142742206 295824921 193059177 748481162 357636221 888189297 576318720 865224643 847957800 973859153 899020554 907644753 859582054 877718746 562329994 722585097 112029344 548070081 195488325 459139143 55350971 450684707 377899418 836068528 380959325 731429151 308715997 331950910 49784434 289683973 279030333 944762493 440270779 724991882 619603043 914711298 708817160 882002573 73074536 588347777 17198976 131795443 20380849 23498870 17186830 222760335 131749362 271804178 48721132 575230928 247419820 320747149 22514544 926870899 247370332 966592849 753323324 887285456 512926764 941851040 429343975 654607790 199748973 929478730 153138296 965693558 231424060 954314145 563099566 989743304 848036235 996773427 455630750 580712319 126537604 151696705 59628366 246581711 178675239 717861426 116002074 522904644 201425570 961252610 775060583 842037571 183562360 479817043 364880878 369091723 340633034 747955817 110419900 447124141 190773470 614265722 300833907 623858342 388864533 746082450 7496713 721992449 445883274 746483857 563467020 615621628 295292918 394498960 138799104 847639152 407258809 933633985 545019651 772252624 760158530 811870215 525365302 580221683 324822072 892891205 552421859 679098891 560834787 660258743 380295287 771454382 209482647 823495162 654224920 981932142 482212082 624489494 594368732 645769599 203164687 880856236 327507779 402201037 83709827 683632165 190181229 229691148 227115564 917782981 743269793 955853971 279934984 861493635 464667619 579860195 130857500 189260106 61871490 680312654 536041536 964621408 40805248 445292948 81456732 876840958 707654883 827749461 622177764 790470182 379704655 400630108 376976432 415796342 261218369 440487339 278093154 926320362 393308571 789168532 137762219 419061139 415291723 653295736 553659007 964557071 602046066 693843461 451041071 854414721 624970168 903049632 619008852 727887943 408210540 929600566 699883607 789533149 646632645 926431997 852434064 908357552 726930992 822893168 388125002 448853252 4006642 314796924 284277425 665047567 460811539 879503787 709775289 791616692 403375048 962300356 66027790 189088069 113485568 713943985 230246432 547250111 467259411 691882862 653686550 792987245 723943685 978663991 714097250 967489078 37934433 110407706 103585584 793150345 468974122 985431747 689958185 826397026 465142086 740075625 324483984 347215072 183279820 939366896 688626210 862409586 157580602 634700306 48385530 910164289 377123899 856486377 502642155 541280518 168539634 290156934 16605659 505142022 301911751 564333390 146763181 186718242 68390735 995662525 700743567 821047296 210352047 850816154 246912088 501000024 65193802 551520208 288363963 571168263 485101427 864921374 661043161 793103580 218493443 842459433 669937750 767026436 428220409 694344514 656067953 800577614 574565507 871797584 703577269 993607719 418587698 933028924 448000715 584315170 150254792 835488213 293305003 336397137 66761006 222525599 46578114 220828144 195684347 959220375 792845832 908956643 234066443 867040546 603927608 702496274 141707507 385192441 128726613 189795836 183445824 317542990 262412617 595006770 79928324 493434951 109349692 433301328 9050525 514534332 49115925 323508268 87748059 630888986 621951969 722287713 226775250 937451898 421230043 921404509 899734050 916443287 629017922 787627374 382952083 615669485 248228004 327028968 12865813 651783130 114032618 901821225 715428206 865913502 502323853 719842674 259872952 477039817 470473826 733370519 652248580 825259031 287699890 768059840 604259703 702688454 216378166 801259823 115742136 958174404 745388855 773465201 413406798 689191707 434391425 530672866 276622118 528911741 404333603 500820986 449360937 634274379 19979276 990123786 864008809 974733711 775829896 910931511 328684522 588099011 53604170 438294608 255855199 556349318 290921710 958984043 918175174 942009264 183534699 964087210 666831978 843394490 488785439 896373469 423392391 819648641 658344685 953029819 847626283 919287828 89546901 669330758 435476855 443603494 347959312 620853127 269598155 369862171 275090037 835972737 232021257 985579825 825821840 887061709 698284749 864810523 812962726 841604792 327280780 935973145 107713721 544224302 350035230 529474613 93285155 375839223 118754814 194982068 40208324 469891558 354976350 535519720 399101767 418049899 287018418 708157106 258939251 674927888 229510161 867731533 593669849 979565178 506833700 778720326 143983564 690545682 438781156 459390144 187095157 352410855 73819915 418609465 285913616 609995744 35085675 792700495 293676334 562200452 239284463 786343596 400763745 732610171 105622021 224445221 9974924 155240079 35574007 958716834 22194317 957578665 478134793 636092342 450524869 692211190 676288346 826630562 811588436 939316466 411630304 860143630 675483061 757141308 676960328 957349734 9143493 871571564 627221558 709137117 341360899 802838736 128303535 421719229 18782770 631243066 12820389 734654144 671745692 983662926 586918473 927076694 813076134 833779438 734447588 881200784 71113634 293439920 262449428 627451282 62097329 578563786 557132682 938376384 905668972 953352945 127357297 767582448 141959231 344429952 230463853 741872903 128777799 867841301 326073909 835240129 24556171 451023597 216104063 917376641 491594273 825658580 283443090 336505688 236997886 399414575 179552932 385311703 296393530 597784407 470308987 491789832 277139216 523536931 483112557 977775386 595188930 633263396 108200865 587048920 291984303 997025798 600427839 845123494 85719038 179420052 77461912 610918409 382297199 628194349 120901235 776779351 288495081 375602801 91929891 491352412 274632305 278128259 174275437 787861276 373493854 857753696 265732003 455515814 357715951 858362398 85222048 884466726 528621702 850053048 669245611 944263305 293861746 509754781 184336186 845569451 731750519 931619348 610736738 718459162 662945286 985774610 665566419 733350731 298770693 299790698 135461175 740389068 420546895 723457286 230290035 482304542 283008039 456653058 59784464 944379240 554642040 718991399 628410298 811104739 796313774 973483046 932638400 996674395 984140317 998514797 610206411 811419577 711679625 834533472 442058003 659516465 42239133 83646042 44770174 551367398 102923725 605249846 162076496 817763224 102953519 828031722 689023707 741200143 68553836 542592169 354297203 978901849 207351353 210302416 158818927 306683798 115737982 470792835 231635854 580245796 530206886 945459932 408727033 875757025 308452653 924572542 75905861 352259328 212631934 690903898 468471740 516185624 271480114 795279039 12436581 302964772 5193835 178825870 97271951 435134533 35058708 529824445 212521408 886894814 690384739 842000579 298452867 714123099 202536439 301559186 299107942 821871869 613947424 762487182 734606342 831864518 348539868 591456961 85091967 366950049 76360605 578865896 99243722 576234983 48815986 521165388 358117557 409259000 384123012 527633639 328510667 659870079 373421467 855196388 469939302 967434799 99769450 985227644 580926215 718157787 469592069 948904548 483054855 803520652 615871725 662872981 317826631 695740053 315333393 458192465 432149407 785699295 572444805 809296823 145578421 663696401 142834374 653849584 30428721 910428654 787194743 869421548 161342954 417895479 164472488 471950031 50187757 981922462 938933649 966949992 750302396 794608059 155554091 729387188 701342131 740000464 590525723 911362908 783895721 818919569 538740273 674329646 97431645 272549181 111619616 157886514 73051166 142416356 30791392 654306526 14019001 260530852 98716999 190282155 78590329 894914629 843697167 947207222 340003896 556165925 146504411 673424438 333223135 393768615 356760051 612130550 118547925 638967828 453963317 500754385 194823459 223964927 15824249 588497070 529043147 960875025 275606824 946353349 303954323 865347178 815175496 999801674 304240172 752838107 477409727 934969495 292570109 333697226 32818050 394216430 224809743 995112963 973469268 984854452 602667532 701777201 501790030 915439682 608304996 615862893 175333049 180406632 14635129 453054816 69766418 787752383 20423556 627816843 217909727 914326951 696659350 999644518 636269378 655964704 22637879 364327920 128562783 914077027 194680257 348700508 305271788 872083393 870894910 987938162 381185895 762587375 202770282 369248264 117420944 779295354 132917111 621541385 614117744 907535743 473885434 781849474 354438625 430621838 99700586 266910798 262092332 326300694 43328199 723885364 637542055 779223985 103199160 818693995 809416955 922488216 218947952 744001533 120491123 499100766 204920136 625612096 249063704 430017120 287128271 778742486 397194517 642929191 39360712 346004220 232011425 511118371 53590365 77595879 4541920 323765841 9743635 660647400 523841975 681319343 332196991 635407558 186792681 998642214 674325324 771072109 130250665 594718851 540160456 982562120 696557578 774495297 602170672 789148315 645347564 686002931 540007140 799080056 477972653 964196868 125364314 306995211 96032463 328615400 40308864 984742259 637654126 848998354 146100435 175327354 160894778 833915772 645686881 834987505 45161465 787664618 639783556 707529480 507143280 908387893 857275522 879804237 722752762 983523912 814926957 955233578 652061962 960207918 566391642 809227328 587953917 599284956 116103705 454211999 156243364 231274208 115574340 444217454 325650042 461202497 67511068 100299882 70623706 200748057 87460246 366857297 265933689 375189899 134212590 479230319 183485477 818117262 770422160 997005070 560651247 729137467 98228100 859709103 510281732 849306441 782487982 804617802 783806705 839347272 427906110 894806751 739104539 857584354 612689851 635080817 499297515 518337756 444645407 803154796 354145210 603041249 417776002 423550630 248535884 314104765 153742446 681486527 470555497 694575892 562338893 581485984 206703848 783426204 508314712 966847424 835508966 977116752 326146855 828824066 400491409 756602965 365128249 708378601 606384609 804884877 735963925 954162743 42856985 733281238 435950168 481642663 361139595 856654519 420931082 647616301 595633371 748103062 129658674 667001635 130793254 689340003 529927162 682751705 319424954 366700709 7937219 84820982 68888791 844620013 605455136 790165150 386645260 885417021 206038870 420929996 74907389 143866428 46393966 987339322 7954722 74936653 47635768 558480028 336542108 893825403 403366172 519603333 422997315 431611306 217630313 442791301 425840712 618885441 166231164 732668994 561363637 768605103 338772809 612424439 381150675 703129888 469288927 858532307 244474311 552011918 49841572 683837985 681809157 885116663 583763452 741583384 712894820 841602219 644600971 925553912 553221125 705128499 204541521 811804889 388237129 719733926 718080861 984100453 210990539 476122786 351685289 691490668 260176277 911537224 754336173 934976122 334447402 811511330 217675538 789863980 223390215 988981242 876369341 890254603 496883799 659789784 350487550 990458483 950357819 979630869 942503139 997274936 766079626 860934308 341649198 621277975 597141152 676130977 208064380 993171019 937150426 954605977 24812148 96973357 39391839 296988401 49526946 728418938 9261149 378352499 69293560 219239381 10219604 570717689 361168171 854414884 131919934 422572071 81774812 593885569 553564612 700979274 296295640 831025284 384611570 927378904 312692235 368534938 178482915 404434554 241228263 591684791 523353038 532489396 220535460 981201236 566340776 913345691 563457033 746085049 63283660 459658356 425696457 776509231 485140882 948246316 678313826 742556163 145347519 990228932 564332224 805821544 108844383 954545323 296154655 880725739 634930759 723275444 342488682 637683187 459104172 490528000 444427457 818311800 205425066 431208021 341001583 619580707 299521624 705675403 325871741 654749960 517339911 809803323 301975641 967463146 425604151 711979393 165072554 318363793 153728883 846150092 102141499 304543986 65639408 601797237 53653002 613070082 210233603 872439475 460682285 898824412 412879008 990951296 687768270 988513004 600490368 974681179 146481748 567695591 54698349 177972556 92328491 338056379 31141704 508732179 166850515 477281192 255189728 387767789 383865088 675378431 493943444 728882872 64061093 566832618 404758999 815919318 24232273 526916309 444664206 676925139 191231572 557939053 243997139 953878269 42740574 627643166 589514004 689845350 637060080 752785921 286297206 639838925 570525395 601851248 151185193 386285848 216979932 963822839 394823858 521715666 290927982 600781906 510966123 517984221 241733877 888268921 731206479 879009784 189952908 307147351 39628556 445448740 96346268 270226113 138130037 938633164 242605785 381435893 182619628 281020000 257864635 596555762 41208006 901243463 233939827 507333788 365628590 722394670 629469846 726847158 619287523 634860700 24909321 848786504 117669384 421850361 40064842 574258782 288393769 820820300 729266628 793412050 177554251 412967618 410638118 557434386 318848205 975482841 405406710 985413515 887157699 915557234 892577810 920842349 920804797 980576336 884026163 948175592 699984883 989342483 423077293 800324197 418262156 864787476 211825494 664114057 66942453 702719898 399125609 708627827 212395857 236992135 128934000 670609040 381951663 401726422 300793779 319101006 55632498 946386652 196574745 600416816 277223297 759532855 566357159 713476831 17151888 630960937 524919192 554577321 149565796 278961054 254471106 558961967 188454929 801845633 772859123 796158194 251931413 992058467 165552171 931180019 299022589 368750989 226781064 987555200 115771879 941534136 448429909 879487065 676296224 923877378 842270775 893569783 299768507 657094101 117403411 777246616 668911822 680530252 513317985 932298813 878682699 971164406 714472247 970317996 133915457 269901243 90792440 164483980 129753043 473011590 28317847 870323748 2479765 836420965 151669909 399845018 242148831 393946164 32695749 355923871 105519897 469831453 389366958 506045747 19685871 733811898 214346649 417710653 37968366 655024670 74324089 462752169 156524210 276289426 227667888 632342005 578770487 811727193 387460717 836981567 428005114 489356558 61590986 383895956 197511289 501488397 474740168 617218681 169018853 274783842 122544744 457960419 251505292 979207941 168076461 324312169 106701307 539667056 132420461 390252335 96489587 814424910 619254472 919593051 11158685 122470488 32170480 394887234 215506545 853530641 58673554 70395502 45709911 342923099 137295561 159843478 107171286 917406950 249688883 345914485 9071588 464225055 95373693 931728417 298268184 555398213 65975170 745228829 488833205 513011060 340278666 842600539 211215102 355072950 46621679 330041469 286351508 722325493 565795522 909139542 901187730 971199401 833586470 993874025 125800403 537195540 441701646 893411241 287305586 765733442 718844122 843090937 230280192 502577993 471565922 996330660 74640480 681751372 316717040 394315241 207105896 860751145 496253061 648751485 138128596 638383035 443035974 610813970 170647462 463319173 273475654 884037258 805246086 823383454 594951512 879540695 525612877 601508792 230097388 443702869 21957548 967168770 588518404 862208261 75678518 532997334 291823162 389197527 338438467 799880534 442038968 981529083 963754950 969268392 795037523 886336141 138166037 865246303 437555998 651198926 175832556 604515620 98811960 494932585 291774201 842132872 460682466 817074891 122760626 160165486 30463584 398194863 205739537 307032662 130946310 926656044 323455446 947196402 84694269 650252302 597759457 917031332 847919862 863091910 452568985 986655857 649392947 952734843 792614736 830583619 683668730 760445543 87894663 798348122 43879664 882648923 847901670 887009311 570971008 826199342 330211246 618829525 31620343 386049032 344842590 923770125 425298651 798123599 722353934 794338375 341344075 843435185 535112942 971318490 630870598 955221279 436948488 836737965 266951502 913135662 879380180 932145194 865499777 939188727 888974351 988403748 596135113 833828330 745922698 851680485 13485900 639279817 94551777 651787050 366142903 570766259 171344103 640524313 513697077 526008605 294311886 696398713 530806647 880577699 295435844 710440137 23582569 972940790 785353261 961495245 399390419 534842923 224094985 579709386 218326309 348271011 285802563 462525573 31896276 916131669 317504133 824608567 394125677 602639790 46471969 882280952 803384198 883945516 427562053 675606347 399532609 617449331 460779760 805453354 127361879 547010938 360893205 777397178 431761209 446910459 268727030 336576738 240175668 490053273 459782145 631663995 252717970 358357318 271552781 447678640 370749814 756350478 681155068 856994276 847726107 913984722 638147366 641277637 597084614 871615533 356731253 457030812 374532746 754593882 252029794 690581794 248369450 449678708 434780813 862173466 709039142 722784350 409091789 905488659 298452413 951848762 726299336 963922796 550731200 932347197 94618510 506494796 419027477 919780973 401653290 802354819 28548618 724922186 722721957 745303096 58159787 916372424 212665332 411770166 290739859 491742627 218885141 817583525 749070215 938177036 95403856 255140758 217973224 229511066 65387165 561213329 319975583 760379941 1142148 870513418 507504005 520128727 424505660 991675677 216878090 634205584 506447559 881861778 248661098 981505395 853662034 952233697 368661292 769579085 86802702 714923098 47347830 331655074 141979314 438935805 430707160 768594711 230060795 272384012 255733911 848271628 242603842 403407745 208266111 720741645 207996193 457875055 394354885 401404213 206201941 272844460 92565693 570658091 301583167 896322980 430259608 688141104 3178935 177204483 69937507 659837227 230501721 476587697 233763413 949308353 269774734 671461480 14306777 946728997 622467026 739939011 47107570 343045483 205382375 341875609 241811565 689080664 660151948 670931951 384071062 877186068 859269969 961007717 375994135 778748925 428125459 909238304 247462326 984110237 813953013 841497358 185581282 801218331 689560864 756392079 464703372 594237126 276108995 455756202 449046088 810822408 802482824 847675127 710955694 748305039 327688555 427573344 424135535 813729910 673222914 874029144 800562139 935721945 789772352 981411763 811722033 980922720 721328074 930911094 922339891 971577405 250198064 307525736 80111125 420163769 174522353 231267096 145233065 738028361 51638153 981977826 820690680 906279906 56850868 467219671 16234966 104462410 54865479 203880848 98470462 253737182 42214848 885615119 267049378 312175236 179160053 674464476 367741148 444164293 33166958 633004750 545071500 591351446 56728333 588605062 337457256 537025011 208876249 982785156 879902037 943483010 108846805 699563232 311971239 425159524 283877180 566768124 73535864 676356169 515736548 624011337 95534846 102134990 25896152 35795613 15854139 36286189 25994188 969069413 872076345 933932098 43261647 732226814 292520618 484526852 475582058 554126642 22652930 578086432 556357846 896958689 33063112 539755267 314252795 511463634 478857791 504780184 191422328 507848419 492327548 857203966 331009061 843935186 327226799 722158565 216621163 867081109 191664529 958567913 465847452 804846617 332270522 941847370 757747010 995296120 423744944 655113119 75398547 936529471 140579491 252894210 166347782 219360964 47742046 343434499 140169710 829180571 546405026 652585863 48084614 892183034 807797166 960045318 220344159 796582909 88671443 908743945 67616974 172871133 85404410 539077430 56519509 149377942 112252604 723759852 110737006 940020792 600306127 763774335 755923644 851794639 668643060 907780454 351156618 782767478 382001799 770402828 511187457 586648191 456426184 639571362 48199237 650895758 112840230 804525198 339899745 799565263 45672958 304855290 258311198 984767560 554916911 956233216 532314601 578954964 377856982 428665747 149899923 311545853 278239997 339615420 74925294 228496002 94702788 224425872 82695510 148178992 1199550 612124114 285647504 353355685 328915253 945931379 146378907 364263824 317065300 741791744 670232688 844163603 109881687 681708673 284213781 797803400 46994395 99021920 10945337 813830038 403192640 805376327 177925871 940545882 914710837 945852506 746746882 986549797 641738142 899275357 602445301 706885961 42902766 114507825 19826555 212648691 124810814 717863081 156289687 764538160 692846914 764781928 409639032 706632995 378971086 479765294 260079524 280260794 173921288 194647962 69208555 354809803 196887147 218863637 163654180 728011221 678282939 807031816 69302091 797186395 585007774 598613342 223636756 697954710 140360711 540527320 80388104 161407503 17559683 472394162 106660364 232083358 69418854 411685330 333305278 653883331 502162489 913969961 311852706 767888944 24826466 222642181 71721676 548905214 29391633 987949343 783812451 958721009 379982191 659507446 219415509 799303739 679559861 976555173 29724462 353136380 90185370 828639369 103784351 868493837 19519555 397833835 224321734 909574115 659644029 847226757 327936998 755118469 569586985 589432845 284389185 878559291 647635460 735330312 291867013 819578054 259458776 907389432 488182593 830831520 38311031 730724402 346746862 733123818 576858248 942966062 497597000 647812473 357775430 697099937 236728063 640611751 140408584 698156128 105130844 497994445 71471795 165435720 18780205 734866380 103551180 701576122 281441669 609921187 279265938 494666057 51598258 630307558 132938900 441317401 9101180 332292663 242591221 959298739 347906580 682020506 198545392 793856068 272332335 344379525 250197073 713820640 35760008 497154317 109005896 595672486 165358219 837342855 390166996 987989783 383270383 817368804 633501132 660630755 170267356 649025891 232859659 739951760 77249946 773428424 493234627 496666133 200436287 562188841 490548414 986736341 42437469 103385351 62788718 359871990 24900261 878093842 651152518 920850318 748487125 988693443 595449955 732246846 323302618 666779662 149941856 869438751 383029292 496925378 236591348 781358767 135880831 177857345 57715569 291252276 246447638 648690604 10383335 612805059 241226369 407530178 187205597 928497269 420190915 525999959 74423940 350124685 44217907 677200948 166235020 925279672 537941144 903495437 557475593 695015842 605367834 630159531 389981366 709076378 108901409 786563195 609250592 927332359 841168804 938373450 271429141 906719876 5354194 121713884 119064105 737931131 364955117 871601114 268926408 656097086 572041481 845929322 332063020 771802534 453665608 851799416 565499642 818513178 155067100 953217683 612005740 919965170 655485040 764792082 68015876 638694580 251200008 554716329 206184144 863090985 345468986 533801119 185900100 401493929 46758326 701701126 600036083 643891378 81227368 508543543 210210712 323449043 263916814 395392906 339639766 947021966 18155499 722868022 460312806 643933304 59525994 201752332 43677896 352532147 306843576 568357826 406719001 657257448 9250561 568883107 529105186 826738575 692207980 987025678 427319261 579592103 142149041 796400423 107007524 542859672 416504 525816704 51540460 783862430 195193088 417816203 371276104 400977081 139410289 721114893 53838556 113092261 1825941 105904347 98676052 426538312 86642065 100562153 87080552 216518586 105671247 345739637 120565811 539590842 2544978 635929901 537946846 842517039 586408851 724647379 343454188 454102458 266152469 751926007 512799174 703387614 471999064 584324840 141876062 904535586 245600971 323015106 292160085 965695101 946648180 983519708 79295274 948770598 508788894 859537690 744436328 903895068 131036784 131630829 33967316 956019551 260912042 767277654 274015601 518644433 411964296 883055510 563421019 942002618 471575522 969296155 386623310 913668959 397370099 687575674 110082485 158622829 25770732 183273189 90155997 477669323 403189937 984802155 281818212 722818994 352161601 863518106 597023555 666332849 369072412 855795649 218837332 414049769 347870966 930839872 756815532 989642937 324554394 467408707 255428714 799481152 550936034 668112279 466060260 671319082 36040856 797082383 439366322 752436944 296149654 663917825 634250016 989559335 212047716 748143198 708634229 724322330 126643989 186241319 1304057 553303633 259781090 704400851 463029430 977465067 681773146 827964601 777679809 930884523 319739312 673636601 286167712 808468018 793309307 885110591 382578661 802571803 801798706 877030105 168252690 432948474 211304209 406781123 330060675 859721585 537205342 796747418 557249586 781247571 674234967 872448025 479827815 775312021 338624477 576016179 160697847 878275086 256016322 828831287 784261641 918566100 274914856 602669134 188186586 355163303 317659365 772844893 700344843 922539925 516706927 743166326 260864860 435577655 54959787 281156307 57476152 549325144 12300793 115495958 18037805 822090440 319071843 592618158 90639071 132718369 18828512 579381026 577444730 893831420 508821776 681444420 558602367 943973954 824842915 999106464 474803612 965646886 302399936 439816010 259764046 301687096 48725987 703646845 74933878 271183955 238515904 845523707 584226167 736490533 732393816 878098064 782512396 970747148 22333812 632545948 100973221 238683434 68936233 922832209 476006489 696237487 641860232 742098527 115355765 455992224 105162213 968019050 446465971 685041561 248175218 256506451 28808861 472394429 418715623 768745764 288457400 761169924 472911601 640224455 214338401 639998617 613806239 896019049 682902414 840817192 743345520 948055125 403209435 710150271 627177436 928567017 351303961 573502854 199796677 294684728 221604606 400933838 98795953 308993205 249139828 831848541 349586206 724513287 41484466 816070276 309421265 768633415 285035096 947635579 926976783 986426443 890502994 970429124 277746687 957015741 646120666 862119467 453162505 887618629 615323418 643137548 124204485 844967770 60587886 304334117 120030685 604274973 245329665 823908655 387392321 638119818 170227943 820491635 393065442 799036946 650570668 992703833 764724380 824437676 138852895 855371958 434987891 478866698 250077571 629910461 371546210 615909929 208402616 431692143 21313316 691148284 585817268 873384539 220312694 797006915 355044040 356840238 152536608 464270580 462387912 518206106 193188642 916815508 500273817 898645576 780914841 886732155 365095434 961213280 554894864 855857288 579818029 851607651 538052755 876069681 610040525 815879511 308050728 987292178 710749028 961682266 346893750 486704885 374416241 680241936 522206384 941096897 260361473 748326057 705770728 855405122 846493048 873654690 822167028 841917868 122884110 425462514 400731279 668202633 445549915 673711402 384781256 820599061 263746788 383986250 177039280 988451932 468166321 494296039 173721869 403700511 340596068 613079210 336532950 764066406 138092827 729147707 145234336 755541699 559469959 661216898 189337748 373406634 323855922 995870052 751738057 977942334 173950903 252306915 74245945 591965356 491498246 604976412 152724883 401557914 75195618 898799249 135767072 822267073 231972498 985193021 714888762 822205661 500431465 607247643 251397797 331009016 272184898 433217035 413407705 960372396 913940164 985363322 133420339 623770902 67940483 105505821 76346438 996485678 169747158 736351360 673541842 763962734 219441958 396793565 165354586 170644108 169856773 408343499 8351466 404542717 23585433 841994769 638744661 940948744 651858099 972407535 68876899 837309814 118490353 999659494 480962099 627659445 388425331 733146092 365625719 409039838 121789935 697195493 174320394 717003179 109298989 792183162 331814442 461758505 138590745 700190246 241903126 666745605 205800701 664444760 146607064 416889547 397801768 742900589 390369367 804713304 430149114 556716539 123666109 330619602 141753912 655532831 259956861 610579866 15412434 220659011 28805788 422131923 384247660 714082379 230306873 905863360 795768387 974594463 734434060 962377104 495234558 950190926 179122484 904535805 73215961 974837497 532000135 980040708 954084028 998263441 287993990 978025854 89306485 570573387 5434088 381857306 11437537 98215775 54729340 457257477 289610542 750895933 214749572 500315394 129825486 481020035 132967730 747451439 673785290 961725001 948236242 990663993 967779545 992403468 322592270 980897527 535242265 828298235 700203112 772463764 677334034 961883475 132211590 972249156 467428140 485603855 282294361 399306665 154953746 360364841 69792962 399311412 229038919 543252436 142928850 424428595 180091798 760964188 167670027 903359081 660216588 801933801 639996483 981083299 847751448 970492649 529371875 984532528 454096460 988585054 370032580 770128709 558050530 735118833 286106940 554744078 234078361 398119563 84090790 861922072 812722254 814467373 438721880 520525658 121459080 143502929 99654721 947747741 472957407 829519557 426548940 782532646 312415804 689263991 161676454 383402349 371213569 986342581 458750223 499315661 394469757 914757260 247804322 460012081 28631239 967331192 285600292 833801454 595007558 895082217 112226177 688898414 237325770 808304933 101903362 349562343 57979670 91135776 16073499 417453103 297100583 319782728 153768812 769430845 96495435 614405088 420225566 994605432 33845029 128645330 62708437 233568009 154595557 516575761 502920651 801766887 413356685 507030668 184881932 997388460 699628425 772991856 290990266 683206770 428521526 903967369 398327951 582565791 528332764 791256312 628995493 793480597 493334233 771063002 453216776 645914163 264564080 548456676 128067465 943684785 555113499 854361583 382708140 599793432 318061099 874706239 305332704 581463742 280749820 396176492 215237842 339371931 179814359 597763044 307570205 577530904 463450764 526107290 35159135 181890977 57662715 554971183 132678887 764408671 671670271 930995673 500616990 990702517 363229309 823679828 258765231 489247244 461859483 906942428 844327814 960916949 465500020 680367029 638392071 889561435 797892041 840851511 344085684 345028247 155807366 805099055 467280374 661348123 200084171 946155614 856060456 876809061 72746165 740705186 557723886 708338335 96502355 124372170 120462585 569518132 182019503 414818338 148876308 758350731 401680943 813635186 537821397 997758093 590965569 989757459 440855824 534557506 268647235 587769395 447279395 952724505 653484176 688585645 354790418 782624262 698904257 765247528 732926114 881568628 218779096 391566017 311288661 562244195 79941204 444097090 246225824 515080535 104608717 318950085 286888403 874696953 597103932 868097458 352159539 896497322 527785288 976283083 425558001 853941774 276733342 426797860 46808364 877879538 756299973 908700074 122678896 687605903 215437205 439436469 359981513 878597379 337206785 577214177 504464523 619752366 335534803 947180921 623483217 643194613 598990386 867478507 702193179 777587018 265591732 480027033 139865336 207256980 197397113 244910452 157247989 388187368 142919669 818180302 312158980 611852271 547357530 616518739 315489916 827048337 335214744 688769132 380363819 735298534 589242661 732366276 442530838 653730243 570301363 705042907 487259465 579871232 244334341 664410189 72241398 179859358 16223709 237965024 149175173 593035743 319178018 643450752 478686706 853200222 851344524 977590418 932568931 958595180 858783400 973032928 139696803 990560921 416557665 807339963 496870643 690268752 405245063 462540780 63606368 284001297 17475131 553351535 33287860 134193224 46113716 228912934 33467561 358311243 51132044 710909031 27090343 840956825 560918612 705265241 35226676 398246355 233650029 370318847 270470572 448048305 116707125 963352610 449149663 967156983 928548895 990924139 73182606 847507135 181430387 237981970 123038519 697483810 289038037 885492420 291120954 792498268 379336052 836348060 709983068 940387174 231440662 469998194 432076378 806361587 802016280 839917762 5637194 419300479 410843576 858174312 738025773 897004944 818414581 958572789 232080065 452136179 400672705 604669008 199274698 712956433 69891942 791255918 765898839 824125913 569151369 901646899 470174519 798441323 316963458 803465326 218922417 368386734 363883206 708704920 493532915 649459747 305418811 801913202 466446155 914650367 558109053 929538614 741932014 872466948 430538037 630617825 557994830 829607126 656640134 683784829 54694097 217824129 9830667 386775664 156450503 326916785 231135600 290540238 81926431 995027087 371666577 649239626 222376733 433722250 94784545 388168458 361577952 745295016 689527705 868251974 581395655 883315562 208163156 823809686 651925112 884361746 205939012 397442095 24969665 857660915 90403097 398360042 380900239 927570846 801120676 836105799 54183413 633663906 477793140 904425290 767372318 930439715 378124967 980684185 945911456 992399888 605676799 609545330 198780897 713453430 517037336 860639622 160699183 542339050 20998387 189000261 112632308 206927793 11359594 569684359 22652733 923480620 673498246 883212016 591061109 651691301 127509556 419387871 134892717 501246131 352981888 685661476 652015859 971208288 738471783 928144694 300537279 549737364 455629716 991545715 69964362 268078968 186256347 237558948 162789165 832464567 606710411 613226998 594020898 855178736 788286135 880365199 860162845 904903478 165628558 759423398 335297425 650585479 569624284 999822357 424129674 752825815 582531075 637846370 185782681 616858576 605817697 904261493 600040774 818874453 4010440 337985003 99101395 640870686 614024951 947558117 789867739 937801935 334737407 354862780 168826596 705715362 578250236 856015443 819740639 991003935 957456215 979548964 480194735 888572134 117302212 660076368 280561219 994647358 663060137 713550184 466164004 719163589 566822343 668620731 444212964 804164163 769991031 783843769 783288816 842875811 714458669 830232456 292937766 467364123 258110002 350506011 105701978 671394665 61156534 185237911 141258843 976734223 43047047 303109197 210129580 291315569 126960197 225604050 99817830 223210705 123578860 721925344 161375761 956250606 560630240 672579119 462049903 539083396 415654861 694261319 547419551 592990523 574507673 614878784 73368784 938102916 169839409 355917568 312744861 507874350 401210105 927989108 821188873 924142373 638687945 649438631 614749048 646317603 52633245 842720931 158120492 256798792 216841763 586538183 570094559 998318278 278978825 416958850 280002224 565557117 394592051 596888304 126296841 960612133 85106665 407017186 266733521 704066291 406075809 473052634 160015531 732199910 73342925 872883804 337464271 793773950 772816583 815566833 425428151 699551569 188951700 787733525 605925282 694738473 157310800 785381191 93081011 751834201 309442387 385103233 89201477 936561805 626016059 703203927 482088680 795232907 35229348 111231386 12105893 452004094 396431940 674155781 453935499 926478493 590787511 806278017 750474836 891822761 833797445 919963093 710327191 827432949 346428387 985485569 647274510 740275627 515216251 863785310 628028836 883859295 839266996 874396565 405120532 424197456 404430353 607219394 170305174 507171777 24922096 517252236 455679355 519701531 368961156 660930149 7459493 770013707 493555372 573846292 101934476 797048983 122311462 133499170 6432207 696951963 463716221 956460298 671020253 972753518 828024377 925224343 612257603 664852067 473483712 956962289 930878236 940410325 344692991 360262070 97299504 206368224 68574692 494460766 38316530 280797369 184039736 681944223 607041957 620742861 476653278 842629111 35422885 720727950 459423145 615082328 485149009 954756717 263296698 680043511 372305519 859716003 704577537 771049649 746582558 893373264 324261510 383825941 349660297 625246304 161657126 922249176 297702043 752962016 642374885 992868949 188934226 334881622 325335490 365167296 106298904 218001931 198394104 285655513 129876444 425262819 359952377 425590745 118352934 671828316 168451351 657837971 268588040 658722844 365561954 646449706 307789093 451333270 296152537 408218866 202323030 694266468 401256371 766114840 511486856 865711090 718152747 828056275 179328707 563149508 365196640 749139989 305353547 367020838 160205714 831821311 345194082 841423423 275114647 481018582 130015976 497397280 85422773 512032766 66712320 631912331 508739363 685287461 192324003 256470921 180935065 927201231 510980795 984208868 960562818 968451071 588382263 610453351 25253981 942124687 766762930 959716773 666194588 869420921 790047042 966993667 246833296 565024088 390193157 402718209 322461191 766690166 695244555 732556902 308268173 740580303 501506285 958468929 772196209 919374460 270980717 671722578 541788055 785017156 163975725 389678822 285891067 530671137 234778514 453989532 438412537 848498528 395561744 613459536 584015466 946780085 344523944 822158645 9081777 458164774 339855430 413661889 98936236 638677028 328300932 516696294 489334628 830228772 32776131 322093920 214929966 618285177 87696912 736909185 558837398 869374625 258727276 625317403 445704722 727698511 305740897 782381782 164088578 850829813 124299275 810042940 568291645 979268584 4131887 270085246 63854594 705407048 594388363 709473363 549514519 697524278 343169585 638513904 240047368 419818115 245328560 478301478 208546798 645133778 520549879 852683585 223373549 610233667 65217592 85939995 6834880 412956758 299597290 743139640 655838266 821682197 95420667 816944789 179077386 887040723 2084404 257555404 90973610 493687625 432732762 628625776 24390410 900242649 333949699 796783157 271842204 328599707 40778598 396036785 309962606 940270446 622864506 725666309 27416462 889371482 215294368 246533259 206168230 863388406 176970527 798007341 186440249 274398563 18778043 870688115 604235745 614620707 463705603 627268658 239124906 680854072 67862508 772956278 477121819 670397648 392964609 787995738 616978003 916212915 607969057 978368440 420723824 890782871 29260099 44477404 18001917 150605076 87283482 449356937 279129660 353041559 80975158 658198901 22202640 905161658 487917964 785331286 474365002 562478018 12300948 214792052 15159483 371537238 258566323 544128325 146949191 526382883 312005242 605797590 45646719 657468109 647081606 863960618 247046853 744256910 402376068 786878211 572284615 980373394 213868203 672737249 484526073 811167190 507517678 700795959 615381349 630570224 205063364 505612536 397743394 806522728 436051309 843957401 120148085 344124584 200490142 332120394 194005033 803211147 325151883 595386136 453775741 456083737 198353694 360909880 53965836 330812312 290224023 517493902 88555547 263067859 227641299 813263172 256936941 285127504 42893585 807757216 180531868 193124270 178537539 775478853 323196945 728170917 506591015 832647649 302959087 903157980 308289233 331816778 147099420 912427855 438325573 877182485 462062075 520048902 206430127 591236790 538341125 855669287 612218059 917524589 413839516 515057327 175806864 993145557 943693442 984141321 305540331 574795375 222152616 255531759 220563051 424933219 340471314 374344011 120109326 442124172 294249261 541643148 429635216 818760208 303723455 570813758 143531755 683706109 60017674 99284315 30785821 529579508 527986852 787621763 421324897 601252722 247669455 391469087 43249350 845354968 572393867 594675286 282627755 975301414 832136244 898194273 301755164 667361487 666774263 684718024 174710088 488960041 188491917 492039248 181730610 201128327 16670753 120034613 96638510 180385120 3498315 697723212 481033248 923917938 745885105 958064598 23603784 209796378 75522878 867401811 813458745 957645882 678594065 881614246 272550403 740741321 61227238 429703502 233170989 649009334 145597503 250266555 49909992 197407871 161033499 190512447 19521440 277838530 271462031 884800766 765176386 781969356 486155897 887739631 582729310 880380741 639672751 981410051 640355985 727903837 80783939 513623207 293114592 619427995 177834345 859066526 660716314 890151417 315163070 360337332 284729315 671668602 163189063 658370048 651480141 846963163 349673205 822543230 26561327 769549852 707273167 880098744 293600114 479501919 84741001 834731454 109276071 659302751 141271009 921966580 219524454 669371899 427145142 832913099 378967507 878214288 328526715 633157604 630627615 931003768 461362657 633087450 411097940 442201838 46095086 542393135 146060868 690868081 506719650 925286609 337841663 576935646 167205614 193556674 112154150 967750972 965537227 979248484 212073174 787045175 347030862 489128015 21145682 507542269 4088885 96592019 76049214 141495206 68722265 587988368 191604127 271533650 125288952 478346468 129120420 776687491 183609184 487434097 97992258 965122417 741278418 998064066 547267106 598500411 151116237 624109859 456350090 752484591 222742776 909654353 762268463 881544447 726095653 944600273 918515450 960815219 206796801 911875767 173225710 417420988 13103727 545709605 499067913 824233732 801801933 929102851 128732330 151641923 26072323 840506484 400070825 653480012 419565991 592158999 282758184 411573606 338442969 536188951 444915661 832644788 738247935 772262252 282419111 986635975 628460217 657027470 183079659 684226909 545540309 911737346 397748482 754290225 381577208 622088571 335984450 645923904 464582956 517173705 109449876 470911580 179988112 381022604 177896713 590504520 294606792 416938841 204123903 551802947 214058465 250598022 201993396 910411816 475183866 582864193 474057428 790919113 469530565 781287318 282076127 534892737 17259946 975092743 515662802 996711120 908615334 928151592 831347001 916218235 288067671 554187636 142760518 725473055 443517033 495627210 68922534 592007914 527556659 949358771 250428105 954288981 765600726 908690641 540968857 797263159 359712233 833973990 161947707 295670279 148821393 610381580 284408502 750750348 341896935 848731144 11322095 178827588 136266113 293281462 101683933 681772595 375636425 593347647 85030481 627461676 589876040 859762898 97338326 757641914 395538363 535499428 164873083 165502337 86676386 977056758 454262615 641615643 480101979 943932821 310053151 956402454 338818438 498781069 153766348 300371001 82440307 403308806 91673805 719667439 496498894 916554539 504968993 587864504 541379727 668104861 85166934 429807950 118097310 620251680 143263547 583670253 246191955 679965485 569776059 894592621 774521807 938012581 320514613 960138312 345105198 410057130 56081658 715620674 217867456 932459775 750256619 764392698 649650997 881823211 738888608 976597934 739435510 759990660 748726884 882932237 41975285 51100357 16472229 446939376 167386153 802242438 25906164 353853663 11164016 52293112 26844460 274472970 26536430 365695837 330146823 449122710 428410387 837267442 55001699 647591746 108181165 490490463 322671273 820644346 359481651 982534394 859484636 893483360 278481679 566837570 478983063 761976678 562126629 863709167 570095359 739284838 143082821 485222764 447739725 678067643 25610745 607749171 92563291 297464423 151400171 662320131 58003998 473197714 25110215 649630823 378581178 808256739 258840756 556751090 421979283 855690513 526552936 847546772 602160113 634030741 143925172 715232477 377932012 839502326 209329954 481765954 160964324 883466378 288291299 905091309 37882762 544170037 440797687 758966978 581949099 867664988 616579333 696473061 18314895 325868579 233711028 905647184 489694100 866608079 393497440 936977866 688811608 781757550 731139793 796652138 698171467 861759778 4051000 353656126 71771328 393575131 297654925 778233195 742704146 832633384 590559503 594401109 269305843 327349997 158017347 860261825 388074220 693342481 92160580 183689319 39082849 924589635 439554129 447791080 70796528 915488122 171638423 412020124 3677889 356540307 23005740 627762596 587141952 760963942 112962388 319361470 214552580 796342703 766669125 821077024 216773667 715720816 87024311 654046905 609109439 708931410 644730500 758945132 136627899 634237721 446386628 931779741 872018697 890276602 75520012 827013408 282627424 768273138 35143413 337100057 70825728 742282009 690813599 940453142 355340611 854109067 375965709 403677444 262263358 669327937 326309473 682357510 493898758 847825860 584781099 787854506 322597176 333083394 83396369 342943320 130504187 938715280 173871399 854328083 565577231 575479147 376679359 969584300 824665065 866797174 313795752 535778963 143081015 422168782 152365900 215694180 95085181 859322139 674655776 796980163 105125297 168431226 35468348 812824144 606263924 807718415 135244024 408452280 74378401 847819468 166226975 203642538 184324292 803635771 700696816 725065117 583460055 975033011 739850526 886503565 342499543 761417539 651670838 961593919 121815679 303111901 188115330 837809164 46825704 771535517 319621830 688173208 410921866 692617350 259546660 336986051 91733792 239397594 133154587 870109667 15493805 830326651 771852632 987610682 1102805 610196343 190393983 712542456 127576335 245582365 83152802 797243349 744444020 753409264 169354577 756740574 11059889 236761399 110442297 308974068 465590 956366803 618315698 857392016 260368042 378958824 234416008 622798616 366593192 527613306 45959647 878088084 373543099 909262003 544569927 895512013 786287590 798352864 8007967 301249860 35863676 897822138 107859946 385194803 255082533 585127636 292756917 474192490 45764093 245821097 229249624 374994332 91124069 997835543 944699588 960646957 786902403 892677517 547275606 791483138 113780334 495054859 150813742 355610046 336206812 736598677 721217853 908226710 161909457 781575488 578470416 980227976 938475765 938701043 569143172 957203113 513188901 831251796 12495837 235786942 137462825 550079199 153637769 715525031 470500805 765560380 483196774 556112583 471371299 592749836 195555691 960514323 444436129 618534879 165131069 891679112 223762837 327549826 106203494 929566863 41789359 929873080 10290082 160976138 152842463 515130561 108486363 913625248 872379883 970395630 458937512 666002236 71269929 633962668 353932669 507864122 307287826 933342691 823650971 848771947 798881412 818499231 555727988 824995132 504426848 507209188 57815784 405387389 100319347 993127830 465754123 505116007 256134062 930594999 438277130 471898017 258360628 871617573 827207550 899835665 501626312 712559631 405320932 630957769 79134066 460127877 86296152 117447749 81564910 439343933 376457491 946110573 276923888 301779792 148973497 408682240 241655233 408139369 52748763 504616238 228998846 810740087 351212762 753033528 292958190 302182373 268624586 336437665 186868126 456878049 33408407 254926818 220093575 886283413 286176350 762246979 621323274 628189204 602400746 993253822 907400332 986348107 765866957 853223697 575097742 894187160 63225615 927497023 458178886 637181007 119669539 589820263 105097720 353920505 79963303 307191097 89817605 980234776 606214570 816213122 286183474 504756370 357431392 860119589 780455058 890400344 528644088 924506956 187091570 679601355 75367201 300934503 73630074 871578704 221079568 371365167 168540519 842643579 601232304 859067383 151032705 636816493 108035943 500554658 64574566 197177582 115155949 400541204 154785674 505420424 465451887 959071768 544023790 914204459 31625022 377843250 51546297 323026794 12580103 543228692 44696957 795688640 75243681 614437390 376167340 580955146 211394626 243249668 127109029 684429669 492214755 545955862 11503674 888466952 709863171 918271962 856485538 899695697 76397629 724558051 27661099 423539548 237452094 731189457 75084885 388556887 259789404 726974728 665136426 696791011 306384278 717645481 707444665 920699415 909528284 921178176 810009959 951895936 461879925 946944875 793119049 894958305 43388819 630725461 50202520 857995928 626690679 851439529 153827862 426271534 126778201 241239053 17130011 926560651 207354820 905322393 450937258 834145496 505638135 586519869 512657368 814317461 460693557 700698108 545118033 615594534 349293817 710034885 507894078 893983504 27518072 383043107 289626876 407792005 398811071 796884743 26710689 600282719 87066455 665004450 533815922 760948882 5054612 868383799 506022292 557338674 536032798 666624131 173823842 480487143 384622679 475372994 51925666 704587370 699423935 981084936 659408675 777241865 392451492 613238155 335818617 995918912 131205496 388504358 162075879 333782179 178891580 296725709 248041083 783098749 352299539 407960421 238223085 982644423 312879946 540577570 167496717 617869927 93131497 98126690 29421788 331785913 40588164 812947026 389115676 739813148 18121114 476370632 420194586 520127582 499429053 563209656 387372874 890039544 639103357 892026516 847358972 955019291 97551957 280637043 103029954 969552539 574616422 995694878 1007372 940335087 531021394 869149637 293250279 502778456 121069843 328176650 145103462 700560431 332211106 491248806 182118108 264095005 92254229 672341107 14966146 151608427 57372413 245300503 66835210 389013065 340685450 473858102 244825586 265409669 41837910 631341736 555517866 969558921 895009177 911286129 517267311 546232794 335533785 687261107 685327761 881821730 879873149 976864367 55239204 287302978 112261597 519467541 284024549 607227706 265780077 701057461 512070242 537851917 268424399 932575931 133663955 777149874 59761266 616564584 329918054 384331337 222516095 577969815 472471987 839037941 484985111 657462431 167213500 273307445 44306234 408114448 383471399 962013570 616815786 971100563 864313470 969205616 189594126 777625069 462376473 575822069 294845779 341091928 290296235 893808909 179431438 301596557 145124853 947641961 680643212 784511023 405446924 575491169 370916458 535679103 26359094 676777339 202277732 236700069 88687213 825410498 769406750 800631746 687965721 735905521 599821778 923543097 259331925 663023620 424957891 709068599 436150893 695503157 634407803 961589571 557346456 742724615 422202585 876224660 694545877 968446006 371201565 506005577 370778685 544301963 265389956 476742704 231302493 554050692 368748100 674053235 532837981 557879922 269050490 357129025 43502232 827410000 83328594 531888273 46644592 516175262 431221913 595412299 548969799 783212755 257310892 459845186 153913044 663525333 378754165 559252890 77598996 258938624 35962659 737764762 622866619 878391932 297254904 439521675 434854415 847322339 198754366 220204423 139498802 712614678 658286926 994205233 188520378 433268530 214774419 765650391 539566049 680284289 391927257 759891435 667643688 753702065 125579253 219163598 4259166 865645079 225079160 413228813 128156324 846656612 48411601 359094667 99162693 609577541 87381980 327551704 203064699 692886176 1915753 684366480 481584245 942654429 798188718 836449021 325777407 457263727 65451981 98057124 16401211 910465036 772595389 824977461 802854246 803297795 380783905 401895342 9958942 773569449 672102506 742499558 73539940 201233493 90772215 887050017 403118217 549723124 344479624 547547587 231327540 802976264 479919781 781323482 210805051 689873207 314485690 412250042 332772910 760346943 123855950 892552070 536022090 603508807 575828627 579526562 16514423 554432565 544664226 885817556 415323530 646033462 299989724 712776280 707480063 868719415 15497002 871777336 143283194 304142470 290721473 362130833 151775398 665555618 620892873 934158517 464419431 872380030 825165542 849268995 697896574 757790265 425286592 934510165 713077508 815393469 408176741 954533610 712862768 894576411 838485189 954748585 753937150 767600168 91033055 865266729 338215723 853894799 297068733 894036131 366506518 958226520 714632362 957276682 920658044 976828763 952410786 994055071 105400648 770946717 561217987 787907642 712536534 749474678 63275716 668468638 533635016 739737988 687678232 714737474 440149767 879290981 229292523 513153729 71001918 516681272 420440411 465284323 392499962 460461010 28737602 201176150 28869592 872070019 209546232 772718527 378493553 422764437 396203825 460694550 450051390 562181092 524225333 790610280 88335464 163128424 27990465 887573009 827681019 915143000 66528710 381799314 278906269 293957644 104285230 884331779 548105425 735041690 649638055 980563095 449065518 563501703 403193207 873741487 627098418 662519139 144882642 815065706 436253213 962055261 849868000 929198153 136322548 874944554 326137191 398408910 86175924 340448371 177964989 788831391 748807213 929001322 102273070 707800453 92976913 533255524 174640375 398441049 7016377 677383815 128699600 609404345 393067882 704533911 443000080 897301571 629579192 673364223 118123074 472504925 291020566 861763718 617335105 856257179 103725723 865915432 499333837 858363325 821612559 941189435 757157141 990308521 931382518 942539157 532014773 808564849 261206035 831191694 449224854 728849132 634466059 770744938 262261360 695625033 550474560 785432334 359205284 388421313 52908110 852095329 824777658 977843054 603362219 801320482 499193921 649315098 99670388 681832731 401950020 589321043 212816806 983177797 695835573 849562467 487505112 531584863 297418012 530334060 410779008 884765044 780307786 904016956 835773041 967852503 931811335 955958034 466749922 470052345 248744829 958566115 520389418 776997245 462863542 712614712 646297195 838304608 631898386 852407640 557662600 671421506 30714782 419862388 380707937 424249478 223079557 819875230 45075217 892227357 665621142 686814172 183368845 851889612 244896921 739253529 720327039 986633524 107042913 352686468 241350679 659998132 404710872 790239449 639245807 966945478 717221919 941248190 365335113 789065697 355611456 774612192 357668165 706725327 462110400 776413148 171387604 844682270 255270215 911233974 180424915 968037150 203113378 757421413 570664451 893170102 408561094 943782844 842562750 894859720 696526730 927769943 70449326 672047909 422670852 972249972 162465032 577110810 373174043 918936233 367703107 390087814 239646145 950921532 377602009 942070233 833337032 855475954 853038929 936777123 202033781 378465680 42028602 991763096 970730544 986083213 54766565 971129436 46337074 289057831 142739356 818183752 674906658 994269485 61842289 237810184 159807901 263101232 210761176 960316747 33843404 985448780 893044000 965695566 956922664 970156314 470291147 565519077 1968258 531132423 414321247 747008034 217711936 959892660 681914476 886637313 6033084 467169001 366542428 863450515 764513072 784810921 105456999 324717810 228054115 832780129 37962109 612508806 59494541 121415327 74619571 452142913 369770667 621793207 17904542 439854513 269028588 392452721 300200485 361524611 220404377 584367249 387379717 834822623 161083266 926658198 145958117 247744164 246594690 259489316 89169268 691581637 67957339 998596122 746293599 839116101 646293739 991303364 850311548 887784716 744766137 818301826 559477708 895818287 813146310 915032150 56370506 197616044 132960010 555043880 18431669 757899147 149721314 223404980 4698135 528674400 521633006 688042388 23679099 968080637 211244829 755968170 414642611 770049953 324496214 570896789 25964640 105568559 20418394 768074893 463832841 869436036 532007732 766627042 149587163 295228184 232605757 513261088 424989615 496838105 425208666 776744591 249686657 581608419 578828794 643902871 584967791 971246879 206383941 765340585 725248237 966426110 78094893 422233571 366866574 597556837 499295500 739558522 725961370 764961016 109556816 502240305 365175488 658835146 643850279 847712683 298268192 919587130 474875652 648828190 304168744 899401366 520050492 778947432 581075894 643316211 202185161 651445607 579247587 848205043 497497875 624545000 268707170 371791486 116643961 870589280 487934388 899222221 260981844 952027558 430062704 491092203 314234605 694076031 147745273 149969344 130152033 962208323 922260745 974655130 578506149 883488700 397418758 606402155 72620999 986612529 579438459 753310168 131275552 283132623 71576039 954148283 11986516 555894479 101746486 553503589 482205207 927500749 15758473 737131636 44077821 98946561 41239891 128399758 12553374 863999231 203874172 773105189 49073938 70871706 55669470 787262536 719198190 953735250 797144425 855927383 271340948 809617791 628412902 652175599 398595482 764729530 737517670 949612860 693289444 892220936 424936310 619830363 517034037 879267700 347920575 613278155 53558434 432645955 142990002 416188301 371708559 941140622 468683874 574853426 282198016 713315537 348419248 684632940 274168520 450702565 244618398 641457802 211028658 914717424 855531221 951468593 307980809 627244409 560302535 993563115 459608249 884431510 508673450 730348738 643560218 931768227 740232198 803877076 124869244 379650289 306492145 868086794 89705893 347643855 261454946 437923197 323273497 812619086 172428521 837044505 47050430 898486093 89806833 419968613 262669263 369140022 120239931 710302401 531830162 799962006 584638577 645713884 171030998 729514693 381998207 685310488 172029253 503306678 175323204 787173485 7295200 182206071 36545414 920605152 793974892 996582585 720474328 839954036 260006408 743663000 16367184 251964835 212677447 419645146 130825008 729106492 215008748 482812189 165633131 860805663 601265928 967536390 245895475 308129959 294067174 713100644 161335011 804880900 237101545 406949126 64401430 802824772 126851339 471701549 133180976 828014574 52240507 784217469 264088780 785421989 179150817 489464965 470550673 797059218 461520567 844045653 454873989 876709177 247300597 264269744 78082114 206233601 197818554 426179940 116732375 494127966 270600011 691927180 327656355 711713193 358653675 887098680 708360115 932623642 14908993 939931300 892153042 975289570 739389578 835012230 101934435 523295452 474111319 974558669 612624867 830356991 412001528 849596316 429196944 859905350 723776310 794292386 590138209 612943532 488728748 583922065 89300155 883641521 394567990 702214975 336033659 635883055 87860424 167674112 120732265 785388115 600884765 844640375 490267916 721564197 129386233 379785161 55517429 359508377 226987273 313154023 24761225 176813882 79816538 584894407 310621378 544105607 257857216 664966713 209456798 271970165 228617144 710429332 462521759 892871276 777918031 917181298 825241770 838841066 47799842 789737380 631300928 792609986 152381666 566090287 532500390 687527375 510212451 811698427 424114836 431549646 309689389 783929603 149832404 756681086 25519642 714366807 332989000 572567862 225838699 250475302 28447879 533613881 527486799 944254538 472238371 862418784 354871917 791220911 299494810 485580666 112750274 350408511 143968510 717873267 675530764 931278431 856732145 931203715 111689224 348560750 187557751 503003113 153943740 893145195 568218268 975947982 488584862 748791771 694995490 851995126 569292519 905977386 251384902 668352989 581642442 794352570 608073800 633211051 451099210 592505628 122522575 782212876 634778685 820161684 113836310 620986221 18006972 331459034 221341208 228633534 146069617 194813994 79426849 257932698 175807863 631098124 23918096 272413919 245960447 600998410 15027904 38960566 36166282 905927087 874296064 975102785 653867858 885356751 784341223 853050207 4445132 817073329 487035018 709827045 391904489 745862604 543004653 842306455 830361256 926231438 163203725 372007122 284349604 371156755 191586600 297549553 247213776 836385943 146279651 534535024 424420485 909893016 32278044 318799718 135097365 900843997 664225444 879978758 579407755 677104362 332511599 844087114 320828391 785606320 88179302 458617782 133654093 842303956 139619599 685605580 200122934 317395903 922958 29878191 24762046 867528731 566137864 590679679 310599881 698592228 239125624 295319866 43764079 610914051 19300115 943415875 75279330 806908499 332861086 897011489 342568356 971781556 339776819 596512292 179064559 585141568 530050832 775571217 737303010 801703795 96277353 997966778 76890572 253142306 190292261 624282731 59383346 611065699 159486962 682915278 604275443 878864195 355619060 752558356 262308388 390045566 93405099 172651456 147929455 943798801 600135523 697785595 409084675 560912899 31544405 456557897 246955085 728183961 561518845 625947969 408275618 449306735 283814227 997295849 256490942 435570702 342882563 856032331 32193911 659294822 299388566 347332443 268551320 995347548 771166369 806135748 468701043 606846831 309847757 339360509 184990139 755700672 101719167 611534320 125731183 431180896 120039923 997734569 366876945 961980475 705151395 775025915 534191783 545610342 133306583 501486071 29453579 529538448 339983790 975795424 261681354 845698735 581844353 977368702 181924135 596143420 31161503 846164536 810114751 935625821 230448469 676541341 500573724 940288586 616391739 910482007 385661589 398985545 95352777 730008156 722126872 876794922 814942715 937818938 713927123 760860259 471464744 795744507 756570923 766253383 158214322 419560885 265132978 347518772 77032995 902640343 445237307 688239285 303149874 894958015 382430847 972511788 190021235 475879468 40822571 685008533 197978114 749001666 212599648 991115602 224428986 820090756 754342072 899525134 255002446 814593745 449507986 732244346 131831009 487101253 319257833 930951236 346194506 800065045 329889022 372516555 124079783 638156296 416951687 998517051 390037950 760562595 689065357 829091325 550793501 566662860 21867067 278086745 186749197 480940551 215128236 858688952 88638417 914046021 893322642 905066224 374943860 612241782 201751924 966930031 933370927 936714655 380223218 464777496 70529380 799112752 85463035 648728310 273225764 484786458 367431068 560588268 265891632 360489111 130062517 256942632 228979468 396754039 108232541 234328450 163213495 567866821 163103644 992443337 390182842 436159131 237022887 824589700 74256132 973186855 55376477 965702783 195127538 496098255 287801580 802460998 214373248 299050629 45286736 612574678 440239893 800799951 565046792 964347325 672792352 893960225 420033015 439772313 130022118 324522919 258548079 726500140 627249300 704774166 587740286 957851193 192923722 396392598 284326187 801029455 625989378 708649332 294436024 883115125 269154651 742638645 485943768 817388191 233359780 623471115 7577846 395662983 233120195 770876480 459890777 982626128 426213301 650716288 184557537 630653207 334998615 614194785 602648898 887699715 571806138 963196456 880677306 925369107 392599290 951773777 503938291 964440584 48173212 659694349 634890303 909798908 636044266 912505764 540458063 651112641 345784102 930928745 137152033 268277614 45917008 421069424 311521421 833252697 623117236 899480883 680007884 791541340 286987317 566401148 328890182 516882230 332398924 517681567 118878666 706542826 307736825 611600737 371729800 721506990 454985143 991159250 326992019 499780425 249005854 802525384 455269407 568425478 79772819 935461479 142347577 567265761 210967837 293824070 29667097 235448077 162628094 785987473 76781286 101830573 99191174 703000589 576144107 707784889 401329245 595962068 53069610 315177721 28288046 270526113 243129278 283604874 267211796 617847204 551936706 980584833 287616147 939960862 209368649 769050434 82318038 916398613 777882152 780422488 597824142 698789933 216368750 896932792 518607908 718020751 442543994 581917444 124745069 502219083 128074859 294821352 248415312 609923142 570465572 739476807 175403232 309553030 260657738 924002338 362791492 939369948 724360252 816748372 540917404 826790815 30882264 991356321 369353199 677965871 357058429 849045149 782053788 812933197 804926770 817299011 609028658 627523331 291054859 396022601 234850842 450120379 173137500 686175312 409254798 468126435 386592881 450143165 121740448 709348766 4419230 692460908 469417675 846700834 665060372 890441559 386621737 676927697 524624253 678192852 481056532 737282740 610608660 950585134 261429923 588815622 572775802 787626933 319916920 941873448 560370507 617603347 503478075 987040891 715561648 820439586 166228276 326147369 120085053 298974478 249398842 409330783 145783036 512014249 504905767 772850257 302269976 483885867 160917277 559523536 221283110 328217658 89783280 613433981 207573046 361086340 144416235 242733654 129408735 964827032 90618430 907515516 538389483 813511855 776170676 961496746 47224898 686794148 334510033 467657058 145558917 461723406 81433320 223668081 160500156 411711587 107868530 674671225 46872456 162792819 111121417 907978562 648605290 931921840 372608576 962645448 859360140 964111877 767580593 843125909 262969896 983008966 182341766 892412650 397066386 510689032 25212732 944274858 580471302 957670195 311152780 620211586 15202237 910833665 400425221 754016446 554826621 805448319 726040572 840235546 750033673 776709609 317562883 665942336 505767643 685826591 281642410 562995434 346624717 695333626 366427543 987535262 775401995 929388588 856256899 903170873 257714551 568457300 14579175 55490303 8535434 519632556 313367915 604362925 182390182 202401999 82200768 623521123 35255640 987121971 386292218 881197405 631199445 646198485 636598627 821030795 815048148 911939426 284611426 395916967 110437298 265803222 224439576 757792656 185372732 724135444 268516900 787510610 711534234 779794668 739874500 932054914 178744598 752441390 412820165 447337314 100144744 821773387 237092107 856383118 110256124 794429393 457840766 506927480 278327079 826262412 95418519 945836706 391228889 952452890 477005024 512066600 74778783 586144699 185639974 740129266 728434513 799183986 547197854 954866040 64549941 562041575 193404598 817651696 29360586 570190192 48171669 228082226 114702079 557740275 529507889 556125871 276531995 600047979 75114918 753144724 477389213 899919135 692137263 994038716 692986012 698745270 364071981 809669556 56404580 455789218 406128699 826401491 497569057 555004491 182604278 767008769 584954406 742480520 709382760 974640380 699918036 845929249 459341329 659008122 57338666 475438426 414461119 441581852 394732508 778537217 12481595 258847503 1162752 774606039 358373602 558987170 88767136 438165179 398445073 674181035 263703329 510268640 242627318 501160567 420910873 644271128 149486754 321083701 253621240 723299508 493770724 609285215 294450679 587672016 416168781 805564351 773515715 812458286 298764329 612109629 585498788 688768642 488714311 546401339 366776242 885277878 331648922 353925829 223229380 543380866 171269106 381913486 274631342 700398953 203979730 842656010 236764852 669824504 41875092 134661803 70909343 855630418 24706631 666878820 529545930 656056712 167094845 862643557 697198800 979556550 445217432 826216258 722186603 871140452 29854038 518984601 34839219 778402899 84992159 99326848 57590511 456141825 407071913 618977651 276167463 890877384 334383421 718019638 64936475 131040935 10648335 965504578 536338459 855990007 763888176 906795904 440297645 481854625 316348582 464922190 128998559 437337784 334424984 407951507 344708542 991019551 210463670 917027689 704941648 837174227 616840421 744235189 361618928 926781202 733000883 948283358 32166056 549615721 290509115 751134032 579715808 955825811 465359471 742503857 636156700 663025767 570615250 748724906 196931914 709115313 258392659 645822537 628198779 738871295 442343221 966916276 305889984 869406857 532896564 855304572 777362343 786197796 706529212 751510111 512078670 942442850 846636508 878071289 607692219 653252311 248011534 462538265 87951015 943791770 722231572 811522817 196190606 913802691 237754919 853403391 574789654 948514228 905141751 914570194 910297369 920411587 220348826 649608514 419417605 876997891 796635041 899158308 82161287 659370117 212567952 270496687 117707069 613733039 381760549 701253466 563279916 955996638 449207112 501475340 75730219 494660976 1797955 236064184 20330336 84101632 75717894 792701206 657768501 744288370 270709160 524832232 169899734 439791308 170802454 239209351 189735605 715840473 421444512 489840191 117388134 809560290 394801033 445930223 220203721 313254277 158065972 715989585 12181192 674971778 66500829 774171365 299533404 359014363 181371556 482853166 192684792 319161251 210498179 986918345 918977257 968444719 947280393 965658084 526370583 713746735 90646081 629475911 193714634 619435169 445175278 802547611 177924932 900652923 745681321 815655643 281037903 815807330 426444520 468363760 368292881 580512551 209523649 358091307 300745536 491702085 252001323 423686782 50483481 79649975 28080732 181376097 71046740 311743413 296480650 952132490 895414061 980769680 247411516 276151999 26925361 120387619 92793294 703235813 129461500 548118068 465077846 491848006 100452964 329748368 155977818 173076180 19547817 414710890 391524894 716512213 707884838 933910774 462836182 470629035 392363750 529858563 525012157 932713426 109383007 460050409 34651877 70446799 56749040 617039989 508546183 639402731 401499983 961020583 132981262 870498323 644484584 958509313 210094108 495851294 395961046 483509155 314317963 791257627 594707057 629596420 379474863 800094867 488448637 991236886 399705719 537714329 248364888 279344888 114845745 649823503 326555353 924469906 208645962 794785897 327543665 884210841 228114794 657718428 436409340 492830923 183345061 864608853 368424426 420264186 335208773 598913633 522123947 687316320 552116511 848506016 601253702 816168128 78823903 204393865 165663237 684559902 471421179 622320594 531315202 967976452 48046825 372011042 188680694 283222768 211914450 975793221 645418109 892297975 382206 649320921 24411435 959479382 689036591 718649559 269511123 678897878 618539381 626674429 222976719 601185524 233086786 842087594 61082692 781976118 753087149 907788916 295492262 943125006 545258205 606174955 193799862 458225268 267378807 630959478 158837882 328434176 148043497 587660472 553063803 618941733 321451281 620320511 219470091 437586628 410491538 644084115 363629058 771787069 222995257 275721752 264672065 702678520 359460842 442604137 28889850 462782900 218551943 323813137 98488640 700155627 626406499 740562489 300102642 793882360 200238490 959549895 643075071 922555708 293355233 888910821 323483921 519623135 513294606 919499487 630088762 804422164 587194961 665197156 179750829 327541744 157658380 481175319 14708636 734539385 64086318 192276914 180387872 569234399 939815 810332243 396667884 548907925 337500637 933970410 636275895 669465947 211498535 846469010 481468327 625655338 246386986 924927857 646343660 805088027 185802732 848448161 514311103 668992947 110407543 281884186 33692326 405094229 63637584 697036926 369432325 712285911 655338641 866326823 285076432 342089928 98481978 805716585 629765548 818969489 157690674 462317957 259581187 487172922 43788972 657956387 339526426 668415318 481645278 522551086 500972132 606457869 461207750 497526374 124772025 515869996 327403380 889317002 315435528 447747890 303844183 419567692 257197950 359964849 120409318 373338382 239695787 623105829 86472330 258839984 212008079 534206890 454199700 831644405 99164607 556620018 404528016 464329442 47630261 839684024 568327041 597832018 23536712 559797015 352304110 925455638 719720304 802176622 86124295 900530161 628767044 854001494 462169933 510795433 116242428 331016691 240376402 789792049 591239042 605822558 236831718 569448169 369985115 739277232 209378875 458161477 343866413 494946488 72805291 174562490 83300641 515039950 13299893 592459210 555932917 678607251 494183899 567842711 213202824 485455351 271415860 843551169 292740189 466451706 445886583 530744046 379121273 782360606 342464417 617927813 269730117 811165983 701965654 837838463 25469143 407116328 51539784 729193712 582338627 871394768 457229261 923729982 128558439 889685951 245802121 383357871 266181780 784640788 29342810 886706315 712685524 884895112 30167887 936346623 560991783 650763878 449622803 758088808 521172239 926966229 237784781 295546124 161449978 797557250 404892099 938461240 341562621 850779066 336724315 529649249 432158318 446863146 417860019 667958693 382242918 827380529 421122133 960274857 882270441 961604346 451045324 561291555 193256980 493470730 425878151 747857925 723383246 809604545 99125180 552536357 340422178 378423928 194351924 985599748 950788292 981898167 31212040 139910939 7753082 631606454 101685852 510244289 215983289 433682680 401457276 581940752 40467206 835230919 388093152 696102972 18018201 938329894 726767917 838985058 539494673 623120246 329367698 876220002 367823751 400964983 145398279 713841199 174822005 616831102 294472075 538285320 330856451 596468293 190261582 460905260 211983714 404549152 277830553 514057112 105584589 507285714 37054159 361146163 354427933 494121541 241591230 337182318 57925603 799546667 723752603 770656298 742608817 946816985 795986553 863599447 803608196 854145455 276614350 989026910 523668930 941954561 539874743 872372746 676424036 753138428 160993150 854409863 226255190 988636050 954434382 980247094 727077146 996929005 427811814 453228506 387533244 462055249 350936962 475590912 473035643 649521777 254658920 578530703 431472737 547043253 59678099 832384869 762997469 811501787 138043909 195848542 28270821 703223945 585202261 974405499 497217496 590401277 67657456 758272613 421576085 446566115 262086355 535887414 477810653 674141665 57073031 356551879 94066034 585200501 484405297 917158326 764146527 969023409 423849860 739665287 602762551 771662067 233525451 416993768 121339276 485586375 411016457 612770530 446204000 814789310 285625179 648511696 624250730 972546867 531303089 860601364 203526359 912708942 280403318 307076851 208862424 761382224 49737210 519027455 305313841 944412134 42962415 797040967 550086292 893744105 243521589 576700651 383454211 394844644 114841849 224991810 117433950 647604340 301982671 833657331 429166143 678010263 449407582 529654800 518425935 717393250 426148011 651698723 357470017 605339418 191822943 471467309 175477217 472143136 346872977 618022136 190671989 652628207 271903436 427991307 161904090 848307326 323692892 627148576 73732037 329803462 179966282 467474920 253132086 659046228 205488591 351870287 72420613 262497336 69393843 243231189 168686204 355490562 30601704 811540157 625044067 670170510 301053794 668634965 49501443 578982091 576612339 993061436 887410682 989207056 739567516 831019622 651307426 749468904 586778280 988741181 498107742 552711067 301454161 838151170 684355087 788102706 172506937 642936090 595231901 610345133 283007100 519451022 15625226 278250654 124011666 828481283 265336815 670629223 593591770 962645456 386490822 424782290 233281168 425126000 50197997 901736643 315491266 328888146 13273932 124640956 16327686 893379414 493839710 998157384 197958277 541521400 120494787 696255131 330023428 598570797 164699884 598974207 440072477 904546445 573169691 989291015 69708192 412108816 271259547 878698017 563886445 882446776 428718875 778344754 605287929 732379209 48926188 340077148 60859913 630274997 522253849 577020366 373721686 927737220 64707946 285621981 7178753 952595311 815434762 985932320 183103791 617408325 565336638 966454003 777029202 907471049 585008671 716056926 418906499 709779177 558469711 927593142 337633935 915975037 619121939 909982979 280353288 819899814 32215213 528686295 289419819 627742199 567904788 987099575 480160754 785120993 554063950 634580317 434157065 678615750 327313496 457482061 129209353 360503132 6152770 858587955 175592201 638825585 391906235 721639084 459386043 942891990 808275841 843149813 100888939 658597617 105163720 768113291 382669273 504466044 89866523 975961686 374997632 594872778 571308868 636019770 53507173 887715021 727702438 893510254 169003174 846119941 793606890 901067246 182546455 878543197 853603358 951005010 880850434 922904412 6438354 258762658 203851360 207505975 154583667 899185048 34347645 53854856 27739075 273401588 136267052 463608187 457322320 892551631 457565787 753530336 361784336 469505544 17266579 586044502 559619672 606446688 178912487 517555392 407881388 511823710 170122102 881817463 691792043 761258414 161991969 325657782 135378114 872190111 19444221 38660941 24031084 449276824 18383427 43132392 8628729 165476536 1631625 140667090 28368587 909344609 698152736 905351468 428234382 903127545 405978356 670490151 660464427 833174461 518414133 845298638 281757122 846028857 650796359 970066048 524955108 758967046 685573072 986131652 614010085 935693583 796216619 938281450 437675887 901607280 46855697 949840616 308627617 531360888 161664676 647467904 277403971 487605832 298449338 344313776 36950584 411725792 209682125 247834847 36837403 600077762 430137659 795827190 92695808 125369870 104200037 507201972 207751278 395568836 366863971 369406933 49147835 670964454 35604720 692541818 506732012 736866752 562530171 608690954 143900108 323010905 87976432 758078817 215712315 720809039 151080088 423503150 221944195 864899183 585725234 893156269 189553486 447447975 179185172 797422651 521554669 796325710 19120948 302901424 152504551 337445314 319296373 854308207 204204315 734849131 243848351 772507696 160592367 711923261 55417833 228591995 58660441 790661680 783102818 909798527 850948759 950953781 499733627 672887914 60935343 954846827 947041853 989719689 370795303 525814114 108872069 122729262 76099336 102540972 86383841 519749630 475262449 757041692 755183256 801901481 347930166 660015124 659433280 703397011 205808057 991775635 254055375 854281938 812757476 885135121 259368333 518208549 37275983 776190317 354919849 587683827 167597116 527614068 523690106 556304589 513272079 840572026 3728349 450443063 139665357 185377109 43685803 637861545 495433923 902717243 264522155 903948013 674213054 693428439 564005001 979410786 449171883 469985739 122980176 927902189 134939464 377428093 88983182 425517473 330848100 949573210 621300510 917185264 395209781 783796212 170337507 427280420 274928551 291496523 29382693 937924574 890048824 936473995 812219037 877002569 835980554 936288476 480391981 798124310 760908187 905665418 774337757 819015500 206848633 997695790 577737659 737001484 34755189 41994852 37508224 646137974 572093601 770809226 766580338 843055995 588397376 751091279 599086295 730551716 274088352 818066441 276147573 277872972 244138719 678574460 578852694 996925929 971142601 991890080 259805926 422546332 357034345 568358774 163701527 928204950 826525072 997038612 523479013 758851489 506701198 998781857 701749153 978202808 412716706 752282953 593644089 954705312 565850125 801303528 97265369 493740664 29208953 889748753 502281981 675521935 470946136 679167154 472133336 576980093 481759693 637658245 213821842 716523502 319623495 569216770 175617122 963958838 287366361 631701357 80401310 299245368 209066518 863627763 301625375 469747840 135396372 587557471 552816766 766399599 734867639 779648274 507736281 584585977 31925291 604042862 378818900 729302410 469870913 622031894 210505645 645494251 181403274 679615401 281559980 545453403 533122065 659300388 143210126 527530322 228672941 795457297 72128732 939311014 818980532 867722531 29953702 915856848 447673103 650513897 197022332 916656672 34444387 427186138 123411110 315995547 113765868 210335607 21324472 996631518 751890509 879043661 377450772 412380429 311526206 980147644 463469911 568673040 75523855 964936961 597991646 745217310 380125472 615833179 612062075 744516122 502632009 609429117 454700413 810249818 605935280 641907938 34506862 575121454 219392035 263100133 95201956 630848566 373936108 744912874 172577835 755334392 526618360 684545809 597398549 783836670 477067167 937999979 906340945 984910726 923253068 936453174 408954854 978439887 203699668 875041116 649030516 780154258 10625147 201758628 187961816 417719597 412321750 671648110 322899247 455995236 171002755 817589129 450870947 926494388 879724367 982766002 314389776 472405552 119732786 285244903 33354140 159748710 29816840 586508915 237120419 797971721 659621774 813977812 634238336 712410004 643984776 788530506 121457671 786134102 616982710 649974700 367844095 769660977 574339076 929332049 438980028 663032312 465442926 514662834 394139385 516541030 28735602 939876219 606499757 857619899 454297938 758548399 730542207 947360585 315222581 321401523 137489411 421628727 317989580 464862383 443775771 954121829 858702726 895117023 326048861 350629230 203496999 347157225 327595929 543943503 157541552 401786885 35664196 707923853 661619368 688958884 292343482 322285740 273392394 897204820 584700276 822645612 270491458 678001303 440440325 876731531 358017723 977250744 122514314 174083779 163034645 920464955 64461144 997009982 214410516 889797022 97460759 296418892 20210537 680466052 464151318 587837593 304299292 598752212 29244798 362362013 39746964 582462984 93621484 402462726 103224018 841304645 396521400 898649378 171778757 431494156 113987384 978430533 235759898 542322679 45712506 292267662 158864572 214898281 71176840 941228762 63609781 121283455 104124987 552396681 197720381 601263312 165698740 405307132 120415025 836852545 699105780 978964477 320704521 653141378 648414269 729535281 201771589 603282925 290424912 795496132 229043603 359195611 299034508 677512653 666199899 677802054 327462879 715273123 647030961 703544022 88416089 912076454 818341754 881704757 636657509 936395540 181760770 941474928 2268577 567377434 7685546 837222717 205643136 621222020 30443870 890557628 259061733 335634145 135328545 316208667 55983363 598272344 472999581 986590380 79797159 842768755 160073422 969597471 449139739 604878194 109280058 993898760 191068974 942700572 593749246 651364477 628790733 805266436 239790594 743643523 429356191 500688761 442436768 687550366 61129003 172332754 147945161 241455089 44023110 322975232 218778443 771441251 130634304 326124470 125388778 523411315 406256923 495694764 375554044 908073970 522047111 796501190 639875082 839302323 532277537 925870216 562949602 659613410 489183601 716355682 106285420 712359393 275112053 516898030 340118990 489978579 255713085 677655739 385421091 568762335 425234535 534604441 139267952 340720196 50477821 102081105 49036949 272948494 135788919 415106755 237557925 660860859 528284459 622832194 596904591 682267194 125795054 298729913 278760739 538406268 148103878 632796006 389269231 653993048 300255328 326319166 318259713 791854387 708079154 789957034 597298868 794524556 426509809 888276783 170221743 798360255 671129090 696969707 553829163 734363545 664810807 750806086 445323731 586445425 331561085 473834091 363091673 552076667 280140100 457863974 387566838 775197222 512787388 898065101 747043738 971105137 398504263 860697217 601077262 939393049 627355826 965262579 777636149 858872130 454781713 727983794 337355779 843703620 375148516 457761145 139516397 516625261 249729372 992449122 208214075 373699925 20089444 453501749 281074024 880960745 272872596 332985944 80079439 232093352 225741898 486023052 95751216 388323728 356605385 906910395 880299221 977887110 414910054 580700335 385961396 821587643 121690675 637977578 8714513 226749168 224367791 920314444 891860690 930946597 517873013 848573765 51115104 99025846 72932422 559851514 81936191 807517969 59432786 294415802 242111540 499188372 475295887 941766373 165669924 725088196 393505305 536591375 176848119 998895387 668835413 817631264 522519318 850983173 156267926 719392544 238253498 443048376 189383619 768216295 330407761 699300191 609918016 629779181 125147415 959369278 698221102 800078685 629589552 736582822 480755764 609130492 188883258 994072531 897700428 933080927 539332564 831578139 788933602 935915028 653693582 944438305 254303478 333142396 14487556 275980444 179035246 964258454 932779330 958028569 702059221 817187589 311480628 503489756 120372315 884903498 417766720 587928084 312531890 953440118 918592703 954647786 930879177 976009652 824668297 898503048 655605319 952473444 249436336 546270067 492665444 523553556 235641397 314685458 78009870 156072182 6075030 918812413 5647312 890864376 301090460 622560809 291386224 646387423 300091463 734868968 345127044 891636309 792652412 884001303 60071882 384445813 357298529 784179677 350414926 998685159 763101513 952485301 789011197 863475114 632521749 855735884 673648036 838905765 795105090 943187886 741285157 760943941 484822098 748196133 331344423 415164006 137165342 556895212 473824682 494920305 239299453 748324638 465772180 549625325 403533004 762760156 386501238 955767892 313783986 724259252 281266104 867106338 739985670 905953349 193004903 832907766 173983848 894221168 645905789 923927156 136677587 172017391 57627327 317594390 144183018 835291214 825516278 886829837 215505062 667736748 305967852 984195067 266218459 380561493 121042886 335137030 114814430 709387636 60868902 173892432 115869448 736219819 513859812 738422245 682270809 808415242 370328059 398152594 121986001 242883689 34621022 806968150 409801803 711686522 75404840 175657889 76389594 789419251 655041744 896658001 865713957 926743307 637505193 814933684 762563122 936869188 415111583 693133260 505761382 941319885 858951746 919544775 831078052 956577714 402052379 735545199 328260476 965927604 158328576 362586851 317952956 605307910 16885616 840686976 607202124 733198375 704251955 736631291 484541785 512018168 69623612 89624270 31111525 481694348 18974697 767467002 102526011 313491186 50946305 638165562 6509289 370510504 163868625 948075304 674164477 782964474 12402046 948356334 433009916 555799473 329686415 363376405 293835104 420663555 319951420 806648459 719381312 918064240 365464051 618035828 606239294 712911943 702108013 948336836 807946209 931268905 75194221 980749479 564233763 971836662 145955607 462557739 266493938 677402946 440115037 804119491 150996483 507726334 105733144 915357746 708167949 744291671 657806551 731055236 145980891 182063365 77038641 851590149 448554217 681892698 250249492 398138350 69822910 550327139 236265437 445537758 421408671 495531516 6656014 740484723 203185682 669516707 150006838 450409479 364662593 563376576 11591887 151027173 4857229 939850220 829162913 908301025 268700108 540228746 445970153 758027374 187566376 600487398 494652009 973825554 307571437 583298175 505306927 763896477 40063303 491842909 129617843 573565556 496295851 921734371 687968113 908957128 647020407 952670853 589072055 923591868 525253270 872534198 840500444 944010463 683110235 788494900 670435482 965658979 99847461 747858125 587313878 588497598 57815784 79490905 52975832 768285022 749386542 931200385 572738350 722312087 638893559 861459513 244297201 271600541 79483260 913116640 430841941 561298557 5832715 892168244 868835890 882482319 616160180 926665305 306358206 963969412 407253095 720154972 443095488 576801461 457240633 913560758 827497134 903174158 105786934 504751962 350587109 807353852 729535731 742181418 653688027 901462221 371946534 458465324 285850076 883933430 672453992 785730893 268832222 695271062 549137917 684373974 436224086 827888377 825968419 874184134 119593560 773163562 174359112 765134394 395980689 624385754 92680713 955162699 303683187 781592881 673795984 797907522 278530660 771978976 297446559 851150836 193727542 517469190 33261481 830077443 560494239 771168545 291580946 325718035 272149524 615061540 52772757 742098200 610539170 643349155 349388868 866458654 333399836 894398744 552442094 641121710 202156894 463896077 283493409 818076365 498799781 832208662 266847159 926297303 895535722 963852857 907522628 968363448 545835706 844948326 760544660 819022046 692203520 887914098 870250736 913622557 399879081 667619691 265597339 931842210 876191781 911872129 31236951 131177883 98333563 660164735 168978964 997592268 586414595 973631906 516796735 854168317 180163869 569134642 532612821 849863631 290196340 673019483 524714476 703739721 20230540 243178680 38015512 507306931 108138023 198057202 18035843 891457506 124640987 283024405 55939786 343363405 20084733 772709570 565717278 830871042 218539922 784431324 352713542 452013674 15364319 718897240 564582917 927830824 224925039 639741356 579812139 832139089 607235574 655035555 407129043 852414960 59891745 387772413 82066530 214581256 111671522 330884903 262301404 509527514 282976624 332268217 110948794 893359637 778547580 973841705 357064697 771846960 629805784 916280643 17747307 24309572 16057715 208737424 114674486 494014999 291143994 610121020 286790859 614884535 105991904 715306183 186790602 820698946 325926927 876296167 539781487 757492361 418895818 420720468 346602403 881204599 293249070 724638554 446269001 954879361 578015057 650717554 231493323 488943021 295057366 797463516 293547179 667768858 422260122 910607236 194436528 948187733 1736094 507932442 484465077 841009076 216766255 608577478 226949247 430551639 4461300 322031047 20478605 824688973 811980797 851942708 255714056 439292302 379146061 804230721 459944156 777289164 154666284 701072610 384856283 460459312 335173720 343463968 242339009 675609229 512926107 924090842 764919910 968418264 292346532 395552762 185063190 994217799 728892406 974911084 165926675 536572552 110801708 881173791 742345875 999176814 737962178 809151369 550391116 703763205 61867107 428218155 388092955 395265422 82690498 930174398 499743366 981135082 512880120 903589209 715280128 761082978 723043139 893825033 45939456 298611546 62239467 465980206 352364147 929803928 712334015 866509153 346999895 868382194 94507749 886409205 791544549 882135283 750342134 995382307 873414740 961921998 560644283 812208418 254183439 536945286 95443443 138945932 96981860 609540075 440389249 864845378 765901935 867873466 664080006 830702274 240953843 960124484 42512989 134840297 66986714 239128322 80891930 184348681 45502053 684735598 514578778 598911569 450258433 744270433 683329342 921961135 823941220 928195454 536317207 864742497 106787780 801956328 412490043 797878309 360532804 494693146 316311684 357439838 227685585 874514051 146690283 987141147 656393938 668264518 149029302 950508475 201660943 269657329 147814689 288511793 58961088 93806479 92396541 466752375 458636950 592371006 511269800 899163268 399287419 570865718 469826063 628500596 114339283 330146526 94405424 290825316 159728551 914190111 386592992 399170869 326364871 735345685 382176817 769809139 647539211 805838704 546018344 576653745 96907137 255081226 210323424 489788871 202638057 553030286 33300508 238998048 229776371 664629875 658068672 808195055 371240315 494812675 125548538 989441067 178523027 269735921 50504638 664347773 287770973 452173569 53610737 489262417 423033027 467482494 117347749 400794401 154307288 935958521 322647404 477681782 184426992 539674189 52379762 415939696 69606462 315342859 2395419 771856000 149039164 711222147 562545087 765099685 524983820 725705378 12903937 31066101 25438244 980829491 339162852 910166131 709678017 958426025 667825801 926295872 92682419 401857636 44428621 855368864 351742220 872580593 716821524 899622586 173558489 579135223 299683711 478891567 473522084 864120575 556386661 874733927 558039330 811719656 37021466 172760118 25890938 729154549 576652604 588892666 22698313 963720029 313299068 642798581 298934043 479295582 362918705 646036066 30464842 312500909 218388041 703469161 648566890 833629329 197101426 375516814 66560571 739710590 51780415 884524122 42979354 828200862 538418248 988537361 759039105 974708644 493370293 503473508 356239523 817016614 770212110 818016247 63973644 250107342 1341053 634478156 1549293 270654610 153809113 455014169 205693546 538718314 321418895 853377977 195816557 288927693 82510362 294218285 171332125 480848769 91109469 119319174 54845973 795438513 734232015 793543693 256728438 714730363 462878067 929599966 317766478 548249241 413056442 664900668 269827789 749061326 568030775 759652784 684939289 728484103 285323118 327602353 170870097 724421988 370507371 397961052 76573528 170714775 116152586 354766526 255211271 461698762 40933805 845824207 196796230 761208854 485391636 745056175 504649488 849458023 565847762 732192031 247651328 308675292 21216034 908116278 435892185 663607534 558580391 809261191 667822907 919124233 691900361 957650649 864920452 945571708 266433436 417750982 153805033 687772183 500343121 736183492 325755500 592745281 590516121 678210241 578396031 752065402 751321938 793475237 487052763 919982018 77513561 472203964 238223944 813700308 343356697 375101750 108914729 176741240 1810245 176700504 46021878 308968119 303470281 690712719 512579817 748474199 76186059 907153893 370496130 729777902 335729861 977691640 598648054 769112124 657492069 944256333 932414384 953775596 783196158 858640541 290488816 797234990 74094562 324833336 10519440 300820988 31670948 601771737 285743735 660363295 132777327 300310304 208846398 407742626 338133249 404299251 255663881 574633204 572789177 683605541 362876700 929313464 732306501 825993075 536644732 700091853 163388202 509704531 305379851 611014769 68537122 999767474 490204228 796224978 677864636 822328211 356217994 792001370 537552956 692813637 24277988 391442859 282977672 305609259 144284454 246982082 56580023 756697974 611662161 805923624 131155862 816685475 416694660 708181770 590595403 912881321 64427213 463452929 433910904 721907659 608231112 728735893 726248347 810313275 234838168 838399769 120399792 946046595 451154464 843718717 635345260 910895564 274012522 512700916 237571291 556347697 53296750 941482927 518174809 676284934 354610157 856646523 179360232 361791822 30273332 340507521 262108119 835950650 25268247 888096168 316330988 598416931 546039078 696985338 37517823 127024224 48163476 608857257 564101855 656261531 450992122 735111156 309256823 901413755 239165738 300608494 252260319 320038572 196742629 414681075 230713812 715221105 208097323 774890014 324399696 721987172 704191724 835917889 461605845 741772485 556247151 727832101 201235059 876529902 21601056 260961159 125289034 949749707 29904610 139962266 105478848 250663794 165259448 225808519 29952575 377622381 19871456 640852134 525838682 732771987 477786625 920647426 354015677 792007902 450774287 582829429 548336684 754785197 486242507 713903921 159168801 236762373 62707040 376458631 5433224 471382662 409471726 770210385 397310197 973428617 903126674 979533152 301962472 370850645 241309865 432929781 75488482 760696566 232783397 292354912 41770774 528363978 295452677 579571642 151432694 398834494 248884360 547026563 248413291 991267062 428243362 470819968 117361983 378132349 299743992 785716387 331108285 812737378 299422825 690124766 88806151 431545182 193317242 955051086 71451844 799268624 265593900 621751313 381826224 913731331 875798486 963210431 723019926 757357118 529873734 853867247 800984132 915876026 915131055 947668559 826241578 950321276 324342014 753207417 313318511 908290385 248938879 946769219 314689932 538726887 160330551 792726181 479082139 912738486 141296570 343281500 183192531 761104975 334163471 866956102 655950413 899444018 294070619 875641344 127675382 144939698 133102281 700639503 364286357 510398757 390485938 792352222 153518089 339025897 139095057 739715446 604972205 992439025 190724399 623130888 1101413 263754189 78994894 362467481 217461042 648002938 402325573 850223970 287947954 974262834 260026318 528737648 16581491 958427317 702859322 903320089 89776219 689009862 680902901 930369601 2335725 595657018 549163865 616569528 533159933 870669532 61315892 767130051 545709173 642440965 355213074 391977776 225658760 814678223 8416698 429867974 65451242 408629736 38777843 158929817 98921977 432375824 422728319 691840202 668792322 820208280 399987833 435133678 406975526 540437919 267241528 800796241 166078954 963901567 325112226 331335246 60999056 500314982 485024843 710964386 11778019 465867834 448771169 974394600 416822436 967652818 691043065 923248675 760897374 966377347 99833902 931204322 660503010 758511351 692281404 816500335 272143502 546198940 442903352 448996473 132820980 371043349 309549977 745704814 10673148 500582880 47207494 674211304 408875473 584494721 101156891 879341227 784840025 970544140 296238412 801774834 9096434 347607998 34408566 832896604 435495284 453490792 274900567 912584221 582289851 717141842 706811011 870199714 774251052 774633408 354372812 474891424 388204642 744518284 498817511 967039401 861229750 942320389 618168612 831831043 397182545 828724728 209515099 567166385 143557418 652156176 630311026 873623989 836147186 910157632 161602812 628621809 31499360 605049950 314819240 389016753 115025204 204502448 179686355 768900587 177342186 627550491 569403231 822736084 659449288 805646244 553132078 795657736 169554292 768013525 463534273 801601262 584253910 998980238 616805418 889111761 222333745 274597886 199394726 551445905 286238643 382908594 106492094 610273464 460019768 548562735 498267333 502586933 106070616 735461929 335811301 778055536 45102060 321392197 183924923 914074398 684142025 926322864 126413011 845621085 57956793 265852633 83687918 288444249 90699263 471921708 152038936 236802445 62695860 714366795 596528881 820640331 425817483 480405097 287470371 612219419 241174827 289060911 90939187 656427434 602911017 993429155 675067420 993452316 513511134 960109092 369709085 584491076 313226108 774643376 416535861 710085104 409956895 865440224 235330330 687324366 119898421 803219403 746228642 898936166 203109553 431260475 326824271 342582918 302251378 591085616 1320083 756931247 289094734 927286451 392229756 664333211 423670569 587525469 583992275 983141858 857630682 978854508 754972901 789770323 150350818 816489596 324610294 528214053 55360616 649135166 677708 50214134 40745440 698315524 84021983 652932310 557954925 948518191 370269876 766002404 703699482 752209218 507886438 811771138 278580679 561633060 533131106 804302847 476698714 911703628 828831604 834331946 797971073 928630760 528099836 875524677 22258718 975783512 407205283 966449393 338103231 504876886 350232470 681228006 607416129 921672265 32055756 665804914 280648139 863951091 791199435 898832195 17521320 244332167 49653276 239449836 181027549 711530252 334010132 806821949 18515740 867390946 724561611 962061589 836232605 955906737 197689802 853699311 491170606 710578731 612447083 805155336 465417281 808522853 445929271 931191345 201481429 983679207 881575311 940333923 927779918 968628380 961922940 970497748 839104750 959090757 228515291 540857571 54480645 244038492 27086743 512137867 292692048 885640509 865360157 923780198 308907249 714589906 459246889 524773403 476449317 803203683 123725926 623858164 202288429 664941341 591757216 649730687 594171523 680300944 4546071 271352169 99353240 640384368 387429888 850591151 283761580 528701413 525331846 899980449 794124858 837831702 721747686 857563482 244923018 689658277 273229771 567351927 180144748 999916342 919408057 937510445 842354478 937931603 603597523 889453400 743525436 932649463 92797857 383086517 190752918 194174221 61610439 879283486 319299733 908634079 243720106 760055809 758018122 922696852 876086963 953459041 716164221 790238753 174757721 266159149 191101388 341253578 171354798 630826702 350345922 869327614 693454377 892047607 667905705 726923653 176476294 934828364 887672593 925954512 850765397 883759561 551567720 737664698 480696798 677044069 6709277 463398882 85100352 156391128 117018192 827161429 674253038 904166517 486588338 950463921 825974607 970549100 596595590 779859232 586325111 948105119 490082648 643648211 170923586 310968136 54575088 147556889 113105529 766265364 376755829 924472272 184230232 726362863 156786695 938503412 420794928 976689778 532006504 821444605 751354269 869734846 163994492 947152565 482562096 554060527 467219941 673389872 302381588 509577897 247457316 423270913 12191745 27782080 7294867 235455708 18725712 462031120 408023030 876812966 5831474 595620035 77751963 434645853 168214926 780366832 449236205 543963253 85402022 707501876 275686713 984136482 901593120 910362993 159945951 947567100 530406250 578871636 463748735 901352852 501940460 842552486 332354747 844730461 647773316 677983074 224501664 633820951 355312005 733323013 529965509 781790240 527257886 572060164 307468519 332009355 318778182 371607937 115657421 502619045 185283864 375066836 180768268 892411824 400889662 528295249 132772939 480672894 242649897 756125307 291219266 463829183 203299944 582762706 43633133 549843609 525233590 591078359 491753885 548937732 212685987 937074606 569263771 649076240 77073687 661171058 179828720 772427877 705429221 750727817 540599277 976361432 160330095 284925824 204926532 570250042 296714277 671739359 585401665 988036658 664787667 730936175 292138374 820134088 282450966 480909071 151005186 378782853 97074516 491826488 457491783 740375429 605385352 719450421 108054992 806515648 131678075 756554190 535342597 962810196 936796105 992512491 208151253 870443761 129791219 397445295 64240824 819013663 422454816 989708706 957692440 984304485 412421857 666653469 542658397 991988666 176659681 611653671 4795480 943089543 112958152 335036153 24116668 932105019 425596273 883782484 67012903 313356630 172604011 420506521 297947442 938266733 45031622 608273754 434601971 584970576 277286510 426263877 362081515 802693375 19257665 769033559 22722784 706329451 625777203 792824162 744794825 828117783 728580943 851635346 298337472 492485728 412548195 452135064 315552848 463445385 153966825 551100649 242158163 773325996 635724655 999352412 339708463 983685561 469896601 750150831 485137001 782409942 315674237 994403988 457223009 549067804 413870688 929638815 7470694 837183597 104308115 339584452 263439129 493858994 415226736 780150829 256230556 475146787 252559438 604826277 81731204 826596382 499822170 873991124 841621926 992472551 104404916 819673590 150168456 746338886 597720251 921745779 688285630 694009493 489053966 582723193 20588262 514889439 366020999 560178199 59089447 999381218 957995313 997919893 200084704 686999491 238947535 651889939 334330968 677364913 423479139 942914866 548416573 566053128 47685421 428135007 403365416 437997839 278537106 799930229 395197853 623692713 262717259 786066402 17242596 156916771 114139562 412134824 29003814 178079293 67965013 250555561 124424565 854083751 654405182 870785113 477266441 765748096 464304374 664035233 275907959 318303833 49823206 177556505 68293400 533520184 370492623 795244738 760623086 779088213 621761627 824072939 610107526 974179079 596777755 868897844 766860247 923101328 803698976 869567847 485596173 926660440 614787224 773598319 740950740 892298645 483952995 749329475 568417351 647350907 633442330 848608294 464594448 636291742 78799592 442832763 80849384 978552669 123105206 883000665 788320084 833967524 152814770 928992052 226084038 542028624 394245324 585026039 425598175 879291142 332888700 814071604 61918764 634375562 255539681 401801183 133155590 612563233 443012204 777364718 328422583 544684143 286135374 745574382 224004611 272161750 104128019 180803273 162717842 514648470 175449805 537321801 18318241 515833775 358781091 784374188 739772471 806149167 611045689 654816394 517191906 676481201 394959140 705119811 691840474 708676387 106846364 617597795 363746829 408168380 10839400 476933804 438532010 490314281 118663210 796073672 302930952 990345819 255032420 970583656 588957169 901789867 129891242 389048557 223235905 912413054 630353937 770891104 332371673 982786585 687296679 799567382 356768420 517462325 189965548 993157339 4965899 199287253 99247161 341694009 284982463 299010253 219928813 835499217 278635326 680470599 585019327 641431472 169618605 922786524 1271239 349862664 256451650 631006768 294345185 773397824 509257600 529780738 503550415 778907715 190605024 684952226 57304674 861547933 163618772 923881881 136861995 211631689 167091721 556015953 148242443 715014083 593895672 889501803 797112268 980588208 762707078 985263615 242705391 899943039 225484799 465396331 191621411 540350551 463070161 668806473 321561114 866490422 286547212 990237346 949511861 955671802 638595753 740405684 45501806 641811423 508109424 556564421 299922137 599562877 474455374 643565107 114037009 993971708 954838429 981571041 87235648 803972558 462125884 914853320 498737246 605008610 343027560 636100297 8097184 544970102 206613679 555645275 534041261 640900298 317680417 436281439 110526604 121778445 117316445 124038618 7551591 867533602 394664330 877557290 71845598 132408821 90191198 777832428 45963099 128914548 31539428 645177814 207517745 811487583 45801368 295708725 261850078 446864984 331627755 553461903 253418248 653402841 305151362 769655545 436554032 638262410 529453608 657393393 521013456 573911706 146137133 395935668 214185130 871714542 86114065 654745266 107689547 270527409 47163251 570494036 413830071 622543368 528643267 951163443 921554448 971571873 583730322 626697990 241998406 630684601 112190472 296919107 263603640 626081514 316564974 804130645 60611450 368509184 351760209 962979474 448270270 763915587 57491030 804560442 712802370 790593296 485373640 512035160 491442268 756771302 247933839 418450869 193104126 308281376 69522404 714260759 632857159 905023845 190786220 750886349 639168314 993580234 566397442 941170775 297963414 788721733 676830095 774044128 617207665 914119692 234677779 502280327 112389009 254001701 82301362 238391611 205849955 766970577 47357877 81267971 19808820 743419787 50324891 912410831 544844873 726744411 653154946 736962118 622572512 704869730 333540318 420061174 162259132 193009633 126003678 420838267 44012440 939587845 62254871 837820478 54177972 614363823 289330767 526881796 518937369 684528269 139028301 744334202 148832759 669251292 17085867 531118796 328077692 581246697 307445640 540120473 349928875 369482936 28238870 166019094 118905112 818608464 297577705 593419830 270641289 537954288 52878095 862262687 15850278 396368206 338657071 445112800 143184407 349399174 294141953 602194277 528523290 821936194 180351439 237663284 97824363 624255214 530500690 590334964 154140513 506102772 172642334 688389300 108355467 360106145 252338033 410930476 4051520 334624583 55103066 100048575 8638157 249224392 197576647 425970953 354430371 444798892 57342529 930778311 515128975 824902815 535733969 580543595 561088743 765393539 128858192 643825083 350836586 359685579 275084915 663012162 294556466 580087816 528732648 755786413 662432293 760672977 285788641 956035776 328619741 844950921 675201834 796226239 87888177 719629010 136366690 200824014 174447737 797500763 339215184 674632009 136416022 388858456 202458774 830594096 11153960 546615021 444646823 684835109 379443193 550890281 169534069 984592736 463155075 977865298 784338253 852501271 827342470 843632988 159556136 410492289 370375577 837437085 326427782 663310204 13619526 263102851 245434834 340523723 3980142 96633229 70439072 522102599 427986710 494355969 11591123 928570957 206260741 656235225 469496213 555004942 232552775 554655343 529647800 744872172 376448257 559290121 225468757 700694773 496897793 514752468 371675233 547639301 156598974 399834853 338878704 814589177 319078738 944745645 593604417 869759655 693798756 977548420 258229549 803304866 508514453 715025053 66317116 934085953 317329169 847644213 682142757 925136393 515492116 701215770 158799796 783936056 229303471 922854576 565451404 889863990 221892377 374543009 213755674 696217259 55497597 310325249 144051973 161926997 155026358 710777548 202751427 972852441 193802949 456558557 408652747 624616264 622311682 749837974 4059638 146667685 113728188 749175662 443962541 885139148 838457057 845746242 292435224 343860525 252165903 287857225 148106237 564509292 159946310 721762255 460071568 506335556 28783642 122353456 43860616 327054265 284164366 632607415 411707894 917684847 9155250 181062135 114001380 552268209 402938503 726304351 395205786 815238136 691103875 751101606 166611794 685995523 206980322 563415375 139000535 223289601 206573057 976131781 234459026 784217644 208789112 222578347 68800653 273048249 129232200 661384791 249896452 376337270 209940127 481163090 457024396 515200455 439553426 514426335 164931475 849326691 793008052 845503451 770962697 818070976 39197376 848302999 108639495 700557687 247307302 541287730 262610833 698608451 98773161 775952828 502062711 555376259 457294218 837348350 679802187 809019882 563022009 603492079 167959020 300013311 95983114 176108318 105580063 544786834 11089983 701749812 316608765 714329904 531199059 699259183 514134655 577698805 490297205 737367570 378106165 861353727 506447997 702567307 616361792 978286485 141887170 159855088 40808583 878027278 560359305 795697528 76780183 120948775 23730233 513260368 12100175 867941743 337159414 717381599 116923834 458821392 299107985 927204102 381264344 945528421 636151960 721413662 201384556 853077050 270948509 627897077 476045755 805916468 767908570 775293570 448288194 773292089 422449094 810766571 573003356 790515876 161282101 632319129 365736982 981830100 308749233 639619379 314398533 657326603 193306161 461765537 185422442 820454684 222844458 938958069 444610894 657816977 309491205 987423168 514758395 812479570 353311374 455049424 205346401 327600904 127421355 282910978 216737300 287247551 39433917 645544962 247007755 482839941 398175400 687469327 509190081 811890624 265602009 491959672 254322954 961443632 268084638 816521474 533204732 689352136 353470975 493473237 434537154 978343616 139063229 616969267 178879711 957166312 487239590 998483317 425189907 690245471 364878000 755284646 326969614 855736258 779031939 908234173 352142219 983127812 461345733 935382717 859778258 929636506 46725137 887441579 185315866 567614236 256046922 536273072 277849396 930720843 404574099 605733001 572864327 890233643 58336457 277607567 18878013 581783409 306664008 413402685 380654959 420643447 362365997 946788328 483036805 875714435 803504897 991975794 285518737 372769123 42983661 342151867 45038334 848189540 318557387 852958481 428651179 913518886 733357339 901371447 421518049 876445213 507309113 565824326 47255634 794320934 500868135 501710961 64715047 876528864 374768230 990944107 704795924 859331559 502888946 744474801 135684004 693846366 440156871 844026386 615257713 994423141 929537851 932760452 188702761 743008146 631293900 841240095 496538304 697280236 167439543 275062795 231142102 687751807 140635744 498924421 154784306 766354803 123380825 689849919 105843760 733665488 268580265 390883311 62210552 560610705 445785694 890069545 545173603 952054988 56890888 801083278 708778169 729868865 448657512 987746342 861160720 974592008 493629040 661000144 439437956 709767060 261437063 984408993 637352102 907858451 452798172 790385785 607518847 961856193 678884091 895706829 346852159 981155828 28741416 554657685 161158795 447966414 323495013 752205494 397826141 703594146 418823309 772607653 167867332 742888393 700405319 788934856 494308514 511796146 501671318 591824047 346251271 771675737 240089278 347004420 119628346 269485638 223872813 958250444 451153037 631956100 281139476 698462721 512356178 588462501 246946816 728941872 215983434 881718074 3589782 823508290 416164949 434120990 199266334 684681057 474676379 894962077 681874850 839916761 436222564 807509679 66474021 212914488 160719078 349828175 335443155 897980867 357536273 544741009 319399498 324819300 7211082 992905097 645875527 996789871 398059380 452120783 202129806 360081555 184242237 408229929 156886953 168957406 49629907 546505465 280895290 819248017 438386023 790590922 531059593 748977415 357136790 588370378 69128118 269160953 132606819 363666480 187181959 906231252 407570353 725253669 121612859 242284273 41688984 420445963 314154275 485361552 106027827 615583455 490392247 730635819 96517518 940407583 118644439 221805117 130639271 784276132 461063597 984953411 711787756 855651685 313240514 723484173 383718429 858970017 388903040 638816447 261327287 338638273 328533180 976672684 921634450 956366013 625204357 948165507 626880875 931179410 405749600 610379634 146384598 258455109 217201378 827325974 420394548 466849065 213152334 755370251 127090770 397489116 5057562 841937559 470508859 813569627 744247058 747326841 139654496 730187642 592048673 680571760 300157850 502817679 50653598 151157625 132023755 765706683 217315536 822175224 195320035 461657569 79663341 876056314 416648977 886208778 312783062 803359259 717601273 887578223 695391103 849907533 110845881 758796408 405926812 539627380 105409770 858686855 762454737 847645828 632029115 667363553 305191343 445617795 137582099 998903744 744587366 995893316 132062510 718781157 664676996 675923151 495390775 798839181 216538523 576143370 380468802 592654326 552925250 622373723 341984527 614286344 54942825 782087504 715731715 797695833 642888429 950093226 43584669 413492781 52001221 720625359 496216308 537866554 182522961 347537264 17011136 734367789 26635192 448170784 342814458 779515609 171430042 814115797 22736945 918258003 675843901 708796191 41893268 661103798 527141542 620576514 422569467 945219024 401879481 956381044 164387246 265951895 185900798 388662032 87100549 420616968 88616477 538256460 131007008 758820903 291100497 736238309 280280738 289461708 244685900 665569468 126753190 296298075 288446030 568939262 269914914 649512280 105300775 885809134 39878886 357000574 15600899 615078272 40279495 924968050 321117391 910272877 906614182 945269317 212385414 858376992 622744938 859210167 629465002 802899638 725203754 773215783 329325018 557779069 472727554 852793632 315040655 725698173 680480700 776753230 65810748 649885584 149197637 676211666 649074666 818486388 266938518 752509770 479493435 659881652 416205784 576225923 356504930 422177410 13830282 461033218 416786840 460340784 356017641 735332984 252278990 387999737 241367887 592588408 62784700 990288663 335773438 693857747 483214312 610617047 147995541 632506369 225586831 336176121 146216291 154407178 94948677 444137669 110365668 692269239 157283421 317861846 264228587 543956630 436076806 686965779 661942478 699700760 664803289 988667333 131388044 329713731 299549347 813083313 217963292 945755353 326425586 635794767 79135313 976162290 653989460 752533125 206747633 612949187 584360623 864130622 787623043 822789823 103767674 105483905 102651876 452516032 199937120 223089421 37438570 180817343 68545326 531067744 194139915 247062665 200050909 208044117 13779632 428472993 352303249 939364292 895842585 941374470 243561115 522558418 336717049 962167889 722957291 937891550 695799157 897801865 370285692 924598065 740111505 830104586 110698690 565343255 333047973 445968080 375760539 611066935 233547468 297943714 40864851 702640250 173734896 582230268 266217157 965556932 402207752 912211796 479793903 749017046 141903521 937100203 242132723 814118161 109023967 216214961 154983326 562541458 449893608 814783934 5863995 569375627 135156456 171489997 127004465 222893437 43460535 846307306 404546110 622355454 612548975 800118770 720519465 982858760 52348747 977443073 618107358 965990681 363103365 654032618 260792401 302876810 104520940 614300246 41979875 974676101 425954783 582173049 33720639 442816390 333442004 697452342 481111778 964696486 214588303 867345420 748895175 967231495 268241179 958022699 91638270 886581886 557960953 805797370 96538591 550753557 376226463 576713404 367395232 578121927 299648500 964103133 817940038 945350333 242257550 582157405 94606921 401967711 92324001 624804452 8985982 936366025 451099384 760939492 665411814 961893319 430047228 481303170 169509507 298267160 3304018 791888744 571419425 823942427 745390285 780159597 722857665 946161466 490257672 718814354 669580670 954243022 85544565 335327153 129123389 723861546 383270278 789631734 177204758 655078600 36868622 769401885 43339360 628233833 368570839 563260647 314240980 786914016 74011162 259876288 135495278 991929638 396179346 571901909 388004658 756615902 353433671 377719134 42109211 502849016 454139485 493381734 430133801 827227531 615927376 962707725 564143002 864545205 601998571 821470804 102960921 440305933 275406659 389509742 257707929 810328966 94621506 712785249 319470297 653467909 374212953 703291847 98706213 436268631 142675034 372156885 274563575 947498570 790056407 931222716 762427676 887457206 806969701 840145624 71522205 306931925 267649369 732538789 493279769 748999227 480310891 803665231 550897749 721641364 412768950 909581773 277541419 906220033 760451441 946681816 720710319 768547767 245506151 964946521 878541000 892426225 811267002 948022789 942664629 968659890 431824189 869915292 220870311 595171529 226763279 808430593 610174453 675058857 33030070 441859614 266491416 303971152 249671200 962148214 651855869 656769808 113022776 491651359 430852419 963177594 126404363 664788882 88556198 304196231 49758426 71262308 252293 812886533 49712639 721204008 315603430 911543852 805037536 926826447 505298600 741043574 211324734 455410890 84448674 675377913 130785037 383909592 1526435 860552918 560194662 779584259 619091551 713075350 669327273 913843739 229508768 928802145 783875854 838674263 191216139 468800189 410948964 507219105 323401828 613387110 323718060 891649542 497842465 643666961 248614509 804029368 298699527 548548087 201141239 734177294 344546816 868116662 682234155 933012817 188349603 914968332 88767192 708806514 176210773 199629102 29006262 122581167 113894893 473910656 56867700 426644063 371510936 783253699 485414447 851163267 12882498 381988016 149007930 713876935 88939473 194566009 131818716 608916406 394917813 463995013 384896167 925497134 543167713 675776275 62227866 763991487 727351196 863223217 601943182 806187417 214833893 699957682 389674506 644816623 343439068 409504613 14727677 914323139 758621642 828459995 32065761 829359283 568054677 985933531 640451100 956030415 852956385 991695526 126796459 592312064 531868400 632220469 304473520 573338974 555853604 952043025 579736010 596998091 483788597 891506673 437028968 758552803 140915862 306052886 76451638 450239955 344151196 577955984 115365287 346705024 89595551 968185743 387703835 711897557 460114779 829620170 125609325 350690838 307499597 452610781 73855440 766172944 284795233 828569951 546992436 825203633 386737732 988217700 384150953 693682829 364141625 951900485 482228145 829224059 165580742 768422096 622951926 667674127 260155139 604712793 344297031 820856297 142129314 645566492 110893219 837792133 258676945 513763633 107409723 986426433 253883340 330010087 293953812 449981142 116944442 858986806 34680829 814940937 37450386 744216195 447519005 870228921 434227686 849525673 646365869 938851086 123976125 856956598 411928051 803537601 282965036 927799776 265201270 439901593 80077379 245663761 169891183 236986699 146101878 916835512 106127048 298142492 228314160 897416250 700965350 837082903 46181419 831583164 303372548 361705586 77091601 297203294 109333487 838086546 479558222 583752418 563040762 731382007 623956006 978606173 106020112 727735307 121572287 442285809 439510614 748517784 58050964 195855587 14741759 119601916 20206886 287907542 117239677 827141338 143243844 290574177 234589857 872325082 663732355 881748073 795274431 990157732 26206606 901503547 871369509 967091837 670889823 858086994 472546314 739641207 531717245 993464061 319450627 351903249 166821761 912020082 783858540 898147524 307368929 951258836 105709789 528850024 439254744 923453724 268473754 272814886 251404785 944624902 844478969 955697295 552216255 979386092 834587202 846847532 520238952 679658454 186629257 640071237 623713676 967690817 500159188 882395082 78583898 163661636 935747 998172568 500201528 748081890 136109620 877396771 840057175 925339294 299162589 814799882 640884537 864382771 684955019 764097378 467390811 837640793 421767102 835032044 578444827 619053537 5136338 29176989 5797457 632246007 630220988 839519243 281369567 718391957 511368747 639607717 283590895 900379523 852438792 985284980 556393793 653431996 32212348 584104828 572193275 880208266 216457821 755195368 148570794 185281423 89639630 296152702 65541488 774297763 102761300 397974048 288023073 896693110 689612943 949444697 215748602 701254351 469542870 849851581 382294899 765235097 444354737 731844457 61457496 403757599 183194016 301932429 68230478 911623014 1562602 363908401 233925298 715730971 631239503 834951732 448162824 600998557 260065139 813991559 704038950 956458769 160357247 300961076 162529660 512594699 360975141 972880966 200860031 313365187 225908202 465442729 49503624 171361064 19756655 31656822 29782903 248984312 226674379 816268199 749773220 844315894 774889228 795543463 582739369 872494394 633372499 702660990 597577406 784980295 726844096 938230312 233476780 586624563 243835949 917700696 521732748 877003785 642908304 832974809 455890475 735959459 674979967 842325150 18592624 50574411 31201613 58317043 29279885 698423801 493405535 608706353 288194330 301771647 285988161 769417482 507522652 548901551 204135673 478790457 151740336 255440130 133759082 591457883 336717674 972480398 500003706 919596040 625182315 704034864 64557200 775313957 73277950 86980560 36933482 709199714 357237940 643878299 55830532 573841286 389640106 520627039 383470661 385121656 47254700 669324887 639222668 670466143 354736927 776705284 143934128 469162497 61589255 910669550 297995573 378976732 168781296 341179338 33918962 420338562 248825140 990935995 56961316 960219579 605767428 832660153 105205604 298385239 61456188 794075678 471851939 623510395 258986375 346340473 92055528 739625295 534176927 682313954 562780780 590684169 325951704 422895896 289492570 922184865 121498076 125064241 110254580 191025674 42731763 146905796 76054911 815508609 588325382 703156707 179122965 489060931 27217206 345633535 220217866 770706459 548090806 987606245 140493258 251161237 173984274 478724363 83684891 201236088 94681102 441118520 427479030 752765188 299930071 670237769 330041941 780150214 775524064 918944446 898456415 990259742 577905287 584125243 551059541 600316243 55859295 98197613 20664872 774542793 458436146 822068129 391053481 640226528 598710809 774960170 263380611 474555632 23893411 568466494 382999286 792403140 664510575 698354801 164164723 831162918 112907698 888758959 85296728 158364336 99793739 967822881 498697385 894426149 863431665 916578473 471555082 641611309 450414924 637867484 384249104 820017152 674998028 862417021 622363157 775251477 197656563 768851857 661449292 874963325 8442243 465165929 266453829 313322942 267380878 688412026 16870698 661719221 382453842 912346994 588067738 905823278 121756514 631599779 44695055 245478421 169365171 652343163 289182841 463155494 328418560 350541358 27809543 776511187 525430481 828071069 756968890 895150348 871427042 921214307 643488504 679246446 69598982 681365201 598147915 877167683 586534655 668952945 383541496 754382310 476760722 515946190 9673667 471266513 127757540 555630271 357257007 505703323 262146093 971654598 86964880 537880140 476700234 926105159 760661262 850086594 569885431 706471171 594894117 946753967 502238921 543967871 120703694 949307867 938931212 944657599 27682610 302095381 125203273 160335878 138975146 151041395 62790744 937173044 785737459 902129001 859402625 866574894 667168896 774122707 430809676 925046655 497392599 887007786 881917695 985692092 746813095 897028862 479342169 770840991 367884416 846569681 358836 399744582 44584078 953225005 436137520 977438032 552640715 747629316 542643942 791047837 129837041 614912595 507544305 931481395 586389085 644174260 317761715 620393640 571101692 809175042 154137732 934101465 577002123 817336971 273533508 875247246 662383438 745108673 296926622 348511362 144565769 448177290 264294439 817992113 380955928 849689399 683400813 934063259 412530168 924355107 152234962 352020187 259837334 712421109 468916836 475952215 74495673 503426535 381280805 446303366 73051244 130698327 109216136 372762235 221633560 700627859 686781734 869138046 866385647 949933762 768424154 852146761 297895328 962851367 939051116 986867938 457039524 880676138 275623461 717869629 169434608 178048963 120881320 829892234 339385431 843446756 576157037 726110134 11214899 881753339 658985643 825976333 344638282 508232534 132517441 142800127 14983861 801254188 471160582 694891350 127489372 673168745 217865421 979343803 885021775 920414804 622753251 896992785 175561731 878712382 192159547 886172806 86953919 505900943 188195067 428529172 193347499 438405671 430718013 692901571 454242110 896526735 690442073 945633219 175287813 254096008 69136177 489280166 152103172 796113051 361287154 652791514 632820962 919794271 380571881 442919585 151882771 230384564 48051521 594559961 190922193 301712707 22937120 453621412 424959226 864007586 426826543 805086919 577402148 890947257 856181256 861287583 774742269 971044799 405275809 522017183 476920647 720239252 8360799 716369789 709114362 744801131 650879137 821587371 357008657 919458241 808778333 934045072 494903182 595597462 109113332 515759725 170658025 397174896 101119971 717089152 402222065 497292755 343894715 409397558 333579012 602071960 107433154 454123668 133274377 599997060 364816157 369082119 356302967 737708143 12186179 857912417 175561607 545137398 372842003 696993564 569600199 935883939 95514580 972942067 110274316 400477273 2226358 731826641 385342152 739468366 636135978 652036192 10767045 279017490 82931936 450384824 38639371 525965842 238922084 461744514 49126219 833392603 312403563 546771088 428417542 505991150 409780279 754132179 240636725 881249143 732373408 977927517 824058360 996076329 405464295 968917297 501300964 724257248 286537491 550001194 476237669 520820410 391280438 669610484 73224859 422313680 205217292 396713492 298576063 923255229 421742864 905117423 781738022 947437630 386646406 974602326 42664132 236597027 141116140 258403537 196414983 647508401 17763762 892623574 281035585 961677758 518281418 997434198 841582751 858211208 711238420 928239290 445920782 879136120 542624549 728409495 231192481 490774656 270384448 688851047 574348268 719905992 1595571 757142782 120220147 552742190 421889259 654919724 41668400 464603231 201334848 366730611 230886784 933748583 584332211 691541082 283783495 957517445 517775003 961192595 163705526 308016046 106342229 734982945 682411066 900065071 83712363 808200305 783890774 802931889 501142675 994949241 571403916 799452176 774200793 827143494 645007482 964794843 899255717 934527921 755897934 940414527 399479104 963238438 921928778 942933323 591598287 928495315 827403963 982802143 424459288 532867704 168832542 478503857 380302013 823611153 404909303 752209336 620388766 953141177 481507938 962057112 458311490 914209574 533175780 674588407 242758009 598113101 309725068 855767607 256231194 320075349 28511152 343436668 92513450 887441187 817231072 870978821 189042942 881791314 143460794 365452193 213463926 773055498 198772467 272964533 133004215 754802646 588441955 821927577 821410318 822121237 700937790 805656329 362857972 400335046 363865428 956753453 900836681 929634065 286399077 321795339 250660819 557981795 520603218 899560213 888678096 944170617 301708334 566306267 374371425 469782732 34953096 376140955 334424208 627277058 285031305 661770299 338564130 666221604 439350085 509662932 155034105 355986945 139991577 756399057 180551099 613896360 329414133 707711496 573400804 845933808 517188739 578946215 3002407 375458921 112493472 886848146 611570323 946784727 503414396 852234922 18458808 65539527 19424446 475324132 136435207 895895457 442375591 964307096 141539287 366008228 61547214 871315932 359561928 917008038 185393624 879047599 618549538 635009574 387287031 588582876 73758945 667217619 375057305 807933278 209126828 875840097 817991909 964720062 795272696 938426999 322156597 573061964 517885143 523351221 418152892 969377024 330537132 595022785 304288059 878221811 199525969 831927270 382191994 770926702 343881358 486397991 262412295 397699541 325867552 732230678 582122210 919463396 762584635 956063418 533876979 881564261 272701498 596843796 152152769 227308009 35616194 385097795 365982849 427614259 264703925 480734210 325238856 558551887 371080115 576895229 37186809 261111392 122981635 176358068 16069075 631557161 176825757 986772359 401499555 618421421 463517211 991220399 778068510 843536081 206226759 594160842 32868337 874381667 141110655 882577745 142994183 704166485 142564594 498531362 159044648 947669688 81943373 291042606 222327822 571399461 537771266 948930812 530188925 861240648 142404724 250968756 229436094 941635559 467083432 473701515 158080196 556901149 473992236 772943584 636149792 935150752 906444572 948085304 577294124 912851641 682293131 695938444 646578664 848174488 510856346 996134359 232403977 686091648 612249027 753415570 536599956 801691396 801279839 988719128 786604227 964629983 164549692 888369488 716831096 960787444 783209935 863591718 296010667 905141096 344324741 884048660 572788522 889511324 249442851 642893857 122405528 867601597 710046649 727843833 572637381 705362135 453651734 975608201 972201379 972826175 380553879 669440298 5467187 356464904 286579828 792303413 262741832 318290017 307959571 518788104 361254125 877364029 362298694 496115428 386968465 495469460 46072511 303501719 193034554 819530837 641610891 859371129 476508406 483475994 361364327 883667637 655081603 871316250 9380146 971779413 297291650 412194597 291638944 937579483 283363273 297196301 72021180 904962678 593378016 764040573 151952289 822137087 559809935 667358688 414037804 757767654 115024227 405736244 211666593 366062314 211782095 724942114 162678398 477704123 235007133 305851475 69947607 838175473 601352411 852674081 602099844 646905954 79604944 155551735 149395005 213334072 97658459 649601706 495631741 547402859 490886311 811245781 23184364 39517355 796271 845106946 532426037 924570089 157616031 870468019 620582541 751114806 281964153 900578505 91670416 883787255 775884220 849719509 599240486 865080786 525497941 552072980 204197390 561621265 462547418 724786914 211386483 685928768 263868179 467691741 119767086 366660041 74073063 564775754 271591289 924117808 253834437 735770817 166227081 800765825 592805136 651922179 547068077 627183102 284671647 867325117 491802627 660765914 501199337 927592544 828368285 835919634 527011634 962743596 373082927 903349516 474015895 507118786 13263467 911073858 239602901 243593343 179548510 846646055 679911831 861663224 704300590 826028446 336245122 612259484 46780931 48159904 17486578 878361433 623227166 907703984 5835207 216933191 101392933 656144967 454510509 599292305 298008070 723567047 185145079 831761845 80992557 873889280 195091746 921670824 426004182 847324395 255347051 687208323 147128608 428635982 28358032 553913316 176030419 415771437 341910633 572244282 512718610 579799172 23378951 574485095 43952639 821460805 128355265 971986378 891962310 900061792 346097855 897001055 819480890 986733129 339426059 453594205 435554806 928071550 2315300 854450445 434645754 462913700 162349057 852472668 715944450 799147020 171686472 867587234 823245114 973032081 656863204 753735552 504513008 836491262 478666124 981486639 263128808 700070349 576959812 904280693 579853999 672264190 468787824 481222359 51609897 773864170 77140207 385406192 294302690 989137304 435862804 863364767 810570491 940397024 591861433 596023627 208685580 797167284 536297141 569311149 223647362 565804841 273976979 788664502 541675508 645114376 557551713 980902105 174044982 991744701 306750568 667607311 567445888 608252545 168689188 337070503 97526622 639061603 46640286 596467424 92308705 452149888 249958763 795259513 687761281 830656059 42895550 582584133 469034872 824445036 353987536 649476937 480423935 546599513 201863098 871492408 810230172 894499841 241343309 823769371 483004638 667401203 439154152 945706251 81641553 470117505 441356364 802682392 381028194 546460065 484222921 573376527 52088384 888073794 634250082 845655156 827247286 881181054 460031624 895055840 85306994 380411247 329875789 416656978 186034622 296374656 255650212 284765502 113976348 627230301 534337716 649288064 422949704 746986644 636316955 770309193 425442832 430354197 216629918 590083812 512519728 892478653 463576421 538045552 536260343 975917160 74853050 979668108 754637768 838565889 798814205 969494091 363797687 602453750 330188547 565534685 378388612 484389254 388950078 484538771 223202299 778254039 442091021 637187352 189485082 336512408 51693736 276452461 192548957 454394858 315860763 676110560 95774400 253614194 90212888 626322932 193604783 829966850 396280542 819187050 733733809 928905869 548777696 953841089 110216945 960314340 601781931 855691694 317784509 528232381 160534065 290557877 220966167 829691630 224134330 298554346 261516664 838527122 719123242 966354055 408787187 931415380 811378797 917576675 670704548 929543868 290764212 939121933 892175558 931862713 328351673 700849735 344452930 784015505 283473147 482502937 255402208 521322390 323877927 868598145 196107087 706002689 643172798 650094483 32075557 53159102 8586855 187064125 48044092 805431687 168224714 562669965 155271190 322717025 114338010 299048932 129044298 677890915 378228985 384073304 329161434 764352469 30834717 240176910 198723810 810898340 569417679 693175956 651865073 726256894 406228270 988610891 352901252 881517864 14049407 343210941 36207626 286679492 176063611 735039726 569708575 848887930 429039929 965361721 54801739 568323258 362313602 641421818 459482810 985839945 748588164 956913254 735621071 842273000 332692828 611471601 451243584 451295916 421376739 724530631 624876978 959331741 59306155 267140931 95223391 106038439 2322727 33217788 26087315 738826882 576153740 882852087 499554757 532445928 239765265 431199691 6285176 850531089 227925152 361420446 221862863 559210927 82643525 558318748 521978251 640154744 80170035 895387221 865020039 942441901 480522224 882659805 655661303 984749217 727787879 813410940 691457634 700971705 4315001 248842441 183220964 838582555 343850231 991841854 309289389 995955047 510128542 872281376 325680197 738114278 34364803 696199046 410947571 860612162 326199979 809526079 546315602 825068911 758590592 837819434 70842779 652298036 96168386 865568446 152689265 749287166 549928276 892670389 281703975 359534095 136290804 603217227 233275328 637589492 329345255 547754578 239991913 735226293 181207883 503705700 351611573 999953364 678760945 878894284 104907290 606261591 442431595 707779334 251351592 397008470 58940128 724476147 230778974 604043082 541613293 562330655 345601017 912468836 339254266 523239652 492378978 828210858 54035484 446118136 275525133 617064728 422399032 516209053 245530496 673668156 264175650 769949015 561326295 859778696 729636312 910539321 711450524 798761590 678346572 852090078 274016782 590385704 265616620 616081204 431978504 957789094 737308193 772012973 683899019 746852834 47809470 230922168 205969249 893907402 870839311 974008493 516756611 756011823 403727823 429160963 22855004 738599166 402840568 510023152 189960915 218199519 71994884 174788254 42829684 68883933 1021597 849701950 56882181 915921970 300454580 405015986 95090928 468177917 152829308 416294662 325267286 354843926 305876047 902369535 389277486 587838494 528771745 836958264 798409823 835450744 225934829 734946896 458554802 511934634 322715245 822515424 511624932 998444659 717842561 882018250 511618452 978246987 841417173 935391061 177718288 969946258 914515252 931451911 568186878 615875395 10046431 701148350 529238384 810061476 276989470 459993359 206305854 506140407 377441673 408778651 366377040 931786366 885854558 971917847 866516432 943834584 573054222 821757693 805604026 963693825 389775539 492741830 21390463 855655507 241095267 967561563 556825026 740560298 416041685 755451123 149696469 553003761 180321604 326285952 213106460 554885909 175560218 327269646 49477805 843435133 321731343 772665576 372941365 640976347 532802871 548479466 536041867 668195115 311587869 488342482 164957235 661680848 644226204 837650293 568770048 735667516 130451481 249116894 246520986 911026109 219752965 511596312 448775170 605752482 148117949 895967702 171046844 365848861 135168276 603898795 69975853 119284305 61334720 530801461 425629795 821519284 799061906 997346606 160929911 454354034 359088040 851474374 600158980 745954186 556333786 560657584 225300083 901033142 95922232 569673233 133496687 151112012 51722245 197444984 14862213 424753616 333283714 800848538 144028692 885524951 210199509 362251317 112656375 722743637 618237921 746237632 669897238 767825061 234116033 995568661 149747263 209796950 165443781 941899256 522469060 731935267 175861135 921787119 681503442 830559072 541204181 735890074 18677709 758986999 288939715 302830826 229236653 898308553 120492863 882376665 2666580 765729996 341009313 345456628 309652461 591156664 157094425 478672722 311422716 344930407 167089452 661571870 280916743 835100898 524004926 783044307 593556615 984381394 262624683 463877433 196235773 617824993 372268067 616655221 532671965 779982267 642845231 691276477 631342501 828827684 177273592 581751995 149715218 395419375 350195782 836993793 788551170 885821438 803113900 902564850 518637417 948258602 515180517 990164286 134146217 206963741 32018095 853612307 538817755 777623917 603739021 973737228 862429618 939250827 734092440 759943128 663093085 751799078 748611091 940764944 470815326 595907728 373715457 836791032 460049715 645920989 540724679 567690250 202867468 820871911 343440616 579470653 240725180 380174489 210675783 225508955 203600854 845977543 386237435 627868101 422474199 668788506 548500494 915495707 190055659 207635303 193822241 886462748 55280701 229998023 174219523 583482911 282764294 913421004 888951957 958882147 124868044 220502175 143774056 847316434 635951616 863513315 367635147 514571255 36537420 149109410 18870335 937451787 231135985 585326460 188453259 326876706 278113319 883332206 290874258 989967889 780452918 850143522 801696218 927046484 253019216 543627248 479700655 616078549 559265396 941138586 919680779 973176833 672576660 877287866 160235819 537593977 257483891 630000822 629402193 911079649 276539589 673062003 637580964 927142956 278516769 724839539 87380072 691597435 367318352 975931028 517235736 768063799 384530069 911501321 544327475 816956605 103631197 379459059 333045757 619334055 43623118 119538803 84732004 613311282 133212880 579894801 316154485 498713677 321826494 751668845 406067911 667700816 141492479 182814284 150492036 319644183 80646551 903071449 781657699 790157586 335971006 550317421 154035764 876414983 437012396 759178376 112814259 941019562 456072758 955193222 72858234 940651327 439707440 445496622 224728050 554113115 383623400 835161223 396751506 561760097 108441127 530862567 313981182 905780517 83654910 953306234 473671733 510897633 245070332 679496289 192405087 558527588 107803982 430941092 12724863 190328202 177374204 690444605 383586973 823795480 322276536 679929852 289638993 623203561 188232250 896701200 343554443 918774612 722902116 894202102 282868074 968669053 560815697 837957962 127269547 525450677 402475886 532427893 340134492 612136668 143795211 712063317 293208176 909122636 186934789 833492452 63500638 392898516 62792583 273459604 15518291 589429888 514302961 638410351 96010894 192785472 187633737 509789599 285391264 619941212 389364516 957032454 213686399 747412255 203174263 822883539 30981051 994169018 287502433 588974379 268519026 479303446 245631298 816176346 546817651 927558614 463090491 865564455 797429361 996468420 122110185 434112451 371239265 793804507 107506333 247811297 178591876 759031320 734412010 971289560 246027943 852787365 800723041 885223107 669974123 676076654 418700031 874150413 115124513 129979935 64286598 268467088 265442858 651711884 220838563 323896128 277844235 567435478 346734945 782732128 586072808 812852333 232221503 517984386 350396357 922353787 50179746 170816796 57290311 388174489 150317330 359944994 304433904 887099320 168039916 674710478 393147361 621242746 47241811 91121288 26928885 261244129 215186248 359037923 275231695 810400352 653003129 673824385 183585779 944201930 56802285 403194799 181239743 944942456 198029500 823865669 238045334 683305563 527211215 911220483 142137459 276264413 38364354 177103267 15417808 617471792 226553411 586004890 176407621 396076952 47286705 354478796 222861884 773821260 290366695 464276343 50833858 56004912 42864968 890115470 650239040 810269764 281728371 898393465 287875766 803889580 99185534 371166610 170723557 701516240 514109824 580255982 137765758 814284717 463709693 634538652 408696353 889673508 751355241 893163598 639299150 887169755 358727119 764391650 289428783 623284163 92404783 375400341 46412792 638338057 597969648 677567061 480569704 768293483 619225792 763035985 89380280 565961047 75948861 340261274 225802748 929049312 200108997 335709990 26206695 63301062 40423651 338514406 226784764 459447250 32009004 618972737 76453311 100783586 60931852 688449850 335756943 762671833 528089198 879271528 601992897 874329118 3476853 268877340 201845757 606480237 492750799 631235813 2734319 378590470 340004048 893315364 258772744 731850717 191263998 625097080 464604379 477956348 286531565 452406281 450440849 900796575 240148828 951467630 739533104 766955534 74254201 692816652 249660568 707808087 26287188 127815559 87520555 810907840 164925314 529827467 32860569 49207900 10943188 148076943 20053238 242216981 171516361 236633815 84991006 449146534 86633606 93281670 13391137 477666503 268654146 459759772 281439363 763319386 68889570 956592378 123613816 211135154 186262040 770981796 488603185 852942292 236272421 894831108 451692181 518102130 191149330 340528480 22514842 383076315 43032416 832070574 331761543 393493279 393060681 936531498 84483341 419000902 227344787 520950339 425796206 791031615 52160668 895964464 649575751 742209900 682505670 843795545 321030368 593051217 390063498 554557008 99866230 857822020 634254731 760738635 362799177 896562324 474177052 997426761 502778359 516451416 354520917 785328067 284541917 795104952 440481145 826069926 233811494 848056459 130941575 162075689 129136905 538620793 252955790 487916544 171708718 334698985 106386769 785495979 731534462 878581169 9461939 35867495 32213361 811835405 739918441 842405470 688119483 933072631 735942444 875747657 138062563 222457757 29846444 67936420 20981301 414254254 173446453 921158401 895110481 985793944 675075385 923043637 105446459 567490229 202038396 853580217 691069831 791219742 200649345 464725571 155328786 168179558 142408685 759610903 426429461 925360367 746733111 837767385 386187977 529676245 365388938 505257812 211747016 933054372 70569233 427936245 302062271 711865493 199251257 544352729 404862288 989383453 215903339 310450435 276965104 361148330 55471141 518715659 45277198 261456907 248910817 747026981 23994593 446772894 299772702 716773636 61310955 943782931 166084977 612360980 193058687 858399587 785817099 963413671 377629291 683661891 120124057 948626634 456389593 493960097 378181228 566686384 384879310 876200598 802406487 856083065 748267594 962517457 599448438 998427887 311178039 349642907 321580944 653597523 564958676 853334252 407374898 455729055 433114781 483983434 391092118 862465856 637619316 644631497 233894769 323259007 11140034 86018059 30991601 569178844 278038163 540042895 437068921 790558819 451852968 453504316 337813685 868182924 695683306 806113827 145170728 981123633 895751705 967327858 933718413 960807297 217691610 518754986 35704065 730765752 646641127 891105101 704937922 951315456 673306545 713896223 419974992 519315157 283008120 558758242 72979010 581795856 173659911 753858186 486884118 706233374 249327776 574096808 172664556 721983847 464304065 969627962 584381515 814776341 782771373 802799349 267973557 760499352 39387979 858786850 214362150 297814292 213540313 569514820 419596071 840863211 393131397 963465211 242127368 804179927 781673598 929535192 590937089 685690814 178374944 514576788 237754906 353268247 180353296 847287718 383395694 711829241 57742722 667861438 297283830 330714173 299297138 433853708 315968111 368440489 24393257 356871229 216172446 523348817 9033684 305163337 294426934 346066542 254708047 545529133 366884250 912867143 93077714 96003992 64432004 513243169 475182334 838478468 608262537 881262293 295355304 779009310 339164245 749697426 410708504 917306737 730150135 858687390 678401909 937971216 51403611 983634359 413890986 616607600 89753600 574793711 165275769 828905360 91489204 92368121 10437647 406388968 174374971 862958787 578067227 595690038 122016237 548527544 354691764 911123230 528590802 986696031 592078079 971828265 408131801 417531358 115764972 608920567 359237146 414388705 175878815 430153918 174167106 719499684 599595365 988550816 345253353 642715994 470565077 731065273 475469699 973629290 346884324 986706911 784866746 993093843 655605320 893460836 858998735 873356715 196782282 847043099 628410179 801969697 225457622 347950348 340720415 866684051 123379433 918984042 621399757 802745931 466588233 477021585 76733321 920220956 166786940 322911438 236985738 578673793 551962547 850326508 840617262 885334899 93817900 663206536 499618883 555305281 213793069 530981716 19923714 985774886 839853476 951154018 600947628 937081750 306751338 307078110 60107424 922054398 621878176 817172897 309158399 472951834 335522776 727893591 107378022 589012904 290228334 930543581 94343487 618605621 411266530 557757956 376312880 721353914 643092549 852508858 392363542 714217028 654888799 676114991 151900318 183884704 110899240 348376221 274274006 583669285 564685253 718247951 85927321 510510416 380056291 572259630 37305814 200882516 147853679 804690698 354220618 390322519 246278068 581145368 171215729 188848789 145965315 633938918 545278137 830038684 282097648 741022563 104136822 672797513 202834261 252790319 52305009 979643839 744062620 800503386 310233965 618227921 207239543 360199148 127510921 130964145 130519294 402743543 79834804 251867121 155894723 415309663 404117733 904964742 897576124 940744351 649173401 726901522 220170623 276771124 213759235 885946321 521152591 888843282 500871099 885696524 821470775 857147023 699137460 981499089 846208545 980281160 895771214 958636270 54240693 862361622 479715020 663427167 95158527 762959664 32385801 327018746 32734317 140644820 7831389 538977884 512823394 679491844 8093729 667303310 47156262 997632388 446635590 928684447 5539931 519816540 494770943 722879842 530081047 670821182 637117281 920294861 878860593 886027457 393165327 966639557 514794857 765666300 382152286 746313858 257563940 459945160 45136387 792206954 372670660 723402846 490520931 860975638 859451463 983722125 377124373 761067591 297046301 965658455 72231764 223599058 199358380 552214917 545503097 723312286 435743283 903632257 82651035 449925822 75884303 515564513 192192798 475116783 236939104 547783194 211739318 555729824 302508156 866127279 117739292 281849969 92726964 305307546 288117251 596479073 548987788 994717542 483879328 923099119 221119186 994643197 287620786 385678819 352833691 775682052 914294 235589396 185221346 195815920 163432741 229872421 135644051 600284264 402776057 807121856 208857527 448969876 420835885 863808037 608517424 788381277 536132933 625577838 109885540 884296818 114614393 871504018 515142857 677884816 10245200 301385604 77924910 509957065 375156399 436792973 311488465 368995020 160485064 718608011 349850163 483477789 140803475 682519195 582774425 610708320 385375118 684871525 369412981 974339080 583154375 923025598 190079720 899696519 436156457 572802118 562557171 591222937 360351712 801727108 27478966 723922639 529536739 965425782 223231686 835521833 104670673 419190624 73080492 704845010 150645436 742843062 735878038 903857944 583212978 873159060 602859825 635449435 487564319 881446643 814819592 917643119 25462664 622041624 85588937 916280841 797904647 956831441 538066216 750467223 444207885 534234328 296912203 547169767 395881639 795857374 5288663 911298041 311948770 507893051 416012580 726704713 224592476 341137285 120225294 516923403 106683057 271477984 31849558 801698462 483581056 933306507 256676053 628312558 440865395 459585368 249914051 373172372 5391872 56897252 34715569 649559169 116159778 652034594 486064072 898309380 47392246 133411537 50857843 811039655 465487188 635288995 206396580 551632288 43706984 555600885 210645217 900078109 682899826 832745978 371027157 842719820 158578777 579661099 488137395 719355499 69118718 509060811 62545953 915979315 106628467 291749011 202539366 900685952 246016845 818856796 486465797 867508113 645092181 980813858 254073086 326965732 270275580 481677728 322872608 378389634 359652879 972954079 535763900 674420685 102917043 181330440 84983259 337550375 133780157 992552453 570695191 591892904 241868465 485715164 123173781 931407497 78138850 644128655 569879645 940311831 770182918 922107478 270708083 311510116 229928984 846123168 135842031 918521106 909725483 942006750 726539836 896001567 74853811 788923528 327305966 414698339 199544348 414159875 31291095 958340125 117677516 868675011 535704212 792687739 759677029 812243419 482400072 737146743 136322925 831406436 667895208 740026549 567126712 784033883 171190420 816637980 98531786 940229912 909269384 956416303 741711864 917846434 588509057 775873779 460063882 799200773 651332655 722797744 392766700 875288231 853863875 925389519 915532042 927079083 694222415 870687224 621301904 681140923 601467976 685734081 333717261 522774644 323012732 916099774 879688368 934842745 436506989 789002990 114669189 448344537 348601378 815627775 255667299 847015522 597531089 959121105 212967004 908880038 421497974 634519777 610849392 879017267 130910046 317935424 238332758 311303827 240441452 330435319 75614240 476190975 361303303 393931824 142666856 493189174 366057108 479043509 437985298 843334679 314663352 981494490 295319303 440732650 330524373 378509893 339003779 534294966 67412688 548702641 60885271 251334839 32446750 52142831 6109220 355804372 186032829 845799034 821961461 843986856 475405864 818056509 665040395 880824615 521865681 886492400 45577662 868107496 340126275 461890494 246334918 692787872 60562615 504649763 369439301 426885553 152292084 730320308 396416681 941269437 541549031 728048157 468018902 550723694 400947299 937888455 313579932 672027382 155049080 282492761 221830724 659338133 400434444 992949423 147988561 818686166 613702384 790781913 181346210 181919386 71703332 536481210 461018554 723992291 355295819 818170498 770596064 788672131 551067714 750200310 86509330 992506448 922801280 998905770 412513369 704783651 600394634 967133536 496365775 524442137 291410905 647894200 643435241 777230366 184407323 844489285 777414432 822141882 718572567 941499951 98648889 608157416 42972316 842253548 754565792 810611181 8544376 269576120 128574728 238377683 20825265 544985087 117208553 980634809 87512928 751831734 391902658 812018731 364211230 935833612 644663601 773866791 102386751 857451984 666830462 857224310 472755479 852916168 758136660 786498505 702932963 895293821 527727256 957449566 502441770 659179651 240206226 958925983 861760697 963080198 257945405 794950542 156402292 363387456 354335972 904829884 454663670 737048338 351950904 443989696 316207344 393749897 261830085 329107527 272183181 601409727 226290181 821697436 14899139 459089577 265118723 268527360 85355252 446474428 82897211 745437613 730928038 805431657 753822297 919141349 767991363 952157903 377191557 981696470 697702046 918497673 452051044 769745604 214756975 610776887 154960381 491477621 277634473 724991349 659131366 908501799 604479598 966920432 907426885 910213925 266447992 560927889 358972739 484398238 323360549 635493938 129742351 215228132 101718896 310179293 269756583 313325012 202275087 392793169 36332404 774870357 98561123 705712510 163316342 872587438 724790175 987877578 204761675 593024854 340461615 513910273 450615350 876613129 753316492 924560974 833066169 993588948 557550264 863885101 120745782 666192833 562053653 834371510 340410209 829018386 166035451 627100052 68274458 961727403 504962151 720310631 56341091 141994215 92825707 848898438 551972938 995059232 405728285 670232558 74887866 764557810 27655245 609618338 39899275 404894646 316622909 442867572 283683284 957566982 508912014 713785484 235943003 917886424 418494492 464377128 106336522 778265994 482502553 527413374 423475840 751190973 380155799 943285796 600612559 819738423 449285803 532263770 371613248 649157963 110159462 406488154 344620653 824216462 12016070 165838353 86190546 176206012 23387135 757049199 265058355 657538694 194506994 280446044 147880578 899095256 62907595 451901629 372267220 765880367 119283060 217443305 112130157 976620593 743589212 935457124 288156543 681355369 251506095 316572585 121722418 232582130 61564872 440392160 181999134 323258893 229555975 886133461 444350399 973320820 419832943 635208187 279927128 351707453 59773674 295296778 8012704 515050333 511821949 765953213 569548382 775158727 322270642 515801628 304032850 447146496 383713148 800218888 108243070 305279660 212545574 882915341 725370413 919375693 103334667 142822221 75459982 877375613 503441864 867094369 94237642 322039690 58246091 853542053 767838308 799704254 147063456 914142312 836039068 914811559 536772975 873465499 590609580 825737120 285421869 473644256 322945609 456706144 434661320 927847804 98038647 123164881 21535054 365446103 235111431 248356623 114001829 327878541 5038290 900190306 701590455 759831720 298656869 677828261 194715492 689714778 631264585 722416078 369290768 711662082 439777621 995657151 898925514 997673208 458813961 575137957 253115874 745499771 180571224 368401573 295294869 613475059 528940958 883221973 306269443 315244777 70586926 666911488 513431504 869671258 314292936 804069289 358448042 370566717 37050916 839905305 82326855 200528009 65023240 237627537 236426990 856681128 554536760 598351272 527294272 784805726 14562918 507402370 347806137 530263204 513840308 837664311 122293800 997493251 537387226 674988351 380175699 411806636 104935301 587144815 302277702 818382787 709787472 777090562 214810212 426616180 11180262 774452606 352339244 427538089 262202436 953757490 702660801 903535671 417362279 862743215 137442502 320290676 1593695 260262169 3311644 515203805 326358473 764565880 402057558 642395196 543682065 808936323 365254955 905493125 453066216 985650083 902208113 934368792 608516995 782373620 292194146 892533002 588270817 864860042 314017464 635307835 216082521 846227825 138062861 649859248 609799257 872966324 588114999 790443515 104472278 446586864 88429647 989761728 884071246 967384344 12410555 498885072 73836333 91563333 5012279 859396034 568776467 823699036 817653355 822719024 432784233 913644010 346141706 775244714 515120734 872966550 357556099 493613535 454162039 528976845 103056170 764090257 393028682 935603576 886368538 941846877 372812035 799000229 702122329 949213763 333217125 794980280 342892701 527567022 512325690 790694788 544210071 555984968 122540781 532280216 500261348 557522248 438296114 949072998 397249611 898920919 793020885 818656466 178109117 336689474 114883817 718155032 317793852 513167860 390637827 399195668 146353262 286995292 132980050 814111800 474093005 506730120 215014407 930025814 37279115 132165983 65947834 277289124 249076826 343881511 64626160 436262748 138735470 276658459 244881578 821745117 227232328 336761638 132320247 700407439 187188265 694615096 270935854 700404464 510922560 674029875 609437558 944326164 898749548 943716443 878478187 906613760 697950500 889013107 405896818 729964926 570406 458833290 359509954 931042553 72791151 482110011 254463550 427651819 416252967 853934524 182690162 666394232 532225716 655970148 503278963 829565256 132437276 794630993 118062403 711978813 228054973 523404673 121399490 977532250 678706251 707376541 524870765 947790189 601781578 661955386 7338309 330498852 229201890 513989937 112130349 768301352 577621386 600576517 157677226 817962490 82622482 107310007 19874272 520512028 357881312 438161123 348725650 812641786 586337801 833747130 90179780 236927696 81571908 992144320 96489296 188413187 142239434 536265617 147471423 227728865 189154869 316910593 190877338 624216764 416062479 560691309 195523003 798571909 151062321 194375653 161383472 278053162 183263250 378432690 11435182 660405448 55414452 294125968 167463198 642810961 377225505 838708221 80719982 207742665 130233488 348905901 20354577 955622765 923254952 986532257 418412229 440476600 343465050 812582416 10204537 369505475 245843440 697987973 104044206 789931140 690607042 986272499 525354587 787642579 556299273 758750079 689590893 861177734 460964542 661048207 623414779 898869118 642214219 662688344 207496917 813090460 483684864 634787704 49623065 252968169 165781849 972734257 315078196 496157377 393074859 595408568 22965037 490169124 18366375 860225925 735288016 825246734 371952847 813742888 604459177 995397694 154202640 833684730 58126612 515958707 400963518 537063634 187678518 211423433 163191427 496902364 416350009 828564352 91919396 302088384 36246475 686626749 492997961 569110945 256839706 566790487 125111959 934056677 910787799 975600584 486068696 545190838 68807921 250078458 234965090 522452328 417254105 576371976 346351058 847354660 139062092 776899109 332141315 727655184 144672031 496246727 474020692 785233290 757095020 835768109 361692491 461235810 294892074 682456452 233301981 568587607 75286664 260382009 108231559 209243671 102133415 907304728 773756819 986024157 573762489 685695110 181114940 490224127 195253902 491651696 263314414 731774376 658949128 744490825 331674527 675068342 109335363 928619804 141603523 825952454 143056933 518355254 404643397 512170017 461455001 711640782 404900558 795838129 409712675 973007592 938243184 954149194 14928523 953349269 303308684 753648757 124801662 797771418 277889846 770514449 362911714 854264796 647621019 960680381 133849452 488107787 406787502 622527896 37639732 453222951 114518654 954618138 602676128 903685323 662939609 706187523 141248209 383323163 188987798 754884807 659549648 787093034 687271865 798660326 24810756 337209183 313383703 495134655 489787611 735306491 535471045 747371346 201817327 932594824 506838252 666540040 171938342 918994009 851965342 860578487 391610791 774378464 499825877 570662663 445142760 854355097 316113295 763576453 394543268 994967184 396509284 525854329 427814350 559594312 25708705 272294555 73610182 212027251 143012480 975474788 195279969 898288842 624245268 852937809 575441998 663092183 57478433 901013802 74165082 328852395 181451424 903187434 774516649 833387060 334278673 505192084 338567074 628865985 344017808 914663779 149408503 584301784 275946343 292436281 214826219 531814961 473777391 506319615 505327432 907360134 248169927 293817728 88679443 630539792 559572730 906422404 275972155 489261327 62078551 348763648 267963969 398932831 388548834 955050182 27630176 203994940 135652333 925264617 274257313 645438440 529088434 847127253 778819890 929592945 826177996 889695763 453858510 639065355 270415039 667141790 579854608 878489010 683696049 875981316 217481456 871107250 186196857 999188739 297155466 882898725 697980454 703459801 550253365 688392838 572716841 671192966 153730407 618263754 541611500 963113576 342235232 361194195 244142543 411952700 91209679 747714686 519652800 534474996 513051694 678590353 146324730 492492227 59164725 798669960 616722491 754738469 476375018 720810166 442544040 498987264 32208521 583726165 487483420 512830809 369507005 685779341 290728047 464579223 251924005 360312451 68611012 78320837 57315084 196652010 168922210 680586555 533960047 786255820 276916094 663493688 129500252 674443988 243380388 766468535 433211137 624689069 197136673 925701179 154422926 906833171 56160461 956213152 261943245 395611198 257427102 901660030 848537140 939676753 263749108 676478518 563964965 744002250 298473393 334033914 85693759 181033442 71098595 507931188 238748406 264776733 5807832 394673368 84920282 697991100 157909491 187477633 77975997 340980584 152152697 655301535 213303448 538092978 49909459 222454765 13256159 492908681 391346567 851728470 717196812 907017013 427782949 522901160 130498625 400933706 242362451 958623783 645513921 702266795 294884788 325295420 158851557 310832096 270083295 992235670 814957651 944830350 515666106 653112718 381270090 436907399 78721867 436726229 363776533 754225414 494843155 983657347 217490719 425470703 179766304 339684627 329313298 848263515 484373417 959321973 234159716 749696734 518849541 930015569 588994979 628505517 148179985 390860311 379013032 692528989 523440179 707623562 143979375 389264175 235510478 377103892 88842814 93218948 59888342 760968228 543626311 598865704 219415653 963916403 577494791 675296245 178788144 891028056 95966575 304303727 282544322 638795428 178281815 827158216 749328715 905469984 49669356 604408879 104323045 121321367 97526268 928894981 505955933 763868464 427437491 583275216 376293596 783217839 478339114 642846640 96961227 223839118 43590393 309178518 288482813 464021956 389901266 493634174 288701407 894431646 299601170 897009996 867752341 931192315 243902740 732905979 150571745 620503828 301849004 551154144 502356600 966633201 932540429 948504031 778871844 797138489 429668291 922993329 438725746 957394277 870041994 996414444 820281205 920780871 574579783 838709208 413815493 919919315 633696771 976749111 468847177 759730768 262348522 856391759 69433193 905272279 327816287 892898072 583776675 778500793 776503681 854211237 727706444 992069804 46694797 662002895 543938433 732314383 617072849 652297678 173221773 874335440 73697136 914088968 3128858 597217814 521977239 908992552 208304755 276765427 190967060 802528030 116559541 299803295 17722609 134247540 2053945 797443902 368116384 663906871 253500987 643232792 454823241 928127714 274705253 903934665 585737505 715816621 214299203 735024147 376853250 488604637 104830431 313066286 141653748 443680895 391799715 959804209 548341281 825487034 695836747 837302462 65642481 303732400 178666777 490944906 61206828 427508382 360458209 588708883 588216681 831145923 212892483 315325870 5078348 741617628 313500242 901677780 198413539 455988379 183169102 868610015 821107033 885797785 621326784 769788172 424219495 858320923 6752391 854449487 352104882 375834626 365277182 385781374 38401397 618000269 397022260 419176130 100692331 921529759 368353233 866241039 97540043 274589121 114032407 454485821 3314891 12304698 3925610 748683502 217929737 698792997 57797986 59119449 25187998 172481740 57087717 198045209 5052347 532352745 258834260 686118185 165912001 667130293 146938600 331305979 92990021 366586070 288616687 653626406 147736823 725772260 204164319 999014125 8774411 37100237 29464058 707882732 334860267 725678291 419252517 686464843 438762440 590578878 171224324 822110639 651601127 931280107 99750841 208161127 43861278 422973925 218832622 322829179 109214599 459697966 335828550 991528294 544319397 737133993 172104286 887073830 27565734 730698963 186821216 290457020 184467796 193690250 92289525 201491809 187441097 421971052 402110235 854466986 708401151 871848777 480829108 701694653 592822718 641261102 536977484 635855620 396110416 604230830 472200656 664153987 636612868 790294231 378766279 938930808 430240647 904748659 630104019 752037195 188187873 342075136 316790997 563106785 354621501 651700748 168547134 376119161 65501502 135890351 32492351 144659056 3530227 183330962 17702313 622410838 288881234 508532179 210691845 463125978 146545604 234280996 116868031 959949407 154850822 766812737 357954474 603948799 435156480 539534968 227545937 926468995 209897243 210737257 196937048 393592079 194864699 961181162 422443589 439161983 380219513 505370815 164585575 260926843 223370851 752743067 566487093 890293346 874771452 939495120 709433841 734597189 266217636 546571735 237664939 868749724 148275515 517429415 240154893 735288293 209174987 238279097 38979544 357829582 325398254 416560127 88649991 918172805 321037063 582635500 224789402 260076919 101708023 408135182 259455234 737333383 423270840 826440871 612731361 764305966 253382266 851349249 319993225 975548584 430683206 444374120 361289352 687949141 145513665 329234052 31587651 440640909 121238306 429455853 121613793 973068419 105610315 879498113 407453073 428638425 154188207 912169685 348507294 632793118 599707203 745463732 447707959 455666606 78946807 314758299 235247181 612308038 56412353 791004267 354503469 956736697 619294644 927098993 670391120 868432040 415280520 512637207 405312110 632815602 424711294 689965807 600658662 997430282 363238147 428685011 232779230 655633834 588466384 985784139 823755984 886760986 350609324 629797574 547384643 909778633 879537627 951570659 824613756 977739762 32475528 422408107 22438896 325312077 163987736 760927605 149493346 877570375 429004365 558872863 404509496 706046466 97575489 675828425 445597108 780998693 645502426 829702808 522065175 841386294 312712565 760236955 224682516 801273067 601597054 693328878 9111596 208654425 170882876 751719374 493918596 767149658 652091825 956653389 794116024 869325650 568866160 699797222 22969539 79269584 7396479 714513814 456416629 779595992 617005953 846207403 154754703 687923845 203485145 519862899 464307418 497041193 129809444 454988922 15276180 683125168 416472022 830105284 136837911 913543032 587761855 942509378 782470424 817023994 661017075 897477391 304173788 469618849 210779780 286903986 27765073 971337721 691252588 758227395 271390798 875665720 837686923 848699360 262511605 343230483 65781146 687598615 563684821 971438076 870034576 881149090 738182141 962244311 568143235 667060638 329957228 480086587 207135623 924961370 211873152 907823731 441376618 503573526 42433193 53641700 2132677 916264873 309569702 649075759 80828787 285332197 66171602 71871585 37315340 207250848 119206486 491729990 8002324 299525810 12010448 393268386 252031535 701814842 567299979 928327992 218647904 233966403 197282564 967445777 639525 191548735 42002364 184299424 22835627 781700450 466629065 498952617 438749844 842541832 646489957 943342264 642047951 870063085 443913106 496869359 51110924 683586987 541582836 933389875 352515975 885670824 871377497 885305068 155394703 206835606 148650835 998923496 189170738 381446985 65321788 466506468 345317817 480514018 472086671 721354873 117622565 878309004 728678508 801166834 14030706 45460252 13010233 299369527 237276433 618953220 583046700 960493304 548514409 807968896 802429115 861072641 288047964 831093385 680429593 694008027 625082307 926335010 71065765 542063065 535137779 796786965 330484797 803561766 285067684 827179866 570494971 853421047 359503437 975673582 410757309 428643019 99061278 370311248 98415346 976566710 306644508 898139368 354839926 392595263 186444532 387188882 246326129 298513631 76235375 220203695 74507779 375387958 361734319 837576102 81981720 226408780 53939540 662802778 166051482 457262258 290270721 618028692 406418346 608376565 236028659 930317375 118749635 932913073 13838504 935500153 308000617 972696264 700816271 878299636 585996961 906197479 514479929 655117473 605087622 679921136 463051195 691565296 293817817 485834226 334544948 420410238 9687124 541524033 521335496 568912449 527754807 884700202 795144915 957193258 722204773 736551445 77402779 541221793 328517507 808301388 207687535 700271813 406749467 827063327 9426508 230333955 112439149 249180025 70911780 908450234 872151094 963300969 208920068 485539852 483589251 730198664 350602853 742483542 643214271 771826066 461061183 461206036 155636011 772484261 154833627 737006845 302068114 498314430 106064653 178523841 133717955 987601409 684692451 945757054 216200372 816287719 116410682 714819469 108490560 767863485 624474336 805892437 601108197 916389320 731362767 814926313 470671032 662469685 458461665 871988451 112052640 220371892 150517734 948597398 532443814 747847936 446767722 961287058 528156634 624785344 20113025 286404953 197374698 908508735 54424966 328988371 104708673 455886431 11552148 69689071 20794643 508002418 140760776 402975450 285201523 404901624 318364120 435472478 218227619 440896265 420936019 916588952 184338262 240930807 109319179 915873891 413680343 583256620 531046803 940548787 907183356 966379516 249066255 696172522 313093529 529394265 348913751 724111033 170978892 417517643 188209956 317106376 77155705 924754719 644344024 964628021 630133286 673020558 133273443 551986831 471853346 634000029 461520632 731041187 649349105 888527168 506929242 924530642 55541228 754741696 206153294 878683804 600425081 705128439 170309300 275289258 209249999 781403191 284292382 343535585 338856020 586557581 480871629 741141499 445469212 857127515 166367720 168849922 122555817 226191772 135580075 618368419 225998273 405871675 265012706 976453497 445575508 808368605 134584259 410781992 337533895 836681918 108554440 415490569 259019034 277308365 88987351 778195444 466430792 589559572 151808083 336892036 287915770 504459392 76225107 963930712 776136378 862007994 438114092 783742779 626339501 676879142 58499704 902900217 701751580 845235986 99074946 885738490 271141416 304302548 37615137 340790817 229746242 812022720 134826397 473021087 33181379 88385484 38140668 951840897 950764303 989091746 444602687 454290345 145045455 780004904 618926479 980950683 656521142 897924330 770527010 980057689 592817413 769584095 44443919 452652250 400205372 774108742 621376475 752905943 494614153 924779575 41674657 687506989 673767834 927390235 909208611 960203161 781882695 919657019 770621305 957275789 894463731 981405631 276472617 829229017 321795453 452912391 264003873 309275873 46343586 605207846 594712842 907400777 110347655 442753954 273822707 287951861 201689847 587017980 105255522 125153555 110562914 874894379 697315340 841399051 496373796 531139848 143937935 276694496 93534181 306615914 67269389 612945095 402082378 439775079 359019510 895732511 266773996 600997216 92447401 690445221 485986324 933649602 253608601 683540439 177074466 735172474 728876427 952527158 809129109 935079499 285797132 535801337 101216801 509161294 311184187 920274793 890606255 992305787 842357921 978910128 86331050 922309163 372255776 993205358 981113351 997424656 239915213 296153969 95991440 844872897 637921495 967774568 761975512 987862906 411710769 510798431 311848720 440042267 77287654 122552479 34034378 691472641 468804308 706141736 575012973 896970377 361193292 620801801 366158458 567042535 35008823 929737687 707335241 903799324 312984416 527420154 327289497 383123683 122571626 976055707 129761631 807833054 262770093 631515934 245415241 946726427 708709495 901087646 428390044 828273262 133864920 993064143 905216188 941871657 256057819 270166251 262732288 559722567 70103415 991193240 244123848 268505241 232376535 710743807 580749246 737910402 207004518 654954796 283145335 633310439 173170314 414288000 14156440 213955147 92142236 960855682 149033825 500120368 221138332 841246365 67308446 806002632 732457057 782551685 738691275 856225886 183939008 692697116 453713276 855994646 378121639 903437711 797739222 879793651 593190425 895869175 792345061 859427307 569459349 868538912 519339201 788187077 265927345 379359368 359094060 681766479 230151579 580321511 485544737 860017565 95457289 453783474 93639619 232013564 90594620 506223339 408575784 582608713 429917122 439313595 50478115 794635294 128391161 327262961 44044876 364054795 319157935 943576173 451174358 862019028 183972711 413862188 45799125 121844963 22114217 349312407 241163173 935658572 508852164 529383419 393099885 656734343 250332301 440389332 372656904 696992454 525837761 990669016 957522314 957522711 484447509 738453454 7565222 760978914 310107795 431391168 209814679 436289057 118856179 276482389 164286696 775976479 516795794 741372505 553854836 714453592 373617850 472391795 102508419 393253663 335431345 365603469 273283599 546282692 362255135 748317594 473071374 544162989 275098442 998289661 771044465 853423667 827433145 946861718 327379399 936891441 136044165 432839635 256465076 968646758 910256499 910889352 839025852 885938292 834343046 855245077 349754093 928911247 877390270 989453779 407138018 458487187 68692365 80985301 14496727 300612812 138037552 587280537 369904424 412445104 212585057 919989775 676485641 932547390 368214735 685986659 572723909 754960979 481698557 964088630 785535514 893652594 217273285 326083381 129795466 620421487 178569681 591387760 267974262 339329701 208559577 753200825 53307835 789540134 461239584 648987713 536204353 816867469 185626144 920512010 406398714 699263157 151027815 183383653 54669209 468102933 16925533 57773409 33490350 218239962 3313378 32119463 6053837 853603396 823133278 994883268 281694850 464057458 373787968 610553352 413159926 866040606 692834226 820317272 611707365 757127891 358654389 375226391 23717371 832754194 4238921 810161532 566974538 992371871 86154919 223489963 222542830 613091515 406744545 669314252 254176710 640039217 481893619 732707390 617821634 746621787 587788824 840176433 240874158 846934793 758133905 840692485 631782081 691237455 67803564 833353321 619150695 921123770 218445373 334979808 164671963 263031010 62374344 934512286 143323458 996523158 837881015 999835987 313985372 607118409 388096409 704574487 287746720 807858071 214302388 840423161 378563304 635724403 594933704 950338753 713421218 884023434 96701777 945249336 136904623 190880670 64973682 135298540 119135416 549045683 303151677 671405664 334561017 633358306 625020127 876308050 446830955 858555618 538815657 700370141 588545550 786449797 559306990 866833906 475910050 635205427 482100861 849383105 397469673 943737513 98034075 978781521 215808888 853305314 34594796 786081928 42124543 600031857 464208116 833977018 791345654 802342893 644726001 891917151 189105060 575293697 309638860 708049125 663669879 770272999 380227015 454064672 310955854 869795893 610031372 959920776 492293223 798081492 28766261 106123963 42203582 648004178 115972552 669894160 451295044 994937999 305756115 686653610 68833990 510865572 29942912 572357687 439328879 575836811 300249493 650064970 480922753 977055466 214870196 311440588 119613500 550095967 257652072 866979256 161368608 956359904 815382820 917878331 202142708 487192251 26816287 994431621 178053494 280195858 43968177 45785756 36053945 656335624 138763632 594017919 304934341 347322861 27041566 518099820 287092643 778522480 507798552 954907529 391102354 780134940 57569163 612004045 274229445 580983410 580639126 729612815 553438403 799303290 522417588 832079500 13895431 673391638 19937864 868199594 417480559 615833113 601389024 750192509 267701000 536994821 79541943 269825790 267111578 467548979 146903903 197899283 19619887 589872221 485957063 818487380 535653598 799646416 91576302 981532320 497383672 968472920 803805369 840996551 522204333 924263439 298631233 487594109 155001144 810095099 417979919 644871164 45850816 477572717 90088233 787456899 294590967 441152867 29598900 495681691 262399443 631804651 433805803 961155006 932683737 964078338 28366573 734910737 10990446 93155017 499757 996905039 388572780 537773240 342194854 541542941 4137289 708601664 21619976 973794715 313739479 579050439 515622180 585860162 391045066 501158405 152710036 653583643 609949802 790242285 642291614 708211173 452356018 795494057 625699988 726128028 315833811 332365485 113702939 327565966 33876409 527104342 421126347 499542227 219685492 857359649 505666409 885726641 634028079 818690961 645082757 844025634 419396837 665376273 273592460 909258683 573527333 667373669 478164709 791873332 224564068 317594394 208317748 535484385 430667030 844422986 618952864 991377147 604092374 966881895 13503048 679790129 652703057 696551402 137201056 401317138 185435480 552387315 432642115 749346661 35230481 118168341 15623565 582158518 181928134 946405956 663628995 859603682 79186012 470455579 125274089 463196940 97114806 919561025 808254518 884076199 881467591 883049483 375415169 712820008 614793788 636199332 323001025 770527118 404091 328492320 227992195 574597402 558843322 832404025 379945976 694736197 500664037 741498553 157204382 945107191 290537284 604980563 486094039 662429966 627799737 922759104 366485506 746850268 487169335 934971871 216392533 372592662 202434076 409853474 58649704 961592113 341604370 985319190 388294305 683858901 237446099 955586835 416195215 799336108 671149440 787038947 616218016 835294149 52570666 230508885 57594834 813312611 73220906 678651166 583427725 776641646 750091529 980650227 523694611 724603056 405852586 859391966 389647156 845509908 140240585 196592202 133589597 296221022 137001380 471146841 152544238 823174885 35910239 386164412 12239196 468257518 327149247 473757705 131814931 755866614 233234282 780621451 545368223 879946220 471641689 659583406 512887817 913405254 311727929 941857081 790543043 841009779 97440616 110612745 107974845 558339682 79966046 683355164 642789432 926724719 584607426 768137002 546245636 610344163 14707189 988397137 491312859 512629966 167539693 539538110 80273594 758638205 755843620 916341278 727371757 840889835 233206161 719309887 551569897 959331566 531000974 851762485 48469945 876440647 415613191 718009670 128954181 780521591 57250031 741786392 465144842 775614381 717658205 866610521 396737426 823631685 425739834 886795606 652524287 928498302 662947591 880888795 471121939 824563843 191556317 498802944 465975479 536480759 507366314 897991255 453859762 771678562 605722171 840858041 88233845 338270095 39913230 679681946 350252581 643573139 273401443 937174190 863185348 986043858 910348709 930795360 638229484 712410080 46398777 183059344 1285377 648169445 622273433 938964159 229691969 343238846 180652520 962394679 382036729 468789721 124285431 137274761 12813494 930629294 747205060 826754336 111105184 841510053 743861738 800624356 494864508 708756857 626201591 694998349 449049403 739535935 93380581 246945924 210694877 253588639 199801326 985677248 112604869 533703062 389469969 976331647 665695184 890853533 532586863 664277668 27564912 520055590 442745771 973256563 365254496 884611129 822867519 979032997 377305264 699701241 245542403 773166950 325107109 772181256 631934179 862987774 25423719 234442172 47455040 511328901 439499398 846227426 51257153 624564466 334410714 845882135 42849755 169315697 160629908 407916780 206919687 304378859 298820922 565812048 559643439 797274807 182420196 719131131 68233591 288111136 127584476 942357890 880963523 988505006 766929785 933323208 299791611 614893772 24523354 367272505 259199148 597593224 350998449 427368742 357037690 364187778 46215762 280747858 146632560 956318711 7338722 225721650 101992150 636986240 463258405 773227668 439458823 932416458 93823532 298519187 185263201 936832433 19341064 554672335 463753072 721154389 521743428 730597684 433831127 747640050 520730584 974311553 688308665 987885459 914049138 999258719 968242703 970812447 924235141 929186888 921604049 930664454 649697639 934340972 251048050 907349761 755965259 888994344 44550584 962882800 654690995 817709550 568099109 620642194 96559395 683024838 677038324 761805242 542837481 680337275 244200065 251020120 87005762 158155926 102592634 988453020 589508605 863553212 468558133 964852695 285932935 751571949 258045305 415001784 412073968 852135650 764267974 983114557 706985698 794677598 449246212 453458903 335705435 928990269 565032404 748810706 499352145 947374512 127442735 509158565 152148929 688910855 169468998 806770636 786178824 837591823 603149991 853523018 526491589 707193361 658178370 782799023 600078277 969370799 236250664 917367390 507699661 574042440 247677806 288187533 159278200 206630235 42677282 896686085 761394592 988023885 323655491 708709082 502234457 518894001 106990091 340676295 232905446 585881400 15096388 907058088 112894824 490298853 107077491 460491336 350970182 563557154 201895431 452726220 278902268 404251170 328431792 954294077 612688310 968364447 387816070 461347959 62278710 656207917 267715908 445581137 282888434 716593904 370084871 389926139 190077485 762026337 446624748 932858870 110883907 374008583 118178264 307904583 104512525 944941569 598188732 598286220 434475097 475908000 69652498 658932642 382368822 858217168 744581432 906341912 657412777 914913028 669498862 820954953 192118282 222630940 215739114 226181873 206880989 619635087 439981292 482113876 238815114 921621863 115227040 779112399 439842681 667327494 57879703 836677364 591291502 637687577 473713872 602657109 594449392 937391835 591723839 613832420 92488298 977604202 900365891 974216935 685816033 759584846 407778458 422229501 420406039 750388372 252333304 292861648 15268894 82438910 76827093 98167755 46502622 579972620 9147921 170576255 116516392 992485839 486990568 548081474 100929738 583957227 337893773 510858536 264768556 678964258 72621390 984874936 258837162 663842806 535945407 997002387 809599690 992297528 316411838 571226306 235379195 543916541 101240121 110336725 94327823 138919371 91967811 924809868 4298408 612132415 152302632 385826450 179474322 445271911 364165570 830687735 505121175 682266616 327519006 824536446 322838580 969850723 190804444 780411744 702516896 946782415 323192414 944834184 894683828 901081235 627903705 841455085 670131483 843262921 526921764 979055613 466830284 717159606 327887517 879124446 359374355 771715297 389322275 578071042 404042093 765534785 205011560 602410231 554504178 594855494 104340246 566550856 7193445 169326699 46535510 750939481 235019253 831225972 69634407 751042642 490861957 782135856 427778605 950194221 58869144 816142477 327102660 942163063 612188352 754113917 316303484 652942772 224556541 990211166 930568314 984001851 722745788 731650055 725839682 975357803 297331019 830099221 573588022 704560774 383580143 424805670 250959244 429064781 275002851 721165409 511441857 959370531 424991397 689333326 460161934 776806299 573471111 664322366 161526651 781699049 565624769 665039789 104871814 886036776 497016594 542549221 460342032 543932191 94981182 212555809 191971578 579635122 418765626 663183973 381930114 491278025 67115709 88599828 45609430 810846523 782867014 889469548 377831744 940358646 648924198 832282486 701981428 707399698 590767083 976700039 332897008 363780972 332027323 834105179 827620473 860426663 722463151 953955292 215088416 256386777 128035761 603196392 491409913 783460604 23721999 422220723 210404207 592077739 75493503 801395422 212146325 958920826 663118856 916637138 382549872 919824784 698503236 921775536 641900440 889945163 300615516 543700289 125458060 946214849 290971155 869288238 21633798 997578351 916098454 948966184 153199771 542929704 363625228 988189301 316642888 814599316 400327193 771735392 198219123 525885505 103794778 641521065 37677832 337687792 84321580 948990568 297984681 599120310 375943484 809340451 540695523 927604621 616006241 842511425 634093232 987669544 98590224 469751898 222815340 373104529 34519635 244102007 142193993 833760901 129275794 272545956 118847845 207645256 99080803 325674379 137838965 296186443 234608861 863320396 624479001 897992212 78689267 827544115 289147175 724132828 490864258 986322888 409594451 878321745 101633619 972843239 551129564 745580980 372467212 379160840 331001348 624273617 596897237 672424089 98931136 272054403 181938982 644395652 267454803 977900626 226366220 260038952 174393754 877522033 585637519 735859195 15352090 642761982 413599410 514292959 106130639 326796136 118390396 625612757 330921440 911946537 579570821 800031078 488996216 530511323 248808168 615810785 212446384 964139691 426186581 699694357 47532083 461201183 208703686 388491044 90897014 913257979 715610403 809892898 600954322 991281410 528078274 880655286 357832614 979396981 869882971 898995194 216708808 430079348 309611796 401397020 224620253 366877670 240094950 664391900 39258981 386892217 264154017 619582194 34261622 904187982 647784519 840904451 542618859 786661750 515588564 715271489 525994255 920875350 829117077 930358922 718777836 910231094 515288403 954943056 867451961 909109418 70400629 804215859 128945676 168126423 24338616 936762897 925837006 948905633 544857749 945642551 578733703 868834259 337718196 893728737 686301690 764345865 700313000 818673236 39171552 973420752 888892591 894639752 711585516 719919062 59160183 170871846 25430008 315790545 69070435 567839755 416093846 874156405 394544024 737500025 372733098 838434218 201737287 932138724 822572364 847824272 834885928 882955084 875690820 875841098 566570547 839430919 54517211 696457343 696357596 698256676 202476265 230095995 91017100 405193287 73304697 585218782 528395117 770183319 405566718 426496390 30145808 781796585 472704091 553697802 497744695 798167759 655732573 956451421 467129299 633103614 333316048 362842022 160209199 697178386 530446737 787541530 714317196 724490231 212103619 796143341 352195113 629968636 298771861 870237279 597619302 632142175 319328323 356998290 302712502 621178986 474728380 923622757 630829522 721594233 429314396 974975773 512805978 539057195 203778780 937615085 281061180 956821557 89409356 375577593 373075625 559461080 284368888 903796496 17522722 215145467 181856482 725882522 300297513 885216408 687263097 840783912 658266265 829738109 640643991 939256895 892033551 969966896 941930852 953646227 288929207 675024225 646880224 919190211 904462129 969117118 290422988 846924548 232804504 663435885 104453559 789608142 623757867 971502909 421779217 646633366 26832788 144512376 21400700 51985331 44064133 257171854 71995041 292754738 83641277 236792856 193999180 657507417 335702017 939020308 733397220 736420792 638113996 765206403 30547967 368538231 181739439 285807719 95099073 819860045 80587827 856018185 186557295 902287920 808812704 924879683 464398686 485142534 328703434 385392460 75902276 450118552 228720339 543259093 256984782 575368734 235589573 531796706 376458489 639911192 526709684 862998688 145263438 946047609 911148648 925898330 213461099 453830959 344281223 559764932 450627744 918062323 112343272 198152482 72560457 849037540 843773185 945027858 720164121 760923889 123567121 656000547 544455703 733766851 374472360 647239466 240453959 280601272 109705543 373933148 286894364 961631764 920932749 924662103 725608548 751724190 324465509 712526032 42581016 106530487 3696393 555588764 368878347 525812927 481839806 861700279 77451304 752501671 522589390 792575746 762749181 885199671 282885073 462297919 278361486 735756679 178746438 858024854 122625256 227110912 63390320 817111046 120200321 370597421 133643679 625187078 274460385 499896330 219073828 994208085 463482182 511800796 140277735 329284052 275964643 997441087 797287395 902243894 166208131 226782605 215850280 257698826 142824951 170590615 149835016 794522572 114149732 715220699 188151664 281717357 175638269 518198388 364735203 757374088 43830787 740998930 494829769 809698609 768411511 809334256 660261257 920855241 143263521 747074394 175742901 725182032 347189469 712303966 244199035 286882533 81182717 723272286 19528437 360666062 26250288 952018574 96290031 821139830 631190853 778764518 116074161 939983166 458926510 641992382 380618316 600545752 597503642 770806819 276933743 375907146 104736708 297144350 283090478 925283723 722192625 837837907 480467017 552319503 154113748 866000678 385630718 967962399 662333377 869552851 252031386 874302289 774024628 899350758 845626005 883743668 334680279 746219621 652640529 941992840 928788700 999150622 323205465 588214903 408063180 569330813 314218534 660569839 83047126 470838257 383486120 525350347 176780482 360036401 198040724 369806561 144860270 682671928 378906951 957428570 87424390 963629863 535424296 897306275 562994494 848731685 181022202 311132172 115955562 857571528 278883431 446086702 100343030 256848903 85550065 648930490 181379565 434424858 391072313 666747019 518416133 912846321 234752151 633892361 558549421 909369613 699110781 704196496 607341564 835978084 122514367 834812723 502847239 631419909 369737647 510382627 256360652 772171712 386434042 805477765 760719293 763823409 146928213 255457846 195571338 576925657 544907931 584592537 378273212 673424695 458608835 547376470 96748597 181009654 139792591 161563278 137477258 219598054 180792227 791772107 569027967 734312169 94248826 315881527 62857041 144153445 46735566 832109608 687123697 706636058 411368507 579883362 323066343 753947718 150954528 688024861 480469837 996792010 312921793 372334330 321267984 890510725 759829381 887204568 420661931 481788352 275747416 518502208 217026100 312560629 60779224 748206087 131159585 190642653 56456001 86643710 61538170 86488639 3783618 530389573 387516814 604684306 535663672 948244621 624830539 966346048 719013307 979926141 120492819 176527679 128574040 252900609 178429713 270089976 5374345 524847455 431791376 686062800 354076302 767641378 198317357 981103646 101248966 519478683 184229804 200040259 145729019 194353507 91784389 598582889 302292856 873229017 659284698 791869848 117515332 156424660 42309421 722457955 415889108 954049053 478225915 591374153 68414294 636588195 59621083 705675448 346503200 772278803 529721681 797530125 110479627 700726126 656409265 745156308 496268048 514253924 478502550 699019209 465170129 615263382 224144228 238130183 209320364 262093564 252439508 263116670 89462428 704016543 522319274 949102534 619198394 758217593 40237881 358315441 41162302 563831998 449357979 739786153 228212776 709655799 684999565 825660216 315359264 818586097 355525278 918612029 314471716 874049761 29504063 779535974 199606599 846067796 562221425 648210487 184068083 795096411 197930701 861196743 323720549 674492696 538924975 938008212 316767272 498604985 69299098 621968281 338716091 359331643 52481300 713987704 149761806 644143526 235894732 745531482 491887626 878255859 229497414 672574168 363737421 398466384 216252120 351056892 110924754 905713799 149515864 162133859 144963369 447692477 8666892 516632167 76433762 884680301 622812575 652895389 413922613 994502682 47438555 763099197 275092981 337868230 119540810 526537695 448101061 739223010 68813814 121400542 17162356 880668412 725729924 728995993 475664148 785260480 85876438 118059024 10839082 730395146 570988953 703394085 169025265 454412149 240384947 989450401 401054716 885596056 311782423 480927664 239921780 453285790 271175312 537664424 2477426 18608182 771110 134048565 46776209 667430744 516684815 924500406 204895340 810956356 74296514 216685130 56627763 900240316 449457269 954364786 652154412 665790849 527850041 704056279 184897192 686200744 587376320 875785128 433151503 777233833 42468615 583360690 173610441 440908092 414232829 700282227 312136531 848422610 252084332 814920405 390177641 849479238 535811470 537277917 336799984 379134231 302642361 856061863 702827145 809643114 678446418 964190385 838358380 996120940 526921888 607502826 340214073 899536498 605952221 640230757 363726502 430890038 106828890 137963076 89387845 520408389 425027712 467405531 376552015 927088047 175295179 672369834 252354772 520059643 142870729 605329383 4299123 730326760 39631461 335409429 86436936 762276768 369423615 385207707 51392759 791956515 628528093 854083922 284696026 682236066 569985747 874381339 99755607 277836322 139900363 739150963 576964622 821560989 11120495 23670077 15427711 220542827 147811907 427763001 205377910 718171442 122440962 822391120 434441241 507178252 268434076 540860012 125626676 159060531 94665497 490162245 395948316 770732358 527635188 832937420 529550525 685866218 154965403 873138157 27113352 395873045 126838526 788419919 459778494 491745415 118230985 283373421 203536991 281880606 236579422 545599668 268981086 898458109 446777523 968129022 694099328 742181891 586011913 952098361 593614556 828065236 816658017 851428552 250507525 575971319 489727144 580119815 367499310 627420868 173548377 343489809 333196713 670203412 393003524 765816903 154762793 923655962 781823148 921132393 452278171 938271453 730804687 734768674 585631477 765229868 63739572 76120879 9573247 384863194 95511310 537751112 532092937 849738039 7598303 710038201 491805323 599108032 256465906 637458511 146208882 236892073 34299171 795381685 576701919 690657115 609481067 691388518 66779232 653102255 601640058 850556637 636940856 693198461 238331379 475178937 193102962 275008818 189534696 862606568 403693480 460585625 406999273 549197523 279889111 806394278 772572689 897431903 636293343 962028288 191778304 478335568 364412799 998508936 655057231 905338672 73101675 748622429 710404689 944118283 943140220 993127625 76647505 119577113 45682705 789730323 465794551 642320290 74191864 481376213 93631602 548228834 434095711 575891407 389912996 813432053 250868898 981251246 318340664 898716054 8378525 254105602 186985483 440059124 416168493 647061026 643002956 652243174 123116712 607767252 262829965 523350081 353573037 696358953 363908496 708686004 141675121 458974451 266199876 993016189 230026443 485375316 136696664 153435839 83506053 291084353 94453634 921073843 752202711 919052164 434353118 973171538 928754201 999962908 537399755 605599730 424041248 476880803 151338263 266298041 163851485 436970266 252826742 695752123 105481459 334305163 268741362 835595922 112114975 398954308 378575093 785573462 230378148 842375000 799725961 909156367 243088001 261459482 138952501 996132162 957728753 965427043 441311407 782064430 436219005 743505878 353344184 387759764 369627067 639093078 131315689 922723771 643980803 918845853 703690716 874293668 63095554 481296905 213061201 413653600 17013737 291169637 139791118 649264417 109379571 475571364 125351010 982844620 544623746 899951700 825565469 872293376 338211395 437221430 182778753 356424923 196296812 287778445 184093809 225299485 12842183 201406313 49145575 898543196 698465343 960534884 145302264 546104283 275891965 416131262 83364216 358459625 35504257 525619404 133612062 786477853 261387002 591048663 194608461 433318090 389894910 407941429 340848520 506753294 215271561 612338758 581206118 739741616 341940264 630267147 173600067 422628585 76720410 101476269 55273737 964162385 384169970 937372295 314042093 646898163 150943410 932927552 154880255 439352879 393404878 567130243 286547237 330293668 52581694 233584935 215151728 768886469 142447387 940941852 732937418 954530518 442142608 463696925 179820592 857512436 654006715 728845496 684835611 980321091 347128484 749822636 142080621 404125769 269935429 578349151 66209912 849629730 598861968 822742404 795109624 923633266 658124695 695025208 422815073 995465274 234575181 885764398 595482273 933828064 849291649 986955200 529001676 876124306 116122433 962599603 275899691 276849914 131704126 154353568 60514836 815556757 458310522 562928958 453114016 455275782 435645585 579837989 112228621 452753135 344344457 654371334 195812901 568883559 123342536 429058511 399108723 688363998 374555722 747916163 367844454 905607739 225482032 650977073 144115429 891014870 779881222 900895223 425374403 598601335 280200582 654690589 613101960 940238377 783884991 936329686 935370171 953063080 334110661 403194577 211831421 687508163 453637220 965268185 85465399 573201158 75039271 597848297 305279706 778449234 7558804 540177869 181183856 435429720 423222505 656827471 215290678 648628410 144827664 780934271 314345758 663146348 319182887 489876324 475701109 848000464 541398073 755170544 274059261 736542277 353827852 637208613 546652283 676090531 454582185 461526270 236297464 758160145 203919414 235471673 209926970 826078578 376331702 523450512 144197492 700143019 359881801 833239847 831908434 840737358 597160161 974037165 833682074 847912646 28861512 403111561 303420581 618979252 366563741 427372744 357589160 864553344 95701500 593236170 468378595 563046988 241653733 892483253 318469991 949515489 239862223 687522185 445430185 517056588 264715161 679070527 666516627 935451630 633208509 684743898 354081945 371156107 366427472 971209489 878527548 921397854 246198662 261363478 86718707 160640054 157991488 434399404 128892046 858200358 762348681 897795308 513815722 992212890 3058272 969897520 717760827 809357857 15462994 804479992 571219940 889956947 854650020 901743622 740654821 922302259 576875933 577030907 198295916 565235599 412321537 620335587 532066472 896032739 574494114 738209071 230451732 893431510 142155262 258624475 51266937 987047526 31573174 995666163 51503382 254188924 38185177 149798033 20115865 605556199 527711951 887526736 282556053 915595500 630514350 838015544 568002167 838040782 661591982 678812198 419179763 626141160 424013712 936011286 474030745 888799054 755280331 901272361 402894911 984069257 388375182 661343863 139297947 711072428 432785331 661618554 60066010 594785892 481139553 898294329 513493889 675857769 497757431 805722745 130619787 423724082 221917203 421916392 56000114 154211322 55454644 271245608 197126056 790997685 386074238 924322178 368949922 560319701 264491941 483897692 408605969 990948953 871166724 979329957 315287831 882223411 406107224 568456353 62884583 504515712 359984167 957757474 423332223 920114377 901473334 958543573 679856292 940654142 340908323 955826444 763810858 776871761 296295049 921815096 42804110 661935922 492513915 728097908 423420091 692552897 293943966 808859494 381657811 961429251 754889955 755374740 657606539 988304379 211374283 668853906 350974108 744169828 117563737 236218203 138149272 470313834 385894908 849909148 9771940 764075536 268741680 947667056 447090219 543603907 297162305 843477134 567948248 896422834 726381046 828799184 602789473 692143808 595367426 683276669 457795703 636691252 14291841 184199995 135500697 882288826 329795351 642950509 291905424 808848116 72324052 693723473 334077206 978204937 143397679 556980049 361519091 364143551 171958095 832472983 125675132 896085316 624419683 834580515 607444745 908483102 670829054 790094315 695958966 726376095 541979592 792008026 566112150 795048450 546709424 635251559 545477602 821555362 801098973 884569181 456321914 600820458 202752209 320641283 202529625 267738370 17212284 46491586 31157415 248903578 230328720 556209043 258051017 305558927 146948736 359106972 353442956 515021011 231110989 930390080 339495554 942976912 385624091 433544818 310784961 777770577 498568085 649169929 527639742 687342182 137158036 806942075 140547525 301949767 173947127 986529869 103345381 320240383 224390997 707793056 408085243 560600340 114076600 733504320 295470008 813098002 577990610 704970676 558019338 703423884 662894582 786981296 83692805 483897762 261809085 540090162 61811997 157568072 156821614 585975098 519174562 713951334 214598533 325096485 297430427 744480093 473118003 821237512 239488965 653837643 488916796 969015711 859786473 893713465 771652159 780255507 226811063 423577488 399042320 920933959 98792418 526232211 242669696 891581104 690665598 844456719 467145173 834818740 329348493 971117066 958033174 986471752 773162112 898935084 466313840 517502599 483415004 725303972 212243160 459535904 303133081 576175930 310401680 567886948 355871089 494370443 325880680 414860678 151301140 243242200 25252104 411779423 48552475 204045061 199721752 436545686 96546794 193803326 130691694 626503484 439932186 940344952 799789823 920363511 64318452 996224462 933225201 975199929 253423608 427078853 68135342 376128338 274549024 315996304 128864752 676505697 431560961 874542288 128659675 158903901 97869901 179280980 122602150 974655758 863622213 892426210 593491885 647984989 334632239 935962521 243004795 836936224 197342820 496793047 443962801 996915475 319537037 663323139 466796981 473074890 424795633 816057624 729105678 841249171 141228281 590460395 276002399 451522738 251774296 618328794 343954794 880664062 114708667 245395625 148362981 369498646 357705962 623501320 257207978 869146342 260427257 437265947 238634967 593288308 568377113 852707022 580713549 795649974 621269135 778693014 63756053 949629849 935805362 999937706 568453505 606694640 472026216 692589212 599863117 970637590 716172847 750248028 68321364 801370322 305900187 689366470 656545903 793207760 453216731 708281433 342894892 834259551 781406046 869409607 232942082 967292108 411242739 863631673 289916114 742028527 322573925 391191861 281647394 435724691 64760026 986630548 294913615 873594128 148506395 519850199 4319810 75550837 56471778 506410344 45282932 930932210 665554716 702419509 116787843 256059103 171079684 452215020 99086337 723299052 163786099 419564666 296248821 968327257 247592051 950944083 811499629 894482216 344824478 370377234 308715227 833204141 381654645 433913131 180365016 742735678 442089727 921908406 101756010 819864464 769162497 838351862 444360667 541709577 214506958 802708642 200280983 741929099 577945959 780700097 183462169 909107474 670517083 719506697 712361768 947474403 483572466 549199920 399207974 979553791 337408114 532033915 381020687 401277062 82937560 886232835 735076867 975895028 157972589 759667445 169271707 368003432 122230354 327100814 151158796 929532372 325831631 467463490 382476519 930658911 86200884 789551890 602423930 797049881 708496371 847045312 224283418 871896446 720887275 959616610 196515569 385462267 231884294 421196448 81311365 348486003 80443683 292470230 73375672 128568303 95627234 166773077 160500052 922119849 399311717 738305127 695635548 716097467 374526012 887548547 629831679 690505410 361447953 438556762 21695715 131630086 32001551 200965773 111127399 740940507 576404680 662582524 451161705 619168901 313678349 499254218 472774387 787076838 99727410 113979894 29763433 143571400 72738225 401117399 97795727 274271136 157785485 900685498 173095781 892897317 771202524 798354340 57724693 637528481 513445414 702476682 256212281 631345830 388282614 657127487 577404042 947154971 276156802 932437315 153067599 225200353 100656866 766633892 187957772 603854742 500929681 542597284 317343414 352781052 48494875 66109863 27084263 367534490 273937012 409251553 109536749 884158346 676402066 801346464 602337862 954273610 439830826 717952618 360978299 884488381 251055504 267963892 145483361 635197968 519143470 681197992 82268475 512356399 252535280 875376012 829778876 927450108 850028832 885687666 607018897 696423626 437286382 464434936 401770917 496949532 322533667 457747053 4717555 9539538 5843932 516748564 80720209 494457146 215983619 532716882 475598375 920887960 475313499 593500625 470692519 656192053 420506758 742119125 482931879 634550295 166809656 884732137 840043020 864463807 527429270 606887360 160418470 556308754 68109821 377098716 77739433 184119434 115401691 549270136 36295534 865031582 369786968 431900145 3497302 984775445 107263537 585659856 267414620 462049623 366628008 769418741 91046768 662313283 157791904 871004015 196247431 910933082 542901148 810295867 106788672 708726197 210715511 470807245 329006153 599786306 151472046 366813170 151713036 205607963 9837928 179398286 173859016 903791716 282175218 360131778 144355504 950632556 556572753 877870636 854761650 954711911 10267384 184485847 93779727 127037147 31019147 209635516 40154656 699309539 694125308 792136696 637560566 682655775 158669631 557557193 448321270 765087291 388405312 508496778 215683612 725527059 78799769 776019493 655777223 747560730 69260854 909811463 461253129 608626190 261546847 613443411 189098761 914565847 485592289 579992881 366572274 828100239 675931713 903067516 451552208 585584555 176564570 217271050 164628766 709400776 368481843 742439456 364102286 804396424 562583800 805618883 562851604 625045917 515673329 759853639 629237537 879054405 61446755 546789432 275728973 553342873 299946051 849696953 534656546 610746385 405547774 561643323 125456979 352718139 268931850 735339340 373333314 806514088 111983497 604980355 15963853 818043702 515944606 945946592 424990810 656567662 192382796 788755936 426986939 582274888 60603589 367336450 198151277 586340270 550072730 875230196 156924417 667518953 635265218 666984969 405395077 690438071 337106527 744771598 453342547 505697448 149309621 856383107 96092420 220219007 134982482 908426491 77305566 688686957 457867892 906950281 723827864 742303416 738730516 889938268 720605337 922449081 154651345 419675860 162031152 899593852 640076946 707835770 481959601 887227502 866946394 948220822 203270234 936436685 454790252 859277612 130023295 684428814 340220821 967312765 566409968 638943982 86263526 470642390 434954432 664280880 618487563 964231093 949335613 951741924 881572774 946923083 656167799 750882509 284800098 351475395 35964035 257508139 174532000 303458249 250400785 829328500 378058286 831236771 519433241 593427580 587648929 595035660 101220667 571807496 397530680 667414709 155929025 895190979 700404070 742151653 187512995 273066645 127886777 882705314 371116897 529669761 509012112 574747464 355013583 634308975 147299644 683829456 522739515 615573508 296363425 624987219 111328557 353204426 270762535 636911746 163212311 410052595 404899177 705022980 89340520 867832547 465738294 821859384 292821494 861164542 443939101 887506604 845228369 979575326 520515895 906763935 251352297 621850589 97396241 280461820 84132988 692395139 257138011 850746529 223410390 605977339 444390964 839739381 780027434 780172576 429154432 949664754 875041885 894111848 313949133 470781872 54903699 126820587 5763484 369537866 349548179 847481920 631793807 655900616 39563208 429374867 24572241 214628300 83468967 656948735 10078242 780490315 419996559 818381007 705448207 864470606 726611115 994531982 723116220 806157121 346968781 967984534 473536720 940321007 213381373 786306054 687249717 871434215 754935735 951080887 118692924 689153513 360607519 708514446 273672643 797292412 633475559 759521669 61324960 831374848 755269935 803042127 632745783 966535734 327608219 352372616 233275256 964966924 234360442 870864859 746047322 945921471 908193241 917474531 26360911 72731726 48053383 798650660 235966663 584830726 143383880 160283242 14009849 923541221 833856581 939239779 792028026 899022471 221309148 680093771 316117225 620975248 220297840 775606258 367777103 733338315 248621218 686718339 146023512 427827195 47178253 235844780 74675170 859763263 604608374 723768689 145751509 860095959 191655130 319762046 269576713 926995652 872613406 993452729 687815561 870286558 249127487 904011402 792526033 956039031 914488618 933833862 765450771 918980682 188094300 638117561 123068967 978688166 501677975 666019298 652529435 888235445 886086311 959533348 175633043 933860243 158636271 402359264 386251834 688336789 305381545 382318697 256917571 753456915 102444214 766003808 452359419 560118487 464621005 699216898 362127047 721515099 498036672 936324335 412518171 578927337 382790474 881903769 175920196 639900056 197020082 386500679 378548892 714086219 329006243 479903488 383610641 868982845 355491667 541732577 28668393 860883753 432643976 766615424 68742731 265303347 13582885 68451741 18133059 765885181 217033978 818142394 75716487 866395333 207630958 810671570 479301453 730359459 119890614 568761383 366262473 690006676 608169006 829765435 439975125 705490986 121386761 567312943 2405911 28398845 26315815 831027682 182665432 501277913 349898428 937305017 153433505 407193306 119077981 214255153 21531597 231413432 116718617 932431077 117058212 796944471 212274110 340059182 21177129 145446547 17057276 57626293 34866160 455330450 384804623 700843972 409040750 410493898 166204769 690767355 269038151 279084273 35039577 713465154 367124222 560616311 333560773 698139191 372600947 588063546 225451163 913777982 807115713 853373402 245927723 796559565 293345541 954878974 848252364 945047758 551452781 887587126 613432537 970468431 883816954 888897215 763036871 831640048 107655316 655781480 653717912 973122591 858216323 963659019 879466256 986903073 873420119 956564872 400328066 719444456 15647585 344719779 63289009 607787004 121923097 968704688 252412201 811634505 404250766 590158284 316195057 616500960 366250197 427214830 47198235 780133472 641047153 768503334 72442161 905927547 584344172 711476049 312283268 733424318 493136630 707946149 456865889 618377471 252940385 843044793 624942755 825440730 319269643 728710607 289436811 372215669 221207525 564868999 131164159 185512569 124077821 957857056 322981462 876590054 108950705 615170202 549918841 569314736 225960067 387512488 76776297 557584821 61418093 947757434 747889959 981575847 153565277 769441877 442780962 857801841 378614012 736546596 288184284 950028462 89158090 239673949 195082114 568643996 283267088 590554261 266896014 743912679 178178502 280402875 161985312 684671705 326519866 701649774 112099293 267830910 267504951 805062540 340081569 602170853 565993281 922075421 147573125 845689533 348308337 575392411 480674141 947527841 832256307 876901269 145400839 547650205 202549855 988152046 608251207 911839288 262292590 718946773 550297257 873832420 494058317 818907412 52988711 392160400 548861 799259412 744682974 826148457 527432595 917064499 366843691 991246947 620524606 980855607 810406893 885580733 645903477 658295787 458275845 863556416 92151958 245095790 158524613 167549326 158326904 330032110 78345764 143882182 78569103 978122670 569216692 621209261 189417471 866766972 469929157 919116600 683141772 999734936 616954640 754632565 251454503 297942239 204446502 943114782 583499706 767742952 11993258 722866689 182996233 496034047 445279227 891086426 13908698 448927624 113293301 316850670 145235054 300768104 40185741 795240646 765837255 966131761 938868688 959175984 181998320 673388648 326515020 621684008 531277480 972884034 190336 857355998 226844504 590220473 162715934 914855158 865905078 955931844 723363461 835127888 724510531 959241277 104636048 195262016 18560650 917600001 480514750 712409665 85643864 907465423 900615183 908426048 876937004 910171575 209017266 228229300 92265791 680833686 459339731 581066870 315602887 875586293 143836436 260449737 49508652 910683739 805761980 809624749 495048292 801098707 516186288 691569380 399918347 753351125 544852343 891755060 108326885 344436697 182073793 913224615 750915286 929682938 510038580 737241927 183276744 897131150 567940758 733558993 40506446 921151922 133279610 846958903 129315996 549076070 478111997 590209083 472686789 621021221 116046507 506892729 237260676 300510503 247222886 886042753 109771190 146838605 102888381 232158657 136494526 721362910 49594596 364940470 225149079 680913144 595974809 651910680 408549715 445359484 300180021 334219669 202278841 640656286 633379250 896335884 337574247 615918336 346845931 669644579 191595171 358183304 120533979 637179527 430361176 466796248 281154044 471720942 219220443 309137993 232832118 629164015 219897334 303241669 29617820 846214394 790079822 941483284 834740300 939001392 813026882 821355188 160791277 392402311 372134235 671141003 664315240 873488793 303755826 522857568 266604330 673141277 323032010 336398079 41769673 370998884 13460516 206652916 33325854 53430102 37618958 771670629 101478734 219191008 25891679 188819511 68758181 977612673 648253041 967640312 326292814 654170504 434735032 697907377 44154771 826905120 513995915 756446603 748004181 994859385 404846029 412078234 241026590 526078369 215936044 482118743 141599186 775584852 693905137 879492578 191303974 539453043 23226707 655976202 347305736 612254066 253684663 878891796 222739688 353828059 31110001 311838839 93300293 392154680 137934417 495372976 97980439 581077745 260214738 924229906 336815683 665553981 310309331 980091076 324609000 942418111 183655243 867264950 710126408 851224354 334850095 865112203 851973292 891172398 566824872 786946344 388641953 597328806 377522565 980948590 283785284 648813723 389533155 844454560 282089845 463274855 404579982 511914402 361213250 571741649 296535954 972564110 850578585 976448595 309157306 617495734 262282278 323761130 36537799 305187316 204835099 347776972 248724903 666964553 265586480 582763892 28743697 85820327 27248551 342215132 285818144 981456439 448277372 728747437 242473950 856452027 682847958 840158139 788967045 893271411 530858824 565744580 213075308 949558441 488221481 603022892 458379835 765661651 237879506 805029307 219441226 923447565 556931403 630426413 249492457 532759107 307024630 380900075 8133755 837904870 119383129 308045381 29952000 635012462 605909789 673930677 171608111 919720983 330093755 904175451 48184179 555941029 461571148 799128804 556240824 869443047 590809601 824605685 109230919 725538490 580704241 746106824 593801973 600182113 258698593 714965289 295855701 799315560 672365688 849412566 527630832 989797793 910172551 925079311 254508839 504556943 446998431 961489029 685942721 710559053 187185049 189564050 125285189 914270285 884898824 894730847 6564977 755533708 112520540 581251424 417957184 864705743 208230473 767163822 401403373 918873395 216119605 900044810 891413136 973992252 683258647 798226375 334110116 583207186 393309784 581897580 510968778 948801631 723332081 978707383 104444085 257249591 230949359 876153332 709817045 836142809 801799496 838416055 131112846 388444842 369916530 436871705 323607859 349442657 35510247 841192878 707607161 847058141 114123848 719103885 15537509 437296350 142357964 240832500 226980626 520792086 129278818 917424098 740058327 749637882 258611387 280603118 160646251 215943246 145878234 230693885 186116102 821292249 16854180 607004620 545400352 619040924 104870130 539308538 489398521 681920757 409468774 756187419 370753049 968330213 745366977 996885255 833227976 878349738 243074199 943576072 424819226 840960551 778171484 796764907 192465324 966672187 198794978 834407511 359309170 672045174 197954323 980275899 52887273 186422824 99445268 649430806 111732687 352262024 4075920 315074489 115171692 605640955 271055998 882878903 196487307 224461560 72024678 156218534 11427058 85679994 50520725 780214588 20482672 247269209 139184684 643895240 228842356 376618895 4183294 178375231 155592655 806937037 765105215 949568933 820386091 874014309 540530081 888471646 265492926 716459741 482718777 522755084 467848016 648503176 79958205 545049257 299638776 379025363 127287619 456698508 451448444 484103285 376379121 543960307 359981960 885807721 112555313 891567708 298114880 406913396 114319045 232532849 12116829 438396665 14342264 862865683 734350823 736811884 458638071 770200341 514739647 574595372 327260159 346520680 30664090 505636883 315404393 491909032 362021493 632345083 255270444 702771607 337784093 495191909 38465746 238785873 7903140 954128055 89608690 716747514 472766404 931917536 861388494 919374888 200674777 667730000 260369578 429940334 244627206 493170920 149284870 568815134 192439375 345450169 262882494 891263228 89994018 905180331 651494270 768281830 587956126 651290655 58578065 516892320 331516504 482104184 414341622 491683984 476107472 966347833 36280786 412273258 402529789 869516967 827876291 837662322 17720835 625486007 336243098 490943231 324398858 832557412 28949662 242853269 7359717 663519590 160920257 937355445 926779801 958281042 12704895 288556173 83632019 956422681 238325476 705534763 288747432 345037216 62889922 648924264 386618598 940067415 767362140 976099624 546329327 711754732 604981029 938010569 274391717 979817694 594134112 890873049 614306204 793350662 410166261 641449089 94342646 865524052 296722439 910506618 728779827 807049319 803016575 997166271 871792144 930222773 708390359 754112846 500539624 992766654 982027512 991679118 142124034 729832722 658432673 679296896 651991721 767311973 642500982 684054277 366230900 498954188 360037135 920111347 119590249 486156053 413422097 644541428 615200227 880816042 502125387 677776977 420466008 717433951 481820163 540412415 210723254 313096215 67133488 667485485 8411634 865604826 382941566 440211661 225328117 528485911 96969363 746743642 17018382 766117710 291719531 614134229 103515643 889431806 177107921 771059722 618964520 762539520 747291877 835195055 738765197 762575020 187582784 757448065 105906988 705835632 488302206 755195351 386977445 924995049 97634729 412723241 176139458 810772601 137010977 621437871 192370902 760798070 654425571 749680362 446260952 656168606 436964041 686247919 276029364 296272572 47913601 781333651 42496355 757602616 198936462 591301807 95282488 936589259 808274189 990746137 584158066 999758642 20206427 356950781 120239757 817820492 330222033 893683594 411058424 701780669 207813643 841192843 786190981 824744486 683401049 698042876 554053959 855780195 396229289 775922767 607282852 931490486 533043105 901995224 668365852 875728596 660558488 710515434 450641253 963879311 26118889 282473385 147527194 190334704 53724425 407564572 65019550 617056443 372208874 386409557 55118135 783273724 192632311 464495191 119349023 511458236 109884348 376364496 318294896 766459596 656362327 773849969 191328554 206212121 138409129 318680786 78346109 819103862 124568771 561172828 329359349 617508504 210512018 707791203 191929888 753560931 100938245 860082980 420779207 997646229 88991294 857219300 754494931 854594107 104360285 213939600 19972664 74793603 51081993 594115703 366682568 899004885 789706831 924708543 289122030 914920566 435743288 726446912 170907859 223461743 63602 38613904 22874202 426887933 321287065 601209109 155219611 851644322 1333216 677834503 518993075 619997903 394360877 677279802 153623237 526199863 110719320 725008382 369182287 888571624 111697678 352988792 152929303 231318772 103011900 460933964 267632306 454342309 277198764 703646345 652904470 656914398 202253795 767211263 394134486 962626639 408189733 491853092 49593998 752546068 554411152 916289001 28478700 625201727 208841608 658535814 32481438 82920002 34585981 279795437 171589486 297955835 245810872 804040172 361652306 805040475 787197572 936756677 74060661 716302542 553447009 858822026 364478257 505401043 158965143 218473850 109191100 254512269 183611603 683826924 302267195 459771616 157826337 801763893 264890380 959055479 865878082 968689915 248454246 490173308 343271394 643990509 641386660 924692910 661968396 710028631 633017809 656943185 555427579 879840749 207993418 464580905 5814580 89947454 1759787 24413449 13052091 682169954 167025494 516882737 491315679 646594930 414381159 722814996 570043280 723051414 548950257 722938168 103351789 858934980 165213491 344812953 90201840 645780052 82733494 897876297 857915541 998247163 827354058 830843455 808391467 858801261 406016647 993017872 499588686 671990221 167488866 814880911 729140564 789493538 84286413 520211853 487169238 663472358 134671014 183598619 102111503 333447026 256866468 738860669 578472885 710952054 566535023 668621273 584261806 867828003 401100044 710248961 268607236 925526991 429474115 594391063 581160143 655353341 374471352 921594420 34785085 71769531 23524965 35700257 24285616 405605304 390031992 677090274 615412217 850525839 306652809 832673003 505157059 509600380 288410844 581416194 241789311 860983530 421668753 884174168 286698499 808052687 605160465 687080531 189090760 485766880 482504590 997848648 116213624 602338705 31580855 274912638 16849962 602879284 497186003 520798156 327232527 458439517 75094026 717239945 233874715 862425279 622977141 669677027 271539323 623560204 293547153 719670062 663892157 819712705 507561764 951987995 819210886 982734340 321445436 503779148 93379549 975292618 313483256 473247119 27683366 734666413 496980085 504978864 95722193 339511155 52054534 295399135 251197417 690915095 213134591 399062267 82012282 670621465 167568476 780732407 80784373 509236552 269339864 867565921 461090252 789127059 492424738 968437023 651702765 765461673 234171005 676329633 371363822 943088816 565682000 771588433 63384329 75325319 4224427 6897762 4530593 677127034 451164837 807708601 782649373 979915791 39179435 362379158 102930760 306323578 13262666 510678622 149682968 997661744 207773136 391396811 172600580 516901452 38044833 330191291 189196329 988447881 220435657 629935938 261661967 832155949 71966214 729548333 517412757 666817905 575661849 942729217 377516240 779524544 426050528 640413122 75557586 651629603 460126160 539845272 117031698 599788245 313801977 433455201 50600804 527682866 42461155 715191604 453180505 612933679 593104965 910675524 483819854 961869588 735325308 905496649 900216203 967361382 836813928 945000450 395809243 811757953 591490608 773286198 486390005 492490043 280459134 442904749 271178231 568504229 453480767 973773587 631523436 697970888 369896357 973831036 789201709 806928871 580285304 775498509 693724386 981699096 236996842 942640555 896399488 990984820 61567026 151407798 34813901 272274999 171914582 562139719 392086878 709926850 70110299 200340044 4178382 943696665 366635737 827091624 680853974 758470886 170643923 988795214 531833464 596943310 237300017 789018320 397306734 747610013 12799405 354966222 85596979 473692250 46397928 420181150 403631662 420913025 354169963 649468049 320270088 577706764 95407997 673148255 63610375 766061038 634639776 913267072 770087170 938831393 743785212 839520732 777170847 850574005 485551397 794618757 18566532 171399559 69077289 914015502 568158450 681346836 143946989 492590536 429641426 729187281 646445076 986270132 788185648 982842056 303031900 959454768 177556933 888040323 697555800 751383008 26126423 264910323 156822893 708437696 191817822 423825044 61231592 416381827 279583786 561877529 190973838 471850388 239525274 425976085 215479716 387205686 353847093 383332321 110510426 820938021 819869269 826728600 140285351 787930116 240951101 291516347 32394223 273078237 42016829 425989554 304944020 880038266 31266482 535586306 400141668 600497755 466875330 829452748 205662808 384972415 148213438 161780070 126017645 262074714 97431158 959391667 291796241 709360122 441824279 944732801 197430978 587905452 106070864 185935464 182282494 953644323 76772656 252500838 184289917 405238735 362628158 566182769 79157100 714483996 312957471 560068369 358707709 664131575 552899092 636951302 71178407 406776871 77532972 398576595 160912073 318432295 218776188 616344961 604417463 837681273 31359421 711419336 551278837 611134944 444492878 565091776 378343019 472965575 220768910 356216405 140379539 609317218 83491670 93779165 32775012 126357770 50602788 212206081 35369055 283330803 39535360 789462736 581142990 594742644 393227811 499120677 434377893 976891427 340663625 593719880 246444774 372482033 318668462 601943865 22122481 691515135 61580450 918113466 775369820 953317599 544799333 634691039 135606638 683689384 38793393 438419762 70811242 363434148 170736278 516014549 322549724 878201212 233928456 894868391 236316951 628779338 156776085 405192977 194227208 380935425 169051731 660587344 656647727 949092097 208898742 373587441 236946481 630876663 39116939 67516206 464545 195761835 185944367 967074147 658678960 702268284 393179321 811409452 68408295 991304523 829300265 999346090 573763085 868476929 180866930 777943547 283825836 563352829 120594513 141542897 74900979 911222351 558942554 984360599 437625332 726606251 296343149 993883163 271205874 707516051 606998529 991954321 909432832 986514841 895786664 925944649 440803676 650586554 153232736 673259062 660149595 719947482 178705035 765023353 72622189 544050931 397052965 803225217 41538215 175723779 88362287 321644450 253386248 938052645 878729329 930573118 609721361 871725325 404527976 876306337 29671318 760773801 322487732 997907338 569487265 940516273 740378619 980875290 178857000 610444818 424276155 685977929 588600914 808029902 233860709 436636217 174848426 759202641 639488704 905844733 493086810 860814632 513313839 968985551 829533675 979314307 46523562 540366078 209942990 589028366 205858082 839159571 460564293 925943477 698397196 766954587 582726795 729080109 548917088 890399072 333003850 436987001 76055020 209255880 130812337 509809417 189495793 484575019 403317448 976748609 643151011 806862298 203433071 398708075 120264240 740296624 400112262 884492604 164465472 604522978 415693881 860842645 493648486 595813734 100848303 492815895 429624938 944633599 309505561 575647938 285123210 513936538 81746554 413042164 399513904 524870502 200438284 506471277 234203933 582884196 487568645 531086811 342071518 898926623 85738209 536899149 337331514 802791565 678794632 880459721 747355119 821738768 113718073 600267644 34961514 394464187 137954697 442088209 422813579 880896627 756579298 993531477 39172596 133345208 118197074 891162393 879817224 973331980 802995193 816611709 78629179 298402040 265363774 420223193 244612333 934179773 375733081 795225347 141696181 987066886 349861989 646421189 429181941 652317048 259305636 584880961 377567578 636073615 287766153 690006808 464685692 998363913 777173817 987022430 451797874 710537153 547953577 677753569 73302770 502789295 209487731 404491743 189175033 858029199 1404697 378689774 101182653 849226967 283312513 775024462 756979150 864776512 494640134 604597324 329344262 735876963 97138307 710676528 109954274 181256384 58034901 847884126 349308186 934534665 673472353 691985571 335731879 685578432 157695424 979024657 315510184 923570420 142863280 764604588 746417612 799848507 505304167 689705560 562031806 797380548 484979687 970012888 908166479 964109983 474134748 607206841 275331052 977707505 258059185 775324626 566323962 596492240 497767097 526261361 100912167 477601560 355490867 661885689 243861081 714391696 379841147 831290213 199945447 965912666 843200189 848774235 219454995 957826248 422717844 980350560 635534644 877244897 210076189 486190188 432222913 495633007 293500948 307028553 45382445 120256566 54578963 457629119 432119291 560175512 253064689 323524490 119035612 803588842 209329493 330387975 23422446 420689081 400859673 911516530 197733944 638717624 444364641 723007773 325577798 891849117 16804960 510926020 375626037 900318859 244377382 816927169 92587995 359224491 284486742 869531687 66668376 911912463 541226121 810840651 33314883 869439312 381012130 534080785 381537652 875168380 493838919 938264522 369095514 711272383 135283118 797980016 152988496 684081823 84063126 367680211 348589884 401899714 370827174 450851383 295908444 868278860 532727050 914446758 446310217 924156025 290010111 969674774 201393892 930562310 563634828 696243919 271887017 436369879 262429695 388152506 37406669 992393936 389730197 575397220 93475724 240605033 41957189 740628300 388589667 476171621 318595679 912183334 611276723 922846751 730332252 790942121 186414605 688241645 49300377 781488208 445313479 542578036 223089048 964723663 916691839 972646803 767380221 904410350 623808329 785888116 26444829 493712971 294544108 473968086 333866102 900207109 151949227 866666182 489842200 777259505 20749651 83125075 60448146 590030230 573404256 580098542 199662626 568278573 468559382 751457115 465981642 925509051 29535759 459139281 205968068 725715432 575678476 661371352 317589214 689455557 213482215 993031987 656529089 958588172 852666774 941716933 222814473 235984707 63229867 385098546 93638503 271638056 259920154 677264893 230510194 709095021 539119234 985893439 707143493 809761321 671681595 754772320 114769520 484045781 465678769 788850381 336925611 901103787 585412202 917478662 249296664 804186880 91131964 342867550 329158836 921590446 836228553 964846392 650925266 992850871 700324463 753144146 310124027 489369057 369963686 772495505 80575733 394452624 337215084 990927146 360091138 498977684 97345040 739588660 315573459 343799453 324259299 684090503 25576215 724230883 7113955 853316594 847214701 882130181 392338214 783876664 604076806 848533463 539217631 725452987 675820363 972569699 2979941 431548602 206696232 354632234 154062671 500842061 15334752 728895486 334085475 522234214 47281954 303263458 23131517 384209066 151460893 206774005 85621046 164454231 442693 12888224 11850587 486443175 309071025 741131185 519623343 618523978 442440973 937795352 214368759 483472220 278892791 318833782 97544706 442688862 7614260 421284500 228871477 341988225 218629943 345929051 56131923 999067096 576588483 874884015 352734752 747648993 343063847 519592361 340644991 500882975 431285514 759042553 271219754 847769164 300473162 559843723 257403187 374380884 319866265 672728809 237474423 524609325 126619919 169765831 130929597 943789572 804790815 912077873 412408937 600078527 235504636 927546407 139798907 999420034 626264131 935433019 843661141 875843194 600131661 905154042 99864549 142613054 111311303 172718461 159494487 370716995 205108434 994583214 83386547 324299869 157290868 477077751 240913617 438066110 160082804 668534966 631647073 871651197 201608273 407081129 62487115 266253012 94907937 742274981 114102230 305592746 127727884 832397042 74213235 901506114 389236080 650929962 555887017 911076055 745058884 820448460 714108728 865045912 788998420 947048951 897867096 942416482 95142270 807964601 673037365 677404963 503328066 614906036 351543836 698497445 295598646 853520342 661002196 785893093 733507138 779816361 684473074 841157609 373931689 628693110 273761093 300218511 265146710 269457846 106330641 298677490 198081 109166233 66232017 321027626 173975777 939903137 683230546 808752831 273285697 773662033 637621452 928780217 417024901 590075618 47645151 662114170 191061420 394795209 200761890 262285273 235686525 897992115 504989814 576386529 237795209 965567396 653349673 798004912 652023179 860272040 732547721 750281422 466928648 707934519 100960046 357544949 343356774 486386792 399800752 857623164 741919654 977271527 388772002 916043645 127627324 874103073 465700348 724674303 692586071 963076097 720501892 887524120 108903353 940900670 317670830 899889879 145871920 513498762 453962538 466100827 419868979 539859594 476065517 539020542 279429761 433289052 368184654 557490355 238661302 822836248 431710806 583831216 554003417 845316443 134963475 576981573 241297688 716395586 673766560 834488325 42422253 177620306 48707318 846556023 272371329 493355719 418674229 743413584 189045367 235128925 227619834 537322827 47828010 873891033 264938006 498964099 305017842 486294186 411681850 569980884 265669100 619987569 320342260 600071655 39385324 365428836 285007035 446387701 368146100 702207502 676612792 763498110 577333728 825164954 514918897 694483313 2403417 322108086 138152688 587397080 92206179 474438275 35895114 868335150 70465798 191697160 4872099 333875739 319933976 985561530 92985257 323473166 95122637 186692623 144607217 557993309 490106263 815268875 23885360 97423111 66633409 815915842 670882101 966542257 298586749 556402203 151460449 346878605 41148799 168512652 122679840 405301292 186995040 237307036 168860668 671616183 142592545 378888406 214554553 970574656 409111672 936748874 815241452 964877992 758102451 791760925 222325382 638434316 357247392 656928592 582140634 765213804 109081394 587284882 278981728 807085894 617402625 785563511 223703232 610134666 307129083 504430022 314843264 409278029 260393747 610209095 216549462 925506207 148214486 286508027 218642135 902661145 857762244 998610134 596402805 904095268 534561492 774493338 461709855 808479963 366520987 888251344 395786962 803387571 398031203 430827724 198116376 532863016 8136605 829304838 712106714 897794849 336088243 679627938 540579932 671238951 491229830 981487299 160626454 673105106 376771395 607765069 93871376 825940797 34827055 939710941 504247388 756381168 38348619 192005202 76521296 123051325 108642043 640860104 51229468 533973669 59572196 558892658 131901049 271620489 79554945 960859348 885426258 986818967 435331403 548023649 396637635 531263180 181937847 774096109 501065607 908811980 711804558 716913676 358355486 957332851 559843652 861667539 243478884 916153305 676872131 905237446 133251155 295555922 77636899 929003519 801231554 905739904 780474928 937320576 584813218 694162362 432940750 605419818 333420105 439890725 242943921 507111600 255501788 442864080 318036969 863758920 584886673 617960172 503066489 610998732 414083652 466273229 417687812 869330012 198441844 278142511 98667455 825543151 584530185 726411265 672351711 701962740 393100010 605271194 506469760 975757825 240058098 454613035 292870161 471512026 159004914 681068431 67796258 299564877 50902941 516442051 183183458 296690541 86207605 538861671 215570524 452578798 27832525 45300169 14781721 734663837 662395174 851428819 91426147 999752105 860137770 996295170 577184420 632641558 416608209 702256941 247549931 252195904 215180245 872036398 630024387 731347177 99252769 797026883 759260417 952909416 616613785 619255033 501429200 908457413 445582357 605834642 162070047 598794548 323569145 542437069 480964105 859999483 611391931 875991345 270246211 709879417 211695920 496247568 328035744 657208621 154605511 456516768 18013046 714888504 222769953 296193829 218069912 333102281 216161175 390973239 275479050 460496707 380848139 839049445 64131406 293065987 135055615 184801199 140068099 880911808 459871994 582844694 109373107 363545291 357254944 671930665 592772751 729441061 193077910 813938286 333719330 791881368 675381244 823759219 281010677 771556120 141820627 699309140 272977788 722270992 145013561 632215825 1852807 799436909 527698169 812913906 365649269 807678387 257711141 825322171 374828405 990420367 376734977 984236785 751948458 806554222 43340399 293893072 238016230 567788244 510067009 523053499 180162210 939479148 629815297 637681937 252003125 456175137 248793933 691392591 450370359 944292716 574812002 685299393 377705955 918152597 793271552 796971574 9835035 717448209 575673948 976499824 969377442 983495284 802653453 868219514 867127546 910946904 665082406 782691546 762390521 825182483 821546500 868113313 163626788 608058161 268498795 559778761 532196802 943851023 851772051 981612936 456261049 516821197 274948431 940270301 558738270 806225175 175474424 742181243 485800432 604288765 465823692 975928511 790994840 944600484 438786147 623566715 323339080 890925184 263344721 920084056 27537049 205652763 12424382 705773805 343872246 533749949 5601240 395526959 195537777 405434088 41845619 903776946 145013493 615563260 386513895 789691853 635894391 790395216 21615074 303321872 50271698 551200266 313942982 679786509 596894312 617695132 482134265 936551052 26143894 826466348 730754802 774269138 508254559 963495841 805390281 813629092 561578833 685562310 57996163 308950674 149003832 514378476 512638675 802984269 679082896 679579248 321247874 900860805 611228087 804195607 743153436 851995503 131866347 349211685 199319876 634361869 438837015 660420587 211277685 906069083 333362758 677356871 94558594 202447910 187318111 655212920 333964495 781815097 583357710 586348450 539415751 733301623 593087337 982386936 214116163 664010071 383828869 659761039 616443881 812975747 340061686 817119540 522246825 860043685 740998931 979092225 307548972 598746883 372785431 802294303 476461893 821308296 750173383 950737488 717832514 815654848 660011335 997618583 528099999 725125189 235225031 336076600 87534461 826804478 201025896 643404276 227877004 281086330 188969864 845651327 90205908 108256897 78187784 861893099 602943284 744226492 58397628 169427460 20185289 559821684 53877269 457345499 328048223 766600560 529846360 640682176 225005645 347247516 194464000 328759926 214430317 624633319 597742814 680417817 602951812 800515124 399344256 734646222 119829607 888333972 77074807 158876868 77618714 730679687 226915376 800053394 771866948 772009231 164061820 958560181 752909234 779500296 268936143 926506707 101060723 115296552 114605638 242205019 115910113 438617466 192596680 371668999 166216622 996452257 254623915 358812533 127207343 645475875 29617973 842742769 184333638 343342106 202632078 610518267 243402776 454960509 175718655 563941043 95761437 283582477 21286183 89785021 80733394 381317058 377103382 834372577 111378649 838287311 611646939 715880956 541464101 910454223 80339110 922338279 770929277 854967189 444107850 580711644 536422299 545244877 84423438 854190432 259973147 842671168 585786245 818343578 594179202 866994945 799752240 930324068 415579827 848868893 625129271 972494886 591176425 738214636 501095970 860370362 496619754 744798764 151046720 795824407 685383118 936303992 604314039 814513312 465282077 704452351 499729447 607414520 606775339 947371411 51705873 252247189 238493625 493544721 37370848 683289560 512860270 561262669 328884280 955910667 155504120 644864384 383240589 829199884 293278074 705825993 465238333 722294451 256763793 961559798 498717850 957267004 647245628 991820597 706734784 758269859 223114482 335532541 320053297 400094705 336695715 713361151 206462942 385030498 227014982 995876704 172126356 287333186 235381663 606341433 520710027 834705283 645176343 651554984 4951503 176801681 66338180 618170802 427304151 995855087 191864097 414361798 185709993 555921375 553563644 727089322 222493292 977962494 726407176 743265280 67157998 162725504 48647165 77914061 46838514 888629566 535424462 826940687 748417344 942903290 650766633 969664413 858698432 886020571 95833361 248868633 48887528 484635052 203589425 345637726 327616819 909069723 568640678 861467638 56106602 765814272 667122844 885313471 840749403 971015955 4778750 258037285 140407699 164946319 104087392 414767823 201558691 927337070 383931058 516796773 366322414 481452311 103258951 646922785 395822767 586649779 141463561 965751121 773486167 884925009 156119387 524820607 195808983 364994545 11148620 949251793 342264973 892834640 475413252 708227041 697091460 713710682 172601208 535603577 384540796 862742626 355333961 681322462 572453986 998860868 218674516 428999982 66020031 884134983 492340216 626146473 276755851 876277685 531298862 899927394 162286413 536539035 15289105 566763920 423611364 462400469 182753597 564389243 514015350 978649453 386078861 403144486 82241053 395960755 272942870 936682052 707217398 722357248 538377378 582037518 397169511 978554863 820886358 907781137 762704472 824779138 579891862 611158772 370247615 522428687 507580660 945633884 641988889 864091576 630630662 946285286 212752314 536820695 394015914 771639658 693166935 870314619 286311639 573984487 156824435 621542564 60144419 426846636 221302220 834953749 119735173 814090810 436722259 849097506 263381387 691974651 508672262 572765016 411522624 806057919 493116302 663691206 223951190 612850345 150457245 559156672 551624074 818955011 320141250 688731361 95934920 895824772 566070201 940830429 518966565 533869865 505359110 851594541 101742467 368540398 337202454 344532973 324827403 429147846 366099303 832171732 494892283 708383292 148928505 533534701 413156443 451274144 302461942 667356573 20566352 363234593 340483561 945548273 429533443 485853475 363384999 582086259 320985190 440144114 11951373 427657061 193465971 628250095 211268421 593858463 260151403 393696282 87443854 995172329 232645889 774035576 509110775 711318857 623401445 883773040 700510385 917785288 342242617 605385787 234908737 913199596 245835248 946314338 618733560 956498698 25200031 974476514 691640729 949912810 697097801 945596540 728324458 749285968 175915681 586317746 365546504 922437716 791410450 940347975 532881771 794403037 640061765 786965176 598425196 807955249 749349752 871942713 261165017 967819852 531829503 581100246 545995048 587262150 509969267 926253246 75918272 680631859 522614421 959795375 24276607 529915643 382376393 656433785 592910352 961591184 589826691 610560901 279569029 768786923 685558036 794101769 659026237 814391766 496915473 557825167 384031458 456289667 339975641 390521740 163844908 626747583 454525207 847962190 417567022 585441555 143074245 649332225 137665155 264231163 92604231 796300134 670717646 974624772 907297134 945253855 490316875 947365723 911682845 998424236 932006934 995478370 360284694 566211673 320226043 352196058 63103312 499764714 268022524 862225513 591637123 742354072 483978471 796808352 131763766 835668675 627070364 859883627 383172103 551089898 137301513 581260329 224999984 288348493 98998663 842885705 236898570 833211420 769934505 883580365 322789400 453263816 262730816 628428877 220840929 950781210 672077398 818891368 253592949 368803446 35688491 969059877 176960718 337342932 179337925 399052398 78673093 704574140 221378605 858485335 132708499 805462347 299157107 795764175 351447988 505547652 244612570 894507405 154570062 541495367 516784221 594123533 185369504 969302764 330642647 477446472 421660682 994614884 543287602 856843212 551624538 916837939 404838546 588320701 400135723 699648046 234011482 454557378 324537551 879966330 343664417 899047085 321927904 587337777 435855219 741832932 376115678 678315265 130225176 869447973 655429172 906122833 390865599 962472190 375184811 763067149 327519375 504799751 457414327 879560786 165232527 704905884 338414270 509864387 437867908 895692329 578490747 643250702 331701003 974854081 363181763 895652748 114450340 166088654 136551584 836978399 628989067 869555211 635265794 849379543 830745562 963885730 401114148 669011114 223192338 760434219 30230737 318401706 147479140 426767259 303827586 848211209 660672376 998483086 432639698 456112740 349543761 757709174 418714976 445548063 108945768 762887838 392902032 458787153 437853160 624587053 602810664 897497708 805969086 827559010 237663557 647644371 510321010 548470708 544307671 636300723 226114057 988541179 636362601 860103280 519783425 774118596 213297390 908332215 323080462 559548592 532066261 988626329 547968294 846051274 599294077 782998434 631513893 669498937 566238699 642763163 101979319 992472911 455106680 978117956 779469027 986077378 565560258 875342555 84892997 956259590 39187527 446124529 145815061 615569497 563438793 753649741 179489077 952111131 256804434 455683520 375318792 899433216 321317404 635438426 230908710 600337293 226126323 357971746 181503669 381058802 161324670 742190286 561946347 727159235 481419812 492409587 246175210 475041041 41188915 851391417 189616736 458903319 423343907 541132597 533805890 679137773 235439549 292813795 138472233 723604189 127115236 565814075 559112121 991792439 237650479 555997148 480457943 809629058 1058842 499809240 442294265 454722868 108535712 936240353 577014906 692982963 553669913 929752653 262864989 707309489 673343354 966039053 214261991 401927887 119657647 119899578 57904934 900860124 610101016 636000678 369843753 603891044 466586355 693505108 655492009 697330309 220468901 927198670 693877681 844258102 796778992 865367645 847552645 888354337 458958896 622085965 617760276 636995943 332918901 453538487 333648315 898476899 281591671 962544059 361400500 402761463 112971617 143093721 61839344 814808621 793174246 918324520 177446194 283357620 80586169 581296616 191664169 825732465 375483035 519248373 234556583 381913352 284649519 423386263 275651663 616069198 326058372 554231868 331913305 416820439 221515900 857928847 18932414 700887785 619688809 885686213 645776945 775282229 631814347 968406704 601542357 788925206 56368864 880807586 173444084 781990840 637192462 956591009 631358892 807715792 261662495 704610578 325038545 461226271 53835334 774435212 149799427 159798387 72494041 598930692 463642742 712912039 327257251 729395070 580192982 651396818 419177681 935456573 327833164 896034918 442834375 978876480 164583821 856944046 786697153 819281351 305666668 785358609 513057081 513862841 348741186 551379049 462377718 884571849 32687404 823549830 701859572 704669495 524656312 764002445 31067615 948893171 763648826 990417686 864316723 981327104 64230428 759045281 116213297 841034447 163703604 271684636 197730682 796021655 347056314 456631616 335500584 671689098 472671780 493083059 198184762 447558153 308855066 779696933 491420802 700056065 692798540 932088432 72098289 252791119 98021322 390855674 34029317 873676136 140072222 252628240 242026964 982323485 463227383 970521794 825747141 873053356 211651314 508873287 489096905 972728845 151871306 173534233 68429674 160425111 35812699 972066960 491237614 971848971 278764135 565867563 70324182 684874421 422010878 531765425 430648590 637398359 66354816 929343049 611673674 736597681 311242875 637666450 117518382 537358741 44143223 253923923 154444251 335642365 162429919 179117659 5228314 787298475 433747745 510999538 194220050 626297208 151253040 931665293 540926953 627583636 592460466 635860707 306429525 744160107 373494284 471711047 4575806 509438358 47428086 829713421 448532040 475446938 231790865 490784880 174762613 334664171 21798920 951975218 845348301 848867768 652317111 889020839 118265117 343154314 59637550 990066522 595867439 693410982 618945189 892528796 661403650 802352886 183145560 679492532 517504935 969775095 50553333 476881784 354508959 597152247 537572815 812149702 399642947 819319450 187409369 963274735 392905464 575213349 360790415 799694563 77164730 880907538 497915076 696431932 618760773 830372528 690992058 754855358 744501188 980118459 25124664 184420915 57391195 171024514 109601412 787000102 23285432 788282652 475839358 500327953 451254271 473661208 260927484 998826571 742701663 969373528 629081377 629703583 304123303 428018351 408288890 674393110 445885028 551058251 357637802 513149516 142471988 881285905 41377391 668292697 100238227 562871605 92278467 935219848 811821263 937901408 352169211 358381733 137420785 986231404 244970351 549107362 459078232 894099169 274859164 499270376 253645925 467861994 210113232 464041578 133699363 505883609 202427806 927553775 15430198 145960296 7446952 789597744 439307272 910556598 117490373 793521489 240437864 438662210 268582360 951921612 297131060 962156757 542727758 948608612 123454443 535980591 403463699 413290769 61754536 452590312 365757984 774404658 677588265 697493001 241292518 948463033 145666278 572187875 359141962 457571387 182529099 430934798 29309996 916907103 126515949 248575825 162431152 910252363 559068768 936564779 739249651 901767916 819281611 897730693 72886065 555979501 512456318 777539067 143826413 561686233 409609265 781827113 386733856 643426388 139838732 670483444 563147406 767736741 8966222 783803452 180565145 832527956 627839732 712625491 290968527 705065444 400960574 549515328 161200505 549847212 373008512 473256257 273247345 650969946 376502395 523114612 49186882 726117188 677007433 909493347 296259303 824114793 555528311 884811266 134455406 359897386 59092245 161108831 155213112 161924123 67434298 88988507 66098056 676990796 489413952 969934429 375580623 457759925 370077609 571470490 564341518 713560133 609329828 833257086 72853707 527113762 68672664 797480030 180141314 827617101 824246489 882498472 686377898 869476619 376521407 685413157 660458835 762638306 143389600 816148271 10860300 500920405 362513053 682669231 506491952 822513192 184869192 338394660 19761662 396069787 203843214 690339659 302558530 362071194 38492811 67418324 60193947 619934778 34469715 719912336 694255662 799233607 380820 806525171 242623184 255850789 8128860 433365479 200191569 677786412 55209635 674055680 139448476 286287767 276748086 863269955 655358161 865354444 788623156 804717113 448730343 482980197 55214166 469000674 100555605 531459223 273075020 497079896 240495173 359517744 171088850 980127654 968174594 988973208 618787732 990006511 191070228 289777006 76474874 187863776 89020444 535143740 256519707 331302946 162453 3860729 1914384 815331458 613467898 714669398 458661261 931079053 215136859 304166942 228218370 298169743 230733156 452427734 427387422 970374992 762330456 998871769 317309841 860354830 711732500 886106898 115459318 367870100 330309987 536785985 42825804 991844296 492803116 914437388 209089651 420128102 150704642 861143488 777782745 823462084 254003355 693709535 28833540 632678473 604866800 669204070 191061947 382296101 37869064 712950619 280581689 767471501 402616985 943406153 685453985 865036933 96301288 647879452 425723514 583956293 85077670 142525345 48961339 632351385 369548019 377479840 5739515 245993674 72258640 701914585 80999275 305882080 90333525 517629325 269943824 324566227 224904518 565632180 459653824 827679944 630752328 739936943 63813076 313050971 293018041 619526312 501063062 663232086 32716960 473023010 152792671 338008592 63619354 120324930 115973087 913170473 494476568 718376513 363443671 887831560 778315380 803679543 241814408 733704718 216867574 659846174 153888666 154421445 17761427 325824311 325545665 543587035 39922557 756467973 328803335 511070873 499132994 782239821 330085195 767867082 653852410 796998022 735954028 922750076 70203582 553580435 249145957 439667249 180162941 443532482 135014794 497327811 288775432 855937269 220679332 808479495 41421958 493054449 150822186 662773221 336701198 359097075 29363812 714131006 518978059 667315502 157479963 534786071 92890893 699254142 619704437 693006479 580870301 797113621 343002891 770174048 289111293 543154584 511816178 997334713 406378246 612863384 468465569 532951387 387687309 738165948 600802912 924908345 800036961 863906066 58741850 596486749 567003287 725538919 517342133 802957667 347863475 951236491 912955873 989415749 258968135 493527760 489930313 912266523 513963284 551104666 279671494 383042486 353282971 561884774 550137040 761062443 232132013 299922235 75796443 350818307 315514625 589129530 341060297 723698029 685250866 894620805 545013245 901333167 816927872 834817683 213172519 386258028 354203835 468252615 42928247 411812401 265885355 916334242 157163091 769429845 517396704 552912757 254003389 936278250 22402226 102090113 84550254 668578206 50956644 102899662 85979222 276090385 248120166 740055490 395958757 795907042 570869243 608218599 383121044 556707902 264630864 410444584 170389506 525462084 19773194 464279553 342071108 542587435 490954323 986934904 199228482 558266533 183547037 531158882 67065368 305655185 58934932 175540455 171238391 561714436 558335089 991621399 763595111 954785938 417265172 930394980 85580507 121014034 91740638 660427546 660003266 923256521 677072824 845927855 342966853 950158354 871793324 889333486 698324567 850591542 13850147 293903539 206815026 675426698 503845668 620226340 460243402 824737650 613678130 789860595 451178202 681716683 535388616 983460096 125320235 188187021 122434203 677514034 274486659 527752498 501626123 771759766 45182962 223132648 193249655 537388499 285946795 964184966 572317540 986558574 408785622 608864331 47797622 812041976 327727912 398472327 127057522 417133497 204009882 209525344 46436352 973931907 720957360 828601079 194852168 500455708 279909998 319322096 52560007 565859059 494981571 796159022 278500858 383168839 117837875 499179906 174863036 250614980 77949793 901009360 381773636 562089550 327817268 689981898 388059557 393950976 359202914 575069166 386010812 977337348 434977746 721695300 445235378 565019904 351289794 712233482 618609950 635374514 5410091 22989302 20353062 693304896 556335211 710373487 60311477 583245280 49607367 351734404 282422668 747752629 215207224 346342095 312175355 479212169 120073668 645808409 152679154 243179822 191708687 971131220 222137696 710237149 112049961 483646176 12335505 786771302 63239934 285613228 232602329 595922508 380541251 501150094 166965037 203099119 99071968 428709051 382327257 665458451 39954575 999030311 129936827 186395472 16840258 994797861 950938219 992179158 610784113 766710520 206773506 276974926 259962409 584395710 569697668 621500384 238651681 941193771 768103827 858728127 522529953 976077487 551515521 974847000 253598328 593129035 253076091 522276775 319279691 369487506 305744206 494619532 105685761 763504102 49341688 319490741 172065896 403576046 7998078 155090829 153264533 266231170 114760113 386801466 154599996 281203671 118889353 900031859 845969833 916633584 607999026 614654331 64237552 633589217 540191281 662635532 189407608 209262016 82374838 570735530 63463120 446289535 322849623 336048138 78078959 287071714 231238287 874612517 728253607 797694208 652226567 910922921 57592475 828737094 236592691 640610224 254087021 708402720 147773639 608941012 170090000 615786893 1981724 412075840 108345759 545028127 264601521 638176672 458980530 950499376 285006557 412561904 403668161 610478816 367107817 409331545 199160982 239710255 146579727 839358621 101436309 306905861 193664831 960146500 342065904 659814673 114818090 175702879 161572953 669353046 667966517 805753065 766454190 841820128 452186044 531956527 413012138 775863091 685772510 735262098 80378449 992065903 920757472 984805569 841192668 867519186 773794763 803333691 688798492 746304267 665640161 928722035 354956657 674019317 161167187 565990300 522232973 680730926 103907920 841474715 340274034 697698329 81834040 176695160 111546412 823536363 99136265 377116043 368416050 707488562 292690182 686923203 277090940 752818902 379682145 767289847 614243768 816571556 228253660 810115763 379733081 403069978 368806291 511242134 109408143 442451452 303288730 597035959 396067171 710746003 240928879 925857968 194329925 774733264 360518872 912193140 664519954 894986478 275799472 894916748 23785826 806814887 676992053 714385265 333171228 398748553 354081216 409604501 148815318 855988845 566636097 867481293 387081138 893745253 43538213 960503502 801971355 929612036 205602386 303099035 53712982 178989981 177570579 730233932 184748795 191017066 174655878 748030844 220720248 651619043 619189357 768496900 514367371 671022810 435954714 486009617 120564367 681159869 378951340 403980239 309363630 494115453 102483579 304841469 140694697 402619896 88486948 543703609 403192831 620431495 171591781 864720381 218637405 683446185 429464287 869305720 605008236 778635412 307233886 573020510 92663228 311519287 38954163 975920548 615205348 663956884 166469517 354390845 228851075 593299529 503812584 741776695 416249319 604987283 519030246 619912663 281505111 755696710 275151879 893265179 17998073 811151604 499812692 835149371 142812461 612894068 255948557 622165139 469858512 998581679 502004643 572907265 271070168 359823235 247799940 391299363 346601735 736492123 387679793 601362954 540328930 604031514 600585730 853558189 509252402 713306250 709303932 710544767 567952182 858127843 145848615 805394184 708618405 775468557 404964614 575689045 84820379 146332333 104905984 154177770 150839734 954001281 390317110 452719254 371786759 463668188 90368235 573837612 249744128 293090991 139794346 952290002 374487894 825503951 542201231 806514311 8676000 937735193 353575520 438549674 131609014 247774084 23853174 347020185 25693237 763945510 446192932 679264174 56899764 622890064 134593348 513799872 333192585 503656550 200656231 408378914 108777270 727226327 26214529 297674307 119910757 209877438 20599505 476817695 387310409 881315262 388267707 696467605 336176304 406035791 330927049 555124964 241589898 707234816 388072675 398918231 61356489 764410678 684062030 913643628 559254904 931969699 485787156 597847927 432796000 621836237 389332553 903809258 23042771 980070855 720549551 831066465 550963275 664752370 288534413 895460626 261731432 934376078 136445000 556065406 535348272 711350900 213581785 378494334 76323782 242434979 65002202 978040598 455754614 900316948 819488428 837791816 341971032 954476712 462082790 847768259 658365440 717534587 164391075 169627522 28411618 187973614 140027304 305028166 169903259 727566781 464587445 913598888 439900692 545323324 302265411 982695985 51893613 189807477 83145029 83543803 55829441 812385933 296765885 497818543 278693601 434166638 150855763 692250602 162415413 465074177 71142562 220592307 148948120 569236216 118735792 945472148 233615659 848235159 779601567 929298704 195617729 803426768 97242410 641172310 141107264 628181903 109357743 538510745 431612692 719484355 302413765 734417526 81302449 558896012 453010573 675488507 178575336 834907365 137232470 343143568 137443178 665335860 292384320 561882797 28969012 372128671 216764043 263944398 250688018 322945964 20735430 390862396 203630375 762472771 761012676 860015527 88595731 401440150 59341371 876277795 237394922 837037602 556226829 639655339 497978109 547982264 3385337 213511554 112349848 552417691 266427851 436876165 413378940 761566084 401381510 768218808 738076643 887400239 271049084 668496108 368092426 865757265 680793788 750071112 489007406 575176383 119770436 381408279 55855423 998600081 711617807 957502176 834171731 864119436 75802110 107122557 27226635 423533631 135712354 802458183 76010197 815199345 301726211 871853441 842485348 951343581 10960700 23100503 12478439 991509211 981179223 982780793 298487900 512770329 30646553 577210775 414413948 604342493 314493223 737525090 199452941 624000715 279531413 767819846 94038838 753208333 678700984 787095363 227253362 296195933 73351610 541009773 477904833 663969047 99137431 473541234 77310743 837272885 193996216 483385425 140008289 438243212 339936298 847276205 198397976 425951350 72131398 712090348 27601421 978774459 469463781 760935727 690878612 778278655 77184576 984886117 430125004 535333219 424903501 617190511 502079081 718344776 478078145 492515614 238916346 425662102 413526352 575234379 522964850 892463092 113352357 910087372 850862803 963271872 419512218 663756330 261177551 738210086 649430929 742424557 375315647 878318585 675468582 937526870 802028223 878100986 332519984 387291479 109714399 679882101 612318950 958576800 706660867 819009219 363941998 580372859 455395542 628642506 211127591 363997594 335732016 574868168 280598743 949220565 234646143 775537371 581355029 857269422 63145240 377501928 56681012 643512335 253621266 548079670 188096604 721641955 127351337 922622694 225325569 526052119 358887474 771865017 107035772 497691675 127852279 899940963 174183837 530967720 114703202 187609092 152860021 791614654 61273650 917060025 588716232 614171959 517174303 862824667 692469772 874411147 481429656 831339192 58495450 299275317 288546461 574720673 352949449 406956513 286023231 593310029 402269280 538094486 512012679 565504126 17713081 497311750 314666413 600504802 473358333 521503750 91954355 780216771 298786320 488222633 231106992 334336264 222335143 326806927 203719466 716828670 263983226 730412910 219114977 283798155 7609922 630379323 228150857 900724082 794184774 971865234 947045969 969082356 105051294 488782844 321490432 356553542 138584374 742931099 92290389 212002295 50934806 306391283 58595485 699186166 485003447 964010377 756301139 767190324 526463703 745690409 514806029 881416059 486337867 663313371 287443101 990198643 450347553 459229942 370755212 787849911 217548604 567896159 354654400 434797154 361421970 635794521 550059402 628969442 184786197 285300016 231040971 403766363 34795320 745062868 111570064 987035301 490580807 855578272 305676210 531186868 316353488 414509321 302476957 390384436 389709335 750193699 371676283 858187860 588559558 730695940 253130696 487758109 309433067 623229608 400600359 964419502 355505996 652037778 137268041 333059916 304669230 815079092 471568769 938862525 127252836 513948272 290754142 557871038 529975675 888454712 580705199 691023644 367207508 625643338 194339460 806059887 25991509 203222220 14074924 219691755 79433282 305613692 229077165 862454316 746148057 772906253 600812443 709362243 218113594 269418166 121477539 130522808 47703028 439050874 254504926 649214377 447794178 970703829 380766232 473509118 162871703 578450049 405155818 731379275 638886353 660507013 521383136 801043372 76731594 235601149 170529323 837587865 382206715 825033840 557724804 880926760 452554973 958603821 179814071 446902517 214383710 956251683 427517442 684528462 518652539 679555525 235021471 402770979 12184842 113559589 80424727 695144244 599514063 819723058 290995802 864395698 654099355 870227071 64996845 936590882 832462067 950930085 235331350 970889699 622218192 868493952 557656267 826800862 571229993 889424300 69802986 596870558 290261693 972294725 917297866 972210636 956651389 995872789 336306355 932747627 710854964 773236996 697579667 842989377 21684105 262949374 258913432 938995124 473402338 944634750 491075632 643923447 618984776 997127333 355432056 992719511 739302661 969227117 161320404 718074824 349491385 365507619 110296039 646862604 403556166 947517339 812403234 912949007 467337144 526886259 405088152 670960281 174518411 986176585 225578505 962941277 448279459 610933546 292395957 533129335 160210121 330347022 117060933 430636872 346223768 735215360 236348419 930938333 87740801 715433366 544299284 979208939 288225149 399658317 9182029 179430881 176636522 370895402 213786085 740691421 495590938 776938035 12021027 779528835 418749659 798539355 592199464 775438998 255406192 593891762 80475995 900327077 615338277 763349468 425786064 983693872 866373641 904221210 195934257 699260008 16084650 532365371 66603397 75362998 47908478 699388952 615822017 720683350 456314942 832131141 531280078 856243016 222620948 479259227 271962705 281223691 14244399 859005527 818702946 881426093 532331626 535941451 176773036 183431364 19595162 479081599 169596415 858500331 662424532 673450953 163362898 664340140 371498439 415266053 71883165 111772025 24230398 843534652 236055785 873216750 75068725 555558021 345499302 368270891 345446919 887882354 616467468 885668294 168823430 247059779 138926823 491228008 418749578 945090128 929939570 998171077 338310729 511273062 184393348 330153880 269385001 871607271 355012118 617711151 82502212 388594017 218115429 218509126 99724367 585260625 332678961 821891491 354154662 921138482 431455244 851827069 88015910 866884060 490053852 718645946 516466421 906397375 393464889 967206747 724812726 959193912 563969092 737891789 105099875 501629830 128427810 260472338 204510907 354033925 321425527 611024451 292116934 385355025 339746690 582005593 61253062 593583973 416632864 418799323 339978735 682535578 466094126 889193911 591151324 829399256 764940584 969765299 331521788 733300298 349999823 644403476 629724469 927002723 425787641 509366800 172148559 556877617 317790251 423722992 30624883 779782667 128073137 982437964 50448857 914152319 467946883 588227586 347783298 823687746 346797678 984532337 47606083 964948629 146103811 304521518 191106692 673099027 347879939 377322897 112275373 987565691 19715361 663881735 647985133 970987695 259421757 755783226 367565641 685664161 406032241 893309713 55282753 97764855 86050510 666046161 553422403 982513560 777692289 955767689 559374026 613021485 419599363 831169719 261395164 405714098 268700915 607251476 518264502 551312465 504933306 967089997 892524305 974347563 157556146 167489176 42956826 894434315 633476133 875332996 45199930 510492728 459402180 635190536 85825074 388224303 283693198 746597751 665672253 829009106 308758864 555946730 539383937 651699528 100601616 132944884 94209478 477905069 161699762 713710497 458197294 653112228 94446025 813938518 508003458 940717377 425684139 871761509 84668439 890990594 612022663 673318621 212552013 490650271 71766247 74024513 58001262 129555280 72479144 879863207 193972623 604973770 107665307 183413809 17450165 873862309 716188019 950157823 246632587 449480425 227471112 593389119 103554672 990275634 43273742 87275220 54707946 139830382 66582256 173909751 135676551 946133760 897277274 980942633 524396784 909119673 132045012 205074424 129354828 720935009 155210359 803463791 259839074 957608207 35461804 401566953 332535171 501520204 358883130 980874862 421393375 510831018 19424766 83936267 67087082 710088045 355799933 632945108 85666431 933219025 178342430 550691447 87532137 743638748 731701974 999646782 275551500 697446243 684578931 792517327 88749103 103407550 55518004 251969002 169110258 431400850 11137388 674218715 20019982 986310810 300784257 853706699 590481171 703015079 415079741 706910396 314538825 639843368 528242169 738493486 55731557 722451324 602725913 606394925 473380789 660493998 7908435 605285132 77503949 591544268 53552539 554141379 468951002 603339060 379910667 801991916 355371381 402047871 389560908 454584614 372576779 394748014 154252059 589376788 396809950 836770097 630054541 792530776 673145811 855829782 348666299 676583952 209779142 703984381 205987960 805850015 300605192 899592883 79591843 898573258 810092638 810503690 334330322 938550314 663161730 790378262 606222725 974338475 72159227 347390781 133349921 899407630 420742689 826617052 483835045 824752219 803224106 992076820 523004459 616606745 422963453 631930716 211200359 521403917 520342668 858150593 369313406 433879585 309307164 740958532 477143795 577599074 557391551 904328031 801107000 970436408 2325131 851491639 110104445 737815125 716933613 755389519 678840764 967710748 276201884 796271008 442306666 453033332 173257097 564883942 375307468 917287153 492226349 558469383 77628331 764520797 361174594 829229931 9122835 536051694 6488102 553388209 236396000 936498163 547736300 824201747 502488570 677854177 612309583 831915032 828501315 922807876 496741975 790071186 187293002 553018526 14468678 175634014 32248218 767209655 762609761 814170054 551798008 834692653 31775701 975347663 682994983 952595482 249489648 803205177 468978262 768039549 24385901 349454735 50040868 505339110 325133658 564201681 85902936 768278312 367091073 491802860 43752757 506481786 406200134 791061689 725969457 876495699 270819205 500934935 247614741 447180915 123238949 300604050 89527258 162727091 148909640 771713278 315351721 657146457 431120945 743216026 125704859 673368247 656200205 965200291 799247997 983247365 737645041 741612781 9458211 481778087 280527592 544259957 163965653 243783722 226768706 497352357 135574756 836632740 142368811 600567174 471800668 740784453 293344283 872957491 666861816 770294072 144433999 896701493 750330074 961989935 72450388 112853439 12444651 825597453 341818512 586835391 131721820 682416109 84372335 295347183 145773727 873381482 853367936 991469769 723031991 733230209 467789592 708044001 294506458 356598078 143916383 664118296 394204043 545480374 398765468 825726372 90892182 259554430 193632137 816737099 295196369 819772335 735293304 950790512 104051600 668844583 177192408 597721204 480717185 579174502 388942912 647797368 90178055 120148327 66047947 426435068 66874600 498695582 226874645 661805174 552283335 627007778 40676733 769556326 555686788 816816683 186600849 609655766 48397829 220963061 147059639 258414202 27522079 421335560 333498459 747979389 294709243 682990294 481131193 734835887 640026183 993973125 383384713 427767907 79778305 535719361 412874701 770003327 682375030 825567443 286256563 813441581 552996086 858783421 804501802 935676644 286876014 653567218 236677973 919842278 471704134 790477796 602423010 928509903 609571606 841505307 546029708 735925600 684901256 971321803 281914987 798531848 277667794 695288219 385398954 870497581 17289659 473866257 125360079 235223261 39231528 162090822 157894229 849631827 708997003 774077933 295885604 811961513 784857696 841874893 302900249 842488536 328195618 903579696 717937380 995044418 479104599 808303321 228768629 917580721 452631616 590191689 35205009 462056211 281115391 964252012 18557725 102806653 23897323 767272148 361814875 483118719 272341739 709854622 143982289 351429093 142389776 293574684 154788753 416535417 2987738 917462605 452551144 835024788 236480497 599214623 416883639 931711356 92498763 246106718 109845411 939646624 240106902 623610854 522868674 541606669 229013064 264406378 208603040 231540909 1371445 709550103 274017990 555956395 323254552 923992788 74694927 598559292 570033363 670284426 588134148 788764848 609930544 798629560 599784359 743845082 162886540 262104202 186910797 766155192 554682282 816126562 132244080 723160288 126463866 431766454 263524445 763889936 423965325 454171147 78725421 749324909 39731609 641976939 73374298 267070202 26389340 595646174 409186572 981897569 765545870 821511697 616324319 650656289 112883585 598202636 458338748 693410887 347386254 540616462 404315213 558643496 311059017 675978280 666016065 724012176 120988327 960590986 248839194 811974237 552274020 628071719 257440555 680764451 381991797 468969662 176811698 771065138 569342625 950086666 243346286 361146529 68667279 457897460 198152154 496125774 233302530 994763176 264467953 898028543 468398994 596662640 462186110 586833199 444945471 736691267 422673575 969538210 867839050 941042189 526663135 587303507 202534115 452410295 447961347 592737707 113680587 735346371 171178288 336729147 224606549 909936563 551127842 674705593 353578055 652246082 459547560 648981432 192688276 445496597 240712815 365232734 353599512 998413424 676599853 805666147 582533516 627182363 220298289 346433095 132802209 233226685 198109716 832242054 613592790 753230617 426438797 536705324 130565440 447351278 222066678 556896166 251416242 935756230 61855514 924657165 29258108 975987146 327339911 843687844 807820362 857215691 399814257 552167912 108239382 964271213 638090646 743470986 455044768 928347920 560527511 784430785 420863971 839371316 641299959 787157182 411015204 808712007 232564405 644497049 266009163 519295108 496719158 701859990 363513337 803158775 180414389 658196660 560831578 612444585 525249791 752982427 72629744 999742557 759422909 964745150 832129782 991017846 646123960 824889515 205077662 259584117 108635665 981998911 13525372 239856060 119184178 656833361 202131066 988389564 449551222 987700987 130540039 985187923 621229436 762987608 214472484 992457430 117236251 231871430 186499628 558415182 485792156 943538486 653729719 693030525 481842804 922821765 667852171 762486480 125357232 966218697 770339775 807044556 382329234 598663849 473915588 759025560 173836191 687853376 374363677 913660118 79918712 510906058 71017041 999002115 663415751 866986914 484006492 549592737 6058210 536440164 380100786 473106510 79570036 821669992 243655198 982014552 184296180 659465935 420976976 877440964 581983431 605542299 561573957 803157543 230706406 624464643 147622481 845726889 407295107 618899183 118484083 468292728 142304873 147450809 82145505 464480987 86914148 147272191 80189370 797391207 42077221 129867393 3645098 729862021 4876629 739298296 50239143 318046840 172171320 480697790 444365965 459883249 383405686 660331147 71429291 679863223 12219877 822655322 371766704 800777266 591914353 693866586 633775483 684562928 401257313 715083130 403534124 625838072 146749012 979434391 674867537 693047640 185799765 485660044 60304561 412940876 193156557 833613049 523396083 912322931 701148752 991821573 441801427 651563903 399521227 493887554 323479034 643079643 299976959 696634081 110038975 877031297 492015176 886230474 516721712 706982528 685245346 876963447 613237132 719318817 169831698 385007290 345108880 408428212 74208829 179788925 15985393 492553482 258982524 942976081 603624770 792521201 359217729 852353066 114475467 452195227 35198834 260328864 28401497 697588763 99783959 554578570 241685749 268771344 158670688 711894087 380698219 493822511 396676915 802442215 137247857 763926087 248598425 735213540 517371270 607714062 117576678 515565593 36901468 818885533 627389336 960614061 831057140 904733446 412692146 563182654 242151684 459898024 160184854 728570267 191352870 737070740 254174455 255768030 150479157 172986341 116073754 551171843 337419109 788286463 654634439 746020179 425817912 817078358 751238601 793221384 697317312 926931022 78274121 529451301 421182071 799802577 132958770 206318461 153175547 980529040 929628699 997845877 548920842 852419029 56547359 332128275 195349055 706278149 581218621 936516880 277824284 999033969 966036708 980117444 449438969 779713246 368825546 485367916 88405256 242450314 132077325 547812267 106532341 954015001 671187240 823592338 17808916 175678999 66826968 881533690 308397554 612038417 231413710 550826379 26515838 623255350 561214120 997437035 44303382 674010553 647879654 750279861 100237327 317542647 41834281 609154934 517485273 668833278 139326678 529797261 289251548 825426237 189127832 551700951 523436250 672231685 294483001 744981743 327140379 972839898 531970621 775058682 258701933 850623764 289121233 991948260 16850360 756910387 728761711 774205122 707992051 756586927 318685719 865126630 150987232 911043035 443490598 936614134 465662620 709136546 663414490 967952779 817433398 886285349 673490744 987571159 672007265 959688076 528391220 572588405 238709321 787829857 599312990 683878308 277832425 463457884 117901866 723600577 172835112 758653713 51218445 134335539 87679858 560276262 481572305 515304086 15385402 46231272 30234875 664345488 161745096 164959666 78851009 308067797 304198376 728992041 693970745 778648176 275864137 687985166 270237914 474250331 90382479 728014151 230761630 402966752 393492329 598829765 164380891 223205657 65077878 643137097 224068246 327441663 260412069 895892006 853811328 922114958 694148824 895652765 276035775 459784686 72796971 368482003 95331715 626339413 404398808 653108032 474289878 647213695 229883699 955561430 593015888 918635385 443111990 807973315 264187565 732840449 342125934 593936629 103302350 563367589 352318406 408764627 262209939 895315421 768645960 931164548 658094945 775823816 458871992 503364006 336866218 376105452 172216887 559203171 558925270 892613241 202350978 983254097 832981161 964442547 487822550 648140631 302086482 917067117 574503704 979113476 348774034 822931715 729510125 809668746 132844622 994555488 23712212 863829065 199298632 905145587 831884313 873464735 147067667 288494844 182348452 547619159 296213554 418378967 174891352 240636104 172874001 571483480 395556351 572030535 221840629 392166161 234626137 707140408 171572781 23903015 682305537 552061049 660215799 610813669 831793596 214282273 573103155 387375067 902774709 364115723 832491718 125711386 198625249 129744531 791598934 103322885 565031676 563467606 715687662 51388797 295048476 142705324 893664667 215567490 644773371 65012109 492803623 59584931 364451447 205841883 618268278 142538837 336035210 161000920 466352190 348612836 641540461 564450957 969284231 180381016 295042993 192615483 915654782 27384406 575875122 80012337 184924172 90190753 324803172 226629728 430548723 75036834 233810997 91210937 885303260 825961898 932852120 474220129 653784213 554563120 803817185 362786103 934131050 186484173 199673212 149242000 874104535 247620630 692822793 410186359 932201951 79467338 632226067 513160473 803889518 742107700 881755883 583868513 738409107 354532787 941843499 213985141 320382422 226580421 803386100 408802901 878291723 82408290 371644867 43730375 797585056 723842337 810434373 334745812 835225226 604147890 936806950 838067884 840553305 572439647 856673910 659240702 786493239 683042356 850472735 237053841 467151000 279610208 931051586 130950761 644530575 24292763 708987638 639063292 751308019 159622481 409523966 321502259 354092945 12179851 607824612 328092574 732046014 499971956 800574507 627421274 900980829 110156318 245281158 105578651 318363792 251701478 573774307 494421407 597891875 249971756 251905967 133063874 181529814 56370938 634556100 67520857 502869898 100465080 806931435 143202281 476963057 373692538 465654572 398062188 593453898 227512946 812743496 758370477 922344517 787146352 961956637 195694201 728652070 166276353 577433586 385051559 860833888 465139731 954205062 664760156 803021144 217976611 663180609 273476710 653474186 400553721 703733574 410749897 515283865 183289618 350346482 98245739 423855860 192692168 840935726 28178942 918089830 80205025 403709239 119152609 123068691 108309676 301137523 269520743 951589649 40098765 773911849 272810771 707210317 94935705 300091410 219214619 271222169 138711229 651018815 297602943 906833751 230530489 309732956 87247176 310181182 257863044 793823970 259023382 431757167 35168480 646941860 237290837 899827987 739234170 954460698 448478087 890176102 162243450 453555141 67230311 872046256 752587579 929423569 215493208 901918724 854332843 924771830 816354960 952419085 823431788 890461756 322315898 672655630 18276268 586314187 87708878 514676196 481251524 891799857 230963440 452082380 144536651 351537104 337840807 739380415 341399259 995413579 366875681 672928165 514782707 672804954 584028192 607720587 563485274 849281029 619358398 659564249 164757319 258419777 110302873 435601489 383222204 934163188 722460716 910727669 369073157 386099445 147995663 767427495 537930817 744009855 180426311 902328080 836929698 995245980 344512358 635286988 65145950 83357625 44009273 358009601 307945594 687594346 11456883 592930344 373798155 508508750 2923934 80349163 47609298 824618990 274229720 985834684 208707965 250181013 82863280 893989108 185071127 568816273 532000225 645478934 638721900 765891168 86085585 466369529 249103949 900749364 602394007 718150607 261119060 782086943 345842246 460738989 295465675 776127069 207682097 744143872 682089322 988223491 752213047 841441847 637401415 936607136 393514419 845702740 685318266 992592627 631836104 699583439 296685054 523660823 428749767 644404461 280152945 585391574 75252808 745154442 646957224 932123040 180026400 682013275 49452533 598475595 108433489 710905552 161690763 827545165 568018852 591816192 252720753 688681297 587727913 874193151 849049646 880201034 576331893 623070220 119408184 121393472 92375861 346785231 52583867 300126660 61700544 486726952 247181952 652836783 525913273 863619869 343961586 916045598 63193219 70549458 44715099 581966855 15044062 628346378 430253680 651095645 440506059 568626289 49379787 523953484 81177805 723846780 420242550 839893720 299475851 689659081 138232077 252045918 204440625 437410580 415214815 745671346 652843337 737520547 401636898 702769403 300220897 840266831 449093566 806257218 36377384 850435365 56725783 356505153 219727635 222324797 217124969 526932318 74183851 504660057 426647993 905766457 273303240 837555244 605932866 725714875 505795289 568858358 540831757 732300067 72410696 389316687 319828528 870966908 870917274 905228828 74004864 521740805 451158113 603105598 310253404 689148393 671219011 722440864 60877884 282092376 185922656 682115858 574300658 594423781 327553693 635843729 153045363 170589363 88733155 324462784 166273778 876232614 847109257 856052279 678836150 804381187 2081384 632992111 381127868 937137395 626349109 877387923 772484647 893231689 201834610 323103850 238632641 324037896 117810660 838953390 34727445 576235882 374661966 751940776 145336358 221284734 145119344 703121576 184389844 389865567 241085213 302939511 172963757 735263549 276528241 795756700 103117884 995962818 99571451 733338237 4601300 472582370 19906293 683425844 543291606 596169763 4750532 948005731 29042768 549395543 392122827 804810711 360463994 426490868 206705656 431432306 96059516 273619553 41415318 155493725 107942940 245253964 20153094 337217663 226896619 492754184 109995138 174000967 69672066 737987755 539274421 905349726 611482793 680088254 501539525 927245523 294351785 822179684 123017672 888740233 542141276 638457516 514823559 989079788 879333636 952142289 372390575 730885929 690842846 987553605 937391055 985566557 388339818 556696044 69978516 278907848 85415899 308912767 249077967 730896388 672968199 758635494 30381666 544749168 119025426 867476158 219093050 495026441 382190168 797861050 495055479 507148275 148024459 372085211 224952317 313290663 35479478 458847143 406557368 682532562 554785103 759416062 282965741 300522626 225367952 388550135 16924811 689226803 411228816 459980332 359668833 459397494 359493699 431675937 313764901 532633203 408242846 605724609 160763379 218548398 53817922 398152220 231653012 981743990 489922246 801899863 539371807 784708554 398614985 655755721 105797121 199700791 189526408 977761326 860528375 982494573 347327060 566186894 110603455 657328117 71428434 328527578 178221528 480106824 246207536 874744544 843495373 848645259 399370337 890875286 605283634 665140818 216504131 946638595 117071387 175828835 54043728 295202609 293565184 897288754 511711639 627343084 109553904 337082382 110889990 781682631 490285028 671428275 170263007 234147232 1516666 979699086 950821038 952820355 177363746 253657229 53890013 702485375 639714728 714902440 112930225 673052359 87404480 715590219 493421611 975998344 503852041 641936079 117141902 641795278 122344002 864950744 630896081 844395430 436200485 987085636 737038464 954014516 836047180 853203574 585578098 603423689 506110430 852545926 473473157 519148548 146628175 851304545 540897268 819118056 178927154 522298308 460059703 862692718 529438216 811301468 123494508 361716029 82045488 337204600 79223383 670908814 305234294 917973086 159083522 495935991 189388088 254585040 251324609 792316366 488469504 638034349 157309544 596331539 81588417 222797980 44823365 314995490 232446235 811132162 491624869 562478669 495384478 910191181 657206334 676010221 209116160 675767771 596369295 936830002 871008875 981911113 896066843 960352739 416823274 682752900 177495180 916002815 859625668 889311145 363854022 572174118 69679620 849397806 500971479 644706308 83567507 192259963 136622492 578023603 418637231 787099624 570423304 681799842 155132739 286609197 14666457 947646089 928580882 953797521 822602714 858034155 697063986 814696435 27937356 451137779 130178151 655846246 226240836 356604088 133001383 581205973 356645399 383683196 17780051 438660343 87145510 385543146 64678010 917516199 558000400 756143675 256085011 408725853 8180174 265034628 127380992 873308983 470990786 822170332 109136700 446677362 341453437 711665511 587984471 592814788 96524713 638836008 94092830 613944667 405631072 516104863 501566648 609742854 264162236 346556674 103625453 531434411 519057324 896764875 386874351 927185400 537854325 545674614 238011581 393230511 288846838 484871692 315529934 792011171 668165688 978831300 114776759 863016382 369974440 408517027 246130951 286543873 1876122 382127049 5577038 953764056 140395809 811080791 56332405 429235262 364002383 695857941 106360054 615030182 171650964 318409116 198567443 932191716 151407436 889615133 444806435 944703304 463513153 898559010 885592604 917529802 466303236 917811989 186231139 799788967 441899070 905842402 76390342 969476417 633332657 691287661 238374376 763723515 163600828 554129918 401583257 770708287 505448128 715582272 650406446 821556469 120809 344440591 257478865 301616812 259882852 475736866 158410152 922432452 858898367 980792498 785202789 835207773 153313628 477666518 251266908 864981515 217404370 405683520 281432978 797148999 45215737 892204464 10885843 964651951 167453613 843949769 219096489 848277999 179145984 679566033 363289814 386604957 365103522 732248320 679167796 798727394 274356696 987282178 971839821 975686915 828163376 848395271 780419809 935366376 130447591 593977834 19257693 439111832 135839578 849095978 22040765 590285001 217421880 434108134 250451348 971596437 566563192 878535182 659132242 938388213 531403271 898440842 280656176 503131163 187111164 331140427 48274103 222490496 170742411 720364240 25685992 39697329 10608280 527622854 98007112 630058499 53382589 378932840 228110238 697750677 628046769 657508863 561395454 827551776 326288725 895907457 774070848 779955773 753532743 860305083 565712216 697672512 187597351 342609624 105760342 337948120 124733588 369813540 235263522 777401842 4744053 245040342 177635728 901680472 363847439 438050699 16700992 243593843 101700504 768177725 450011982 882711005 834641620 991541904 784719319 828269838 229681073 479366288 341771516 597387411 20660490 716037900 396747543 681255634 675288018 970719392 247140317 350824307 103202748 286789372 260328282 430012104 165541701 489649567 151183442 887018226 48752919 216173571 55569869 924736375 504466629 568882484 109899456 709106185 435931033 672146870 74060706 122477497 112011349 566067567 344291372 978001513 163675741 787708574 117838178 475073188 54916070 744347244 513902981 977361870 551663950 612580785 408668694 456304615 192010806 795477853 735842640 905362107 782054197 994597654 320054705 748069158 504418334 886035852 350922457 521725037 95824011 117338058 89772858 535207955 493152964 744691023 508378555 814274573 438665272 852598170 115174952 600154796 156365492 752664609 329227189 662878439 368580269 620167344 222095254 809548828 59768997 909686572 837011766 985244441 288855617 700625994 668619998 840630263 406300410 908981447 147727344 661069313 558662361 605317385 512405499 690162644 258133010 724844188 204134253 927113600 400183574 756693059 394410979 570132854 355883842 995817982 184588335 186404599 88513612 327270662 23116640 875993986 251961187 604342094 468393755 900924934 242208719 883419199 285488402 303219341 221982979 967916742 713810504 806466479 156215764 265600311 95461710 911101744 355777148 985432280 387410238 712023207 497941953 650739478 567674848 989823889 430678813 862019094 770813682 898406610 103879787 750389119 271517434 595633499 436460650 609945944 219100107 691304306 463213768 478137809 324629446 390538669 29425878 926747047 560096824 661165818 591369496 984394077 904405655 988270035 866698869 867667567 351476666 617321800 330764110 482371771 300273779 672447217 303124734 309319577 208348629 752966707 528807133 975786284 354564592 837682367 641280115 873361318 745938615 933083125 533787095 537978887 287613090 566838449 96100887 598317009 300695248 524443427 451818009 512623024 216710929 256071529 184980052 396003535 135845701 684340998 653976240 674812300 427832850 728509818 12636725 366320910 46485438 362143819 323441288 686613869 137016287 968160070 284547510 966050825 623110893 743358969 462741479 685543428 654350495 916353450 467552252 963467416 200079041 210755534 126254320 988504533 839254631 940117205 935374742 990773347 366785667 482441587 210694541 443608324 356288064 828320307 606614703 798820113 704836129 882380850 36353984 203751959 73137988 447868665 348387802 739394572 65473129 612208717 138805756 625798676 569913584 938114548 102911987 976417610 121079856 152050880 81048764 453245299 347295135 752819813 263445777 518999334 399302528 824322869 152509815 339647664 259563097 426402054 410363534 630354862 620019083 741774802 682448626 731106953 240218523 891703137 136735512 359061198 88028409 994897193 596679476 892256274 848374540 929022661 320384337 962166179 304448695 524629919 477420205 982964412 222982756 561654649 287118912 607519061 64392775 198276588 109377342 498111554 291896749 502369278 292188531 424424381 346003598 499447724 145282804 273846057 23149800 762251795 372047111 882326208 567269798 757776850 108860058 185235657 55036184 525930059 116361541 924530040 708788550 937772068 935215613 951379303 199653282 467763220 227564637 766328969 171741506 969965646 497048186 732924861 52021446 471599916 267614304 403081973 69332641 337313837 267643168 815617384 546959152 554052326 52298561 160089223 68856880 686567592 552196012 676072394 546321024 667078914 117963675 954151477 808086746 848704362 289067065 646442317 292460529 962387206 264638338 516101583 250314481 973901729 365616127 440075261 382047013 449762709 302731035 367845618 10436616 279669506 36432298 474265305 76278870 131861501 98286843 186632269 47106162 781957095 295950303 909940959 615199899 945511051 893675632 959830779 221632722 436831470 25693064 504914962 28494430 982798156 768789379 803534383 569307440 742503195 284563638 367937744 313506112 979562221 617834458 810572808 210425976 456241401 63696008 777606636 437581828 460539395 223473848 878639352 565213100 820338670 41632854 451710440 58532215 226844532 40294298 838448261 369697143 891666921 12331307 464960803 26152232 574657712 519114354 777539622 670526508 782295595 154832785 268761135 125182546 928093492 821273321 886132475 806972153 875310568 870036323 915031462 912870060 972108176 554722483 874917759 510673447 788920188 185274823 880228799 697594319 968192592 438061844 443798069 146632264 505804707 260705834 292982211 131995720 459723628 116910870 594865405 27990782 709857308 5743 33458611 12279544 727611514 64400901 929049668 854988136 902073945 694807521 979850390 27017679 591712748 77711778 107048487 45967727 261343325 236332671 631309661 125032346 743463200 85947268 381410726 59503322 658078316 557748903 671657407 516615015 572355423 376885218 856270006 704121862 860265732 621097377 783164466 133653115 555817440 269573850 720407079 697850543 929299509 24421615 531523405 5128998 575062684 203541145 882323287 401548790 649457981 435754014 933160414 708593479 873127802 565999308 609246050 202719279 711459048 202546132 451523556 286212612 826171309 156249624 450713274 197754434 396271893 97711539 166273874 97801839 864512224 772433119 804324773 712839423 853168991 793739333 798999039 130362408 441180625 17279852 668205262 663186815 912568301 803845065 886437031 252914022 480623937 317760267 780932920 172165546 690111522 627216977 651230738 64880653 225228106 140857314 340075961 283769534 607891005 230040889 454122459 184072671 719095633 82205372 238431147 180758452 604450683 342146150 760316305 611791717 902115784 125039495 616902478 533233990 790157751 108343215 626565927 552006869 856785558 36924120 166271638 39936237 276245384 28262252 192206890 81751090 230365610 200159221 304412527 283269103 695530585 283825120 692426734 691563619 842939849 668578915 755383826 697903647 824432189 285289235 404625681 208126463 639892480 315934913 502852712 18725618 753402965 368640554 609724979 424921199 604278806 367835983 714754039 289731446 826215306 691466206 774733984 150851207 821456769 225431002 995620397 137563958 175303846 76995799 938036742 746933415 778273727 653248202 829087678 80623494 297257155 222904466 291831099 157179541 900656445 708509587 819602272 69470111 583311423 281656151 962927158 632743319 840147682 775987289 987987301 295663976 866206112 724745880 947324666 376468932 962836753 734951844 862848250 638816496 713856514 88968669 452358140 98077721 729209992 617468653 784215786 69978954 76904450 15859565 83960308 35177761 127110590 35361063 994954726 898342933 974641567 183552340 971206732 961081645 963593910 409546901 598218403 341757912 888311704 315690233 569285410 506194361 617071212 58332949 431822006 236849713 906683477 725559998 803019195 798623881 859502070 131828221 966810145 481686528 853088325 740054169 852973517 409283223 443955297 177692888 845455243 41761925 128757820 122667513 140306480 35523158 385778096 213639764 792540438 350393823 634636988 268070066 555622494 54138300 159703653 90035713 347879401 41605049 528959285 67302143 441004646 282908817 735992487 303980213 686824029 672675604 987849011 24533202 111622176 77699396 892179748 617495078 762732511 533622214 949614820 57973198 739559394 6068937 51366781 50701288 372313459 356708599 992636913 325990005 749243929 90454429 375367948 7538071 864571826 824897538 867548616 322667969 714117889 680435947 817296193 254889693 977700684 48718089 165113882 16211916 730915510 245174715 693608166 254041086 718276317 696463720 996226952 235262796 695141695 601423641 884978464 125220733 291086948 266261705 991498709 929605039 949310955 602050060 720963031 143832196 193605496 19118676 308874395 85284387 522447450 211681615 906541952 740227539 808016951 564308815 781489884 310920467 590637538 381179454 689162909 255799412 860272613 678539538 938862277 302770236 346622083 246737445 818028535 812259915 944149005 908194054 976940021 780516528 800578967 243367857 847654308 503906470 804761361 448683022 868774247 27651664 647319781 16628392 668722955 21777361 977121907 553890743 602716096 419379469 444547126 211846049 706291322 280740864 289321420 137216754 319824429 99541275 853148777 785795275 979057090 975142950 991110312 505755838 538468590 426884681 883345979 64326539 293885313 2329425 994052858 512986475 643083162 332956785 877958964 190044708 661838859 187824063 556192194 323824032 453152577 300853533 499583948 31397411 649920698 454595958 653909076 18961474 63437569 1230009 199626285 154366913 819267347 775174504 821007142 145702995 454330389 85824747 637818459 28136863 896462527 244673410 247948839 245822466 997521154 429168840 857415535 440113202 929567387 717219804 937217059 243593400 892655208 873966693 968264559 587449412 930138676 766883497 909181302 697633297 835976416 38586963 979619842 450480783 633602651 94322754 622151330 486839491 733882809 339289203 706711383 651211048 769367346 483631507 852898321 614427567 819819772 309681898 904869477 393753625 677061254 129713623 334405074 282156524 967980204 265768255 816061184 378641504 503962191 26110546 110832775 45283214 786762178 490103841 882414389 386907773 731781764 666441109 983963841 712713407 912598897 401726426 733510647 168277659 959089902 294737871 811006869 622889856 846493761 48049053 660686957 258307825 378090735 6551306 147999446 19695430 262403446 58895671 735809530 13583827 198317681 96593388 537152578 264251068 972005164 75489793 544308314 244271743 760234833 299393069 654301841 541076157 937529741 736851588 865365782 806559221 875522893 741249077 985145578 932364448 948176456 584730671 685067278 203349207 697429091 348778112 598771373 85213968 814079631 28933326 274692932 81694271 283486305 29180672 375464141 199097645 477758944 432543974 436281474 129093068 320052343 252019923 860227588 695672219 761548550 149452107 504516826 501631237 784348990 318052813 945429517 382434390 792512400 575909275 846361642 434117042 736155558 556893659 568599140 210876009 517007935 333459767 466668201 134258812 319388599 453134 290806134 192648637 407193691 355932675 447653874 379147827 912820980 73454318 522900003 382468362 408808072 406489261 755742215 669892287 742377011 520343384 670051817 184571660 387700451 58899665 863191314 134452658 134881278 23967489 862682094 469404717 638882351 47846001 486247194 322224272 626881675 28101836 232325620 20704218 953078327 814014988 934554200 321269412 769174738 707875629 840989782 608772581 924768727 560001473 653567138 3834587 515690123 403274953 556635230 402803552 432053152 182028883 240697810 230313962 572675497 530366772 831259553 545292415 895760341 234314713 443290734 198279938 732439119 180269944 800498010 772012115 772105346 119452841 547182124 391601466 762079659 593598472 764006663 412765018 563506929 174120440 701534656 375611955 760626140 49209594 959773533 240064478 566813593 340205378 613383342 76756968 501823138 61974490 420002738 212754820 992661795 331222207 861720957 388247571 596866742 436626993 728267600 609262973 771606027 311218416 634446113 560993266 713687165 15779071 353654154 314708945 891177741 75504028 685707948 451866642 951095450 776243927 981502757 342435211 443788920 97289045 626470929 413243586 582267236 328210928 609106888 580539057 978521945 287950951 934263108 234903797 880897305 282637444 545756858 175868965 539835395 446093129 760643438 98784009 721298063 689035405 873951281 785551773 893827766 867247080 959746660 319033883 347681449 270862317 994355720 701341320 760326317 46374781 124128790 101120617 684051850 619469122 991609549 686913142 705450631 22208467 225114331 118962203 461361424 268111870 949696630 693907093 827969411 234438301 731438210 423212419 680729780 426233141 523987564 160004680 504968742 159497105 917844855 688434851 704442344 483643137 570106904 375339611 617784984 240529913 307847583 132732665 235190013 4802049 68344280 11038303 752178597 252627953 943214694 718277177 847490298 649483885 809520435 367199861 601843877 497305671 623537267 356149061 975282522 551684729 588449986 285818489 442656509 428358715 479310832 344657930 850386351 332597579 332898786 300122543 485177203 83335313 256897851 195558514 540548449 438613543 935004503 916409389 989346709 918712960 922921020 168452600 909316292 756517874 959586654 625385601 736959054 195747918 694846099 360393037 909845188 68302071 989517563 232748566 232916149 75495618 545510110 75711935 641284924 489646403 528352368 95115860 572677508 156403454 876051642 729125304 863688652 169597881 794581163 372712706 801411839 614818158 854947586 200857982 830166549 186344653 286847203 16494543 31921260 274089 5237628 2333516 391017919 111179317 628395701 457082545 590275396 511518363 688229499 536992169 645738751 132788751 883330554 847180469 944233466 756700571 996774218 513931199 892418902 444954906 533072508 168554316 368958945 296104659 462617299 373523631 865127680 216437799 979569111 157515943 767201231 503003460 809083037 124327792 285412322 117762591 415092149 288871474 707798607 171479959 886703473 663356445 937535896 562211406 968080192 3973511 534611150 239113877 576920237 130886978 202911806 48061350 837690762 499780023 590709308 536727574 594657666 257797945 690214363 321915822 656367655 532583703 960668926 608640761 881661621 68354051 244249729 76136520 448804029 349778908 679807845 278336527 891573628 555451218 907456884 320411039 870299100 366603209 846034948 258650488 434815225 40285059 875371820 204846516 688794180 411405495 643681883 523347612 632793296 49279948 342488571 213161184 898949798 887398962 921252997 192936091 679196932 95823731 531013531 454832052 851014651 691772360 735013012 62673338 963761492 208702580 273818306 135123434 458509491 10111597 751823981 63130733 547921350 147869856 285378553 71624368 100012740 56067645 887243725 462370348 900622096 307278129 519244576 306260314 388070080 322093561 792194051 106776366 899706942 382129970 572089151 74791572 833975926 444780916 616754107 198718137 611571656 233875578 692296276 147928359 298851453 136275239 729751354 48830312 115733559 4582039 157131557 23402878 134911431 48112139 252453486 69711597 760008658 463335101 695792684 668836890 890084016 418876335 505571467 476849926 553698522 92622949 200689926 90045631 818851663 102197981 117347337 97895265 463864565 423382483 847943255 844320151 916526512 915306852 972706261 797410031 835447322 506216011 668694745 385965234 744581546 47848033 159849765 136363779 932958811 92485381 372087097 121814003 589519593 214744793 378331539 172369747 336214012 95529202 424749841 10963294 149127972 112874590 852469007 29837753 584232240 375383888 971645121 853202755 855527518 67969505 776481110 231081431 264419974 108621896 948457453 14559157 868986212 274079579 785431899 178676043 782932108 509572706 522138926 494660052 908321606 778428531 940301447 462212126 665053650 385823561 753895606 741934042 858544651 233494296 313917634 22725123 695163676 22520366 312203292 33379536 545905300 251687070 362422173 254185327 566338537 540785822 725155595 546755520 950562097 548806534 760910420 112575618 749144818 271371996 921928995 209194968 323092963 133494652 922259007 786252025 994849579 600747978 943582704 759537087 761760970 47825373 405226495 217091196 901841795 885560317 913563638 858347407 882244464 165716172 211455465 70950270 926596515 24228729 565480345 54402432 237202198 122118230 798639680 145140574 317937649 211685820 479345989 447596674 872713356 420074096 600358739 51076332 577178110 194692846 404995603 280282885 333827278 110433034 481178864 300562189 574270799 449007666 669028429 154806471 849241420 823563071 859963421 232560431 687739974 679443408 966402983 849052607 989461814 554180296 685064999 308485633 592647236 418509570 507960519 60904488 112318988 29334784 636225855 524616816 990212157 764428068 773890695 668859150 960393851 398408398 406870426 275177005 446850020 400304744 666112938 89628278 300289825 53100126 654517990 481483912 843564023 79585848 315335655 106833880 413907390 8910264 703593155 550573773 587058155 410572102 747563418 59496686 310278325 112148706 723606024 600560083 694181033 495610430 891619568 413345985 854507407 353108505 989469988 185976012 638763367 529974772 820311751 95707528 217862917 147254293 565782622 250259646 874412976 573956323 664550604 276188097 811813704 56622372 256524468 104948261 766584874 496061148 554811820 439333713 504986013 3974903 282882642 107259505 261329167 62190281 304446355 35694059 855403047 603151804 749649056 413951501 763136181 512702441 963657424 456275870 601490357 422259404 931985278 600870636 709587026 558535295 765359587 30509869 40435311 4786300 910976157 761385473 934405720 515055927 613441854 383551945 390563251 94887652 140987855 13080487 789277209 262125512 697178449 520910498 603027509 59856566 866417879 375906052 612258287 469930317 925752337 907197322 932711999 893731195 910154603 720927867 806899460 376567251 800750385 570409778 986622272 370395953 871803277 392704905 777196376 710078148 754108872 135947499 356121417 184121388 437315294 364419301 815123776 391990175 628690158 18901519 230724596 13396443 83908647 59872195 480435745 41371263 758087669 627578138 880384955 859423403 984388404 911198280 946574784 550065522 591166094 228275308 440073806 173690408 430508655 396351901 752327861 628137706 839226558 301683678 456093258 189698650 202314152 198111766 322627562 136323179 778566719 440061338 456979395 41882463 134802010 11927803 536348462 173820571 894363108 498011249 580168012 193519589 303059232 14322936 748633820 21744226 904787890 746040111 894640485 63266671 349401699 321351970 893064642 672002374 846793136 31226056 45868703 32336449 81520009 71037554 726966823 165201357 763153482 10095325 708145067 348010148 785663407 153445319 407976260 177162767 455943457 51299086 192341983 110863924 459622176 147069518 993465044 188387996 270387325 118251195 792410866 11060623 114389025 71562934 712469598 196730700 772030423 538542864 729397091 439883049 976977943 824117899 909526748 828203068 969441884 153355074 902013234 643971019 993972903 657712655 987692370 809751276 829212038 210270733 650143389 467441899 634859964 94375578 658299670 426241608 962154895 774040757 994016837 480936444 543474515 462863651 563371810 411545127 567456048 11678513 240945094 98407945 835427404 831905212 985893856 63813670 798497348 236225785 733688543 684105153 778063721 109899787 812983621 691260168 700877363 234022768 953881776 679405844 904217286 352252711 633535824 367489394 827795065 612168773 637397905 30680042 819038646 750478003 915784132 145923797 809490934 775639075 848580858 713115983 827144997 33372280 481050661 347890730 544957553 448530509 852089982 185367898 201891999 62778568 302441401 111685996 976347179 224149609 681943256 109673716 422150764 365686468 592320429 23703791 999502939 646065634 777399894 663235559 771650715 421670678 980980096 74532740 357707667 176947992 239474830 147768100 637099795 448576412 955519409 218894829 227138244 13542598 187359105 140237473 556464546 210680566 720114823 414437750 917926064 251605140 545951427 159086808 924632739 634314472 826944176 426448010 919571414 142873121 977780607 873632476 879654074 863941708 930550673 626543116 924172936 825839498 919813012 797430519 887835082 593883788 629661025 551364706 890789480 93359354 910780126 198295158 374362447 105546807 141853486 25969939 584242884 581228709 591930944 318445082 992142241 706899676 829552943 690225536 837186053 717409136 929046349 839822724 963643282 38433352 372059912 244069478 254081742 117859720 779483743 715604234 769321803 739958744 766957154 107731986 396317581 243010428 480525026 220774812 547659484 381672971 847179307 465192959 956269591 672196955 973380732 944501525 969146471 103636983 877226611 520941512 573794749 452010111 470633480 5606659 453675063 162869136 507286487 110330551 205582725 153258623 836648046 291149305 445308896 187271879 214314102 188590313 839787804 793196247 799210805 222493332 668198283 71410737 872787861 37868437 277514433 188297565 498981667 429477429 720440247 372717547 486717939 267272034 956305786 771001215 952325792 379955968 877381610 729567267 759137016 161687913 364917994 261793317 299265057 91266292 929042676 745913831 951507735 11761610 735360274 98190099 786208112 50357822 73607573 8396338 791155541 690590082 752717987 668026491 927753054 231294529 834104213 379558443 517294295 508056903 577440194 387480616 501074811 425393783 858964143 203465086 278288264 259443853 489993284 402501326 999935702 780336389 832204094 785550382 829719770 654914580 791859229 387579964 440153641 315703254 340614598 325822532 740894770 50172888 968490066 857990948 942747323 164682801 461521036 385193556 634830046 484297225 558986130 135357836 205667939 173095820 884444743 735558987 764523934 41809667 590000064 521473280 821190781 669353775 750837721 86949172 323913056 151870226 898152089 438091265 657518641 597598864 734777616 619139231 749769905 277176792 746902315 58666339 70537790 3606328 838683225 131518402 593778841 207869929 912243514 831375950 913937129 198766465 993407298 791673013 819430186 519517669 847088297 505172809 920038537 623671013 781849986 255536289 445582399 15362666 888759599 670708077 996856957 228158213 765347058 458615924 546042621 419153008 696321379 457975683 480110481 304052875 842374194 51067254 461082979 39318042 967784379 79367732 915406970 346319962 890937021 138015539 349196175 11802544 671757161 3125700 159554077 18164869 112412373 93805382 229706142 211634026 341339231 212412776 541446744 246412264 485931299 459586980 911172589 100380985 764468978 728890055 836583052 836230332 920504839 401328573 976083877 554133149 930391611 89678670 597575110 230680458 317716695 144216633 313958588 146182564 638836872 366297145 664725133 31829829 440400149 323974578 419792556 194202665 495450454 288985177 664123708 244127640 271512658 7190952 714476360 287978334 917409786 534764737 730576087 266555967 761150479 485246371 673601895 375906235 938310035 630367776 943499691 834365516 934133184 81094894 195107583 59224994 702596629 203165412 867212409 15001368 164570011 79726488 842873734 803058960 945304944 415371358 903901096 212827820 407151236 215233363 250594219 160809835 753920753 319971981 481859651 255394187 388784152 171113672 620089051 208442753 264933705 106700061 879182802 402857489 470485295 53031076 860292682 412802557 790925073 404577408 800925474 82024498 488805333 292264875 907867703 35839790 934913960 298300166 772467979 94375442 603516800 249905634 480067092 60523932 866857123 748140208 857781561 220029112 959734980 494151452 614001584 210106718 340237198 10021999 420739115 214426968 383905688 288001322 318268147 177505137 938090334 48204460 635543817 493287353 585616053 405819924 692366154 656706596 743555139 197422721 283620224 142689645 275348844 273974278 274652855 263353124 347569249 120788339 366796585 15223247 816510676 33283913 861097711 398359079 570062049 135511300 609392035 253898790 522934691 252180514 833007094 440555287 690444766 488719086 919018919 541721277 615492509 305758730 691211822 9383457 988677434 630976193 818604185 791029832 992611085 315265059 842004132 250889028 656522928 224527513 237313303 25153077 636764060 334604180 639632322 546347578 668396668 118419222 287224538 53859523 385872471 208091730 296924350 14301437 60711411 49108287 327427060 142905320 202930593 40885755 954369434 164881528 658216920 595093816 934479603 305652946 487832420 357642756 897481817 38905413 914634625 699608972 834521534 224059785 250271695 201937368 387744540 193321620 863144191 64931895 935830677 402893188 636296637 586194571 663674101 327837812 763751715 374581910 914938710 852876243 910338990 5387063 882715496 560207841 630367873 488546888 847749117 205992176 420390406 166106493 864877889 507439500 827961392 734991197 911663554 157444132 754746284 221451111 854077620 741828256 966964632 461932319 984195697 382675667 790384182 150277960 326619558 1129479 483092925 408112748 708262208 400158451 714822992 424768751 481198144 13860812 307721881 130254746 345870036 216239325 382332104 375525892 512902132 446430009 863931551 190339804 846937024 558344038 628229483 425912900 791459163 44493288 519277888 490694981 756775432 630891221 991169060 387503748 769061342 743227714 877373194 577204106 873231667 659384620 849810070 260227214 676695958 552940054 795039570 747158122 933221109 446781566 586844432 264956976 630900597 38404498 520893854 468083093 715745596 495930505 593207345 278025967 536369919 335135348 733012515 319196177 685969795 236084594 322205436 165329866 593287748 280367351 753917096 226857478 833159690 798683029 966128625 952307946 978473566 783027351 924628863 105870372 521237084 356787039 370290525 22133420 726762645 350043853 602059442 42610245 434817123 374785893 633517817 94525006 415196671 156191448 682221057 372270727 526669284 158282878 512782685 255067839 264834817 175693069 417696722 258488319 402659875 72930254 504131357 28471244 313239904 80928530 568177319 170336332 628535183 342464561 947101711 579131030 796012638 497160995 615133264 338815713 769720894 318848706 576812398 116205527 174455156 49547169 610507707 267969321 830901258 653941742 723843388 384028356 965989091 15525031 906321992 356724947 960458827 545904307 672322391 44274958 774635097 538382440 839626522 210793782 605270007 258785430 355311957 126378006 948712191 290996004 347054459 29370394 89631876 5273198 24540153 9318952 283768868 243356985 676749403 462240871 534488334 376428706 686276883 273150927 614946518 280484305 793915206 444155652 695536034 308432139 935994601 256943029 341104479 313140194 873782906 452808596 782620334 145738368 676870700 382618922 816855596 682988296 734463080 104526040 197858737 37518421 821964817 34267953 255218308 187332170 572314792 315139545 637789098 500127515 995932078 340289603 551950788 211573686 590183177 393929853 868640985 645160983 918740110 404534884 748074509 366788892 767812918 345598295 714827066 350797971 641002938 240962874 739890333 730114076 838960843 47333102 366399705 271871603 325802134 307196 126557243 88401723 878968916 514758111 581647934 6343265 144439264 58784942 486656119 124192258 242171119 126137794 883894551 260741524 561047963 199846281 488799438 459564971 994418796 451675713 472473588 105953131 567490706 556098044 936494725 896950965 951970911 128513734 554744866 138759671 373755218 51648473 418271331 359247628 734817335 280384232 604882680 14316597 607601632 341301292 602503454 254432949 480786594 33108686 141298521 41353829 813019672 112380550 666336643 125219168 546691187 171738844 864227148 32601922 658624386 392707562 842812052 747588812 985810517 761951537 845475234 733807582 987892429 918765413 967790146 390633751 793401254 461202609 819119397 178044591 742526480 581579421 651782077 90612019 271550470 77508875 736832726 474697941 964380808 682453871 812036118 597188559 929957907 540568123 927841147 719711537 969571158 500908034 627943995 319165319 328500453 30292969 480893847 96259801 840959182 16104946 487817996 79392201 959699858 479959976 690442545 125706995 572323231 124713118 821364443 201390417 863263600 321814155 982626082 471171565 553662279 479311268 770819621 531880047 696717718 691150711 878035868 425588390 695667897 586732810 890302741 187510032 818896744 664419637 669688880 606674477 987264691 954835676 964760139 711715497 906683914 78062284 980817259 432049521 765841835 614624150 929710479 585309041 709972629 320271385 661492489 416049841 756267312 578972810 941550153 797863405 947334753 390505335 965945378 861387410 949426318 87510029 870657749 422469167 782429540 545625990 826589123 12494144 343484098 239014493 479541552 478117592 752306634 191644716 384965053 240386279 765863837 642564996 964650938 924985794 978862841 725006316 813089724 44740805 847834916 213443893 936174390 736050227 762683177 633851841 646876884 16970790 409512850 224490420 664918015 173002315 420710249 368521878 816294475 70039783 901731742 544018329 775965269 189443757 931270187 152148247 378146548 179003985 451305938 60053990 98777895 84780151 158866559 27168514 882252863 864526546 953916516 697809180 920535270 341025168 676351657 143177110 520981595 416049887 758420401 300665147 659040463 295926208 367474598 20501104 732029255 64794401 776940821 36114475 309650612 290775568 308836060 284300633 715087187 310034092 345614122 70279042 317065660 156914124 381495699 353213795 761242919 245694538 565209475 323452360 963523678 70066464 901770970 412246037 632785344 270041888 409552279 87402536 192477091 94857086 922518411 858817301 876572822 626219534 903742222 493154908 973840463 171942474 880524955 109522942 688266718 277957063 612008820 469147835 561029892 547836498 837042382 614834277 965741924 598901285 917315796 545411886 637682629 89218650 944871292 358062630 932809007 35691034 225613607 185990398 600430277 52679139 162020991 140890778 246254164 17487524 951127065 370962375 835794208 642160317 950165410 72135599 856843822 349391697 574116738 228142273 522857122 281193806 632687032 307009937 643838365 467146314 973478142 853037327 917371783 890050497 933672566 132403579 990568015 682768902 870157553 859492759 928037347 133412717 288911562 127989652 187965866 74965485 583495149 356451777 405641800 51510864 472293649 45159684 516008813 288849293 867446459 648514210 804541112 606682093 634915426 578943156 761957548 748706166 923678625 159858083 377264261 375898843 517670535 108101205 124476324 82017197 321063842 4468770 104039492 60616564 330655304 264306317 565363219 261097957 305961373 86526039 682703811 190217199 719814669 73582912 680798852 128165489 880103405 33626352 322699099 263172565 957299852 804878283 964675152 202123802 881353819 405233496 695442689 516661758 545561491 441158120 963067418 310994467 367280548 276959250 574307597 414382143 474862124 446394634 451730697 235641956 373278001 343855398 793646800 706659399 824264612 793252525 942377937 288571557 690642232 576364383 679068157 72177783 447134301 129321066 501160526 435333606 614836754 451954622 880264942 327984915 551121188 68212140 922197131 103778510 299718817 103524431 545252813 430484279 680031586 530375414 574327042 18623876 831255694 292225102 673491379 267251086 730928333 112072380 524276469 247693488 728741262 114860973 850776742 15871755 646523816 587507709 949429932 103188842 842402096 265959893 368473919 3865368 189150102 59278982 696703619 364185294 560933948 187696570 887485292 509947999 994945344 248868167 927270235 396804327 408494780 255020143 701953552 425369983 867078553 295606479 905442013 396776063 704618157 190507124 266141788 199023501 589485133 16708507 724647538 390894721 520305158 412130627 974815647 293011372 339260180 89778679 416639741 78271274 818947847 28677347 685225613 263522193 341422927 162033540 667331859 640028753 885300338 112755246 715768819 409252214 713642817 595405780 612093268 276847451 642434144 103289972 897097798 121460312 137682174 100748424 525256499 482932465 580203428 225807787 282245356 252513528 380206589 14037316 527712425 99129578 216953638 194809905 350611347 299905265 983557211 255688287 539302351 228551503 242135011 3738770 733675113 149064077 440263228 233210718 581225472 199107661 380123144 171242301 425512527 314288646 675753732 509512946 594761898 393090010 545079988 402463496 786462873 151308747 960732410 852635604 932961953 871306278 932304439 660393240 888593763 359793150 793426717 637958296 972206521 519077037 656653379 323315129 433261772 228168241 283540763 181549133 314672971 15906903 134380934 71421978 314734426 14215450 654364372 333672666 657054290 294231794 848997262 482470988 656047170 429737600 777725318 179545417 222142288 140478810 359165856 168815315 169383763 149281956 304799094 209007945 544672826 134861687 809869105 199787555 748354733 343803968 906528776 587330577 806193778 628343865 807840329 125273851 138321273 133409938 582429274 28319664 352142555 334793704 658075846 482388884 552098578 360452434 947583049 577407695 624424108 594942942 786292649 286737105 539686470 228832467 677659905 417348061 456866964 98867267 920852503 775037327 923686780 429217353 522721749 297623974 958970258 831331497 834245170 735830264 961942243 572793691 705201586 171406119 834298552 31509161 722227859 556374560 733300460 46990004 67926704 46016473 688012364 478293749 779497751 29372266 684537763 327128559 503808894 278767615 436834908 5940363 487218014 450150331 641224631 523287013 701435793 126865350 396992772 185262344 298620223 147588507 618424784 547017448 970811409 781978827 831234200 200016524 233054492 113180192 665950879 359599461 795177546 169556333 665410764 500837672 917017433 690373862 865608533 759989655 988910550 245481114 885211899 330112894 531738093 278299910 329447121 137144098 499329187 327016128 725581214 28372839 158965243 34235850 89089847 80327762 391920421 131699527 978675256 104102216 920895034 168284577 525011138 32590457 890825107 4572681 972298493 885270791 976247956 464087493 812154162 369001288 695647662 29080514 359071420 251189717 764342617 20121859 954462020 583219843 999815438 632266972 988298415 807645026 991638242 449231671 734408714 509335349 515046911 465878436 731691005 494153599 741120180 120220784 903605120 203092338 737308082 416395903 963053736 103279149 902257069 350922202 916230866 859282744 932430875 427953374 532537373 28463112 30100013 11257956 391975811 92935679 594239212 362112751 613649004 116867058 505752925 326016972 552514609 245785095 794219522 288607464 684285127 540563466 890199022 245974807 417606587 292483815 781310443 443175910 963115309 305212775 667468275 245241633 602096965 295639235 509161459 443791269 933707906 427040681 681731154 582113713 822381890 817589122 992535812 602464170 852956086 494126098 768738108 107556790 510933487 485812753 903500830 207945911 885887124 285338072 782090683 382532908 836297563 202441543 522547155 221421876 328225278 258684808 279436872 234323327 711513360 128992279 239431350 229499013 231277377 122380722 383795712 383419223 741307347 501392337 867633165 582798542 641036266 370100047 439360265 435461299 727151133 156536592 804394206 643723890 782042937 24473708 130548533 49129979 676931017 338130829 491882284 190832912 266571435 64446038 114844292 62567329 436617212 284302489 770421889 667240976 714871125 711716303 787203805 751523767 770130452 185175934 361182296 90064665 694451861 507060420 881530975 769428978 845096726 465774415 539617426 452065357 531140802 505795291 897379084 507393034 675373844 446308308 934620580 773400016 930067638 717764315 873213329 823133646 997890223 777248724 807297052 326578157 571106784 62069482 993737301 761627573 957699919 41256723 504511408 80421558 177128071 28007919 144666329 41595639 118940725 30905799 708743397 83657038 818338410 88660451 395882096 253758008 604754385 206722203 565116800 361473000 554198431 57773803 799888587 475094033 601011109 76722047 384842928 56883802 492582826 481450689 699762544 243498470 661741454 375902086 730038590 99346271 219522200 134572688 816930049 559357442 687665970 386055044 953200988 586656821 826737838 771815547 833270930 133531367 283149350 202904064 502068075 249364667 470350034 90842817 323595590 254156455 746784059 178634497 941920225 720035753 928331787 776872888 800542993 383225045 484276423 16288463 871268445 606707697 682018046 175112606 388492389 327060611 685425917 548732085 613797162 5509476 100383938 59000796 524408389 372260477 917447921 707704209 792104282 29630052 31398891 11990103 634414354 11166626 502630210 373054363 841325379 735064655 780575950 251567269 490303079 39453240 81088449 30600197 614702161 192885255 217610993 142728966 991183692 268533529 845290046 576604016 719921194 702840086 968461204 496906091 844236748 611258938 993081599 502547859 781020692 573943016 574496882 110697452 534151361 149864223 270721826 237462135 694445099 432068200 463449465 256067556 511489036 519943 955782711 563863062 575392372 293885315 859756425 829296928 989037466 83337085 218412319 27315482 862981042 179919408 335454344 85795403 169858305 71367775 436907034 260617133 984930583 268035229 619988245 46545077 432219604 43190009 182877459 108472694 616626067 584772766 886270702 62630390 180093161 107636742 504481652 321205946 868336762 338884713 632946690 511726089 746447689 307512940 959226560 773626940 800558408 80826377 196079063 46397383 52604764 38215684 448144174 366006832 920645932 139518965 792661138 446558185 469256912 103338671 143722193 28171667 633687257 392344857 440009672 370371858 645758855 191453901 347917069 229575492 783973489 235495854 380682822 261789041 316716342 220141084 514726504 473969673 975146200 700714185 854276267 208008690 857200785 102668765 802909480 658028241 908353858 659375684 818408265 447144012 792815023 118051483 815532629 11061456 630364315 310875239 548331913 477146722 673787716 350323377 469211295 411898714 517698965 455419377 988481876 226772317 944137818 718264202 718482483 458346250 964682557 862149838 886476318 79092254 548937879 263287822 982676603 587207914 961044557 827992513 891025316 327579893 879275566 74016970 752475944 240119467 738114377 83584068 435705498 61590418 756676834 126926431 201413814 95648301 965334062 837347066 991635726 178406156 802411976 536923351 844438174 310981697 864882256 859366642 951242420 600297083 601846763 483942379 623694913 300941899 383363847 101389244 606607230 331622154 906878483 103879842 849060322 808588128 983976486 324683601 739279617 85675417 100020550 38872477 590891186 182581739 954981054 671627932 714585451 49462924 150324916 16028350 166631103 95389522 267400623 117068601 774428315 247347354 634320225 632988039 802497536 746314101 955306901 444061401 566784111 301685052 999266193 269306522 459598142 418822447 897659917 268875749 974345136 898097322 970222239 6321396 63707687 47618369 792127459 110623240 708033229 371525386 879657338 273283209 798105566 307062057 437720226 410952900 704272272 586757363 905195643 444603888 885527179 90940790 975726089 549940614 729084323 292288287 825362125 132386270 965273182 70090574 910977479 856875138 948352198 518418189 861767963 573455353 703875559 599164281 895264568 650294375 824006039 806328478 955746123 519548705 817813782 782260737 824753177 480793023 534055743 269014354 603055671 14416453 49956555 47535857 454518201 261852917 277432635 259075342 945417955 917680096 943669778 780685682 985477922 972079236 995237130 161538516 681001293 86475810 779468051 283973095 837206702 648518325 873697005 498763876 995517099 104019139 898413453 859113410 921946119 839179987 880963842 448459649 906453897 675486309 752494281 152180783 852506735 200070695 348857076 168834335 652110546 452374797 992191742 765420290 991024592 147288805 832825390 732683942 900468967 168124188 680826420 356293350 826353148 804918300 967762176 692336980 716822689 84456286 954680480 350214051 646662468 258508714 951082040 360860487 990346870 462591818 982151903 603082883 649370682 199710845 670775303 118805073 222100769 19899447 676037159 38968276 863507099 788571819 962108356 208206383 848029236 455157682 605197044 187099994 410791946 368059403 881370713 92104403 345798870 231904929 893926538 721291457 937851258 166281555 340916624 190256118 744420964 249411287 960982924 601211759 713046763 301618619 707765770 524091693 676381729 84322439 584689915 370656999 824574843 544375973 676035560 104860422 612634960 456088276 654182713 322723369 761931026 54004606 225728977 116460100 591349477 161845906 602695936 470378545 623135636 348852804 571949638 46587818 713368463 449341295 848204772 433916987 735979831 537438442 886649711 3196717 538420595 371680109 711034051 288792569 355775808 320230553 980315742 481344077 730661153 508129383 998749023 912644919 968124033 403871209 713998307 539103456 821733119 658388050 960016524 232586869 404726453 190730969 756893082 527240974 907529468 164751360 492916593 176650900 496041653 63534358 852883505 383219599 803563745 335071893 992725958 7391159 58254945 34603216 946680350 235287089 409548864 168856853 637445575 557851894 721577977 86575069 785549191 691605959 854266382 376327431 734216516 665305854 691530633 6277010 873424195 60716502 608894442 542648414 732289477 726690150 945439336 532552730 690239617 560597264 799645851 339241326 435232049 368777194 675250498 262966958 425051776 119459815 477766232 176342505 543856680 159919581 696409471 543304641 955912548 893702619 934885402 191011853 687755917 442117869 745158800 586827948 636379701 325539194 423392360 341411843 700810680 422207152 672608133 38192494 560769626 343710504 720550820 271657001 290002526 262435877 719663955 645660691 924452217 877864593 979480769 957152346 997640837 767147457 980770199 512013136 823595808 320180486 919273037 629896986 878341704 696172133 889255836 608420067 618950802 548794766 810253571 768370076 828721731 732444467 742487316 641226777 860409288 498595323 612887434 223778394 562354269 312693380 608774322 464345889 656159771 447376511 772426219 321707309 980555382 860701360 892774300 245248526 928372218 793222929 867710607 487897423 655641429 511868252 727433947 456221318 478732409 280641614 440558718 60482842 61909595 48210872 352314185 219108120 467423571 261222094 660368918 288466570 311006527 164669204 538467473 156715279 982268711 38129343 343001505 17395356 525815698 146756574 850063877 598063045 831658044 814803087 817149193 770063144 935048084 582184176 628988099 24188172 618995184 436819338 577743216 110937015 766720058 715375377 779918616 779728500 799115683 265856582 510590648 290982641 458853696 421215932 815538159 600930567 605504580 577785605 685503542 190586866 360893535 9673932 857608705 719950235 861265372 788675499 789961094 154552320 505428393 414313130 715612839 350576608 429521533 351588508 452387577 306432003 703104379 119696214 450746613 215079697 508531762 506381253 851096894 475661407 586231098 284210044 508352896 118838003 659295670 385888543 762252857 86891210 599522065 595241517 621121965 106011298 492685439 372712526 952864043 254276561 931593060 44876322 407383659 187221242 301440235 32842363 588163912 172580931 800002286 795477110 916851190 199123515 684169801 324409619 904247712 612052066 624183039 325015173 911413754 757286496 951949100 127018077 314365006 176665590 987981438 563314313 993839517 792349106 942381341 371062163 580579252 134458109 286817456 283547584 636593164 16666330 114791577 61049541 74765936 11900500 559234989 516783199 654447192 350433416 798490713 479824956 861964674 398599355 402698182 41724263 545718423 369465487 980525315 613729289 714712412 37536743 181811348 15785007 312464746 296711066 633724176 14503933 151814936 105879733 744421548 439509578 497971870 376691960 816754152 498816476 676878246 530871338 863505070 543451528 638621116 456061488 688195782 22437736 337018154 145309100 173959969 84989746 579673493 547361034 566832762 446943886 463999657 353191886 674118105 284325616 409334395 33316920 577809966 376238869 957809499 131300702 137328597 5737044 822945227 606184931 980748013 303571081 675034129 236673166 658527405 605762424 613764804 405361248 528168956 368679880 397958065 10664083 49577872 3452061 135681756 66578209 640332596 507578095 761622065 392439954 615929410 350979643 967086665 215894042 871355202 519027606 858555438 159956009 634153972 307877983 839931986 839769369 883771820 463324503 696898367 532988012 989217506 62909998 838642613 49716867 947233486 226473596 826130411 440670781 526262101 262919835 661429515 57133366 839309438 110701544 351085202 213919611 746938187 269810376 431234687 241817973 889724081 463267074 494463567 46153476 937870350 757897385 846109852 445039685 694589039 281101097 289160079 65103268 90825152 6338434 766417179 502784255 918287960 134362435 854358806 829905303 920505865 171473602 552065072 237818139 340069028 53214325 514544077 436201479 466883918 199386191 926586444 210675209 936118927 292953551 510355237 164046417 440096738 226723322 244076956 81629103 343760048 60905634 303359939 223520211 899192131 455042301 977390618 891165179 903096705 793447738 861121372 486045558 707275353 406402400 597011847 37355927 209684993 8473774 235555364 142530019 433426816 125428076 406340693 348893025 829788039 580480140 960591387 935773740 963333203 135668731 746782591 374551666 974669039 561983079 955485394 700767082 969741072 46268840 267191116 249123188 587292773 303522478 801330553 564513671 594092396 222249080 516761103 427821418 728799153 375891767 655208655 626426098 763805367 160461825 209987186 124057684 420938332 96527195 586410536 516923318 811994114 693994521 914026953 119181819 398133107 310381912 662323992 72243797 792396056 785925812 960701646 184970907 946560161 104378066 668245445 172629472 834024709 725032640 731695448 675715750 895236816 691566932 829144163 175917013 780544484 505090802 777013024 716681087 822927784 473159617 865449173 465987654 477335429 113077948 529423607 92628328 242825147 87433412 818304914 505117188 839223007 476879400 753062380 313947644 838933959 187625760 771519747 497669263 941923366 196161472 834262079 1475926 326992687 6785627 653852899 212718958 299803116 74982281 659371365 324300622 338396727 234019377 435098705 135654178 306926392 99000913 298721171 56503586 426327437 36945370 808482061 485750074 799261238 59987660 377357734 44579922 747095844 216743579 314021652 76390608 331009128 27174662 658153169 356080664 875936247 874546362 958590359 438529542 466680596 388060314 915283583 849300867 949093168 432504179 785031963 489264168 689440357 159762606 890595710 122357312 768540066 641426316 838278761 355630947 495440123 250238952 316138914 114123170 416655740 268180331 584204880 170815857 949874792 460784999 672708182 672246274 895874694 408630531 410400363 298337169 432753720 67102791 544910867 433889407 941987993 735017799 746758920 556182150 995530348 722473089 840545201 13485602 514367364 194961301 218540126 187697646 427229714 20603926 536807854 292448195 812223927 713768127 919785275 383275788 861805512 291470207 397100213 56573973 652434159 101899123 761669861 94377222 239032477 36291633 306979083 108978885 838847480 669955767 776299791 690326161 806342991 274146106 439902844 333080753 405491092 281434774 447359891 252554800 987702753 786809623 797613304 467240097 888165762 66949814 661074682 206138941 842359047 205799874 228102626 162186771 267311425 16244117 479369952 66860843 762242734 50139917 508443246 328148397 870348519 31890203 283954929 213598374 836171632 56941313 999410982 467359400 931297028 788559760 981610872 577343774 730361494 43753453 682991492 539123342 859934758 384231053 447737329 340923617 461717200 416841689 780244278 84827161 364262763 354215793 755123993 612266811 949825568 357235250 894347940 791113872 987456711 621519013 893196920 331876675 753992166 483591482 764301385 561583228 953351368 503359165 586645041 383872506 735460267 703461969 804366360 469845459 977797988 849398954 944299942 715493140 722316777 524524852 679111445 12481114 615974655 142063425 217941169 38567374 665583331 367974077 445563003 16903013 672598303 266698821 533439663 207050675 776068072 405670289 884132218 6415889 296877574 268423106 395206455 11833082 98244749 12717857 80939567 78243646 310400623 173519978 811209212 686655897 714274999 499590 222793360 121046340 303303376 130058420 802217663 363063101 374080219 264715652 733987288 457266027 668828369 42764655 971785168 440117697 723156800 15544987 598363031 534229057 821946691 215307572 778645394 77224304 727489669 413518414 588958819 272469040 798764569 462285700 625696471 453506345 465694625 65890661 604851589 217383683 952149199 224972109 768816395 7884054 736148848 84625532 163499763 42320192 802323215 192132947 905571308 7726402 528430264 211936021 762206270 479694811 554027493 129149095 744905597 163024958 984456391 906609701 966898368 562512929 985210374 84857714 679648416 114953480 188188483 73746390 990623981 304114069 329298272 12981232 44967865 37824332 648890228 97582548 694397698 218763332 853592992 372971729 935544513 469964876 877804910 609509012 873337918 324713892 811163543 409095208 821872271 723846112 998697383 974879159 999402018 160260468 663678467 143772375 290436127 184235313 366803349 180851790 462058202 307785122 367489263 300416664 526470227 505642463 533313901 61397525 188740803 123756797 823117850 382223518 436864150 319758320 368923634 297464693 430001244 367279136 385180430 197604503 606242407 149450112 559770575 292092063 973204042 242175585 766200784 444612653 745895045 466236776 737511263 159064215 506293071 77360299 245623564 223928132 396084463 263667562 679100813 510841693 803011233 227017186 644212455 388150206 916231461 328793222 415829234 135074018 832720406 458999286 577972738 64050649 878011248 381327087 465295281 292012048 820176808 338796496 821084525 678462136 744500084 211547931 424154646 130155791 340314017 108728782 734333753 333014063 934216086 787559412 950991213 154558982 324939750 218684438 702704342 538481226 953204564 661113413 895180359 217599385 499594513 32391956 753503174 479648430 564137438 490622264 987136731 847143904 865428316 208537666 604798056 436418533 579711575 168301716 205275641 4987859 463823657 249873596 489756230 6172190 892568531 245922635 860206386 541455148 656874327 428847539 734114479 243606803 432713630 30860884 405790038 391274301 647946407 284323445 931008104 268577069 491869779 286361639 488266399 43314994 108574183 107087263 735525871 401703978 600085260 47678438 424108745 254671860 711071182 52965466 281374610 186572414 912237095 113436660 553270524 362884129 711969116 7519438 231089987 221394568 541700585 344111143 928297251 197229499 855212420 655768607 761851783 288108330 569432747 84629305 682728927 409815592 686368487 43701799 114400452 40323965 466812582 111017497 169249036 9533986 524396638 242553239 868041011 405130753 977777496 484734983 497621579 422777522 965802593 203086646 839257168 433570528 540468067 266090594 702057399 129544058 531588341 376683943 620943031 369651414 983474605 235814666 735601372 347435102 471520368 409617809 815969174 56714531 787799215 163352909 935031660 685166468 726299188 553666904 557413950 13567443 942589140 78690762 117702776 18343522 469570847 265251023 493990022 365930067 695050550 557086557 806942706 643386180 707134699 113490599 809502260 796486968 838592973 440582833 802922357 657776576 782328253 677496277 898869157 486251272 549716917 331330125 638682438 579788276 716486391 708724080 808934496 70589522 217419578 216124325 853059411 684287796 828621249 386252128 792301292 182481049 558578632 86315758 119220782 100595159 497569840 304560101 840955805 715835277 762978354 563678114 730337646 369650263 559769413 550688838 694468300 133423100 972973578 800116602 907759637 832896304 988763759 797239617 833996043 306473732 570534894 566112969 945691120 7678770 449638695 306058896 360816254 57770019 392143269 137896463 879461388 67944285 546575854 232629658 644767377 114967787 302750969 18322224 818313862 397667741 524187020 46190685 617592289 168549373 653062615 123847898 227578406 101793926 856949609 527828265 545432008 367517802 723174953 611209407 746404775 240228603 399669716 270533394 432683889 221686819 684019915 622288145 906233343 482227976 537787277 478330046 505014822 356363761 597253361 146794749 524962728 29294556 103307766 75620920 377500753 351306154 363215243 14599178 200480900 131730498 366089406 223246962 271576454 180696675 985644212 980028873 988152585 949066301 974559610 363167644 978305457 49454976 812030154 426742315 595920795 112781253 828260684 573921922 768733142 470499960 877463177 853928310 924389284 485609821 985213511 270407001 359389938 351720702 658351208 443430055 562345154 399021828 591914281 250447997 569199478 324839473 877768344 126412153 759408996 208045744 247867892 193811245 615231883 476861789 877808951 667874780 782542800 227402771 984128050 680221472 698401836 313988425 914789423 217907628 471678853 250400317 257157444 174930765 850490919 392651077 951403890 713906170 759213047 295700632 416800689 254339713 834370385 105791367 656324984 616629916 894318835 533869821 694796246 255281940 430596830 5538950 692191194 149432726 521127317 440941602 525919831 284563050 321674757 180429641 715512960 7691775 821283279 568906960 793033471 320712329 885200839 160334847 945367240 879554048 991815724 494190777 522932123 431613842 709836077 662680906 930440462 541899409 891956418 889813580 948682133 463940381 872832967 640287564 701646074 35905747 616176433 396921661 540604873 527801541 856593788 399151855 922661940 270872236 851350065 352019085 724521502 539521834 798955213 7350943 59170965 21437348 873225520 284204197 344067739 297969070 539149495 350607522 894831573 809793424 949056656 504694272 626057854 563048291 854722689 257842030 480162030 393585804 691252779 631351968 867919778 642350659 756597020 496063991 983371266 691728714 792490398 295990381 385167159 230652586 553255774 481948228 818449934 653072684 876437347 98972685 190674474 187254816 832588794 348202113 630128054 392059320 564293453 397003635 739630153 431113834 764921583 519277959 857247837 294684671 945244971 373035037 531815042 495426236 887067089 418020226 449051431 142009893 229259950 98193289 223337173 191157874 947042605 350963544 362025678 8582699 906920225 196701807 464745003 383862165 669319137 6016930 258666551 54423056 292437166 131828914 358553404 321010737 566200030 385207659 814066047 440560211 443104810 188455821 290595121 31498342 955929820 469902725 646240916 76320328 807010155 759361414 909849798 656113433 798509852 796972694 831136299 52723145 348923635 95871337 989344620 213198214 765783781 750671379 830311135 344500541 475129942 62560046 982028105 195379876 939958904 75760515 341353024 141626314 205609554 103808541 718852751 570014881 617181852 262278684 444472764 427911131 758251899 490222067 715630599 686306802 971895358 531292136 854683802 543008093 979932925 572104672 716737961 208214117 943674485 214021961 302710128 104236382 481143774 300882193 962057418 294256401 416548650 27845713 530679438 356142518 731732987 523233539 821194680 600690121 768448197 219874196 315286484 263105360 784489980 351022875 554603286 345666783 622475537 33469941 789594266 128882475 308081247 16782601 293328384 172772236 932181013 321785410 723140640 409878053 578033161 135232827 601456494 415809911 746664518 398791538 860855595 848596676 854663954 839043016 994811002 473601947 860682414 519734405 585036547 420183921 854074101 351333170 996016473 794144692 879251264 310894806 706841221 274712882 769031138 663236966 984959035 302808299 545545173 480706253 887267237 418918807 564112839 542862121 718355691 338462686 872749424 369217361 920900231 595810073 747657577 453616014 763801388 74268538 355021669 234444228 451891794 315126026 494087401 404283366 785817682 489234651 831289307 659522068 822455217 667839126 694560595 48573628 288791432 231303929 462910045 107299951 768560516 100690855 369225143 169230317 871132390 92982388 850110513 65990351 730398595 132051051 566567053 10856201 286941413 195244701 785966527 319112634 362067616 288848360 545041379 183085467 832803210 208122974 325425603 281790524 484835955 84068078 608770584 23081802 621811834 106203610 989864772 710060835 972075363 363857255 747695786 702448590 713626128 705414309 746562469 587043538 923294551 913426695 990812136 901295278 913662412 790238017 920888294 829760810 970693353 676181713 796753280 548524108 796646056 456248971 609054083 577376723 894369959 709681829 823162736 749946566 994209707 254490250 449381507 111239642 867251310 101634230 970776371 94813551 752289357 115013267 366062544 76965033 444082779 137141559 793942917 596817651 781278919 56373582 783922056 447246426 789912891 663909536 932721064 89134818 416000500 375631345 855367705 23022830 596724004 199439419 918091668 769870685 783040820 581071638 806245516 155308264 324329258 66970078 745260222 677690773 881397230 632321364 755212131 731988628 995699633 845588704 938306394 675573337 696162310 121177129 445901017 17046430 494688744 266595085 340407687 261772249 841962051 144714585 973629936 99319323 278097074 49132211 599177196 589002124 730197245 378606149 461351618 17150403 242265071 193499139 553061594 499327613 810156615 329964354 454368821 243384610 937060201 332792481 901191216 346189696 690594451 607598633 807719335 681401592 705959496 631142481 747596661 735142408 953984142 621071776 759101621 461455592 671737404 181369707 616180839 501047502 567329662 534648582 932097075 14263096 148212984 76367960 186229860 104435293 175998249 72222299 890734461 566545648 712576914 570927231 593862038 51351554 863502794 332944261 632989631 434743834 913384480 665378045 770682140 262179194 495007446 215629003 234191313 134026746 142032093 21221956 113219897 80392714 340137090 152963640 478366664 399420375 939739447 774628877 824522153 608395271 846544809 802880580 976326394 859372725 943181701 769002894 831970675 585989245 753259726 668527163 701379659 213553676 707504885 612200964 872578500 268484446 999755047 507284864 579510816 143519404 460957536 365041026 604798624 527212076 774393419 503244647 540982046 73567729 295807648 109206672 124858717 92485075 469823359 299187393 417621778 112053809 666225128 355017675 635526236 426133088 729750301 367418143 533466301 142140204 425301568 187236264 654693116 634298777 663580361 445882517 742976598 62056125 699172044 666217657 765344909 329553556 890773830 581669415 997993642 407398813 996543846 582857581 805028256 617009000 797116706 176121888 576441794 413540225 499988167 43453978 241209502 24038853 201500374 21196988 346921161 129703232 670100560 402185368 808293370 338200246 541803145 306587508 707012071 478121516 721681003 687333397 919745818 516432915 862211589 434525705 685329936 582561598 793679502 749784429 919585851 521323809 856715437 626967828 655287308 452287306 502248258 495916569 832072339 125372690 457795398 219939503 534505542 237453694 242330192 147235825 218085857 132992212 293394599 70655388 494954691 258363601 360976200 301352208 773712014 609210416 785850640 70262169 782846536 760542317 839576470 314695109 978641026 930841150 965205896 948567637 998791940 116254159 156610226 62400461 521443903 240412658 318006598 214722285 809788269 102756941 122241949 51173931 508643270 70730003 897049654 416668920 793767067 775355583 895677593 276027916 504145975 248364378 255833211 45278198 922347880 203441072 569010343 37405771 931724573 234250548 605653231 81725156 604948474 237194362 336775727 96020875 146571044 109068175 218731313 168276081 180540931 52306894 488975385 423258316 730117116 668452781 883614750 782213284 786434396 159686452 241559663 225523078 818008314 235915789 892767489 8766198 776389549 210194852 275481299 229334257 820121450 296277057 479336130 51424172 157973812 9732954 36213513 14943402 230498917 221903689 811215233 634960783 852981072 70303031 433629434 422876448 708013799 22453599 733818250 197292150 338449193 65277150 929371812 35887122 809391991 245635925 960136440 115860886 781939392 383703166 916107477 508304289 879013098 359951153 582720586 167522040 701182329 565221146 656514214 265286906 340048125 4002614 633365213 274882949 789865983 57668407 263575182 62911173 882024315 583362499 586156180 292637073 755874768 84044155 457002264 401555077 517855616 290644131 485133083 219677272 920158614 713735393 893455513 34516901 951657864 842944252 928164354 668880722 680472329 589642084 640517722 20852352 143017805 45920278 218495642 132429646 575874672 346281773 501802792 457817923 662212108 117308259 508282908 164478241 617662516 516107343 704797519 618064858 951363663 805279486 863181580 800614523 861763179 580223859 665555447 511716296 752732855 683838822 972966698 905561486 944001956 474846946 765549688 63385582 788852419 214270253 472658088 384952272 563302188 379972530 751020495 186585827 567693052 347414311 578945273 72489075 317137653 231353731 235955484 162556426 235347071 59646759 130609995 38147982 89458192 7944002 728945887 148101352 931934371 212854787 389122046 282197598 932132907 471635948 995368695 889267984 898496965 678681498 772845959 414440406 715628755 60859806 411943634 264162965 731621741 631352338 739609571 176406237 653404710 458792664 483631702 222083963 698164780 121218804 365071646 234712063 567505005 504773227 914178376 696533359 956596863 116971936 846178358 11244267 919387585 848885130 995888409 174701590 213076066 72956197 987687417 176710744 796375092 562179084 638896713 371109297 479799737 49163494 834844077 72088256 844061379 49292341 642627996 324092987 591771085 395658193 691787230 211538683 508172086 8364911 690677101 43982274 539258081 145990546 436034593 262117353 851734543 703654773 886297788 875391938 985969608 846884089 971608515 864473360 874518523 202948484 728663799 133485991 739527343 514980128 580526349 410585070 761046595 711089486 839088061 257952984 429459313 418672960 489662501 153203936 513440088 510558246 939181193 179218094 850208047 498916880 920230826 632077707 641810265 520485208 621420143 131897474 758928768 386753123 494015950 244624339 787821986 280181338 896283045 545812679 602313721 386284462 750978596 392365449 829381539 285435191 595920390 301361283 585844012 560669714 788308316 81512599 271141700 43999968 992732021 450767498 805588906 423064177 452039246 299600738 988368805 504535035 543156451 396285620 397507968 291712708 455178732 213495437 423871796 250166426 711411509 134773008 581802756 88785586 998344896 615016162 822303434 207580456 621702393 360301645 519326757 171376516 204223941 144314200 986892868 833684066 894057558 160596077 511718038 58831442 500126758 440895788 865868988 343251982 826167837 416305965 418765997 936652 465021244 300951843 825166811 723860158 929141112 371584296 844692439 249525394 454034036 276167974 725115632 545926969 827311273 136460283 218162516 204776297 697555612 293376284 544817796 236907188 304094734 34903258 386308639 305356949 551147223 436759014 614456520 550574554 693561471 186457703 429462070 74987727 708993908 679715834 882011671 169212547 497530595 497305373 590792232 422813083 573565221 34753134 962944383 809479159 866654231 84180921 518181579 457524290 764119608 495272383 586877024 344484094 620435997 3225246 436512604 123693410 570704284 345731496 789069597 402565647 803071983 666376572 789233782 552058972 737808169 662903710 699672816 191723246 232835419 91148592 590110582 151626372 201877493 21804216 438538629 270628528 370583955 296144089 715895269 594057188 599920538 222111205 753770116 158741491 571412043 93058634 969619092 300513794 522711535 202606888 376872105 170946479 304406199 79221998 906063659 202429175 615362806 614230779 737291738 525157425 586365012 456692481 931298292 614310129 875066853 127625268 783115289 25846936 377864527 295768798 629945360 491999968 871442480 335292572 878701094 318685430 658954598 190094187 948757600 3709145 881785718 503579734 701707877 75058480 597284820 247154740 264857424 211858004 297829108 254342 245852307 204633849 874580305 420059311 716044098 57440280 850551864 152431686 294916676 256807717 661369666 188784318 503680082 78689804 410842799 165455410 426047301 112368968 663275845 193838051 475629535 354778872 799619032 284744556 500101300 79438332 672337731 478910429 770629099 215715310 613002158 196611058 634596872 299798046 326592923 284765474 862740771 199011927 861326372 121041555 161227096 62792258 153732757 113744559 604941874 463589409 544458215 396360889 935129545 668049635 766618693 689127399 931916518 499358765 827744885 572433158 673335385 344797761 584085426 386922321 479632235 274902545 324222799 31358705 954508787 822338859 926546616 801767376 809320841 181157897 230172886 116208886 810342392 333786342 798033421 317175806 924215726 544663660 994221617 155122469 541483533 252163886 693737891 377369519 935048105 864448756 982388377 850852067 997943665 775373838 986938731 235004945 883223548 400122484 902117010 311783854 531421259 43947290 346763857 307411013 718295484 237923558 285795272 216663318 640906915 640548569 940641919 324612458 661262402 330677402 731384730 474204707 523779923 188271719 877635379 171586962 633847553 2718718 995555241 677727849 746388823 415189616 874016338 126143923 697236390 57939223 624741228 557326896 603023846 227023146 903207354 857912740 945378648 478971693 811080917 162667436 182575006 124721972 435300317 403305715 727578496 648774756 777130879 734762709 888229442 310366024 621375025 234422990 523985326 22945443 838865709 736919085 863157538 536958448 788120540 283943675 560643243 196230024 998574622 13820609 135004917 121523941 893394255 328357678 964298115 799605736 943903321 524126645 629218056 363197620 815585177 778816172 977822643 458904625 978087853 80121660 550099519 266969334 772277080 209448159 525086150 191130380 970346753 590338121 985107112 29136514 665965717 525518016 661775459 546506876 985526301 920874220 934854747 680576546 952165289 605820239 645704743 160204904 297444815 169313026 580440122 80493003 497744205 355383574 628927163 589814213 614923265 574867193 589634794 401095307 750042279 222451798 425641070 142130659 936748127 831698951 852574542 112011760 667271990 631563388 821284303 324650786 380376381 234330531 250420505 63057768 214509886 168843440 911723094 91157851 176654547 28035433 307439951 171646308 539420817 411811719 758934340 420364452 459924138 341528600 767483534 325992278 462640646 244750144 831068494 578461821 754747040 751105766 764326708 757476720 941906721 199046606 394205969 221288250 702550130 273745402 662350290 490980744 788967701 71132430 347519944 328430805 762850419 424614384 990781363 951343626 987768636 56263123 801974672 198562595 576769375 195316885 403596387 138634048 637445860 170092883 172471399 105167660 117780919 64865574 111479164 30043645 428445038 229120889 353035429 349409283 992094526 496295691 816811604 656197146 819452861 669544544 909619269 32519193 401195608 180669956 718783521 715619107 896510941 359595716 871152815 517579553 946699296 933778912 940650276 641868395 725066788 336454818 665408832 471252719 620913755 545191159 745317454 327988267 724297357 271109515 838949751 703664583 882309567 445812497 765349700 182642431 682497944 81558184 307723711 17374846 338450494 124746052 609235170 253929182 505383530 220220382 481449454 449502514 808471262 396595524 559921507 216409036 923187200 282442134 815091320 235669032 558959724 197216385 303163896 129222235 760020060 375789884 860407391 632097234 806657087 522619019 865240425 661501291 697838152 666778761 779087639 762208490 957206051 28006805 572639685 423910562 602462673 406943567 501753646 149945921 563177661 95871640 511985654 57940964 406511620 382160794 492230822 425241570 454444959 288179999 660900725 458986206 852732402 378313168 830221276 41135683 691862257 269843854 984507118 281134588 788067485 477383687 547394954 314633223 696072765 453180433 710978940 432094553 515685443 16764668 360821398 250475286 833905788 241188367 873344464 515062273 984462315 480220690 903004055 887546641 997863770 119408425 495120018 346743860 937567890 308137115 885845389 673965293 779976002 639193677 939310190 937314382 972483334 771404213 843985451 556038982 655357067 207534284 675303511 84202484 363941951 245234700 909440240 675515510 710102314 301540097 797039452 415108970 484190120 444080973 679587749 28868466 610802489 161812850 162846216 153775126 231153708 109897446 566142074 511383390 866312735 399064002 510557279 494470761 827269879 15967105 265662794 187439608 316611935 306873823 924900237 78621477 292269115 289496196 506992654 314912388 677554795 80180776 984873125 804458245 879018974 750451318 759503082 316338387 897358562 102676177 387794725 26839623 429844538 102679847 950637544 897927912 998799172 307692469 617142419 71366715 947961455 569346782 884029658 68362311 650121376 472732586 609821888 116571386 737448173 581685627 598768759 368038687 382219562 57575474 473623895 93936792 118031999 97357630 923544081 324776502 989957802 45149465 631196048 268474040 432906442 423650749 585469917 317088382 496183064 393005232 835646937 220572851 806224899 337198228 731815944 321098605 720936136 322200272 538662539 490693709 632309642 113073268 995438551 951724049 998942652 435654368 779898745 88319446 851881216 167494072 520319323 203626036 711541051 442185322 715817335 595682451 894142820 526478524 905476990 346040655 882798962 266526446 548938999 233233509 827324770 808140011 878478332 660909937 771257911 42493039 360069068 281336972 976300284 304891025 857253974 846829489 922202599 772859175 965663565 36732716 887098300 294126596 556110307 215948337 830382366 266512494 407937319 268021893 725474084 378338182 968865676 89885744 896471024 715715531 742315813 686593830 721130117 555706034 818327755 549319266 767538418 374790276 433317764 138541642 556364744 429704744 912249265 630804494 961139940 213209375 948888038 392015779 724787737 87845180 365345305 208816987 272383302 159529612 811612654 455411443 969671288 457103009 686552847 120165103 827707897 173966465 286817929 226199022 390887564 239758352 849567024 683286637 748564133 495412645 850769452 209579311 875676937 449500691 508081116 98276310 635859352 630031375 999704734 308869110 598683637 100212857 480306060 132857646 529274434 211930183 860756526 712685103 887931437 780807714 899301875 104588 71778495 67207240 596048164 363048446 494117040 204368207 909402605 805254745 877330379 651541743 795649116 222634266 953769483 603820398 631803528 111577118 637620235 565439780 959454675 923194265 987140911 715488393 762572640 240547460 721573704 425308966 737117847 245774496 965822894 79956515 486381362 65443925 133267507 80016677 902089053 790729244 869307836 54472390 456970232 268237312 670855704 505437526 829396079 101533962 648898239 591258579 722234907 431932713 749459660 397271463 785028799 398009028 569220324 290445841 889452512 655089440 854433915 392092952 969826764 752305376 992824104 362382881 908527245 879355148 924045279 752488828 980106991 138515679 854516574 379109127 398942530 277664267 536609361 428354485 476994789 365847787 960519952 540517316 676929131 64064166 185457784 95266996 536821049 378405308 574674605 150189283 847753191 685385877 893189702 865992372 872699814 180021102 689424052 411078938 941806679 308046444 726964368 120286395 715225873 515377318 574048642 240242076 284427201 198652593 760759660 624511694 720751033 264197891 333032231 190695102 368390491 11376488 387006146 120038901 325080822 128714685 250172470 32938641 501228522 94933996 878392908 582852110 720708560 105997717 907299540 500412735 748121138 476509375 736919131 485196523 902079436 138794988 192069257 153800534 953157786 660287347 977958634 654349472 798722506 13748329 751484072 396566430 438007551 368427079 742869926 95732770 571843899 443569 523678920 374144863 708452164 18061248 42620463 23890633 942522112 358747445 744883140 656584420 927263259 159500982 349877396 153944209 722083949 351561423 911071769 338377670 384092901 247301391 289117003 90326636 177746298 86898022 598297233 445309620 570257274 143810025 624508244 134402761 231754840 231609129 411269515 25476713 219802926 81073538 602850457 584872090 991792922 295869032 551346215 117208774 861818190 168187886 451456171 346173110 687864324 22103469 323245880 307922274 993318765 475643703 664494733 532296319 537373137 421422687 525319999 112365857 742346364 377213182 663755877 539981067 773243011 115086109 304177917 198054755 368431184 70958026 535895854 383775995 825210896 158734428 721374317 335828139 665782328 409765836 722809248 114586355 633657242 535155691 851294907 284485896 649019064 183577107 411739469 11027165 868307248 513074128 809114119 726019288 737901754 185731244 828441243 259231981 803626047 558211495 890005225 724437879 921601223 659074311 822413727 46267326 864156388 664087019 741439927 289887493 957744689 775449884 870777285 16802332 127869765 72296420 277765780 171547074 826846616 171146778 568890985 352460852 697672793 54834040 210283402 57508694 927976152 140797482 249005144 242241891 876088223 835780040 860469737 665149450 794197716 258799844 579084574 141114517 599436295 39016719 100185442 15694167 811602446 245878344 967508015 684463017 818361236 197184715 599420000 448676427 542746426 522135241 640128316 274925510 599850878 325224468 698697537 685643065 948703726 315629003 391143466 60914310 701193461 537040407 797932639 101900422 254632578 133744464 837678077 648368464 960635292 70072374 683543785 578988727 847433313 404945827 432487281 61398933 70320666 55802508 349888706 349344625 691603481 446350982 602409892 364937143 762723666 732714716 766847906 712234073 826030879 664981308 946675247 528553492 721372516 651304404 950565541 950145500 970856325 968376284 981427432 65859298 666208629 487596560 551005044 442548447 924550292 860692708 986375139 48116078 235971165 202068503 242515600 134584142 958604618 63330164 217964501 85347595 775894273 666685854 922553734 852634979 951973008 266801172 523848161 142787135 987880567 557589163 860034996 439620204 987807313 190729202 277680902 104617615 171983973 2243284 483409170 384018305 461644412 260022760 850668649 109984318 640779986 564936831 954719063 582446912 729818277 506514663 734569224 528551128 802063725 320348700 446419841 204732661 789288424 682296507 864222910 48955887 391340724 270231765 656418691 645887617 687221881 346939760 448439827 2885600 885466915 611670010 859439935 615114953 933762926 676709849 730717927 423821171 680916882 401046880 668212165 486817920 914399803 490095841 870332055 16471711 93229785 45550295 985611103 956703737 984450832 321897429 894529706 830664800 880684285 388565442 592481273 396836741 955392512 73444386 363874436 258689515 554191663 145683364 783046499 624685589 674828133 226435181 619750787 338222539 424397973 45423014 825854118 598110142 711793828 49130674 84362367 4487287 436214195 214957028 920349962 350256045 480888345 319541041 590310733 584071443 938837312 319845767 737308372 342805591 951338526 209317681 312725157 289314220 893733070 473614694 549332803 410217847 431863205 245535253 455602179 324029783 772499355 248909250 507516608 196877382 210062167 38490157 458480355 404627434 651364710 430748401 444278029 357857116 668290434 353120839 423085225 10385228 557386205 496907702 682513189 304302607 362131555 37507181 392963218 268210463 277751857 223169589 805913280 708927068 936472854 706434724 777104012 207425733 464753738 354354902 490657091 12537007 994972378 818958377 830467941 556263989 654800605 508959636 862281558 325294347 998561639 449257017 798142525 361764556 516363823 198496147 280493776 128038274 994165102 600953370 955374011 771643035 787215385 488623513 500200613 489469313 985810524 522345702 853370857 35900225 893635976 248168001 973819285 279841696 713960399 95645911 751220968 485845236 894196540 113039598 457496208 357998219 431261319 134770693 992489881 775479148 978902880 916527555 946867837 853159879 906178785 587592672 921585623 793260391 969366534 196108126 636895344 212438881 310523818 57430782 266485008 166066872 794355028 292515125 793889775 59111125 234117895 191059027 576888169 428930799 676449601 632421115 987273447 278856077 620432442 192877603 618036188 43750669 604872252 203677249 588968398 531031200 597186410 287676410 930250551 537382095 547004693 164324080 408901049 281065350 344012296 259768184 752181425 612883884 698931041 103054613 852567755 734606087 869114853 341822756 718857637 644158410 844524305 749345354 824022595 578679901 940969944 328393480 858400819 212961405 336889543 286161375 810919198 523170749 659848469 111873415 922199142 195943382 900637979 15669255 589005920 381271357 483982671 13663935 571118032 563007407 661938126 364911967 996257069 580916309 633799802 11776182 74962443 21584639 877215172 433837814 658306653 37245818 343202523 36927255 62977148 38328239 846676899 151593145 279322599 56547352 567653106 535582626 992434538 805521086 854734466 797316428 823372031 466475503 676779793 486683065 659934879 389990564 907055930 520157264 744183575 615162861 768381857 555927324 729478744 271245456 562477144 359167582 441496204 242172846 999215471 729183153 755985979 60293474 757361068 664746971 889313838 24533989 569382542 427254845 596625226 364201150 591067261 159422567 572562148 15457152 16146020 14781308 854749065 688094777 913093554 117711600 481919998 111499929 766295953 134891842 635809082 396549009 433286008 356719913 627703107 448059713 463314764 61277905 250519428 72045976 441216467 56908416 217811422 146453894 424573150 263126598 696369981 404681855 608652083 332329063 656707955 263632406 381028993 249268874 980615022 98411417 834040108 107549650 977656349 47041427 785700260 303995532 827538681 199859075 258550870 102743107 953236838 579953810 998306785 789282441 842922843 757902965 961056221 447736825 896499724 22789747 962638913 126235309 520028891 129670626 962615577 665584367 774325636 737917973 746641824 661106593 779912353 30983389 185492827 21152842 983701757 860239351 914482270 661442637 914976036 572260399 606036116 490237908 670858242 556303952 756759453 356711716 966896187 584057619 656171833 539776912 674249402 75408362 156615426 142802695 285410979 205315284 930109272 653080388 934187832 820979160 860995863 75868764 308097412 240221771 634037434 182877674 962817361 794630777 822303899 324097279 812884719 282694513 375315528 245576074 619145921 535928666 768327300 174767406 714286998 600813276 644433186 255741076 871520817 502044243 467118793 985615728 291851301 744703244 539195741 908518508 218261512 331316179 118015130 387858757 204377026 448966864 156537473 387996252 120462531 883043060 244979884 686301150 344815783 684083985 260193114 851591371 177020010 344186174 266070275 851306580 497856333 782405410 421199112 962013637 560255390 761179088 423586746 766071462 462643715 789341285 735483403 747973879 717488500 830458645 338619915 834859482 794898493 835415255 151222441 816640866 143757406 374033208 315948695 574057449 171528580 328254121 3569480 646495460 87423055 995706503 533786130 951792012 441252608 748308165 592318714 736673683 327180156 666607092 414425393 963929562 924213841 970624403 537761455 861084070 399318523 689511722 542642909 576523951 370074619 512423395 48914675 972715163 961657569 988316795 403702212 766558267 133606787 394515648 173836468 766598583 761041952 880397129 849010567 904113975 422525788 473727593 172097114 603030826 15821730 526343344 277145438 749737042 719952521 903579231 265630245 770566475 493447653 801040806 555872034 583686216 402949865 563284650 344229867 384665452 129545040 843339562 329159818 806010373 653127333 789042855 631413959 757070978 588118878 899159778 334608382 823798681 430815052 506941295 6355774 190941927 177165914 350259511 97782770 695674847 358967346 698773434 242901036 282091525 127083074 288530119 129591762 869504342 580344439 696519195 223227791 991070964 648773962 708519699 571241258 761864660 476258510 604204519 371750617 816815418 624688058 822472854 120485755 556939194 111385922 991796414 598226787 879808792 338159878 599023888 379727319 449133596 382935883 748988557 180780529 465851240 283040916 362512599 210652301 830801069 129248380 370064590 253471541 972892846 547720354 950062847 800012460 927752895 331710625 716008516 185238406 742243824 597680136 614890965 145278521 206277902 166427976 789882512 185838160 657792217 482867262 749755850 633922239 659748211 110076419 194822954 49194620 589393135 388949556 975137330 8250642 816818916 673508704 971556220 292389657 922091591 261529707 551434491 52391362 362613628 263033637 595920107 354241785 717355469 531571719 590672197 424931692 430287615 143115119 618341896 148716784 448806243 247193034 875841623 813563932 997853338 421248751 473253891 307735616 857947589 48459138 724925267 123189416 805496081 171858484 677486220 518612107 624081661 429912422 590421248 562518880 992260664 561033239 900081740 853501783 860763163 115220767 272877675 55792057 719224161 425829522 463669688 196610596 970923790 770855270 965274839 643747514 755942335 686702798 910439992 895419367 932048429 635242505 809367238 94986889 335419326 61347680 886121007 561583158 820381664 797075314 966563029 789042792 975476214 14522076 436485110 311724824 326737195 178913964 450782082 24122718 442724948 353170112 513334010 173245869 825518479 441714154 766334022 8611376 742359761 595629609 995023373 373307363 405271358 344719732 956617924 115411266 619891575 208846412 527964432 220384155 225154288 43196847 122087601 104583752 160404190 111801206 788514688 258635672 949161833 414977090 419904357 193378360 241762186 220016760 879838417 878649277 903211397 74524774 844721693 196311452 289030223 193127835 821427530 29073366 653130425 372573841 751207103 732233572 880674250 586128165 921045562 430681757 521923193 440769512 910133161 543206157 966288316 466453169 667419343 410092152 642263357 437188500 766090001 561737476 738587783 211855649 834017529 632492835 927379827 789890174 792004677 489180815 641268019 351900297 599532624 398002149 890139619 706048925 999237685 125818264 398142109 137805746 670239318 610179017 754765090 41863927 327097811 268374476 954946698 534906857 802846453 472886589 642292581 521323521 742598866 742060423 899409267 478166294 515883664 407693260 900061338 839551301 891217203 314985489 499271864 357565239 405234484 254161092 768860970 457772170 551413052 67747714 508126126 100904740 102316259 83924021 487545424 161848544 621146556 531664216 865844932 736105806 973907855 339353264 423766530 178506188 944318267 718179512 741476389 245938843 368596412 317698106 507806314 323168840 431749539 158787472 872417205 406106195 475624151 99389926 208275891 151584855 757806837 533894253 871086229 226436433 382018492 55357429 724268947 297499787 919909996 34843005 916755122 806386234 847223699 835520705 954932705 199916910 626438455 232725381 753693607 210125368 453337256 376177475 486524092 381756899 497430306 398710623 609431069 73156236 661265984 168888247 461150445 234506713 420408776 49630141 285618048 89392428 813398979 261389604 430074466 248852919 524828815 172652106 419407359 279125673 948145314 286799201 825563308 3971495 995749301 172306984 430118054 144299823 949287092 249304457 660111082 388690192 397178674 16855460 654701042 62242869 998226906 406309518 745564209 31754812 603994769 464271415 783847820 603228725 722341765 641818423 855368188 292712252 351027164 303069091 910333142 604556368 832738814 215876488 633386384 379387830 960144955 672394002 683643558 79005573 387455696 50930227 391299787 121045013 238099223 19707731 446576810 17029458 897425042 862406175 879821948 152126478 193525590 91734347 662660668 560870033 707365170 363141106 631466636 475340666 728833218 440370360 884976798 365712472 404464385 394391655 667479497 134475064 818111690 620228196 778878300 74022425 777162464 442343124 972441908 407033713 843750254 157744286 838143697 94577832 454598177 332886205 778104487 707067820 953112139 319909198 665394305 433979332 497377304 67848578 172099538 101319801 797443477 327384202 474602611 351732759 659640194 56002267 411538151 92297084 195760789 163525235 398321957 83607931 801434611 725129464 936024322 850886847 894749393 730095495 874251742 579075120 675823225 604343702 826663336 496668493 762076209 125917449 621075799 88702459 578990801 416937259 698980162 143051716 465927049 259670123 577943043 441603245 443714818 155275295 720017733 248498239 820381148 73778192 166951943 33830491 162640176 122268173 631405016 48719592 909028895 381401744 773906446 525962697 649956847 593944036 725844065 104493225 112943620 18156668 768479509 558668519 827283677 61899559 394135960 260129627 719542680 345533119 517453657 103954088 360822915 127505950 313740134 85701784 122202872 99677774 669118500 530002372 903456373 711432220 733186395 452987685 538065968 290052844 365591660 128463863 782262917 152321678 351078436 70795497 696140989 210020248 240366329 44461822 707848292 80613348 211813563 70328804 494594699 154819355 570183011 480754732 657431805 114938039 374244767 277878280 767692136 325959329 606330100 157359443 697952867 627492392 920074641 734398015 946384840 510451388 757710275 604396878 870192008 705885423 931015809 278531349 413663314 75474785 659873709 326406989 645648360 243754327 647920214 366556850 522683616 302111589 955158223 31430601 253371168 214188278 337514448 81985179 650842901 627990665 655995455 645622651 807036658 599397588 918462002 741754655 991180145 977468344 987235477 737304756 799662527 348588968 640784180 515922989 777592560 593833637 820440926 488206132 959394428 646345600 808580687 660536131 728914100 430393013 517832414 442480178 710913548 250783352 282098187 197180030 508089327 237349460 833586166 231987626 444664896 263060240 352201981 22131719 979105681 497724826 638811264 5350278 38130649 20381326 235758923 134578667 547254605 503435118 751089950 740492627 974179115 134920742 977423778 335419875 564686238 396727758 495513675 437513784 754907740 504272227 917559823 679961119 957866657 817632802 903039421 208080384 274825985 133012043 589226043 570866409 737398153 583874437 891691435 771411148 989998265 418086732 777624035 388744608 510992972 388465669 424166547 185010493 968331012 626311346 936220723 505552855 589438228 531532704 880838725 471707226 804092849 380896490 611760063 569320443 786276950 227518788 612231970 577497467 981304799 494227030 780671239 230466070 544421310 257419788 992676497 992307988 998276646 305700736 899871791 225041242 798067770 321597569 869898584 302351963 682856243 222874160 267453896 124860381 339240239 172933795 744281276 204125707 354041501 217728643 576415667 220753800 818141926 646125816 813661814 120405689 385616411 356337462 570979744 140080224 698027496 390754842 459819484 100477477 452186924 326474185 848949008 445373476 784284521 119603170 954271405 137502257 441554057 68868561 800714308 619474806 945982202 898136062 904683658 583278057 660797492 19582238 890607258 113267390 150624992 8972527 426283591 152739224 944583843 589996760 625290140 60899959 523281383 189334996 755333645 712509364 965356491 668885081 946601687 463768674 927917725 667653498 792174948 609600701 935511230 470468830 496530449 426098683 930356722 650713194 846058002 139502179 500442496 384745030 484379103 185458160 779720827 752249989 909713124 270862786 926607582 8243692 623212237 93376361 217958172 188400624 210603891 80185932 697302958 98113987 606354054 254883295 854235544 378513274 504461804 345699062 664502499 486177567 971634838 388174176 770613406 744542391 904572332 696443741 998449924 817395507 900919359 108969315 434156699 21939958 29950049 6144004 453353427 49744169 745822052 334986158 871573161 815015885 887516242 442333538 944211979 569610047 841246384 83508292 301032923 250266071 710109834 575715685 782552695 217011134 500507211 315291310 906141038 78872152 898630653 549483010 672701469 197498325 614611335 419848905 538386149 253942588 582306903 419936476 763285313 487864189 549437242 67021996 784904809 771229367 885020773 246351952 425814966 138646831 208278017 106668255 473614159 323920905 832410282 432480902 759469228 19576781 880707580 876351475 978194607 17359065 795632408 447799660 786689373 128334102 731202351 579404613 740716200 576542528 832047081 467230987 718466780 194140621 396178986 213198009 324224685 161895248 340695733 174629121 905301534 743675067 993335126 54948312 998769438 125589948 721978156 273761639 718148658 685540281 980391449 393097636 683269662 57403862 802713357 686344405 936120671 299142180 936319718 880753906 998780374 892923160 912650818 49649721 706889070 113559802 918360300 728637572 823587012 449033579 891471375 85794526 977716433 118893276 723349063 259756259 985696812 233217513 853511139 771435681 982318420 11510180 13768423 8152106 532403621 197107823 663474074 230854278 259176675 39560673 186877670 184648032 959430768 158069589 997040134 512083884 989709839 15226471 251026618 153744587 859267734 766614165 901099165 749459170 936974870 303931355 524916599 479064773 839301890 366606452 859940720 510407209 586234379 76766221 853105683 644661967 901785937 107346394 919587947 878343454 936365997 285377516 391921464 257133843 943108484 581182187 990773057 82592254 453969002 283729997 348863194 16768025 413784053 78262488 790016065 444826463 964025946 935386680 982967156 578626390 872964902 791089499 874323899 606522887 902102357 358491086 424690936 400179999 928685951 427057540 764682233 732868448 839778882 501959053 974249735 657024012 995827317 384272212 700075491 421851167 435408124 61226934 787373765 273152579 760723485 59952704 546569059 472258618 722857534 529289681 799779719 138074892 357654973 50721718 639723718 250454769 786465842 13170792 87194982 50235495 717054181 703936675 804622248 209775031 698648744 620188945 701487061 178527744 951073807 669720791 732960185 402377870 753577250 162343158 475973561 380416908 704238139 17417365 625143537 401653272 722694789 285200299 835582349 241779883 279712894 79968734 684289685 323170610 455575970 414567545 463763534 32941974 886371868 541858626 703338604 380045487 692745190 634109386 805924969 160339276 281544104 37284440 818317614 717295360 786093432 452615515 883465132 33139863 570059535 455526579 801807426 353167115 796362483 120746588 376331394 28927296 715824797 487673072 633764236 316019336 931431854 588195278 663461021 91268541 581202535 528216237 997287089 829985593 846214488 699397306 949451871 921112689 995155001 561783182 995341632 756949775 828397935 322745622 812770154 102217874 503042779 411653045 925670403 333716945 361332156 202502397 683174999 163664855 602799676 312033177 674532317 345332887 648005427 460781743 865662590 636491478 722447916 512060428 780671313 600973495 637538265 620228711 722403702 635013298 937584969 861939936 895312478 458387043 515328700 63761072 378414170 240603627 400570867 247497941 650323460 153926744 743137841 437824775 916049672 789104046 907358515 130060809 399093105 272310562 923300229 656062599 717110966 695530235 750285879 335533696 420479396 317211795 442790852 94143668 461219515 308212937 855561138 7159370 950892285 602647237 638128194 170958024 872183099 846209619 982466223 76854918 329972171 299786817 905385755 620925659 648454066 294064403 949688584 601673143 904221169 780799846 852044939 158887636 478654802 182575273 808190175 684192299 735860119 39331278 403935818 241775415 801078269 742516800 836125878 565128583 579048609 319432908 895841519 726416342 863435474 190701623 206606264 171291502 309430531 132651929 982104738 472963559 956016516 224162168 887383555 518546867 641972940 22138973 440197884 316628290 976300757 954549791 984906008 951388376 957947343 5322453 743390915 231043474 574817630 230013425 887321578 506571311 832610823 451197504 929364787 497933024 696909606 586541048 891052181 13469242 242912754 163606055 941901099 33928036 486570824 19633849 692410587 366331757 531029900 473165279 654678785 312274332 964594174 351355028 714924946 634882745 863199587 156467328 392926887 163930733 361563236 30010682 93784024 52271313 67531933 56381537 929516883 180169407 661190365 402951051 681284656 580882658 898606726 53464652 83836922 49932825 312143857 301397166 548614928 238911183 250797594 52775572 661694186 522915549 922431103 571049759 768186883 493970242 932429078 284737112 812580874 759408339 835623521 643885912 870285204 262186427 830610374 816354679 869839766 476391827 886169704 287384597 716459805 321093029 475233673 305916239 698588471 457717875 670540269 374709192 449315212 162048927 957838294 247062995 955470188 315422546 625126581 347849367 778508645 341538564 889498736 10269892 91339689 73873166 556077550 464599338 532838730 302199639 350286933 63906684 296376789 34499426 463484401 404637459 755152598 84923983 679477669 371004014 471229660 86465923 546378067 313824653 415016695 161929232 514015080 402976496 584129969 478949179 766492373 728121495 889639591 268140054 377443692 11327886 103745278 18854066 126804919 72115107 645585639 420470503 692755610 561193525 607942727 433548729 561358903 443583354 719851082 42382027 389945920 301941169 622665537 106647684 137727618 39004734 895757596 24618362 176542586 66106591 382827472 187873003 205237023 85330632 138408506 82099412 966029125 121247855 508720591 202430613 272871390 168524344 524783811 373063281 409963822 226294506 562800362 262610647 638477018 294679548 545007854 190348568 402385555 214696977 224763744 214565847 374798078 290107771 822734119 691570243 811869635 334453682 712009181 492524693 654663667 468442112 538276584 478266839 513302629 111938518 786214396 691291199 983486805 334899860 374981327 345503758 837376954 465747184 941920336 122164848 466752063 181399437 585217200 318203695 545840688 272668167 387737549 188738072 416564781 275535797 794336503 336694855 492658124 65872119 210327526 191949322 195860691 128471266 551256678 434603682 634112993 402384089 741842573 504684007 560066186 414412430 617706322 127231707 589474005 364604637 609516506 423706662 862071661 154996893 817321571 357093156 570119565 12114971 62802342 54409553 309428342 245265243 471611495 188883275 608289597 242892856 559543093 237405045 463197815 288711439 999317586 760390112 910312533 720627047 933679478 772647366 821895886 122786252 416206896 300195109 717072203 5577495 794362616 470598809 670779383 634079516 669170425 267922653 879477602 616093809 693944000 574397176 810006026 158404147 786312438 224483894 448584016 438549691 511217702 268242416 458317534 393391680 970125151 205019064 487579013 153522631 489429194 93367630 529970060 189319119 418647128 279228794 464932828 403569009 492003544 275284387 587488709 163303861 664120030 332150017 763978106 504087928 756799224 247509693 840979726 424777435 599402969 130333378 676373406 372450052 662789498 73078637 599659837 421538862 763625832 3594122 616025593 186457883 254880630 219959170 878124849 726900210 791918916 727924007 732567303 689577217 917252264 35219983 95047633 9543382 106412447 74126641 684686482 455678767 848378703 258891339 788680123 680443807 756902503 45177310 674543362 461896369 616602529 390899863 432874093 180103638 735886137 358968689 472582398 254308594 841693643 266546507 724366080 180788006 760918926 159334305 217841138 53119942 282303776 175238463 541666524 84780639 386725998 156232692 813497798 635416605 936357996 834876899 910516461 436404342 466379002 440421219 848075367 130539601 799214524 478983814 947203934 837182482 866428995 318616866 497259726 319910509 710840921 82375524 437751119 33457736 148007030 146183038 698437919 600928599 888147121 712916773 939692106 826188740 937030164 379553939 945222640 656102417 902587435 574678126 862151660 188091066 681793474 604793715 859006656 761072302 962903670 520102767 615761665 288821175 420546042 229126541 283843324 242847066 620267081 463205390 951122758 596766189 824622685 657101499 908827345 606547656 726523606 333246773 765141242 623771584 722299867 447728247 997085502 671023801 814851390 678890067 958659483 922367985 943539098 894507100 960334391 776265482 892656296 562742467 633633061 527749792 739321294 451022739 654019704 247967811 279681748 166542357 585175386 42300076 561482239 125625129 981516635 68462220 859713143 518986754 782873693 748809114 829461889 445929577 738114159 221441554 519004405 453614765 996944711 248179354 887977717 641688316 814195527 92586085 423071340 49464927 133922132 70458199 612531002 345883195 525575582 243124176 824026060 163042806 230728740 60166005 352783580 137448199 441433702 204099721 280179271 229203386 996483470 635397464 829294487 95992771 721281185 630839339 920522157 387468134 707583480 669815699 942933487 821418960 924398133 255484728 620133006 504034441 638724638 469116609 621826648 614588961 720406022 484697682 640212846 235668194 580221101 204320510 722901010 248592380 406081809 94322501 429747259 70188401 917584492 14818331 762328788 674102739 986364773 488793069 967410088 197173840 720605467 598846864 952299076 773546730 896698306 62639990 424317753 420200145 614333850 605242702 607982653 468270914 614285265 276134002 795213784 310031467 885146364 869900590 909654149 269289179 974856452 369758621 978451581 483438220 602966568 540888271 576967576 404210577 508235084 95310335 886959502 670244757 721306606 357082117 419542214 15384382 590217531 244169547 616923361 506818094 796339938 649218759 725457688 54331318 803678084 42829670 712147519 443662251 865915477 125735153 454109372 289475114 710911180 412540170 582337376 409818468 974938257 961578900 989034669 241365606 998050220 753972833 849049309 444384784 930446261 705698045 819739723 439723092 844594488 471315020 714250764 292100266 728089868 458645299 776052891 491339059 994612900 850478527 950623943 171129899 174945983 94555170 582662139 161107000 529311955 516702551 697304500 19498699 658375548 555919540 589683607 377983767 804220440 678707427 758761469 55383721 585770832 359083852 404766339 100500112 836399563 325034211 977865879 829521229 930704707 456518238 700793265 437820318 969506421 413239830 651770691 255528360 762327887 265829245 844926667 773128354 907432959 846657270 923677998 465161740 618873687 302550211 668906523 59217931 758218438 473709223 675008951 124451540 831628960 209104258 501439046 335033399 808115712 280821133 600433046 592998464 753359431 353993997 466786231 369740140 925993284 523048411 957663825 188738282 203668988 16956947 434768412 300304812 881670828 780205568 886361019 190914690 357904931 99358712 269560894 24626348 526992729 69267693 299998749 244425760 346570344 84561072 542381753 355739552 842876596 140324410 729611153 160521869 641807948 160315012 492848463 238154621 383595923 247516740 810892663 454766138 566899570 158533747 254659419 200884642 552077171 65344545 890923004 570670811 949467256 562711637 995766412 945765608 955088235 896266279 907875873 349685710 400756630 314211213 430123752 58019669 971003632 413567579 781189385 516467980 801969570 715290872 952142958 929866065 976919887 524985673 765831524 619109706 974283436 174842981 907317837 416673263 759574867 52573087 52912271 10053922 762928443 160009841 194245622 28663117 145615000 75424275 905862174 167597589 844524912 775249695 948066138 826915132 874227267 34146733 190761997 75799871 358133360 252781243 267997365 17757153 235792475 105873208 766910651 343029966 705536095 145793759 825907604 684333993 967092346 764897880 809128788 376486394 838894506 190525077 313474858 140025402 630879156 219612902 831030252 392307420 455784746 219905316 376202660 77762448 884144791 412576993 614339803 38188431 938417767 499488955 564518832 133551375 831660064 388635542 480278347 118942761 402713789 361298479 891859180 480091751 562091096 244759008 685919482 361312075 890709371 761108999 988662449 773240599 932879207 3048511 19880483 14161935 160158557 118519685 298139697 222560277 697071502 304861886 556492311 74159924 963175543 335059248 973861184 821669491 957068133 789446399 810800448 650170439 845225066 31144702 952204304 825354144 941341879 836745744 977866988 563800232 973901088 590930226 750540300 36483862 980025530 643624926 652887866 213816561 590996523 83365551 863083985 456005896 584878783 223997293 734154611 387856619 827647704 675625409 712782647 417885625 539077535 366151725 821397992 104961235 480786434 262816204 773236280 55015865 700333759 684097786 956565274 850160884 904421780 317029114 733459015 199015473 493243321 5278389 997484352 638015278 674663322 141487674 142566041 129848050 173736563 1712168 79521055 33163304 774108146 668462811 959988364 6465420 113962497 30210750 367412289 234588289 881338765 801176451 963484852 858554768 993392363 2593148 676357921 478111367 820796973 358602092 591023922 589906753 670942192 178127417 647090303 48749961 260527601 186519739 416054535 17541959 889700078 773418971 997530449 817028909 890494817 439135761 531907245 180186305 510661407 463985266 540172330 469269727 809048891 463318982 932694503 669756296 722065085 175738752 203432480 20355181 468799552 252124531 585402338 2239647 945195832 146742426 659519799 281589922 663597542 344439351 496687876 377086107 547074785 382314467 715500115 296607422 390953940 284670695 381958393 103688478 436622155 310669575 889784750 404934425 878793886 549985458 956761599 587731143 669402844 117172938 448270851 189661146 644580849 413708788 957100100 303980425 985388520 97426233 540194788 466823096 668146536 139579758 984102509 922720159 959699106 874820422 925943374 45903891 138330008 74527652 144165818 27827424 391168465 236734852 938366524 383972755 582001057 58910978 451060435 347389674 463506884 333259990 565818000 29335654 228361101 76150099 178625712 165343310 962964856 786859742 852369613 8882954 984006542 903733864 987423186 727087142 727723723 265942916 583412283 210207434 423974965 49708061 378587458 213049067 505022943 411558575 621382485 391459872 792739551 350254922 437913341 225247489 999322916 243334934 570490960 151608535 812732073 212690393 680671753 328403814 551632455 3002225 464352805 121776890 145906701 1770519 156630419 155273833 930349087 126009810 415245513 33792295 912630004 514471581 873898509 672613493 994810412 296896507 736163036 284642918 507494776 462065302 696008659 337456088 685465280 470956663 993435191 823842673 916235373 730351678 902402283 656784286 996149184 488145501 759610367 161802445 409516380 221255841 466226448 183671803 234049741 29164901 957507473 607773860 936745151 758549003 995917653 897441179 933370928 261130333 761240374 306898218 456909651 229095903 746602646 279347858 540319803 132359684 160505685 22432141 686737952 211984228 988736042 716361513 939394245 248808293 991390217 55893991 393048429 337327634 556864363 29115361 698002222 166066779 270958839 205666102 479527868 455864198 525707159 27171793 828180389 692581829 859323887 163257009 439157262 305553691 434565493 35504778 385353401 17052278 368529187 57277174 688006900 126362631 308162364 19912718 887463134 614315017 981642090 842576949 911504475 768406795 812666101 439343816 843692717 226246372 362603535 329029108 873271180 464738484 793559827 39956668 85617230 39630273 945799365 729328851 962799942 490588131 956994581 527432216 905261006 248134360 261442024 236642368 971431628 346692500 920720211 406636070 756416712 453122155 722232796 629142983 651886108 384904252 852497572 685009294 892680765 517681854 856880092 378260214 416026473 414713117 501463829 234870334 527098732 118787341 209213922 46406632 951489993 283055649 492681867 24904582 355889258 21798159 451920747 147323598 973498007 706930162 731496045 353587813 596351594 83395339 315875933 112907987 470901332 452677621 834708574 360562601 431789966 399585886 562230139 159593975 894301601 486673315 706527076 111069602 501498499 66734121 454871793 147186096 366460756 10476192 44862239 21997933 217782432 211708228 471434431 104051582 777710000 451760095 897594176 732017630 747851365 373771429 940296430 443921950 714568491 495689618 852852465 204057765 254073156 219738078 504892703 267541688 609692285 445542244 600916955 157768771 507901068 99855059 629708409 499270970 731005131 361659939 949197331 842880815 850529605 769829402 857519264 854175664 923118239 716421522 743914283 636269132 678632147 196128118 538384244 280325117 360354591 314317655 317595626 106896704 760085624 724002684 823391003 518073761 944930461 29308914 714045937 663169661 675354351 116573398 965803001 121238036 325208722 206531213 270515044 225343460 654631966 592887689 854452603 446430378 774309903 33062038 628299191 59315106 194574602 18984454 926758622 278451270 961959605 129890113 308631085 167311716 622704405 282953397 668396853 282293454 512739962 31403605 402144201 148456994 945741803 738512558 814584799 581612884 720011901 339789605 349268074 124466333 750544296 589362130 623699815 514993290 943353624 622652725 799533480 466007892 655528456 595187804 905787746 782309863 854735683 693204186 991185219 385790849 905400739 65852233 537105244 219758252 474600291 323916300 813865672 336892238 727445475 51796326 277480022 228584588 398980356 36180229 337785055 212577409 538093907 42685623 835434768 828887539 830474105 183818323 287034098 73623735 82100829 52204918 114903675 40651418 864510648 58784552 475036849 464907441 722675678 298835150 803420542 2235287 249940659 193245699 774644591 710453152 975530721 852078517 966421632 226562454 790399767 67541973 346450380 282567616 831444838 577386659 656025788 289567483 295638442 104880498 341183083 208101157 245242737 84040807 370024845 318123286 965282320 704477835 732965676 230033149 522585183 415362849 877582663 860389755 954701853 287789409 692146330 103709840 360051258 50792736 502406281 289488615 497399659 454844607 993797422 646648389 941250980 548318593 869728952 37504975 900286948 744337294 900458298 831130537 932023124 615568244 921596398 134145409 662711663 581838117 728124965 567408448 737339959 104710492 698302183 658593176 928015584 5068231 551730684 102608282 771624153 505244898 856712054 686409502 873633876 38401552 471927755 15222378 121489725 113839307 801493969 538309630 970150825 36469926 317054361 35049077 861017855 644435851 983715605 818249113 868760752 728454837 737033880 85705133 987824023 232351619 233371094 19961949 712253215 152332531 556184450 209715858 407516512 312710000 520473580 171552615 852429758 838278451 906392367 382343709 651585837 598758047 681347639 390441045 812410306 475336241 670138547 538818065 959942743 473981205 860372822 609363225 711091453 425351762 974573806 639028957 652706118 496104249 736042149 284009426 445642940 275317981 598020237 398718309 613420431 212902664 484955962 370296844 422800391 368401694 621161425 166696374 978207304 941455792 952876934 216749806 263922382 214700501 886429517 213307086 245358463 243283594 371390097 176187649 206360621 124994832 676683830 186876998 512705446 177479047 678555374 330845341 718422908 220271537 965985761 647874279 745843193 136209553 802844106 487443342 601392596 1763475 524459582 401935348 473263096 184629034 511661208 486091805 873600624 393150562 558228076 294512238 980408829 201292310 596881886 244575031 332524846 166943885 681219213 133617523 747398315 343649378 465032837 259643686 729843252 24730279 332912487 259626883 948040938 569441006 811476949 191755590 606927926 213584574 668269648 176456540 418363855 405706481 890926962 716176924 840135885 350266067 802470443 241061516 646326462 428296672 971451190 868927076 978471277 471696914 934743677 58742517 396609997 97928072 712182797 571918993 926119248 812160947 833359793 60773035 771191973 567508153 871544124 800610293 801937107 433516739 618574478 608619510 641271441 544931152 903295884 444723260 539311429 445721320 591606994 242104782 867567853 78964689 301024084 19379240 893958578 234966601 652104498 155304601 884697706 850963048 859795423 327825589 809327031 539449856 698932622 321435591 614366212 570615336 883034433 843182017 909710075 438868855 797732256 444936232 963029431 570311845 788020385 691629054 721086880 681002719 887518530 198078682 363043901 151676921 314991006 140713857 594598100 406345671 471831643 216587109 545573598 110314394 240925630 204215852 290959878 105524596 808600190 188079391 954094650 464762117 470354077 393456819 618613797 391803799 973220013 402170949 488023209 186845303 380395537 10730000 891777627 451356967 963497457 61962020 242894918 179732924 836389016 267394929 721815108 151734484 400236728 274737317 813436759 44216711 875938916 54654342 408582143 141566074 311216861 192075048 884150757 78244676 655516399 33360133 855256576 13671314 493353869 346203684 854399428 743781 409652722 239234386 590047141 533044490 834968556 181275154 841210703 778983689 902454101 196611317 375250646 109174851 346465619 175985691 371059024 162081237 883270786 351730257 477283895 195975620 561415113 467857393 796296470 136686721 435727952 270672516 934452839 223916382 772928851 187452574 656109154 170915070 356765407 4818411 759440725 625313645 931278577 686702535 852691775 665016044 714200913 319419789 860165986 277130156 898563084 445003052 535796607 402682573 619847017 213324548 595174523 452937646 941360893 56146138 785596996 579514072 825162785 195713499 406014779 130515240 904336005 514039215 649386452 386937715 821615339 658432825 933657099 264741728 461303528 353018615 555619796 454128528 741513146 504499621 648175008 276583928 985556837 695224228 848990699 329958833 762221593 336232041 883321505 535760065 916628292 613218036 998916373 120572181 131484429 121882565 285798062 113004865 157988533 18894232 625338953 451387004 665536237 221417650 983557420 338231691 998231581 994707268 998522982 701264431 951614322 143984605 679668511 327665184 592487175 571243554 610103915 227999240 777949413 402441612 746145275 524803540 832625233 88925974 766748987 500076272 903333155 396829451 751204759 321141970 506565048 206053188 732843129 434833537 667766145 28800610 395223137 25642781 958267490 652314043 881102728 553667899 760678293 642090195 747963832 747209323 974354799 962881494 977539662 524976792 994519714 155933678 479397614 172816963 312589585 104571107 690500904 626709529 958624635 383091977 891865666 251545907 392322374 326449245 944098981 848529931 973731612 293970488 986504117 304031507 773898631 211232118 903192649 782493357 815941987 513049403 773431708 700443945 772991701 438550919 632497880 57980768 308047055 130674530 882759833 315984721 942497690 633864514 970119230 792351523 893575524 122801631 228946828 37870380 809135182 614792703 984750547 102572592 157139881 130023714 456710942 245736875 333280149 9523904 169443237 111211253 814929854 19098969 382040245 131174112 722223453 120385062 932989823 250828137 619856163 123998927 587049452 546985851 795305057 703898150 986036807 756945008 876636543 771067389 913864870 777305151 809157876 270879953 763919397 560267131 904050140 178766953 698024635 536911290 683278533 593540425 618476073 599615568 859911808 660092340 804235522 426270670 765879360 515517471 638854899 130041754 879203033 309129199 399528702 159874659 779005877 295522204 469386828 370908512 931391632 301305825 906020148 430825955 669457260 658532224 973740685 875232028 980526007 527546635 695345330 532792808 570740881 563627189 980844286 555807520 685309341 272309371 342917504 27112852 995035982 712769058 816423009 587064842 718535932 136316314 990769290 190475844 317644864 37605986 772116363 407251458 876416874 786527900 979175840 944244570 974719164 454201683 787387176 275578565 461689131 225524556 597808439 553474349 924579200 27149726 657178964 640189704 716750671 680536237 955306673 802338893 857696960 474891636 496465674 160034473 853363995 118848948 517136718 214840974 557159282 391139154 980377466 164629366 643716019 209771529 464515690 458107964 500058403 2226780 792615940 83213 960437112 708619526 858277434 347992441 449954030 283517092 572291756 560605317 972521636 667816954 962953160 47522797 823772931 653639867 920319879 293458167 974122815 428786030 577048439 451169843 819497923 631234683 707545787 519074931 679115334 185861075 603311297 412022931 628792058 570290617 661294252 549098147 942021999 453510196 585562147 495896311 582753031 74580887 880567943 595547434 860175054 283635632 920827316 476792459 727920087 208889586 782560888 231815392 698460103 651681901 864248320 334979724 645986771 567611669 967639524 830494240 984492172 603561570 726805958 667722944 808319473 45432108 493912842 468359092 664824254 91042830 830484790 360871366 990892225 968009160 993846222 858856139 942172845 478793499 682188808 497603437 635078880 239121092 946098193 105903535 851517225 377725789 691592194 26091103 323779727 258019062 411362806 380871089 506453108 417284440 894013188 784658497 899482017 3705040 779849809 476831598 518664003 249078156 278569305 154564099 250730855 65413456 567817941 22100974 902437831 565391697 801685793 212917874 465299089 302759091 925010639 374476755 419699337 261434682 677140714 195003087 437837329 260189960 667968413 270986438 787886845 557572222 630093544 110532093 354794907 119742143 909479647 421875245 851444942 474167290 564382484 12148399 27587508 15743471 991466783 400380142 528283107 364905689 908988423 436555192 973318663 686643938 979946973 47395701 166038593 80063185 136901725 71619356 947317234 108108486 128157245 18284560 958031891 664581741 820485313 804480024 823924337 768160633 801305347 183979057 352169015 43932145 814252621 747977447 861738711 787237516 930985696 82338549 935301161 93974407 653279043 127841701 687299172 295914177 301860789 244345941 856005045 798738768 834709701 496621501 959736908 366854013 379863021 238623994 240911432 92106349 939018880 550237639 929435920 58250510 528009601 463322040 545707723 302227105 668668880 568989532 849293202 240599045 963021170 8861730 435900814 180655403 740391393 531274585 689729590 516981837 598752808 66381421 905870148 470338752 616039353 504272338 773228818 289235918 346313383 327980050 622501486 253701122 366706900 129151673 806435768 325442058 702662664 523664112 790033778 476010973 615436764 200340023 288029766 207980500 297102230 95647052 662633119 563746632 819152163 507251020 549041443 152294865 453384102 166032756 588047462 278622736 321001066 112528766 443727750 188651389 493713567 143114800 533179449 45744326 372017633 274135028 703207392 345771003 828156850 538412780 819782072 98555735 595960183 76827349 953520470 278912596 468462457 365316822 619797979 151505798 821393261 341523898 521561030 23642995 809519765 696226419 783099768 305198028 621800066 552056600 969732499 227411203 384732696 308176648 972550072 530313873 901706650 120399880 284656063 273749939 547952862 204675714 808529551 385022219 464344161 231826917 584558330 71815518 559088641 232428358 276219760 197043514 729441226 131673641 692793060 627244089 708444863 603639164 793461281 677381782 994451932 32449977 698457794 604737006 999348827 82991894 723009915 170279959 536922202 421510673 483897491 339591807 470078605 373509632 980399409 727372919 988590668 719112827 831632868 668913423 692529396 296444588 325635619 315456334 645495655 285675439 791343607 617284155 750559570 538392516 703228544 616938867 915924264 569227940 656895825 132392551 178085603 9338901 859003467 367314901 367513948 135783353 557428740 106375794 251376491 101682254 553481807 239012367 780986359 376445590 595336540 185757579 833996208 687050144 706411025 276863229 826999365 664263916 882259424 399082919 884670364 324473323 719159372 618723414 725707720 115607941 778397292 2048767 335444264 192057788 392579513 202862561 283178413 29374249 239816386 198830934 364825050 246210513 593293381 514605354 842636704 43865681 935913667 119795906 947361330 132969800 281764590 244517557 740727788 541647549 585207482 172967977 455260677 453841835 900807027 154873700 994026167 255179862 493697083 129223571 341775089 151484329 246267709 40677362 433204902 299482494 960858609 270099542 339091235 140192344 781564819 104233265 958755705 939202948 977146226 392203013 721923438 203491709 331413323 161103288 451029107 421616799 618888384 282662308 456812885 388163190 688768136 24687536 301131846 126579557 134576845 32744094 917866480 747182630 862226969 410425226 815742070 299085182 700766472 674384521 955657132 171549093 730259637 473559386 820070438 736048478 903141150 291217202 327847819 278618806 415515103 380654275 970725090 672640820 767118728 766501657 898581540 239498381 724265361 691465690 841661357 397882927 924157584 90608697 659522615 181016463 978470928 25850898 56778942 38647691 398809804 228065213 759122194 338376714 442647412 442434986 705362581 103334294 686085828 2738247 158089648 53117569 904016164 822310968 922605553 168413192 260142164 62771269 176988484 129652827 387062279 125207216 733009724 18039490 871309198 589809107 895505470 830770809 847909538 373612674 382984555 209397436 418195828 180051028 199732308 25654763 731470215 652653036 859603941 747170254 978116556 168645712 456560092 46462426 124163070 18031723 493428373 137480639 825821206 463078028 518661847 497168699 854643085 739626883 874502782 829421234 918759608 904247591 966468848 662548539 773737291 250344590 801128963 387250679 800078867 60114588 64566881 38864167 970291707 895709643 973705283 153977740 905879149 498199957 771843812 471263248 585339581 144483780 478551053 476222684 725812211 348693961 877348201 316258822 775368249 442457212 940926111 652399551 778975973 394681120 513002349 509089764 776043731 79164081 250602819 241736783 961088729 636348555 655539761 583378849 663411337 102405531 896056883 338555654 900945417 638229536 705729007 318870931 508926937 68407402 421205487 365996986 912011146 681626000 945291196 345305722 409298350 391454083 983610912 142989022 359900825 200113403 211135552 160599268 824250779 124450792 495210613 188777860 806434433 220423009 561854515 461198981 559542302 474430821 515056339 142043538 507140013 187849980 696128956 298950047 372842503 181951202 966803764 231406294 865627052 531433330 647111759 341794126 550416636 524699318 790432715 30636931 287749297 151135341 345501019 42336575 923006341 417698224 511005704 280890817 861010305 451555781 835244529 168132772 390401875 296509513 975030996 813040103 963455951 303519137 576388143 337591089 911243690 125885763 242880063 153117323 748447996 433673364 911792840 727584229 762812238 597343360 788727987 614379936 936013307 337942907 704954249 94337614 285298023 207654290 451215522 118559483 380529300 227457251 601260048 95712740 557257981 363151625 958436632 366612662 519702407 51146080 548027595 226386608 631483227 68141707 615117987 345624114 352603644 211835435 547215667 29727837 750654165 160990427 385654406 291417439 720244026 569257697 887918477 330463811 348877695 101251995 929964070 435407932 750793116 606328580 795936441 65601216 654150929 568297806 617464388 511712330 711101752 642529655 947509394 25241295 190866973 94274403 613264562 107067741 827635250 657917874 894133439 125936046 775078308 363620843 916837381 113491210 517118701 184931099 622581838 207623023 318388805 313168665 580938359 455303348 553983396 130263241 577792089 284970410 434072192 138263901 422727769 409325760 845943851 368562635 977850268 174812409 771434855 675564644 875443120 672825142 948128549 8409638 835426766 292867429 580867275 385399554 394800438 69847213 235757711 232592528 662037543 52483457 708315297 627686363 962479477 721857164 757630955 716859253 939696129 277550033 881185586 139536676 391478894 262329262 747472613 697062508 942758599 522081921 924444001 406677646 517013094 332643438 387967920 36207087 454414840 131426887 278537741 79570537 729139493 505213940 920070498 730152467 936357677 321760406 861278479 589025953 641245256 380704304 597011240 29578753 169155093 65557300 376465686 143754430 852314397 597837134 916567118 672801713 995522037 362321485 692386659 444027001 783808927 602784218 859212816 772449061 932209110 239404695 324058127 287582062 941363847 716283731 818939249 358545333 430072804 284430756 477646950 53661959 721472309 417398474 838772257 345969380 826084157 672685508 856501695 229095725 927952834 879531093 942876778 217611773 286136017 72770364 116353600 48104477 496004091 123429155 826507503 705945712 912856421 603687288 903193311 738360599 967181956 120314231 561354171 40431923 56288530 18626002 491761146 196934679 872684596 94786286 582347920 270038447 685763480 269763355 888058770 577919864 996285598 889419118 890218430 429185954 565805999 423005286 926083853 75702157 341783907 340907283 595252950 33507923 873284147 795861862 972006802 96395302 616303833 19087284 131615414 113260972 458012579 153581109 491399071 321969661 655821010 322301538 799522008 675729909 786436410 177647612 930395432 93275060 769213579 320811944 690911627 298860489 625253901 205209121 526647695 410997833 721922510 174940929 942455821 366158316 582896333 187268678 401752371 214361668 593366076 15839098 156738900 8869959 562281421 364244317 527709777 372407837 405676719 185004681 581995631 284619224 398612656 52980834 213274590 35480927 956637401 925503652 930268090 818722848 843990411 288140458 768351189 752434120 800730487 521997586 914300097 438745092 943886060 7164686 216705742 8510488 72687037 45397366 533152977 340479892 843368064 432849745 453265196 239608589 883358946 380624385 801364035 221521204 353717703 226181855 731171971 169724453 986799109 701541411 902238541 622246574 709249601 222694201 424711464 112835583 733839542 526353490 844910149 31121403 383333981 136375564 930102275 343343432 771382619 573783574 825912021 391044407 534145051 321180664 849795753 653040980 883378261 258716270 716416892 365822665 708249921 486463961 883124961 588078739 606031489 275966537 347495785 280420252 601521145 290227294 492591444 408139352 976790689 648215498 782627924 76613113 568381664 213049702 470531836 160788783 672214478 365371421 525306289 468862333 998044453 402410666 956864471 32135223 620882084 377524155 458091267 160069300 197799779 128515051 779789895 590554167 842543079 583846381 793160133 717371841 748514604 7506861 944833889 861378447 950739435 203205546 469435995 235243117 861289121 163118851 303059832 22228668 247881819 53904462 310715244 249759805 590837385 517408279 941898647 593650617 647480848 15475474 155510064 143605377 705105308 409867084 827787585 61805040 350730670 215439457 578390097 30318138 91949289 6666014 417086687 258481810 615931939 61762915 635975528 252495327 834230929 31930226 108522183 99782100 963589353 455819941 838240937 82737635 614007348 3042176 298032544 3674461 999765046 536496775 813145832 451771329 691392809 351140340 530230656 512342462 706283084 166990523 454700855 45391153 534902080 48397983 212025348 198582346 696566863 20420546 121247083 40903241 238299171 109487451 695095379 69082645 991359263 523278214 740399764 87998917 421066702 325025725 331966606 234895003 486378922 182731950 795785693 223821358 420237483 284998413 624308296 230194915 689790863 538727339 574141995 126435563 694317324 503350704 653761206 4532599 207364279 200683192 267004513 127452532 332790982 82042606 196797072 137897901 664972243 209726385 986553327 905556336 930179521 886608458 898015460 317643656 479388162 32457295 597114055 441090403 446915917 57575732 519083718 12892662 64506469 61738844 133205042 72565814 702968997 38151459 601954933 187635632 325011421 176225825 638282571 90283011 982165196 105470040 443034257 173679473 560396384 204428720 374446453 273397655 553262072 483933747 527781368 223421503 278303474 253733484 292958988 207607611 342339229 285188566 821743773 30286723 861219679 655134564 679693552 528169005 874434282 478229592 637885953 134422677 535011192 506529383 782480091 165298047 920144790 105459050 132675812 68123000 421664263 216136299 421045525 131783407 751759167 261939313 909862049 778773156 989930047 454690100 980570425 40948363 274113372 208457081 488109161 440356011 748708117 183964137 556999640 512775521 761559587 401900469 501555750 480861045 993408744 953375045 970775941 759840571 786709893 714401670 971259157 61859975 785758661 255869647 948915653 831278149 975913294 186457389 554723009 384358624 975485401 654516906 941345098 899491858 912486580 136406026 342615055 260708811 351465711 96111106 673519113 263487807 960140894 38933618 146608309 93026831 716855415 614158313 908355872 290044053 980120106 850839019 997943288 867696075 994041746 861772493 968821886 100789157 984993707 656514085 873950764 755762895 917489292 681431828 880093469 202710610 206547019 177332093 789931891 618181897 841044499 186367368 485604443 346705226 636154857 58608806 506232349 178135092 560347506 320276854 565646620 16351277 879582149 131716491 185666140 55990406 108431702 36097978 787032625 388094716 457780079 314016178 549800647 368015061 553388793 545517265 694430714 366195666 736321375 114461137 265442576 228946943 628450026 399929177 950566981 670940984 829076755 31235707 424689358 166036589 260946208 85089054 163160848 18837034 985503567 778811542 977846458 408343005 434950071 96285911 358123455 170431247 608415728 313759921 545418228 275376578 982207205 136784653 613873497 184645193 923159573 88806121 206914002 66806824 384118090 241297125 384868202 57166831 438884905 237741572 675878082 433488082 855584239 68182807 741604360 292714846 877629137 355366628 589181018 8091915 912430486 885885261 922826942 102102839 689212081 253049674 447765001 196014275 516935045 57659128 923318549 697682476 929728305 375797656 845070685 760992799 894725112 405825484 925597495 871314527 981817604 623455335 789964290 108414771 905273455 737530964 988269331 315455044 665079728 408169727 520413356 267333700 365654798 57964841 231302771 143998877 578195243 400551493 639718957 228873217 324711368 120318446 650178820 203635573 969942312 123486160 658390528 570292650 972346933 203376399 730102491 595101488 639222779 243136426 565782650 52726995 416255480 189857760 922278853 64427177 878478340 170650115 673511767 639352845 737230276 92903093 817479683 27042982 848028488 804304605 852607315 818501557 890824566 719419309 998124981 916207269 957408442 529077579 883148892 789048936 913826041 733066301 857688314 25012955 227939496 96924383 657988139 277852436 822830155 382583477 406515235 286027870 958649851 370134522 586079961 473554115 968607058 298175575 481763686 432445535 714033622 588348124 998192666 507271244 802018250 411213359 654007661 441975774 794654820 502869781 670112737 484336793 599077954 254883396 377127921 262955997 704838105 222178417 602371590 125042071 173774424 1433374 682468276 297966204 865788341 338916771 758346036 337898475 749464048 369823805 462909298 371338922 850238008 134309806 231697675 197530653 885507492 500554611 801313169 248578485 586671581 583335195 981951591 376221616 974649921 689061545 919360666 141306156 419308126 411670263 862560099 334796306 711725819 166881764 487219807 55427754 679914900 614547002 652141257 579756399 865107889 495427115 652722014 134749922 362438368 242944937 985164965 646388216 893750807 258657766 917677849 30326103 363989444 224237447 352755921 276223931 871423330 25172614 505557175 353329404 379310939 97904863 217819322 158795932 200584180 121817600 353567341 157798539 863512046 357521007 902070341 638191198 915098384 755122494 772397652 390367674 604826456 465196165 645058020 624469344 784383373 399935728 649279768 315141796 743568182 201410168 941572464 484983633 860780659 287931505 662250838 270173333 991534764 792121045 812499838 645302574 655396441 326470141 511175021 55953536 76512453 37642561 66626989 39720995 150936478 7691320 461177121 73783307 482097275 32007400 226764771 181609904 200657489 123421704 408277527 171223399 492854334 412529348 621467120 158230017 996925970 32845587 342447188 47791416 642133745 389011934 524755717 474469800 564195320 297697012 854922405 762253834 770678437 434695614 931311098 482828270 679235492 57506252 723040609 559966086 671046687 100979111 927001289 286864598 773499245 39047875 124524730 51366245 229284795 66360552 203717690 31832732 171531636 33593212 831510296 445599093 855811746 160999313 855983040 174157343 201276681 115031530 142590924 84492763 132988261 32201301 176339828 136421545 370872307 222881781 963018518 482882770 962560707 302513254 437325623 17832006 635413110 537436320 630570873 628309149 647418486 539751084 578242062 509368567 704756184 302180295 742651316 321446228 690583823 554465343 577240927 538080350 664419227 494585177 519516242 305443129 887827109 539943332 642829076 71491942 256372160 119861832 988679041 646265550 971011935 11133359 447331246 305071995 920509251 47369933 812466370 85725762 715351161 255179113 899834838 262889023 529978896 367381 511166212 448323430 925435542 293402713 395789700 225899112 980454418 459826028 633427748 107805260 922148968 657118489 979647036 400748881 409534024 47698324 700162885 26777209 225469189 205611344 760614406 225021260 863122291 164782872 821991048 401056757 587561969 81617757 294676158 137524029 539588606 35812124 508062219 335440740 711522393 278053176 869261984 627162849 950525818 281754650 989177965 982694114 992071365 127791205 349252131 84853226 647270671 471198585 603966999 33440509 999805938 770317875 816511010 33488209 613669433 397136302 674543912 489012750 990137578 587523620 605486665 112604818 426579736 118779948 226893470 143612933 885893807 483316952 847643144 837952982 857507080 659977744 700411612 255398523 699414930 657955578 842307144 339040155 508992463 26551946 318018204 19167125 115528138 115111050 655446704 65530354 532910279 490876767 897315654 130139224 480252984 348665164 352219481 80677547 130979904 48013384 787666843 71571184 945777603 641547801 692644732 406459245 743325700 211599409 347279130 14963879 282275634 227326324 749633739 3578311 192405364 161022100 512347167 503223229 601883304 208390699 994755040 781855130 882880909 618289287 674654625 291140102 625442397 125515562 249791507 225042458 567885377 523916757 581960813 215777059 625372204 245937980 905066538 881191664 883848668 624657728 983617143 191016074 542680039 288489246 741080028 586777547 941931304 372319838 437598057 192477890 512396556 340281329 669532640 459922753 891156098 768358063 875159687 102843073 691997577 54641172 117954579 8889134 471623583 319701530 774767839 467386397 901373074 233456415 309617703 246519661 635016670 634252703 755012372 586280715 770898579 581666162 647082251 430658092 908032330 787452843 976400878 200193082 405637168 183530165 593436611 385302907 722764843 562788865 657605861 178632155 507083816 446642154 713545275 64167133 733345722 466037180 934313201 749003210 875984141 391576874 409330060 171669678 755731833 260876017 760701483 134453151 866411585 750394979 909615334 427267968 929409669 729417014 762218263 732564213 802543797 118980663 482186230 275578299 559640556 291933995 950157221 750898049 753364445 567404034 601180310 81312263 361913276 277154901 345885608 176589508 642951473 78178827 99678470 92532145 718152621 580805854 806172412 594880758 758736361 529339869 759046954 677468216 815641185 620778338 731564653 572021028 920054723 547869144 924079502 201796102 736124357 673352836 839265384 443223228 602006004 41010982 931058880 337320222 494271243 241124120 937618556 544706914 752510379 248387155 504106619 456142758 896181192 545033087 799747254 791060707 803150107 737109472 908989879 260841220 295827434 252357242 365853415 43613303 967328600 81349831 624216923 199331081 367667257 92131687 150157794 140656537 226808699 66841589 823083105 355943777 721329684 705914930 771806709 155159613 811242406 494890774 511032257 55330830 824687318 690434903 748002544 167757996 844331333 193330778 867561376 625845445 939198178 172215853 564796730 268985673 365238405 263903858 336464791 86915834 542465059 460900582 662461525 294834929 589284034 361538211 373172120 268668809 347320013 187462425 217329262 33718629 711669071 75561185 341231368 169716200 922269640 811273962 835409440 60633754 875297763 766975724 971051699 237806643 843241510 122438341 900803836 618310286 736249355 99817435 807353236 457056185 840705446 288272333 796043112 310667754 361767642 201692908 751910084 626006854 714531811 217268205 389538921 164462412 207575268 146741461 478540917 381977828 454596793 429967049 796169771 410596060 710481952 428140973 653503339 634772613 744924384 710458580 747649228 13231419 794144746 82091204 560871037 376441781 705667714 422868882 944417226 14460357 921308371 52032251 836166847 139787493 783760260 192371809 402841127 129136816 284814175 8861648 79847374 40663282 815376499 63431581 72065194 51480319 779943188 727258968 915698273 439466475 787071778 558802604 738464195 398744649 507417433 56371232 922823592 25776086 169908268 33408301 41072982 8775027 24001764 20166116 569978734 519439499 807288336 535495131 629277147 293159899 423708077 354872866 821674466 334897440 423657692 91826577 148064501 101731563 264531170 227243795 299732478 152299880 908797523 488571911 828711319 133604653 714409964 686755854 747277596 190806971 329729277 72272591 373134423 368991679 616663078 374123758 995520695 603955571 777202450 104947259 530725429 192243406 723181085 449684164 951563298 418379142 969608218 139873496 661572180 92019037 616919091 140539166 671884404 31117732 897666293 498056936 550668830 124073360 391952082 38411945 816292332 449928504 564207325 540853141 936654952 121378120 774195996 659927164 703161375 355003975 829417483 437491967 955107841 619147932 959379162 166281190 825239760 184362036 424154243 16717020 116200034 98306794 697307831 150467378 273320535 4724011 820908456 378500514 810204591 743392862 779961832 655028004 969381724 184181700 216645811 92514431 210276757 52959248 77743682 47795834 428951318 299281248 615526354 314246867 457071041 316956380 436836716 267499043 309113331 77633279 95041367 2580650 604709623 490697501 571343551 322297457 837738340 723125104 972193274 904976144 963711247 175009229 907841976 273391271 413899503 237757691 237768149 51235676 416255079 293514842 976122157 143926302 957389693 923800781 995494202 48240295 408249111 303799571 484085423 249190559 979513917 468015081 810266274 163894286 325071610 175664240 713359270 709804028 872861495 85952908 793088142 356168921 408688693 401124659 618458068 556824586 963863251 395258025 471592055 276662226 459773833 431086967 905979933 808004319 871307076 274366698 358324197 306451175 853548754 361788054 373364406 213814932 627355314 305749070 883950021 779003807 866609302 559570267 817705506 151468543 320022371 147154665 498513358 121098670 972189998 379327824 779508686 70133985 513778982 66558095 804170786 784510274 832894747 173009833 682731517 90153679 711981955 85375502 755749545 403379197 711930073 652033800 963858518 374174712 642649749 159955585 424395346 164679105 976543328 732082260 779558239 443327710 723157327 585822536 675660185 98866049 113647532 65514492 493712876 6212708 326102038 271648427 531418784 46462647 395378050 240888231 707086182 121998322 879764471 724381944 747254737 722502672 886032927 326229961 800310137 728129426 861084098 698820180 902210017 464944023 798699593 762475725 836108614 414130555 835020512 636091047 979731758 538615738 618343440 362826696 782404581 633075010 811657806 743332412 809824784 658417663 663986538 276851965 414531048 162756792 986741861 179841152 406351160 270297683 980128300 960250129 965781352 730502053 835438813 307694930 621819578 432226648 501666594 75263788 682377960 137782566 448313759 289364368 791128442 411989695 922497527 830467293 851193338 773163456 951025758 599891400 731417255 614742682 849273276 835115633 869551186 594583805 714027816 403814016 991530093 190482175 394267203 79650278 444534215 164433803 910132820 514547817 957828040 914809928 962450312 680963391 780422050 752837397 902633990 604118492 801902081 49151102 624305409 169087314 635399558 406514236 529913010 266476365 329846185 243192364 689698064 110544775 999942836 588371627 803332506 349723655 806879250 687370235 743940800 117114106 341988461 261910061 645181471 486530998 841570662 322355875 996437275 244600568 998149299 91332041 768173087 325864610 731877762 203199126 242490038 239628899 770697859 247768041 779487193 420949291 921428900 559427866 799153266 542577308 598537795 187079975 437062453 224847461 270139252 159646869 328264335 246842284 732720758 473146340 722836427 278207933 920433162 511866944 555980494 344970678 958054554 211963708 825733979 565514651 916463715 821030541 933523004 394736208 873596442 413691676 929555201 175912836 324302653 321469463 835148911 204556140 375091895 71178804 257995009 184383456 266900015 78737623 723817874 623787367 815359848 377888794 862440467 327764632 846629996 399921066 789220691 722548715 945348962 935050535 950330071 532364799 579825205 529325347 687437941 437772502 964449685 157162153 750431464 372456795 744521948 235593648 433999546 147415261 597612706 34803125 998654383 27982594 696806470 206844988 809830729 388023684 575239805 467577600 781211365 349023354 875581746 847231933 988189212 20579444 707294242 587978709 962711853 210343366 559589374 314740196 332684390 111300060 239713340 89685046 121198185 44091661 720187345 566368338 815288112 134905310 354516399 194198435 506823789 477337583 990845328 542283352 649685778 292350614 358126147 305399080 828892199 247713831 822727431 462896118 807379937 61715151 713399670 155855683 618586564 229401657 405325307 33584456 875741288 683826188 768185871 446420999 550198486 331169953 795130214 706720133 959486592 85159042 562925222 476132432 929789514 342859875 988033154 188564069 947845197 621238755 880745557 267207898 641366159 186273577 772702369 600034559 625859034 453377451 635040151 499645051 995613923 888713270 943733926 519478527 773377451 134267978 145143012 472151 667852693 100068947 665457482 580160008 893548951 383759320 816696755 428793878 482311229 324844624 472317138 51126136 902233144 207152795 418739687 302286831 554828220 229683984 864976726 54344148 399664799 129032603 222889203 109403032 501529617 146239643 823359089 398121737 664274410 318695430 570145659 343210097 927861979 518272872 563121729 176641459 899456161 329507286 982366838 830425854 926671778 645406119 970596167 223549806 522675868 378027187 920546118 405118968 859944571 664311543 964788031 286980140 955212566 31978363 449230071 230574868 670231457 8436883 253416210 139574999 811939417 139971428 868102372 775983251 961198893 588890024 595848395 416951490 702674711 470125113 922196709 805870836 872953805 4432009 185493991 180825397 414197262 10943142 155515806 72346952 227742076 2272417 876494175 352867504 840842181 527003869 812381500 474895902 905615484 527824099 641225306 240048246 921112908 481772393 773085863 597669833 787386236 773931398 934803782 458763628 664685983 291131030 546106126 456113064 587601147 110604447 393786702 37224855 424970102 184613056 656723020 205401913 605540064 19512397 820738056 674162919 923576937 473407014 824153199 784140862 872585698 727327936 777400321 153332549 709255850 676322632 833661039 188026719 203344990 18066572 209697529 193848165 661503171 52897796 66441036 15808421 945532445 677131549 698837380 16757240 511698283 504969464 646175440 512352457 644736888 15305661 390852252 74250509 976014936 109200277 866508084 636896820 720591412 148503922 702020746 318715274 985297681 576866806 845715611 166123563 523813061 410990948 510953482 435005688 932259264 31088068 604339360 343714770 596605379 52784581 221427095 102468435 240653724 166141046 950826233 808635827 899677765 559833392 726070550 261928880 695904255 633100800 642969651 145962498 904828603 698758433 791127134 716059608 733787587 409565916 615062044 527040959 927968352 914754208 921807518 26146860 721561253 712632212 722083042 173648449 503260882 266304634 267867837 207429010 902533335 204942018 477280440 190471216 607310461 538696718 944891038 806463916 911248379 82469056 295644029 280879434 281859600 107925311 944519144 376374774 780067289 528704416 955338403 168290499 873201447 279974120 478962779 249488936 707939084 617677329 960341546 388451725 612650610 117889066 483577843 417248741 436004039 234464177 749041912 367447717 432039341 29640998 510437967 132187649 327246883 281268734 372228032 199241935 232991011 112527327 544580971 123866182 767626753 468927922 651363756 488484860 714432859 17021983 668025531 311738726 952838092 640052117 945936084 815860811 962962069 390122709 701101288 345746090 559965219 66545170 182078132 91500588 172377399 142518840 262385619 62562264 841156398 199429335 463831174 85702857 144744012 88735860 842500689 176148484 549128590 331833341 390037357 176460204 823359986 644789359 770643343 45668305 918460601 159253333 294409139 92806855 317356804 42482829 81986952 46390929 156018151 110104337 771646956 585956151 751857681 400379201 882503211 350041332 416696174 298103333 407219997 88626895 805564275 264542267 859185620 742626427 905638880 113503126 526724341 259557312 887627924 341091503 571286594 526488056 624597267 361664054 795227478 226978580 798261267 599015384 866959614 592378320 844275189 535714634 865345582 831424089 973497323 589095690 971600855 391558423 497191260 52485420 327812398 321803219 814001580 240145749 995444758 535378014 543110967 492905100 870420357 562240934 922793898 776266041 958859156 717872296 822699874 182018357 606360130 269088366 378123629 92954738 866323661 474175835 832983855 198397003 592753972 202438399 655778824 549134591 598222985 243963540 972812911 553820336 600954120 59073842 644694581 524354785 888996960 63568435 708070450 316530273 514496621 430781254 519485591 515540303 719762039 142221688 971020474 652425022 677362933 435668881 954133847 127359653 210047386 171484239 281378712 227491802 929443526 644456884 717945584 697455072 921344714 513782164 853780488 229176415 438373355 81877515 892667987 200275163 265414176 174191130 242346512 133250085 449131906 367310595 499188615 272539586 836184180 330987059 866162971 463418512 494654576 399703405 448826285 294979390 458367277 218739051 561275558 431215263 971445451 57911075 498514431 381322560 624457831 164218071 872556423 504818478 881367800 152614755 409722132 304950645 779180971 515452024 956056183 97302439 637071996 8699870 478896441 195924789 450291230 182948842 217536748 91348097 641150155 640695406 875939425 3373749 582587985 320499261 634272710 266856707 326928833 230165437 735231763 443632910 777644553 354938273 669224538 667473548 839125142 596557725 975332059 173331138 940308640 577495626 910694333 849660797 897639717 655350641 969978522 368494202 590776657 437701584 808726640 695705896 826441229 398528348 547540380 536937979 951670336 755425673 790200762 290837807 888072846 796728451 829637807 559723525 652365501 537171626 945890618 818619411 867628049 726554729 950266743 524649674 726379802 493169940 565929447 227504807 890408015 94233488 807332388 25532419 643783132 507690875 578745509 29607780 696864934 311376553 593494363 193232776 560771118 395209775 896239075 560066972 752316327 374680489 593677642 538891892 862691454 90662493 765879269 681043936 831726967 428563197 793833778 556123115 927943550 475170943 652297590 382619830 398251555 178546949 945808538 836355041 853849333 704787969 829764354 678740254 804320783 328741248 706437745 600519894 752708775 222552008 424420296 235443391 886281228 800300640 812110713 265216826 543207233 239640630 830870843 346093147 439650660 174423515 483198926 107269280 282492720 215870215 964834280 105772662 516627732 147216360 174922247 120528511 901115400 844743462 895603091 67273623 106672364 64315567 371240414 36648943 723327806 701437791 713699629 237929949 500153769 325057086 980064688 77902213 904035971 550715779 639028027 278839478 658758606 559013102 654349958 641826325 996123860 925194165 979168663 966259986 974794240 102946564 455432868 331911541 861495627 195948764 557678556 24070936 80826342 54217679 951167033 156309883 967117269 714397111 817041009 658787733 891319059 699312399 982360174 830837874 865711619 558765350 688307551 499765091 573653292 321790519 818123298 4418177 606970407 201253548 389518978 134561240 260205969 197837158 902618955 191107065 471608289 191535791 751902140 622916628 840402618 471065052 920427059 766713987 819044122 775896959 900660208 522626250 953568709 343086712 889997800 87648179 585441327 140022089 294619258 285806426 550574979 59091532 473134022 171947564 906159419 644308700 858942926 558489033 645353090 75448818 836468561 52490657 173130979 122844440 144361105 105563992 803413166 44631283 317017562 33367359 987709429 954250033 983539383 263399073 817922078 432087564 582506183 337805515 434501553 157760110 862453899 370415058 550953728 504933775 574335465 416303316 904892365 813861662 994033402 967648365 991140831 895964625 937073052 501319598 872049582 699827886 728584021 110067503 212242156 187254417 545335425 136780231 444359107 385739027 834476417 494350747 811390083 504483634 788657944 308917765 929776544 203536087 726995649 387433256 841371322 226861624 258525715 193370193 602344947 329013971 800459002 563198241 773174336 348585947 382242000 316911611 376978767 91902065 672829707 508424269 542809518 60076240 347334123 8305058 947582137 437868886 992267502 104275170 380008219 150828966 657072532 181798313 316845781 203385516 287897323 157388508 790625340 418046978 552275130 176755808 561094921 409490023 512942546 50614850 695116276 510321292 969280370 539491848 753004120 458547087 641950416 184178620 216866231 216614873 261127932 229556103 650472298 362522330 942083659 829679773 982667020 213660823 576086764 437786166 531106575 470779633 733599742 373511023 676816965 292897295 662524701 569045061 993410916 283829596 369526900 129699428 593660962 363064415 425227076 406828559 466755138 14470324 112803558 57885435 106801617 18027703 123569046 25847329 93186096 38589160 95013336 90183639 437959724 94212675 285739044 26398683 370408246 340457682 748724308 415689298 596632318 453437102 635535974 339527127 492907812 67408792 71914995 51000515 743673764 233562054 964110753 394516230 975132798 184536622 202863270 128904462 972668497 881895514 893471007 28351036 317863606 70834410 131895946 64935426 208296486 158017222 555767666 370032498 435402514 129954806 429225282 50363562 159759204 12064252 338767846 187575330 533338369 428644390 603171001 357237365 878672346 546479958 595718651 45570966 890098229 764099545 998749060 248487052 973535782 274415308 390819638 351097112 723555707 721506050 972250646 29865295 655869652 233765894 466402592 45224992 180723298 40454846 593138807 163043702 588217528 475664433 677059561 581537514 611693239 246487618 787912605 193677153 277894898 137799265 629508295 477056857 996668259 126037309 914856945 293931766 692065867 223412419 534781158 325400463 446343791 361600587 905531274 16372714 753564569 56834416 753966627 85562113 876088263 412951025 561174242 147062551 263287708 103899653 428297396 349561739 710297000 187757606 716226176 173872943 819860924 283840108 843899898 197795998 219683692 128949025 877161435 353695033 639898281 390572028 831263170 806505858 962348019 103578794 604747285 397192492 748278603 84818387 645672004 510340796 805825049 112151508 254603500 205589469 443476349 290889408 308053289 263395672 440806585 220370330 428891186 16343335 599256833 179505348 243920383 227913239 309508017 62816018 608605027 253479157 312544829 272017342 297370506 256056816 880923057 193054994 933369424 735924232 973377986 113953231 762048761 516584389 711848311 123370224 194443426 15255641 595357507 243598836 835359616 504825995 918173764 892901575 962013881 536438374 664379043 482035129 976984505 541507367 655926027 341053801 724958307 335174515 569568620 145076286 217357839 134721170 678925009 523453251 700824190 132910096 721842065 588644 494899772 167036329 388496292 214333571 365820760 328201358 516460425 511874304 794183204 763600410 832305021 482097998 535833877 402298043 948243944 928628645 953981173 331212863 623286849 352621093 393761160 139137596 199648369 147848877 357435477 182872491 551041822 496643994 744759494 3917007 981128172 689534369 909614058 120750690 330623526 119406301 699315943 616793731 913920183 656046615 858126310 217544355 815764268 630932540 974082319 474682198 504617978 251284246 652270260 52393993 701812146 338564140 663920468 392476958 512349118 313205200 926771052 494531218 994917036 9181545 170127051 41056275 241443241 223144849 525486782 523469393 561932497 436252056 939037067 689537427 768069734 157573633 714166989 94304685 121957095 81589723 217764345 45340162 228838200 129277616 962842762 166500343 794045629 65223839 513256000 125438226 439208010 296970037 875679673 330292739 500240733 76032751 898550908 365548739 798004110 572174165 638473995 333428125 451730400 409689936 601767471 509090044 584411587 122525200 928705222 572314570 686294665 477615796 600936125 474224709 735828836 690993140 694477751 561326485 918477612 67910829 794804780 402984703 605777190 15522222 781056196 413897070 577800461 114701256 861953253 39639562 904320665 540870367 661966947 388457994 390679666 321412306 570281586 32728964 566754413 55902923 371014484 148286822 718117073 522146148 566596228 126766402 479619623 152729193 372940276 360223354 587342888 201277381 838125645 201282443 718103477 694420400 817590496 44409562 561107736 370412646 821338664 703486107 775410263 707351759 882768507 453272678 777962650 577277315 826302807 227146035 980114955 340123571 831336845 600221391 708985620 25659738 603164800 542070404 816681899 241838078 957284148 802625720 947067369 305516579 896314782 264138180 323093533 295032014 485597245 135315042 509568872 297412582 965604817 33216613 255431904 103889662 411855492 129963956 430941845 425693793 538620637 28910716 458597254 132900937 664415782 356595472 867464345 653466290 768558803 497194156 985572762 979128139 994294284 379975519 906005369 85356084 273507585 252837329 788957226 259619518 294994316 154020411 666446803 544608588 852493191 832346891 981606496 66186647 96793753 11685686 555054445 31287422 133371541 38438838 793997601 748698529 816550365 147373213 838101525 331546659 824289258 380937685 853734198 714100929 797453183 103956661 975949895 371168630 650282762 25327623 459172813 381568121 589436935 491238948 916894872 885360246 984520718 772009491 944742026 442929496 700843697 632685943 808876870 430703640 765563544 293233383 482865503 204299052 650672466 159353078 473427324 20469818 233814627 220048308 826665223 121316249 608829452 187181150 727073989 122588489 702475124 535124252 719507757 458624404 704181276 129302349 193779740 148818128 962932539 548424694 830074164 432956693 666715449 633852761 770168735 752771384 897080917 601350242 791557751 515088819 713470274 624895328 992684101 111258630 145526052 21236595 392420120 275830701 993819269 782628501 831822654 799713952 939209619 598000797 992197129 148549556 477666315 381076064 692835428 476344211 849127000 569479389 842259111 791965422 883079442 336624943 579527970 392686325 470678251 118568925 319854572 155125354 289112590 241712043 877101656 169114116 718517149 711806717 769240356 471476066 870498243 631080824 695570323 124099318 139807630 58993925 280318230 125249446 614091426 77637365 959120385 802905757 883695096 710469664 855951998 298218178 965979378 564925073 828587562 349157464 704549390 534695475 651881513 169235982 539600469 96013272 261450611 29730622 96970409 57461034 908629434 206512139 527572292 21081226 366889988 150428229 864117762 439199257 728567594 35652780 351738816 37002611 283347548 186124868 844813444 780752024 906495304 239651437 509689257 122713496 959221077 723710085 823036805 741658893 851079447 295768621 681560010 331130707 357883398 254038991 393615740 25501805 462352598 192027391 976468147 164008900 638127182 223656760 412279815 132256425 937954273 826627595 959487990 18640966 786481134 531589756 682000913 174440872 655792397 90805123 183868947 19437645 323878328 238362824 389827176 385852657 769034077 346873970 444397819 21255406 957405599 516309777 914783827 293224143 380406211 204507304 460741641 174468769 766469289 714530786 925295491 498624148 839317944 1662332 288426269 160087773 506878446 9941704 639644022 198777669 796205987 773713014 961975771 238270459 832842888 377311124 806696012 520537681 979669894 911581948 933138340 707423604 777156789 424798111 630685549 111752476 243808316 175194853 796063761 381534963 584244606 122658573 209725165 7286700 736958786 157677385 886868011 302734994 619334437 563025485 929696161 45728166 629630517 628858554 794875911 251658665 960884703 655604755 936810633 739900374 854517900 448201646 457584338 307790692 373050138 318435830 438152137 16422433 746667982 353896399 359290990 290334529 735668867 692481442 720288439 429943754 540951090 284975623 303535322 230356783 351464073 116904309 939035622 497003333 848029484 776596583 870274125 370887445 956698400 614933028 958534209 681776635 747993556 155802896 468114903 258920673 741548794 683179034 755617179 394796567 599949416 344724634 765960885 149443612 706510471 115777823 798096206 593470001 653250846 480030217 841037803 506507539 789798858 444226100 505646279 65093146 213257786 27871530 753309518 627382261 786446824 503727348 966245448 219066426 964240387 336692256 694141182 508675419 588915305 448922097 603270706 413822029 456969304 430179582 920860298 61210488 374055886 265519494 476587359 106423344 328733957 137582370 736690278 253249358 723247580 186684751 227739747 154521151 769851397 498277888 725578601 273664134 493272869 485403350 868255896 265425948 534449190 411422816 564169259 148721606 961447853 810164953 978387755 382443264 729123063 158454372 166688850 58771910 609548230 535092955 653388276 102137823 363642065 161956282 874920979 156958703 801619915 684319111 737053770 356787527 752057339 328965787 800154383 104411876 394361372 205766473 236641615 57703115 194972402 158503765 989022187 799152272 826431753 618442397 692446150 284084364 659752024 465549728 482347086 228594924 565535742 298794878 427881235 93917679 572868616 453061413 935195186 384329327 955271764 241218644 577522189 243637220 274557338 129281646 850989683 78793302 797509737 791574146 886881575 826066200 887208951 232169949 450759055 61161841 667320336 117937719 230866988 81114278 205850669 195795373 990698457 889031547 952401101 443675692 446679968 36567005 834973017 502342500 712900242 696035801 928236527 104132360 340661454 212062731 800786981 80566723 697168135 30885019 193024744 12658094 574754149 406099993 670796286 258294222 769291342 228479660 600515036 330393778 473393193 291440982 781070568 6603140 862377496 772794877 882900160 36544369 454327985 214028471 728044934 715457174 867564823 95483122 709988743 580673815 948767949 21857829 735793283 546002190 999782819 391409537 643469893 28688761 66796210 1760104 720516526 327949987 438348765 163241925 491249309 381883647 640250762 314380260 349788567 246784377 296534666 128488532 830833466 580203442 664953319 644519730 968353014 514337681 667943728 72172172 780802734 550862173 630236440 304342749 847768751 265464775 404136336 236896978 303570097 233199607 543716443 208094193 865194419 155727409 686173808 470619524 722359141 36642252 565220075 435833658 945495880 426980958 948229238 774341640 967439025 953471900 966879159 465407757 713691803 177214117 992844151 445492652 586749621 158980478 595210634 347371709 649237085 555428338 818347949 795775795 886679727 99770062 408392496 50874 57923061 55281797 507519639 473953458 870852079 257683866 850189724 785756007 787306282 529401039 634068114 385512924 894741199 693816130 893718135 892057747 947586558 302396573 877809837 578162319 717132690 367592064 472464778 155400994 701675355 16952574 91074475 65413541 448833545 412062361 636612110 428451911 467577091 100501082 625629096 551102458 791441269 385294745 733368997 73838453 357362183 127982173 563607808 27481992 628809310 508467117 646214536 480693224 500513549 496319822 620093427 314274115 562028122 89541608 828789701 324386956 856121678 796248645 983166300 929592003 959830763 154741680 517268304 293684192 595140094 82260534 938634092 151215550 158549364 34834995 657637294 382707565 482074628 305148961 718176613 640991772 918190015 458364939 695722830 238198133 557028028 553066983 876323244 462818723 529296503 192099692 841095818 709773772 738216459 51866027 226063830 22428215 367932663 283579110 473775005 468657114 830827901 123504010 331487663 88276116 679920259 151812987 782295676 717979723 781234846 215862187 781041609 732507455 972663304 208877072 565850364 293070446 578380161 385468391 903498037 260261030 962983746 623816509 695583989 214974013 920220258 350001897 467093589 36550368 133895924 6247711 609369414 577126971 999030160 393672813 574345133 56225269 142822067 52690040 600293730 101592220 435798381 35259187 345188580 298955522 624074743 594508235 973307702 743029215 973871754 469678833 479135382 286827304 504117548 411619080 580726013 48330323 980254492 623411652 884543697 526981229 577205352 355874671 868789306 408090090 918175493 800049289 966473179 828516476 849629255 563205532 736754311 446069963 479720549 298096513 971446394 156827309 765260938 657646636 816393607 128601104 243305231 16961075 424644717 146936920 885285780 99852160 681453027 138070214 843751628 295774805 561102664 193299036 745687519 454088487 635764600 631695419 782654709 261434178 847644733 17706441 286958933 2117382 112063364 55027747 515406771 282649675 712035846 605611623 951550712 417460676 830478360 346042841 468957140 119587195 134438971 13211766 932451322 752373272 872451150 503168438 588745188 478866210 780460645 376735196 808310819 512472787 712556743 67549782 344903440 252577432 290859685 173226989 251890902 241995490 612614780 151312444 318220209 269047389 299473110 113813033 949628067 893082781 964860306 206796707 249635101 22195206 285973467 88162853 612665659 268314925 496149975 208753801 855959228 579004345 990742032 901896854 962761176 834992871 980966577 365303072 513389980 386894513 775995449 571714836 943413629 387459050 596351327 72647430 548630181 106853029 250982561 202652967 219065479 170978605 807248126 248090044 376103196 233900109 257916845 166044657 253111385 102196205 872172645 352669639 842157506 88702482 163655396 12694853 163934605 142997774 881053643 197952294 303935754 18403276 584356068 341078329 349902303 240580363 927846280 130611684 841496125 824815844 852041155 712343337 844932997 149314839 161562553 46324291 880161953 691640959 754743419 556777087 710437409 597684211 822792164 653599067 831774150 267485164 585042986 430956470 951049986 281981616 885674850 253907427 603720478 508426556 918904085 322819850 344085024 185478890 561834711 228393346 810879440 16019393 394282083 392920151 957545701 245344295 654137039 99094693 618890602 62430432 461917907 367662215 640853869 554314671 805316850 800875484 904438912 690587169 696690831 283919137 598999187 476360733 876284905 429218118 711996904 580330401 819404053 767353346 913232517 210011693 253697752 7200846 442344718 51787100 649390113 270822893 587199506 442126299 608910917 487232582 748715777 90417745 664381148 373655719 721470754 700888590 759595497 530031124 540636661 369361677 964489658 847013805 933500473 416376972 517805817 255012900 437746959 134542324 987299579 702562804 851433973 290988185 577957422 13287454 739444119 204787414 398084341 72063453 931303198 232279483 642014163 120620110 550626722 228884076 649196659 260319513 724614464 149155792 863709867 341353142 785223812 495752015 648488817 100893348 621867271 103020674 978617075 381321066 781049453 573141898 684462602 339879780 758599061 84430510 455112382 369900023 987522404 549356525 691889333 249187489 325767467 76873032 944648253 688048562 892059068 289814053 461210105 210868608 503965196 384739725 957618126 527391193 846960409 88164622 421596407 190711601 621828024 161024012 759830503 34817641 858785555 637613421 792373587 294962667 303392720 251788706 745769455 725628306 839058006 820452548 936422029 486740680 492851379 299635608 311799801 251631635 846007756 14035074 796096086 565110453 765778577 60939416 341394240 3057733 288077545 11644045 766213034 542422390 595387882 218739535 796956495 789879210 890055106 820431482 877504211 499089562 702444107 97226378 716214771 690196302 864955860 309844517 809045207 699952831 766400835 487335503 876058264 869537938 949397596 856014394 861686316 489687595 839536942 665974790 747304090 384569747 514388796 426023005 592816679 472158995 607936908 596651329 992528426 283205402 754055828 24113589 582794993 40043809 577756553 173039162 732656573 252282022 714737603 139860124 895491835 430514121 506370188 371546069 903797613 189906273 621212314 227572483 563325066 27013846 336137208 121035016 619075010 39112536 506103003 360848948 442922930 386751367 475242131 272548820 804997655 59978818 591090334 174952831 732532642 333833883 756955950 130988465 144115967 43181878 620833671 163967111 462473739 97241213 123827579 55951428 654882023 469634082 542179472 313259475 884134603 581912305 784191251 574404775 617366052 113546134 279111391 133412889 801054382 533065449 963949555 261176988 536861175 324878411 962548122 952091848 982333605 63029724 101926195 51065848 390732922 44451010 388778161 275687552 808159300 177701486 793041933 209667789 441844384 186775006 906891194 420396412 983368924 197642752 551254530 344847372 527566144 459484227 820844211 54577983 779089556 484493893 621722746 557054722 593886423 340470358 693487438 569063870 639231262 582226823 900845805 21756016 393487943 6636688 235114434 98625810 503464005 302287547 375733655 202131635 643382756 244344765 700930676 617247571 626621777 601734779 683519491 301012938 419918110 318151120 620168409 245037281 575755080 303321079 713019112 454503362 801960701 254493153 674877142 296085053 916676026 793482969 831595024 171244327 175334641 12837589 974923246 337809614 384096287 155729723 440237707 401719768 494831970 403564990 534558855 286012320 758900797 464929212 900092331 559259306 961443810 296118942 564628047 182691609 932836364 672620347 930495900 11979424 377265511 13373023 287935105 269734735 671431138 599615384 642258392 8238673 673018629 666307369 756098430 87060688 263444922 241992390 662535149 643367716 768748262 483037937 713807809 390298457 639884357 359615861 616762919 520962319 549588035 244598158 285497358 147917903 595849976 569795361 781800940 329394406 403427405 302598444 392188653 107548248 933721102 73175061 836746750 827501560 883484199 120864516 593282742 228670410 733917153 667144305 748856062 513531732 960614201 222561397 584990582 400945850 648110069 7545171 143904243 118881979 828988956 9401305 139080402 8306899 883537889 27511454 192773217 163958077 475606872 276389271 626897786 272134785 626216384 331602190 893978257 689169517 804835299 456019363 635109858 33620511 593162659 485752835 746291917 14240570 505246102 374649632 780640139 52456320 617701385 406300142 835374566 188088818 676852251 337142679 821089952 222986299 551449498 432317797 521910093 140937317 267893612 154099771 737403759 275835211 820359519 576857789 864550977 454444186 747128991 276757860 624214135 17489661 261582613 57998374 875411432 376242323 932226581 258648066 778572519 143540572 363309059 191063713 210706339 5716779 82010438 5979475 958580661 618301848 662498450 554088757 570161172 182690006 214626331 206749627 455270844 234529013 493057121 247517491 473362527 324658470 906072600 252857722 747869764 142068457 813407363 97791056 422425102 248230831 512756174 151754150 402570704 331465437 964423385 100955122 784637945 134877978 970110839 774414778 876210597 221736084 769488215 522205496 805811938 125851870 492096720 421945976 773207629 253417065 422801108 77108208 666486888 523273655 628526737 28396095 881084660 741278218 994434099 892704955 916426355 132646921 338382735 314220959 758428963 98527151 481081819 285534261 726317609 491288232 715177347 230984906 728482178 48327503 502758945 241621750 685187488 153355372 248784086 30684490 464813141 258847863 296922798 287206920 715907034 515070565 868824709 289373165 503089552 455978209 527440412 72119298 576767480 299900030 885874502 225620524 682780499 548394104 688232964 56919094 906487030 852475137 969951425 922406860 997513660 531057114 575427910 372068510 382076253 110796310 990395519 684853680 975611253 610168400 801121997 565519570 598758280 380409361 734073468 334358796 543022012 14103173 304785155 214825659 682142798 656779122 780960392 532930294 582992852 551309320 847137703 352263145 413425419 68150804 934221553 528443985 746164914 687491343 896836113 22329566 965603709 604438702 966878290 229037251 497281993 347256022 448895577 412905208 466176841 25380825 981998736 119384258 840759205 64471932 648380051 120432996 127465536 127119055 262734441 147161033 474788924 419814551 930764822 297477412 454870573 145232994 533937300 243894459 559231847 88787471 360350125 108449158 228507523 181948529 565068304 203663269 406777348 70883933 839143962 644551782 797339207 39506170 820813083 162834384 421190082 388160392 879329567 93767108 500763077 300294535 483969171 412288993 513216005 194132302 949268778 474789344 794296646 383126561 745120479 570987734 607829542 63557270 351525796 219776754 820192946 641116030 955355159 454540624 794570909 563412465 858410918 625255922 950323643 539765489 764355652 342548415 369723079 368510870 531512174 32115911 722081387 230058502 529424805 418436477 497361934 465627962 907342726 549289182 636662544 454195265 668023400 161056365 791453733 519480199 912907031 491587766 758794015 629091349 654451036 41437120 58171334 57074916 761827020 169453977 390877535 296572903 711054055 489474209 639581673 97297111 115551125 107080363 647346991 42036083 916086767 504330553 894238057 499336007 776770550 441368153 830718978 10398806 100571006 30252984 453139550 52868750 492328179 27354422 50912480 35020214 399177256 339659284 680143669 458629148 762270142 249330672 803367662 678250709 748322818 134402847 475931450 119856247 500288241 286059782 397886293 350981980 543519622 395393335 528583476 95077762 276780415 232312984 633824684 570451241 811587732 13501903 735434149 83357554 306070168 295535689 938160424 196701045 889530194 775906261 790427196 276668616 953809789 154807874 232918541 50925010 924606774 92448078 589396819 348972389 619918928 49471535 329020675 245320457 697106746 200509991 301651391 254136506 559792265 137813587 284844444 11907884 138205965 9641567 341647031 276602937 499134403 139862146 799680572 168791328 627565040 575289149 590435912 116588835 865395222 771022614 904372799 103742692 373858533 207140000 914628611 847463538 904886625 234749566 673708127 73087203 462523860 406187637 897637459 366800990 970702033 859505585 973909426 649074174 956826061 577511018 604514155 538211369 830813616 109551918 295487838 210516053 272248170 156024082 870277188 855458525 889492592 743678059 944167877 108878480 490702307 155348270 814308389 605840969 846919583 161071232 744577057 681154019 863764252 286879338 907108374 547591034 667775755 265558373 821554959 719210812 935286483 263774721 867218407 88844415 969583893 33322095 683595444 513388769 594371385 27254702 624715825 6416993 740433495 416211119 931236612 815814619 989094253 639511397 694461514 242599601 921548148 791763085 865612844 627767213 901503343 158260844 896579920 289934966 569051071 101596397 552052310 100373747 268400838 33955622 334076176 295942437 859526347 761353359 886005036 330360061 956665006 729565719 981795010 50514200 354193355 206652731 669108513 283885718 457170272 288588219 690498725 53808508 557450228 283204404 647280471 340986035 824236470 442853484 954156558 951555184 968502545 750282116 823104883 104290194 319797381 313740640 333757910 58224475 261692918 240868242 386401362 360554537 963463192 550989025 801517702 104942394 773917277 45339644 596941291 486429193 770007803 100135719 352810029 66536088 952571863 349478342 574944875 28115628 488863125 431003037 989651223 737131474 790009266 565543646 948419999 734186508 916437433 283789089 705770862 76874976 572947578 548231602 835121609 71713031 151621301 28516716 816920127 96463590 999914137 33924950 998958047 566080044 588580739 344484347 361412507 150743297 479447190 196126012 972334822 547270694 683596639 558542285 642621651 130315820 538450515 528754311 655767049 90136065 259780500 244220633 598188752 592114236 712263025 698942110 833180141 104616831 656294605 566779841 796105471 302523436 368964479 256592732 991833467 92801078 288804701 236676970 391943479 49526128 590151456 81042257 193194971 68021266 850018970 727496564 764714128 761649531 773104059 711395025 959599426 589449669 630691334 386556328 642110208 443996986 537059213 512460459 641494909 178875796 971240257 626299152 762629534 453765739 671640974 275739918 907891442 725171330 758630965 56328034 94356927 86061360 543508029 298404944 811425633 450203471 656457576 449629614 603726018 590414357 814678912 713912875 931988999 465863346 711809447 563912532 701716165 105292364 485007713 128339141 923295829 286583709 395945439 313567900 593370092 496408866 933787666 640859917 912503961 458923672 524458073 476675981 487831761 141292208 352154524 179411307 179509299 51890372 694704209 183424326 515907711 496730219 826178510 1729179 897404900 696339453 893427195 629836703 681982979 19362377 79379474 64724777 990103697 977475180 984431548 76365461 893482573 181204991 371072626 350843519 380546169 180590111 632476485 122701581 676090863 128347720 371052391 92170623 879613047 107083340 502313741 311114105 629309185 294046889 981728310 264174058 391414979 276997061 850960083 319150261 534580247 222332076 503193901 306991908 522446341 488541339 630705117 269199779 945747307 610575933 871551643 511044240 999963844 906948254 956792727 863017244 963921256 511386536 798236007 295386683 941497385 466103223 827091307 283542128 599356865 313684369 579930444 289866056 497233190 67858734 897524213 377300696 657767222 571439585 705270602 436934865 711525189 327481622 397718258 212807000 611422788 594384506 854833366 77292718 454458872 427090816 984886705 958490765 978353757 4681099 696170156 377898401 762540333 281289278 375288412 174388502 981568303 133299465 366957694 294510505 918476207 641331875 752170001 26130821 573531184 348327513 973379335 565414192 999014508 300864986 539734034 526323360 799627706 796740235 899285408 548685665 555452485 499633640 535564457 103523565 449265687 315426066 851886316 533248158 846667719 243434710 616311123 8268263 685673823 415891647 662407411 324948032 750023139 196217333 884487355 439336685 690870533 357644291 960424827 564344168 591827153 485384971 524970101 383949626 881271651 578222127 826580115 676853116 722124232 362273799 827114771 22537018 606569819 496078061 536708557 443451833 659291847 518907571 934253768 477805087 895619624 690762197 778688987 542510274 588219855 442448008 977154969 251375573 684457224 254234622 554445203 36956019 925805685 772539370 925461375 490668999 499366513 159408349 285626899 281962928 419214500 218268483 654745765 247114101 911399062 250806792 406714254 55967308 695711981 94410831 915752935 289310044 761895228 664743078 845423974 508727049 771384947 134253800 771670845 643209498 998635355 442996009 664813453 569826943 819822122 232977845 832638108 363199949 826537714 725323839 837537822 280700842 629164531 455506530 474352017 471710207 923503324 99834473 928189038 533349631 919270008 902409330 903312391 792205900 801700900 517734526 845911195 219430915 766590273 425840969 457921373 263289704 596618508 358609306 671882808 276449880 317307090 308449120 584228260 23667608 477949980 74638293 939590653 31506479 164788058 23966860 147678568 91983363 495440471 155757926 223850739 118004196 679871795 74932170 439202678 321948044 587160673 518773166 715345269 516252610 518986392 98385187 530301536 439045238 973586635 819089407 927332853 40525654 929080158 16780064 412760554 42685701 839603432 530680013 875429511 64800451 126194075 10843253 996737307 510004646 968737257 924344224 929754654 903406772 973253812 387624751 725736422 132176468 944276464 529281760 822485911 221846658 389393814 117779361 246821918 94969163 794676563 166143178 857544552 651434966 794017505 22119432 124906408 2430928 107977692 41165828 444250807 100831257 555216392 85518150 912123635 69698780 92786755 51468531 344908876 18444190 867193057 288632497 724881318 351571835 736235358 663640724 995505233 454334583 819125604 4718634 501367940 3541458 966965272 140026211 781855447 531904800 752773690 616822809 720806015 485964070 851502321 567767042 897272098 761411458 913241107 839872338 861245222 499135705 810630198 782718611 848959806 663231153 795022125 678173156 767637479 238881408 480035302 231185149 875316073 28137526 645020336 1165856 485873959 82697055 953951194 517160875 966634531 598526273 650291963 384564302 803005914 756057168 956766572 916607465 923712943 809491879 985442776 550908781 880820964 329615874 967452473 195016206 450993864 348965642 799822953 228785476 774469491 148663032 319339030 227871184 585774855 172144676 584956913 380517890 669344737 319808497 883609845 701042644 703425799 306679437 583547181 306991931 931245841 338420993 945840423 591316888 914301610 849325188 980479740 354954620 751482826 643913484 910370351 763871500 997034580 109331762 346643152 165544620 664293788 374743623 818286459 325375021 915695379 393086833 808059309 754190496 779096163 170391275 626123883 540579148 687293242 114515996 951119155 572932700 965126805 819673761 890102522 50199179 249376676 49538141 790505386 154368711 751245040 670157731 886680469 606480516 809918504 161254536 402913672 294358451 777085902 146182670 277479614 51819212 72876636 56592603 896902244 394839553 481994894 82195505 992259322 952502148 984971709 790749704 860886067 47434029 472706567 24257972 414319600 29510948 246400985 197322741 758230187 367872244 380515031 165577513 803356460 526503253 929363604 564921796 613084376 177260284 501432274 123242525 267171780 45591182 675352559 244979999 538518574 237795524 498086672 202647193 863991546 453572717 551597117 277650158 837520202 323222494 442536970 79807458 604179457 70764070 666323023 461082395 518911103 155220623 922559869 53542345 980305975 791826773 941632159 305803909 941586265 831450647 991844990 228533289 759254684 493056426 520527846 86372586 643504134 420220879 696402362 187910171 531238456 437655286 819886463 127545909 892003934 420597270 510516315 175751376 333892993 68515236 197428193 113753715 154267966 82421194 336683646 181643080 885435467 275290263 838273463 492013394 582004336 411798141 480364838 357870834 580675385 218621336 479772480 254180134 612144396 164081441 724566565 582948094 723346448 462833297 784515524 341687193 866720995 266257121 661874157 421194173 624195201 207828830 840779375 351323304 519937107 240744332 747433122 295920150 610221104 264398195 507727345 270131731 479604334 103143528 675569779 207477129 727266083 601034745 883313452 757869561 999569684 1316380 818135479 806742146 980311898 38555133 204527209 65787716 754799148 644439049 783879326 589081765 646976508 264803352 546552094 69655712 606901740 284932257 757386469 282052677 913037313 662669647 959905487 932992408 938670837 566530762 750988006 592234167 914721746 767450469 798217867 404434479 915297877 382980523 865065549 401556019 859480534 22693016 465754387 200229808 968450878 493976360 514445177 222026345 918942150 448212256 901318917 660524901 854019997 789507651 954671566 403696129 518346712 146797390 538561540 320913113 582494275 567560889 718279028 679490658 921130105 211841676 801542949 676698793 928305723 551452502 634897033 347183590 981428492 860804380 966781467 659476565 750725456 138598660 619399033 95363869 759842272 89815105 612306936 268184385 926734243 817882489 996243615 447988084 930456870 179745899 613891404 485441962 810535514 396341402 573097437 129740399 554048569 81749443 300471797 126135359 204399858 36086269 135890532 1370005 715168693 26607988 684978717 41507721 45459660 29723565 778115817 476985865 720446100 505348988 587166584 468830032 702074722 558447455 995244518 754170732 948590596 740154804 820399966 469404472 968114554 898328131 913475224 628204736 994552676 610207081 868677800 857085955 857456941 67432229 936357827 707651182 795235448 493202225 583105569 511801204 520962759 158465310 873796734 262893117 756035048 451121147 915084957 431396343 893213912 734838594 867943095 811474694 885786974 173052219 723810067 625769305 717189584 99972234 700942567 258364396 510604951 643688 511575863 451021165 789557859 414898749 728042723 481127205 743046514 167097366 312617079 76669821 852225402 307486096 857418452 708764362 800947762 719787785 846350786 274115449 976421180 131266122 276034811 149624181 860058053 294865229 892548941 495548304 538230901 51607237 439406874 64392334 125528355 93034874 663958517 337801351 478214760 109746841 883874922 613792688 811184369 618517627 986448436 591239127 924203343 87164919 667069510 619005068 707747664 411520870 925646155 662070280 804546319 566489658 926809884 438960023 916136806 315948477 509503102 58750503 771816617 612918630 915654322 415557066 452173247 68193421 302741381 61475730 485284870 282059347 631139284 276889911 941141381 619670736 858866918 627876400 765078466 252350099 712845049 565608395 679759272 132907288 582555390 20310231 543585984 5641649 25618181 19542503 991383930 747924962 963629390 493836514 844672559 533933318 570788520 354479420 989143153 927823334 979771590 890547559 907528880 741744211 840915588 568549635 748021979 32014491 39850704 21979158 150208235 133507785 149613675 67893827 420799086 386144970 791913389 338994682 540599814 84838560 945138411 106793416 423519095 166245814 579303945 489192564 722623220 250220194 280342871 110365894 355057064 228670785 934453324 89166716 793881945 361801931 518869786 328180583 539142643 412536459 602262232 396492429 625833240 346635335 478544466 75617973 568930305 403393573 447541644 425433581 624323204 527542495 581753865 73306888 687222415 318501343 561806943 536200968 607476542 175881974 701261204 363561087 745081359 42705019 92541796 35203441 203711531 183001324 542515665 510132676 664631275 37473655 539107462 4281967 888730685 600183943 600244940 211150270 952786252 671782366 948508545 183768786 192787236 134326764 872708770 765346219 960055678 389750912 517865203 460602353 806861953 589163225 686884037 457557243 799030481 455627149 983877734 315182909 859007897 117163426 956189084 934019048 989574681 628993695 865015472 99949984 934241437 764822868 773320110 194972209 255855918 128626743 222982462 70037681 324631571 67235512 517809895 424355130 537116391 87724697 226076199 17720599 249365260 248939696 811545099 233340662 934234033 613222331 903031367 598679467 748512710 314795876 847628959 23308266 410532509 97631176 574591564 439770125 944523179 916756843 948567591 210158943 782620925 329524481 716426944 529654891 742161324 219387893 258334506 219007433 988838965 134878968 299180909 190380219 898861509 531289498 593848477 250204056 752837060 638660600 809469172 614777110 798890454 408625677 762102929 400380622 536986647 466147456 792185147 539942535 994667216 615941345 747429684 317166061 332559067 304805061 733689575 40781013 97815745 7602225 705885141 222571931 625809572 117649768 643817615 377806021 857670529 91962331 843869574 413505094 893600501 856281206 881433335 508852329 931651939 412511146 646477041 497900957 629921499 351265928 688963580 95535731 458155887 131215386 763299431 760604863 874204237 747714279 958233848 111360146 264105158 138787499 141076577 98994994 785775168 341075841 837686701 800191969 839749391 165630263 846621728 67889952 113921767 113129576 636639758 228746881 264571796 258996758 879598703 291708246 812769231 351147613 987675971 439413855 991831383 10660739 594971578 18792749 427979558 329592030 968070232 342890168 962204829 258341261 544749727 320451961 376020606 128853796 806740195 27260206 853400290 518387696 534495661 528137669 905621722 48547575 466708642 271855160 588259605 421698500 709118005 260390059 362519299 212905040 399289164 52254924 725786542 298788946 648945810 65394843 530690230 121807745 670142756 311468695 396971220 219879928 656398100 59729358 467823743 151855649 225309738 178728594 346209182 306339276 544574784 161800379 875899856 288288400 588081903 63993033 478339970 192589163 959003855 833259347 848058763 508606473 750742133 77670795 91777300 18369963 193009541 186579126 406801323 166783751 639712300 19442565 477674967 320375205 469778864 168978681 293408099 289409650 631261646 408357433 832394241 33598356 757547715 165107255 368450677 204507604 710141941 701054857 872233922 578073673 897442350 646092143 785267742 684352963 935097408 682696160 972845623 730530604 835098029 627861453 764103677 510683563 613200873 318665159 443537607 86751367 531180813 307315907 557664498 173772914 890415946 506279700 849784077 113106741 149439946 7218631 795714345 395256758 949615229 689537429 697581207 503149053 545740849 531391090 814203015 704214299 765885096 153154930 930809413 820503493 916624371 298435259 979361431 260337813 872191598 814101293 854762573 220671429 668240339 432594406 748271713 559251724 818774645 2379495 592025163 176795205 608649764 113894329 133576359 133409048 315671502 60175093 563557544 425435500 855199846 520326246 898708088 275889421 773850960 592544085 892911547 437368443 527458544 386934674 461865489 302780209 998431591 414789721 678080516 292434591 415579676 343588379 957632152 778471719 949945990 903835938 960380972 641240449 664904477 420865333 498304626 307143709 363503511 143102176 147596455 3654468 287896323 67312557 219542481 68719347 643739619 622281338 678566485 624121589 911959451 216705155 868765017 256950274 839517235 95760671 941500851 481551832 500863561 431141635 457343344 118139061 670127825 413490433 582873746 278130883 460704114 327239355 770390590 440350441 792523791 323478623 524343026 103445060 284155681 212186251 570561023 128959627 783150949 474713031 739855207 370288419 383481506 172703844 575064282 431921520 599274965 199200273 887849961 790403600 976659142 37828313 118938840 14736653 709288951 238380712 479396116 241477185 676894970 83527187 788070827 52020996 904780580 561350729 792255700 55605285 108234744 6262730 426408586 281215261 454286526 137919558 148101257 64104554 933300695 883441885 955675996 214259827 762671292 216705048 698711653 410035158 672395676 408884416 885437613 648549582 814850680 663004934 692380937 216769744 575284244 501311831 615424019 99032344 694116938 546608575 916802190 679785412 706665817 513611383 720913026 166226563 207823880 207315 462667030 230789347 561609806 432213123 898968034 377236592 987173547 834150798 981226975 499748895 570087183 356267066 847837119 382959538 831122219 587964554 627470958 323479810 587949363 380049608 966623821 927150480 998680313 156752273 653957132 498508219 927425480 266289459 952712110 251858042 256204791 148928217 723051805 591581677 910268559 54511862 951191402 548069404 923571606 502376776 896096513 213459205 297261248 198626566 814496407 567819834 806921149 66926249 952970245 713705716 879909173 603163431 750321219 588585193 829811349 677304085 937913081 607517521 884653772 748144166 991382409 393052825 553564871 323576330 621332435 378838997 892091545 15704930 70681135 50086726 569068557 470013944 610363450 566642661 578277184 549571302 788478153 602092619 759675412 333754790 591733861 591216569 757259012 658136598 878098504 666307855 770997549 666300810 994315658 915320168 919489574 42841843 208715130 178021636 840722679 150003215 927943930 332812606 600309823 127417867 350000892 221119694 479471835 181786101 442919429 221443974 762655117 738362789 981504218 436047293 473055679 372413711 388713371 352382332 956327476 284957618 490814506 358570620 925076312 367186096 930938652 153144047 371065346 113651356 793598237 338265857 481798014 198970346 930211253 910129117 993321618 437533719 921501922 285309587 349956132 61375924 947633365 197854028 497520483 375598047 621455418 218515748 564516100 196980978 448715867 154594758 257884987 88375346 715018625 652897057 999923336 98162737 306928412 215482843 323801371 295897112 691672463 206715823 706439463 309182879 717107861 421210912 971689153 906913853 931895896 530871490 782727404 756788244 967751529 287550829 767847138 568906398 953938135 875753610 989332118 242746317 837754418 126616058 808688654 748362425 812275818 651031855 771022329 140411786 650245035 562865493 777634586 285829884 523753812 402905113 948538314 784022073 945591621 391359486 396945926 239804197 581166249 293790240 359170446 177166588 514550270 198465942 724281635 586499419 698007926 286615762 930165871 462594335 989269643 315699581 328179675 106662840 656672000 3289876 548806363 1690590 541448391 274371755 296506548 222493697 405564190 171888027 899349267 877846497 901468753 107717528 806441629 518554113 774319465 7455215 957310136 527348465 794198045 272262114 302103048 53160996 766299811 505517063 948651825 151774322 399542447 83969684 840465221 177766173 528558775 14346190 992111537 46817484 816120957 723827910 750968074 530980917 613912177 563395619 870879533 723481648 740829468 82773184 783680983 52750594 389053481 292318183 304416728 4096537 417355363 75015809 454625643 279892194 835449915 673701392 779197714 30038524 724234796 334371886 638629766 141297184 886907583 547502619 821184935 661716250 676687651 153887770 780305734 516476336 860349049 359413846 778865354 275085401 690466008 8614564 367841396 284268943 298136576 293196298 862860599 555943817 726955413 52884114 654010132 31235505 928145040 1746672 597980163 124903711 694043866 192751330 707246376 628692777 648721346 921406 390347707 40701641 220559685 69857939 112626481 101564131 375108633 207498364 527550163 454439445 744556164 634519437 752966583 660598067 697296403 78645051 702395297 122013583 805100634 359833028 594883856 20295345 356588636 64913996 498817075 204984776 234548508 46851603 291078859 143749642 695818137 619370109 896746862 155565183 852309571 311654301 417064002 176548364 797447417 711119802 817790417 742957853 836178814 312164759 997439847 758385625 839693332 681857463 797212521 355401615 790264639 232006528 784007758 439471188 714342698 534248489 607128391 520331795 773846352 766567613 810800775 339864985 759185751 746318352 771426259 632238314 760876571 232828692 404813481 340826042 714127551 498210284 979991020 795133869 795439866 557506385 755741650 11890750 267504706 223110195 402245196 105550116 260483332 37313059 471734191 336682932 360271314 67827514 104378003 72525704 716614134 36351226 193576776 38423394 152811890 28265220 52348118 36744460 579154907 410911423 721662063 301167263 899159255 453729341 608486800 606830509 828406000 783989476 855104789 81698963 279194377 134102883 898971822 275752882 277032088 81610127 836880810 329221771 791665701 142342907 460105740 209290762 337026416 329926260 584192603 226419723 633029360 235855106 526465549 288426004 291083948 129151974 603188420 505337925 661991619 324781238 378171407 281591390 436901158 112290253 831112580 632676756 938793721 262096435 876848694 366924770 590898522 212446 445033183 71923667 470566535 112860373 552509431 70748932 140254505 118066653 591212607 35391706 658737888 329214145 358711909 263998373 652379204 608048712 619067183 297711850 753071218 622821839 982220999 148989442 833578511 527280810 765402492 724727273 957703075 75046243 705780943 248151900 663150781 186544935 350575089 346965220 388619446 200017851 757226910 717886074 956689559 181568200 737574547 696417885 796945085 380230352 625182864 346474639 514118928 323827423 466738250 39369055 765048542 175701701 681394156 192291104 807405235 725414362 988243613 680443407 859956100 668295839 895168661 327048659 915364957 23350807 139550770 25320986 400814891 135175537 778888479 267077420 915344794 369151815 983301854 733332903 866033976 622202215 879388154 382481527 971532837 529841162 979647221 15059561 21553244 95371 232645786 176460279 502974445 285933621 505517773 411263433 607262244 252036022 613159970 178578325 588654287 4718635 717569571 498150355 917906768 163028439 702270731 354529092 431982313 389835925 698985978 488153079 631665984 579565189 837616864 237853519 821525990 727672466 753627278 461860355 919299335 381779341 527734827 82238138 847384707 551910668 853607591 689768893 899696205 532949494 600485413 246183307 618680648 380549084 905873599 379997027 476651585 221136208 754691848 372264217 950347081 427572743 797939284 22753982 946813536 364730294 544139615 286372098 706889730 609283667 850585405 552313840 711538713 675147991 789944760 385732359 708131822 571909438 751846361 405666375 724972712 24464989 845200721 510704394 642485456 299907839 521042367 385708960 787315043 86086979 445166450 74383994 175491315 125379894 160718507 61640567 834066652 671871521 882539037 251344675 722194786 105791188 477374294 145411660 362288397 30566302 479770687 420934198 872023982 750215696 921176709 584987041 726020248 160375969 529312197 86541626 305333051 301130188 689864264 81815557 284172767 178775227 254446455 180286165 676752120 468353379 496742358 43145180 122698177 4471295 90359380 57535605 904801964 268188078 320889599 229819702 768728768 469551008 607564579 236792943 754901268 477696333 596803324 252700974 644307159 382166890 871445420 658685139 703080540 234063423 995669717 242722121 470454342 472668 611764423 141627855 865336258 75748860 693400285 85968548 492839870 53822302 526695541 323472045 410334882 206338588 704723068 425743819 990115901 211373013 543076848 189499059 264349606 63169295 328158670 252890045 745729029 8579847 425750775 311812610 827108840 339901139 495318024 214711917 869590320 223655763 928428890 212554248 351963764 103984856 110217106 96607881 337020217 53181285 709411187 77197835 821877595 191441783 844637011 293714112 338217919 186488708 458079389 207838872 945292577 85868746 927623484 762114826 772026177 22616232 605848984 344095947 384748019 38431048 954276672 810024166 823062438 702610858 972584078 225510081 561984892 462454018 560478872 309722370 323476761 152850506 827320923 339670871 722650925 571329654 611405674 91092541 975118658 205068050 848516918 309177918 514801436 448745286 706133042 78470544 230775704 138606166 767805561 644562760 956902722 520038089 620451954 573506673 856272197 333327027 568856666 28156500 256211157 187792318 717388870 510052005 883288397 383628282 672958682 26271228 83886095 30790254 768946092 76300732 88389178 48200125 913977376 860458855 969552892 592119844 779499749 262788913 931254425 895543656 924940304 568888294 883982891 627453043 747007285 253693278 813912225 265337939 685696032 70022110 700513496 657780990 783968611 766301552 833715295 767334430 924493776 866579626 947135864 861082588 863780500 37965788 275139306 149026315 335980262 191798661 716757564 386331295 687287239 331387117 373739216 371298126 539186899 110496494 525600178 398616533 427454395 53729457 467534278 276789304 416723663 398460291 649281472 346025541 980055973 133690847 524561545 309917827 371335893 86000270 861048010 170138562 753021643 206646423 576931172 342779989 762398411 159686354 690783644 580049818 605615647 549792654 842186605 785927428 914085174 88951697 169688488 77443522 811795914 143578089 275218253 34403565 121328838 43869138 561095754 2433190 341528077 309573362 484579617 158957201 417722507 330724473 537296368 171099799 827432839 798883673 847336328 374992185 682651197 570182435 912067704 452773796 501635066 51975006 227538943 209581794 676901135 67395550 286261013 109862165 673687631 641725179 812032420 135065766 582525792 63682135 978763017 42332608 219557653 138794737 511404217 421307110 762249130 192476576 482889447 217538799 648045041 359760222 501179272 457851067 862529353 379882542 562687486 301377332 657055463 605269106 812999770 6856456 896333544 577209482 936027503 321395883 660166252 84027178 404138803 368400527 882343056 621973905 727676793 179604326 988174434 523258199 556022007 12201255 565110457 444775467 539596901 431549156 519382724 400499364 954489136 552876022 914341320 454898619 481497300 457165839 800578491 222638889 385750901 83793536 596859264 323605293 366438754 144649417 758993286 52774228 271700643 173473974 569704436 113113119 689023462 38282639 146067571 125022242 469818160 115732570 391844627 282509459 600985348 228791795 816646667 282643650 379126815 134985377 833035797 826415396 968496589 862975974 917650616 883503062 953901090 464630747 845783741 714584799 778437589 572579336 762985938 121921501 786545867 275155776 314486124 73642453 942988358 191317521 743449126 233875197 300435672 98800899 756024438 477168990 824298920 225947964 833002903 581576909 686924250 113802021 822004882 315593000 892460279 480759882 607035111 599126835 858412447 476246917 987286740 528363938 842747883 314938994 610727480 573158674 987311626 205483442 318078475 316804928 970446343 509810049 992449472 285313389 496214062 155800821 863607379 642217413 869405893 69139688 578379250 89714468 812937471 241890972 315886692 303665006 737409658 108732866 551876983 506830922 517760234 257577082 789334826 401545708 975607704 19842979 677069145 504658286 934061725 382391025 859725959 139520714 282666386 192909999 390616205 253493914 384076224 309010147 955528182 198904004 523842995 374864278 735164210 524081561 778925796 419964560 867944944 51789670 64980641 38545348 245488226 187821730 254999250 42323477 124328626 97910386 812257855 126777565 388903841 231927799 358372011 339004914 980899770 448174485 833180091 144416714 496530419 359688264 952528751 260272115 445831037 358281083 418435678 180560072 574954198 183530888 284765477 123245235 362466177 171563852 997266395 631673832 887316316 640568915 891103139 435354780 980630599 452904911 953707660 713220412 852814703 810495343 858814424 167807077 792611314 277760635 786874535 612933362 772477630 397305178 812283954 442922079 938682494 352302072 803015699 646977722 777011628 452463678 542425574 470510952 967943403 449612235 754740817 570394778 846485166 578283786 599177238 469749853 769803609 462698585 923044662 629652989 991172257 668551571 966235109 664846283 838451502 418141747 861374257 777698304 977403775 215878617 421659175 375830064 793282402 772611312 953404636 916302764 974810289 460272440 474232872 48929443 211251688 88698132 796449927 507666853 964238864 926711181 988379838 81400190 416670534 240818573 500066027 325257018 538701053 114055072 820950642 443584494 761870908 582865405 861685224 550292054 733093787 105768579 295765819 87671291 338451580 67053742 907783819 116404407 791058482 634750487 755868715 674619660 770156298 329483078 551294946 203062819 386982743 265199372 494658017 485884763 960171537 840850554 961235876 279688684 970516486 458403176 865924663 122260274 464414217 396275380 424102194 193079532 997481186 638808153 690408761 266838077 452672314 341170453 944297469 77544079 850526084 52112184 873013064 482403300 808042040 432190161 929905339 114680157 379242675 310362574 793447425 451472984 872129190 93963589 207017420 84399451 696656181 580603833 706779574 538372773 638581928 155666530 868852271 532516472 623735712 396920518 840645548 685970100 724362958 186416512 591222164 74570771 663040094 489587581 902231052 263194661 440065973 255183348 562833435 282861615 765440226 214612989 853490102 42569074 115307501 47320536 254347161 53756804 159342563 46269832 410408598 124536672 954352813 680438686 956086659 952162639 984155007 363583718 730310882 572275411 572787333 491056682 868665735 55214036 835282844 63062489 259769198 64879761 903290469 1087286 672287451 484444607 662995826 219766857 871089623 661880975 692034618 293773594 930121727 178264936 795446754 621610356 925871346 834418595 859936172 761912655 947969182 585958105 731971286 303342849 690982181 72309907 635036648 363169687 436190469 230664545 852430704 773397148 949446996 654102756 739719535 405313309 668911314 620984384 896641319 569428071 672938338 271974388 437790864 396249180 646560623 240047690 248539726 115543818 218224474 201483192 819050565 620963868 887313136 511728462 690260387 231114862 547916005 544747752 678270867 177343609 495918030 154224573 547741588 64120264 737902307 701637290 838607918 165533904 490099184 182219359 418493235 271724932 473164438 277017095 937460670 703330984 825810539 761052170 949627478 387793150 925890326 264148874 916182516 173305464 391463722 261398512 765389175 359695166 800643276 103004409 687947176 144090734 450807840 6096604 459643884 199488699 356500822 280309438 770517129 327290259 696726111 21665075 148043824 116619796 958857664 625727825 925753590 722866161 794133657 642323847 848502670 283043567 883793803 652354377 973967488 599268520 809906479 24527253 113003061 82563617 785618829 580828888 615884016 282625651 310271899 103621205 835744834 470856836 631396507 75918865 380841343 154702383 794910676 130837842 464537932 366725428 835047498 817635626 968141765 805588185 906568397 47540353 123059863 99471147 481916859 155264915 187025204 174518361 300428231 95197321 357800717 128618305 882215437 785309704 792423617 791925446 910675222 55087179 251300717 76249260 860624635 280539190 971557400 910509441 974354967 191225276 298341121 211194701 976329453 663611188 870257934 588997648 616073065 508712650 940132719 208122939 694827598 270762127 865579990 42558909 733317704 271504212 312613616 36395018 539587973 360489792 561962644 468200355 502954653 269957250 760526335 478764469 584559414 284521874 599120654 306066301 358853972 229579411 804287085 274176963 707083965 348076633 719614485 335525324 473658207 328350920 791829343 588249155 687899176 100012230 711978159 216682075 812597173 684858449 885580650 82559990 919042933 864505532 929340714 891199821 892989097 758753695 828771444 29239534 364078518 91896321 690085903 463855336 923763052 136066146 246382309 240315613 483417772 379848632 593434080 97691350 749453451 426988507 536331128 188084849 352397152 88359286 542374997 329131749 401569685 65690590 881375237 721671730 950288044 813713885 962999872 272515252 846662667 93645510 370694504 263925213 565630259 253962749 592166587 569426823 777354460 544251456 557774671 268123498 784404618 709827806 893853895 230186969 283849584 229928088 717163284 701715283 813803572 171235813 788382160 456705371 459330793 105365705 281380183 79159841 417476084 23760278 333054111 139620450 895143811 352258315 591960390 192967060 339177604 80153007 472391025 93292991 619840731 243775772 741048841 143000324 913121744 437735202 961996561 525196270 543097122 460809229 868801688 350268336 621278262 428880529 942676843 279800549 776033044 96475385 471063450 174771629 353218358 224950184 619547139 176087184 776817426 711850925 912080008 892438518 932734695 436260845 824828993 459770923 909010119 602364251 842496525 703910601 969891201 418525332 979581907 57663947 698404303 477304133 639971631 561502114 878771999 242374880 581810515 234497471 350773874 242150909 498661233 408533953 830252677 66914557 789894924 633324692 646406561 612606129 918433806 319474543 398884729 310133891 474140676 399223765 867683823 801059863 917200740 148663021 159028765 119003973 616118650 296981273 700954879 248013413 712632050 434703807 528924337 229550042 841438025 330495749 918737816 577527963 897308996 538326510 918268371 847340523 851935066 592555777 677381053 133806654 317617503 224688904 271809205 189682127 786980007 631738752 792840473 271331336 745646501 53789263 794489568 377954038 653830095 37484754 749453004 69738328 312757837 200760867 266334151 71441574 100449497 62838736 676560115 355675072 408034248 97550826 225064002 172784851 539809958 402165666 937079133 12492267 411947611 354801253 680991516 449487528 885544274 179593323 786901647 275440937 557627279 197653972 689202175 490990010 777008970 26132618 416763053 15086208 775286491 216111177 257375745 228029533 346485806 286220972 859862827 338241070 427124857 9079379 624769743 214633073 828790044 360129343 584899473 129375238 892994474 197213586 226131100 136624342 844837405 769164589 915650231 604782824 927705352 330369599 761855235 707737912 958234642 559517976 985739953 194738479 533710178 157629932 706175620 238396524 992776847 726075455 769205999 294691009 540246907 432213654 894081216 599620399 750301155 654637223 927186025 520577337 810234603 617721118 825660799 796882458 963379715 795333296 882365620 435659143 522321936 190732320 235193432 155589128 450630176 372057490 710254523 132763716 920099074 455261972 602901742 588169346 750362577 4605242 382430005 343610254 848045910 739594613 749456214 571426404 924808252 375067313 607914563 428268820 935113159 476818927 876775768 260988942 894802102 310542771 595474531 39267036 883146864 233569425 513102072 111995213 283060083 195835237 540389267 185535151 853965609 18683050 89097193 15804030 486193021 418579192 823103956 676302129 683819035 480903944 987343169 481885168 862930092 360318870 851671516 316409259 788863075 585238411 918637526 366751993 567815052 225840128 430528039 289661675 751196214 69569806 961033826 541992569 647233177 513167084 552700062 93053279 136318013 131619081 388397673 354213244 962446324 359581214 430944032 301915790 721010109 327013081 621948748 423883283 746354676 539662732 761102691 332820475 701962926 519986392 659030594 628365993 636555545 109684824 451897210 40050135 146199537 126039348 882877993 372483408 725797297 428938730 634833130 630480096 997988285 530401384 541500727 117776394 839711025 426529516 650681094 99987620 291334444 16475321 243928523 177192981 183619612 177992364 817334855 445809345 772467977 423664565 979695661 105139044 596086131 549060990 736506940 721053186 765908215 567908762 598207155 31151199 679735456 541635707 585988785 82718307 170229771 143911623 724346595 133767354 724723409 33728430 139532798 98829229 934846433 794096265 879668593 486583728 965917231 676647574 944039995 679456521 700182113 284647322 535169987 209021185 956598771 545199201 849876175 298005915 308621638 129297304 385183074 217410093 963031160 100107088 559796444 42186685 844231320 518389773 891177395 884512604 969951484 284370534 787869934 3048864 567292569 67671311 412106665 354982197 580074112 306035351 993258578 859240514 935217480 122192908 163554487 155358769 778689972 95227156 382678822 17786694 493482388 319828821 924184344 548496926 960411177 269179204 949579383 105969698 445855667 68464110 751038406 696283857 740298389 8431766 675595071 210104309 889737730 752027726 851784652 414089046 485443681 244241346 729799579 476779377 983965961 968860473 980227459 887469548 984629398 313763039 959577460 188506218 424126378 129117761 766804899 388361746 873801619 765550104 822174774 128037153 896205228 591054911 745410615 481209496 836796816 762681577 768247639 643723496 722033672 461349050 690503141 588793879 635818061 404937994 905818836 699616763 715527269 587585537 677674709 191169602 361108069 327218900 822538345 232629598 483929598 127567061 508110682 289915923 462447445 153354627 263748727 155653172 197709163 145029112 817391394 296714079 636946333 3101340 406634908 307731566 651193791 645069089 837769349 777785085 996742181 75303454 756610044 386716515 556203367 553874189 678302443 649546024 948645781 111526357 293723891 277808637 426265995 266645252 520239508 437395938 487696179 221011617 299298955 2469352 207162853 123994307 302813029 55646957 537463036 163363607 771807921 527904537 849650461 58101839 502673177 381943942 752712611 473959633 672553926 331609759 390871968 136324221 639731505 93909473 319291721 25003241 529894010 78419324 290321538 218061960 592605580 219346181 784102573 137667396 151368989 143654207 395451435 34042434 671354314 248177947 523183696 9295965 228597620 26524506 512288172 110655903 976901617 847993048 998837870 125123675 913101005 29669972 210016219 143229690 334240416 173918750 240286623 206530166 611551742 305579408 944455753 215341499 586116169 450008435 982925923 169649269 541183488 82384439 821098447 522615631 696954309 300422126 475715437 8669090 922879163 212595592 360733843 297496169 546645124 37928709 553353400 349926016 660569528 184937468 264948622 10959557 178190797 54317419 594582095 500503263 841911710 704088691 889000710 434817305 791043031 62917646 832880189 141418160 478277519 137448510 431829122 287696223 943679822 861568793 959299841 905270377 987243973 662971582 792724617 113964221 732353087 115276999 947225746 756023181 908194607 560101440 828478361 477841315 968058755 358757577 819778932 404578739 950649876 301331651 855156725 426519447 478770954 44011560 625841245 239371097 471267113 233386482 958994010 760057546 871090077 34671004 737610797 516496573 650516205 141382783 809217790 515488808 537058811 148453868 939368320 259555605 861087418 143433087 928232427 919950297 966199344 172088075 891131789 665875058 888171534 526507834 551095851 293315989 862012398 860602586 948535446 117315794 338806816 285962038 560950317 159610110 503465191 407442412 647710630 460254103 507564870 306954508 706721193 393480019 565292855 218914161 571546357 541808039 799510111 425695524 961323554 120713229 474891853 348219789 985004226 51118524 57558209 46771969 219130973 89771331 240992950 195896725 774759753 137452774 859887241 830193639 878760827 667690800 702299108 97191487 568310618 521889446 733207695 11552016 255618516 143616440 584535107 40787397 255903455 25213540 868220685 815765301 912268533 734249884 751686330 481376484 905545375 245206501 261697369 254412086 743451310 411028327 701552417 26830778 548779736 379231182 714436248 91932879 490438652 39590484 380784248 156443852 778398631 265492148 521633177 508794781 858953339 366666257 685973578 145945012 182044482 72956308 105021457 46618081 672625704 50362707 158194611 124443629 792365027 373956445 376262800 111963746 648959916 529834757 571724737 519526809 852404858 805213257 862417282 647465155 978035340 408530562 990405692 936544068 998669939 832096015 846357832 343152784 922433813 54550893 126556693 81025281 348814571 198349550 619618714 297170079 982855163 29273652 247981431 6722337 251543338 122784750 493643207 404541304 652677474 356460757 628002016 384364131 763569419 498975548 751439012 370861738 717316046 35656615 832732150 331177323 526991366 517082931 845103132 267443785 321112254 298440249 842622857 288448213 819006424 422447522 793507022 512996519 936026255 160638416 761563962 255982412 760725643 279957927 945849571 25919273 126757888 61576902 610661460 596373085 775378136 130246142 390706945 380880616 875318177 524876912 741046786 116967602 507086482 283680755 406526164 39264963 853733049 441726565 940109758 596001294 891838895 527487829 620958609 274504598 708948924 423528990 601013335 163785259 173993924 141159382 628242423 437048291 485169236 394413731 411928462 106802794 883931148 219700931 688419316 229722291 684944860 533387078 783839648 593701649 619284217 515317009 744595911 9542667 430072673 197084927 422377123 408418524 963080727 81555315 220796582 212038588 970601625 324197382 931089877 554070867 686789055 6690008 74303458 1161159 494580831 86525163 481392262 361856415 834077577 44123432 419121634 218827684 548640850 354074527 703544897 554947036 919712868 665934874 936341156 210507566 306747028 190153642 704669943 516848339 552833849 258546114 712330552 538963428 639053908 163556755 715985674 84122014 868764408 701791690 870383608 566128710 962903181 699399826 999307096 986790237 989780643 776415714 960076799 396207609 657086121 458318422 749267839 559749239 687021127 224532427 460720148 204893067 488900420 17654981 477013254 300769644 485569906 350315063 474379190 174584923 895906800 238765317 669490395 360318225 854328644 490946085 605264731 430503448 540046169 503857349 749327348 243832808 525772481 241755094 309458865 293068985 567240702 494769094 681367615 307387650 605424810 302128356 985950870 748998841 953459869 246705180 544640334 30505981 414294661 412321473 751264763 708003719 931980087 453755077 900127655 347108801 377677484 260467356 662916135 590081253 620781904 552067999 688861689 219096151 879568572 12139883 688663056 236849174 798400794 723098534 919585354 698034973 859987404 116947106 733461682 21386240 527295477 358409420 719691616 647182373 675587395 219928413 655888081 581391950 729402003 579446495 939588808 46306898 978742148 709499059 733753397 59247053 170244967 136969298 929421141 762674581 963264104 206983473 885900020 219457340 760272421 572059795 927018173 917143783 992673482 531377241 953376256 114054816 456777221 338469207 889939249 755293055 933256924 355558958 369763360 367583662 389614030 5519085 79271249 57223953 942295466 97217737 680612369 159200427 417261688 381238110 738041121 722241482 905412212 167211808 643078147 174872818 856744199 329136843 873522791 285432241 468105744 126502641 433406166 267803625 860120136 195191886 775528677 260017508 365613520 255739388 405393198 237678164 839664470 763175085 771874334 619984520 629525174 234721076 767625935 639028790 643024783 282988141 823845563 616499075 780847980 426578637 782523574 337616156 787185101 590325456 690267123 268208117 447047040 32189203 216128725 141703036 179331427 115050088 417188826 111533769 829549294 72943875 679589759 654147685 769276153 305184092 321645640 267815812 492304951 288923537 844210865 816906509 854408271 464550446 572994998 13426265 209334226 58673669 319010249 113973066 195395490 28052574 360647322 10957986 966597165 524260274 929509747 142729047 805706369 248106158 902001056 136621064 593111803 223125108 243975786 29146262 783125907 728799448 847025158 356117313 554345399 172203698 654293091 517901126 609854496 318653850 836447205 576412491 661166939 545373634 615599366 562951730 858456792 27150381 393587044 74092530 183459135 63876476 230274929 128833258 224445593 94586278 357349564 97854545 448394869 40015493 879273829 337173508 522314747 100197216 323815422 261601097 594983534 367146732 581557965 120493230 937653806 681374081 687211957 359833340 916375618 475827914 599683613 104911992 392244733 191096739 437592810 369814492 873565989 87509139 227047060 128296971 291222106 83533607 603350826 560077415 612830945 480579235 628209239 187840053 858057568 84910424 438748492 161632858 459364064 379097562 637916626 587908464 775899108 108454914 170963663 170460303 658044338 123372067 445628471 255436353 637230711 637070252 777368252 497705838 578667549 312639976 378486297 260513969 698950971 378448026 917229228 283502234 895690074 75539125 805917814 121458854 375709614 266127143 506492300 101694581 842092689 506828116 867377648 139142814 617205307 562273815 935051303 762892597 849898538 73053996 332842833 329558045 891062255 32555277 951244810 3328380 906238302 420431754 962699969 417278204 479020118 376544307 921219694 590290269 844842909 187090467 847467673 506394792 799846533 15584338 335809380 280277572 653763886 162533479 634582415 465216743 744199567 450205980 482959862 312346110 947332398 755874136 853172445 331516308 627983202 507395722 972388657 250366505 606862858 323724022 353773178 39814327 173518468 92126581 279698810 128601184 921224870 614879182 709468863 261718653 880615366 868364234 929085204 168563826 226325478 113575908 701690910 173253717 686143305 328970816 771896422 286645529 478527135 90397329 949410988 6268966 114963137 53329040 172076848 168876555 932613179 341891314 887740840 444565578 741604187 298271558 445465627 427164580 695531124 403804967 649745257 400717435 904422548 725525640 816246614 206298814 361961108 292612379 463553194 449128057 723582106 617107964 798864317 132627343 930404306 113674415 380605740 165429042 228279659 105612559 387694170 187187504 470441973 282593257 666587722 626708757 854537875 17494579 238553396 16277373 355118308 286840631 587808851 199604455 425445767 241928187 768635165 104760261 251481061 165133356 979892718 242813745 287014362 193873428 322492400 253869559 938558861 574618653 923110020 327090826 943056998 151931642 977193173 688135773 925474325 701547136 714670949 494611013 746622204 687669563 831582213 357030233 799160303 614928300 994603707 110653884 824125727 198357983 211976685 18490270 250512326 202301624 786659342 389413359 626167693 333373253 605896189 219093180 733862175 414439494 592392038 430304129 772048822 417414501 809778662 677523019 849187069 744485570 874027574 91192635 957268408 48351349 91843415 36923144 687735533 106998467 897224869 889581249 989417379 491947295 513216831 292785364 403306947 365316163 616257114 14972128 880088864 802953916 841048857 701636161 933190763 255828002 325654744 264000039 651362465 225605085 341892265 298186447 607157796 48414740 429011841 396757000 740009336 645777460 862068506 682077821 833015337 629541914 902603105 357032710 894993043 628620531 753103454 407582566 575675059 546538384 629919426 343384608 903723459 670623853 902327757 275597898 383513773 379133128 480889981 477257847 510050598 463053490 764703632 251345810 282401169 26285387 770670976 51605258 299836588 190609611 734651067 369268884 445120219 47430670 597384037 499605418 566165614 196753301 409007323 185351242 193920334 30786792 234827306 86217623 839528239 251930209 517341677 269999816 547764416 291452064 857023021 286385966 393348999 311368813 791841882 681152463 834305952 429068435 544615998 517627791 839331088 805111351 807006189 167380409 392299203 384540294 507350085 60448323 533840138 157225986 717347712 696416409 726263742 679870869 680608781 581154126 981949500 320644445 979108095 665897341 751336711 227329003 255156772 248269263 852125375 534068343 837944001 640713225 767710762 161169659 812647294 54296334 479478198 468443590 772493403 557101521 689461332 364493378 793646197 124475880 646469812 221749203 734710007 274299844 381394384 50435613 876559168 501878521 564121162 160662279 239646521 69323459 569759354 463540304 506661559 373747863 914769044 545796150 691690692 531736543 620067161 17576286 570971897 468566102 828206382 772214374 837679208 735047824 881074002 328926616 974458812 313104169 392930986 288632515 512257376 102548912 812418408 196746068 689286222 366807222 420919794 199795797 970989074 230586362 827661007 454204807 509574681 436292251 752279143 723627006 916289446 499620199 752240875 291445036 863441586 776076163 788759789 280810243 838906026 10112276 706503742 426611637 694726909 568458452 925429838 389773778 479553996 143031788 403732055 255736454 829066966 784771692 882296741 674904255 926476289 698119019 932185619 632867703 857901735 274669148 418752340 376977922 871800591 717186424 826562511 638708879 882539105 415984653 695998267 264721265 441916755 115365138 389912272 285524116 838760418 210800516 381494488 81308433 667841850 648922184 752665277 513422371 533573306 253188452 949456749 149771346 524500329 91940820 501927123 76392596 752718801 56740053 757545401 18732055 513220375 330345335 786957677 495377468 582486814 380155797 500550175 106610172 669824462 526983570 736017906 172834247 212904074 132482313 751867923 280406120 729030473 109858532 589537223 398672096 597017834 189987613 360046182 216803087 270973601 184065863 729649554 711326848 834794412 830651286 868812308 166346086 637495040 491908206 734815216 367177003 567480693 60653451 589245644 568978520 659434019 510991549 512598178 321636200 534227576 86512515 592202471 212961310 329127801 181446638 934752195 25451270 462265898 206680220 598263355 218198618 415568443 215525448 309742808 204640159 349882846 213707626 583183964 529323808 919804109 331911273 637557476 615370234 696661703 291201145 529480625 491829441 929287326 690210018 748543834 312992058 473426023 96952155 271334919 180204209 869404220 544838345 988972106 171040672 616490558 496445377 516634045 448053904 671174731 512791131 812017453 789426248 883734065 116028692 720747007 117242006 479493412 15692982 871882868 121656694 330167532 253389877 468232967 401072905 844598136 783950500 888671729 724931001 928433572 857125046 899680685 428065939 601957309 299510458 707928001 397640965 625307517 147377072 366975729 275462773 811172926 589130386 648042695 471635144 839383564 621914700 842104160 561146959 596949877 553226630 985637341 909824353 976150465 104116751 819086290 36987114 149604003 101740725 464528145 192620440 498429502 321056689 565799999 390136433 437265542 323113369 648696475 75363042 880943455 480136159 759817769 386758455 706715601 466485394 839786149 35742434 256675489 116113983 252576006 113057975 152564180 40069785 980501774 497986641 898535459 862177860 866488069 103396109 771351141 694004069 971576984 200303565 444111159 157919126 509164192 1293922 799343363 732746402 978148463 44791096 243790937 45380635 698402553 259194198 800785780 421857026 446758410 287426658 626408509 424373781 689744755 106722785 469303388 390456334 641494260 375505350 908718803 405715695 855342548 244455219 986011494 637563552 931575139 97158247 980015828 373474665 871757539 506268969 523943160 147744177 553956029 350625117 548003615 351030271 359512305 147586262 547187696 327580671 723337997 281335873 804079731 728533144 961436453 528521220 935918275 707573720 870321796 526795197 557656738 426579624 666709441 9262742 329192457 85741024 785389410 477102499 619870014 43867469 501250704 53788350 437158512 300905591 457837451 233038482 662262242 348902425 880278437 814457311 872821004 738877829 852427295 778263222 955212373 144394916 497535145 256945937 650955968 13201478 840145475 775095314 815191991 438715329 572992056 110162820 342811592 57351622 303190883 100146611 887765979 52911914 253582661 177311331 655334408 534587791 786006509 191019122 928157184 487744126 852959810 846123514 942065223 480104113 829813210 749960101 977162809 193777664 378067249 375998295 515149246 12356253 739929668 449222197 498758937 458268533 500481619 324846547 599683308 375077797 503476278 412151300 522448429 482482467 524936672 146250862 704768238 235879681 273734985 234080825 835479417 524019805 749702161 245830274 322443760 299011416 365442790 149443927 211168974 19520420 682144684 35733945 635554984 76197554 433451792 221824212 842905240 193906861 613617792 178860112 981590974 292283531 647517874 120133859 730404291 352013612 561934753 237810781 869332233 44709223 644058349 284014465 763912362 333588278 674611729 50643030 93439905 36483818 644383190 89454973 886908568 262203495 330114773 262177460 902029709 627230136 831797618 642356798 988284127 352430884 405165055 281583589 372335310 355973126 687729749 526535305 593776743 383923265 964999365 853546332 911853359 727290445 887594935 205694484 916992390 651528909 974934698 47822551 837390207 298090851 747371375 200742562 647267478 519266949 773120586 174919944 251164183 125507113 815429443 90231427 254757456 10943557 118747555 106124066 479520283 442871381 666627359 302201417 761225088 353917186 804781875 554489685 999017688 401656868 696920178 495052831 984440087 761453974 938333501 429604382 435686180 56965428 607459511 130863923 502066066 124546114 259355981 94256668 606686229 34885596 213916622 132805500 279467753 99245321 968425354 663570915 946472320 930500588 965455170 196255703 660873267 428394973 847093666 341317357 941034137 266767644 399873971 221244496 410917542 144907500 988935343 299673684 510774862 398426336 430397079 7535984 378366223 317579099 568277412 333022013 529974070 376134565 531927927 174719618 960206585 768724668 771476489 341253479 950920714 467114892 975621861 486851341 941148951 425039239 782167985 548657001 906004537 472383494 906007349 19960375 956674211 555687024 630548967 560511863 718141578 164323024 510487820 350555304 516146365 314240145 540641400 74238180 300041389 288288145 947356273 170232904 764452199 62986887 481591065 433211928 497688623 5621275 841501605 526931134 954614821 25211835 506566675 94394330 933864344 83879347 721291635 581843358 717561349 105231501 808231210 534080101 738049564 20326556 521225844 53701415 238716907 3042595 487075987 137768142 789222765 786727920 799473846 126319825 386514517 17094066 737050768 173395942 349815648 14542174 87255042 45600543 107237308 90099809 208110747 64903944 904541722 818689739 986470933 307802369 660424074 25390352 354285714 173229451 241197227 235348902 739866539 549668542 695807160 341123229 389609378 373606923 610572063 171754679 211764403 192216894 579911887 394123374 718989663 616866299 749443189 211025236 642354024 288156626 493897850 148097952 567104446 276083925 564360463 502924954 896126929 495831956 666020243 576975043 984403602 887947620 973551545 177033688 843284101 625270650 867299392 641403940 917335234 805962060 974517818 190724156 249105327 118041148 149504801 88590230 915609881 897820141 954871720 486148291 997860966 297826399 961688506 712662011 800430349 584048041 611770312 109326244 523407815 512775218 936607518 554452255 812374462 48672987 252649390 75567859 749294142 181768202 478814009 22187721 987307022 757433228 857636338 226987545 841733294 111497943 863327040 429278360 702482284 538609193 570327446 432269692 748927398 18127742 995912000 711503822 788015277 429553825 841808975 495702923 753194126 376493981 920335622 316518776 951210593 216116972 300934538 117365729 876565584 451813452 997921493 985034649 996420834 653625816 753705448 240031750 943549856 332657540 765439465 395314537 987137029 754667748 879392326 544476152 720912890 74432152 433451475 306207962 588025800 207708445 944310234 291188514 331704181 307408230 664553103 498452034 584380152 294944780 921423437 279485008 870365309 447859917 920367513 822595285 990370778 388518396 670603664 41984340 658543810 212806413 693600514 268380728 900475614 30300062 893170081 381556178 394310014 137024663 584879250 86111370 141125132 119280678 710321736 387059222 961253399 87312748 953416229 128978108 239094286 131676402 618765995 307742287 753351936 671559413 793326871 683224035 746797061 13897801 851298207 16024526 482154977 254500977 689680722 88346810 969966635 341417783 609123911 195976491 860162465 409563257 469067118 13777368 365846832 164716766 954747761 194170974 616306517 187678761 628773211 130431957 646783601 72838864 961771233 333286520 856172670 620617632 641606633 255455896 491187573 325694751 381888751 156124106 860561480 439372865 810371144 643839291 999967720 496615982 572044022 129044958 306311063 221705250 417924236 322036151 674497963 166304522 816434581 409964447 914536716 307275898 871338048 541265206 655097440 620048764 955257371 575158487 742866313 60426193 733070060 66433627 157230916 42115011 611155680 83882850 631616596 162144473 620949136 365154664 451449825 160608422 462318930 289939007 566121273 160168813 505889303 239963316 910637049 687138272 800971662 426607483 580849975 579445263 922535370 464209380 544745107 45669086 476435166 48877459 813041549 321911344 701114314 521022358 547167946 458650854 787540118 46514251 425672060 82386308 899297312 864783663 945357245 125138773 225649738 169557166 969235078 683602828 768777926 23035016 67700281 56482956 525358791 435470708 814302405 331418143 659186763 469319246 681724123 446921815 879665743 638761453 640714180 486991475 961246669 658768179 948494747 196333676 441447251 410998367 539478728 35558814 950909658 144501693 447507572 63322081 859342028 612492729 991880385 424628349 541731799 387924447 996207860 41079770 81150971 32190675 107250999 41472448 999716233 503348275 724037268 513604526 747116302 461094342 599464869 30046258 47009884 29994962 304925595 173166389 698715343 58966714 365057856 249016374 339411856 215494030 239392347 211585965 808143941 743693999 931650929 622713161 919079061 97961472 378722010 329842395 823418551 16340789 879974984 807590414 960718126 827804981 887090980 746873092 959919338 86736394 804445969 476135123 672760884 572769499 810327635 455861824 674343211 489390999 888663019 873878378 930439845 824443966 874311172 239965249 714952251 278620672 427243844 41390042 208145245 192324313 431484011 160019377 774026346 532241798 993316960 170734068 284721602 62353052 874688883 123780852 699315463 49994149 70957335 14438172 224510895 36796567 125452657 16007014 763761227 464640168 576635277 189142830 278919880 23075921 279344905 28811763 792905264 11099240 145225001 113366657 267596382 69956350 968963885 935167546 943760190 200543358 557468383 106250375 235170012 116111670 351454738 10677583 375619319 13225615 253359825 226067197 284187094 226621264 563934123 262686216 688962645 290739215 429232167 163911629 506645025 374622339 840971847 465855807 875928449 508904084 910629245 120141198 417938688 122719488 620765700 488248598 939930099 307432610 551235820 130904465 900046593 68498719 962982990 259230985 456814425 168052663 412851981 32277011 753342079 238579852 701801318 659947313 718452621 554850545 911717054 728407249 844068647 190229268 983902961 864738529 916143025 706769899 747176966 103848914 893405788 739804778 976349776 841108189 900379537 292012567 827627549 793798051 858022911 240365039 484162845 355914175 481440468 48311958 191931130 52719917 66168064 7608970 108800102 78605190 620582608 96859376 206587618 27546146 432824512 207619525 692961660 663561142 706893367 540817289 845530094 176323734 844299611 792333214 887654657 195880380 885170400 846647718 969764379 509942668 937332756 179127356 998853470 126758473 816343189 762962883 986736040 530040304 957036387 25094437 244412529 3146648 338517275 256652619 419737548 182835669 756379512 174139758 483531546 187582503 808190906 774541973 871115192 755156484 985713478 334832513 760356960 24658163 438323186 342037359 926073251 174538325 376000825 233900912 650458357 153373474 561982619 388527711 898294810 494728539 982185445 445461699 651374300 193774653 747793715 483738867 701213091 525772065 541067328 431983330 525301098 407646433 751708841 17944045 926799735 318511820 963420194 56295134 476850713 188991614 499104964 286374647 801552784 748160679 860374665 391088135 663304444 374468510 534911200 267267004 605969650 17884248 660598565 138402174 651821531 415072093 528513244 54202888 165751409 160192080 614477663 104422251 888891925 880742732 951004943 17851523 321797571 81343877 89476340 6381347 248036083 161881958 949360769 191830710 763183490 462624341 709383700 502119891 936298813 643786292 928274617 251433703 794223462 599752419 927514987 751978351 886287243 843134733 922995595 500100230 826294898 393671477 543401911 135780697 270572321 75323913 82362961 19468060 30170877 17733808 542685876 267470076 912819778 540298258 754064354 283005427 943145394 795998190 831162607 196630488 747646136 520997114 895269995 236597178 716232993 413018999 788110525 209840101 961719028 522430426 819464473 234160756 778942788 53790234 64820122 7658355 80714346 19541677 660266009 293583732 859193471 420810981 746607412 412140687 888935403 350327596 848386633 580905809 756992508 300353461 582416934 138321314 920696656 599338064 828532607 642493280 920473501 163822730 771992638 21627811 340125484 106957539 405700782 151789067 779530463 545761031 549493916 501418012 910559343 7760019 993606356 362273402 721996262 158870666 558929552 326552814 872190127 207602704 275539009 210841592 719910530 90040850 981465542 841089204 952240243 113446088 657608059 313932087 619828463 491215951 503059870 42581088 949290281 573394158 811823408 144915557 383169662 148693094 921627940 786707666 972660439 230649059 476141381 101524783 892185540 234924127 951650510 552875380 694510964 529781027 665583459 617225266 792374024 23416399 171651695 107907658 233756040 12940180 161087477 51925085 567639521 318081118 800585349 63249000 836107307 5259076 369624098 115085582 748416630 611134552 826297861 428110731 775339892 492076356 593527596 362345906 971639730 548482071 823333642 782482213 843174183 483856570 668442870 607206408 923479298 761313080 782389360 617827499 703494944 280553584 959279196 836926229 923337299 728645929 881334847 861906367 903292687 664658157 674440626 532384209 992734941 82528197 716919772 661681740 858431561 140954701 805515002 63386084 501457154 369803047 439178501 156306262 654342078 83799046 252259757 113814645 838090817 327448833 332353598 79280295 809781161 697712603 742250439 150660737 613230963 132352120 886068721 78283669 988519868 413727343 780709707 215251162 711910123 312194379 557657093 332643033 357072457 283749182 717926028 365609092 378065759 362495228 563794273 14441051 701314497 629754511 970052610 254814562 753476186 217903656 787733701 781020949 931547834 140041365 366102713 331754914 812450444 660633201 802975806 29883335 743600087 115113852 588816701 270227745 444752252 139408405 950965540 450135439 748475486 528008436 708466275 656583395 802933443 422344149 915473141 659174335 858209682 706205014 742018459 125347593 302588920 23555294 985841334 534886684 597698169 580235829 769391346 291467462 778412123 721670312 860037929 169680506 870196048 359178718 494498488 162216086 524851942 419263058 866933938 436149151 667057941 101360555 868221099 49283260 966864070 361036284 542920373 24543722 191954906 182049358 992405164 531517081 622919888 2093316 768727333 100164316 973592016 46701421 209175708 20248947 83814714 67497084 876401428 696536661 832218311 190242617 358835917 131752883 154950622 104817427 368276171 185215697 856516194 2020090 879416480 426115435 850037325 160086055 998060420 742071460 944381147 657017070 879502940 194048673 317925143 294946694 538825534 340561801 793636894 536077470 846083197 72675271 184126167 133134152 136016460 24330007 94640426 66913488 979226211 487913404 706124376 663214653 786305856 131228808 346692875 79496591 225684362 122133121 228775955 3166098 61501846 27215020 727219713 471060042 522485214 66773293 392742827 10073896 136285425 11410465 146223261 110579566 381744386 22337607 507124396 500630362 956561885 682203182 771173095 76515118 899312648 466547457 911512765 756445802 840107871 24608092 314967657 25984311 64966741 16217796 896017785 81619284 976327810 798019222 841542286 56506748 903244650 772670083 823216068 258248719 913556354 507239507 746328933 124063197 925474332 369677487 818699078 526367820 834576113 479734307 629727640 111990451 419909119 89582713 575171148 146088562 732074984 185828042 797945367 434452559 653588783 352824117 947513527 55666263 626575993 339998180 781097054 435731237 508560812 146401772 255665608 174634477 919144941 357239661 503063511 217510624 361526545 5034776 633730819 7771295 238985622 174217735 964833286 348096999 824770488 329869840 879299604 695104772 920644748 396352719 510183786 170485958 237333069 58327867 393444998 11287026 955917955 854027400 872106381 288625104 464513348 62526882 161959507 4293437 96216888 43754144 434583703 424874076 603680033 62484684 878669688 135646854 576554225 527333090 860680388 133643767 982297404 189496710 627267566 119459261 730274567 393389487 718636790 608772712 924563184 881015376 986806144 669795302 697329827 229906678 273637035 253293754 598362103 288516763 685484031 170404359 625742791 91283106 186879749 184558965 700445589 352430571 934052774 397608101 479849991 325728520 805435882 352595843 509657849 370830499 455438495 7378056 810148725 127783103 631887837 499062124 805032066 240637878 875533155 265363615 350078456 239530350 305908674 102503286 317422116 133641535 713774056 172931749 893404191 653985481 737376144 490177935 728865371 356371504 763051252 599261361 769598376 426824658 824567244 36888806 912596744 347848920 819914614 764539670 822519899 225490908 548376134 354279999 616346261 24695428 108755202 6242512 900966465 663113219 981571913 50542899 923784457 281451218 581373996 477721476 970826180 735982058 843064685 115503269 391589246 101222937 230985623 44507646 695997621 47672413 215020037 204648216 797797628 680096586 925069819 192949521 948793613 939041719 975518901 711233708 728923241 140629198 873601484 240590637 848681311 702928231 948848365 392459195 678457798 642235131 883070240 361393530 896120948 469703855 642668520 330817756 847861142 559923000 992962134 713411605 837668284 578696004 624461090 202969653 446758465 232744786 866357069 134617374 187495558 138884454 738711974 296153342 468316894 248697534 557330984 480931346 924111844 581532352 876224973 208778573 758361117 603207878 613890988 403770056 755363586 366814331 792974709 417115236 973968348 30180472 255221265 99703161 233857276 58493540 371265301 73648909 614880244 358507623 610269649 314194429 617701393 94626732 732848114 508804299 561623033 436336251 980963265 915020856 959676047 438609860 866807351 13095840 907622637 447221951 717304384 496566946 659989373 329150195 935866112 861766675 931246858 921024169 988015220 662822856 713531907 553521102 885324387 407679636 863967639 161844922 722510252 662346906 998926499 161560551 899627366 104486448 675637053 473244617 544307642 179075543 630066392 348375117 934329779 586601911 879032260 113963790 590396738 408094658 853683649 186119837 780711972 515847020 876005122 635259461 989266738 281461952 982452301 315711078 326976611 315610158 409610055 294672494 773110887 247264728 340049007 20872989 404654250 17232085 404455596 2509216 980742846 588925905 596351012 287168118 800602747 630949460 906242234 257492668 328279563 289882024 541598893 516841965 887398390 363840139 738061268 433373370 518205403 122971132 808569075 712784487 981230845 647902015 661523802 287853112 567793377 322973611 788223150 18026431 386064410 368130262 815202767 114805013 444540605 30205800 432436148 104196678 256638034 84303001 461467414 80691640 99363598 96122455 369087484 108866162 857041005 631080039 647208420 399451201 593819474 114023515 600002503 237391866 610688317 532725581 743766307 193829891 470317881 273832358 966481033 316193212 368017118 328386447 872055265 478001062 872407937 593443218 621560838 24920582 152102005 95285192 343427665 27224654 369805130 208947864 899095681 811499510 865799171 195294963 707903641 64315596 664556877 300971577 880163813 9334015 272407494 135683715 828409029 678506616 791009329 414040223 708745525 635002861 703962116 502308681 558441793 145693745 907641176 34714314 983265297 754424928 811080763 790376162 983994231 720739577 946278152 646278887 648740236 337789618 811945482 356630376 510783768 397140413 829255846 399887199 620009370 73374065 748179374 41773081 661482548 25934290 325428884 197358704 453835241 385703024 516899865 9686141 324209841 60928378 379879582 351118696 786851594 597509097 755343045 723229422 806125997 595690574 874233514 320245671 865751830 455346693 654382857 484490254 837028711 20280755 383480053 129693911 981701000 68075673 69295712 22222504 177767768 177009363 693946671 315570436 471659748 263447379 591438625 297556028 917392544 338017901 487463488 135196367 582932751 211990123 439240722 304015241 455501823 161339920 559810660 369551690 795900395 50586524 510426246 88656263 962658298 122008879 765872637 331194017 628689377 383161488 736172374 363616516 755637751 221755996 621645283 11235410 624380842 398079238 897484874 642619276 696966300 385911933 746270761 372875754 487860920 196349073 884832725 154094761 328243266 34724376 749795529 62109557 528460158 51749781 901475969 648942089 767874257 74507385 385759874 292475565 718097631 599860555 718936174 542572745 936784845 685662021 948371651 555702648 867762898 59894186 412894657 270846452 505214221 187239738 576591339 568544327 691867645 51719585 663684894 349343025 624568031 101323619 215985982 119238055 625158259 251465234 846734512 674393316 785783556 314315847 753785936 744411362 784033313 670902398 672284916 139138622 531176898 480459917 597406939 162950716 313296107 66649007 822958478 588854778 832935551 320939690 697511048 542305731 747591316 4432738 507377813 391524055 714267711 12797705 477363977 226935043 683040134 556782188 730060774 287030022 841149684 72700385 393293433 274618151 482423316 461549713 573712707 182892654 507492339 504109711 563425265 60422450 985524699 859987175 909548312 819895445 908937315 86102472 367346152 120632779 570017741 143900405 282712448 20903159 785964852 621668794 857202606 24193952 868771714 25739341 246928313 116700762 523726593 428501856 936466949 114554421 950351116 914643844 990287369 316889072 795118204 447143705 928297153 128737615 644912622 616571672 792992493 324543800 783191656 76837840 708007301 222627394 974626695 483573836 576857571 33900024 120511526 106835064 444051793 135749085 830557002 599168627 932341902 655048182 873210308 126550318 989896704 72541098 155533083 121883612 882019662 428507792 965397704 753389310 888700630 410907291 620817441 196280025 306673118 279159923 715179875 577058757 871190020 452602543 987678381 647342973 888198517 721099993 918270873 334720122 650884293 256814959 335065116 220156687 442295926 169165103 954114092 306864108 653696525 78313504 257104757 59066072 427877557 306839249 717621306 435199903 860320343 849247419 977769829 92187970 586473820 382511167 987877531 482927301 782523279 248911333 997537704 220133198 636130324 216653954 569151631 386734546 594532565 257449370 344241779 334849860 750417116 445846805 769654176 142926409 909817156 637980543 798821328 245265763 874681920 757997973 995240154 819034152 892188206 156667735 879658154 145857286 263035174 149619720 893974429 454771986 622887590 580385674 686087622 514901326 801325843 587432078 983617067 348320895 353756212 293264342 799773674 446112785 633783553 551916334 749331321 202744566 526508799 233411983 863348687 394023571 408184850 365170181 553854559 150403234 369946737 351776350 806550821 364793498 411621190 164716545 903999261 732750970 902938345 527289438 755134715 423179477 622652744 7366326 858090678 178684830 982914174 683990552 844258250 631221206 683075588 67795328 479598892 475820283 682511708 116598754 465414264 332551003 532524733 440955895 666871308 76497695 406794947 148166656 206086782 176626914 408579570 359937190 710606689 478182679 706937416 206248961 966360773 659674405 748884128 386932416 765171268 336878926 812845142 48572151 174055122 89160885 815037217 114358400 849850361 285824472 965243466 72919103 412797296 341779175 732212324 249185911 452858823 184322810 980412188 613067094 739193874 664213475 856274536 499450731 813613719 578744958 729940288 497295268 982608017 4080669 122324954 33194974 126913867 87540968 449143192 281525452 360577636 351513223 440208959 123506161 559387264 48486742 184321744 46965384 763157648 274689664 801323755 457611632 480335444 333889548 481948612 462791070 864164142 476803174 590601997 587276135 937414525 17823726 141793289 92741414 513680701 297395978 396025241 17944901 53170013 12960410 537943399 346484976 595497866 422731439 730963889 42292114 529542321 423609884 429322804 160998217 487106560 304287347 914530052 492654952 886761843 275948748 395838491 208733228 232961942 48314851 87161575 4922074 101581382 93227349 197195287 149029530 664861355 569253092 637178887 547509029 549465341 408381449 873839772 86187490 720972060 670873165 965944399 305904604 924397000 876646128 979114548 975439735 979227633 470898959 989652766 643612306 902136662 732630360 932715239 645333201 824925463 507014874 887992325 800661236 930699608 417724225 680007961 220680154 677201683 259828325 924816480 543785112 880242425 538843851 609277803 360480141 892401919 80755957 307390041 248847623 461005848 182477921 815372251 729349946 889041222 313319312 534709308 230011105 877586900 636461522 933068256 368731546 806012298 677298169 956741036 330182142 619200552 156317254 920213551 32570055 947173354 551287506 625892631 246315491 861142574 373096875 935876706 203462221 415786373 390264786 468107209 59890503 72454718 59363956 341912774 273160105 394985614 76261474 189068778 45409028 64270046 2832264 539509538 276351385 391756487 349139505 434565606 4178695 341746243 286270 654915369 320252518 889972383 172421311 208005399 40729297 495846178 342803252 613559574 260839670 505996222 77503256 457893124 439247237 763877215 754686253 797868666 745348829 766879244 28369522 402042592 141223384 636984729 451052608 991480935 184129108 240694384 93382889 172073978 96492894 637523523 168979159 919104306 827486039 876290345 600741716 924579803 9680542 318912838 276413265 423467154 236291217 883649458 814449132 942603459 935591399 986821734 752844154 828852942 649541019 968381014 577885834 768006301 473419339 633260142 575756652 969123486 654058290 667189065 314530050 941615007 429472348 693868888 272305220 547799707 1966633 944926894 379783215 467851921 94257687 312065103 207844418 331796972 120043705 467525536 67682248 644979484 162079432 806057683 122141478 868271067 318378426 336917192 133063094 323926561 317226990 750784969 370538766 681293771 40544548 650034042 280987441 398142152 127815006 165591684 117668385 985926147 212523283 668838658 266269182 369786351 333793512 964672013 728599137 824186511 277024294 494514333 66965016 131703393 25572983 585348848 77965089 248666379 198538747 737943165 45757084 533559995 207041679 999681604 118278533 191179893 7835600 323698568 122859495 155364918 76282076 593399564 390884937 938066330 228163743 962076051 863957184 879738601 141863397 362497618 149385312 671378991 407555217 588295198 544723828 851138217 3084585 854314155 844582540 980085187 644887376 699605896 406183129 518461048 210380241 678906516 100338467 103771591 95269071 152090441 77448630 634010854 243411205 572391055 303146663 317734392 244731097 768044159 519781696 547965259 137759271 301546891 243274004 258161119 190912379 353827905 201482913 968494803 238331968 394325830 239368735 878499230 410355452 543488163 326777360 365682600 247660183 967665869 132070921 246098146 197529392 415421077 199843782 917181807 91979171 826505259 410813525 863900490 156691411 661491598 333665504 517890953 13543675 885303512 430152081 616173271 80678558 849267535 828574844 986390360 835785246 867669972 693852879 747495411 362228361 800527904 40728160 818804383 69892916 410371185 291790723 634299742 94560030 587571976 93121772 157262831 30206835 76492584 12223356 79782727 3617789 424295574 361401431 470324172 294069080 538793203 254977906 575039841 78813739 502862302 414331160 971851523 752578158 796200206 4093157 767815563 384639775 516419883 509457590 615209619 19481327 582515422 233207731 787763796 129992490 549503000 296994760 564766405 477219988 619643055 374443194 861807388 114657637 133821331 19743537 711662493 480550909 889262632 419577332 737881128 426486628 970729976 430728395 631812444 199249272 435687971 315931254 542853248 81835725 468935691 68157857 927132308 566883237 888039765 740895984 781763864 192967057 794989517 675359543 958719740 576479264 650098659 220873835 413987258 266885020 484303334 430388425 854005194 308537483 365300333 357005779 621322613 615035395 836065625 402440418 430777088 172010040 825574026 321054083 767025787 403880537 670498548 92934576 901693845 466450399 495144731 387619606 828184233 275986715 635316692 402905908 649891386 470571523 490066942 183435787 361444458 270816269 334894984 199282519 302043421 247444395 874827604 556949008 669976981 350703928 476493323 143128024 453763926 163891111 697382813 429267535 847010621 417095543 797698099 435628563 915127021 200542251 780012045 343439164 892938640 247130369 347155805 33352987 165222238 46472156 823949842 549362097 883924698 512540230 733626201 609890219 870472952 743577425 987247693 392824581 789267408 722398920 808628333 548137941 817167849 327471175 676810231 482395900 612205847 363970507 441538150 392903856 595058512 144340067 474556170 192975584 458246302 14265239 636464222 11353387 578346430 560537675 717637570 450571177 915551298 605738897 938281888 385300686 510959101 273687855 292472433 188595121 513149643 482327420 737078253 534711194 592237153 220670692 317635448 55437782 796077358 482908333 818666760 288294674 751407703 486702653 743429804 147843450 693393646 260218709 625288598 621054049 879110353 481312726 597754146 302922085 777273323 368563169 815176189 612867607 857211781 552734276 662273564 188799877 371182904 1397523 522567949 442494818 575920850 544543665 694502054 556141494 916974994 527458820 877514306 747085057 822542823 615005060 819167682 662175112 684897396 572773416 637715244 305799405 568101839 191119060 748111941 685975504 932156914 661821683 768822228 436727058 956971325 38257934 785908293 15013491 480034428 198513575 651494071 471704664 540508114 230639161 569394543 534852742 694899165 505787898 581211237 481245447 868356105 523732017 984282868 325580810 886660873 518365230 696357896 606477115 798017764 305484337 765957245 380486559 730594816 31793667 861358297 836939309 858367326 298235892 693193105 54231806 892366535 324891253 531025669 291328686 440514651 318055418 603121082 268610973 665372529 252418870 633018851 438757849 762344382 267752772 490680926 449638161 620475730 365329494 705144137 660814500 883865816 725528382 854289461 671057496 970588548 689427451 928875765 29035134 294102795 1672266 361793372 172905694 285711962 62121546 445198733 339435316 398062757 143529851 594563010 233566991 960695201 284257685 526484016 269516549 769926030 289043418 547177696 28783052 319440655 68519607 870606805 797428994 902408123 218969959 723194697 402931028 943296974 289644294 350644462 61521028 859193164 233330319 809488645 315426136 800782023 591040092 867651372 166640995 599100975 595776143 859701841 300533709 395282742 194184635 707086158 335551668 435584627 303895106 722405780 422997811 571504292 427605121 742998067 522678630 822315597 7716985 910955863 563033000 677451873 162438580 377949861 252843183 485211955 453472649 753050621 650577797 819314994 543000773 581815206 96474238 453796076 125936110 974532560 445100025 510201237 343169350 969085095 536104649 635300970 355059897 788414237 594045195 680980854 393092118 437995644 126066763 916931260 350090568 787756584 218746743 309759546 268701203 757751994 429084486 955206869 791512137 888626377 44359425 641848367 250498614 683537990 428080029 470786068 95961964 515884028 82506774 720599595 345145013 648933954 457573345 799817108 664494240 885315639 17936421 323321432 318676817 828786005 484230756 816449203 595428158 804630542 357330909 364592571 359219883 592343558 437707134 691934086 94553647 524183982 444458031 870163949 327685065 882712897 445931083 945331731 407599931 646135484 85229135 677440305 66773294 164502858 77376565 515219709 97241984 602753710 407034100 726134793 653135420 658149327 261611498 497155942 270173586 761388108 139870762 323274607 106510235 693537783 381437742 613420350 295162231 872517673 868719651 915667300 548522661 982350770 393565367 577825402 177192124 752330583 348307420 985864808 878094536 939771935 21958516 692092299 233984014 244901873 169956642 624839469 398021480 600824589 359801379 464796008 294916834 666344739 244293569 513754140 451564293 850209534 503819343 730930587 95137487 364340066 55107098 342397902 337313567 948014856 736693040 891373125 285838250 761900740 674075612 793143570 154761768 517981546 11289616 382690676 209792657 288693531 197558919 788950699 774179955 998171872 630203192 917910362 350947270 894204083 475261968 513520934 301322839 372269878 209473822 411448217 44738695 415791500 156992577 354176540 56154837 824253997 163561241 214381658 163228414 953276432 719785898 786634701 230049972 637595634 307971991 350638107 264401398 912243544 358322743 830521185 48502415 648620542 631600773 726989745 258633246 928306588 118868226 551337749 485916768 849358212 12032047 966508111 891613585 956592241 214164034 656003565 267413089 542903770 141569234 886587064 845116957 924692841 571701571 961216816 27627856 671016793 48963957 308451581 74935867 585751235 87592658 860462514 188584836 486800544 361370321 396780225 114073734 181791253 52126424 778209992 427415662 588632434 531816622 925247364 356207164 981689037 919473971 966642592 254111578 402433944 23851292 254566096 56115432 690320221 169694105 631975186 455790659 678072720 297885221 470999054 128422895 603102173 362606729 432390734 198028499 470832418 101678818 339008518 61196966 957297610 300960777 557898115 10108563 70170962 9560567 33457082 2435164 344402503 315743818 332068759 316326700 515158587 333670600 838494430 663519427 863718961 548984803 557642611 370434787 690574250 255031243 523873192 327080954 846406467 359993365 564890022 77160863 735652013 316169402 957363089 485796180 934281511 468637231 484055029 241851916 664826777 576361860 781924599 247224501 309514231 303559723 524609669 100049300 343081285 259116219 602100655 504701710 641478131 149230401 268148305 55100956 300876125 257195457 916137630 716652289 936148814 375411884 751579685 460310783 964174583 658347470 947117128 836005391 966966976 175636520 395247005 217266170 826984267 315021314 317896178 230053862 285540446 129931913 887285870 727460406 967738257 71258008 420652723 305798626 626319913 529606732 971392667 856993329 886179211 453423174 811134164 709624416 785784822 402932867 991298295 160576776 235947063 36825237 367079378 47772306 650821014 10332388 182808873 99973483 245127756 232709612 879038847 853988686 909595927 567661379 875781397 266298592 606684003 262511233 840636250 523796554 651061408 244383751 329585384 95622804 220128376 173882411 340864509 297109821 984042332 851768690 859729531 800759709 831678807 448468485 504089044 211605195 988772682 245984948 635374597 316860269 358569334 9177126 140396963 25917455 691023313 670017991 779312728 150859192 761449846 54378750 604409231 241268441 341227104 66656698 496938235 452725514 983162019 387286644 388830955 357564171 729311266 282157981 532119819 178683087 902034634 48919211 482005726 322948019 806985813 114780863 166158827 58290276 273662436 117241217 420010768 342978141 888585136 434057246 687085393 102266557 225899038 102659583 522739114 211932431 839197599 479740401 630742788 569240161 937949492 324348425 468445451 316427362 597832196 188389111 902492206 657688978 796392791 290062823 870783544 213862397 788474967 573248856 942031373 923474415 937684033 116155148 357733689 98744771 612589499 385767629 525595399 378669397 531465780 423917189 937101950 521674921 578531162 241406691 868943224 120170555 562590975 390465459 734299710 556357975 797730545 734319637 765835825 529843778 932533762 136647438 485024448 319249878 741953814 28807918 30726810 28623401 988293665 589655102 700849932 46819145 734178334 468923691 679290815 630688441 767271078 716940618 774092774 469557353 944478347 687344446 772190343 168641980 419698893 301758543 306140894 36582471 84094796 75027883 102425665 56730972 603443403 268145134 314756433 119548477 607826705 606601065 954606775 211977852 911551414 461558870 504064170 390511463 593665417 108118672 571801479 312929493 595320962 223498968 748452114 260236841 984066372 589832134 745219834 307118602 415985319 256029075 873438027 847890619 899605361 493967537 970794340 257527174 331473906 330935371 574319240 503776223 635599647 234229700 521001210 223668627 827057067 236254868 839955779 830512824 995318702 241707368 429608775 145350617 179881493 158786840 969299483 590552240 951600081 306661440 333872137 41817485 123351453 23629895 823914563 115828521 475243944 303284998 513676596 199592164 523209044 106996112 128065219 17124126 336775972 249665503 649866815 166931749 531029601 168939156 642429602 612796294 689450481 379341360 830924832 700137251 823125041 437391654 489733505 261960522 670030214 221915633 296520944 52206875 973585853 149462464 543104049 91089307 953271674 175792306 329357430 14039619 514971939 391310084 871978360 441130470 551903695 378935767 490563537 377474827 534047841 266392461 428565536 215905556 846732369 575809681 742623667 88873165 234557784 109715165 778373716 527318381 597089043 577556684 719322519 167558424 355808439 351762987 651463015 151310438 364670583 13598320 51988016 35636096 266538972 24744419 868666513 527633309 770563491 237858848 978008957 845307216 980565283 294689352 799819280 427876395 780284181 13235704 689629971 580069224 865291471 640931933 821395173 510741483 930517857 27052243 518970812 453721223 649792985 570176292 582362345 295419023 461347196 81244736 998963178 883777605 933559325 425275947 850350433 24119089 157823966 2757123 305255901 33549925 342088221 191117759 623013847 139802216 620269738 291204633 523999488 226335540 730927115 728979775 934784510 904329404 967878761 254356796 379473606 248236120 281279696 139453961 871167074 628255726 746670983 309148246 580189658 240854839 917285618 339542802 590186301 544262626 583323522 425005975 960248739 948960561 986944274 587671793 741898810 484285282 920477263 398762597 571852591 226222562 778146820 335866547 370281097 100757986 893725039 500841394 882707307 608315401 781128122 481262102 638663793 46993914 944690420 817480529 930369506 252684802 657838738 64681717 971831044 222135003 995167463 185210102 545386743 321557690 897910121 792787161 856390019 516409059 918364126 148043189 744725570 531634093 979699441 470673897 872575713 75180188 204111293 138507228 592416606 14955859 708104773 554548941 909051560 787822973 947725022 471174906 616622976 479016878 675461038 607509868 613702396 357154683 785014542 228400111 591003851 111657030 766166273 477375053 868091776 175010528 973010748 623116485 867069878 800155204 943959446 263420419 958321201 654157560 979887058 131677928 381284278 281689946 819524394 548219469 997451149 176848307 600039284 239961570 703458298 326416424 393413821 311806369 495572577 160911129 862309079 522611169 564747614 122521063 951363341 832699169 934646380 835177629 838585454 202611488 425595511 252192216 756151267 284264392 320318376 55683597 887231235 182841266 777990412 335015271 490491966 25353327 511909072 229714465 844033323 246942399 280357473 116325855 825183181 237619457 654157106 78941208 305918402 96567414 477240943 177700522 950200405 298320850 686340674 507567703 820989393 740908133 900168738 541418708 766952743 760112268 849277011 472934787 721829023 594325773 785553899 777094154 803920094 547044303 850214705 206306348 807334487 495984183 734388234 234308620 419515932 248792066 969409647 542831083 786221082 108922421 855361376 821362063 989718593 401889479 554906327 427838618 929471567 52659715 677296376 183066335 284679215 8486580 690655646 21758763 993285017 8936738 593446430 261075227 885960511 263266259 316681576 224626501 725821222 138017572 774669337 562927453 902038448 505136038 518899121 163551882 396900799 35511302 828420691 706406798 882496854 427534805 444451549 383986480 604759698 401226746 717174112 15628257 126537989 52858686 569387602 144000445 308793920 103656770 589946662 76244786 642301518 60856148 810175908 257355180 664150256 482278927 616730875 469601198 744902637 426251758 482298282 120765598 202482209 59830638 359960718 153619423 579274089 353198863 964314580 590159857 775345510 520718646 678912547 212183057 710820840 401325357 935331566 863178384 904403876 299263195 918568930 322596128 475228036 404939229 940887769 621142094 913236995 426553095 973334084 286334030 377530013 285117457 367990237 11380827 117736526 17075405 912475292 188628309 912434850 4368515 20910616 286480 809529858 333333950 880467966 621759214 714458235 242603547 323819110 228623509 668236075 609785715 941220618 782343973 952933825 417903498 517920014 133474453 273807303 49202271 170475711 1660230 349222879 179466636 943632301 611640440 937690341 241863444 386863223 186547744 784310155 543554580 852498212 686083767 751934604 269969205 658714736 128847785 246182528 183966285 586539562 126269738 909677112 348896033 859886613 646573259 884311630 415949307 904509785 212769806 486403434 457636502 911644418 682380636 902933520 176489038 231805546 217732600 373309043 87071331 439756652 45855985 763934178 740962920 849772813 561665041 607206614 301444386 967636304 301495080 641399370 335159349 538036472 451368357 713813551 122500735 551527615 124502113 277670743 223925957 572979582 73881349 601425018 453137479 710665579 474321024 795057591 162916474 206446365 50978471 350408271 26251338 484896371 480368983 672328206 539772405 841765497 486270885 597322485 291959153 814721823 538628629 881037473 810378488 831503806 543355725 967519897 202480481 501005703 120734335 831143980 160587570 999136901 6695244 446361388 166537312 594978100 34478895 508476181 472544502 949066204 363183987 944850746 799707683 954972943 64766700 605015043 292874059 564251207 133785256 641942037 36161808 269246514 33750412 973955507 699786219 724754699 384824650 674073923 369170032 702698016 272023391 641502690 539069159 548438137 29309603 723652346 364267179 679954025 421701816 761627258 46561673 356556213 68262024 557155072 537838729 655743184 125848551 942505992 491908810 973361432 168778304 483896067 348559891 453981811 42712880 277850507 229656747 372797732 301050136 855768747 260816801 956390121 45801227 589120049 285730516 653174086 242017114 703000869 45538998 207348910 153693992 491334532 319382983 769247673 406026938 899905311 861418498 908318060 58439164 511965387 43952801 707879638 482979680 602045819 339443131 709536396 354671102 581433025 256888622 674619877 434568025 629742012 335845559 663876225 460158393 829571856 260879809 923522721 694115113 910283175 345960976 429566376 422452002 514322674 475867921 722331024 600785993 656090371 331513126 690346168 363705936 372916237 275231252 769622545 420425574 685976787 319890312 693970826 501849267 616293125 506637632 645987090 149061275 879173059 584471618 755529350 458204633 734256920 615243196 901034226 686047937 776120471 607532585 628894088 433789740 885879951 108374351 779508500 412775464 545164043 417017120 466209513 301790478 942730649 452799726 790854950 458728949 752396031 310328899 588342726 417051974 550648735 489102889 886208737 693603677 794020522 71111045 543214788 76508607 718008064 437173640 571839149 90466220 864526223 92601539 192631192 150885935 584627753 321969052 501617482 61491610 609528840 64935452 588019304 487227419 506852865 89385743 782455326 644544563 712512129 229170638 891019171 888522891 984026823 703536583 829547045 218416905 304581888 163805285 455126990 425932614 434887901 135012477 380996594 240091374 606684453 367960497 384149006 164221306 194480964 183737391 796759601 79208547 338304783 201412572 535413902 336840868 607889842 420344242 893671340 745988096 946507150 822045221 975353252 29733302 699253992 7650606 913244097 869413125 945230725 13236192 805687528 8939486 42376503 18201492 207472395 97843033 325626910 283762185 788230094 657892515 939724839 931632286 973262633 248738455 932626203 813529058 881163944 319897248 655625881 213519934 877436814 512971838 751952536 693548655 893108980 880623932 999734268 373210753 547747259 450772441 877428448 284895344 391036541 114258779 986937939 394096206 447688567 37434402 936984995 481145208 947567281 919728303 993398850 200437646 248105217 178883776 573025519 334037682 590887546 309922412 684635971 125536148 526972055 72305419 818963407 549477194 602369707 475241894 926763392 653575792 864409253 737277114 947396313 726642644 735707371 88892554 461594801 234023010 252177757 138722289 823595429 809036803 871597654 428603865 597335673 462221074 805363934 221625503 365477340 121777233 541271508 290110091 355084614 78864291 909112272 656150684 692361023 235113590 464535873 434200594 794736454 789707779 968025883 378975083 486689715 413694515 672953091 479725798 849818433 774378767 875452030 184447067 253618450 234688005 655090456 461792584 605889503 440800346 674493842 337870267 872778464 629900948 713979965 428760946 566823158 555148556 620551942 439319324 804236500 633050049 940146273 48970448 912177808 734576491 826611628 273290358 779528499 709149820 926917622 401246216 505141347 303469225 979931344 311037776 534734192 8588369 811140513 528739518 693417378 623202489 696442809 201493414 916124990 801538908 971353319 626499305 918484473 333919426 879058201 84177437 571885050 244082953 700201544 159413855 336823325 148658647 649073051 463434405 835006815 737718965 871594415 65382085 763891311 274901455 632987923 156273903 571551963 227885336 608489007 354615004 734068480 615939476 671242916 458591907 882253810 463961017 575533484 63080858 972438936 100233664 751139965 618665214 660389015 385128001 573257293 471397630 598456222 314530115 479297328 14791430 884368890 357410493 594021980 590582535 749718120 546464200 620849903 469079519 689877943 213417702 399732331 159328230 395698026 156873646 156970630 17397435 221698602 49008509 830863784 17650813 847137047 731628747 979884663 850027700 933069106 806998305 891567400 834924529 973508993 131564461 271810299 104379312 376285354 304767701 398434956 322132674 355446858 209547565 663006552 411935059 824444204 162039371 904796698 76589197 981592736 276879348 341192665 340916675 720268617 349393666 655430288 71393239 518949224 251094322 518687811 64797821 597710457 435682246 505668678 57916661 383395795 303116715 602912641 149105077 392968050 327432554 719712994 467926408 480585713 436151603 754085241 740554304 805466817 81230362 401988184 37243602 959101126 421777805 585303910 169370086 851324821 14260283 14418133 13751656 309559272 243589072 308874310 276285912 472299534 342238761 593141077 548455542 866805201 510303088 855680940 120996247 741528847 727320141 943427941 607868659 849009460 516820960 918519455 296525863 985596332 764193643 894221497 216190966 765496863 234516943 443884065 180685462 660538808 267312844 349044027 89961033 480672831 196808724 878808121 34797948 52629173 624699 880419666 468529080 877572781 8264285 777782205 172770810 599289205 456060495 651766837 71526719 705814780 259089448 570283817 183864772 935526353 87379502 653485342 8077315 926169685 119612771 560355525 346967760 729177945 600017757 882565097 633054607 769365836 389857409 426212744 173976210 377367175 253156996 422719678 175785055 523778867 353963953 484100082 201008114 589489442 46687677 874772918 741564310 870944393 478651097 999797565 376229411 911874178 389723555 769847192 250103682 784187362 424164516 507010908 491091490 731342925 546183827 572583812 486422182 998643377 849192965 897745779 496854777 714181493 540451664 546522788 116129678 609725433 42625700 121828283 20507090 254512654 241247345 493074794 204365221 731535275 267593718 416322521 10474617 484756156 265026606 572962403 6451092 192836528 181866104 898202085 304676516 653929004 313037390 384782671 106603089 142119584 107271741 974038414 733169428 976953882 65999180 814152166 253580514 804336336 173549938 663297131 300003898 986272173 577709615 943855959 414562898 667746915 66393244 870855105 298583243 456724064 259525888 990399858 689857863 752958615 251458073 798427575 583959763 731722493 13272286 911574698 468219049 506774609 276717996 511773102 202435976 808572427 808110960 810677877 481328778 661174382 28942565 618418396 371903820 823849866 584511498 793194159 677868807 992546299 615417815 943680814 417870983 630771363 440741379 486771461 188569785 653975099 14644828 950020114 400992473 525672625 249072468 427727048 240388646 784977083 546559357 885830911 873728472 950612205 272966228 295845693 277108658 508652375 181075669 585610464 422556857 991197424 682695957 968542094 318613190 694119547 319045799 707223825 24497153 85415033 37093275 989638322 207963684 498150831 104688894 885837340 743959313 854985321 594540429 895943702 784718612 985781713 186268416 438790906 334458744 890804534 690826698 772224289 11861418 848386120 762556726 971409153 462895384 949117408 585674120 869378687 64411074 770932377 346460026 430650714 343776083 508145354 366970711 460535059 7056193 927869987 184228983 208695094 118133508 316091543 43664744 865293987 500816481 636092397 51337902 935262805 24495220 655637834 245789489 554615132 150532740 372060029 353341646 552885903 479270569 893460177 822664789 944890837 128867185 766747769 623816135 715964414 100166513 845677720 456093700 869043523 335266564 691424629 687099730 922090285 473799743 846928738 340818840 688448172 542393504 556067096 445425248 489829245 402783105 493129777 28174478 514093184 261975620 547560095 544797048 886902007 823640196 919661476 196572848 998940872 371089975 690431720 344522973 375280463 322938798 380538004 237308369 911477297 498279583 858002637 167806903 878415589 486453438 847565334 415593778 702363293 638512967 792980589 357598008 917605122 615179070 946753623 614857105 802720320 722123696 905414278 563558523 702598615 14456794 53677117 12303380 248176734 212256083 897806056 325495065 832804498 621332530 643409627 562480259 981200304 577675807 597412920 407141035 414541134 79154411 171219068 48379707 840530779 694335016 976702558 827003757 862306285 237830673 818215526 628559524 755141343 178113989 482505250 131930558 789547301 630252860 944642347 317792614 396250174 275079443 924097730 200549769 852025882 453919991 779335738 223810156 598450061 347709600 962628030 631144722 924402839 857606279 916372247 318774080 992229276 624644687 769175388 208780992 289234123 75783953 313473312 159185919 646088187 177862778 191858106 125378615 883755998 744946570 822119520 583340369 851520461 340634805 635802252 480367059 518228812 492685225 771372196 448423258 644567660 338954771 999778149 165059013 471192293 308299032 601172025 21696320 516880334 103967114 565810310 485775964 923196404 208532687 533920221 371225645 969113329 794609122 925175185 714226248 856141228 777055223 875020760 294178164 489266503 260052753 776027202 518274318 934361993 191173342 604426986 193680497 443792527 131576129 740563460 145820019 603364907 215241554 492520208 253142009 336230871 135809563 528036464 54129469 63560362 55775760 550971354 295112039 411460419 289069445 711918269 669147779 672568570 298262674 824136515 316128325 560888305 189808016 871314329 753796560 938173487 175880656 366955283 269493523 459692740 334170533 832036569 572292353 611031093 320853959 437827350 231859539 296591241 196990421 741330271 654008167 789893852 353673067 825368424 333273083 394618021 169671915 995946963 629193734 790040047 746801793 884066434 589587871 879386947 829680485 907870288 632886275 873155541 146081763 148949550 30345595 586331311 227734316 232966360 80224875 890314546 29500839 92547009 33828146 111351493 34264214 34851153 20815055 554946242 395252000 655418504 606746469 650272647 400106018 482317235 475576336 553023579 360775046 695128132 460391411 769059004 459946329 461237382 289663303 652492855 571430192 907480870 141657065 355992303 253883113 956552591 515373058 612409980 178837664 804814321 752904755 980211965 805314923 843938514 464178048 551779283 454864143 559440353 413565298 962478910 379357341 902926783 303033086 366381149 19897409 703108928 166700427 359528374 72911238 434140177 293281536 835158602 144029574 227316760 154621540 687328500 348965570 841434453 466724984 585127407 133624592 513672958 151120146 475729399 333618001 683231136 666654650 684627623 7972007 180271802 123114262 404387099 20284367 311422508 38073617 285745778 266001585 466463581 57426985 988820139 896424132 905343729 355457162 734668430 20652389 726582994 440452306 723946853 499321816 757226624 296672539 873783637 762070458 830078272 385286063 842705613 361285206 526012606 285729 383338692 185557224 580200243 404472879 777424217 717415640 982611636 192275849 827728591 194141546 764713208 30077541 235405155 117073494 202822057 77288857 842610044 431465729 537017248 129583051 515320631 21367737 685328578 434811726 853356414 609233475 988880198 246124304 287970260 212887231 478882612 118795838 813765315 656727442 935956741 842601756 897947458 337155018 388465554 138224597 272783809 183718176 717314810 716964963 906693851 837989319 976255636 854874966 921839400 797535345 849084774 399351513 880219847 824133211 908274471 862999689 913705388 720310006 898429789 229699748 335934146 134274369 971652148 564962482 665173366 161628536 900693113 282491402 499964546 464396321 489011384 343792103 383256383 163384178 347710525 276808803 418300915 102892361 227271587 176578868 335654744 106242325 265284462 217727645 941580201 145605935 162746050 105817867 492385437 255095761 901118775 424047660 961393430 407454198 776077557 103114042 808447997 571131135 906359212 453212916 981263782 112201558 769972049 427495181 846616451 614512419 986309845 406958471 614125844 459928335 981889036 223725851 446117360 235610978 768828153 401787169 820931054 66450073 400389788 224233049 944813017 280883038 712733784 417480828 872674551 358022840 850204810 597256101 627454554 29533527 988697003 450465471 762421086 674953100 808299103 375724344 618269246 441534267 715199914 264306076 558661369 551179896 860958588 166767570 985191798 915773652 955623746 136346447 987972529 971760773 975275650 563663313 719587474 635275398 845718542 292763264 807136306 754410972 759126101 660817657 715305856 512646008 749713589 688233713 698930851 382756072 826893097 486503357 667296842 365598998 685601430 427849769 952611664 130678962 866656838 361302323 778769492 599500673 613244863 510044612 850841973 600738344 982392646 487399437 996863716 731691597 900110960 251445204 549849583 290973549 893633899 238373464 727025837 87873757 624256024 55427996 816692549 317913465 643630459 621034960 655417671 358439218 590746663 161499454 600253664 372905614 547794629 325563793 337347688 206164813 328701262 274234553 608169657 102485834 206079648 164391511 587228575 340071073 716744455 529523233 611122001 391170943 732657785 126552466 328739723 182325808 432035548 25234260 403215472 63452064 90165109 34420089 259759733 171980633 912427795 90255354 267554798 180813864 701827676 491282428 649456062 454879652 705615978 519645199 724450537 536337813 816064316 738901300 891571439 477444947 839283701 519252866 976152067 754196858 931014518 624808244 888788753 245408482 514351275 48004519 552457393 452424559 478231499 412953145 414645210 69583267 531178487 437288243 744231426 509948909 680847212 546340187 952596589 512771700 528918730 387147880 896768825 512076422 745541508 489956441 878809012 501687632 899737681 523470006 758330157 587995705 778670422 381372756 612743686 527017914 950018593 159382381 261643075 173570532 401519137 162729984 448877196 257380314 697675876 254275167 355335253 271827203 295303848 113882100 158726942 67259550 257358675 60998867 315972241 84893612 799517823 388226115 683277481 178164489 304588297 221131190 420868998 257348728 992061538 282729263 735645838 429089571 439447307 177159294 292346002 270576036 761408265 436346730 846217500 389344400 766404041 45845838 811974686 640467039 818222406 475307739 709437209 418607177 466292789 350829194 757567130 258582661 758038727 245764933 338738236 152227404 251595534 79169903 357411691 97117001 810985386 293209756 807993976 663695650 736094842 644095132 762382123 635789202 724543674 450730602 785306349 647187418 925143954 756549270 964102111 615232057 717338461 426278958 818101349 753056275 847822396 162709826 998448205 739524873 926365580 899711908 907335526 223662908 762623899 499484954 704364615 345640139 574780902 241014704 354755195 308805420 448538953 112225268 670925409 434437224 842019801 256227134 551813153 15040510 492742350 439404670 850195634 445287207 971274237 138904798 914874391 290438962 719243975 151285658 847028748 821936417 927392177 891100575 979624568 100576352 708623133 84317847 674137755 384800453 684535449 419016185 452742001 50126624 194416932 180312726 425235957 378443278 593005458 447675863 833209415 670205983 682042530 442520830 451787610 100084917 531331527 247442073 907783145 92198762 520169780 318730882 532778631 111578925 877865525 492291206 789098153 288407207 648799298 404159731 936022189 340469941 463742536 146924998 992486017 649022328 867820467 605335194 747303130 106576693 743741100 329078519 473783329 444164983 988977085 533377130 791550418 25249273 120435984 15843996 517202966 4724510 171019759 10833642 56373762 28420038 156253341 143085381 482118571 297833805 504933267 225287440 612148862 208633167 741253800 556638083 948813376 607137105 964463318 375609546 886807070 7306431 473815737 192853528 480890919 479287287 534290335 252358525 843096437 77566694 866066155 66432880 986642302 604979402 655395331 335774661 570261235 256436681 682400123 371999342 424091278 128382056 398384064 135295547 590735709 516395539 789451565 740966312 981522581 175145212 547433508 341541044 588130393 117334048 230879720 120771632 928141319 57142137 292244763 87786749 182999473 34440711 830698204 144472489 593548555 165493130 490311087 252103502 470674848 402964505 405053490 319458315 896737705 327329710 401216045 32159376 660762845 347223688 887031085 121713793 624344901 269221216 315836211 121317241 804849234 563808584 940394470 296253983 732103478 394009204 777819449 600943124 702327818 94248135 420480090 98062854 186612325 93050537 859926966 618317763 705957483 231478861 318314080 136283977 157137287 122656055 266878362 143436136 891847844 17130788 984181766 218144675 873186048 521970976 538769490 109056221 367378704 245042560 342067186 324540630 431961986 237226920 424310244 392335509 544991837 458910429 637555574 376251037 593422567 195206297 709331208 26231252 971629608 485400339 599693036 273133670 619916546 530199107 533131884 14412255 609408145 168066497 474935031 31687100 308047984 83689554 424100397 101545539 908545742 627468133 968429276 46026626 906977114 199204337 243649276 47595546 483373820 102807903 662615491 464466496 601861035 106619236 269112947 17519346 899653226 439738717 594150686 360374540 436848126 222355329 935883664 100370210 206166486 13709256 340070100 140568535 800719842 129580641 648550910 353136540 434747835 26353628 771986724 466080076 872525189 15247565 617779584 138832113 651645385 518540351 890959954 885990246 942090335 487468913 711976053 317844524 492487753 179825026 342931207 283284728 756777730 168373845 705692113 444050694 512519604 508980996 544700129 56136120 707428895 149644775 475249750 97944525 482569420 189107119 414456144 224944289 388504385 956616 251834917 28885853 500843145 186543707 956898041 462521858 907700344 462103143 588637493 20860870 987564275 119808991 954136971 247771820 782889908 226097714 839512001 475767615 703487447 529051333 544958306 58050653 662598433 228974230 440804506 51214771 876822701 831986911 965345418 377613796 946019138 58303691 166060464 14343059 916203196 316902911 987243916 81793720 291687404 101392402 213207695 207303375 319216552 53192911 538257746 314586632 422670976 98297137 752857083 198131302 976940666 655353495 808704071 625797118 716265540 85818258 969290283 739737731 964042545 670023309 907819113 205428592 382013797 65075969 731316780 354063961 873745232 671202037 930423605 712848348 788162403 70844705 339787494 72682860 693018608 282025459 592672655 423567820 796042964 239825773 501963632 195353568 328580389 266551729 614821300 257033857 528428182 52303866 951706244 405748504 472924910 250902514 861931473 513379842 989491263 684437903 920749287 713498391 872834091 486678619 653902126 363502936 490931963 195745455 254140562 47985059 765957572 677583259 915275041 339782722 893200194 859611736 876940082 829378023 900853114 615170952 830904557 443355510 986342854 717286999 845009657 143518192 370723841 102376636 723530454 569889660 782825109 25274516 498294769 460409227 567496699 200438059 870010113 733469268 962539546 811748034 997274518 680936681 988204779 396064702 446721688 250058124 300453451 270976784 527418780 156111316 473000228 349903466 885809739 720819518 821189985 100075382 206109277 27371042 933109110 148492038 219445595 215066238 919306983 887368772 910821859 316731854 932839914 152516023 497648462 32710717 868364285 810259517 968394933 833332327 981910254 91125576 754646652 344327448 915741356 459595601 780402413 284347633 946691577 420347399 982239341 538383947 772936510 570583815 717281012 39675437 589367952 262731805 887596426 465669729 697353441 455141466 778061647 313033241 979324555 190554844 913155408 118944355 906778989 180776560 423027424 402387673 696891872 75094011 795596280 313993319 622410481 287180989 631127591 353696587 804622956 777582162 950256885 592875389 623332024 458146402 745544104 692244456 771033141 75843453 78947123 70107596 512487290 171437641 858896146 810484530 866262623 849016523 849447258 755999553 987533057 656775335 768327779 124436201 893757141 32644047 362622682 78650022 847931025 355129720 984280894 715983103 819873703 132148907 427103329 114163245 732249763 5792687 610551496 362322056 734210436 295247328 876680417 211703072 778567843 208183574 345617796 112517683 895513958 332568031 390852685 100118197 309857754 90149748 916007273 359666858 612261806 105978626 544305153 82842677 857954873 199683748 366898847 349949234 397475383 321045941 708877942 37683919 929983664 513376186 574588462 167653000 265776332 31555717 203721253 22000449 963009957 710304710 876773415 345701345 443923428 192191695 274539212 188361224 658501008 337229909 559475739 70871879 526748645 328242877 569581632 522640495 620688956 507299062 854647103 619171377 769297752 316726053 973016996 698890970 794970868 379085970 737464540 637638604 989054198 524661934 556976035 411954158 450764250 428323342 766509665 198552348 998749310 716593694 909645740 163652158 350552577 339813244 836770129 390536563 928078283 357546990 789212915 189859644 840595312 3157962 218915018 21471003 215288122 141407675 419490494 174351757 789949964 256771262 695134320 653744904 682062799 391786460 847168216 410565624 467360255 195446099 575029107 494764661 932904659 706459157 726326186 439728066 838573382 71650103 498700027 335079843 603253829 43798017 656153260 161510808 674173577 619993253 826071077 688791778 952658155 618218015 821779093 811046530 967613697 322122067 498209848 298118444 761208026 364798347 510030181 326971906 900623134 629994543 790682886 390721463 633069861 372345673 530448952 288415420 731907189 671221237 681584709 406055090 633030289 87871541 432280411 62328328 139166186 8484447 617813248 233491556 303102686 10663670 836428907 246437636 773411749 508612795 687784608 474856649 717261183 546801484 946475110 264696822 660777664 477774445 908409198 329493595 872755712 768515878 971612814 283601272 580955630 350970690 365386167 171797847 203567993 3773346 261059751 39094375 196916490 163268070 691050008 270160099 903873112 615244912 962649005 789313847 918102998 64724440 866132087 196455255 368427481 317268313 956901387 939957495 989063271 105848250 329161446 270268159 999286585 193295130 592935683 107833264 480638208 72624900 630108002 544851130 790374841 562317639 744309091 627148001 837618007 479497135 975355505 5551163 989468081 286026190 377354331 318439541 769453957 124537985 293962788 291843177 518730195 50893543 228637318 213869419 652745202 140797907 349590683 14874956 513205514 211353244 333504537 243794739 366790055 197953508 917834913 686231347 819869000 406189217 416133765 116206312 893777261 697997076 936767176 634777419 647647729 106607036 580604932 17250674 41805406 25172301 745928123 528478284 948060816 94470204 482328124 73883669 830866935 439641 958849172 918856287 998405838 689885028 860020659 549341055 931709800 829846783 985522989 258076791 888348711 207302457 701621387 526762545 680780087 113832256 166942881 96571641 301380912 163113206 779189027 401415347 571307795 469659323 584738363 405991257 878563160 231214038 560223334 177603005 943985475 909546981 914923456 157562666 753277939 52111670 80139673 9899218 65377816 23983334 994220065 330892353 874185752 410937435 887606191 779995418 815374193 584744286 919708336 348510632 533245808 507295004 712539771 607553669 750432294 233049426 579003228 332449553 819283998 324796023 590583424 249389863 482101255 456524043 507975542 477649875 843391693 189863022 195891559 89582418 603951689 259063393 846234119 22087183 745697410 543088606 985728158 819989431 866726050 18146708 145378897 108762370 320872224 241127883 453079962 437414246 806849580 113049174 985687734 670522205 974963304 767318158 973070748 60844115 446883283 242352031 390405317 203289153 992961056 519660067 916867478 610925311 858707522 499441298 803108793 20452797 419272028 299987621 785969398 449453999 999415235 103237890 836861342 14488565 660919723 376866651 380497788 185836533 758611059 238530042 353614832 44882114 124849227 19000154 254905096 125464105 199427178 161421078 880579942 206366490 882949806 785448162 990298134 672500817 775690894 509185259 875535951 256595981 664123136 390202565 732148566 311782853 421129361 195100146 971137290 536080668 895860801 627722841 722403007 288555376 456410632 322483093 884177720 261331379 710775294 662104776 668547755 62787781 260451422 133531240 933485388 476980027 597153270 163683223 507680149 42809706 164077619 35056900 708286946 389329435 417968753 109037231 561421218 555187503 801576969 221886864 782259717 296105264 470923732 73715837 454262905 421702981 846220984 805974984 920618552 495675041 878865663 722167235 860524855 518598235 936456004 355931541 975965144 730785963 800962899 635257200 689471112 125672732 405585025 118127486 411081566 280104707 362875518 189306500 455920982 335036345 600844454 63482774 903800584 608300258 932325835 308051929 653536862 304192572 840672747 505726108 574289966 343165837 705569335 496455020 773384822 253844482 415401143 372096965 618339472 353053004 355805789 30368064 228665259 55422639 923205276 563586593 643120187 84808218 797674962 417395763 701770364 279158145 624762490 481449144 681568124 610783434 990761077 357450700 562577809 362252149 669702879 583163708 917186335 33010692 877988907 740441475 878313518 126488863 960766879 65557744 848571022 460045182 461527662 72451924 197156025 75200937 569359013 294305565 508339553 291895286 960643161 520603229 590220037 399574660 637890240 288236183 744106648 731250595 825445817 731211407 874382331 2689109 509495436 299972236 905337394 824444694 937907944 111075318 611286917 378346618 664553281 299969079 559387191 109497210 384398951 234329640 453509853 448033763 903533386 430433462 917155831 371852828 952690076 626481777 863966530 719428634 858959752 789464523 827277050 134412105 228119925 55614441 77811353 70813927 183015994 118788911 837782461 238283747 444916773 257932795 732972043 256936121 460749284 359597856 771145605 223069721 851342488 401411889 923983298 160843317 874208345 636647340 920957222 141872835 464524915 406639225 556290122 373822119 798169503 406333601 609396387 429718715 800003399 378345421 738262436 203872199 787582096 568835785 595330150 247011899 969761816 531872524 614088210 536044141 735532446 629079085 684760785 52161820 589350574 493775695 872658215 350645101 608619207 137742964 762451138 546320014 821855413 18981541 784977284 527954815 919814445 669164837 689737237 55377591 66261992 47105764 189024932 98572979 343757172 179150737 409188310 334730057 424637229 201936557 922847860 595570281 788565673 158983291 399625231 84065588 495904394 298490300 624030389 553223924 985905966 956948398 983605342 629185754 695644987 40287640 212564727 22705229 496691145 59485705 432537493 361447809 611561368 596316691 992196737 732939583 740927490 694396197 752912135 749126894 901641209 750853205 913086841 151347836 399565038 390438418 906990361 195099830 477708379 346976187 770965505 267790969 555022606 511535607 552492869 35694839 409353503 123655494 960841942 468360187 633738284 513169479 913529486 319769244 826860912 152086907 168837821 82382275 171074848 152298328 815116009 325103476 569264728 412305183 436429766 117224650 140528283 84995603 921681201 558510959 566116239 478082329 764365822 56375271 843591313 217736041 776608318 99226044 691819060 295445662 573342338 160982833 566498322 473531431 659744389 270918748 949748994 81291066 922789023 47230635 438828321 194422585 600112714 19793321 622423493 591120466 814003566 79802025 617110717 265249397 647299340 480327973 882020467 653999284 731670716 187396386 303804801 263859672 439530599 326770345 432550176 393214023 767371646 721338631 917900944 634086504 722984005 198561027 384287697 357475279 837995492 351854437 488822135 39429178 504967524 400063364 505105000 464878638 505379956 377316024 754855702 667659685 944136414 77400087 381220060 24251581 745600405 588994102 844583396 328188898 746968540 368066586 444844532 163962327 748160033 707058121 824890048 216337443 871871856 859633065 975281909 174304087 931757174 68954287 230387931 76170396 606125644 122514437 137977715 18044074 324394481 264210134 456804824 294860286 495760714 184073743 553998641 268414972 975981225 795201158 937019555 768827366 771640764 622872608 963129855 656961907 791463415 169288068 238186059 194488642 796014652 34307503 534258821 524570639 673278784 555601534 914565919 242740589 993029720 342705259 400903375 63821837 842841727 446456699 981071394 41385313 899919692 142827170 550707822 411784587 494236660 234953460 427735422 86391491 443487699 212674218 700871850 66505241 227591900 76510338 664050478 650887941 759662443 168738694 307164837 148571253 738425905 278092223 640676208 40206031 80924748 71833185 745880229 703546284 718845139 286511234 841168294 307148711 448293666 411842364 964522188 401249164 526319220 92068821 737551794 253523697 844984750 751646320 826821001 481238273 999546621 889627336 976982196 953697029 958585419 195353155 773993228 29474673 399578480 221594603 571237852 566951427 751747837 81418005 330452679 13645377 553792616 258734552 310318763 192462622 874643174 449403818 562192115 107232316 223149323 155891739 188031748 185907698 495662180 53132024 360291848 4093204 566914237 253094620 850571457 242345356 997727127 2637756 436135125 355642443 466389598 228338241 636921373 385756796 603620467 83801189 190287167 159989196 337680816 255359327 965583453 157634681 300062389 219890839 546467523 273398770 764784515 471624296 787073396 463615281 483962410 253426722 693179931 394521849 739933116 682568436 736270122 108852710 648155766 9115389 34896798 23419914 972039450 295074643 570079487 546829606 930499218 923293268 960799243 771284879 945733821 614984293 646577321 324928186 540803979 194061838 227992226 164575246 363830764 131013106 387928022 230776336 499926578 143601422 443719629 165337784 664169687 194986523 492076002 420051461 892152472 383191320 607088575 2192392 799509871 627751871 893845056 25858190 883549421 626552642 819803099 135000079 601706611 394564046 754523174 322613106 362441004 103937239 244326374 160066249 445934529 196758988 883011378 753020264 875811717 253162798 853341642 310471645 537546864 48864079 826846889 81950475 407474390 5557791 890257345 844466096 945656987 254991389 265272194 72760401 532787038 195755424 308513400 74189692 789892201 22282777 914815471 902855160 987744343 794214761 984493204 602014029 772577288 100815421 427781686 421328234 783208065 378506042 395750116 203064492 891496893 247442762 887376416 316618034 367765534 97353379 381713726 71602007 555208488 209503827 313532625 6629307 800529695 558149667 736697063 375056576 832212189 406212177 937595600 433362103 944414915 311284133 887092429 257819618 812566695 607875099 864130011 260559431 844257013 181168600 498064052 65121078 896160654 260213114 780114541 141313723 609333781 113799922 464574768 224337690 271463214 53133609 427634858 49561481 728943955 78704959 454032890 383435691 751789810 482428872 943521101 79587051 723000050 455813991 981526476 906825274 972309097 252296674 478637422 257541991 615868395 12116973 865743732 183535272 808086441 310095288 978873749 895071281 962688075 941819479 982522747 143947574 383714666 91639393 273260802 51544378 771559744 520295787 927041234 465704352 822960518 474110801 535711219 427017017 781112992 187252178 619924387 44433696 752395453 32161792 505228119 397189847 826288009 596237605 759151248 701884029 944188470 476692213 948764300 50437665 148731817 54114775 109293366 46642497 396359486 318445534 625028773 138467711 192760268 113373440 647815697 108138248 116247489 33371314 261617831 4951011 769737916 516341095 818290574 710429766 825980783 267359087 844198576 404889541 900220577 454924105 593589774 198648540 421434509 52363028 496863343 260578227 720149776 389043207 949641065 778932236 925182365 194289473 769983220 586323279 953913641 886757529 986438435 344430324 492476007 380477300 671402205 327868347 640378303 581898169 659758169 77037535 489705303 230819120 911922156 252421532 964216989 781250202 922430883 579919248 682306830 280848301 966237300 213839874 482759686 374205443 756663494 90496961 234914493 221351150 795978229 581496180 821239726 503516198 890890761 838391968 968445271 721893240 941103217 552058335 578917205 467026272 572315222 142828756 890042749 170182681 720627603 171909954 726233103 39733440 862421624 846253678 961392176 515644852 562800011 212679550 992305069 197808413 523468308 53813229 120527894 42940782 574092246 14198069 101641883 15701343 164173556 14325077 161233880 129080196 452513823 8051065 412542292 384513271 480894065 240892346 774011838 204222050 516881366 423110972 756763449 191670115 483730846 405384025 545756594 393790061 578493425 29142161 480229793 445556101 623004081 378817334 629832418 498873109 846536256 172736910 843112661 650878004 980476275 118886105 922687128 268400295 707466024 297736828 732030634 372475086 987721102 296753016 620883657 124948412 542203782 323303985 531750791 109374722 304596763 261174732 713936575 423913279 861903426 844270779 964712832 931924499 993624320 608369486 959989682 307648428 435940564 382930023 998604660 511821210 652498030 277775354 927455071 723084659 884304498 332123534 727092712 690625911 874899761 293401530 851456436 237004586 390580120 267561472 676439644 288522973 447343084 334226916 768026772 25796852 566128635 518027825 767440618 123065274 880000984 420701594 945479985 160807386 211109638 43450 583701856 275624222 413153912 304135603 809193030 171791185 238785882 181740334 645300713 378735871 530175173 133836294 731863674 704090161 871747292 738182570 992410317 941521116 943428975 538858972 836117078 546447935 618036790 401942216 885777208 97098718 350014241 343713088 483067287 457211543 510488967 129961346 769153294 104360963 825184470 469179594 967657304 504662825 791683079 76062557 576175178 216327835 269928926 115729434 676897699 147676096 625990684 141604940 730631845 676292504 803069511 553527532 907470411 602022701 887256838 510465058 752705319 345885363 646819112 433767093 553203896 76858439 485009718 59845788 374542357 361793524 684890198 141512029 607383054 11024559 496925977 191824685 308889543 23840727 388855287 307035356 817861367 478110750 977037621 971400733 983518526 581716149 704642844 562264893 745942152 138873369 194840629 155679428 351481681 258732176 857937460 509021647 918117594 55151712 853581032 421075583 948571226 573665560 891267384 426544183 650757458 179137010 869854264 657984349 882904950 383730762 765117472 720827688 955940544 208478903 735371402 521733649 785475286 243470613 282420804 266169065 792146583 108616282 714784798 479340372 797771114 562120211 870063639 612602417 769205001 18843826 747116113 450171965 583392766 559861964 720858483 552772457 617454117 168636248 793982536 403264709 702947799 332735899 686185132 555426746 782644845 517360147 768462256 111241377 785445216 473522251 953305034 764180575 968877810 133905183 750161162 393496174 966151150 307821028 488793106 186901776 745077242 451562985 530275673 198144700 862341974 316813246 789147439 52221839 830902656 741324469 742370432 239179286 908537949 734116242 889050635 387742645 430627551 371839155 791591038 160558994 331959023 123289376 398099176 180603357 206091279 41578128 625298066 471330095 820414974 703540495 982835431 590726316 855503479 451104153 546839203 37486528 664039374 473228127 819984314 774655031 867157860 147798041 778920523 23536973 137040027 132009618 957282388 535339967 553352619 118086489 794993089 423300311 475368589 195335388 681271513 455363882 707559817 255617917 722356755 218086131 939420979 428799803 701801963 594031847 965765907 391899366 747774344 721912971 893468651 221106550 417052335 374741582 696307823 625040389 692416787 679736217 882072319 377293177 422073838 228783679 525127442 271813120 328136308 115018830 375185833 130276667 737865858 537079715 754674430 23320456 518242510 312243302 633085139 576586559 681986607 560284436 596021254 340362008 752370737 65386774 88724247 78270944 741953230 495572266 600455804 575747869 647212438 627157627 749484431 550565053 960015766 810846824 891041048 805710107 931481495 64221367 393071553 204531416 613941794 332793261 474715378 419149325 839140772 481644264 686234893 472527226 806281504 424221267 498024104 354878970 495027346 66516994 679791005 16388813 46723364 22869111 990429412 922339027 982031293 359634505 835375021 177638785 418087165 182661801 673793124 466977290 887871497 771394705 904238706 287468626 774043353 425794977 997742073 904778867 973131503 281313623 698113061 547142366 835863885 357550339 621768660 533576908 558717341 446448335 539653970 92907972 681979625 323137168 398341107 209311726 483605773 348840711 922585546 634182793 679063058 544437707 612380245 417307576 767490665 490120745 608836526 499491561 700390478 289947242 458503962 144714657 376900229 40853250 774254644 757984879 960032036 838848613 897470734 540017211 903969736 466804399 815834164 334157184 965350013 21401010 625326826 46254306 239436558 216909214 849103371 179423549 838274783 160721572 285316158 281517486 406729833 240973068 469616995 172167018 853348154 153004913 655018996 188313765 573148979 249932376 891961303 142535563 160901433 132719694 178172808 78213326 288716715 199475816 804027858 276793159 614488556 397261836 513882775 233189583 498902725 176609635 647398023 432807932 486680924 140503235 460030224 305065161 587994260 308472210 432376625 255095963 800580948 78238854 489360331 459001723 816562166 317749790 381726379 369356790 753179876 696483723 775267903 390544353 421148982 92021446 663537336 399341601 646320020 626971272 945599251 404461348 574881931 94005442 114217474 12968685 90108058 39124620 781356088 251282716 288196608 240196674 925181055 365858385 510439590 492734277 981297268 557536908 879833941 64051590 541485727 409591085 713650614 23576756 329076988 149175987 285130884 1190018 466138467 330197853 543144432 514673259 928821567 396089016 582383097 303174764 633163036 511000776 670436668 68011668 491744372 114056712 899143306 714139294 943258382 144505040 501513472 173119485 969717358 144427401 915013164 145701012 837049703 95521950 290347689 175655976 746435103 714581108 794920757 599971420 827624885 594597235 932002984 403338641 943280477 555420196 588386917 57842633 602050692 47152643 66760993 65547924 420598149 406951178 940239782 326153764 387679613 38269937 397241347 298916008 428897731 298519158 710542540 548142464 860445283 400273060 697288477 489692075 534685047 531813088 840111582 119850551 357679140 189995227 892039954 459273991 467026811 54187464 456332359 89022843 411299157 222937429 596757691 15489578 989795718 591483074 997507212 592684933 647115266 42113097 838605233 314242293 780214497 123761417 729705483 687909166 944847944 391317056 784109720 637584944 646059461 89280846 662348225 197411794 301042450 282110251 768435976 484757191 679972765 479095630 845342798 525071574 843513350 79631405 91286457 15867249 915698203 375548793 624555063 402921554 933880035 247592984 966768234 828162300 888281526 514520886 714610916 420078019 665517889 145011204 625954985 202781504 468198494 453987591 770970182 634256879 838514504 52968941 986647335 846170064 950476929 198325097 986306854 787308231 940031343 454226394 807649516 45649847 729069221 311818897 328329632 261396114 699641793 500906198 587976391 447824815 961647493 726974213 909705548 514761034 974136245 702046963 882485328 628485749 758808130 508910071 888629150 679877729 897221981 688618674 833274967 510542182 889982649 680974819 903063862 829776205 844054595 23695277 53624420 7800 244931524 238556854 503713870 20505632 653291301 376332280 622685802 37127805 277083929 51902282 191595376 166508970 642205802 392924488 842666339 96173278 762458107 299978488 342896248 23134249 162145162 153780322 696433133 332007149 896663459 546216093 580684849 366038288 817441995 638670130 778578374 658726514 853523102 415362061 832416824 533366016 838303515 382092217 765946917 406908058 939095192 271337763 475776740 225971140 550148715 489556247 895095004 119326005 405969072 2306609 512126459 375083935 461946243 371639479 889582308 630448449 922553700 686607847 850449422 118159387 149913067 131385672 187295827 5372948 381692754 105933089 562781043 273407427 505962100 16075702 533461238 299099405 867034950 196532878 688150219 605917107 976741838 622276878 929493725 322485298 618857051 103473468 861151381 547782071 642194912 150521014 886822848 609614242 808983991 645323519 940026178 53471779 728326384 338121334 659805943 128105035 844792093 686420405 785625989 274309412 978092345 792666357 961556696 497787233 556177728 523292273 865547856 751628763 884572059 222844868 400668726 28567368 48650109 36246256 62903022 61228950 960332545 905233353 972976638 59436650 807937996 323961515 796959930 587019756 602145871 64528076 991128638 77828464 625221922 537471919 724742833 136106070 160052663 7336169 398992279 377197298 818523120 188432967 257719736 135304949 915812331 417318091 861086819 847963859 955049533 62777500 347539607 101712653 673337069 45822152 164365181 104912834 671002256 460956478 956438425 494319557 806505875 236328326 377999786 243900260 580475369 112539688 603406539 180563365 412974914 259156254 598230500 169121734 990961840 413419459 727147155 523801013 919793666 843983397 978260252 666754882 786822731 638922088 654802823 452197680 744969588 581261597 863182203 711960349 962735795 217660779 880817270 193117672 793039887 626857867 996292844 745031929 853532475 103374754 248956451 140078347 241345636 188430455 350670544 288973663 321009483 145661061 492785926 204892576 205965299 149963956 975137313 935133894 958828352 590965934 989272310 680979174 704761545 643328452 857130185 308849387 896163762 833240565 984982233 116823762 537323326 424183982 572382234 410665810 674411700 278677987 340144044 295228466 768188841 87486648 656307263 458694786 790815310 526279129 958816955 108523536 142632569 134608299 235906297 146513812 485705318 261612864 711026812 221035259 924135065 861008883 959672348 724356466 757137527 308971042 482956753 446367857 558801190 202926740 646004835 420518597 745391950 120595302 529982367 447440304 749966149 265701809 301720431 130250593 999172724 16255754 163868692 88769662 130783500 35470065 559557324 175624630 185247198 50579127 210004218 204096941 716205881 528123573 537599134 264828496 834789704 229725526 793838843 416161903 531651518 161658696 835088019 533586096 874189591 728702495 847079515 559577012 623234433 444673266 937578984 314914679 853082452 4517910 227288353 222071116 865699532 744528105 800148550 206832882 543384969 117533861 669514013 504127528 574501178 121327313 809162257 656075005 735467844 650841916 684732929 42179374 640715817 420969085 783995435 303057346 515469656 19938638 649080404 186706895 246572365 125101551 999471228 383837507 810509305 18655658 363710918 11698994 322216176 129822020 700729514 124373989 894525925 718475169 751222063 686449923 995230050 417299000 543404541 424162063 722780447 721767491 893370070 441708331 870740826 578241778 970872969 282614129 359810106 129782787 494093517 144457293 656358337 134143938 162991278 139840539 700995523 70882565 972922333 561154374 595942206 537695307 767821851 333513784 361980420 2706077 894345344 206048125 326191427 67363403 941810082 513210931 851468096 175588785 414447822 286781293 675222945 586947979 733537144 423648376 935068694 263185718 500555257 366423993 988146873 922632116 927015129 623842315 707650562 693065872 889261306 344344072 648312743 134396378 238900201 517806 612002856 223846841 750556867 379964024 606573605 517377020 800692463 406192584 917928828 209934783 675771041 147700284 365012483 92969775 226735235 49776899 549141484 468374992 916671922 684539200 944226377 51826172 735797966 375035412 645643489 380570066 977714717 383349970 980166975 933541641 980851540 347345675 688550694 278214353 284438585 74498580 501698328 111215407 280511375 96513296 626655481 194926771 615633467 511907260 801757077 536609147 692523034 408474443 408758359 245588067 764315952 216360111 517201310 203443636 830851596 670294205 988631926 681256748 711385544 643886226 646209419 54965343 960362856 107365129 549573460 292871861 604369570 321472381 662829175 14185604 116656195 114715448 990367900 235444153 699464118 87886762 774700557 697951262 783436463 235070435 830256172 28042278 346151840 293787784 756622014 704894837 888550403 848414082 860122673 126786833 899781517 244602348 904444658 498965 413764467 90353916 240176490 127232643 930598342 255661140 998747858 53919024 742708862 278689958 566169954 459641026 884116431 512442471 775678143 724590812 793623058 403584359 796180162 424389094 462390266 386080911 617504410 92379413 102576784 55040779 688790021 308827567 576957264 470034744 906321343 101319797 688193900 539770271 919041765 158365227 782161383 746856630 750536047 535888604 558743002 43734747 295519845 128064496 166117934 120414435 869901558 179929822 491314909 72784522 791667578 627507785 857661477 647026148 809562445 285733657 970836240 690280457 736821047 353741604 958503779 31851370 235225722 31687870 634537211 426748659 551841811 353114511 622672614 387191181 727344541 266638151 371870592 126018375 723005651 550674803 680660716 541504256 761492354 745684744 828534606 755074050 894427915 172692627 954703065 152539912 815308836 810851539 938743311 864348931 933722064 454060928 893664850 323373682 883776355 375318780 901905734 822292751 872346659 354202689 874352554 244953597 901345579 835031266 872292857 801827533 978470288 271281851 532339448 328894136 946379874 246716228 429237580 120260083 502042563 14313418 674680014 498217028 647947507 482374182 971614984 196923029 616311140 515862468 742970116 228702669 796133050 570754923 710810230 481526393 861401013 467852494 757821517 299177866 640454663 198617381 499752413 461586751 828067663 4340099 840312258 132363898 923369870 187758268 410457213 4002984 312279417 72236073 755241865 655048977 924134440 42190951 759494180 646890322 928640318 268030515 551265635 528581912 638312183 317926065 408395846 207066760 939802759 471938671 808423733 368764481 886274791 484408016 665322680 189150195 911761472 27804842 46750663 26245276 850046861 230023954 475917950 24980042 158288571 140777490 663322002 41128359 906611538 876131238 961394627 661562982 796806946 630857327 683364628 53808671 340302140 182768127 184337102 88314352 691874611 107233935 559690836 50286340 180497711 74529040 841645002 705763898 997985850 14326261 441296921 238572717 584605598 582852872 761035709 85171555 810722961 355214948 406190380 390928191 470716218 359585868 923129223 261233062 474749995 33022956 997008991 843848017 934823436 524804614 786704152 678334849 992263630 553121346 880559963 388021902 431312499 376568486 815712129 780309757 802775726 694882106 992216744 92163343 485647205 116290128 796790196 746543656 971843186 431483321 644170171 523499931 894305927 675946207 974339616 82010959 560972295 17154513 89867870 41751747 195494458 127591329 686176364 535734551 911037622 471477876 894639612 778547450 781397349 564774073 764356249 169290184 553698332 507682400 909919487 251001908 522434849 248049574 606778751 536920299 807729456 651207127 664967225 306967142 751489345 97106958 922584752 390221573 669088544 364731271 476637290 43921002 825261938 350933508 694934363 483482516 629899571 389144164 897547957 348237257 773715575 659869435 832735985 81729905 784316931 609552677 860384291 265754616 418631155 92828293 441101928 251410505 553988202 132208065 181574585 59322220 578592697 38804595 449642055 213137404 305119723 237702231 358030760 314459462 654420394 387964099 634883352 546976420 960165914 949384835 959211803 473437330 544795593 78898313 522865723 110462029 564897599 147190023 807474993 385245909 447959692 295818872 552951915 393034664 460046779 381706690 958031331 163516412 392532054 220687424 859811351 642855052 668616490 176724852 692619278 440064723 579152931 385088439 684934897 155316562 858747761 58447445 289865299 56851774 284062489 55666865 436138182 26077126 188522061 96409753 491117666 325175872 614387656 199462239 807750442 663868658 775181397 702980000 923886021 90881553 456641258 255368620 438290215 46443473 845755794 455764890 672166772 101452068 751404896 248796919 718444715 190147266 467144791 720647 584395005 561958215 713294559 504391011 615092689 319257080 830988947 517066282 949499113 214098626 974045120 544139345 904684669 509539843 712774983 46835077 646425390 171879342 911368007 671888044 917702381 530425167 924364774 701044517 849302758 540755058 627494283 166717735 460525803 301777609 474236228 448877080 970257696 217472853 519979427 412496201 924220951 480517960 988738072 28994706 295792949 32910831 780455107 488690865 958166018 155246937 700056114 516316795 995805480 381284958 986477215 477838674 704198566 448993020 613463968 218003579 557005143 216610000 940368580 243710782 432952255 420042806 548824414 285018468 464194582 217186867 561241323 404535828 970216681 79190706 768939062 296894769 888503270 886896819 889255865 649146354 922004749 795669104 834652925 327005709 415934027 404605976 954209949 589678321 651666562 127548506 263053201 65931410 633027124 245268955 412502797 388755975 492599995 129925246 658206523 77230517 92914630 53766039 140281238 116451854 810725540 683065201 860024908 104202358 708039401 636404260 831748393 743544010 750842962 313251887 875552037 641521168 963765511 616495636 736332009 565516712 920726919 436408127 955298982 660863286 991145230 39751307 803191434 743799798 959568879 164861785 306605455 162591840 329440153 323706669 471468093 395720901 650935178 37696673 699539918 647884219 826021199 670278680 745256865 12003532 617889897 23089466 800193915 158234791 621772541 41812053 544962037 475409300 956119250 922119817 994720347 823098727 932307247 20482606 650106032 126146258 950698494 693911103 974872650 367539916 720066617 529427591 541969973 412688907 662351352 627546913 868062390 811532215 899445802 217947939 755055021 696772415 891451401 563819175 854042568 151640363 877478468 531102862 730543078 335303723 511236560 492672049 700833674 583668589 883209241 160497283 929251910 333005734 746151341 325241852 549335767 18083282 771769978 479980290 503712175 224449161 542671148 24562454 339357185 253663009 967269471 196640987 932734243 100858620 834288658 737298355 781734011 780269514 887640085 107888111 411817951 151436757 530183538 210763983 619255627 197082339 497281176 301858529 323683170 122218283 495861614 448565003 832805511 641024026 775826876 663734829 746819368 325178914 995525917 888668962 913895532 311071716 864238122 435840371 512886095 456159585 825594299 214278451 342215360 54008811 387924618 45925755 477693775 262470898 831880365 628024852 924230962 832467887 979184628 907392611 963509474 849343677 954748779 85860843 975442748 246126794 986228343 288969321 325903146 135846068 396327647 70365618 173884895 121236551 213212142 160150673 377270450 156693265 833199195 253043224 678610568 304996715 721162285 436783948 509242825 451300084 769888017 605358527 747707857 167802314 873920435 12685107 454167366 364611418 769170432 456692315 835768859 464363170 586912710 59458139 607746505 158021890 829018721 438761877 448948411 416708653 743301320 489562142 632415488 367199978 699669984 67261202 339872833 315078031 412950031 139462034 481180176 371485577 754309121 65282773 889740949 7955189 59346871 39974218 571143168 399333851 669213660 51773751 393477089 350614215 440949663 423434477 684253257 64438715 487271881 102632461 884040647 792377934 912987491 69022110 833200219 801180516 933285377 611435499 738610250 421763516 837792441 146194492 253560832 196529761 414943728 197566295 501945424 500415671 798722041 529781644 939876274 343332064 639463732 245848700 951584375 92733381 411006619 360046592 814996579 418945523 480170525 106885382 922899954 829044915 863794958 691570262 808540028 254023755 611844745 79730832 583137504 210115410 357505677 219076873 965583572 42956406 939562917 581883156 998283051 355172732 533882704 26770496 165676781 58910011 288410603 218617476 313628226 273663329 779808563 456605508 712083933 617310905 684702567 177769857 800183735 647549026 842755083 575574745 931389669 111475911 769347191 742900679 784559147 45430864 941203152 894474327 914733218 114738847 229764054 44784914 193436478 168370800 529912522 61099938 881343559 209735302 380878332 117298014 663143660 218965573 439697060 412350389 685050621 321675392 511699004 315533048 447813775 35424088 99173498 88174349 949362980 743899178 882383328 294493051 490551487 58311106 60917363 3655229 887223015 694399283 993813185 786567200 906934731 409531518 521247863 92416951 567948300 379424019 616061692 449747790 747447860 568035532 594186852 57762866 86972385 20390771 896102250 197495675 389347034 363030911 528214037 46848112 652079154 391111738 683489344 238896881 519784745 179915894 514178747 148397520 749602929 432956321 549268794 322090128 977128814 905185664 987171618 717349763 723743231 658481337 839357026 78287810 529006117 338111430 742038185 415929209 738008907 207601573 263943443 193973799 881867114 74340583 284717610 208942075 976738264 198531251 383240811 167017361 840050098 485342117 867213527 260547972 396347288 27316293 926714776 682090594 909355084 93982729 516810910 285110504 973814582 665757374 798831015 293859969 881957605 29901340 457163472 134983175 231027446 193439769 220964002 108195494 346700974 14648961 674431740 405023806 732731435 296028446 553877213 468913110 683238997 681816748 763040773 610431197 795232813 156401799 870000885 8072471 336589380 206062387 897631535 826266295 828804996 283388825 990336285 636525976 844391843 315670687 543643668 164165726 433071658 139832150 248237523 201704470 293171143 65694834 573497466 259101632 665444915 524715155 769691625 109324719 902921272 664423860 709030493 191409530 930522223 918687705 949461855 780695714 883318517 882908273 971303142 133695661 670119323 213466242 936831062 233346513 571192294 332586559 375835020 59386103 351021088 149023773 717157417 659478412 960865443 881723046 915992218 324163923 668153107 398497125 712910676 693537903 930898621 394955829 874948733 766175853 991883145 515055993 967966069 446693396 482256185 299294838 792029909 190460116 592743863 525816670 625445358 531348902 686506438 182729995 422115089 238547302 930656426 804353487 944114923 485557396 726706632 619573006 881303097 504221421 831068153 178150957 416442448 352639273 729901646 506626219 674615345 179943708 440965925 432072649 495194956 216394504 363111059 304743467 554965066 400492814 842991639 783083886 838150153 263173694 860879136 424485333 472669295 321479027 945486603 908915965 968453958 912377457 970672720 426272468 556067967 377607917 556520170 473021524 924280172 413754361 908370028 211541867 323587774 106763365 519228014 378295249 608056048 304271294 997268869 25445808 579036778 44872945 987182541 143501867 619758554 186201310 440096238 352978164 986078624 330919632 674506219 453584053 673480560 516711950 770981583 6794181 721110671 695240115 908827046 393927870 530636205 388142067 416611803 49683736 455740141 236224449 484581968 111251595 314346545 63157948 871231593 478374528 519749188 309426519 364416721 248679158 592653272 52940975 803292831 632220532 816808443 343722598 788617940 407773883 880091858 127253128 393242620 1825761 500725906 131289528 736341665 406611637 542997279 304854692 424854526 278403958 533368399 32689124 95102507 49142275 771885454 74385863 995897267 137532452 168181832 73851231 514486180 118433015 363594766 94212653 925177584 579957389 638034684 375284485 549711261 516241094 530377897 85378848 614200916 552983161 657283950 625384981 847049566 287726136 803554640 120507110 222638177 198838725 694983599 282487191 892751408 126476604 327130671 238857401 574136901 425862785 803121117 85286734 945195255 848896996 920939612 807544046 949843984 792894406 891658333 133788652 383712532 305412942 780549962 67870653 885351813 24366246 864966743 255236825 339647017 127352691 623694365 314978714 724126977 676171064 676673973 419699886 962108840 75995204 709277861 254047568 376156645 1449900 173029950 154351634 575733395 523211149 670470911 429935172 684600121 638449703 660939393 447907066 970574823 226130312 813574067 753752198 975213035 304521516 575324242 161025976 645466885 159877980 997740727 60262454 844239804 374967048 999843126 706635245 914438289 289190106 597736940 230828438 255342125 166292336 184182829 79747423 838120086 337744444 845135270 227617889 767444697 666343104 913957186 854147459 946459311 73249551 609809450 298139785 724221698 54886310 383760460 129778641 498003140 197841180 886240613 73213245 241835865 205153130 673181130 160396118 680607691 284480126 547361867 3842698 809113274 421167674 844250426 58329710 245051936 2555985 348733998 245474686 308511302 139719252 693388482 376465000 483901367 424878160 610809659 250827530 270617891 161584954 447704164 347437082 691747965 399012451 689443649 302278119 812801829 336347494 521968295 270333792 889688365 314422655 643471139 404250223 711524179 396339694 755413610 402273748 973012638 72227470 799820467 270818808 508312576 128672556 305635407 175935416 579291657 197760326 555156536 428190866 468491593 357414653 757679421 177120013 261049399 223995879 641205834 268388665 372476537 99955580 389805130 31318368 896340431 50025756 744442785 55938214 873525167 227630532 970118387 343672006 811033428 429442275 964615444 884059069 952148485 537556998 543322341 295064788 340935694 233078248 692841040 16924540 772750854 182643532 926173608 214970032 735840063 385152859 970860911 245622396 935912963 662019471 938536358 688461335 973306140 564923089 746583294 649086861 895239298 676066389 729241764 270889299 947611954 185867358 763685705 589887867 837999019 547574474 901676960 272597733 360107040 302863002 447206280 367368546 823966469 259391059 883861195 181000079 711662206 47151288 61233224 10779556 250079205 59630616 413160403 135967639 621556522 474931357 488271066 450165371 553698315 141508306 275445662 247987669 871672945 867883237 967875880 297250610 873439788 772043033 970950215 857242328 956147747 157336477 356404831 318765290 991753888 798803493 954236535 810793010 976338756 118796060 782678931 225574751 691308264 203460645 914105229 185885920 809968243 388017338 733061209 214893898 251023013 105992603 363314554 130950168 827075128 132151323 822704141 795688467 839880485 407009951 525370009 112213166 831089038 631913929 781029804 437027761 458025206 428415263 488421299 60633003 628627759 416042792 735843883 631670065 917752133 859063685 955365469 416934297 962600792 508970675 752998792 230008013 885020226 842276634 991937791 724385756 948683901 781807974 976290802 19936079 689807139 96775114 782857234 296101422 712301395 459311948 785302108 207123327 594963140 587687436 855705849 676200081 678089103 560830225 653744801 280187336 906295426 338857246 363336752 304274337 733862279 573029518 716603783 235779822 762353213 644820475 729026543 82738258 928206230 105696754 656289393 143353654 913953947 710243486 980064114 409815399 524660374 175207923 638955439 372174391 987131414 190954585 938692760 620526334 924058752 195333141 700395674 398441219 946336672 487204935 803534172 123306495 719791416 15772121 196930708 55284407 586570890 23550451 926556000 22131878 805410607 28314391 889395138 888738710 921534678 867745355 963119186 639138086 939261262 610004644 704749995 442265052 629130271 180065342 895998749 30305235 861029386 95161554 990669956 600564398 860144424 664165023 979490447 899926220 915260160 793361426 972037119 741804052 967380034 699884631 797438152 395022388 515264428 127624322 997689406 945827816 971812893 404335152 620606013 253874032 740198589 321013232 990866917 919989240 970923231 64691152 999096558 138017311 535252122 439403688 499616498 348632540 618678908 455698013 654140484 200042802 532114032 237239595 952602152 887893075 997637805 573289915 879319275 523032927 824993839 448140404 600290946 380330938 393054418 261198014 944523780 863253377 928385508 87132623 643023551 56932579 149694109 58414334 730944570 264215028 635607952 242204727 935711390 478846509 502051191 399479158 496069684 64812541 382815492 279245431 760873078 462971679 891107558 723090926 979354198 593145097 988220904 117360045 392148999 210307665 407263131 51350616 91252946 3536734 65678153 13127580 265575247 51332542 641587078 335468517 644399072 305692729 799290331 449946924 927057080 784371573 809479919 791804800 925740909 859321391 975066405 529121357 905918172 472610409 982962158 830624804 940082858 666653975 806204647 514484380 848479671 601352138 741794072 351562143 836347626 254028940 598257708 264562000 806197446 371003646 417530844 2419143 519223421 245900419 365362656 232070462 311997395 2405280 703045443 646380798 999778869 236154196 448164370 225242523 596452319 28319545 179219932 38480550 295212110 291773723 871774126 61045560 358460407 220365490 340026649 100338845 720490543 635705593 999318440 843189876 899561672 247488087 250646728 149264544 316293535 169297059 989944676 373248837 959429462 323509327 396271594 156643558 936467956 179979974 308159386 94206962 506058880 194477725 586225380 414520194 530082865 131304606 953100787 646059296 848782768 576872525 709898857 418246815 654340659 142900126 913962694 169943258 565104656 84353597 614561375 519638481 555952530 391046972 497794212 223297417 941551284 418354349 537314627 132184121 208806051 4498243 493759320 450852023 833976658 219029800 592510302 421978281 824602996 800641942 975626494 411770583 487583799 400045499 506102525 119707294 182459074 64305434 559725350 229476400 658386946 96689886 638398872 66924411 323718624 277458726 869495510 779722183 873563643 323204188 373907457 359465651 407148240 276991123 434301517 327998967 351689554 333921168 940786263 508254668 974849979 50021945 644846751 593834205 754789938 208741429 910830446 55955405 463845842 458516068 911797767 532305769 788590425 300732989 783307892 640428037 669660607 161746576 396619669 52384321 878266615 184112206 547079019 295985391 736562127 173424428 541812483 458529369 968151695 569226833 769094335 268638873 330181538 24054004 856791505 418537009 502760193 23434554 210891386 193096531 742811611 200448978 477197714 47668573 118881412 79053481 251354962 185761638 912440418 252832121 371775491 30609032 353610879 192958515 777875891 319483003 671230640 530251698 561661244 122297887 180688941 175960753 479674896 378350477 789474181 511933496 758982283 123342231 701338906 638506048 776964091 442937985 950125530 926480584 998596204 721470653 819496572 225395262 379593848 79437656 292731802 211403247 716290066 668255854 975953592 530694913 970302552 578916800 582736957 498658946 755417383 338076107 650289578 241623026 415779732 240188344 703815813 320302429 789197822 550491511 946303681 27818312 194946521 17569226 800832743 639153983 919228898 283841461 709517783 319180357 993816763 491899159 995213558 810042518 953030593 783037105 795650316 460372533 792274004 266339876 504035724 299022572 970792318 50164364 287341905 109452193 135291129 67406397 720857676 499223894 952782668 529890023 669133803 277109704 898780888 74599587 927377201 586955117 713466188 189926246 475866783 63420489 489081680 179165851 814454955 736538732 974177745 299960748 394853828 294876189 777144224 343498448 385151557 308034860 452962510 145894195 236442287 181586258 366380836 119714648 128705846 97667001 418208336 255798229 706270695 569748722 908485350 535538340 606809451 219840366 316291070 39405506 624128629 604457952 927966768 808415701 981185711 704950868 814565521 59746361 921797241 349142713 366609459 137485165 255732467 163019364 233700707 57765647 250731255 166226860 461759863 200212716 486326380 415717911 892373930 382514412 641325359 244395947 692390028 456787453 480418773 76641749 646205261 629143874 913095040 229434416 928134111 95882587 413402938 62648498 758528700 619362098 968092553 14233668 899004102 526673477 702263979 146421680 562163766 527793219 728032589 439732970 711168267 128559705 800617878 303748158 656239920 231301478 520801659 319917659 666189722 306464195 547090340 68341744 803736463 776292163 777746583 297610978 987392388 15590066 429131790 76030204 220385475 26435324 711208019 408923204 443690956 350929548 416050053 390790850 827254989 136843545 593789250 315958376 505632441 291053948 351983190 96783789 683603654 667465900 894896495 551044289 802956987 138369993 500995604 35345748 942683691 859070144 970575514 478020053 752188763 137547176 231371984 29099061 391867806 130416852 756484589 76293726 766791535 435045461 873884382 843515369 880497291 605368203 654764652 241453816 990967627 250334360 832907419 536999644 791248493 206271956 901692222 370304499 993064690 193712573 842713579 175098162 695371689 131309788 611983217 284625127 811083690 238041299 994581312 516019069 526581088 298147892 394439801 245980640 310006232 171792294 963120579 352390243 765657969 650668465 857302718 386122094 802631880 408204290 980389269 93926303 518919063 411258557 411480114 328930630 428718046 48725165 825556148 124881415 395521750 18312684 509143141 149055074 499332333 383810234 498363933 161451746 988108435 618667510 642559923 48409205 597434594 80628490 850520041 510095191 522841366 359678391 965799012 306756973 533427079 144631941 322474223 185028294 648313625 373956328 704182506 340625809 724226789 221647289 471806226 271896530 584909900 264524109 629714580 354411368 476548254 455523869 784996901 69582303 861658836 693933134 927642145 846978612 965004446 495387714 537851400 473065122 764688342 214859664 302787759 202906317 323401606 132655236 490944599 355745350 901472755 641923266 851932416 110043502 489819943 132174058 308127771 67311213 864070612 500533300 981096415 393605940 457164932 111341627 858974256 414546429 519904629 247976753 378388836 121495479 987263640 233702681 376989906 361348428 477381502 325796164 606917848 68375194 894290486 241418613 347656926 190303744 242145719 37045190 934689301 782769082 913064180 818097214 890853888 733331700 908219834 802873814 992285183 179629958 181643201 86593422 418869507 183390363 932528727 840068401 929669244 426243803 844814888 605672517 927011226 798495882 819600670 65716438 166467113 24541955 191624532 42745521 361701260 107279322 385274700 293789969 743060435 645279608 982760729 779821851 886351478 491409584 696702657 635820607 671015583 509578219 858524661 368600961 440464678 130307295 989766355 768371591 959401158 354055042 432105139 406860277 716336237 175051623 266968869 214837000 392989547 272113021 742853428 49945493 746939034 552135736 621182597 229764808 406386397 219703560 849553890 789959680 902971792 72543200 345116633 255230934 326834483 241962631 994195334 885667688 923270703 474798778 486525242 417930606 558272730 539642655 721366720 450842150 486787909 139837760 812159653 512527510 533403093 402315961 894379815 850020757 857036245 495001776 739170572 234899415 879830160 144830243 178131594 123754496 463647287 18121070 68422437 16729193 468994862 456371616 808679845 616337527 661725988 595653696 886030503 236070319 237146117 119735089 264208863 256410789 643466093 47595487 657441109 519221440 773678799 752249792 945156822 201188264 689125388 252154577 678375688 46702955 603851626 139670895 246636505 3740616 811136753 329294119 507224744 241584300 566251046 135753788 136016673 17380799 377331006 118536225 367037220 364275660 974542720 485801931 836266080 159866831 478885694 339856978 767201828 39824704 510772727 24076279 813780382 178212718 454487980 336413228 856222320 734143729 945149517 737404811 816400346 61065701 138621924 9541495 676148581 314515203 371506151 25803126 806891259 43889384 748291038 123304615 533526009 308550320 357025262 291911553 429675299 120143676 343272172 114938229 255409508 161411011 332967333 102609186 238137312 28500581 799019331 106108055 259202338 140066220 160058959 26222743 909361907 648479902 693111814 360396620 625358202 164023553 412638387 383120328 435895637 363866740 511209337 335108680 560368854 404598923 962532906 926147155 956052602 162381639 765578414 528857953 983458386 75940581 155722936 65833589 161591026 52420459 441265235 137562473 592426057 579235834 999535448 946588571 983175456 938090669 952366417 147064357 587184587 119812686 422863489 397207392 776021082 132415828 503485820 261435569 993372094 61556721 954135400 425594054 682914748 59852954 730024313 525584739 557606128 112912493 975172174 796798901 992229604 742411283 968634762 189127586 272637684 46034904 82493070 5920922 685759658 623235481 901468284 392013146 738170703 11685502 954683603 358335951 797965216 44588160 301062397 196895040 371816456 9315087 965428010 661858879 904536301 670502653 820727442 298507306 543800935 470879321 668843910 488858457 517300962 206847804 294445743 66871752 284659456 205268791 723796640 698118290 941166982 557701 800596689 739755094 967855133 266834218 823721527 268918992 314557858 193151911 917043780 120006541 684910043 212961559 240217409 139967631 984175863 613450918 764766624 179148380 301470613 271901221 520801066 20359002 26457647 9213967 249792079 70604370 854343460 184950802 252928862 77316652 922672788 301980984 653995956 206522149 592083363 527247253 622675997 170351955 365679126 258437640 416541276 47466448 996454975 598614689 753850315 301388110 411977801 149002118 525862900 345880758 845153890 191773512 443207105 391162045 740061454 27843082 649722819 629999033 926482788 436709879 565853201 557141720 752672598 353690224 627458257 182106402 689231049 664380946 747613470 414431840 426604743 295426693 958868213 299234801 901231132 218343322 518817710 32826696 778168870 776965564 944912459 140467367 156759743 137311077 340814176 214662999 490440693 228903665 507646605 73561613 619463328 116590181 669403570 246467492 842548870 56819540 262232062 50154744 541634736 289608691 727582564 508959408 767532797 713146029 737547629 329078193 662410764 254787876 943497354 698768869 823953514 710245931 861736967 456192639 531986270 400290471 752722377 411910768 749912947 489131043 924615440 282643085 920694366 569440343 949510105 288917344 567836426 277333940 970611362 218722173 760785942 301909984 599986920 342321131 516342835 243888493 911823484 710236679 792026422 151326594 261003284 152903696 964330630 808436673 952757938 363999240 562579872 326187504 849450535 488031501 967710977 351947961 852117074 386339046 531027594 196740563 498569569 75266327 644783085 235475921 485379873 335506419 676158200 157513373 407080249 240459287 902240455 727444619 885801966 651581429 745048913 29643834 366429878 49641725 719527774 650692255 850370501 475437725 913628063 302741582 665818771 603615686 666297593 475787592 714014700 91571425 161474337 63891234 676620535 357986030 668874076 424766542 652064326 472544846 592515969 205938187 263322479 140561236 494218879 436309950 722670392 22112620 544494184 240080279 584032978 514108828 614376762 462187370 670488744 33626327 390591704 320333042 506130404 219919629 757206554 692050864 876050766 763047961 880617835 53613222 215816229 39504559 746659129 678875862 823960151 566866547 598828078 341440088 573586087 289836047 457070155 269910933 560734237 33179236 114451908 5080646 160870001 158569698 992148249 356819134 833074580 726996927 771908953 374489826 508938500 481811508 825111919 105792598 704041250 555708676 724095874 343791622 425403656 180502504 885175733 825314 448648940 287780067 483404319 285876947 441714186 56621986 342773967 94526522 201790402 119214275 831378312 820140930 941593087 530449106 848949858 256852499 683501747 42692814 604460094 93914911 282793940 34834864 601088832 525085308 740471691 483980719 773771967 673906559 812616124 239440140 327483879 321205881 442395626 362942457 976213457 970468699 979030309 92284553 783583878 280565822 316259922 28032822 51184632 4891404 683458193 377975929 831176886 316028115 949110036 274666256 447328713 337818084 683132367 642607993 831330955 163529539 724114212 326160478 805341996 185424104 988638834 13740973 788644973 366228714 661820093 161758466 885914394 770871248 973452419 967037432 969735828 322221265 974180419 401861611 885250137 301268204 453024256 28036546 878542597 684909615 969080589 908628676 982640035 583763351 789082169 679863344 704018123 617643651 819828998 354408903 772120177 238495502 308448403 246971496 260096834 221166614 707726143 676980944 885771190 793536993 995290053 729347362 930194105 859940120 972696594 129929367 848290806 464812174 898762232 96845035 332371033 325828473 428476066 104295886 203481151 111185897 554587275 171381665 653541910 517276263 696491384 346565077 926736369 641149948 697133413 141320481 206688079 184661384 260907852 67462815 451605533 90974973 160867862 76876857 757679457 665014161 818141281 98477576 700269774 691963665 712986683 639349593 870450660 60111324 612775422 479971081 491839840 332196664 393881100 288865642 695978483 46982246 645980402 602425340 921745902 584301653 782139388 228227972 670827561 450857246 767145728 65569949 640752691 141913023 976219467 416098279 693340986 385136000 653280609 625119016 807365384 307214748 521973151 263478881 332545621 232698871 454522707 393329928 818224752 151548872 522446792 136697283 854410244 110348478 901304493 561802750 643439585 434989012 590967387 532178854 747969220 680213736 787490028 711733691 912683236 658468969 790912861 722838021 853367689 249145102 842776779 322848050 687471192 509602018 961365205 610335205 775450556 751560997 884304245 187489748 755457607 160514946 770801572 124795624 155203487 143047338 258826317 24878997 982625458 621348315 733594799 583189914 887043236 497299523 995591101 43659323 879283569 571041558 829182893 28886462 505067549 441219575 771913235 363018250 682117739 21084083 386951855 240680388 378251254 219858803 672979581 248732143 891822126 631796286 966856048 636967496 919405558 787823316 964505672 402577755 945558262 284158376 486298270 252457528 971267504 258278270 378166416 318373279 658603143 56825136 705111660 290917101 978150134 50495763 944433198 784108257 823765621 162274276 274546706 15788096 321635008 307283563 320637703 236180572 517876798 98953900 711008931 557043676 596340400 536134591 629778561 59546883 447083773 329235332 880358636 459367188 699781085 380139248 931523896 187561340 503808346 336746432 900680674 411579495 603954480 547111391 882912502 164694635 440969004 62675227 127475257 111086171 705075406 169975375 504969257 499727219 745881142 504775639 589756405 543428634 756058010 318419686 845642454 253823036 316100132 87435996 993748213 289328105 682463863 32716245 415170722 296165567 324261176 321363093 417563988 401934406 793675719 18323579 589519546 389354349 656602828 358706191 906430449 816733715 871387053 732114819 990957156 770399382 852667195 764418934 832546547 182317313 247197635 166752126 349129198 293630462 422275837 138353951 331288793 125981688 993595240 925936021 994235883 143508325 377133886 81490875 666848421 206378004 714491984 424577766 594048374 97746565 723987416 526764635 973572786 570342398 758319213 56632039 590357848 20597055 624548283 366676631 697777406 279697311 462086826 161397912 533098188 53428684 593280604 564420947 891829414 810880400 874138927 275714645 799159054 64270255 978862818 234688144 286799975 265456696 528305234 259474914 953307323 614411887 988599722 200181650 519202302 37215634 901789092 843903789 889722172 473894390 818634076 196259308 770643213 161293022 618209363 114881528 436447184 155972299 344342182 153891030 793312449 157875747 251854233 119825642 616527243 524752687 660251384 482492673 753993132 671080447 797997251 485276414 931993977 436182284 501999103 403196049 822900530 44651102 493652523 487660065 953183427 864227907 982916736 152657339 920831186 636946345 790127410 643729301 707733807 525074279 620305719 387727088 899030285 385739869 647901235 187124323 606714099 232381684 383607743 324340836 589776857 178962480 467751926 445342559 506174337 159608033 521099754 316588297 719650544 195638843 321606057 27195420 920723870 153017138 153117937 147496489 820291365 449525411 985391422 759889495 990895184 758031091 993745019 863381123 892655446 45287917 405485351 89115350 979356996 418925929 858019848 174253917 529741852 307178478 950938360 76758392 747386360 323786257 337015846 30598501 246286325 46327235 150338719 73412417 710761032 429137854 527768062 20997795 505007298 242182019 854303513 322189373 895073064 660115052 807569642 623415578 992557308 381889992 733469230 598302861 896543841 186030470 948630327 306880598 558976707 101558291 559561319 102230636 552554049 477222913 660126253 527707848 668291778 631541182 970977331 969181204 995292568 808637777 951890185 901151836 915019894 880359092 938398149 589479587 750255812 296334576 935358908 650969275 979509431 69574225 974564526 402535664 407145215 41259989 784940803 688569140 696545676 683073642 985741963 474629907 475130439 200840153 275690225 26499662 820489587 225480939 330876341 199040047 899492729 711219667 971176082 2220248 156303532 31030039 235259056 143396364 203433808 74701278 194824666 49098769 143537496 7863845 104150947 77308891 437610160 243095933 871145338 438687095 862796388 467427858 887593141 544250821 745496501 497042995 799012508 490281232 841422839 153415971 567493629 486225749 850037169 551805215 995255248 590746185 950980154 246033763 905582967 108266657 145819240 59695351 698056950 177312620 413740949 409187496 929142634 121441988 540331575 220845764 686387064 91922781 632296952 10721805 469198466 44554234 63770303 13419945 431080243 284751898 379499249 361336960 830740153 681983786 812654377 169523217 705214888 377994680 944182367 212678691 272739066 170978932 857404409 101138407 408586819 196674569 329889084 169837351 789039203 582624807 817537939 189891400 281936671 215065990 407933152 318830981 789847732 736768691 755465914 295538587 821518989 232936506 515917046 167002162 946491474 569378681 865976382 810592808 883968066 484563892 754181165 643078785 977632893 428413499 844598777 776727486 892459679 455784257 890331315 157605242 219252668 161892896 339508645 272823841 328412495 23912301 973924635 122348202 713387028 598092967 973218234 24773182 367925954 307161287 684127311 18813468 243458259 50180253 607751443 505706789 627505177 47806561 213234924 20997442 159570981 6599362 278941734 131534523 610931095 186832383 755282672 421155696 896798159 31027983 264880937 262689859 370223917 194642493 764810188 676610727 800923526 540321741 921759815 696630432 995403879 121786321 953190535 112552676 547702473 312222621 617354507 178614720 212576669 1175978 527696432 501099097 936632781 650510982 929113940 888185940 949701543 453949991 848905120 731615656 981992009 248749451 880067125 460921789 854971147 288773597 578768285 572202607 688130181 268593181 904223014 394334178 674742526 590098646 669353635 385779387 941818977 31972209 325357338 145948609 634856892 518548773 934890309 410487756 977947507 769881031 860464459 389306443 463142830 452051271 882727482 255378686 413576631 33666217 868655642 286684118 786070590 521749214 687339962 577838019 640880367 395601208 917624920 319973047 540893271 214252490 556404081 455495502 930134420 102511268 665130606 520724186 628439255 435479624 975780593 351025499 689760614 9633991 918709290 172721930 464276920 437287964 781636934 511791377 709369546 674579439 992279560 175997402 293190794 177474146 990971268 716108909 967133481 424500823 450252957 412319992 758658316 195722207 530986181 390023306 476546887 364056246 605654671 277926621 539968718 528678097 716868024 312126312 388392536 20513391 483865119 76931937 902425775 271655797 620021969 300826356 968210469 856748858 894893757 456443069 593760311 382465232 720953094 72123473 90128346 89877459 626176257 339431810 677586799 466290490 497058819 127282518 984985539 755335969 960161793 112157281 220151955 128502614 710914010 654339795 661328595 34385529 737316887 181635459 914757270 490554088 758778021 634751404 912504969 834849669 859155321 772493903 903730332 483472523 699992797 54761664 717721388 217774782 401219817 22021758 97747056 58829407 932356879 102234245 972738052 449782945 768873685 383963801 432571802 173629057 552621919 35240679 678525643 501991325 685827127 377110406 816862354 387552432 702102576 383030166 423198450 45765948 889847501 474541628 899905332 16653184 979758848 74044218 674915040 620867790 821063860 386475342 471210429 423393291 425776782 343664888 573891348 9902308 570045157 553735687 980745080 835609374 846276704 686589350 981474889 284784184 530751871 135697742 242155500 142396982 668634992 181090614 736320054 113320448 703585993 405531501 930843192 399965478 755753531 146977187 376487421 171442246 242994295 32078162 729661144 291714839 992396553 269519616 711365038 604641877 670324419 635944131 894047512 338012074 939060003 70964507 393770365 354500715 617582453 184666930 400867388 195060997 637609724 421221930 885231312 31536959 523763384 465826849 958930733 318467943 437903885 69987593 833986299 442390178 798561022 575421424 711668553 444216875 554401774 160027584 219119638 3032684 737637226 15158363 47594196 3222526 213819150 69902103 380973245 320308025 757588841 516062919 545090749 501790595 578139095 452271273 944727202 409113476 951012667 479859052 519205137 306312193 498769845 145884006 402851037 364955850 829861228 318850472 335560725 6894157 506070365 354423706 672029795 250156429 305035686 30667179 564085003 142853971 211180744 156167274 243529882 210499166 757807473 43173460 669257117 261003303 841465556 338039279 526060465 37443865 271578355 136877558 158451898 155630370 612413684 108123168 908391853 271373033 321622563 315112827 902321404 68469662 621852109 153384755 708009348 129896100 712024319 376751712 639281911 583925387 863446263 775771969 911119489 413657843 783997167 411734890 690121827 517308160 572457859 353018619 889987901 475191977 557976906 441962393 923560552 568243571 644298017 475368928 828264930 143603609 631530391 418051637 433705292 154050294 898960358 737262389 880269933 624945255 718563941 514966511 791479348 461627554 527979587 96251935 967646030 389960196 851591537 648994095 976036874 850047449 939930002 350554861 392355363 294753020 726605224 74850603 902693757 692544939 960592749 265876009 457306794 78742722 459252895 104785353 423518095 417463273 531724382 292516579 425692705 160423097 184107613 131921435 509469542 395308350 699263276 10750435 25335514 9879002 590581961 183580707 455705515 445851733 857614776 781445201 934365725 930175647 951051245 773651891 823426553 485489679 699002735 275865345 556347094 403052860 418806301 210916933 431775664 417972085 498368030 206667017 488185783 436120228 490537762 45540513 94426897 11678467 288371906 41643701 545567168 446974439 746118805 679613611 719231066 589969883 887046008 296300164 471563084 292816378 535886253 102040861 889017143 482210284 639311077 572926899 590870887 472059899 659569984 590916837 802052777 542633544 691381637 430876181 673426122 484125271 655227520 102922121 183332951 71481368 183292457 142060779 647608243 376269473 925111616 132066945 769909206 212100029 645750242 202655082 297252663 176567077 532730647 492252809 503005522 463641897 531687267 468037410 875446697 826860679 887394639 729111316 981206895 793385476 836100529 357994628 908638936 331589755 863014472 559716497 605889362 100050174 231174512 184133096 567103078 496579015 823338310 71516824 405304607 396992006 998814174 677156016 743606199 708822917 713684040 697708751 997637542 289340928 841089210 461216813 659713049 645108335 852955677 114962788 185995705 106966133 407101587 388776145 753904548 262201803 660791471 412947213 602174830 178300834 299978078 35443018 591463231 130212437 305356501 232449523 641155193 435973056 741240600 491557670 711044507 118098089 851571031 264595595 782244029 368554120 399081277 180122796 812914657 522452633 683201024 80822849 724299336 429673410 809742164 390308414 880428172 646948347 809916912 379207349 426286710 334234152 366509854 250071665 334359044 229354530 436602268 211665775 403830908 40496921 294739584 190842349 212930621 87065541 550471489 517801931 566344478 251089759 772489490 404800610 847409007 140057237 971476127 444136026 658220497 185242877 807357633 797707871 939867478 290704089 311791661 249028140 771494759 445405760 930730053 62449399 703624070 506654058 718879580 319332926 660033558 634767242 875773109 399902126 451928321 227165072 450921570 320396621 882700576 276738429 897845087 7514955 240005952 190276762 999474107 583793128 795386800 628509931 672298635 526917843 662422099 475910401 624136134 132324172 814160288 61333068 305581339 131336746 182270502 81723713 285695989 113795953 501251048 392384981 936233712 434511006 783701716 166318480 173230045 63806954 186338387 48676610 767282061 156957845 237433126 102000468 216715753 41099073 997685051 579639643 873821353 696040250 740549764 330727466 636171807 194850160 481178480 55057186 898455038 404184500 629152055 478323529 990733463 499777528 600783147 27128183 58959495 30210686 631610960 473323292 684951567 658715813 910778968 80790874 194310837 95116019 337302762 270717936 973577174 293905507 612886423 605431386 675433486 669617647 784465939 332447056 969900836 79380311 326390762 252503253 464767119 395916531 458177205 150146314 626411075 606732612 636882994 10811590 268463784 66522624 73419979 7846658 409751432 49840576 867006301 785934911 798925059 737230854 944271885 405200255 873934991 460187507 543633017 404395489 751458634 274880743 393930062 147200007 506604720 437912249 981767381 215626659 432683375 380841645 822037522 239865831 747939719 155846546 692990332 158409236 768639343 356348411 969250470 936942915 960430401 906411559 917258845 734973763 772027937 321919601 968295370 230391498 585195986 247561696 930827371 385595272 787455376 206677317 355512084 114588677 208109281 81157903 393037235 109161992 897824218 521850370 547465868 154122897 352778607 29052334 654663612 47115504 451892484 445127065 693948791 2248891 902457435 283774457 735461912 308575493 440410664 398421976 760601216 331569090 491174894 426146100 485435758 303887467 726882512 683820453 989877141 958409079 994971371 507489427 811177708 621722008 853158814 207899835 576598083 213604658 394219107 254437837 742368348 410561762 636561853 358753808 756325269 385543593 436465191 281710322 763786987 22793139 138541618 130572119 853593071 298513561 864916219 305382840 430108901 426724112 756870301 433432897 667237074 435682728 499499602 268247984 953315785 76963533 532995515 238491703 775776857 525595294 643607529 335179040 949731634 754604395 808342417 794349411 935671115 664568486 760548886 220184265 988928127 56867689 426315364 131046487 215316202 212651146 853607341 79227489 816854586 610903508 814985155 64832962 597848583 419326705 811241896 479895427 721323303 75508993 787223146 344088724 504939581 400031304 646577842 363268353 492283071 3584106 930139820 223212654 223536587 19184010 365530785 290267385 361958452 259498463 865789630 637883871 707597286 632222182 986699242 950430025 957616336 207606576 517829350 76298571 630702085 241890553 611558533 244688059 953100193 591844043 832412254 585201189 630662307 228970291 893195969 82058685 457624850 96894639 290684154 164919900 408142484 12942047 704261766 449630344 485199308 285780643 958372684 99035496 299385819 42195516 769894632 602219558 654992537 566317444 790555755 563576696 665764450 617637623 883780541 369740692 944457223 316799112 462466607 320709769 436893745 401581871 774768645 475586426 805455897 644986954 742088638 632055194 913162075 481591324 808072259 476011515 848110953 430896663 953220706 128722715 889104518 664069825 682038116 572005268 603041656 538100948 979679854 402786322 434005671 314135279 755098554 562672583 982771451 1875936 394306809 18034645 86318647 68955474 194625258 20523337 940305045 441196956 658396420 321869063 986999917 172255128 212924143 36321379 199930070 171955725 328188098 264475101 489846659 4044242 135032542 102856050 577785677 468479704 865120754 670814853 760172151 166846909 466754074 155689769 724829392 82744761 560248290 558973157 882357459 369489109 372109317 244844796 508769637 310792384 914385860 98356631 592944617 403078303 451249428 427931358 812311066 656570494 768434338 260916240 737087069 294823358 990078227 749185799 892482996 526813267 805969272 289972463 886684517 354898842 477303673 42559043 620916831 495330747 753813966 50900390 69005651 47850943 482619713 334272173 699725184 555189246 748714937 159695746 943928456 390355505 938615198 400759170 756127915 24444887 651142820 83370383 348080336 186024612 839672301 654828957 767992004 419801060 500099469 325687048 833289550 759909233 930596995 69678306 329095234 271241279 374414872 354916719 849729154 134707225 361619975 132112315 873017594 268433168 782948117 421321380 674551040 620554415 716773004 247144265 372229932 31946455 652506177 553664535 836368924 268326841 925325596 637259163 734514815 432151067 684578466 519633785 676406800 569072748 589188030 221770987 745248601 513305978 799527765 278150919 812871728 716225827 782012482 148495484 187093021 137371178 282642952 177134104 966044505 66027055 204309407 69530726 369083939 291477611 389921673 341990004 528979175 356069904 401202921 75770811 782914588 271899082 642983074 550496604 624768968 497438314 900535045 842560024 847643605 76469499 507892219 216756944 988655310 82740551 519514675 137015379 512298869 19662647 397179777 356307071 823794602 203009483 623311422 308136223 679196759 413915958 957950206 657278036 821965389 190920500 906526735 2191406 377482481 135196990 893912624 543639865 832607946 684180658 984475218 817577135 978917455 398808025 682644248 274730056 482581511 15192536 573773618 442373652 927637124 248139739 542320778 218018821 648207251 278464195 879343530 629694800 884534173 431829031 677560005 268384810 553484359 301736129 560296591 101887179 699772508 447775272 523387421 483421427 689380507 616304885 648509874 397601657 798159053 216130098 533158542 390200387 593087578 484818644 874742095 249939267 552403806 400924093 666112394 259304458 943279807 189260078 538325706 393147261 520840892 43791284 418723985 412519885 938393647 154654444 951806129 332511000 425613127 363468103 512930449 215323242 663185614 582122605 754752489 540959531 741608532 507146657 618733826 185560728 275106259 57325135 974934368 557716491 990015565 890367085 995806128 243169283 855568672 638406456 736664896 150156412 652503324 369473397 829314632 664738940 804984823 228881356 660883469 248217363 806629850 582844220 649157350 213666684 600018888 528073733 949893988 493204989 908126613 99046514 759395809 415946272 778676664 203429582 575442682 109953139 391250765 25880128 552221730 160707528 932976478 137809258 391119841 10502730 992557798 424091906 818512850 227676155 308244092 14826680 554131090 109905522 731076312 227204903 481724627 178499447 474733379 200888736 591208869 446347486 747100566 32851373 446182292 202905300 771668940 232369049 616894182 252585514 682934073 506997433 916458001 328898956 386132058 135765434 814020884 48822795 800915779 475495814 751161547 394070075 460742459 39827646 174489816 89118804 284435486 11423279 269845447 164663176 946561678 811283680 884834092 165533710 298617537 191199939 215047230 196630554 403351179 340096638 657553052 6841711 925703140 223513245 732867277 385466427 893410889 678749193 765656554 329588866 525020220 182442364 619616114 309461980 864127014 150812725 166032220 7211485 848628912 660917022 909383368 64383071 399826262 307173841 430339887 396766370 772331233 659460436 704258424 206438675 818376989 617761214 725679982 420004082 856670902 500989705 973997950 386618536 723782474 491792919 775617911 612760038 735619360 591489510 607558340 288326651 718665020 229918477 924098388 219596451 470261652 357733479 820614568 609171835 780901573 106370797 738076728 195249986 751555848 534527697 737877745 516238643 997808422 66098245 226767986 151639369 995679697 83802712 720799702 618677282 788993404 510134785 992698494 223720414 608639062 269953619 689489943 401022206 894447878 28404901 842147409 734485381 860136396 99909606 886969590 50174807 264298826 47534991 483475790 277904493 542568224 315031819 707517296 300165629 426095306 307589259 651704895 225801630 993952504 278193500 985071134 931310792 974064837 830364478 849075765 818301993 941125929 90982908 996175652 593402524 669685464 607298040 631328427 66705912 762050689 602084723 688315877 242398762 585001059 441946152 893215852 140745770 166617416 127630523 981564100 647668317 786576326 554397105 791388534 757076548 821260638 193942037 704265098 175744741 469043669 142771824 734938843 558475557 643589283 572683197 895166103 580536719 952932712 387825674 530963662 223264025 291378684 24391936 219648053 53576443 347535803 201981327 771723578 261919857 567021073 73773905 997285946 958707025 969358156 92826095 109799508 27003060 46937074 11640027 306398044 241750674 484984106 41602275 672063327 492145770 676712008 517138480 703734271 308058920 393614550 361565942 493073744 248393276 748119918 85446500 842688303 355429312 663321288 434289398 593227311 243023576 319576796 55734862 565708759 394940207 430943345 149600047 204365985 13957065 965226821 398548541 651210643 406986771 556746335 301078307 786012743 741591599 822011334 582329003 593916636 429809180 856087807 90202779 389351874 229719331 470083834 270324337 386229849 56227676 767977291 27760895 470556613 364260888 914054518 252897923 322090949 185415705 774543741 486511713 655599192 176401218 448553324 240151082 269219503 222910514 825497997 443927537 604159904 302691683 887969563 730580228 813236640 343791027 847741591 409026538 611150319 65023557 795681345 562476888 596531114 91004082 656635867 213416078 522527753 68943901 572919587 298553906 859791621 226106809 227590219 135068212 654549243 254425524 905682563 883461807 894686794 20080719 118036505 70778136 432933844 64670734 611897805 545777852 970400745 683597304 848924879 30382407 890225832 344326573 676225382 151667979 703803192 346280791 819883183 331570091 660833746 292824425 424878375 351316403 464141051 176971257 527083159 523300821 870651043 281547043 803016566 277585388 910634303 263122941 676652564 124962102 409254919 329289080 877876317 542269870 562474891 18444852 410353363 364211435 379925691 123981296 864044930 337008692 749576490 173650783 309783664 4138231 532061157 470373728 687134738 207306825 255629767 230625213 547489311 420079057 545834414 519263038 674587112 12615168 291705613 27353320 913610565 319876559 822908840 720913992 924191213 502489384 683744343 87331501 527372960 494471744 608099970 184554083 845237966 217604651 248430006 29172216 87727488 15930783 941938896 647722627 755674691 366315075 881716081 435391371 477558817 299475012 364384830 288010317 451742932 226608805 444072736 380756685 866505051 706290342 728047566 616328235 813520336 722624605 731236586 279872392 877175000 327805412 435050437 29752485 707588703 490451542 893779808 748158367 829871807 605568776 837150280 830150064 931495815 890918814 987327529 393385548 404170716 351086328 564031616 429667987 458356029 338697341 993464231 370650081 581864301 462816283 952268151 403448859 579384279 132255598 945677496 892604823 957490339 431339817 877413207 374938064 934728397 829347318 992123764 95152773 957338301 83828020 537235144 147881697 831152606 355698197 370677172 197344712 442116242 22064866 506524469 337565869 529293494 22850885 404316987 17698484 331478371 204941680 461867922 195669501 481795856 381038779 629324957 39409433 708518555 270650393 912959012 685793820 849539392 224317565 688801667 347107003 851830990 706932428 908521937 188952888 551255595 402587987 441026956 22770963 512853829 392274111 715150272 508247670 929319611 505225148 543454387 187044864 318903677 255926677 265936036 183834610 352867797 57189445 338550575 46752223 402912651 201774969 255266954 208492526 493484598 134164328 451387020 169870820 237763643 46698558 931332588 353904947 562198816 342523635 455607988 415172184 436511538 255600806 346078859 276210497 675227770 62986940 609170832 463962968 972696344 175402292 416756589 204770703 526957487 192549688 928594411 352873902 478615700 69732037 904945166 778577120 813456581 326802736 348595874 126290832 932543204 584850841 925394985 613631787 619738729 596677167 600519650 494685530 898132338 787772249 820698581 255575525 696721178 575622415 893732537 309411699 555061406 184655423 549555177 209351456 652093197 157944918 491067233 402848181 657926535 638815656 675695654 280661312 624863424 621370591 763711407 64025641 80568762 14957263 139182998 31559865 694363021 18721821 954827918 113688378 491387639 349624667 641800175 315176264 761471934 27175280 409666326 29229671 846296614 70108086 516000014 167287598 596895991 328824513 449293380 88283063 939765115 473134207 476014345 153866035 703801469 389184748 458042048 455480622 992091458 271435760 519962612 324752496 430131573 335407892 752409388 98253488 558567123 386707433 389121132 355207946 987699484 287001954 322108244 204625820 997829476 468640744 840803051 397601272 813647880 320394273 830987149 822689284 875898044 473019404 716029654 290056626 840316803 362712079 409084852 373165645 754580901 229620117 908682889 841414465 878380250 96423205 908807870 35813294 410559575 194282246 692515036 472517994 935295455 910596215 957131879 736701581 841969020 774314788 923392790 277766121 544478217 86964733 697736100 509524333 927502993 364056509 364076475 96009724 602642546 395504514 838934756 158287881 417041841 416175430 747515826 505417300 971551783 369647531 659107958 477753931 894850747 715417025 812944703 515800109 547224790 528748532 637347293 586887831 812242049 416574666 708773837 332452675 674674327 575402667 704101974 578403098 671590873 496851339 636908346 380467066 922951418 684421847 884732942 4771133 649711130 65356429 789160843 75421028 699068181 172799037 875183271 192354085 762205332 95659624 730178146 429339122 769428204 412450815 785388533 624354713 996438564 694129738 997749819 31485367 551213896 438098682 483176748 283539798 423568840 190913222 756338196 395204873 834402273 382046759 633010423 538322996 706015396 95223727 315899516 290186464 571226238 165133995 434333325 298610006 430055427 65691225 460024674 75573745 515646617 92815512 612999999 247374571 842435447 650429047 804487853 86615291 720729263 626797811 713493196 640691528 753565023 8454686 787936866 650703874 767718674 692080082 947994448 430590917 541244762 398017984 522814917 115001520 299639472 12538699 175561677 62862837 869408772 18530186 717423518 169427741 883031151 643726910 840996920 602461439 854318446 589706181 700340815 302304063 926784875 698860068 704529359 270664378 403469673 212046215 726672162 270315172 820719447 71414410 657451632 178830092 327549839 217289670 685210137 487809173 639836677 88514342 215488883 74052542 523511996 65747146 305162163 233255926 992703901 293810417 338899883 65117392 957028548 753388481 882483355 596582855 902545327 572989445 683522112 157645432 321306444 222012048 281612588 246871218 351912293 206371872 743529683 302613659 933444158 827685833 905007563 626893437 808871386 804116782 922616723 21444814 206547004 87566491 950610705 552651969 645665409 437445042 665391259 110935608 737963808 32313414 785817944 32685775 617913896 218383295 911499371 676431444 785169992 484732102 703253309 677119727 821066976 28521080 471488565 242202332 260026114 256979115 781716951 484875954 952204169 619397791 913103318 286377572 448696812 308030726 654831538 139910366 468969385 26307836 184598069 171993681 590224670 49278698 549333258 158015838 436204968 81333043 590912075 480506931 966181711 1797872 930229403 39532656 990309356 455516544 703338958 338586649 865654337 103233702 404959236 189933346 393720445 177889956 426803009 247839892 292047423 246830166 820850053 461275286 863731111 682143262 957013260 728306011 987467669 791719956 851034604 399413555 644520682 412774435 816891619 475392209 582724072 248624603 520956775 291745936 951079730 36482365 629890757 71226542 159982334 131083006 835509050 16111202 798139615 257822156 370425896 25837840 974915100 802426201 834048461 730381789 831001904 185372330 637261969 245426384 252311031 28051436 611119478 443728358 889263106 292010 928792318 819263271 961530864 682431934 853366433 382408504 524646498 42514916 535962213 302220784 828105159 792029378 818461003 58463092 590061541 401055925 691885988 583184649 811507624 54832923 676309996 649035429 952629943 188323817 645833634 273189635 973809912 305357992 558872539 352843561 740748409 140196782 626487954 613551864 983527264 773774955 784196028 355408540 454158640 145031187 930228502 716652536 774686882 383565887 399455370 230248099 507725030 360142568 965370497 764602002 873077789 651784597 778001201 498133360 924559489 361245025 659734593 164156471 780127748 191013934 902391790 673582414 992948587 398260825 782954581 597238314 797261469 485094105 958819937 349296868 506175939 352396564 419057402 174611282 552342896 462130041 944877980 201713094 340992299 208471920 836836978 572684468 824532389 537053187 982991028 357418365 755290602 577428530 842798653 210649396 748126650 536906397 686851652 6672949 737485937 1309144 498885317 164684433 526274081 266778835 760193697 535829606 677791910 452588228 819043851 570185579 679763618 398023804 711609414 363052817 460511666 951945 741818497 125110 615778853 286670905 357931637 103994088 539587267 356012556 497200618 153615968 632796492 378140994 608692249 311025669 731625662 572669320 688009813 460308079 775842231 46025034 520847554 301935256 985850611 87896718 164478355 74058578 813901485 180119191 830721297 319705756 844424579 167693019 501684392 86548397 510658928 60121370 532481791 491550090 959257049 121025252 591871986 181563194 406161711 404624652 747731197 462752513 947289627 585390536 912621843 740267228 888912963 468605291 681525399 82773954 142241939 2781138 166538363 149248156 345685623 240737224 651285551 540012886 981689213 335591654 640213518 387860492 536948412 234217511 446718167 14865446 345043732 59655854 874673414 706634660 774320678 110426269 897926273 890686158 998368269 879093228 972099904 942643400 977798882 18822255 153367859 29671156 642322361 585566501 771381256 276180106 520294874 159656972 232141058 47798854 81613489 54461392 981121669 768960832 961783053 317600897 554296186 493167000 655576838 529650133 974354328 254667250 711925114 544708703 880287840 269670866 610861677 135028551 481287926 77339327 536781165 149415306 987358257 674554518 997018954 153590356 167512840 147890645 320035013 192575640 845264080 695479690 946227527 911388548 916827945 915125637 927872431 517531238 823904667 716525524 857719374 628649281 872833336 262353775 958983195 873807263 991405042 627184304 774276983 563682849 823998235 633949137 645031024 580117086 822573435 335225386 514021585 421418090 435630975 152977381 350504321 152370559 864155445 663793352 816086407 426556925 441357457 192600543 516623847 336554263 387631488 159166253 445890647 388897075 775464158 34048822 298337043 135252515 206652435 36725795 778901996 364762849 971965685 80435578 226378732 91115069 382197390 371106800 949466135 754850400 950399901 190663709 584949509 99977183 457840446 57832285 157084443 149977725 445247564 60610826 834259820 431229470 836094161 473739230 536569946 186629033 537382848 448121520 775143589 304905178 358830324 217678015 419587130 121765652 427529011 228385025 682140790 189749884 376556752 213073037 582812580 360953989 424998765 102863414 716666394 252027071 620293069 56759286 994018355 968634431 969328881 539371773 761617376 337436030 931132714 898316611 922516889 603005653 994679952 846441087 980974721 184375000 569149705 161245806 631037231 332249805 683311426 676774289 755892823 489329723 946150508 166203104 321929586 81626363 950164212 297255555 473518346 248677529 914155321 204907372 829966635 25439208 712596969 54431023 813786074 433923068 789043847 19774643 56095252 47889274 586364437 546119505 572407319 342139675 514561740 83746163 742975991 607305844 912773216 450787906 733625583 492904106 662933894 205145354 675919404 311968363 318760152 45824934 91146894 24925528 872170170 860196270 990371201 870340199 925265354 563534054 921914607 898283620 965825639 540509093 960023379 433909713 842212712 477081656 706131921 22383676 855414908 26224025 528042570 377013948 462509634 174849940 673295577 576019288 958158275 170746740 961487816 105650892 922839151 326550095 383675440 363577145 746785271 130368079 724153097 608969770 914983668 360709454 806274498 719228900 978222862 95501861 512665434 12203320 60630016 40148243 177792496 103898925 508038861 49520836 964075229 650238206 814106892 615959356 938888535 926493265 975697830 661261597 714534576 582800232 991636262 980387085 990706175 958215386 968604142 366745239 535878095 507681429 523380284 332690319 495340833 42308267 859365446 208971884 322110145 65900966 487668947 63128630 455480992 102474192 956482993 830743072 881729961 82542916 120345415 40929201 211885294 109988912 471539615 390873128 672218444 422279890 944941629 150362877 531759927 484967227 485480754 236008899 909114748 275865977 480379891 184148918 899876335 82967483 736970395 366190647 923964352 673818430 929838213 558074524 939705579 323386687 485721419 97707874 371351404 1469884 931056110 304663765 650743089 260611072 385726683 318335443 391928673 275593835 636082732 435425882 960063249 832495023 966634743 813336543 828622527 241607461 990257993 937685894 993098412 725691708 924798573 440054092 702577278 530759966 828443578 257652015 303889075 151631954 860684988 703206881 804841235 713209104 935940310 816962081 865618464 517509279 903999525 121302452 392189156 17985515 942958939 511543451 671771403 657049679 955214142 769772807 919867417 416752436 930273339 443109056 624784252 182749113 195610136 107598376 865372464 707645795 948537107 131823002 308503763 130280319 305188449 50196491 155756293 82999686 505019914 265825124 773092179 546932134 689381984 24772305 236495857 28137006 151654838 122345972 857301814 79331849 847174934 43260835 822490139 280913967 862050784 752060273 968834157 43447875 505321221 127499941 309673952 278655004 448742428 52505896 693950884 130172406 677635372 588151504 723800485 438901458 896310357 125002839 861316492 673356704 876034106 401177724 544528685 443465656 776758439 161843010 981877962 536360499 572787444 448642717 997015981 134728379 567144654 559599565 910541794 573118010 865519018 776894423 788965720 28379227 937016711 186418400 487444993 474535053 923213974 257432667 957526454 182874452 625502095 498118808 902858571 652639246 734263795 380346779 912220513 173641564 513432525 397730323 944853074 625603194 984384005 537972701 664337465 383713228 907672411 777666240 968605369 191729632 249160019 36586073 673757145 82792250 523862898 443740803 783140928 350880758 730564335 593283621 650342288 238679605 411161615 107463041 969165103 948854824 950004569 924783424 963011831 658069056 663073129 471112446 514404917 246751204 568755289 320893785 870559803 113541395 554500676 379305697 745560160 694125311 813090133 478165609 811518970 396350940 552697550 401708301 667268659 465627568 646679542 58964104 494244847 452754975 577121579 118932664 810575356 722845746 773503867 107497984 577745577 250658251 492903364 221934255 572323336 271378612 768595783 459776372 923943229 789598436 988907946 466110593 470695005 171191589 749461856 542805195 870758413 47088939 636637490 446521068 820463090 545747985 940357895 797580166 925292278 516305290 557394034 68675763 493351311 277758496 600922431 158154065 781331237 549948958 939934727 287885544 797742302 93956379 221449874 166511767 967991609 523456095 846894415 112314456 605777288 428293527 957240766 649426033 720493816 680131448 956639745 896518105 915793543 682747441 934528866 710671695 723719378 566044001 901804482 127064015 884566477 573556371 819379811 451719110 785557521 261990097 377676842 129379083 205298025 132323555 310525534 305625022 993332572 346782244 982198520 748673693 781133719 294377163 820788502 703571639 761865048 574320016 891109471 36106792 564607248 393468984 692435664 264212004 338180516 990866 866213682 856544115 926798330 392098299 534964818 89779207 193636224 87051299 109353825 76476291 329253235 48331763 302650155 62612915 438544571 179439065 870928973 703660168 891074395 511439628 569754935 117829645 986806375 481921975 836448707 68827186 880973540 125790905 619619183 490540172 737381384 614968905 898763678 476576116 522949211 161983622 776128713 432337056 679081341 322683485 660714749 394666033 888174545 554077782 908346838 698986995 953186773 858453465 985220362 710178782 982828337 395625282 503105038 254944303 365860008 354256718 499940606 168591660 334006199 297762954 587074912 93392984 914351987 904775393 916049731 602288726 837722960 786715440 882233511 219344605 827713335 129539459 318069525 73508386 513948738 312837781 785014795 266107561 901004759 30887718 956928949 693174471 874331367 344914854 698054864 421279005 594994137 86568891 406014198 211943163 567012026 109761416 335008391 230450362 837088025 239519700 898945148 548742594 636832707 601488171 691980690 193356687 549723504 116903819 793558798 532880383 564393905 68694155 461140881 102537086 836648308 596503949 645905568 244093870 688001885 277540700 842448456 147326965 267347979 128215698 657902536 80997774 702040098 130030066 795113753 319929100 554751286 331320511 670955306 317128646 330312712 193898496 874423543 194945750 643002343 390201047 402080119 85293383 839162704 131492004 227597536 17810582 470940945 374757736 869974362 343729277 716387655 340505349 653559924 547941421 727040984 310714426 342520348 188382461 637735113 307929380 775202945 92421773 326543060 40099807 97042328 42767821 708689667 313967896 456025105 48653743 859899497 299020755 481499583 25791758 246765354 172533146 403532287 132083114 611422394 559989301 592501729 30207364 211385336 117941423 401522883 19942143 375151803 19490790 612206026 335299970 583487290 218863196 744028847 45842245 845940493 435938032 566201208 138060804 526527470 273035777 341633357 106643828 901378216 580338146 855228850 636378685 800444647 349106182 571673986 126683669 361800199 343919684 667847331 371179317 442550924 66020202 296763168 234037514 758665230 356194043 974530493 643042721 757836996 728462034 990955270 60125288 278141840 47059265 462523755 247705877 312959661 181225348 537469274 319211443 792400109 150944563 985896287 92333217 638965105 228373403 525684384 308947651 411291861 106565505 777103650 731300590 935356079 273349747 524683211 160922104 899770981 575727812 806335308 420344250 721503299 14283827 557674783 390291397 753170931 150688796 843731536 71428504 414232200 170785352 973544941 582476519 983202193 213694975 415853613 105443294 718753117 234850186 260757896 80038971 840875191 667923894 770299622 482399745 784595443 145610978 507945510 387416876 861323131 332813214 577345840 98703996 304424858 130341425 900315526 110165447 410586258 281204956 472390273 74908499 348522699 208829472 429783742 326243268 988553247 384472998 664904515 399447739 466962017 150139883 486163037 421725851 612630368 309193721 468646108 272052978 582521368 93184182 823277415 109155354 443839459 267629427 661840518 208646230 774428770 132493623 446455991 343574148 381021770 51389583 648004351 223551155 663572779 89330227 500345565 355276164 955985399 675300111 724645014 1741935 947664552 430331655 859609861 381296672 751676414 688866264 956252089 662029568 740977858 124830741 382513277 176674103 865651709 39624023 315704623 209068033 886548279 807442470 968017695 69489539 593351757 467880906 878392154 797587555 849421958 34486929 662241012 455193102 695000987 321568867 685267138 52261052 913014076 173363469 582599156 141976435 384152244 66555162 598053250 423412283 823048080 248840167 483893394 250589000 500417731 230740528 423900513 161039636 931915196 539894059 968367505 556434086 887456709 150457193 152247792 146104467 547341397 209954863 639737511 445964467 654874522 450341699 884937874 233937258 402204345 275760884 650553450 51220603 556273419 346997128 795852578 375600202 862789135 11801369 869820814 136884755 312407189 77684092 284182073 102167967 981279188 271956222 504566661 379775852 691239332 670569311 843478675 8784563 845928398 255797631 330815418 315143423 673576477 245989294 513423268 289326968 558984563 432210552 985500863 956556429 991391175 249446715 910087509 700365155 916902665 676509576 719652220 245294507 543251697 171989928 915596288 477308508 755392669 447706978 527145468 40460299 922152304 432559661 753163816 652162922 698170970 654823369 672385043 198357386 987149918 895076207 950226394 458773186 865472468 756422310 954518783 497460970 607731503 14063775 137757877 17203528 307977830 36094100 45664631 12990307 32658300 4212184 331829093 207497634 394042071 368587734 424651500 414430114 474034435 14384733 936319698 271089869 874530448 88729043 713515667 60011093 240656272 130287562 567241428 563137794 971647112 785837307 867625992 671654822 719305002 687374136 764150375 473768854 778973381 85976006 160104149 8454526 89940867 75514105 645194890 226492069 362113880 65650183 938618841 825707361 834413848 526714645 809885126 639382488 696313612 69678434 549066771 482743425 626288514 117619105 388070594 12880689 401530000 279414655 501595465 469683354 680658032 83306103 337436414 28376816 577401984 263511370 492062662 298480304 694427252 554306132 958804927 524051753 606630529 455694122 587360204 444675233 508707197 6999922 190490604 2357455 188327895 19964767 917841892 651228653 942935579 487170142 836855498 525917504 912547152 509150299 735568848 522266186 543504839 144943100 731869102 4761577 948648029 618945527 708518771 295638065 951152602 506868712 972026145 412810069 505937963 330471054 499757823 138200709 300032829 29570569 81753230 5222912 94949064 20408657 969440311 627029272 664880635 285764454 429673383 14326179 78898644 9954634 817288264 727017524 990902828 703124902 728522099 74444878 143407664 129548137 791133621 741524309 976448207 943300403 976937398 363209299 415121192 123052580 505983718 368473256 491861132 97086975 893626915 513761009 685809635 33498960 611133859 272210873 719384321 181046925 595948432 170128819 645771168 90554097 993521621 930337525 954559186 766455903 952258513 190344197 781912598 652811688 721803363 16140892 429442171 15169430 994084069 757774397 833523780 461856025 781129471 550503560 599356554 426709869 791821036 295016224 660319841 469066521 651646412 236194681 471789790 110537817 428990681 117652651 141242198 73016315 952502618 57859863 432703014 267789085 474434548 379775470 497911198 447690415 581867305 414882834 638126443 272983894 600346290 593632954 734280957 137308538 174799554 17662288 441130761 438907604 875038554 66498640 978580280 296412934 593304712 41496698 583035051 97567287 185895098 17781896 978975758 891251414 894109619 211086181 325366706 93258086 739111249 210919355 726815983 342396429 552931439 427415443 590843179 298519457 753604139 69196406 880859566 827592438 849948217 847540058 879862522 483690755 757201762 458960231 824153691 512883177 989488238 464245845 645964052 476985270 757056162 61491026 200654323 67177861 588158678 149043709 360135254 87181435 621795930 187747927 404283987 55586473 929246119 85525486 304313186 160187659 372717621 239706157 526330808 186802006 229863848 81511791 920517880 102145092 304645548 68878182 994021512 199398081 837530884 821443505 875522264 306815585 454034154 338821909 576661653 493297466 708876263 636690908 768982113 185191426 887076954 432406356 995993687 510044542 597900243 433137700 918681430 673093651 716876385 192466324 988357582 383366556 587407170 512454772 535775448 304129245 676980731 516986638 623863191 55169996 705432354 9177620 758272923 192057045 900378283 626810415 687937417 380830973 993557524 178010039 678823746 262085538 558608334 493984682 973255713 884391736 991471767 97744479 516021470 77097403 157946965 106758803 437154806 14389265 916509046 14793349 745447086 427970854 444806329 205503884 988193855 438394825 640259507 607032525 995969562 592554393 869115239 515396094 828936038 21975360 603364484 562297885 810219401 278910436 348243159 143815723 938886492 353956861 429417791 72055582 411636597 69324432 466581557 42164958 335414299 86133946 854696853 113822907 381122765 309434632 842101112 331520827 458078233 404409790 806292142 6119799 268794513 1785665 780034160 556281218 767787092 667178918 958043184 872231512 992057713 350636192 766655647 88027430 365540547 141800358 447919512 130107054 924654254 559805538 622335559 614850515 722609455 11835728 498058445 446929538 798295565 704531872 847817674 499780153 864434065 171547559 314377264 241592489 324536022 255342091 283795227 9811925 574061203 274186727 515344439 280673468 327838300 169874302 671058558 237595580 784492268 263414109 984593917 641635058 904880342 514888419 559056176 537970130 643164583 426435286 873657496 246904358 957000533 165981452 780690512 712002196 965647468 373172343 859439284 839746193 869613725 552749750 867627699 73508297 705104476 54166498 669036227 149661176 554426339 397603592 437896742 31199294 320732800 32281440 996883857 810578488 884647438 508017327 594896417 392069519 511932093 141036365 550346660 154929212 386005418 304379611 638397824 47042982 48420438 42046974 698678621 678383784 781278365 234473790 645866097 619793046 909805569 296772991 671041886 629306757 756255180 183303102 638387642 91282606 853930309 629704046 969614050 468986610 836415958 322209179 431944841 415225294 624040346 227252823 701724831 484900026 649112625 527987716 827003201 806099347 811710823 389515755 393487383 277325804 634599251 362081843 690327995 494662135 821744044 195109931 982408421 964026058 969075834 720260366 833899268 337613045 817391182 594496990 613700138 106758708 715026253 604479422 644613215 489579165 872888423 320947538 608308696 557057692 672481264 601430159 836087005 221562778 405621312 365777418 426863260 113125397 966495615 222669086 770401008 488536950 849104137 508767408 665864336 312440310 921961339 614453167 640803230 425302530 767519087 523929035 564099821 484114869 765193205 691378709 893828740 448154737 562449063 427728082 441359682 191914332 207262857 124003320 948101690 602362077 999119140 499800453 692204172 306063951 345628006 134516742 924380921 866860028 962213029 132396113 132896840 96137654 377490262 25605950 603376429 561498498 699575490 395941771 496650756 108870147 242146605 76451939 591705558 230963497 794822286 358676609 698937878 448067651 752904267 455537555 744423230 482579247 485341223 342319077 821019346 813651140 950116028 151301336 728736426 191167126 546606759 23897349 652068271 42784410 891926092 790907870 909993601 393919011 726009811 156737103 736882418 194821348 663675834 655534689 891574675 453739103 885295334 544388813 841055339 839304322 906023508 685128939 875845855 207833113 722325890 465893461 518713793 81448419 971423485 113511183 741671412 598637826 797334283 551870562 679535737 501625991 845400667 508354442 834866835 803957716 943179489 903266537 979142785 817877849 877865012 862075748 996877622 262584646 586721974 153200831 410022062 360400612 929997353 754254253 960925952 555571069 954558731 941605230 988529114 651315814 790988355 283922998 962583224 770907481 946547327 573536895 880601074 464210490 640726759 487896199 723891880 412353981 547264624 460092007 743872013 493385165 501064253 98760413 494053556 213232392 509674487 267313258 531152056 54104433 501901078 257434076 422330693 315689303 392969430 349785193 465480355 351518453 911075055 226074097 291119898 107249966 777028003 771725687 943649448 43716030 863032867 591748584 793564384 719185930 998110723 622747581 775864829 183482551 653459932 530364426 612964410 355619034 471761782 278158431 354890540 235353319 371199225 314922964 533087374 301999383 409487503 257289484 861927224 559236380 724484632 5237733 791182436 748487746 928316765 680845370 811624102 431941130 734884487 539487026 811643690 773614560 927345768 874839093 989385492 244955265 442512773 332736178 819573393 771659054 900340198 715192805 902947971 20347505 179147833 14001420 872564503 403412758 647448322 244044409 611664368 220581101 951332588 674314272 946561614 656578276 984651340 441679461 749162910 106613428 107962183 68862432 111906160 36484993 821694960 388425 554329788 540203203 963469962 295485408 486183805 59997501 503478603 395598806 462545062 105874521 340500233 212186210 355364423 318930863 628194184 425126375 601077112 341453903 431519754 288353799 604127877 100841104 496022635 482291390 906761006 729408416 859499261 263209766 771659594 203441483 400449881 328695532 545369713 251338067 889988327 283269793 814718906 230173135 944095478 617689817 910485557 493059637 837003390 812554022 877304384 567748391 735572099 157851674 193533026 84805222 645258700 234792089 855056047 332875353 408413703 194291977 841354262 653291157 763800509 527920893 806257899 586426504 924149870 73814542 891128083 221655463 341234371 307840200 848033712 591791178 704391524 102088545 211723886 134784163 472220483 467804905 838445091 174945186 881461444 325058590 630060322 492422395 662933002 580373089 629477772 326966467 583400806 177022217 756179690 444753611 496497291 13966185 476953076 455405550 807395592 429218262 666679421 251113354 326946721 71714765 511423797 482038814 734257103 726234428 905258229 831638526 955411600 555144530 700564617 266700304 549459845 254059495 343494218 285851586 673381114 39090818 117143374 22018252 914073422 311437072 676791329 114825826 932964788 94342162 540090338 349784421 817523297 741711127 993034149 662433143 837106063 622713563 990903272 960876556 966160138 658272738 731471250 284299888 911922857 752461381 981878126 89417007 993667288 25566467 279145068 273724316 875202688 818636197 874265377 42539286 167846887 70884405 794303333 195692053 498872237 387089454 944298935 39297213 538379036 45271432 768299309 172985054 427611206 199576322 861394206 82670534 650309738 303690009 737905631 95418095 476076733 348271365 471764587 213018203 891819648 474854269 548238868 475190970 887460987 87678 592047774 531705842 856572785 460435417 605341611 95234029 623913998 225281255 297505264 146409983 177186440 170364663 600487239 64232214 516367296 424643483 779499181 169519871 618212512 181155555 270803421 148838581 284181963 244917661 285522488 51494747 271530918 46161197 437653211 203687693 898426491 241611328 339441456 207934576 963874230 178983378 732998453 551270093 573710942 375185423 613711764 239952989 975109540 127986231 510623555 483058876 691756300 361535226 766387934 491832072 872239503 424904623 439149112 215282681 270793458 228345169 914895742 879677183 889556909 814530082 817639918 408924826 924004324 53426861 152904038 134936696 947640105 587063801 735491831 444035528 875944735 557092853 848506799 585247997 663644412 524661759 649444004 9343914 949292195 754558785 887751975 583557445 802791558 617427131 827149040 19259044 182213023 16943222 664116394 408346105 706644061 597606748 790984671 601625334 663129498 305019915 932416744 650351821 915195340 624399395 641393086 31678414 56000950 4342657 571128893 155959996 992561545 643810638 726117810 236800012 552373440 294595471 419662081 181883821 308383787 276091654 365173317 109791293 720035488 563650250 961498673 319072981 812080577 180531746 279965688 101585005 638293275 2343651 100346546 8623988 421066582 356341717 383379572 94255198 373922444 358510730 404194768 352551719 383630475 236266086 296605444 216585320 310902276 122299872 807380558 277021148 978840352 516486684 688208263 471544108 901165303 560409512 965402966 934367111 962209343 574723914 947880989 672044420 948356526 134179774 816711384 280906320 703457047 503229611 933958292 639955954 996391286 393709101 666505003 375657571 675231680 647546322 789498659 231130321 484448960 483403796 783591035 218657577 750747836 732198129 783973293 722569816 857624829 375257289 875790327 238638833 928412257 78679011 534367767 399757105 426248027 21236811 607653680 118719385 399033477 15580897 352493008 306474144 644449183 132982467 943250470 745584536 804854688 594436986 643586013 112477454 183967026 3957920 133427333 121711283 511381556 324447552 658321690 327400477 804564662 613060012 877172747 84251599 781380743 716352318 797117201 697760704 912659538 106632039 445802543 379911559 642026560 282465297 524867913 66845855 269723072 237654251 302602468 108851769 983510357 364768320 515271621 499309298 888493588 451826446 498677982 372382068 886518408 15093443 937042151 631490624 948425533 244020635 900722395 888656042 892482067 555034453 966290796 796130115 985009586 555040454 727226978 528482580 529672934 521386057 668680089 365790837 694969291 633819259 956475514 307145268 991955979 125196342 382281519 243089025 937842829 393797307 617818073 486878786 670971573 91417482 102967292 38301657 866274554 722736709 873185699 12598792 707903450 67489772 567788613 513769919 524803733 359337990 883691826 608148347 621786475 175655938 510596232 483813424 946617421 65953420 142733852 21168317 365537713 59310306 525859459 434439300 816956993 789536987 802234665 581784365 693805113 187223490 560374706 93669983 623509727 558563836 612157870 473577400 478907606 94912903 200209273 66148893 929889576 597686015 850484370 34247352 584116678 515858258 871494577 656110651 965693258 725266387 968865055 556297138 963383284 596148597 721207813 215609900 622796384 16741762 137255813 72868126 807318594 730220972 932241424 505785305 676410080 404237885 997824983 50417698 627287710 485151068 660692631 430682532 438224251 401893714 965956244 235189096 249334979 195809349 468380894 325032248 991453456 81854656 110713322 42857654 658437352 105434189 242522854 152510729 305494150 227394707 886246492 880514242 931269185 743597892 982610196 213499526 571145394 547779533 813020468 168875760 240763585 177197947 225601433 19612274 159311466 68155388 120011660 6858541 731510798 150942572 967792269 756124232 893465351 307820269 755833146 737200425 853525531 732549911 969426885 313392295 881078620 785539275 823768566 282883139 664328751 457545651 728862767 483561466 851009385 503161056 545540444 125585716 350483691 17353984 609572012 591629108 652034547 208191570 595493534 17402895 793893150 639977252 860875226 797938493 806321372 694548136 751396163 542179172 794767287 408078713 679898983 31479071 862968638 747986917 753847878 275924969 748237983 171337682 227986025 118882454 605661696 325028336 761447412 394692284 461843504 16452545 970804650 723947432 945614657 350080514 379694371 83821001 166415570 86021984 116254824 67611360 423182685 23276474 981731356 230603534 460444073 11484 200881209 94104696 195489162 16942594 519793809 461976353 877268558 314365719 831823164 799421835 956006117 871496723 922555202 736477407 819062207 781039806 999170513 833116104 939954917 492330071 685999643 568104608 667912856 11409705 86484929 33512812 252108635 79003348 704871876 341357540 678270583 381828969 940962902 359228904 916018872 196893489 878986848 499251948 861160261 232671718 964200448 44233879 669363360 69511504 542014349 284720000 583823479 248512435 920383114 819989507 996186534 907468843 916137235 347667905 652323425 242649142 387956102 56086404 926276881 451214827 484700152 233494135 672741488 87944380 111422970 102107574 134914754 112678736 854270694 292120142 741275014 633158521 995891215 790781660 823324231 52507020 578894933 268423849 608072215 520215430 809335707 188266033 361198766 186664316 575818795 198163754 884211932 340250841 862622575 711296947 861951402 499056575 945248610 520981317 905346481 593608632 957851590 812355341 969105701 204281350 376593124 174976517 254979113 146869785 614794793 101129575 424117597 222318895 426021174 132259057 801932420 379486818 455785550 174431622 196779147 168264529 751675585 387891084 596560147 53220736 553226517 257555129 279576021 239998345 913932479 114865682 986872995 876918033 925305987 317385769 787255977 723474606 883583935 551431897 858853815 237231331 315548273 155841084 382478846 81438358 709941657 371630487 792855573 721229772 970862012 273293900 758632588 171282828 465451486 285984353 972460280 620349448 980055996 559534466 872912439 502397198 508070881 246567186 515483492 394719358 474607103 283070356 802780041 505144012 779431546 219268853 751835283 215544251 854719729 469637176 908479556 877451586 889964083 129252918 457105162 342447483 599582028 77653736 320730957 18029925 481254302 296382782 334299081 288878524 373726862 158189940 990914600 640699790 943716248 85058815 799425281 502495982 538846436 62843111 767067833 27151872 677808653 137050326 919896608 56885348 576720148 108963460 540328115 465682810 588797834 30089680 347934231 144408474 709630200 508421678 996285546 737873865 996140649 701226878 982807536 336830014 795736285 296867902 383177716 67992922 932222997 85175498 259351576 230127323 619136465 471635558 802984296 526308811 858137446 4809480 385825217 130723361 555168812 478816259 672494818 384644056 615134668 213847764 649355013 215203030 276653695 31279305 501960431 261922527 813667525 524205298 857743322 270631531 915719600 363092640 927163475 185832502 567543497 344778959 553598438 33067146 211830643 124644024 490016321 18672671 66023573 25635798 990218995 698437460 904222371 382928919 722427227 300424020 946025292 482407339 725888576 255817107 673483517 212468915 312484635 205547909 841582558 777142454 850461021 790385711 944000394 487190749 906705381 11536891 59204346 54723119 611824620 370113104 645594038 154523400 429718129 349012211 461710426 221391443 840992353 223632339 552384363 181268731 494308175 7139094 326119003 23808593 529060363 351310506 500102244 447785948 786177960 711999556 884126674 294214667 945756896 595931733 664018454 527919066 639199801 116861469 426331139 143234671 713896865 492165201 554439418 61827948 415933404 80779537 963339995 462067243 997791717 541212157 908289908 108395095 297447155 284552334 803197867 636639588 672122264 242685521 352301003 229993244 324332056 249759131 809594655 366701189 813939186 782596713 873860901 283692407 451061242 93516144 580325164 94624975 250317386 125714828 562037337 412437891 814389116 713120184 854191383 236470434 772418506 95069823 223994755 180068081 576662759 165538515 611830588 281540482 632495716 487539589 751699572 563713270 782734960 322849452 820820212 180832146 527107697 301793309 781444930 473307741 711979760 340106495 345300032 304235570 692038766 314991163 473994768 1977045 633753896 539786355 692031570 447703375 786069309 362264422 400432523 270507619 605826837 404100593 759503505 264295428 745380160 199485971 252543994 54809185 73533148 24903093 348104927 94132456 929779720 570061609 760745746 339354466 674568177 325812309 829207364 247372072 763153759 148495059 697592721 334920234 358523842 277007126 698781224 396774197 727431943 437878611 782021021 284007383 971304288 404215116 898174824 542478242 852061448 389852952 584624374 386276115 855402903 218588498 940093635 42169283 988370087 957798169 988752260 594711142 835340047 129777252 901813716 109908866 318959858 65091805 420149103 109917981 886764076 9380662 875797180 844190837 967632655 920537429 977664655 30715521 789550243 542863281 686021753 655514143 774323110 128902409 295696067 219228149 990751242 483261488 725846973 255648570 498618983 438881189 899663088 506339037 834022783 554483300 928709993 585784694 745701729 612414101 754359849 466593869 737742274 91174226 123081964 71530109 250345776 232783931 446049312 207655107 743980581 689597742 741043362 96920448 533429099 178704563 302660277 71681710 135659282 60143206 555318051 143741579 415922279 262513258 702648369 30661377 865192620 632462037 793763228 782865083 818159778 226150083 423749338 1004857 759905043 261049537 921432731 396838958 492625888 325669138 481030447 54114198 229632673 97896186 349288203 113391957 176615085 41790743 499660015 135242950 691718772 465354370 607720767 491795159 821312807 293114715 613150934 186296487 989785150 924073138 947087611 67673735 473618741 120093844 961847474 819467484 880574570 671856488 852190349 300085616 451571564 383508928 981430998 640941474 968761380 28340807 822263916 291114394 714431953 14162115 248324083 132492484 357986111 225434399 433371967 185970893 478686152 263425750 664348598 119108708 362700839 49078267 180160608 11132604 509759591 106656147 971632569 220078549 616764015 215789998 308021633 267750031 344449243 275546995 522563212 453701500 845507817 733970209 839731776 338765285 964231716 5842062 908507038 643586765 863984635 644621018 902267724 160863270 680429156 62314784 912290074 89773977 757428272 528461820 888514389 795293672 816488868 432367463 526978692 184120228 653142991 596168932 666102504 40607848 612628659 266901241 297714952 63957419 485688113 261109556 680924045 603950870 751735214 17331490 272418026 52982006 884056261 524377597 713628743 60965065 162469139 117410723 382230651 326306337 711376906 143302968 712771691 192971869 982494208 368935952 691298187 488717129 866485377 341105037 886394187 586501375 961083436 452508846 467543004 44386937 171010046 136047969 873082526 215813374 570708875 277751581 502812618 184120810 884655751 838809977 900644352 692995570 884522849 93809524 355306357 263355096 705958091 513317397 808194891 401297144 619998893 299299448 702919426 467410957 861089527 156094073 783559736 17988925 529411997 511129791 896923156 11353200 401197670 259506192 708212561 644370908 894875291 857466449 868774469 768927790 967461427 17958290 731109243 605998709 781877742 17276398 657764721 48203832 815067531 2261513 761491174 280321840 658829567 515551761 629467401 297998306 433289528 198906168 297365071 169947782 945184663 819590148 918337815 890038139 923336744 539092274 939444063 340998276 418082057 240497839 580922969 252643122 949658778 939028497 968077071 289052349 871751102 318772918 641174890 454098732 525710399 193829014 305482919 261695359 659261499 12757671 808754959 606029453 668716522 346777849 780981250 695007933 989864308 267879171 348651116 320745036 470169856 304128792 952758015 405532731 665560451 284588063 430118197 21217485 691298197 17006310 670593883 281455661 410822054 353153673 497979148 283756982 691860969 300805818 812661290 311566245 451147579 150450143 227772563 100745886 427497475 363581670 583532818 119258061 131502211 75575273 533380652 48430878 622809874 107071499 341179158 248669340 381892651 372427858 725937898 191740757 450730185 119252182 126625049 83176182 638057447 523382947 577592998 378663621 520911992 478361247 636226873 427899859 762530663 408144634 731537245 481157163 528806614 91572931 432715731 202550109 885739352 670510588 811753371 471550615 487598912 320667693 956663289 533135224 996157870 623796886 762988963 470125690 533682929 150672161 342920751 75485980 257714073 165627619 823019077 562501020 698396576 137844836 192641686 107424691 204967267 149201680 345377066 66324458 308608808 132738752 891308059 619540209 884924666 502065420 696636740 354327565 730212489 94923051 682039145 197414599 501194821 187296486 480105717 55471516 225798242 211645380 856108395 407674413 545156100 325212167 572057120 564547305 793313876 736238755 897115882 684895828 723107237 100130981 262195261 216359527 991392841 121197232 928747458 558938072 777710889 156460992 789645258 466821874 979289553 565473360 731140738 356199938 838513853 67635279 990947004 597422179 837148863 45449525 246306025 178220009 868842578 209532143 484560878 448312203 557699228 507325569 929679101 569754825 615418510 556961917 671033166 303412233 536936288 434514958 640018777 452944345 640546039 31967500 269207457 231382257 292710074 227048200 547307542 160474047 512709729 288834559 519068228 236619433 417628090 158172757 271379653 252148557 439249567 194599876 978461305 332892407 519253116 384153320 566618517 250917194 693293477 280956103 357854526 254080235 312208099 303962164 634175185 534480998 627152512 254847398 276713891 200562314 689766344 241111772 922644584 452193609 765512685 121409002 326973120 77651065 768691698 519411745 741593092 426358699 713419595 425981430 687205620 57468552 434172037 277090777 398423441 370669271 863055463 511796635 512383265 331358517 704916823 358724629 558553164 386679920 504925878 130731241 395789094 245178932 345721594 295396903 955543020 685806637 873175443 599564140 778613959 321748064 833636630 256006395 652853857 962792 184683850 120542810 832062483 50897266 984998682 684022641 807048499 619604077 651516764 514456384 850854064 144392264 164575282 54704816 914841722 67006675 830545968 304224662 939232122 200816386 730017325 247575727 543002725 69941590 457159559 266841801 286960498 263793972 878476892 659973690 781947750 66079829 159427857 40505988 743099137 382957141 469765816 315347957 781473890 1460594 274603007 80583582 264407042 237028002 834220866 647208593 678677269 395896194 909071485 13217078 824748820 611290993 638426595 75880480 262162698 241735558 642314106 211141127 973170595 542817083 549112632 150432139 527118861 424372884 744887114 449094908 534751990 257146187 874846521 580404512 641759596 131085775 368186922 931768 692356000 265179164 915858726 857237506 989804494 440546985 693662353 231368083 731222915 602313122 651394607 449037879 634081782 206740831 785062396 347691666 733753528 617036066 673070070 110944080 326030816 89749620 639659286 342960557 566106335 420193612 677488323 416250629 514825287 187795145 910601404 676066787 717867239 331400898 966409618 441078368 797387464 277838565 329013983 8088092 490962355 128193473 355322698 78167854 470569261 373202041 481290451 384259894 523751201 511265334 575703593 434551604 599535637 340920023 344844198 78848696 933450408 730669853 754030878 349985462 702295299 21492137 447889359 121281474 495677804 455611288 501790319 320843281 828118424 461478133 915987840 640020875 863376457 853106195 903554954 129175624 907756924 614435594 922689135 404671660 668489992 52096105 176568155 128933323 294480852 18275692 773926898 83320183 409070332 52851159 245581190 24616146 619617401 457624654 869438891 199529684 873591357 107076839 637504031 195210438 207034820 80283373 844750982 93807041 861478156 354070460 561376024 414393148 426079703 17046645 498224392 205370642 325008366 103314458 553555824 34366009 894308726 659700043 769054831 494350762 925228053 419763304 683365091 330585740 375777876 18940125 632198004 508537477 888405064 50801007 857380641 673570020 881347867 588345487 855168341 727455007 800039370 681320581 868283957 838193323 853662999 490057482 519727788 407418317 884721068 111744043 254042246 41807538 497217528 63551303 90566150 87099234 686969485 21617614 917037010 805318825 958159961 321266664 962271740 799967692 963535861 893605248 934927939 258112013 518708041 215455136 481530930 362474363 661915732 600247319 914234053 65859223 645824062 274757388 524122601 412130305 664513494 115469317 850397930 56817473 101342507 19336334 417444589 271921574 901525977 803729125 815989227 752470511 785576034 14223476 70819333 41421741 441877605 23112161 66496260 26002523 604944029 149555646 621975174 240203053 843100615 219206084 615829206 126873783 159951471 145808756 629416194 597990994 888635797 420241786 925865271 636352294 941783437 502377940 705115683 616121889 837710481 386640896 718166355 553060986 609503923 228126956 401142871 189188611 677653985 70934928 411673879 8789595 947332246 533903773 950917988 429516959 542461971 372686707 965253264 45333858 467252928 410741193 522487290 260499852 890457144 744135574 770158295 407553234 803789775 353132334 913591522 87595602 350561553 127971048 632262218 293528494 837228598 820755864 926940474 249498977 490705041 290771528 398259770 89471107 657547877 602387663 836669958 724667345 874251729 284932684 887367849 625371269 702484684 560202586 799822855 552553745 691245114 469489004 566884066 336102850 819499431 57164474 852655835 227049505 970732330 241698431 906927407 738621962 852475243 455423175 918221206 869849361 907778337 381913148 624364343 449693305 816267815 203694426 251829788 182131297 503694539 178603502 641389492 158606204 757389869 454448583 481622143 153105403 687094609 266794510 330524635 263354010 672252728 523367100 853836295 459705003 881384644 330912965 877285248 211261435 311503658 111772325 779411319 293967085 863112259 456834218 646487841 360340664 484360284 286553653 743524597 642293842 828353527 638372051 818967617 497067346 897105337 427715541 903365142 44153674 556640579 46770695 85975376 2116488 44697587 38668289 540268405 155257725 242124940 236783940 879825494 236520149 750315425 202905597 463521138 142080369 945256700 240167088 493446749 471179484 836558716 754451726 939857882 379780946 716836667 694888462 772985281 55976169 770472054 716740231 725232221 453229690 722508422 179574226 312158802 33707948 889319218 388210985 456324559 274499898 445637324 424547098 882192175 150419530 220484564 215291483 358189014 13982697 734361260 233208914 877856561 374183287 488086178 408955948 459384439 228375074 317714374 234758179 573469469 468798267 598593764 10243405 736919008 392700276 899179508 637816772 877942268 494606680 886721492 447902988 696087614 188285224 308686525 6222704 554248303 543692027 966593997 433649519 664734112 592562390 864471881 741790171 934642996 217069180 688033317 601090218 660424023 654411279 781757265 623215922 876697198 619388619 977344867 928792746 990253871 514737732 578796151 8668730 984208975 524456946 902657626 797978211 861676770 713241652 723199774 512076210 590902048 157708636 731898576 207284419 866970466 165163608 852138612 74036067 97265843 11545909 462970091 9928446 209177438 120668280 446560540 354156742 506561135 472875147 544155534 63568449 157603398 143175423 746001900 93244220 487311145 9529831 319813298 183458189 262519486 79004377 745037275 734957829 872136189 477332169 517213259 387446895 736070705 635787674 839423169 490194298 768318013 202171533 859784396 235700099 831349812 452669071 958650165 205939519 965400093 931549011 979998339 414760383 450206035 226548596 461371480 149595320 624515079 420623884 552707563 366818600 588244539 496401550 654529404 248302175 439710645 405227494 807171235 514297125 990727516 965818100 981969937 848166873 986230188 929757540 984202448 463664446 981345314 805613633 902048697 753499087 864380537 497110540 804776765 171145888 840156511 460679362 887305785 820213802 915490687 651039992 750601936 706456621 851613863 455617875 593619091 498658644 619491299 608696414 816917675 368573117 613816736 151107455 218076547 63634031 214914346 210245382 984667926 888694490 919231421 195382302 572002726 444147572 908537638 825200389 929217763 68641434 235263802 175840461 249904535 232063390 737545213 684947954 945758655 795563493 832868504 140621774 329557014 149536750 802001826 446084947 570054965 303000978 523401485 343539453 565092393 201227532 375758601 344077228 795412716 793165734 897484588 256031356 907663959 434959733 702538043 37481363 491584827 426244778 748036760 36956110 457267872 220545047 476822883 188888978 847171002 419792518 450701282 320023605 965206307 235806611 781357023 546773664 982931000 307174031 427038277 315253010 376937145 145834931 176228072 162864511 955043731 903155722 908018329 328658632 423526589 321311131 559772101 136884795 557836058 243690629 301754650 97988959 614095756 161299829 642986836 201108146 796243471 721062687 754445176 586640128 761334365 68668060 560450935 18128743 196920618 84800793 625396461 133994228 455011253 114806525 811913180 403217993 688208402 559574136 897455776 782468694 819733739 570417151 671623301 97726228 320929749 150378524 736190223 502198140 797868689 534193287 564953333 529150779 937270966 352745184 457119961 102268342 653173405 163078074 560799493 174961629 879462206 86362398 531293265 213879229 858771068 568779270 598977338 502883238 687181882 557497810 841081606 763923340 868238782 378519240 764326292 476323223 742759747 99101486 825265819 534387828 979319509 344749304 841589070 560770799 961343249 35301917 632239180 198975123 456874110 381242625 785916152 166193818 380366779 72368779 166185623 114648568 516095827 309612011 569361929 205637526 929549707 23111562 92174751 36009692 726499530 323832505 421832311 411545931 849671785 454804893 941388490 581242093 670454961 5403887 433819956 41081529 860559374 463841850 484630958 52760852 121245751 91454216 470720035 407874196 507387980 72546152 883513505 305248704 586091195 259639259 882894697 789307621 862889743 436885954 647117564 195248014 767203492 189061455 466189591 63886172 927534955 596695877 991397492 262866835 656745401 270749159 495637000 392460881 740474235 477461107 571572404 456395002 593029939 211925230 544037484 230759520 231895735 12778953 823069764 771142161 954082711 848614867 942634840 59030913 309326834 11559843 759509797 516861903 781762381 748936296 966424145 811985935 898387767 320668742 800962564 322752798 685968121 604731885 926128321 44662292 760804453 603761948 808720659 177727127 428140670 118966597 196947112 128528351 285667098 131572918 552805090 453027451 675277281 334080648 534102028 365513769 770474477 347945046 757793466 499100357 621533677 39381618 99607316 38001458 612609536 264032782 720431401 281493666 294994399 154593497 904847413 564527634 586028772 40938102 324295515 166092811 459467688 253584763 655261727 498314420 611431387 314762845 561165098 177101841 257890285 203516643 591410172 152034538 898600061 610942986 700564061 183412248 366002329 279406638 493787657 203273711 515962091 439723839 961014106 55309694 267412722 230816271 751613794 467167130 899180703 261432529 829808711 743383747 791928087 439519452 960248333 538350068 608074295 451728045 983551402 107818643 461303412 371218697 920877191 621695785 811228424 183761341 903433705 194382636 315322640 245268478 770283650 459075848 988239030 53789105 358689068 351982410 744023215 624783166 956418822 951817124 956354622 277222605 503697391 20266885 692403628 291570785 422565533 291237136 802792153 675275167 996390978 732550310 914716640 514026671 631712557 292399056 819023810 685496650 777293821 371510087 689927849 390715812 912535031 135615580 289152163 11463109 525132991 343074593 979123445 10279605 349515006 218011960 692321050 285067631 816418187 760007952 811213751 127967553 766597370 159376508 824452786 592247730 791117972 208830790 585723875 571155064 851867325 535574257 544217131 160760623 635321667 134794824 529120168 527853179 564636474 408290170 725615275 684425894 873015101 297691060 527703605 44730420 302939762 43871549 964826980 745374202 858764401 246341898 349395684 129997684 189246807 115951944 805078880 544296881 888409184 70998767 623647522 235780271 816162609 620726944 875729588 610273810 632614534 380344682 753578475 232007964 546950103 257100684 356913218 339945856 834412789 234942305 637108189 553471658 818326476 743107172 798310654 648760642 993680899 427704277 980211282 345037785 524713680 345992212 812816572 87753226 727077702 612747908 946521344 624796508 774688608 123178617 166268040 11383729 878468391 650209997 828847076 680579242 739561413 242398331 402512239 112274086 699759517 454705862 516278194 130074799 211052760 169108101 420469744 114017413 569920577 374422006 874741590 784905000 990310786 210320577 749178390 266044787 926096023 607940660 719418918 524439523 761468993 589158910 688874338 509895608 654601780 14356074 496225279 281563367 719409673 693016133 909616878 842698755 907076877 220087100 881505417 534848418 846490907 448234989 651045204 423733662 636738732 428889269 804709723 1744352 252519762 56625951 71085683 49149083 322425584 14189620 939486053 275676211 613475855 573390421 736153109 72717547 292668635 91896049 477520415 298020869 626174273 496311800 576471885 260601014 877979090 167032926 901387077 470039938 735862489 720855979 780449768 109273716 279850412 261013866 569695533 150717965 844501806 51183895 985574232 169688949 832946906 182742448 973528558 96629496 654046848 8720686 775329383 774604839 883113991 558342229 854454025 260901085 488063649 14087563 220860737 187549526 458293702 8261336 607893386 476840503 694454171 452681195 870265560 422316418 998448358 423217370 684519936 610687082 655345394 437073882 898341981 876304600 899343662 712039169 991876687 664698866 953583699 776928023 830640183 743928795 847291963 488925214 940312626 404447622 433262335 105468462 593733892 572697126 589612140 446524290 456389457 113951040 194932017 86567904 389951092 227789613 952004855 831927494 982178358 164010302 276582657 193502850 243471733 9337667 88010952 81873537 672126855 329105994 367734239 231885048 490702068 234462069 641015892 172202320 509577474 400928462 739765238 225682154 432986564 269301312 611698399 530197464 808379945 364619021 620809973 257036051 612865700 418982783 570292482 137203155 389966612 275956029 608996274 391034232 623573739 401546428 445947791 332276143 607606087 530269331 886106333 240450615 720799821 696130550 737299923 365221387 863108063 240527506 790937477 726220591 853519358 829219910 923878894 388754930 908516584 153019379 243337342 201874328 523512661 404871194 491478747 123001900 847502573 770001930 850832677 624955566 949423082 390835998 678492921 300168575 698628785 222523565 729428021 367895875 854896693 536944693 564332136 73711612 831234440 594437218 677608657 326790601 853429390 405344626 674216962 148911892 164928650 102854504 752766304 67283146 426233249 198254459 212443253 4537489 208244296 28440661 727185144 688448895 894961116 561382854 757245095 114750808 533249402 254177818 402645609 158329506 665503255 344179726 869381352 40151705 590911025 519497300 926195676 374069627 714917396 72312741 902281799 395736457 440767508 157155263 724745582 364713712 853064958 4528936 531553104 94071608 96420513 4220528 682931899 233673217 385527828 289241533 506770247 132652746 519522273 94600891 665499279 251849943 846016211 790711332 935159086 334067655 609429179 169206327 576431506 336756910 860807745 524307260 932095966 704269608 950497425 33744788 924576076 13906611 386501358 351833086 633058206 453744642 994355888 648890873 740042107 276514426 283281061 161442569 398059971 142531565 693212706 665219545 813391227 626747491 675741133 651729261 668997016 443356946 608081169 207243985 558062999 304492869 485847336 363209561 465875276 228124353 355630243 122055093 943904201 418514461 882486120 253336193 848216613 84367173 728998156 431576830 580087371 330349198 859249934 812475682 827887882 34065837 644033130 282816258 358925623 55167538 382393306 211630190 744815161 295145810 564081150 322328896 431563665 70367206 74782869 38875798 125268142 50268156 495605894 131374165 876095097 587919195 849453522 495286774 583332197 304148503 525592901 178576083 682134288 224239253 921843967 509760463 894253962 882362967 900732171 687320806 813882559 738971044 814331861 505889025 552383803 160455058 407194935 225433412 772142831 763287416 944865657 429205634 584377884 483131452 755668773 34735900 704256441 319749938 521452214 389426163 950249782 279635183 536235548 199453090 952714767 460693893 714683142 232249580 832979955 400864929 889479288 432772051 691303788 17612337 889644923 703961787 891659411 802417787 978077483 494292723 663713110 355837662 914745695 291776798 549810607 54770126 749137484 650815657 865331800 223608815 589551753 126122205 560158561 260023598 551881490 261009654 683998052 126626863 338581231 22233789 494379604 78662716 992520940 311643739 939359301 304690130 665692608 249237114 992464169 352807371 466509383 136499114 341050342 54399929 160724885 140436786 568932325 397120777 607261981 574697919 843341419 179639623 219208076 49703543 595140667 38544150 521970487 4851232 855579594 349300001 563426219 60369342 658954605 7263105 486805041 357378775 742338460 251466697 665256760 112475698 290388831 93329719 707235759 388689482 804735003 336520370 410780453 5218590 342812288 136001010 509899559 413016777 530496827 28781696 726550523 537003617 979203634 178506421 195211133 69591706 382465732 153491663 200197562 93898555 562146642 466024650 546309686 296710475 622915334 522878568 775025853 156402625 332809979 100358443 768765497 254048927 955436280 729590372 734317717 541067198 723637733 674061631 847764480 41006380 194713900 29458253 63898808 20122668 122895869 30819479 95908695 44361590 413015446 131262805 404565496 304389929 436266588 63661399 470825146 107543690 571908541 333497251 523624306 201166214 675981235 229199571 445140764 228000689 786594317 403256637 762694655 350698615 615185262 247113528 949208783 130353979 290537702 248600721 293079752 228067611 238437556 131556344 635623662 276773382 686612324 270064859 529218676 406548847 962305593 108487894 865991959 132543439 660244845 273409795 629150597 480777345 911229055 518570160 860339625 535235102 863295062 325119206 376083959 86509090 952764523 324169158 365991124 200063591 805793272 379115166 824538079 286073175 658616057 580012195 780359906 273533359 448296007 327819818 637325477 206953344 669074294 18265047 949906038 573482336 753921593 465650643 938602177 376374247 907018333 388250972 970298943 109337468 669894667 549474854 984180053 270202946 661814366 577229321 962902009 43723991 406017885 403129840 930001558 506605971 689418243 481631521 739094648 217131408 919343255 530387300 732379958 507072637 924860339 438931283 841622973 447956465 755440428 233761429 422020510 215975001 715394186 582147339 986532527 560506235 717816973 78341129 151324083 53202378 815651972 493055235 584691183 434133821 978635085 195035789 203346132 192601558 935279157 859783760 901203880 842698470 941951021 895683203 972619455 473995294 543129810 151427099 755727322 467975051 686694687 548571867 636272015 227897721 826076015 481577309 565357938 2953996 596730958 38261970 907508291 125822582 164638199 123731768 722321755 218088536 923768796 821677047 863889710 619744607 934130430 97814022 658342417 44904197 94996365 12268712 550165974 100397234 135792990 45711587 585650677 339696486 780393716 175947040 582897009 183742199 247938147 1249550 376226407 223406002 701914140 675173628 837342627 604200718 894202605 38692006 38911132 27364214 673174769 298103715 315796236 277751465 615627653 552978567 709185416 565312617 771702168 253235928 729661804 335968752 627348348 216116454 982240593 325580350 877900376 439279297 507654632 74885360 690624624 41479047 451585167 286736286 424247719 131515785 707771866 433667881 627407049 477134902 514220913 374662586 599677228 335142333 857805491 423332176 524808811 95137088 378092539 35922277 694486089 321695046 352545343 269094784 801344946 650904393 983647081 691361298 815589344 204466070 886485784 561069153 793832317 758692838 773746963 317548372 572198247 164872925 995700973 813535821 965028599 521671669 845612171 436400086 683314763 488257596 663626615 9714743 789222350 443464036 897508752 753306082 809392444 62348320 186191061 85668847 108272256 68287174 913125019 404217157 723726580 546432364 904143713 777760458 941361569 18546728 546834820 503761503 993290210 307296234 642665394 235120718 277489700 15305742 451819345 273040727 999772874 189717172 755299966 521145194 845267981 290297219 566167881 405910020 790329902 519059800 895573762 173790306 493684323 51065214 80917371 27713108 168222136 163796547 941326819 58691250 144409154 116995306 484413495 183111362 752528580 693533355 774483237 490497104 945048823 608656584 875215208 344258354 532029534 300968104 319912080 283663545 959107871 16734797 795039258 446219373 784111178 251876507 347131070 139623671 588081934 331106119 744977416 510530439 812367837 345727250 690801865 554480127 884689839 723241567 860302397 298104148 507443313 245028255 781494459 741494977 765041299 739149919 895292201 77229 318409073 112166446 577535751 495606964 620647120 125788038 614759091 563985745 899484425 547558247 877611017 580219155 601553387 128647467 960277418 847157886 948598026 41085025 351035705 321316770 839317214 683927224 889086277 66605169 448660767 313051933 399449385 272040597 876660435 786681431 991885359 159009169 950668713 592916151 966004271 247610407 441443095 42742659 345686953 21709383 406238150 358176892 628006418 62883782 610277736 477516027 710492665 233127728 620070585 195632467 827005130 752384442 858436502 494703562 685260991 276847791 998462272 433624698 434058938 249344252 882326520 725151088 816253678 117907860 481266010 17642396 187603507 30646666 663196265 42945224 197124920 155373831 922972195 827646241 871285106 225154118 876968833 270435999 561474376 218781982 278100250 106058139 437453831 227939623 559091947 309595938 514833610 428779995 900915294 357010204 839411755 476884820 781897889 96698657 317756626 279863770 576446008 547826304 918041206 764561375 948118300 232477742 832730044 567586398 988312222 911451242 918130477 558122772 627302961 129358218 187352774 143792762 994209835 504681699 980947547 2309789 643578919 32536403 596332159 192839164 354543436 338045477 468360066 240031913 567145392 145468245 571713269 193147553 497808720 199417699 674929068 159355115 859755224 534487531 679614117 473648379 686898557 303796003 481616358 54219883 118366726 115688914 240196257 57698194 688411004 169567274 690346681 615661363 875348161 301825638 870878668 788265790 850849326 704736791 722877431 108648941 755613113 92938825 171918508 132387426 674739454 496772112 923712596 379283929 667251846 487589079 645150494 97601981 317259823 234306013 320188397 37831086 715177002 39077671 737596062 21236580 406942522 299350721 496824024 229101530 563190632 66446975 195813089 80475218 176556381 22047071 792740333 260537036 445475332 278340915 652272072 568943362 674595581 347571818 474269807 262797055 575271898 157140446 612040165 367661363 797968902 444193553 445143960 233634965 379649019 296634068 346214268 326597405 665899738 638141173 988016250 633556108 926256389 161826374 356454702 177449081 588929288 402602376 720176903 149760421 598656227 524314288 803391752 487354345 905821439 212236717 696655543 499171622 787704161 503325352 677319907 126486856 542433538 482398188 643805205 530274269 580988063 118919826 214184500 205344749 309679236 45392899 486528137 417374603 911086181 549015861 705065780 568924755 943924472 11748620 25082976 7460138 33545034 6358594 481642966 407908023 535079179 83146165 863404107 401067222 725523264 595410613 693002878 439028001 733916547 196466711 796700343 281645260 405306706 395848343 802994295 128729752 480188226 260875451 569141818 460717812 666186832 496650511 557023184 258679920 454888410 184997346 567291388 71428440 315913879 156668347 181306238 14235879 738492154 447579598 692810974 96786846 190742877 115434058 617096149 439014322 578027473 24419829 122803863 116295104 831794801 334323594 889013470 392167132 655109847 157199678 475811242 410590308 800432803 311706483 442359558 173162327 562610252 544222688 932886723 758511906 818772695 124968728 619488145 144141929 335093075 88239390 154883228 119777792 492279131 490780931 494402998 104611762 823677408 247341783 257853093 253070971 904429484 73861440 776787270 196490438 934260999 569015176 865888360 408612561 612933853 581060812 913903284 17386033 578037890 444779616 793551702 446539763 719284295 351219071 870139194 431297943 940581039 649698980 881418181 415195705 973631100 561499475 861897612 733245887 825725082 38213985 164266986 30671415 356069582 182816751 483478216 397192508 649171756 331518296 599248056 25686568 362788778 12661109 561085998 286254532 459530406 413294854 493816358 93941197 629565144 352924566 676954266 663505702 717848555 397524895 441992411 401033048 477958363 160058752 439033837 176012706 228785407 19716229 502803896 9692121 304007309 31813889 967852572 242542007 500905307 164690667 345808498 345315209 915412325 182188497 925516672 260957892 876889605 75047662 447145942 208683012 821190831 742198969 918677268 83797582 378678623 225234563 272913868 259486222 951468255 774984787 875999595 474471639 479931545 443553602 729430231 131423993 566007275 241820445 986837008 512144944 549410654 461578323 765009793 746783015 961217357 895494562 992383406 488202057 742923496 464823116 789399266 384079208 539839766 26864612 351778927 303733947 882072805 138252391 327639495 278882306 358778054 150980001 459735325 179283511 476434567 377556396 999249733 931419302 937979911 331003410 873206745 710964061 813188516 653968663 867206715 375950437 686490978 245574323 503114610 455725301 972044393 538297168 721247109 156293134 689450541 419028086 894739637 19166407 842439036 113543096 425468037 343099263 844887281 655009065 991475003 451874254 643083595 394578736 763994631 549902155 662733756 29951678 755693174 655587038 934298886 480831654 590103799 163520611 864726667 604869303 837200394 473196015 774104863 526466182 606890047 122251505 156107996 103298427 379880932 293913446 704656040 165860798 208969974 106628920 988622082 430982147 513462937 418164008 834887541 220891413 794301916 760110577 820127750 533292794 540914879 24516586 547626017 234840328 329351797 137296971 280306200 69062092 234560363 22828519 776198877 426244515 718471228 152687658 920042128 426990180 786971431 105960204 189871653 26523978 199841887 163337146 664162447 431176889 594759278 238047868 569794118 487331709 653914807 249087984 991128868 468274007 829530117 668882085 915014743 780201270 974642616 836899391 994873452 433235000 712073830 94873708 625397068 122662481 836855694 526497643 639205813 532176434 625220345 49837352 359375868 293127191 622599651 186025778 916786902 476584358 661968228 364831531 953789822 151310927 236123674 5245205 90661961 51291473 648118622 547314192 957461256 844816111 885178682 662001856 870672433 558270387 715071759 657015765 782974067 311794005 708799761 24021849 141355097 85504417 565684364 546501213 689194793 550627010 721978116 329104067 826517902 470536085 872474994 414040179 722874792 310728102 666464564 159968277 848864384 507860936 813743493 544344405 912579715 129950220 260457380 141401774 245017056 149179622 447364556 424423097 972946456 548235302 600293909 84676776 996486684 796273727 825162435 127590005 909184874 581597670 864059659 402554554 525254743 507132287 639301095 370485810 997327011 595808690 756487241 334825893 390994869 315663234 504703382 204298427 714069825 178493916 331740267 250773075 690394564 186827284 773066203 446583844 703458226 332253774 592198754 360013237 756866697 452164180 869062400 710663921 754197874 283188374 997442427 236260713 780838494 652921547 772113274 248759585 787078836 263696264 518392478 56399019 160830903 22641445 96585882 14693761 344428383 264869840 683309877 12781115 490037108 397619959 654372017 46072446 148237424 60576370 748016397 289847135 582992519 64512481 444217481 98156019 908835570 628636555 741459636 500094093 883664621 673165473 983941467 333131149 635719891 117072953 544147286 314226208 348902353 32642519 324814734 140687414 623643766 64905314 256843515 136442998 178975203 62106817 882970133 639341232 808082457 336116841 682208931 620458232 765162042 628893349 943176077 120939111 270854323 102062033 425297257 315957092 985331622 842279890 899313260 219252043 528298798 111553732 318649740 246835588 285567893 163726535 543839108 223984543 382019196 283893155 864464190 121886153 637946216 435943922 492437841 322709935 583249806 571682346 991028599 245017616 668020871 23503910 656592825 229792977 484377775 86701236 429395217 151151001 922776273 548702463 652175872 141808720 814451460 444825128 529447330 314704621 387164168 225748682 612735295 18812583 554648787 264943679 545732006 204700106 858304264 822991962 887165146 698580715 921442621 384146437 512427121 129025340 616607885 397114522 420006540 99815871 298149537 121697838 208766929 65830747 703797168 173064442 880998980 169448147 839486264 641810980 685286141 676416855 969542248 681832581 776747097 40776003 716090599 206033740 650006281 647960950 898757094 812230807 947338075 485266908 596901472 496754644 949398622 722366589 748803121 60795004 510121845 391032902 472430066 410875486 610254050 278720641 484287449 184756075 907792773 110373547 893295151 850786352 940782959 653766718 710219862 555665262 970402234 713752517 735719907 623584676 951496856 348453356 533902696 1124909 924439627 592818869 807077076 479936746 947167034 275318384 947807097 555453041 565103248 283209410 406825088 366619829 466354150 338396050 879661178 276648627 987590824 58996864 403399206 327727257 597141492 532892404 608097160 199127852 716650987 35901287 348177827 224334438 840593619 540603498 656129917 81003628 818847603 423738888 550235841 102893271 507755485 191267369 788606396 503992951 858141315 335846594 552234234 327365096 373552036 16279302 524642487 182579012 355078075 162884301 746120519 607551217 774584871 684409318 987511641 962452896 981616656 855760138 866841002 114759883 623114466 473768507 484744126 187594707 929580366 690371886 818710360 796253791 901982505 540011759 919968936 424143281 456112499 179080258 585693508 562962795 571146591 226547503 971830401 696619474 835277726 504594630 640444229 196959333 539196992 496559888 860266050 105327110 530262923 187065679 237488079 172756555 723393879 133109653 193310913 182469629 291637100 276722637 754744378 491013513 814303683 434895217 797287929 551983025 850790110 122325975 364568290 67561225 102163050 28716335 873151069 511085913 799623216 428430987 612699782 189208458 903367459 355209927 905913083 175514261 524192566 390773090 620051284 557141241 581695258 538944432 919731366 9956044 118898009 22026859 318355312 25992607 78921151 46542808 809761166 76504674 573498677 486097283 869875969 40632520 683606259 602769017 998943083 222224392 724802799 629274183 908866061 81158205 106669126 132525 749871544 513629949 520298459 372415664 872113788 839811643 916268861 885160042 939226879 102961508 867845635 9383021 108150899 37473481 402800590 101269008 369677061 2358290 187976108 120749487 908533863 1252238 653202358 312696068 495107233 472443990 593123969 257661761 275796496 237244022 610617814 343758258 465197489 7462836 782805096 67066706 507402934 315126313 837401335 22224549 622389740 300738132 790719670 554211858 974857225 634617020 764351848 640824389 698023055 80907506 668356260 131420334 279391389 29712921 228892208 50083163 944860673 382404574 563752932 98384561 176550142 136659771 394995135 188586996 262520072 89855423 900921449 203119642 547806997 104559889 418061856 174922884 238006672 15757213 436034753 27278056 358863182 146591996 527769828 491715840 733891935 641210860 904171187 832341604 943753937 63345462 702312300 477252282 903992391 324107586 543355171 477187840 642179438 389820118 867273263 477773957 734505586 255007455 876937681 232084401 428988987 406038458 731022898 556171434 601083234 55279284 386093966 330620188 404981137 232864248 345338697 200372754 683995916 303472629 861183039 234281460 280673745 81866983 824487486 454474718 883631404 453345742 909756614 52388235 882880902 377344716 521852208 510504565 756974682 332031554 669477838 455691399 801328778 795348765 825924550 259710098 343574597 4147728 372520182 22661381 983814139 22157370 734756387 171036569 248275801 35243694 608131420 133024608 198469070 98610455 770757896 617066685 661704048 172845527 905181198 767205427 849266187 450829695 850552628 417734154 856375840 706676531 782359972 18890185 320759737 109879440 220853894 199712057 487417972 158866690 608349246 95718417 723191629 629158613 956093934 929217842 944072067 167203479 172618842 113299354 827317078 535147986 899891119 7016807 354896101 59966305 156259260 19370541 231572201 39806121 369599891 292732481 968149607 738593886 945845713 304756735 883753675 347558142 391526412 42629726 690929027 438918234 814612579 217018040 876786151 10083382 516107483 63703148 907226877 411115370 663712314 572834091 972184244 324494175 656032742 103520984 436372009 312638777 420213412 246643987 643790354 580427369 633637564 556819827 621035706 597573784 983733316 773686997 873056335 553197267 616921981 387852262 440812347 58340276 112642330 82858401 405013088 184650614 938748145 553705950 740866880 358392845 900945876 323695378 419366816 137455764 601750419 410857350 931709336 253825564 868250282 571754043 687425068 548822497 951523117 530685086 984208323 67270141 737367171 694362952 724039656 55922741 418192087 337425646 910522936 722570112 976778468 661986286 800782165 473843000 668333513 24750793 873583560 226347112 235281155 61488129 447152215 272800793 553290949 334182151 806929719 713496790 965663293 873995306 977072760 485575320 592773526 216881254 956197229 481444787 913497801 552442401 686076774 57217904 653760137 361470813 517102403 264589146 364518722 219624191 831999474 122477343 773158230 619346250 922014234 445728148 446006183 388228400 545339853 493291224 614388000 405113936 700117866 14805300 177220463 39546903 698877520 545644787 959831410 530187324 712520733 54572530 989297260 408304830 855260183 180653989 643448626 548820876 910483487 345408666 863155747 649200001 711634334 44308684 674138172 263169637 640128465 557604177 588858965 409459313 720814198 446350236 701061910 134098517 910333426 460614393 787528885 80591458 434566346 46332892 330930977 78785453 916053458 208930760 914779740 664807738 892190251 807231996 836430617 538247154 995398620 61356741 808749549 218783053 843964648 666095705 940070553 918570224 950232030 124929028 145803331 50818598 473144263 387651751 775300051 125730224 694584287 441101307 594913510 147872928 230652979 169837089 958880016 302569148 347339884 25585594 717031981 696151535 723923324 595562961 742651977 181612556 490056995 168933873 390992075 167843683 715318922 205367430 929869506 858554254 898804613 270634150 508066820 341458692 641985527 475044121 762838222 1341673 854111388 153456647 245417976 108862730 264926317 172933154 779434990 238598313 603592650 387890512 783983784 273609611 531118689 194229802 445823954 13100747 378926207 300021155 535706953 388691511 896260971 460760088 614207058 243931733 252107862 108366551 246872710 45110943 556018651 55672720 322710221 61102597 478773869 349394010 781176644 471775260 653189833 627558402 814001516 497020104 961172276 464424635 871302723 550601673 995463485 836598880 990327274 303049179 446137425 168171451 679239784 475521553 526053928 248443068 584335013 343863764 566802352 442118373 614265357 56778883 336277840 332297918 642714435 63104231 596062351 410473859 466826743 344452842 423845551 17233202 202597428 92866634 693971228 85483214 945446142 818076310 980133894 542857839 571189611 182247441 933518861 702537246 858333942 504899031 780989783 699219673 943979527 536813881 639498028 57207429 291439515 245660591 966131132 623064401 776172866 359043148 981331128 853985605 871850536 717124582 953043635 303986102 442390473 37123900 499366532 271594947 414375539 94419256 891776179 271221139 342703409 60365452 976194031 422679022 700824977 71757362 691854742 392840621 887215022 272804763 403504326 83762138 405288076 376222354 871992184 147153419 271442890 128351726 659816320 227025061 724966411 453373851 876137270 149696273 705189227 118101340 494415869 173745636 420066310 397740915 609406575 104912690 820596784 166662067 773607742 454088706 822973153 243445897 924926211 500875063 947596419 871627331 984976196 834096992 906499448 69021630 230980928 51081293 766829899 166553461 884689220 630252705 786022477 581700665 588962251 292741880 697140035 104137243 707271110 611102831 681203320 138024457 703984496 296264473 747773354 597101241 753865696 611599347 805691350 669643363 679728654 72380244 403058899 335811794 420547689 127409995 815030258 307610016 823222116 62253069 181141268 116760628 653823426 253569620 642955839 603560756 862516308 109784390 303055543 152486704 792214991 276291721 698646448 333715926 419161457 373840834 917648036 320111542 694228140 369601924 668721030 304501051 923997681 55380086 187134329 147470194 406123968 20649858 496543632 117510122 624543969 126579259 852484995 18442418 720541990 682216841 932525411 105040495 306429473 136678181 451543665 116676875 804019837 417602593 535323878 397947445 889469789 102634445 232317201 6916178 836371630 515594054 880755814 446304359 555845715 525302260 690790438 118846000 891572597 44199878 115327257 21470982 800948775 138672904 599689203 418805966 635328509 479974357 549862197 414529296 566869789 512057726 602722448 151172174 170524750 82625695 267179092 263552243 266487548 5526436 856297281 60634981 662223439 321221764 750040598 315322875 557418162 337254891 690181128 386930484 923905604 398994248 765367888 197820257 581749774 275462496 447154912 25271209 707368674 255401124 950580824 333131979 802575072 710829860 779574312 193292046 398484372 49485625 211811735 203657675 898305336 157863671 804715386 306614020 581848332 246182876 620289150 407909820 575292466 487489262 900655368 889599562 921684907 504682382 579576186 167075590 352290437 82221077 840236766 215553535 419980105 79283604 193788199 46477236 995962710 976093233 984499887 834849257 978324232 742955591 949197218 757985187 803861335 290351006 636855161 84306232 447886644 403125481 885119240 223214205 441513087 126577852 760772500 275713974 962648875 310968706 564117009 238134717 324179374 283059929 786362317 219733313 349910581 118460448 334186054 123272878 968959243 963474399 969996689 903248216 973789307 175459524 763660589 510382881 827086304 232581201 703193123 69237793 103583308 88161848 503499261 120202048 960652008 728715582 928521175 73229581 634965279 269741278 661517493 336388349 924489857 440390055 720234449 2805840 788635744 322390545 739883338 116755987 472066950 280038948 535757472 147605480 173357160 172668219 209817098 127318337 465920489 462159819 721468282 564239469 899083176 336886408 892397251 427813707 584765943 464379625 772815127 80953921 381904886 150283399 340226019 261859994 725734358 178202751 436911084 203606600 701833267 397911558 416201219 394787744 868157626 426002326 726346898 506970 492252818 389309752 857551020 365423559 751316856 634770 352933002 209520109 724863489 544699810 629916128 63968008 715452796 343440046 466515792 212043658 667160328 663527239 836117082 773093870 794167747 437325416 525557183 330522718 925130377 648727070 898048796 870975711 967917753 87607571 139545273 26556310 835011449 215756216 780921443 481534246 696554930 321319573 442494257 165112727 310704071 157901464 978046575 608512975 919884122 3707867 489809485 211183239 722475250 378855205 574005232 153751109 627140390 479798251 670048728 559327456 770815166 639968477 882104706 227315327 969224638 359571772 747147489 304759923 456141318 329527451 405832280 216328488 546701948 253579482 862903182 703970797 780810970 278663700 815158480 306765549 492937663 234370089 569871166 349161724 535484513 180789111 507512250 169441402 607375294 158772473 731210588 86389164 220820224 93657105 533890621 100895581 842597662 2565555 304348015 214578250 820589784 171134714 493425224 23665270 445986121 438441776 496861320 17694258 517168407 1984377 240881161 203671636 299309125 172521799 798976850 343467977 431938814 147896545 314283457 243486747 555933093 172650905 454217462 31014488 260114930 123673518 210887167 70335840 149219360 31454367 234920719 62015745 289318237 264755980 448759115 427839955 849370585 589464397 845352006 555367323 599169206 279717387 284345886 223158528 957598457 53685517 765191357 18331785 647765949 96250610 235436076 136411637 588170816 105612756 181834188 71422813 578055316 410257837 961923896 608262047 685949282 398200705 544696131 110867319 229402624 227912794 423019627 313869530 681420424 457379230 571776156 538936858 893587637 181964062 504965987 384155305 854606660 844407140 851518017 683051766 984799158 933504180 978723408 588018643 951696146 523705165 823917567 651683146 798117055 660171575 699264578 29173615 688645926 621018523 886770020 874848234 958773063 917395535 963743329 912564255 941025946 112893052 181386950 115471419 515097460 252642279 915608756 562373701 760519852 393746365 999341429 309811733 919147253 129648668 403809598 362700321 709502305 98856644 408917546 106289126 752398363 244263937 655088675 41300741 142199647 122126622 811659414 795340907 894110461 23261748 755428187 445955305 549293257 265475324 611027943 336741881 711175314 296269831 509686293 412280476 647450466 388018677 484448696 27293546 406407531 157009722 415074037 382183223 871671187 484074312 769933152 655274970 767697718 574778466 900809490 216942192 566610607 296608120 738913401 599459995 702755561 522247391 560629545 500607964 968346808 616490382 864272588 141894610 780307113 53486096 471444864 111425784 665608879 611385655 719613137 515294940 829859759 385487540 740046833 209232903 309189937 199189243 638310420 83403439 946612437 244282218 899722035 46069340 943595557 453115505 703225370 149005793 711845321 655420038 756754258 542560642 672360811 659852979 887425379 502267173 766968385 204401145 412827113 110839368 862214266 101758588 189686694 53140875 928582546 64717322 781616161 659118648 886265581 153801036 826028513 162298152 628742507 617210503 763209762 107992718 214516098 175376191 417221570 375417519 786973579 152653511 289102178 281192307 832846335 27392260 293087796 230688075 310119523 305688205 421058418 199616371 218909534 155977545 557423520 467250436 812804015 110889636 769259949 301539696 440177010 91928624 728200793 523880064 607171453 145858661 177307900 84818420 469917891 400194498 990120982 337510720 700201055 322672134 748951126 520478036 947365630 494918419 844648029 672165233 852622695 622423792 755521788 183605869 321991226 265884367 474833862 54029872 881546639 37390287 333617724 179067467 828852249 181259795 763563846 531210255 876100892 843359269 866948399 681536601 846002481 831781925 852700679 214737322 659335178 547770816 732924383 204600684 370449779 98440825 204308343 9027567 126737282 125252423 188308866 111518610 620228065 18000285 66892690 35632426 822514840 390331559 932292982 441838464 761467469 581649443 944074019 235724735 682833354 621805555 808001204 260782819 676470811 337705980 780257965 161800648 717205215 658825466 684872539 149355036 656721876 587966813 596216441 219666536 289274439 67072429 427686942 410903589 938868337 448413415 723561521 163443334 928848994 672352919 842986810 480797896 563490668 256624775 343526391 312575446 462385315 123100548 859649033 76741758 432983491 5471032 138342597 112468149 511288353 371980290 991762836 214842781 850138630 51653706 549813913 243800477 830921786 83067473 584299569 356771660 760197163 417451152 599204370 160053404 376745984 235763449 558546020 207740587 551225772 304056944 346446951 36607384 924202992 337112537 807545430 783651158 827452228 465606274 509442339 450529610 799185737 5690959 316082752 254549394 985246469 942431109 947863259 829206593 984848128 64325917 564190156 45614191 860318958 558186885 753527029 317282651 746627121 451101960 768978525 375051653 985979814 463696173 921324670 46716840 934922527 823199874 983768778 720536679 841316013 396581480 836880893 785713843 885795025 864946915 946657413 931474610 994187595 784549957 820515348 716462566 853994643 124258434 914408690 110549677 430087365 127942929 605395187 368301446 777397768 760464330 862246506 689297008 782968751 573401931 742679643 386144137 570935531 315010119 618521613 327885758 796187178 343380578 585809652 248937588 991789819 121464518 674005720 123763739 521858090 315035066 413847494 399991149 976556510 800538205 836535910 494734245 594380095 406542184 877548788 114317553 337861252 320576990 442886374 10353392 736072326 501946679 896993367 768370419 910432161 425419761 749303257 8106896 281278515 165689088 340642158 299911827 685839551 33963224 95968236 72024978 676686437 624952634 701019216 446432083 447269320 435391055 535845253 395341696 603576911 136962265 732534793 691266334 827481177 144871146 295350569 7470354 582610775 224453601 331128266 322286848 668393642 190996490 401679796 164279823 507870262 247905728 498604583 183345996 619769579 597651372 708588838 606778274 688938401 491536079 692483463 332767868 761932894 606440962 835366436 77422046 499700670 438890495 641976992 527069980 916484700 370163088 599992590 52544931 929952788 415010349 879663907 554567336 847489092 584466704 775973637 615115974 708040540 531077189 623868505 364340205 966859833 552795158 861803978 414624346 899895740 45462720 72212047 6517995 586417762 108353546 882559267 224376344 996874784 796849673 968348000 242298057 321547185 270324431 401428639 160103056 525787849 507843764 667720284 478422441 527587313 492034847 598820221 365085270 856529847 46180160 451217415 237939619 966774316 542900855 858662475 554338292 654590957 573892309 922131367 39466746 894931162 271243061 469877690 363793267 808984008 244085961 537110187 63484876 682671247 593638733 649094888 207502149 871983051 627456492 982582278 447312144 648558168 483706869 508364199 89061930 431573791 225866461 810996969 90772864 308093059 132658054 395648464 10747019 161903706 33226079 439292584 110282356 980625710 948099846 982023702 545823050 662639690 226369453 971761742 182933493 972216380 876278547 964757319 330717640 721291196 231146485 719296515 536361617 876879920 286376464 446184624 115812053 640439067 2827607 197328478 25445301 181602656 52454018 193549526 62306671 493184800 133362306 653082798 181219888 651003230 409789721 604770702 487042290 533232945 103456747 304320058 92290040 821318653 322765915 813956632 151585279 453861108 95281660 253728185 210225664 409100705 242089632 979000923 194552753 943349007 604031389 755735846 563094040 964129509 899039861 979645871 513891274 529420291 327452910 653095222 393173200 968385151 494912213 811750413 88780630 792196586 430146420 643092824 13650441 644496627 56593795 561729037 319980542 473469410 238007482 367106041 210089643 530060280 192283501 455984947 400924830 669579341 662361797 680605395 368287478 565177998 210950023 748294457 271495483 281676389 30704423 794065234 29219225 936113458 440948673 977962777 826175878 981892071 856118849 868591483 486390991 689728843 122200355 630670073 24442970 50677762 26168997 701567845 238782732 454532457 4077757 816130470 547052603 598462450 332628990 946735817 620302136 799797122 298523693 558387794 462357409 905319801 92892595 522762736 58688021 597030534 263833668 733192117 21629767 156236966 154152408 279061434 139012736 371391405 251295628 253540230 141885704 613031383 346115502 933981512 320183112 436660484 413882645 575341653 407333344 545301530 318574868 567893167 10379255 684091580 22907358 955929772 422951529 868578231 430802141 862602283 733907143 939119678 754699835 775901647 761248931 838623959 4621543 231204399 159452738 273339498 200271173 662219069 152505153 615030054 391469917 471156180 68085742 117131632 40436986 283411652 231041594 591084173 566439929 633029895 393934396 782285196 143103622 757618599 554823191 793234656 378586562 437591385 78695586 514220512 282228765 591909710 158186244 187982855 119872652 782234248 400178477 587161652 541633156 956608410 342076315 825324384 695833797 888897793 789202497 920308381 290898276 723225581 183633541 630539987 531727082 753704630 43539705 484740149 274071468 434089514 81214331 878604275 322939313 468490585 145294125 723051036 683204740 930522020 834058644 838359578 11452556 14586781 3523075 980938837 372561678 883954997 480735533 771817375 170834858 664663819 473845827 774884151 688479529 864032249 558009469 648493311 566575601 979178170 298876871 332250021 286081448 307537198 255448232 382032630 100636305 761141713 663953450 687921456 541813479 689621368 475417271 521571687 459487397 732021645 84581791 461045206 136027338 279027342 221826551 701432408 130467667 786352972 330789509 878261370 29160561 758462392 693219021 917206867 592333608 661083591 310435536 314952190 258918360 589397917 334533351 646809245 483828948 955423867 850570302 947672989 539449418 547401721 6236144 361722331 300784280 377938386 153619930 213543720 190204013 294213651 10310021 680667924 45314055 281334303 220395529 627814185 147100858 882021123 521532883 675121192 601133048 812358485 174290707 789258993 687652173 943114282 186334783 289208659 101383944 405923343 339451553 351195356 196354180 977413410 356084654 382533284 229969053 442489003 135898849 956871720 523805940 991929419 632502993 921664131 61689311 991791824 186091000 767696114 48315437 896235959 370918354 749129254 741308711 800837273 540793674 834108787 220867360 963846137 934566398 947936343 515920936 875649328 394154157 567230286 457797364 968359448 317551086 968171086 44290367 203753440 610045 809848954 216563931 304472408 45758925 581083854 291399186 650546137 351993681 913504755 299440582 917991716 549543594 717322635 456198214 782874744 713230732 751133831 621438899 789475322 144061079 995214392 260254779 699169575 691313896 919170629 512843445 957159882 620447846 957606468 487445805 550425878 239983372 591217054 483518538 891532423 816740604 926646423 402782028 853129431 583240558 964691818 302578419 563899008 100936423 819857554 160952563 855436715 753186247 972868198 536972166 859872956 413666026 676711374 25487248 223027568 209727682 819882334 728718018 802776008 393520216 456830573 257124589 489548751 266515642 811213076 705736399 988801946 856885953 875889604 210507242 263693015 207917362 977530472 26387267 717661542 675711398 865885698 199946622 501312625 344990801 596900409 185186297 757618779 108321298 629211374 208611950 468215374 317601353 871017165 348293495 524563983 261256924 907411103 264649273 840762619 162965761 524328153 163988314 266144963 54927686 300227696 212828235 713175842 525715014 593791227 5364318 787761254 42309862 483796226 291640142 743508804 204913205 412329102 129149880 461092301 331823889 885913412 59184752 573617499 233683069 796866388 742134140 896034274 521226615 933860051 21582096 498288940 108138214 163429851 20302434 290292280 265998866 352366697 99522630 897155908 883792173 953248967 274868177 656153361 77131222 554683994 105056980 823465234 772930516 883780566 673289995 736819679 576958057 580325655 473404131 806521080 3849525 853498447 790642842 856444015 449240252 835533507 683884527 720866350 116756957 156862311 74726097 462017600 418478466 477076162 194769273 890764118 273883645 610758435 556324406 930011229 153238640 265271412 84770742 451464073 432994007 484881759 394392824 519266226 214406424 427069954 282969161 367210185 236864792 799159558 240079131 936197035 677212165 984661392 494325512 779410064 171102521 784051050 39976884 145026215 54429351 288581572 95351603 839888584 294973059 669411944 230125913 735081591 386901602 436260109 411514879 731615003 678775818 734416945 678079271 878204757 271171697 452836753 25234774 525301753 207008682 544040067 118448402 688697466 278033056 575518617 283359877 329819028 6602770 393797423 227614010 659856129 242913765 865831975 109696860 577858378 12977042 307691064 194630075 492480981 460743244 811262907 222440757 922501454 363788686 713780658 298195035 671240215 595376550 814290096 271008062 831631784 617954129 785297057 200936204 370220622 221819530 947504337 553008602 890160670 533508263 893292265 376641502 508203848 312253742 345714586 286221949 452833759 117676067 628771288 394406805 459886183 69076928 254727520 106715925 779087526 127611625 912625264 569633654 812389759 186196938 905306765 653110119 844952123 454590998 978877596 602933159 970376799 792308881 859965699 555500035 689262355 632215561 873514022 263388828 289484037 125855218 288336943 210289799 224255462 44745775 947350108 21140031 231536775 134342699 379546194 290769738 548641592 531720094 844373942 543295063 847791911 243116612 486062169 443492050 550466730 155287329 762767774 396695883 626829158 481328477 766126313 512402144 574733734 348811515 472205017 45400380 463822467 462950978 737471939 687363567 779625743 130407716 177567968 40823621 777257975 35862667 96403299 23624107 368598468 185899921 473221098 304649646 850856607 295394500 719251095 80031131 991756779 564500597 725333118 588864233 642150560 500430272 926760564 837117009 883226279 422841718 589542654 131611877 889673228 290757834 295445596 46265591 542789385 519452163 925577372 459813460 685340598 590626309 781397261 572470931 687166283 437657318 721128793 672294040 737011192 231409288 875195768 181442975 548456888 43204812 548655602 476384449 498090372 402749666 988370091 214872019 680236259 15165786 701378448 287861395 487139213 314060950 843643787 133777415 358883373 9599827 242173732 8353534 773132494 742814346 943650883 898706814 915620713 120047572 886706340 323478741 902490089 290547040 935603977 681371227 815131990 165871366 953137745 15086324 418732620 12270309 334299026 92352046 328046983 40295897 966837894 452310935 952161362 607006336 626307732 309533501 330012665 254086636 629205668 285968974 849566185 474705079 885005550 846865953 881628949 330818535 451708037 436354241 518924721 443103876 684691849 567115922 666626073 522110826 653453792 232380090 458335978 394748405 524243538 228785025 240010612 116144131 537318430 366678087 429614095 278438453 925422628 747946617 808283749 433937815 818579231 161217891 371717842 329627923 880723897 25613370 851132376 656785114 666885307 540810682 738373714 602355610 724234417 336281741 737372412 256107898 612892638 188356051 896790465 380770422 617363861 216045826 512294198 14245492 157313965 13835901 181371763 5677913 890356127 834435881 838455534 771836954 784744783 563874756 863354687 107826174 975648399 484064837 567171175 136862914 559249473 490705887 625390326 209452848 753784546 740749294 835670774 456269308 702243458 128168299 861526650 835851321 885081052 306679694 465303702 65719443 508280721 26157875 392736571 112945107 146287345 9205547 525889370 193611978 816244926 700608432 826120910 602877823 688222112 401272537 915792139 782865895 922131047 318803630 714030443 423945442 527346218 136707602 655491194 9002521 607505081 430676993 580199935 262823902 416830869 251183578 836557602 160144968 739800201 144282794 972993437 640076375 722934514 546563803 899779287 390089730 626985762 32154466 961941140 649735850 810579248 703698439 934931530 909028096 929108935 155682346 208124768 48825864 107192222 70663744 405141284 103355224 613206494 248013573 281947036 154892893 885284682 285921440 869872918 681893361 735865988 281132284 574866658 11505859 989127594 961844770 983151723 590656376 911037715 798786826 936951703 809714854 990111442 85554443 161080120 136416739 950543506 841880212 993728419 664245994 737303362 333726066 640362496 231421562 470662565 93228930 499664238 362850415 654483122 109301919 109558107 69390244 849598162 386718705 486662127 389103297 442503591 169984707 974638108 533294653 580819297 530474813 837362463 645039313 708600946 691657521 904954526 584785198 866294571 338499092 560787652 448534288 894184552 480520783 562339368 322890431 477108133 173794906 468467449 350459991 654477110 131336365 399593946 11934754 319350773 191448480 230219584 154391839 179609502 22771519 645134065 334724963 962600316 226063508 263734219 242946418 918664236 392046950 678420777 659793371 882045633 616064788 692840197 677590304 693081116 307330239 596962438 125465798 377353622 201193422 329397275 80322633 577420763 399894074 933956794 652395996 927508103 615876793 974491267 370964915 557667693 417215574 868170529 273553225 661453466 253430629 757904273 437463739 509557788 152543258 424557724 415173272 711262326 429540452 582869079 38966868 715926451 114355456 690593895 375439137 443246663 46187396 510495290 319720419 497520491 301963805 735988742 540670705 766272647 121793047 790952067 62600572 577344755 208856721 703872602 636511312 828231118 249264873 456150530 372212680 781335744 63590792 192927208 43967689 869298472 333317192 454295443 98000009 833631869 210230095 897628391 46532233 182661382 165113128 320874157 115198399 780164232 732208456 851638932 130091788 824448325 128809391 431886512 227090901 988015121 384926704 886042295 231271583 682596207 397137810 928835670 103381007 764727891 414900531 672200042 326750826 677183927 329235257 483649730 460179590 778795223 486053942 531842583 279713228 425156482 168833708 449333989 43854704 345552597 239233701 348248707 151149391 466324328 188717154 772556898 548280150 935507514 87686143 872206978 409288324 713555209 17837657 301083509 82326668 690830251 12883370 91659398 11348306 436871543 308236835 839583010 771690162 985995981 29359831 998149968 633918130 847728712 240172924 706330823 448501247 916980538 534374910 910161166 509001329 738279417 41452078 368795297 338265264 527612723 83601020 553579341 413765272 565248385 526364770 880128486 333749676 771728774 764680482 876047444 177555466 757442668 474587353 750390228 165085144 567604503 213666896 481458975 129695296 414387152 52836729 687113972 216346820 792909152 378019109 534738189 512710249 716787241 604050553 627050453 126404778 292354428 284765349 358764925 287029132 409401412 393032247 989336741 359076523 879489341 199704849 371238591 1976674 493353994 49943544 177253704 38277110 207026488 36979280 382213827 29041309 391733760 270360086 556187356 429664322 581909244 198419232 809835699 541360370 824823142 154405038 556231451 210486621 853973194 806354357 845329474 296122495 768717360 91693140 232992280 112613884 127066174 115575707 844993351 181430473 302924054 227443514 291338467 199168894 343415850 57265272 703377399 357180044 724582232 54672447 537468407 501275621 648604018 578067584 704901167 229060846 284450242 264607779 862205450 474467967 517522425 71826400 300886422 189614237 236051980 67145516 600208439 570396045 699336422 621505550 686257013 330210076 812066403 113896294 371429243 16625451 443979314 334385764 534578008 29987270 813573393 303100293 762591126 129241918 421717226 69995714 618275623 257237273 590702517 387403533 476108862 441664510 727337470 593635917 887397467 21895277 987006228 578590114 976629549 817906818 993091099 477388534 968226941 428408786 906718785 295869114 326244399 234416241 997506849 1595918 260166324 254447928 551738526 457203479 819334002 503134782 984441218 672961022 964062004 957243336 995320322 327297599 955393624 288253600 745579371 394333550 752713432 613752072 999281496 634042618 957921837 833333470 871485822 799451999 947726904 809254268 832878806 118223248 854541966 55554715 365430050 276702285 385646400 168162411 812138362 353018077 548144206 466188630 657281240 312767892 977492275 243850013 823234560 764730818 951175333 301405306 511529140 117157930 128047620 66987319 738066323 622268910 757169387 616104878 864054697 100324739 653543264 339352494 382449279 324872710 428367177 57475458 197849887 61318454 964224333 488697602 631242201 162287759 348720456 147246840 558936374 144720134 750599197 219062416 780021064 34887374 510559591 410859925 686098582 263923905 943104552 588032526 776385335 445740398 534990982 457284559 558887026 122091416 716325325 609288405 730554630 64992211 107087164 11672054 481404930 192344553 347490216 138086509 578385894 332187075 679306470 211359938 541460598 48487270 607464515 237796187 450479764 49790323 343590157 31319746 252693471 82868216 134091865 42439244 92242489 54726539 185610957 37409902 830273829 783526150 843673597 708775167 795502010 659410075 924166537 129565254 163760275 101266795 858282360 525321662 576117546 225238858 403336370 130916136 304628735 3489648 536600539 87326817 371635231 216624553 350943230 208712147 858691789 604965828 948890534 164229454 803608963 105976875 839483370 11540477 418930337 147637845 571550145 386361108 469386146 456664534 623817126 401518526 810219964 157506984 871507262 319913505 490202010 304777201 963322546 748023574 890751644 473871010 912495875 48380845 919193374 440734177 855121113 747981329 994893216 821116116 984229925 102222273 322008632 34295730 820577019 130641722 320593044 165125860 741544885 516259438 736238842 430847913 650302830 645957212 868833632 131472498 252384523 88896612 729667522 534584908 551682838 307840322 858673806 366523316 578940149 252036385 641042783 41060202 699574790 302756806 340461132 175369981 828792558 173552873 996194687 866802619 988551116 552771422 826926830 732241908 889230441 48235467 471782819 197699555 481375684 249462555 859753797 612041055 612422371 174590034 509122332 295329232 314918623 290112092 728245502 665326652 789697272 713775004 740219287 621150903 881788883 419838189 712446142 243146442 987350807 750099010 944183383 884814371 991852605 874643797 919488188 185802519 582118982 38087347 420675681 84270865 799966659 647728608 709633139 250089657 259651557 7829982 321307506 286947831 287913195 279970108 783281267 258270771 805148989 134384439 393973908 244224209 619192880 519273943 712237947 422758785 978203805 376100534 821930855 264798057 335309463 261331673 884881229 723695615 993835302 134287369 273522901 143353595 405966032 74999590 422590313 42417476 489289293 283369239 492687360 78576758 456111320 410099959 660308777 537670385 839840177 112188578 794003707 413582428 941686910 238198153 377202142 196964698 624543906 326740124 589984484 261919920 393142501 224385859 548853022 434409211 990781215 712171645 750717167 618303826 820465473 273328034 615869841 460560767 735689076 247587158 493581465 227032940 502480407 144585178 918909474 876791008 880124407 248188720 304183370 149464999 736008853 656689953 697563828 53565116 372508831 130427733 138292276 67046144 332793529 312838902 734388845 20616476 286558782 44931642 485351656 326588057 382880996 306344841 566509925 510963825 794182091 342965288 379766306 339081956 545696549 296166637 812096792 527871535 939490550 662941698 795646466 32595388 558390320 476152758 832380428 530407852 835014443 224732876 320227700 178720404 866097350 637881768 724856714 154439460 841250721 146630189 754537469 496576657 541224630 354177880 943639174 890370889 979141891 273700336 377718051 233289221 396150610 347643303 416453904 3873670 658081255 38438859 965535093 62178720 577090598 72402564 827576399 109399956 764498789 455885670 852076302 531182715 990560239 970760019 992659306 22764198 997453895 360345450 743553688 131179230 696562591 273324411 715956568 535646726 931544889 663766148 970130163 326216336 604953132 507126840 669496134 581514262 671804580 91020332 471287279 339134887 681776742 428830861 757752332 543716794 705695648 514202482 567068295 270977603 982584772 684317983 843972608 582526217 887413508 654408817 671140639 53090696 858401632 18574717 686665038 102770222 508382300 244959296 530208394 279957826 748377538 526924946 947476563 211091804 922249114 317242845 723519083 64593601 731364781 502268469 880646045 388769189 815285271 731657515 835785562 647669183 760079485 603515115 971828449 585214546 754580436 353616764 629816621 158775926 687909747 209674657 482966416 447012379 989706551 637452826 913352037 224352336 811415201 492574691 878614816 115514570 559080330 433803316 766282267 148594816 158036002 117519415 177324916 42115728 109829047 12593433 125396308 25108427 196873017 102760697 390297003 166071002 827479117 756824667 803558004 135074371 762864435 370861305 964018026 31789623 683374304 394867261 936359079 354850791 520308975 424996249 559552272 476748222 697161414 310009041 799533741 88555045 420835844 370309232 827466732 392218642 495986489 377076185 750099185 199352850 886584970 62643301 368108024 179763073 594866759 141036486 717406385 55922164 757898575 711075427 967871817 27510101 249568244 159522641 502595401 501814783 796290576 484617077 913319124 208620485 669655567 183165077 304935109 52707784 690188338 189466272 459421184 424059425 516480252 391438973 941294415 207057310 605507588 511571712 990034034 134737073 652598108 243515559 547438370 406455190 612257382 590493686 860958912 427565565 471041652 118537924 152347137 44613828 230442909 118407904 669213969 494506597 876769405 2335793 860338924 71550709 294825842 200112323 366973661 345935507 623617307 550604532 709626853 424807542 496283953 380918375 506049663 312306146 496418850 487781305 699230977 12048199 46356677 18641320 539089118 294965654 960514158 863463382 864082806 269081355 702372406 413901366 513260461 239499879 548438754 530707407 556269125 109131723 559615367 429629614 524986202 154183491 562098854 534017300 803317710 368512191 746374228 33716865 917941316 644487913 934959705 729456328 778899440 489341417 942239391 477371428 787757606 270356763 859285409 316299907 327344574 147873436 477098794 92528146 726227138 283432669 774416892 130844843 425615243 68836374 215486027 35738752 186028767 25018390 349561371 274600136 707425146 315328151 936814990 222657419 892339475 142426720 164055178 89350816 990489835 581431555 827227882 628760150 792192696 237321901 287260090 219542858 734156009 90492204 609353228 350919659 852333087 98628955 900904396 496716963 939215223 907486650 931972026 24460527 460742144 403429485 713036849 655264667 983515199 399543356 615008388 478425674 508372014 481550702 800525977 204911677 338638795 189125387 269301867 4212549 269176773 71884290 300018950 75208697 469407266 46866058 564715729 139506384 599523339 180053714 607043906 23569958 319105004 81207290 223489553 93952081 307778888 256408157 350408311 204453280 727720217 118788318 153503041 94696422 740589674 534321359 555922278 134281130 424236489 349154285 429894074 101775638 474614562 472516848 712843107 446880832 957204460 503966491 750773136 210283711 596324916 179068782 185020812 54062603 60592524 6379239 714252311 19863289 326705239 17489794 78303424 77190286 476628056 182910573 872666214 210371277 217821579 85658836 930774397 86835068 743706015 307302659 627038930 365158480 370455413 52001136 54314243 41691163 448317388 36657394 473792976 125784788 975536765 832510523 900146413 228291272 592776839 346575573 736593477 724512576 956488075 851399397 962105433 186243610 418879122 197806525 457923391 128182671 679219930 302506283 961705532 434462295 886211464 17706537 622247030 14698129 85531302 84968057 778150614 192276677 642383147 554627812 812930802 755562278 997487820 397251058 477825191 335715098 829765509 555445547 612041332 399869624 478347281 296638414 717712564 129383376 953347372 61297178 510770694 166659689 289247709 164906329 781293389 657646041 922667033 883373001 886452684 45163951 360942347 34070757 262787835 112804415 374890859 122234825 939806293 742457167 801999173 282277802 756158446 647090879 691565621 28740037 519487372 364015648 667333055 125435616 142141142 134719091 213145240 44972122 692086259 532430931 897486309 267023756 427860969 193561876 709755597 381966650 824704295 669272831 986067006 239319876 626941285 28290860 518636406 177038004 681454364 222747493 674989124 85677457 552419303 525407776 605161885 378046258 885396294 355925543 480656570 237454217 756856809 571448321 770151828 151744296 678248147 328564801 458352368 376453594 619644284 49501756 776312036 303384994 661412369 82425856 342982282 230270109 451913343 435195632 656129294 296376349 581931052 205535410 441903298 70189409 610804239 80678437 892721715 32740839 932703066 22900686 169726880 41459899 74430907 38445313 487176964 340019570 704792113 5383004 171545502 52693122 164711445 92533504 879504022 206427252 919982539 27479043 582120881 326638784 666307747 120650870 639334789 15041861 756819018 482952399 643041220 35296929 629773013 553089413 691667365 607859456 870514230 768838359 795075551 544502074 689343177 182351628 795359001 19373497 704979247 479131973 579871779 379134588 771611036 699475028 705323308 6495769 470220922 410330536 563456068 123904366 630454799 161538817 827812095 404867003 442177288 253558765 874027775 302779983 467491670 412025484 731892022 714454089 847848849 406985144 551786535 276826752 519210466 245109979 506465229 14654510 29131898 14290511 993084637 9234324 574149786 442003505 510348811 132105524 815212709 668376562 983808923 635798250 737154922 458913855 638164357 606034775 621673861 435440616 473072121 420497484 585938465 539592244 811358750 268212365 709962773 106874339 883217760 124023387 729534722 279018532 565520479 35546831 908994913 87470626 267743267 121974526 280542934 112686721 567642466 124779746 541626394 460414225 504744805 354710811 401752835 205294572 466551473 274633729 973512676 804774777 973703359 619152557 952265527 66617515 925624392 886371439 918542089 591910220 722579744 683373422 883065493 103846772 118953642 29923147 871709106 99529399 836676369 494678864 764188898 486437964 802360961 735717060 936907801 62833094 670114150 595542261 846124759 385508094 558550395 499541492 888424475 606370953 849502660 213845020 730172040 324066788 719279809 580284949 829684394 573571363 814149430 481164151 595995233 157359096 437090324 29782685 327380245 159656715 574497196 209620092 756441625 729470350 920344256 443324468 730192240 249559861 589780257 23730750 361079483 175162805 244019764 223548539 585059669 122802145 961054543 301460520 496761771 358690652 784369699 551819755 946566259 719903165 920554069 760543588 865012647 534334833 626615535 259375131 700200534 320949788 659088651 274625182 477475848 320152875 810228021 383468142 410862469 129881969 646435044 161906830 426654032 415772788 758811254 119473021 326565007 279962616 624515012 354371736 952702010 832938129 986114693 219436824 753767035 78190367 306462913 263711570 923549426 398156381 696087370 46198347 190964445 27606032 129140671 125752220 201343781 67759373 594245872 290189566 986866487 674908603 983783589 633098007 692688568 566278605 807347859 254367061 342390436 235736059 400211886 218451217 668447400 237903653 766174754 685387027 808792354 497190730 630476373 376195011 964198456 568914376 622446887 613317665 875040180 773292247 828696877 194332864 401048331 154824236 421828298 143221197 192006425 151696729 935251087 565186463 852547066 785075655 814507325 533852405 872313577 528468779 587796832 351869226 608671496 58924189 754026832 300213847 551859961 281150940 927749826 334494071 872078453 67971699 947258020 715326563 914260406 352174828 625942610 183056126 818523243 75299357 921408905 845801309 910686521 904928684 913418033 162932313 417578219 340999852 700449166 574528654 992920215 288170346 778798835 507533834 972276627 452937954 875348563 305045153 943870895 652959684 963605896 802787172 813572747 762089933 953228401 168046528 840745885 679717863 726215285 266974338 897167168 626275834 692691700 11539861 616438579 117857243 903886064 358820397 945023712 561416334 866342247 637328311 682364497 470039310 857825879 358809760 963192442 772244188 965107433 511980132 835040710 345598258 912035218 883764245 958719324 104037511 758823751 394628246 713728566 165025174 262189446 239523624 779374105 587075744 997696907 907522226 936833584 490286668 508496113 488635776 493441655 174615540 779197223 82350838 430768660 106784197 894468446 428258866 701724329 520529958 899655751 626229447 796302409 148156679 211595415 95786364 743798236 610497400 650773310 411977245 704663457 316178431 480517974 47046812 274355826 12321622 799690871 37966236 342754391 222120766 740972178 229274900 932969576 302272420 379525830 5829079 413099753 111679534 903782942 291223807 415282032 2381274 810404140 62748373 854752967 789694994 848327338 508524188 866205615 112458443 921852101 119619087 231931373 89771567 127949114 98343312 558846097 14286233 573893450 251029147 319141629 251643805 448468420 200319758 555817964 44248749 620420666 477104237 500507573 33988090 173150725 91328839 336105260 167449489 929210849 196180919 736436529 405380748 931724178 888845731 907353297 443795425 599647400 380259747 402808069 323603967 897634864 483882595 568026399 27334979 223430645 198746520 447510527 381552663 635933323 391084936 499716764 18967648 274427528 158541904 205540011 115537825 984053620 364417316 508003838 21579308 327015485 193628826 794357580 555296135 674021700 606941126 664382038 49395319 293465014 191230431 406076800 350894528 691380511 117464257 215026089 152410271 696864096 433343297 807965390 259829460 353713793 124746735 846206061 416814529 740083113 190281103 690271178 389494464 745916452 372954137 901922909 775598574 832508870 511598839 978672133 928029582 986781763 14426649 751766759 191321761 666969121 321213856 651273208 516798607 589523041 569268369 738870221 117522232 553708244 310189957 882023824 217222776 962317755 220681347 671762111 607199627 700613561 622978020 699463096 578594758 799158261 709758786 889059459 442844722 603504697 534181694 865390068 364960082 739538259 169426907 619820006 565212346 675848979 147211357 483637634 237088083 507677590 361115719 784124208 462785295 573525211 495560624 944581461 133135432 655978854 470779392 995342780 293716504 875335419 117229183 192774661 178761002 383592328 292467229 940922080 540652016 591017702 546024674 865237017 405872561 701861691 393347554 530470161 301035276 363278352 223012175 488553682 4388822 761080088 175488539 859330049 204317963 322545665 115461219 859248279 596924924 620954916 519906118 692497716 390629590 858930398 513292542 548219933 327828320 606503099 358446352 831737383 152914750 647091413 129666609 951531289 721015416 735697383 438426318 920440000 873012263 944009007 697193060 909149277 339972903 656965631 142065187 569338994 44313491 438407059 288862112 435200752 289479626 510784069 111480390 196844358 32837901 333321966 241126205 605800558 39612587 502296061 53883657 162597910 79760199 162613449 113148670 897229525 837141100 918363929 364251609 535682033 141466372 920707634 669001726 880409481 92230823 988129429 458388242 969148010 696237097 832193634 640910862 824620910 780948303 838975183 472941348 895464666 142385345 538360117 506779133 817597789 726063377 741264521 674355929 729439669 669452111 730262983 528367443 767074701 662856612 787811181 280614584 869983528 458636172 519369911 354528386 598227713 571014937 997133373 876240088 969388887 342359331 969890062 948212241 951435296 465325248 515182837 453402561 995423658 145672534 258636636 199986460 532109414 84208504 679593633 271734329 818266243 682782305 881151313 343784985 827286441 600234639 954571803 819800499 955284727 404580236 754234954 67423607 598713581 32559660 426407753 404627687 461981543 220121264 268678578 266510681 409117234 264608496 292734195 125709758 359697841 140519593 604337507 270808931 796982188 148254762 186807817 136016832 988029846 392214318 670834801 198768238 309015238 197678381 692928538 548824532 577911270 42777759 860942310 354272949 652908666 484288718 891943223 519184148 819482170 211952911 515184937 440411435 551524814 361129281 368752130 176551257 948319000 896495532 899229823 853233319 952323863 841555466 846313315 274842951 910717499 344929499 832566902 189210393 756030081 541815258 675777060 520094605 743851089 190736859 428549895 63631123 720892829 468279261 864614706 798305883 833000226 595337749 938365961 753690943 880632109 611656854 778825953 682912747 756657233 306999630 391327423 148905820 951082932 197836841 987855300 367680101 451082252 108013320 369371733 346883993 865258069 713378331 825715313 531162518 975014078 477629268 754572791 65950831 801369704 234144094 895828672 772941319 862510360 204635901 711862314 441283331 808996620 270508774 534514197 51201652 930604105 622411467 820687663 477130504 822329186 40414507 985660291 956012001 988079459 867076137 972226222 13309260 568400662 269803310 640708836 74510237 116045309 82444548 117812296 44464847 141895862 9773891 502724902 91449713 200897063 132725994 537323981 477927102 709723303 325624067 562411380 378446585 967325370 328157498 754219108 165839376 846716760 159963395 402056261 152319722 384787669 291085131 669877775 263469099 567509024 166611613 753636569 156443032 725645735 546573379 891170822 843449171 858637656 366957076 871766304 682758016 897918235 455656756 924617142 351139481 835818974 82546055 86311132 14646312 610383138 315822927 548243410 77546356 335161619 192523277 778254623 203133133 433377861 381580462 827946052 285998091 764630205 683077239 970574255 139408129 498039306 151665624 199545333 132367546 135601856 21209880 938343044 536978042 626256525 265920124 483439665 157232723 674644401 639004894 692170788 638809632 959669995 859048169 932420199 648723550 740567213 310535074 791611051 547645465 563149931 114290060 947396994 617208728 939898788 588584244 782327754 552912394 745886390 214376296 532853962 102069809 357712273 34890085 756857225 263384977 274313133 23322495 206318004 38912555 522978504 60567437 63097459 44562780 181848504 153308429 783716763 649204072 680588160 413367745 783920243 542148986 916159117 350697622 614152204 525381048 985001633 739795691 913263491 277736642 853209147 43557556 895892716 465982739 621646244 467225306 868022352 337673579 808428310 225918550 852509673 173603226 177789519 172992142 883866555 320220278 391297722 54377383 837691120 20422841 734231035 283358458 790046070 539343956 780437315 488026744 690908596 373853358 479760365 240867248 637990743 24954606 813882648 218473391 651866523 77270168 409913623 307815365 772965026 265429985 507803101 124203213 309600806 53967279 228447099 1300161 817916930 731508326 758722906 641562798 657440300 344893058 516808513 430302935 729081730 637691251 726448696 474032435 555848099 47516978 575360404 123187673 413078534 175038867 657017982 330730920 726588656 543839203 612341052 422239298 601126054 23080080 920034903 902653746 962025323 518137393 880148330 142648196 662039664 212917351 288961166 196810978 913751431 264545872 335330362 192630171 462219864 274495170 346397314 209801810 844405919 419926862 888656258 230318346 715873482 607605502 671432309 450675410 913054172 696094329 861350958 155212936 351649359 154765404 727662142 104332516 509287304 401428926 538828307 388128879 978801660 561075420 852324634 563577963 902007819 327120625 384855262 315684562 535760653 246285473 488296905 21850373 436195343 407092865 975228452 52749257 562372260 227750967 918764622 595205612 817926171 583915306 967996000 865273360 988347032 102951678 340594682 182845415 827183734 290051621 989076787 968863116 970181556 938245168 982885244 592540526 762906065 278296080 648221499 19544057 708961072 28095763 44200982 9844609 854086586 440256825 807171567 703854083 960531678 687779988 710956981 496880768 800467149 600585849 923503380 131891728 789237217 592252931 592773036 580571953 970527794 626191276 679249928 545566251 664346014 520493402 765374068 686337817 941237334 601073133 662659412 617448682 704039633 346191394 755670536 91694152 913767874 323670478 556749320 471781795 577444442 160273517 820814425 494858981 789992098 85675545 691758544 460218361 525592326 391927746 490319811 362547240 496972940 30882376 624799514 365524895 489132434 113932097 477712350 148375743 506875841 352639466 569166819 109300963 747725365 238340034 773662450 266952805 781818113 236137794 350660978 341809237 589154201 341432476 722537677 572066530 864486535 152251891 875413044 338044469 603428900 82972366 788363663 230214492 595111132 513057023 803456487 759849261 831705556 195835181 750667310 181959686 945153418 541132729 711904809 403981425 916762262 591698377 858230290 684247284 745421150 171563362 824383467 651808246 840560095 508603643 696342425 247491724 400537792 257756968 369337720 186587087 642870466 460319312 512226559 224255789 633595997 573071602 844286672 155507074 658555617 485766798 510359569 155851111 485597510 69204722 465058690 450775712 639023874 359738290 365803286 236257347 288532916 228582574 231097040 179976783 232231760 102206739 662544908 44473636 179710110 128145931 640084696 459913072 623304361 513112888 696610049 171174168 212121793 33046242 91941331 88988257 109610920 25233217 774498902 98652488 968762043 49211160 282719944 210833296 394335080 45762344 46100870 9256767 303516694 217767012 669268596 623086908 940908073 934866448 989261222 13724447 176346702 160383595 240759879 239995304 781382830 463059210 732144637 226192385 670838083 275881136 538264698 197186328 374849045 310178816 866012750 701334528 836555111 695616932 753797963 389612744 555549070 167503216 181300735 629873 715360360 232579569 565744796 482837412 736794429 553533346 830717639 675590458 746274134 143285021 533251581 81395239 596834557 28280857 693229205 655501547 966396462 793343234 921781491 678036758 781945369 201102144 361543196 280591953 876606047 254330575 492953129 31810077 674149352 97698885 696746490 660388057 761540577 90188364 860793721 35317923 576052329 96116598 420161458 357279836 826266006 321096368 402705162 270900704 841859686 277386043 822138544 685410392 841090246 649007083 821324220 331476859 619995809 17430731 478462670 170272887 896077250 688845223 749688796 631473879 659146075 297214581 814791212 459391392 757008682 563136805 577079106 67089298 117976739 52815213 955167011 323610979 808012979 771318587 811439417 331345394 994125929 764320177 906258436 245318590 444712610 305978084 767103593 603119021 901284196 843064593 931888883 339491758 931655139 649117763 776508506 33273998 653694147 572231726 959588754 664333431 667045693 417943497 927021775 845758371 954113959 513014608 805422383 193975068 567125378 48354424 723109008 665033281 879295889 499107823 544891327 267817805 468081052 341859399 805771686 119145178 143038252 17009146 823444416 52703346 932211282 530950880 854011333 852629892 950728854 364587956 878390465 819706614 848533665 597465026 710342059 553892231 559555218 389276317 471324165 86534267 121055639 13315913 417771762 107336380 872205368 560068368 841114909 668472438 753140596 363995724 822287794 750508631 800616736 464085302 640841065 562052065 757223839 526515932 550618663 252670426 433216049 315340673 506583387 238634340 778242664 442612342 443251883 371694928 593665381 294418232 835221664 33671243 593217454 152863805 913120745 414026208 444455165 37306382 649257592 248677917 804810400 537400259 968863920 326170414 893019984 340976039 910467423 113160120 490251219 405579630 942251015 181391386 929050160 207967381 763976243 295406740 461055656 341242626 448238417 188028223 445708532 86862665 561448651 428741781 583245028 2318003 392071547 391927296 539652834 101949510 739266108 465310286 775674558 309753102 589024382 263525766 516478138 320256579 865689560 622333732 921801721 902189620 963927473 241420973 761510510 441313722 872714997 557295501 800748262 39565527 318650216 183313566 633396972 25351346 665501335 589924723 786865515 392371247 464385788 450133085 970081528 410443504 569445342 567935724 643640459 91306827 900214136 80388899 754936633 331367339 522434049 31312609 926967066 250364728 505123637 235584838 338424021 139757039 461742802 188760265 941355445 900674281 978989991 551856155 900354078 738004398 804092284 629815506 773539197 557927396 650639015 96990866 251685578 2205639 522381670 378606476 567679501 415435883 801264213 102219436 578450926 394678267 753427745 141034302 214650435 164372130 854829746 315691790 895795112 486159925 607081919 5276327 985556904 33922477 573336195 235795443 503192285 132647171 628355783 399876733 795759609 761381200 831722734 233718377 934711051 629487648 951838872 451994608 503365698 469644674 742076608 139142593 553498707 507465791 660471037 39697534 200939139 48345856 354947030 320761277 837408561 116234765 148690780 67200065 513502200 13613677 959905942 455324289 556717685 125605681 314170741 8415852 157385540 139735554 718698286 691028124 814568050 523315344 843624917 406731863 657594278 641415462 734523801 97968872 613141045 569818278 768292949 360644159 657453833 388115501 968021982 654247387 785454556 772368825 893898946 170120504 793088143 131460738 564440224 386490893 827672192 150575329 577467298 94738647 887271967 519603377 882605311 556305053 953618523 441605906 598189411 509949327 810277692 569786872 862154498 663711580 939638526 460758770 864843052 203895180 851693276 715869419 869609159 163579522 688194146 350599116 938506129 438963445 820454842 393191978 734802203 220069033 956441575 883337796 957943424 879786816 964566883 254681319 799689743 136760594 697047757 103807762 155104523 52132560 285831446 212076282 973923390 927965818 939854493 19041900 81224943 29721074 533055967 396516864 928047636 197935146 440203098 328622019 769843925 376062096 871878296 561980511 997369008 333013186 485514247 479592065 529919320 390388252 652780369 563836061 953266055 517961665 728581256 469757045 482814034 160121534 707515563 189629919 263271172 231866320 651143298 52715493 137171598 24560092 569362405 265429631 673445734 488948445 662601952 253645158 805028879 373527412 786367337 410812392 989687583 107019037 983639135 829739227 953118604 172456211 459028076 181338560 678648281 607066597 793664915 116561028 878103411 223924348 300297091 134628490 283347448 44339358 849123556 326021614 922213799 139540581 653031907 125141277 497311047 346353783 617441776 119002381 462251143 173894546 641411261 409485670 527364387 517875576 540240973 380590381 858160420 606841147 819334589 78026044 816310634 690495302 891000857 167507063 302454835 13184789 676837108 598338351 861601850 693155639 810089439 238484075 309671415 885328 606074486 470447622 492374946 137764622 265975841 43837810 776745131 428016965 966118781 248277236 373649695 113337754 963380963 232072811 719660644 96117638 861541286 197516992 295026754 200419194 400403236 154244603 538067056 471728640 601091685 168011056 464840028 174505384 417011209 388535777 945250572 6274493 814538647 707460635 808898208 241186430 277290073 62620192 498515803 416943720 451431755 294271593 964610596 602391027 849567840 230159599 961857898 425070492 992925537 393384481 569019645 388166365 461518345 362000586 679790216 471658088 923487258 551056434 959962957 581987598 998413266 620342431 767995158 349545736 490633241 299988618 923782664 705859443 795097115 175311544 768733706 725251639 834417397 263484297 911303918 19151358 920824415 869693678 930415687 578784462 656098971 68680312 752642304 535574046 577403124 509101156 913290554 349110052 796407920 558824207 900428595 800582164 838023217 644255375 771315275 525384418 588250692 560157516 951571762 560245916 632129469 102220076 915427444 181762312 574528508 558192684 946236761 931538036 996114094 256192572 556764641 246402702 500610281 257643236 997672235 473751023 546705460 159342435 745735757 88539833 633896276 174946658 417358260 405420519 838830880 595726187 747604370 302991780 322030760 280183046 818498939 10568583 329839194 3926970 768221044 235683768 465838632 193528145 347111154 336655792 803398016 690050426 931555353 157567700 932671440 142784116 223429638 196006074 679444482 644666633 848120161 597595851 965939766 270409203 335743522 17780113 423314187 129944549 614732345 559871902 720183184 628073907 745485479 226649243 713330367 21282564 490957841 105052787 732945923 215110627 355868253 293940531 617890751 297091859 892728056 399072843 413976069 59721193 141458602 76960232 344420814 333560782 615183455 408702439 849227783 669322223 861998232 106831922 397144561 322506762 419401024 335226098 389622819 331967928 942570245 45387387 450811995 4102968 183472292 28094284 573254689 323701729 409988346 171361017 704138355 483064897 739608999 507241373 520576779 279230182 887043021 668207700 821016226 130750431 637605701 574645433 865892366 50255874 937668118 292853795 450621510 391863973 976471541 244548246 464366958 246743888 862572103 427975269 548522711 448976847 467057906 377434387 582539194 1838193 950064357 809579614 910998619 639258785 692939766 101445560 829528423 607650162 684520484 464838677 721988648 202503877 542820643 462637716 610149365 32421659 256389956 60289098 964607672 680848642 840034745 122015667 443987132 302431918 627300520 73258515 960430751 50501281 741188095 334311995 818808350 553759580 917260073 852285858 924534021 304273654 660287485 509123214 580373374 104350885 694391056 447476926 833804434 748074778 886277223 804223910 847460996 240613197 669458493 466424976 921208484 855226545 954756565 853895592 895644793 353233385 480687899 40690695 162900508 47331807 962041228 239491809 394166614 129059293 134192749 58012967 871452792 783049012 784793121 139663583 220602529 175379012 182786711 141000063 521214811 9533830 119859534 72455945 223687662 177277513 484457037 99490000 786596934 467480393 605963369 466472511 811418385 47887505 943906671 146929872 496987776 37866783 162967380 46845455 761240945 17376637 82278665 73508688 953952325 43863979 430468101 152395964 695990789 233252888 537358601 117710583 390782516 107311448 996273810 159228113 737799368 689330550 933026768 379711173 652103046 234120895 623482617 121696668 561175331 295207098 414730486 103775731 394685000 100858855 535717872 513759085 710273806 116267733 974251278 689711910 834696560 656110753 940041493 316945377 342731849 208751902 348606134 330976474 833835586 832055064 977360154 474299694 640570229 149520234 227304866 52251068 107748333 4522437 526466762 42843295 353411944 217244281 989634246 588278270 599877355 190919553 285486172 183550590 972806074 732316556 919570794 261931971 364425363 229108865 709315378 645388624 985012643 102669647 907465105 195278864 724529397 124670763 267970752 51305900 577414847 97668731 143134203 38034186 610190974 209519881 658241910 7817079 881023845 696125002 876263812 29754926 799329395 172515400 427601353 315879732 510233409 188581575 274447431 31528654 225694850 49470256 940663811 410452491 814510610 708502590 888585577 762979378 910541965 484420331 843419084 147163697 326872095 287288475 376455214 205630978 327771390 56081243 760755885 14098669 428603815 286825288 621363132 41562429 761080550 115155399 832155240 748057073 862827525 322719056 746768948 628811197 822310534 82215921 762268057 429778196 846743018 123240698 246989045 133733482 781711447 487805868 945944118 351235979 898604687 669154948 914487832 311675432 945567099 819745869 996683947 781999921 865219550 366617686 812506689 158731803 640772571 177251 916622121 86581779 531826598 378556570 623921373 209926546 286998830 100673688 469219942 211291802 250043449 41055564 814711167 787875835 835459531 327732007 964297421 193686194 900669086 117894779 159358374 56455384 895492822 373681933 935808552 748569671 908284506 529776785 979867036 612232070 842183726 522666917 844748070 842088334 880372830 325022610 836716343 811724471 896100659 341901903 440445940 200665343 522924445 502479682 522100155 392204165 911520211 546606650 794772661 213166547 449156308 350476889 987973451 173709688 655493751 527414620 621670708 119023763 244048843 97150525 238267874 64662778 596722754 228284646 876336744 505452484 598097880 571526466 986127352 91685833 621981203 555908969 888017657 252575696 623361323 264363706 900811228 277429523 725554610 454103953 955884789 256139548 361860311 328813983 826359926 584604865 926315580 123591204 136532160 131943226 797089970 389427323 981418586 335511288 516743753 10540820 69878040 24300867 172910169 129643493 502553412 77724459 984193023 697009640 977477839 420125671 536976100 223577972 909832330 870048097 970461349 500195077 705216669 93120362 337005781 25474081 399461848 17194230 828722044 599642873 648384290 289443116 342883243 130006108 940212728 649355450 682473746 64393580 752514810 477029825 531579241 428411703 895791849 732314281 840092958 284983410 693328217 335148164 344185956 221858811 569758203 243533321 859405782 602930618 907305365 154628134 480590348 323073443 534517186 139063479 384418374 313736077 578114882 288890086 839479420 332673446 989256206 431719842 731764667 649831756 976466543 730812667 843787256 180300761 877249376 564735846 918938057 690378945 739851165 413755773 997581400 589411057 891255078 310636268 692328428 604622339 826780326 78088761 204408208 52483862 968012205 60092529 995443898 482871400 638972942 572855086 904986411 408309197 903507281 6079376 910988852 833670352 907496763 833725025 838943913 668287516 680693327 64054217 586569847 408049912 630001688 269025030 682002030 540949837 854102302 618831091 871851835 155524208 353576990 55282865 928831529 833150858 867446576 551616177 606308285 583477116 925561690 133875777 525811300 162154634 853371803 240482645 324822146 111658354 711200189 374196011 398567372 297773997 711411046 702295127 736371901 581071525 655557489 83182184 723097670 72715452 709698294 362755916 525586278 273155451 524013921 101961125 212660181 157781536 455218388 367376746 732523886 514121290 662509746 171244517 477160047 226238892 807477189 103318282 968901468 459083140 665935305 168199440 533667771 299903515 322625887 251994262 709922700 352463534 969942436 527177538 686308369 654251404 902605813 462576581 955764736 833420001 895993451 392954201 411635124 26921077 973940152 410261747 982607003 86181226 987937588 822343895 952584244 129334903 205415893 37853531 106435386 66567261 461186718 190912489 815553552 377402171 909084138 210154476 393972076 288376194 884228196 468270353 816497082 355927527 399715688 23700168 421107475 41784534 779917193 369973715 862607974 28105463 841844037 369378544 749810933 695396363 732113741 44765741 881485900 484049637 874908522 348633850 419973363 215478839 372489479 10396982 353597254 71699443 234039309 206954066 920669335 717093340 778519462 299669658 610642412 268043878 830835569 511800002 659749194 416772948 460830320 431260523 791687244 688040233 831200141 723625072 964355593 228882 169424246 21940520 831550758 127004492 710478473 161461565 308828193 222291753 984818662 490939917 971374736 312326021 806882117 717316833 930440266 859473035 864341845 706328583 785274304 401322527 889739750 488237990 507464341 334569583 432887495 388366325 833153671 478819823 646444576 460382946 789341774 546337740 649099924 35685373 408435505 128259747 765345327 690342462 781368716 554123232 580855534 364819686 865778370 630107354 817549340 581984181 626378643 392241048 676403603 112047256 991126519 569844995 982306778 756163681 802758150 382723687 826839410 497848019 502699996 44726853 866499607 258831459 886769204 270265717 362822434 185368469 745352140 430985819 585942355 289004883 410929646 134888294 873957302 595298770 929809497 748001141 995333714 799976125 832354129 347986429 903959000 836448435 957664918 450349843 727372835 517012279 668884033 185328131 764864520 520456339 718372093 79774894 797947587 194680283 638818803 222428684 899101242 429742701 824012889 125520650 401957201 339728374 384361998 13166842 779122646 738474501 752038806 697414204 869757080 242225954 590731777 192180650 872629576 328281248 846427726 686805412 972745709 367913824 486030376 41199323 197214791 146668186 293651131 252625925 902612683 540240547 922287114 379044826 987238308 64103687 447910023 329923746 789628794 781412700 823309486 538954541 692397690 219532193 767547801 295030958 325482903 192048425 728943161 22353182 146981303 144440322 685536707 411937930 492044053 189115174 454969128 217069901 236226894 209379264 917646783 860972105 979656393 275735758 393856638 171814528 727397292 319677487 841810449 25419873 768873361 559017073 774651572 111414340 223367663 145556292 353199149 229076181 260782444 50559420 814586876 633313765 737572268 665254906 910461001 571280308 834672888 615767367 738490418 606639221 922356072 716971383 798234478 304075201 511911385 285651568 442398985 109953742 341643713 122256012 777216386 90370366 958808888 817790471 842596953 57897926 205027901 86409411 685172949 248310474 551245232 1047974 214850445 49438806 411765431 206469670 380637741 353223246 756096589 191022968 299054931 140176437 238440720 96412608 796922388 335878503 527501962 142712571 283097868 115538250 595012535 570884178 712756546 430502682 835106520 45109341 190066987 110882157 693957294 12479366 997352698 138545312 593402166 269818334 616843139 133067255 146023188 144454784 986337408 733101368 980216802 758075105 813095721 142179721 852032746 367054414 830446478 726126216 981263567 166397743 441232713 167427117 446662346 364323026 444714625 321658230 852602972 14645601 148068015 84571019 348967591 74232507 974781230 639771867 940228395 618379966 730324480 333552703 711984556 284690599 591014261 41658400 625549451 375390363 775023345 165873670 309025921 117174187 666159152 481266082 737891626 672405008 984848462 384642575 655839884 534456042 931512355 615589854 785055096 679384319 929801112 244402407 627179954 442050334 805744286 710200528 729569529 691896247 759295249 725976774 969604735 664331756 855900076 743784405 948731219 462572065 668440332 338021078 994067869 675022340 756653576 570648136 670121949 187828037 220551506 72327101 256098276 98063099 111808059 47511014 231685369 137929412 401153466 258833425 913193468 139144771 317676780 213228540 633134201 460405781 625118050 514269468 848654718 255182785 346117319 45078411 453404825 85828281 247882342 173373218 403744074 382766938 968057467 250635702 746905108 181558131 592645074 304830669 454573919 279606658 418177609 224769709 445199390 289005283 459614732 7042174 567139122 100389960 762638662 615495669 752189043 142598137 620468466 380286239 480821598 168453918 457368391 397836680 943741177 530171116 963492622 357263789 457200508 26618983 779010781 177392314 607387349 587603674 944817207 373430924 816531447 56413817 480453536 13729892 968470878 451565701 541048190 216324409 689636380 649433455 915080509 651263423 876713853 303795576 543564118 208250589 877534365 91909525 892069605 519358669 976727686 785673792 910119464 548340418 606931331 529785050 667264170 436977607 624083223 546779674 623723036 467151313 578761269 467160535 667361136 235756109 238354181 166426860 506198772 4995747 840009636 744066784 922915765 674258613 875813495 869714632 926408419 900256151 943238594 595205889 678449641 288444512 526850512 198926704 495757100 275047003 480092138 23972807 676398324 637929138 778769115 387647268 840080397 789155778 946769609 122656855 751712430 477242417 791811791 9036535 686403774 645335833 927600984 15401006 754153973 129673825 201032615 99583774 218624267 139767974 161559309 159863199 981106103 99834068 234112163 150019237 232897016 124732055 956433429 269259364 285970750 232726074 391143605 116568791 190251232 14534141 325469580 201483951 295257142 235370394 278453892 97764143 271522196 211153422 490895857 275995642 751438952 256082402 670473607 346317505 923803202 389100115 796273544 243824657 676261639 77346083 845897317 71426504 555320457 263309513 637127054 370965545 381637838 60228661 105656523 39829279 776449668 433614402 778632233 133548963 214634288 61684232 730907177 482848997 505404696 92394660 130391154 53942996 452602614 363980705 548310055 494475247 682862579 196862087 751892319 225552797 889268519 427440423 994318561 437080392 981811986 244478754 662794412 480459976 953399546 546251852 928062030 894092634 984630121 339708683 578166716 418805165 743137524 126236599 145611617 13143490 821506054 683074619 918907088 677219496 691168456 281131199 478246514 185686956 872081994 62240944 183398333 135626991 496372688 485319496 696169438 95499315 229519628 92646514 97562792 79096658 118802893 31488557 370374524 186415720 652725610 381678583 877883361 742817061 954115363 300048402 674597927 489733087 502200220 479531494 826243001 256321900 264403658 200381938 512727269 120132436 908368099 577424415 942153507 696861781 926989004 639111940 993719857 169693844 397092106 95620134 705739100 228939335 700525405 434762986 498237077 10943907 537383848 438560662 976343738 965893506 992272216 282786920 978157045 933780300 968023231 123790440 475953142 189959824 771249846 400185903 931920329 217596371 625985429 524920248 734761113 387381102 475082273 242425064 880306841 428932572 770299546 488338652 698115627 564887933 968276111 690457495 711908873 178763833 698367285 310635946 692988083 26606897 703450254 215532740 789039632 258927414 725446491 513301426 869261777 794275273 874979622 667729599 844809327 786903241 880680500 65477438 329171053 235476913 405386275 330678313 352394857 109047062 359050448 12387862 120452320 6998611 25950696 13377198 778114964 761015001 945093835 884557539 943879472 735576471 925470139 671636127 778453955 483579285 655944804 105284635 227323567 184555246 439926054 376684433 795072141 467686549 635505329 134705156 522905066 237054949 965004534 206378888 469199990 326236577 962125533 190212431 909280770 479220024 544001343 263241844 689647349 279923559 513134705 133219403 858398954 193993129 463053788 313542586 464500625 293989674 311250701 229177523 366881001 216366377 775973431 322119540 730524912 444671404 971506869 853547857 951867390 632178149 908567451 670079813 753474986 49066260 273512648 104663138 997200984 77056611 747860203 663144734 962037499 99415312 152364085 35302529 232986616 76032627 982242401 342112670 732093256 546446030 701992719 533396228 727810745 7588405 940817253 58925066 312891477 147315060 541450383 540141186 696329030 274811905 441108322 54768124 888368588 315596797 343903551 92714057 356714838 171372858 793489836 176566578 308831024 284080558 966201386 201219212 512022588 419925275 886063360 32061637 839087043 737955054 990893516 603816671 717704877 692189354 750105593 431185976 707295267 589520895 667947144 427938241 941609392 8757976 456173519 4803417 143596308 10351684 278251607 233057919 415296954 110435581 448923733 203910271 545056822 530788635 864292381 747249815 902072631 510992267 628697200 536258394 903854384 424643249 927956274 472142216 707814004 623192798 842010029 696376688 977194137 456001768 691643282 117569475 974938019 408863021 471827449 440979531 661024260 514935149 831026088 437142566 630285951 15758409 173609202 68318688 561954196 492216006 613347948 152173178 594938589 242206059 446449288 345515755 744452118 64509335 163191106 42250359 168840661 71063697 772376397 227370401 256270084 153251042 913255572 576407508 713756859 82647293 497969029 452963402 534311047 129155675 492947975 384038700 919987455 386692924 611095424 33706786 798935797 789325174 843304991 10142193 184834777 167060761 882419818 735062162 831020268 372363142 420872703 348121403 931487985 50695772 830107118 715927910 929186213 132548661 188189268 173773787 673606723 182840770 811265137 659142822 939161220 87693612 260789999 16372147 72766849 45218698 324228457 186290462 313590934 131316802 310379907 275594132 472199099 312197435 899090002 79173132 144431279 43698196 349086620 231866918 349291508 108503666 925711720 38999626 271751638 148229224 378510607 231660087 822077893 533365420 941217856 270140563 962382504 673456610 985322351 687998512 969575899 33944219 892159038 535911149 684517344 175408240 818889574 97655070 565863724 532236331 687087555 294487793 398819935 319170087 810797065 28481227 290731505 288018502 497937390 425084285 462077079 401888732 764613231 291501661 687406816 321048716 408518314 77171778 699978454 66722887 927498346 327227080 544238961 323890930 410148948 371847953 763284652 720960097 738583410 505427675 609144011 74136202 617498627 364241091 870890289 161688900 884376248 309524760 965826524 657929232 901016868 62210583 229488196 160452469 399788370 282280559 840022877 117013748 441302088 338649772 874424357 257914348 805493540 642106122 756868744 177822618 374477280 179302304 618515675 346225309 876428556 543105263 733823697 685773031 926811934 530847983 729962236 438843837 964205957 49817493 224587619 139607410 625516157 404825814 975255524 363637941 587743588 250444498 326211283 250839332 327277369 124667435 689122537 618013238 920273054 630917060 760585837 245973471 809074169 602908270 712992595 410816785 637143621 579577027 745013854 455349909 776666337 210406720 310766594 16486442 615235889 374898436 380874179 311718379 903652016 635888508 801210502 659815637 988408209 43760836 263400408 51066297 67598992 23795892 55881601 37315811 104796972 9538055 465922211 145109763 539026390 48070343 851373596 621355028 694233391 29595394 271116050 100364774 320750858 45251828 387989845 244174669 662345696 368522555 514235793 473779634 985149481 381173362 457409360 173275661 575912375 509759094 769163405 575125484 759117191 205488358 620787707 77803252 789148666 304350125 628374160 337724191 906487745 168891893 838680495 375537685 586517941 467848092 756759777 337847560 467474943 187673617 973367484 497807062 632895466 612436860 887747210 484951684 837583118 276254356 313794791 282412601 582740759 321767764 814712731 223711158 276396310 137767188 780276867 491626836 846650349 822493137 950660781 299533341 755311924 378264178 576889012 471261705 799078405 434551850 573969888 488676774 936895405 56269857 490775128 33897076 797184578 129964242 328707002 297983408 747797090 687774525 899344171 313282069 852172750 598737747 605825920 329320140 386581452 254940213 308878213 238438140 317739134 148171371 867049277 621112708 929595398 813367579 900393221 190405196 410855349 249506050 684028749 618641517 658664348 187797240 500188365 406665742 769715203 669027218 906054442 190575773 501667316 443273956 752097630 491387451 714073999 86475494 323494868 169471987 683539258 661818676 804369267 211293119 464645200 48537333 765040520 412609347 503216734 457360509 856144956 746084799 936347883 729277535 859364931 859029226 912325765 748327559 928497598 338176133 526398740 96680263 374228467 297405533 928338861 502421138 702292859 350295732 708083001 114125960 350091648 32664350 556825531 443526163 760313116 11348366 429753682 239586381 456503762 161699728 354491091 173373857 265337851 104907037 639194318 412829510 473181962 363950015 782473629 511145391 598142512 344246009 463466174 266586951 924707950 409933666 497243154 370459828 634527481 85147910 796812042 556768758 867041576 205791600 683860877 612482741 774015234 191525407 220090684 160948210 420115646 332114767 888437529 25122881 990032416 95315083 609305573 607128551 716151347 388682322 903631877 234536180 895905856 822851028 987533972 273778280 314833017 14025988 662535520 479236511 513889894 493412725 880419426 431195592 684129183 383518543 617531788 278959074 926782612 887984722 921245542 661246354 966189015 595201772 768936540 733905469 968771310 30634879 563706660 454710939 552499389 493619717 774076666 269848306 665259273 172224241 409923069 160325672 634674087 352087255 876372812 602343899 959219066 193368729 305976092 128349674 789635716 472170652 655669169 584135045 732265498 396721459 496967017 11256459 263074236 77131999 901162874 437620862 583469451 544702791 745626044 43275059 235565150 167716075 664037929 196715245 342336997 288755333 556101210 1159611 858956487 92839729 238379798 31726313 788272146 611594429 947188878 493901319 861211298 78543163 722771462 138928582 880769671 178276256 511630032 201229435 756380320 298632717 867954235 684706941 945657838 609261977 645564577 380692065 629522876 52969111 53670251 38402216 158758197 64911182 596593656 209721878 390215844 276150800 788941471 60006424 80736085 62965735 469368122 459311545 741960408 530185378 697441545 545068915 990624853 740706180 742271611 444505046 632463002 380128078 966232062 156641467 194283559 129212386 481669964 246694816 516849021 323054498 821460127 615555053 751226396 613738585 961994076 59301622 832749181 160934750 937253117 788622545 984001734 945051326 969255545 479329063 711537910 643326316 966319177 563055739 832502008 640100088 795331199 325625327 766006900 155643967 566103904 334612552 622677663 461452820 874346531 789479124 964352635 391133037 951472668 407712754 524248771 445027118 949181499 3231618 636480082 298556184 926054498 421912166 845354629 814793370 950737100 697869439 976972677 312843157 620833367 205433172 519534433 22034268 629644393 89471381 933237150 868502247 904660955 704710933 904671282 539128423 591807654 486030277 597538331 99785747 985365265 791154669 909393455 819078265 893285630 143954094 287466009 278096049 823658784 84491633 661618447 431512773 753697516 12360710 643285033 130732555 581984241 9876550 770741732 338830509 564607934 489412190 871358943 39698234 750841387 77640922 594282224 570858736 650221846 508702711 837149303 829264245 870480392 830436165 848603319 199503641 848775009 580285096 957694078 290831953 294592029 193554480 928539124 62475677 81952052 6515429 103715289 31115966 64313189 30430143 342047858 140117842 336887383 308133903 890925174 838114446 892367062 45031667 408082949 215276751 458575461 261754217 394755330 318300964 433826006 56769758 77487463 3086303 267412620 239184969 435744681 337131210 352275691 350474836 636641083 385330118 645013851 262372706 852330093 768967327 938007634 198156495 967640893 710896382 957041316 349049327 377908502 204635521 829378128 17843476 341047416 120594691 470190067 429005371 888866053 623495119 709333885 194320382 609589560 29623017 904238821 704382603 776065624 337124065 377758140 197394336 657389179 418045478 661353994 559034273 791833137 720259754 921956854 881205571 940755789 400028241 539536925 163716110 468674164 398479747 839037293 316811788 453498770 96453578 978021207 946619557 948757629 474830036 501400143 16116052 658506086 179810900 824854728 765142152 929582062 501243570 643509517 121752187 996328745 292536286 636099865 132867600 375655810 297350682 997990883 716606008 897571803 820126327 984365860 352526538 622683837 441063106 754941973 630154863 672469274 246480633 595297069 153414264 420897514 322616609 586421770 42025722 397004972 225776210 969025822 194044508 493283836 477061435 679309279 530798204 644262461 632588411 823548227 599245700 608261484 242494902 881029803 368849980 580760131 221823278 323776697 113099369 707264282 642751051 888586865 572236826 715758677 487731032 656107082 372743246 681110503 327443303 986544523 101291320 121998510 37219668 772855460 605727911 892692491 151601393 345372837 18834760 264283399 256436833 570986047 301130378 844024079 374949213 522433059 105845100 558461722 523767891 667801320 522843345 750131129 595268769 743893186 230416183 710229792 109479964 973451643 435823171 747917949 643140393 766532961 142890030 236598704 120780285 610273759 334126856 360237867 19699515 392015531 195705429 551071165 511713549 517318391 93007899 410582423 408894409 640103045 361720787 523378184 200399721 791146086 569667823 773769049 582104570 637428859 403539479 693012517 550361666 688483045 675532109 985834688 131780180 169214725 105919653 590279228 155497205 496250638 277414826 682546313 65440309 713571931 170500143 440891484 439683698 706422876 118571179 801223504 732966112 811289806 380942417 878794965 593174529 994021320 911170323 956209356 319270324 627266710 125623052 212519293 106555285 110417614 28590727 668220640 536319566 693051312 59093964 404011212 320320504 485497393 469889887 776415696 488287954 777368924 53675124 743699295 108141570 622159381 505339723 688633904 230132844 342458325 236393880 550862030 124617156 486992660 203089245 558591374 225504621 798467163 8006502 262370587 2706829 875774179 116228643 393616455 301757605 783765639 572956232 732893042 529520922 715964926 369516701 968574553 222361027 801402694 520282034 540771204 404780003 881631821 594571431 904486446 618929772 917290019 152020453 649402715 167810767 607991437 454767585 768595964 155419420 306691401 43148066 790280437 431821817 440766836 172744680 478267679 55224012 136735884 107086597 442342797 199012586 607840480 141262822 178476350 170610893 436908968 277769747 911122388 683176827 688637488 575056664 760961371 712829373 870062921 816825084 818425898 654319690 834773681 687890360 828024605 436125750 785317814 293350508 621951036 495929809 687396475 503183489 941297578 60834035 564999615 455353965 719294000 298408918 679459847 150908784 830981835 132466084 473410910 205790088 686249401 575136937 976784711 141134514 989433013 939948245 979312257 251342732 300708180 14870631 68894506 38673929 703801044 331342409 464975340 140668441 791908105 712054038 862274051 632011280 916959382 394415366 484172106 22077812 178925715 146133168 508238470 475475200 664964036 659160460 962152719 773918642 863045610 179712066 575913490 214465566 860686441 87019648 368599886 68292475 814616648 450602058 841657828 486488291 555658536 16089399 299011085 296062553 713490437 70471147 627611473 525815850 779833867 181268792 545631183 292830623 309151879 306739131 896579950 158989896 874982257 839698610 903749235 783191611 930760934 325472102 940500102 928344967 980487544 514467423 641061253 283838523 788121841 574395734 720651141 60424111 190821126 137037632 430117538 383974423 627034203 525375786 669678779 585624472 943387201 814414148 981451780 841645767 912849794 861252870 914630596 745245621 836462799 72554547 541641066 26217366 335796950 164338765 874376977 549676745 846418129 220761711 492379296 389591633 642816699 13761157 708223395 495397943 512934569 319853517 865737297 716606897 740483855 487854487 825585332 210263166 408727251 118535556 979093119 616722729 830892621 806337176 969813579 885156255 966447593 49506145 401189711 99460208 212140467 165389252 525974410 191223249 338719247 316344416 762799364 565533016 818367096 611910785 613536079 359281933 859627382 2474337 664068815 637454991 720145969 620460391 713799168 704254145 845070523 102775875 166678753 68838538 266523365 174346633 797444188 599099868 991721607 486541020 859509501 418574571 605415039 295071887 942344657 916650498 939194157 417654843 661307219 436943338 936655538 746244727 918845699 325549242 969302360 84071960 973093211 526746236 618625041 129458958 920222286 213009470 782497699 637169589 768512552 604213578 978290133 66021142 356530613 140209940 587670423 304918113 915640167 692468538 843212002 175249317 491241146 342003625 511850550 296365169 763055096 146722577 297554782 7757802 190018969 71727527 582957238 508448635 692860290 489008582 926310340 305014228 555358325 113226926 585776361 141797755 215056936 211304316 727391242 424378117 509123995 410420455 593889149 173752713 232715849 40094353 862236068 392218572 660771578 25269934 166875043 36414554 843699684 435097032 976627602 754268135 772782420 691261594 819074358 293313765 887634467 44178936 387023780 199071937 742482418 399272640 534314302 182686713 230744817 111677064 249945498 184300761 960509584 126281237 510041692 334163445 518013871 58667769 502162603 60947308 427658082 110856679 582705881 427549286 489080667 399749251 759027737 181494528 276579460 22629435 877683390 685118308 953687228 423783167 804665793 39497194 505193598 59094335 939519382 571049550 966844147 828242423 989357322 126867314 477356307 65996399 465828287 319831629 693545222 475196197 761582381 719305486 983196718 11393046 322232135 149169160 798862152 560084966 629755847 405441885 999578215 652756117 900361601 301063477 946652742 774601455 871814370 114630258 853359850 163375041 819342522 315485425 416359475 332952728 971339620 100909179 424945283 383214558 628742428 41661588 663528771 259378546 579483277 240495454 924438393 224285750 231631624 194439133 744720878 218014865 408164765 116197485 310160727 158830117 970917020 248469712 399999442 148724249 212397559 89650030 362374096 171648176 243811673 42754028 695617267 251414687 964793782 80593691 377349599 355346166 583301995 405860412 549397278 106617992 245175774 44067459 249706533 10685811 959770483 283838101 763153738 94559712 549158415 42466108 711069482 616938431 704553895 240742842 480585071 412091005 966124353 230179298 597002516 477792554 763326035 763082294 993534906 980754247 997047167 875936677 957998387 600813367 968354004 151208366 279628934 218581642 241491848 3981789 808883488 204670713 264675218 136006791 502383899 160822127 837810123 108644497 370641759 326091733 389747348 204094406 623849583 352444652 865200764 119167828 597979469 223702154 726420477 599031059 875333222 418365279 912499761 200001804 885191190 161902971 836430417 71954925 339917932 233571072 738647104 702999934 930755629 472127853 894204182 850596328 977858731 459824417 879952647 741388497 947885019 495805622 514369878 352108391 657236413 470816097 801929345 484416583 785781033 38741653 592967219 426774596 905713391 327460872 719540265 60254985 232059110 11931752 485731632 422927293 664123399 592329748 877438178 82280253 120051800 91607995 922992635 418064012 798592498 597517453 960826132 13385122 666575947 546538527 780550285 392875262 718338548 66961887 532088753 106783062 575100614 475784988 702437982 523847281 852814871 215992211 327309585 305500054 413050787 158343276 868666248 534783472 789216967 208251410 316866413 67195157 292245383 253629281 763219450 394995026 651946743 537983229 596422491 589039769 877978194 478749893 731951126 125534819 772779776 88963554 705487016 695646824 848706873 228396516 502835527 70796684 478220035 471472113 960797538 742964531 806462604 443293753 926400500 197997608 402740832 101373078 723497735 636885858 651630926 308323649 940160657 292727599 505167607 335301804 573522744 353610246 985025817 377510234 933863969 296430866 375310399 168166755 819910955 51355223 999228457 57666381 835865538 563863240 730728567 258004147 685896939 557178031 651160984 554018560 781962705 393056376 748290486 672469616 722489530 147264430 970116303 20218253 69852994 37974953 503601380 383881245 970422430 580031542 704242253 564790327 694343182 124322465 399292006 271901929 720225805 241513971 870065410 791744511 810810525 534060799 722983708 530778421 661079881 8433461 240798273 53658815 220101805 180823507 423452524 64096081 704358419 554264554 928947119 135520274 475562959 317480695 985590714 221624628 487659432 279846857 622733741 506305374 815759641 28249713 865342793 863878079 866072708 489514774 634671167 311748401 824405360 9709325 628124146 83786421 362976463 260159177 518735295 223951665 642882086 37213948 53325815 3822674 165508012 26991231 908085373 2444899 618187930 300770478 810084061 3754445 959920436 503355120 669017546 589165247 835089462 174504105 453471120 432863264 824221492 8340597 257107585 125714796 367275322 324319773 566216716 24326583 324207271 166581976 170840327 149804783 475119193 201717443 377460224 175223142 436009971 392945470 593422978 153057531 516569253 218881115 781121130 190505275 330307192 88300382 205857787 107751214 347454034 14211400 488134141 377854968 441764661 90729465 657191748 388318970 657887594 470361805 942990328 518137298 784096673 194669554 417456381 285146353 499137451 300082412 611250404 377065049 908172235 541697212 630062536 63045013 331860420 249596001 591327871 81906830 189023758 180207425 319499269 254494569 959697740 843947555 925878931 185837947 432509174 308274206 562832985 440603428 828871922 9203212 764737188 516265819 866469849 693853215 951354383 557442540 613353638 111589879 667546430 514457892 810959821 803043592 918757949 446473409 670384064 80118277 310339481 124904587 163171213 73601986 828985350 720007287 896265800 306259042 988137801 914242584 964505908 938540716 994339383 619050367 893425774 22165159 710352766 228957204 285856939 131067672 333389619 110150796 654716359 336952689 919854871 804107497 948901285 865767394 986379085 589254653 837772786 220514470 611134651 293543163 699045960 284491899 499951212 197150187 198110649 82500902 457003955 45806735 512597879 198975775 424674928 310725952 794912013 106082386 417704914 143014925 969276660 347996517 742244306 610464164 890821048 55694197 654717424 36668718 198369294 82591569 781801199 332814073 594440818 228566837 850061561 447685346 999633790 857708841 926049895 514931373 842395115 415089069 725624076 550627555 844331537 635671503 774057051 222006154 308982196 175103551 245090174 7271708 461059337 44010830 760464461 598792085 705993740 626589813 972162980 671776159 677123920 519014724 823018370 469014389 736445138 234352875 407630456 96896408 138907456 2453656 7286657 6492242 801410256 2771522 557838997 506354235 815306806 7644091 515932320 111682333 420155600 178665030 276977421 111889832 634604650 471015576 686298853 307576621 326429871 159936749 220340193 84355951 92906378 90615840 688224578 475703286 513275089 189812029 638740878 130128944 930360797 927337570 969949961 897514433 919259406 498135521 811711698 754985710 926680974 542927060 695954108 400646638 924977598 847393785 975545617 800424124 849102416 741512595 937726555 180475619 960524750 260822411 301006582 298571936 572992643 255592609 297421726 66465130 435032817 208300600 593348389 39215409 66338102 11936799 16455394 12046154 260840419 86238434 337217525 41204324 424380301 312286051 672946078 66421807 100072150 53083361 987817068 652700120 668860053 344189685 505375162 135877180 577503128 325063301 775988777 251711601 513817030 90097573 776434967 666431279 886302293 13096706 662454219 409182996 657704542 11720642 65239266 35777111 613695208 411617026 542867270 190215366 482759484 188285935 709620837 110761005 257014576 214282389 431434574 252302040 275063797 154894140 409557804 39604171 799889241 367958627 860890037 646671412 709017412 387132781 473173313 291107235 535133956 487317254 636287270 546307396 936593845 232960184 815306341 397878539 604948420 73435788 312736052 308945888 734372677 165734068 346823000 190682994 935576054 486986636 956238461 906290931 958464560 929613791 957179521 331539538 465846685 148532361 918725350 227194924 478099785 294770390 527684868 39172877 335802473 5364808 765898230 469217166 879826032 672498803 831513931 296153889 685492996 349285401 844443764 109977366 700754294 404004873 754292055 221026478 922354674 379923642 633399875 613588897 872761922 558201645 939765229 504235843 996450415 992229236 996199095 277711021 663301158 356280268 465947395 103271298 877947051 459629094 906811213 881567998 999153781 50413206 596325506 25408131 932706526 394568055 629319544 30704120 980355616 52984464 513490694 370691280 894258677 639695868 789470319 159592416 552021115 286422823 903792267 147648401 414363573 175519314 321993031 209158805 916596792 194542401 604851565 86693265 521155645 474913569 602381744 511352587 620543937 197117938 448798433 250124950 971101613 866591753 947272846 167156815 370540403 157531964 299696861 243407786 952005683 192879064 507651458 262898997 953565691 917221315 930911785 379986692 605719270 558919405 612444501 139024548 673095008 579987589 715020037 562291471 622682006 214270497 351721296 57444693 172977999 85584986 502759476 211569983 352950882 224899299 636429481 284742564 593370165 197333271 433929879 311842617 721301953 278298170 766645034 39031872 722637566 613253620 857076937 75794222 476193879 439012219 554191741 33345731 341342538 5623445 586625816 366188953 581075533 474678000 490941946 153538400 600170476 207440811 609347779 130860797 417422735 122441722 461611069 432202064 879786826 313073839 607360513 319606088 392196666 87391396 828555504 745519392 941922935 721569997 898303940 824416183 904324566 722669850 918980603 232150876 890847179 356949929 844975020 496159231 669488852 492921917 981096771 163390663 868647524 684212027 831703196 753744108 784334719 370201459 577965223 511504445 960439342 444121136 878106491 208030108 651252596 616012737 897357885 574440075 680775962 191492779 902547847 556172330 991443541 102861510 317008296 5236181 699523520 345745941 855386761 544891286 731701622 330639451 834407250 810319145 951011125 395538491 549305311 298446852 478506618 442408057 786461989 480717511 859547194 285930075 913015930 769047417 860455131 366195138 639617053 488446346 721843022 419617664 827443981 507235903 635259039 602434803 913206409 716843160 970805105 492815133 937364067 784002636 878237600 692290452 895644743 874394764 964612164 83396528 634826210 515252827 650468540 324998915 746959181 172303103 826731632 259750071 788345264 671959055 934108558 565427660 691801286 22636365 627677965 75897835 334361412 154564460 189403365 17696112 782170270 524171114 915418012 786588182 899161972 316528161 569875684 8421415 337423132 266911595 397278824 214020061 752157420 630808461 678497266 592004912 719403666 135587740 508141544 341501811 670351080 61709896 423479893 241047683 581062134 408851037 623556448 284839789 562033891 277322822 822612298 370073146 400359583 235384999 908664200 523761660 754785952 341675909 868720008 609735875 947604145 180885762 896090926 863532704 984649902 561385420 976671513 537921126 680918166 678827807 695122569 418476424 981833361 22209818 333472009 31935105 369371215 158159604 179857694 154651046 693126674 591788511 635098380 203708069 446202538 83599369 429803684 130742585 477220625 61158567 234987598 226238840 524426486 511626235 679415021 85785447 684946047 455544489 765755228 200999467 241531183 183235650 781234938 446656673 814650771 619068617 855798017 280380047 570774758 158118925 460320409 272186654 784910310 121544507 410644490 361331597 766703516 686516999 854558912 326772452 338587979 296823270 667247484 646455576 823461339 186217046 322846733 75655131 810678772 573246194 953913743 439410893 685405152 555491127 641556662 67080720 73310062 42141082 436829763 349190915 642650211 286106854 415079427 177806739 526392412 509744961 539308578 525084539 908897071 434308290 672519745 352115945 370865089 896969 551353429 101233851 918900790 734847379 986387994 11779013 783315184 272160959 679524478 453553414 605001926 198885376 387909783 331404403 588399280 5906982 94436272 16063687 986828377 919879924 933456167 27002903 944692743 2885821 580354352 323441963 437504759 271329290 667632752 349181051 978525125 844269391 846050103 227640499 406883495 105816605 599957762 177689487 370670138 231600540 540128480 95425242 817522243 652531446 786791449 763977042 784105595 718064905 802472891 232788267 937802942 885767750 968745807 171364205 389443265 11184684 574163674 206880236 353266788 84568599 906770231 744979809 821176937 790296653 991803207 620012018 944907267 213038556 844562873 21601988 741674497 105702228 847913087 252354230 283351144 212663427 436868043 401750263 750107187 513644743 665373259 258611259 506498563 325084754 957037011 833578530 864676475 596747830 747091369 503449787 848477038 582479560 686912722 600189542 916558326 726039485 818990893 518371450 873354948 160520422 365614276 60296310 688808656 103145496 421052688 300473079 677898523 226075334 667771730 466384013 888710421 705428840 984284261 21865665 767031053 402635435 594411417 588621145 892019593 558792525 642310204 131256604 680054785 465568475 913966167 326328527 752039032 17331619 981463021 712267940 967284622 916126676 968592279 181226581 717046545 384306311 948929037 849144417 987445395 287430281 714752681 188170129 918719543 56609623 425079441 245002240 778513649 128575841 738825105 388340137 542913415 238841874 415337939 17130526 508532852 198744195 270735367 177874050 208643236 27675310 200488921 166907303 535792968 315969320 863225783 338717493 387025613 180440235 204309999 71575716 783698992 580630773 848551609 425240984 597903031 290360188 406563693 284831888 499883584 319706038 547773670 407782487 560220745 271956385 419603119 113128295 332658178 154935368 565185191 307591367 887841447 75328831 432211840 13990738 817695523 696408438 959837895 397766740 915434132 419392327 539775981 509590038 918368750 54951128 519612831 387077680 810926293 512224388 802478096 756896860 898529785 818169531 934949152 926517551 981256549 110460579 487976577 456345259 472006419 343686071 657231330 225056123 417120435 32438523 258656498 224572166 963400808 605777740 676984655 404264593 954232981 200479103 579767299 265327507 634056625 344017099 610289024 377888088 878992823 122160756 602571636 341110575 734614844 343648567 769863647 502076393 698247529 405679756 695234032 537273154 688579077 467470913 967959786 962768057 977831097 677877127 997031592 392802578 697034275 345937727 718797978 183813879 238335269 5461778 441335471 223744808 405584420 188756357 843447532 719644707 874804448 467297103 847905980 713592678 728172165 80333214 721514892 582702337 618189910 282186925 463831578 62389395 177969829 168720820 897075717 486991430 571050013 146790474 300828765 105814314 219927001 7301942 9305912 2429214 983116344 433326370 985450794 77511968 963079817 366006558 919577749 654254945 950248674 60509571 607378859 322873527 991814183 164782336 480432734 149456316 866409995 375332915 988821905 735691509 768401745 469780883 635550042 576997913 610113422 105548896 504825109 251263915 953783117 923541361 942875871 458545813 698145157 528922071 545575732 419041179 730110992 629775435 760013323 661628214 851171327 702551513 847448802 445120541 559367244 425743981 728766982 605605433 880752328 213940119 707311866 154614279 591004430 132087794 451651536 124303835 672998631 518375997 833129487 82633493 227151075 126850137 880257424 688772956 779983059 751655095 751704735 493261309 759535199 494555638 805855339 561108410 974486242 571904944 616191580 347790026 711527876 250930103 915915066 811748438 837765976 368634755 513117728 152757929 944371784 930998135 967069623 408495298 608683335 497629801 901915322 18579646 809036310 221686128 931611032 906475023 907635224 597771781 755830057 214758226 983667453 98996741 400996002 86493913 357808153 332741031 785695310 768381864 792592211 641678859 814725956 303597074 737675082 34244449 765578659 627034303 648491400 506237989 845080558 767717486 846822524 306546778 515908981 196930376 796296963 50876429 558455947 106271486 916114312 824037577 997226213 357344551 439069385 316344460 480262140 292168437 398886655 359484858 397750034 207498395 591347956 87759972 658038845 134976068 450395595 279510461 406927675 308816870 416201870 413531422 482923186 284021315 708043245 556803232 756729144 7634845 439745153 302735379 461442195 205380219 483737524 212378186 845116631 183778043 186575260 159343717 626309195 114252371 629213485 193919713 450480250 431988681 683922211 127257959 748151119 477284865 619461038 175815929 490714261 403607739 823031663 291235758 434837117 137406794 588067179 76885621 744145546 114816235 543725247 14504506 902185768 160132883 320906718 99383744 375599638 34828831 721163988 602839794 916346847 815707960 960943006 199989491 628646458 485497100 506048433 483706605 893946030 834449489 927375347 259623036 897984852 277868842 971248143 337746692 557538774 49946671 627210564 514501211 925947399 814603584 909343768 222811418 955390488 925687053 966296339 909294074 975266763 354441228 660201865 79879655 613823406 139980555 747450584 276728025 488297404 37431875 290604356 107113391 212640119 129217310 829704200 705594885 989205423 8431387 457848699 84336204 610309149 48604171 267101451 123673416 886743177 88681905 783464478 672404187 727134692 417000161 588316815 343198464 999608957 336047521 652341106 19486567 84688208 52955552 957237119 322689898 690137462 140284740 853001643 607029624 843532469 474595260 758989262 719951671 949123034 462155193 768248086 68263582 744812904 204577567 663681120 28600515 276657301 206845922 776707063 367016801 901811342 786013038 829655572 400683333 878798918 373570258 934298526 224819488 822865708 598095398 727621800 172044608 786608175 122476793 509919412 270821427 939298265 898885857 925802548 12486748 260744191 124042893 219783670 56220766 192325947 59690390 838466454 7955531 79154173 57630767 417764433 371065159 413724207 68089459 249021555 95894338 951732468 531468989 759163669 158705909 720130305 333962353 377786444 182433743 504995094 398365688 908539335 343837330 595153415 151359235 431795504 50699263 792660509 278236087 475185422 89819004 103783371 95028851 245874700 146115904 945815505 648440496 801135822 35811939 558075876 455218927 535804012 340839499 570967977 415940827 633757888 632398602 872080173 474823162 721140329 324162385 522010152 225961763 668871326 499832661 713247350 353611543 738742605 276066718 761195134 330406545 748530345 562582654 851177032 53704727 629028904 201787983 924159571 640501900 789917861 156306146 248926612 7445763 652440786 311345357 332501855 32082516 856426856 629610966 938527381 130356460 779883243 513358106 900521477 626026564 838115829 407794917 669371760 532474184 898785911 438841958 598391031 274662933 958113312 334867281 980932687 720333632 901805631 65568692 835610775 27423532 132362904 13164253 691143123 394194537 861860174 222432776 668104544 547370633 576791102 88910275 826216148 272374136 568465309 180792904 296694348 287892094 820995261 277484631 528223793 112945871 241251701 208278885 228967057 14287749 815007051 430234216 767341228 496171324 728127014 507457941 945261779 293705135 342234302 152737954 522160133 85570262 408440808 83332779 268244551 255190159 922378317 395882986 443307895 186560198 376737315 314140464 436027562 147171515 874876233 93070154 614355788 560909685 813109964 317718478 401103156 115518934 713897252 673092462 815098539 139380983 836154419 184156583 746006130 62705625 812402567 775698644 814982314 552215502 740062681 44407379 636955122 592797498 808539624 181464301 782668613 692642784 891421660 223185408 603664751 602648983 784866746 284040422 320111789 156646696 881195152 650139304 860419119 612975116 707962453 373502536 558372299 172337716 277434554 83549075 273906229 40959601 459123887 218460663 767008444 716374841 958885342 790521114 855787098 64920553 618776535 495819457 788793499 254974786 306311854 256937878 408294887 201346497 208193069 53651864 167761229 11472168 273645264 210921326 231852028 49285871 474942351 260820216 712321196 287201982 376736661 189144341 638227125 22310006 858765668 712040140 927583652 892821167 938021303 609722546 791919502 159629810 303462210 28703699 42677239 36481477 385828661 355324605 822817562 524442899 975334101 36764849 849256987 344820387 855696756 450743736 559168642 290696624 953300361 492443065 762502458 525924662 998226960 435655198 456941993 390943000 530588135 354099246 473195542 202653693 610862250 143124087 216308604 106385849 743541807 664856270 945811405 917744416 923233226 330530297 573672211 458474512 528576848 209318896 965323201 44498393 195239588 43400128 575589969 262790191 569378616 207229442 346039377 230898203 665859428 141841676 974403072 691205476 928982288 334901811 493257359 177089821 672221006 233912742 641058944 570285807 669082229 649138813 689488083 651165954 760763469 57123863 877865587 716133868 887231440 327168848 967687023 89251714 637867207 431538699 991425548 124181735 354046655 239631248 896592063 87306800 869252724 724468094 864254323 720975806 929146278 463588908 753560001 503974823 759690180 329218589 476314937 38010426 635604414 606650847 955143090 669367676 964399455 135378875 509136042 213764672 546360799 3406323 330938070 183372893 971829041 427719320 715481242 231292549 398525277 303329025 977918013 321869263 942981435 390805405 939940352 330378014 845793773 751272899 914197397 900211559 926907299 157096962 534788273 304973641 653571110 325714634 966237171 589193958 820341122 681462038 699305948 29068176 536303513 30844656 942965081 694163757 988893640 115669177 268296053 238345753 579976119 135205884 300231854 188059866 195581495 108347286 633657705 108985837 728005014 489877453 764193454 466325261 937899932 88602104 350637622 163053861 867453736 794086882 803613868 662756074 936367549 8074453 378464119 307004825 746054883 134989433 708633336 412517718 424896981 162250098 694008250 644773074 992348329 136218450 589084406 494204346 861296593 493399240 931207415 411116861 765048303 429339306 859634460 297506959 972048052 828029044 861398133 603046594 794262227 301457533 565295971 450944626 859797498 479788828 901040551 79128076 314611191 222806153 425693163 32718105 652091023 92845013 375328710 259854062 850211084 822677177 899368872 544913163 771230663 262538955 615106678 351585423 674619225 162640381 815082510 718242977 865633751 609283965 777866082 534457013 794323485 331130764 440300670 34230438 141610996 31275723 367098340 158177817 412946529 150359511 340375498 330246711 871148822 844243316 894896707 49857826 188010481 16542117 538231060 511365272 760186062 736143644 886942559 818077139 902266131 454287248 493490169 142376003 566973267 343635022 481443161 481033152 886664502 554228451 665267970 506575685 562053667 137414693 494081356 123518722 555500337 130809261 957965667 517926898 693469519 272320952 824361876 688490381 865832719 654724609 921858306 571448460 972110209 791339819 864878451 365999930 574874731 61681641 171571451 9237882 118682264 39593683 178296936 43493468 84519483 3677628 314228049 256086817 906169411 895926043 914834879 536257017 745966290 628575573 645801769 452712025 512484671 224826657 920781282 367281318 813504492 7894895 477293352 3995353 321971032 165799396 808782307 312456738 977496924 237639288 548457475 452680618 769937415 123158545 454983818 75510237 418687415 265878209 598239665 262096334 896505728 223942216 738523594 227143413 721977346 366423577 472181449 330144562 822555927 747906091 905759651 601977386 892637127 857629506 941788670 30646501 71381473 37539652 837331533 405073979 873423819 288061378 512290591 309671159 790556023 437397365 880241554 144191374 838336133 673222601 795447066 325432347 831267576 590617601 853826507 299924514 785927235 423943368 510796791 110579973 528912006 402149929 622971195 331852276 769893037 604616315 829321291 600541108 713966422 269922981 346162877 240423122 346300774 318900404 573198807 61107462 515638397 354037220 357077606 228391603 514807530 478978088 927709597 141277499 961480399 810920536 856443521 579287220 950761100 877749878 931487357 513364927 522150052 492326307 877603213 449771128 790267082 306166682 619449174 19912915 586352061 500648442 710532799 492144246 874472613 202075243 277173527 153556416 727420426 685891749 700090047 334014342 705802263 329978591 597740395 4243738 265425881 119278944 503770574 130969286 564901495 551145876 877555809 489649044 679361967 3617730 894365449 180929659 616803644 84842432 488181872 20827507 234592770 218729314 659626274 44753270 154872363 58087643 474499798 231258731 280965364 10365105 34178295 14315912 136139496 93982420 844097333 532348064 592244324 157154039 560501457 155668807 337255077 209400145 566085242 296815241 969372968 406190488 445851150 228626486 907914342 906386174 981884476 57466464 946391657 751267274 771793341 661064853 942043347 500680082 849846263 344761556 727580008 149656426 795991450 659900964 907710025 197338155 309512429 55662661 149595291 40956468 882949815 417773860 965673716 417999975 879130525 338061945 804372643 598315669 822005109 753694836 975542363 407274258 469675677 176379629 398345757 115096239 538127931 156419368 806133476 295526217 936390179 434098505 532662441 348646039 572206177 128890274 548115537 68367767 155828782 150328291 247246227 46338748 343698454 175573500 474057862 43586914 769765012 670867745 767536353 94482764 789614374 725304175 836573296 130865799 461246189 406906300 741852938 208248711 809122816 353625018 532499600 312676195 469500858 112437722 239290506 9197720 450945887 183957992 235331446 215130264 809893500 162775189 802725472 378242731 967827589 649676190 775434063 635644934 935717586 555640591 599616004 419267242 923987304 384728 278211220 230358381 886493646 150756115 219535495 18163088 292325843 254618926 908687686 791574896 866913851 113824191 710567960 544806142 767302999 78947488 724738130 401049663 436237831 307470920 870255532 717910800 805119131 695519268 877793697 428047107 458381573 285431604 794210080 522500854 713751757 91537601 975887602 247263023 551611822 184433170 937106345 644394360 658903975 402126145 632477164 85378460 817717626 674968899 909639293 481069484 954272980 520756500 665377694 335829118 809683734 340386117 955349268 39154981 456901448 212850410 236047353 77736366 551971549 461922104 817503441 250396932 621698597 85639701 729469141 541976160 836722566 140581152 796272703 760559979 869515919 121466004 433574694 420820412 857201777 351243158 554188705 206214345 229546046 29155864 962127918 601153539 853595448 682601876 934333779 340779057 817844721 690071013 712546175 160353770 859715139 690462087 861176834 625845199 856289469 123440637 564808521 190164193 861405924 827493150 996922942 287392939 354953961 117098501 531592234 504624043 652731718 264634439 924123322 271014942 364684410 231243176 486127800 171183422 789288096 381311447 757111018 403591845 698862416 305383756 714567889 690188305 812568083 742713580 864682948 359308475 851842140 843750577 983300028 823759064 881318596 878762108 939506054 84931833 395951302 334088574 975332733 616241174 712889473 162348519 771160561 161835108 738943988 738266671 880156523 609389119 727721348 699982546 858371407 197205338 406748205 146225444 667644985 174167988 832871170 735727101 834127703 263503021 339094539 197150915 585060474 342896247 517946154 263274094 990127690 292024977 646301626 269346269 368538692 334348571 513939605 292528955 650653847 551257787 929334522 11135794 927445636 363213649 919803640 823476963 997068258 424780879 597823349 542248151 632698295 617920632 970980139 337727379 433008916 12290318 592105807 286164093 762887950 18979610 489501613 453650752 956536739 351125530 853884221 767116375 849226491 462039534 736800020 328107132 807369275 665598776 753488113 122426830 852991252 557592966 826048360 336421256 455988556 73948837 859179094 291871744 390835664 105927967 453489443 24082974 704481199 121941650 938655500 231421709 823440426 38980238 325340744 317395743 705200841 492153887 608050627 50508458 785283775 457473860 528860192 253266494 649361267 148947491 685567567 524654749 535507504 31999844 314412113 294685456 866456607 566016276 899287202 672256990 872880061 236008683 617687049 557445935 687081314 354108586 610845206 154086505 207024797 61867507 682236618 119663802 281736911 48630881 958962971 519964811 603437672 94872521 827601856 372957528 584094551 583234189 785598683 531517889 971354774 343617452 661217614 46971273 198894309 186390363 362957339 247694298 746347827 508128801 847454128 666852119 720057687 98734832 806196139 28505417 707469258 666506129 853889783 295009591 710698876 619096429 636573644 574296180 868099968 636551518 935696286 894684154 912084579 276448455 941090995 195938617 797509280 788895782 872056367 24294422 961736815 565149148 982145122 457248248 905458062 166418203 783891778 342019708 455314145 63899774 736086470 426369262 465913845 153134326 418361999 101858032 419281116 69181683 874278154 619924060 945586594 12230151 62487599 23290329 576437400 7017445 889043708 451839029 915325163 142148574 208164288 136638588 515584067 208408084 807153734 232056398 755471207 41570326 431756417 431255046 951621981 59250454 229734827 165442217 518769674 376408125 865064355 671614369 748670411 700359044 973831593 870885811 931577543 473626517 713996086 681022368 851680427 608604440 789677490 372600734 670710574 31136608 395387682 282556613 644769637 41549658 420304591 3602216 246953112 4126938 475930618 194257785 888284640 747707544 878881429 735257564 854499560 792609866 990405804 160505766 766546528 318732943 983567761 260254212 663028624 417734438 523876899 384774143 861944180 787379353 917250863 308266837 991868796 112175449 853332676 637760859 674666028 257176197 958396021 226891478 364285575 99211860 235585160 109532777 757048492 340646223 840397804 425040740 715345476 109102682 744640544 125866564 987016002 54260185 688295189 535201417 734390360 56764726 254013437 52144878 869184361 472237283 645511258 157163629 394479779 274921994 561256018 250686077 864782839 577605518 970457520 81105589 304808646 236837757 717158543 453103710 930417521 131502118 237976909 55822801 434979732 279153063 889898173 50303511 754968105 84240439 848691921 312427723 751464356 644985023 650742092 143667128 439385540 223142823 887698924 725185929 924104753 796927570 878547754 331159343 341225865 293619058 995204181 522149088 825726953 156284368 841772716 586019315 605219256 427880149 585308638 479098963 996635042 930174655 983829347 725168980 921521908 358267107 576251810 408863655 919774360 42145977 443456995 26725569 819131637 621864134 712136092 242680392 287533833 205427076 289526323 152585090 500033688 490402021 925784511 85775457 628284664 591343783 760360840 267787112 646630946 508151898 677728801 573247511 654344975 247390988 680324479 229734002 408217881 351287514 722996867 313804251 772227752 732844206 987853720 352803533 712832484 320188867 461607866 174719215 196696856 6468873 336385141 62339379 990686213 861655735 929866808 440116503 821195936 752514536 809969173 520207407 729067194 66538267 278903077 203087330 948775877 938985020 972216237 103480561 717437796 662164717 671401255 573148745 932631259 865798872 932338683 446303367 532147424 99362253 501783578 306941047 933684479 607933423 935744868 250017695 894882604 622736566 668876876 378697139 956951241 402433946 864599042 382810459 442918542 178064562 984839755 458680736 883074148 171563189 280620916 180554067 675511317 341385236 709497634 504161613 988090240 442746458 891235914 212358693 370167021 138204328 684788233 663859559 955534157 900289407 946793950 338904454 390068977 234337173 714086042 174035376 276131660 115742777 957730167 510174212 703236393 402935777 553824404 366263639 459724804 202474920 501322649 163121669 862514625 136148735 800820638 101094529 966817565 322995510 625994873 428959861 626424536 366641716 383253660 127444177 345003390 168582503 875944554 212844326 582917064 155108717 347183949 230907361 795846864 232299695 756522056 94213781 246949449 167403413 530247523 38675077 471441471 22095986 928772965 401269928 646195929 178529136 338376835 261770588 687075464 373757384 658896712 588064066 714661763 398996164 537638258 339814355 518190868 404074805 664911466 32301932 326386942 312602120 741637141 54515970 726529060 251458707 905550693 573407632 691127771 313544804 345504270 50579752 353009690 312877442 601620343 246900299 469356325 309827229 347366645 33074443 787730248 735526908 812838335 140470915 338525742 118101392 385746652 53893880 691159679 509305843 708532391 121780763 285817283 105683767 866701664 353467758 957281726 943736747 957052816 322676113 552428571 472200048 932127513 402951024 617952119 570851747 609658487 309129161 557149474 222117705 738959663 588327207 831128207 414854653 572373298 271766808 754673945 329614799 368472136 320385535 602949654 21998180 825238089 486079897 709095177 305624690 495997677 310956463 688853931 444693378 893157617 283842737 934661579 463031092 627835536 193774889 843907280 159621543 299424931 285305534 625392285 95779791 620361550 460418297 912576745 420481891 609388137 396071493 546325467 341028256 946819814 762209905 873832681 428702137 831166426 531873407 777526169 124785193 380642144 120059591 581288880 440322109 980880068 891029092 984264855 404036362 425310280 294064618 996891954 29901435 295305626 294340263 740458853 151442583 760119509 170958972 717584163 602588792 770039644 546143910 569050997 284027560 835641575 131642613 676443114 261325858 594660372 445755767 659325322 309351791 571994364 171323211 370901389 19421461 554807208 152426482 538121324 531666913 947353465 446744397 584528636 439240799 883287640 297529474 613103417 71996358 87455295 66587783 226577769 29964290 96758281 45117437 87204273 83832079 336050457 290467207 414086362 362600818 712069515 701961531 906768750 92006866 803874179 787098082 990519213 984579886 995407365 923926986 979688368 223274566 541278821 531454423 547981119 285099171 581773293 219507014 578896933 463390871 587284378 24058819 934455873 639184343 724173908 229683809 935684711 872990638 906057732 5575905 24809403 5000873 516017071 237129290 289552875 7500327 682979116 673149298 831018543 30027503 90459208 33098440 49609664 45701873 728320366 175382838 949165551 18124281 433894010 239654214 579680775 49377644 115678211 27932066 239050660 175388276 809371619 712791574 731100584 69674957 283273591 7295209 773563420 95918099 525952958 468829172 966902743 367230446 963785532 154666368 165176609 25551184 232070241 190775536 773276721 121981712 565392897 105817895 325285124 222494256 436501082 189335527 649596134 623148035 938045845 348582011 816041851 4975571 408864146 398298934 872345344 237385541 909184516 28952188 905781609 192957131 590170750 89806961 262967180 140790853 493590811 52064504 875731057 782600260 859333169 679855816 877451190 279580833 316620089 257269226 875816875 693356537 713064852 534438528 970353633 854079327 958367550 200689437 260233126 204376168 770257584 551551516 813452075 153290374 895286940 329293136 769441734 357353041 576283564 37067285 984616117 369157422 559543908 488151916 639287269 20564795 775615485 60124547 210452475 122274047 746225840 426580300 916025007 489306888 894911826 380952083 414274127 156371906 655703840 539783451 698500174 171909412 277308034 264247158 542282834 16509600 269929033 258713803 899732887 368019989 635435394 458462640 472384362 470714585 932193909 708301629 883459203 282771492 997505092 762816589 951166929 158885010 358447278 75091032 514857811 462089721 473641773 39567037 567420617 104855969 916598797 438861416 854297140 361436743 448681132 67441685 203076566 20995963 926999774 514877042 701890768 19558736 159221166 129279785 480306311 320869047 369128389 40720828 53337441 26017354 945919300 39422669 353252822 15544020 27042219 10397599 607857848 241297198 636472040 168333997 949376942 714246147 855273559 842446545 909103422 90161554 352911473 151761982 579795534 111300571 837553531 510463868 659746858 134465056 880367576 465109700 713583162 405865719 939713964 389063113 409254946 224647400 418496962 116032102 690181679 150057872 551427993 445989898 777961437 625082986 979858693 663239631 767959818 589456254 718348907 57517531 263505024 252517084 615126197 299157934 388776911 319279533 549044062 487971517 741826840 247463551 620952721 74135495 514202812 163138839 745131475 473381835 778356269 551965146 625266191 246055647 789526835 168141291 660252777 540969610 744281655 340243204 680791642 384572927 727023861 29393207 794898869 496374770 802630812 187402545 205217445 129324865 315778219 278439841 450068749 68197369 427321090 65300093 196302581 14405553 570602692 408418225 794687193 451756126 729079961 591909198 853224344 224607213 276391682 261116787 907371552 174931646 415283448 353616645 837270410 60008796 992335294 589238950 757520463 154502565 466418714 354537210 839458794 61284591 293132621 148006423 389394659 157756385 626780822 308415526 942680518 74937347 817018019 72402631 823671398 73633804 558626939 267877948 375099796 213955906 920763548 638867201 647044861 414691564 953271195 212265793 673034644 287866963 793393992 666042734 699222221 246550910 847926866 387227068 488559764 216240399 278614225 153845678 838895255 676704784 961328026 163895424 798610718 602863730 892780308 275572652 781363895 498204669 593724830 313463422 338959941 23947803 347916017 252748444 651346535 394456710 549126552 464794287 834480804 330010895 713671014 357549426 978790879 585738903 999409067 931033676 997815317 351514536 491823490 389957416 709876687 187052693 728619179 412358506 423068439 225121054 569573873 70232973 823891830 416858648 830532002 385688630 918822526 875252350 911990469 102569660 689305493 413109187 712958212 43969090 189643309 59379784 517644799 254771351 758562698 197570291 764587670 353675747 520695153 294021854 645675363 373884663 571526676 136182284 238707301 103428633 670567754 323087550 410655972 147066333 690421870 147715632 949875459 625996939 684474386 581643407 697270477 165114802 390504236 312929969 330427406 84786050 360545286 132128942 632893258 417438541 462108057 421589642 866360076 129727707 240586868 99942667 253124298 105156484 791737467 565425454 610127907 6556602 317235337 41435929 534948593 267055591 470903357 332721632 837653395 653410518 682846849 311539413 712232222 134483422 489726451 432596838 815696624 457081531 960813928 167684024 743075537 54706266 325189228 78038548 485253400 158472966 460035159 297625833 988541308 870272632 972500841 702458400 816967808 284950872 953363953 583025672 617172892 27162339 428413927 104606025 574686360 267773744 383620548 199110555 946319745 259633541 985059082 269528982 567797501 87181643 283596271 129601235 808823520 353044978 408345306 8680656 122475191 120852668 566923854 164478073 383814889 269778602 726621000 323418577 331753156 186143910 311846159 121861301 662834027 118898709 216928814 152729164 261641765 217455378 853051001 271682176 937202813 490166510 932944924 545499431 638846490 445686922 987066615 422731877 799485700 740209645 808486604 327928419 363273049 81850959 838098286 784619528 960795306 398958867 433052652 247892688 844038081 412369958 640558993 23087867 750622102 275659510 331552145 122961983 200361234 156722686 180465557 52796343 450089652 74451717 599657223 447261240 679788202 240808584 278101063 99015095 636898481 265059140 485746578 224996781 546520172 25586842 788594127 334524789 902589674 332615255 484867544 164416902 887719181 20249251 674121410 13394423 492512534 404745578 924202557 470897574 915249203 798410077 997509693 961725416 980442005 530933173 935862750 124939065 197043617 127970590 938682571 588862543 963214261 291873785 321085285 59679741 888159032 354756574 630738464 324103214 964325731 891497656 969639505 29663846 283218617 74166350 264869366 108607254 780228971 661326196 795943010 95363591 497170726 111284968 162958571 115191625 653282734 473779847 787253667 748466831 859626600 332810753 543603717 173537467 615454069 556927326 563795452 39025746 132065479 81633269 419931270 310075556 844994737 261649962 387285200 112719166 853888355 786886608 854381387 443218983 654725328 515349342 937960851 46510042 538212950 300545882 373161323 31530533 815786045 359168445 921965319 558115769 865477292 32303931 50791792 23491714 413940950 90381650 754487936 636905008 702119719 34962806 325329119 173216428 700976007 347593549 622550339 293358175 451949784 108011826 177249687 85268833 229012203 11823329 386915213 2437093 735435335 405206578 429985413 247096996 408314898 268302481 437857306 244661602 555355730 260211322 702128132 503612137 872865003 244732804 545692079 190565883 649201641 111184258 420771467 198256482 816522781 593160155 606205876 574793637 812691336 603088787 618363598 277576411 920318971 834601438 991836228 547124384 754253934 480877683 985446169 501486658 580323795 447567313 630637379 427158185 862767869 551250441 948487777 325189271 707889207 253545154 265556970 27426992 514593704 171145280 907222438 282281763 381114478 41990695 262527052 251449670 689679653 317718706 593663440 462900671 958784820 220607241 627245759 231211095 736956154 287080809 546379473 191215246 834590083 512204246 528807178 304447507 393293204 160486534 801225904 770787295 883613584 526389858 697109389 525422364 813234809 286625789 382346703 326964341 489710236 74869448 331408806 299111241 446837289 207486197 931300304 74541313 738756592 592639115 631003212 292013750 636171300 250617804 733224014 655299088 974912688 720309707 795623322 793396852 807504755 170972924 941900908 576626516 848361797 201723392 272652114 242486650 881610608 626271140 763189400 113086354 418120421 90966552 283842722 64975014 153090910 92642165 606624502 515584458 658370625 185551956 469053678 230438957 968797245 360371140 422530796 127204528 514803828 193938059 662128411 528554682 805463849 225959068 329162225 16709243 43976990 39689939 540467835 228691056 663290877 117215859 216250357 129550677 949995950 89916230 889718132 619390279 867311433 478357150 717948954 362019097 650612761 64166452 255941287 120761312 948157265 42484800 932475740 98445121 424562583 82841141 173953791 120665058 183439310 180962547 439719114 314037598 643321725 263279440 684548000 209723066 348498188 146217119 155722694 27979473 462222948 150767190 780841970 377251767 537778160 325056823 878745684 78515611 349958948 339254520 849164708 269716334 858267737 820000004 977850562 354282389 879896405 496716116 605773497 162742024 931001648 23773907 236547285 72260390 848495071 379343997 822601335 299657933 426891961 17873107 55425981 2518960 744423265 117196092 434560011 345231581 893523757 135932415 968220055 821098504 941410940 263257793 846153073 504286475 809823949 760467037 811376360 254320742 863266431 463192301 791756272 294188698 850431043 742251635 840247241 511394120 977815246 694431076 965327156 751757732 779740823 299571331 443792539 182004451 594176194 425250755 742779582 220043051 462480361 6008529 80185222 63243889 338543426 37594792 382069902 247464386 486151887 463509814 519763388 389769577 993745393 894957643 956225637 657540467 833936338 571675338 951474704 174085399 609109149 79886181 331054463 226754055 363160847 3201032 639368513 343709731 498943394 448254925 667911809 325491810 645345473 35424093 249227706 177688215 791994605 30885580 575122921 59186371 767196732 537241818 781944969 651208595 708342502 265554059 268203791 63221883 651887966 8378621 681327290 490975335 608169155 491467090 968048807 198286727 711732101 610023211 680739578 344600039 787204679 551825246 887745105 394876615 546223294 109945124 350613685 324144976 421791542 221231515 392504451 113221505 695646488 3038803 62935061 41133668 806207293 25233516 571497490 554212969 684218857 265411470 975494289 761733334 883162699 213075420 612469151 410748032 569535055 394856071 789598202 725608059 743413746 498243668 814311256 138908516 179061693 92856617 379148524 171124539 782248955 382489829 565101700 306566605 392814888 94305672 703323299 65611632 126063687 6532014 794838090 584833040 777239010 279275033 391103037 285462391 904784162 659639583 696278456 93957879 292191694 233980994 661385318 424507825 925910058 689769629 804554798 511607088 904971018 243355853 247388161 27871160 925095884 407229594 813857964 671339205 912273638 545473642 594025133 155084675 930301820 400981213 868144729 336161667 865921100 738646 632615121 302324679 789496283 49251206 276209246 15019845 515546617 206214810 241306689 634033 681737656 312319222 424859382 12892675 981062015 791714139 813156103 745618700 812847513 159599890 482659209 439519288 505334591 28086132 904465161 432472493 465419353 92469650 604485804 404734212 412098477 215925405 930132933 544422516 675826323 144736002 641901638 553647762 714485958 44795847 204476867 115219087 451971749 57643670 763719614 684293564 701821807 684555862 881774630 37609630 781988423 541799043 709789299 480848826 999117011 360754424 861354986 853448167 897040863 789980415 841427992 386400221 402683228 192780868 616484273 189718841 807782114 118191595 172237747 144962144 447909097 180176622 846947377 173545713 659748587 457999444 818950642 707663139 858011690 661231211 967191742 249217902 396367721 177019301 532626533 440610150 961988846 831046577 969369379 372332124 407434507 173018595 827015328 395123359 998855080 392208352 895847013 178243278 761263368 755097242 915259789 244441065 729186171 713851757 946500805 510669744 807967903 298131916 673824115 24014576 556426615 465236022 543204461 364704444 589176584 242784030 593269699 221714315 485627127 324430169 551684890 227605009 329136817 39018483 528348821 464805768 764232426 763161333 867009689 569669885 606755342 95977601 101462429 76110266 513740171 251305419 785648308 491518403 755826191 110260418 940727267 129970746 309387537 99448179 536820995 358321977 623322242 410005978 942987068 843193181 941798137 186736548 322820404 33988342 824544160 183792730 517809242 211970558 343244377 152505523 570730998 302339635 441143190 179391501 185883010 132734588 437609126 5575462 147114037 42985327 757806973 348520286 992883020 320989636 522955571 390049676 850365143 282306337 876165674 816494917 860483933 48143582 226296647 224079192 377282870 5553972 880144805 553218842 931411455 62020276 576731538 264298069 765257222 513086883 900537953 144772025 258928906 75646138 162381483 4900238 5426066 2781838 876103557 340896295 432919423 69090555 193768676 50933311 189900891 133862544 959588033 305125202 804891399 588683886 711891982 370687928 804923116 223643929 923003665 867951201 884600259 592545893 869359638 699775235 985291358 169660487 864033399 13818634 238680287 167463418 268569033 31988063 813395806 380988621 708513452 627521141 831866791 453321825 930091607 412664031 429771067 174097138 876947767 812905643 943761978 629460528 785327639 713178936 917066959 142671187 958408051 574671808 631440766 444645169 962273070 886402878 997277590 980748444 994783809 278273595 559071550 490535695 709429733 653270354 842383742 652560459 878437245 276555684 908545893 182899529 790602923 489818683 610623511 64093920 779432237 210606814 791216242 175718749 843858037 729903789 820191679 444649338 593945880 545607066 822057771 2619533 299164087 149360291 923025577 895206086 899704997 809109742 872358859 600527679 915135385 501240713 838886441 553603032 960146379 57197174 797186985 683061674 755123176 104517800 540087553 213037289 919367628 346088853 544692824 415800550 528719359 339151651 357607333 309959066 716427846 434174695 521593327 38707763 978580174 19970710 150030941 129568079 537367714 85487533 643733524 122508694 165270521 72253124 611871341 340817111 386792232 320386053 499796142 261995183 312303594 163973524 230223726 159776954 690583807 202822359 443996303 142263656 974605856 481238785 486160208 300450655 761460381 679842984 839060118 376933187 581439566 515506808 880651250 737957989 991510847 184222056 362496555 141568297 907950229 272563440 297029728 209196342 676671870 50395722 178402817 21004892 946749132 931699755 952350361 845544321 930469253 604439353 975077601 490516155 542192653 65566897 902398045 607142718 705562051 626229945 888976567 531925217 764817379 725413162 845289972 745907515 928547703 354368564 498019894 88529951 819221541 569446362 739801875 178698447 764169961 645390244 648537227 572374029 778240598 580487736 787998109 696490963 940136501 34189960 520221911 110505664 928918402 267491758 676357242 413684822 630280021 621731061 857836601 7259973 10284287 7844935 990168455 182040901 727149969 406371859 672058226 41323507 833559798 283956150 616032210 560174231 882376824 511703585 582944126 363672302 923106624 328581774 906120356 632865565 787837015 590962597 990311297 309722838 461027962 24753028 565036731 385656023 935176975 751489894 757328814 193672179 311868393 174427556 570592729 184843176 498562347 170772448 358544838 348412376 964094388 843337281 860103712 798367329 956947275 793872297 938341386 252239846 981503816 24399028 470537752 178086596 367890340 70631207 887306277 883708666 949934687 663242474 724131257 553943971 620117494 282414382 344679032 73881832 113830504 79928934 583856338 64372457 804259851 67628793 900515248 649484382 897318201 107988913 811215897 126176059 853516445 542052203 667743566 124467760 930615455 380777003 705159682 71975340 660464785 302649207 777105059 666094979 740275945 532623874 847213960 151310021 363624313 344286257 893514491 223879314 789408788 72385958 124827766 8225285 251027968 228922110 492290910 426821340 589900645 524167750 902461117 317388900 934142024 723675777 984204046 873299293 999639686 551903118 612634589 90868363 100793497 21367899 31087094 27928074 736298639 579027571 889815622 463791855 870944138 474787430 485907204 406721026 596759470 489050774 997485050 673587230 815467922 530865977 747388610 702495041 938105246 120370385 636774895 172379301 911347733 458875385 783422446 282114532 406239621 253211015 888102340 781801132 960527128 332416120 448463665 27174686 639543281 300469859 941280367 480727213 949380576 450731512 969109072 107271981 236029431 2263719 291658011 279837867 847712249 361072359 528081295 198779978 501966689 254170936 917175206 323757598 454939053 392060228 695830624 582118678 815564947 476897526 517840970 415534514 541742718 415737502 460783389 359108352 773804693 701941993 957949220 578371588 796958744 211340081 290431535 52556945 227046116 125321695 864297612 552683414 830787512 123858006 646459848 27400531 181288272 166757027 432727900 96214604 109607043 2784580 23521936 14219311 258721637 119618185 787871110 138633419 369961074 94124036 772917766 103028612 708587431 256774134 793344589 268986007 410278510 273828508 476346564 146405424 775062950 22909139 886345262 739692219 900509710 45868084 103225380 13126693 958207342 877099061 949637042 309917058 500081655 324941537 956463654 495375735 585071272 274039657 404017973 87512006 833618354 326458179 966173214 276615410 632298713 622995801 809868939 75886942 579040915 236188558 244969011 152662748 463990116 185695555 381099862 86688778 429107629 315506737 852729963 706870217 742996310 631524841 788511840 391395697 486290124 393405084 960358278 737346603 824735682 185453103 313963155 71487214 305068219 247481777 719452358 642221403 801479183 31827840 286939287 12870960 921891760 549431765 886724307 809747763 918144874 91768722 103575368 82728861 849937729 113658878 334680411 15767204 496294374 278642590 685491962 116396103 334992535 277602883 300460643 132969352 210930350 7810600 606147038 141770750 312695414 72625195 475781095 461734712 536064012 51417969 238901245 35504265 139104968 91684089 125289456 17991823 508028014 21357308 161241687 137780655 342599910 276196360 813803191 784793960 989378013 337665219 980391067 26135082 66697346 19000422 70157781 42326260 588251077 533274498 709864162 345623622 464195887 9202676 40232681 14032999 925910414 408127460 554316719 439585820 602481335 523386133 903530291 439170189 848589898 406510807 979396252 945285848 992444692 47695560 696098708 75321108 679777209 473548624 735492202 518005144 636759153 343642914 574780512 222840323 801647954 474876873 648719396 421111425 745896388 162769565 859148059 296292341 975987748 463148583 540711839 520806108 906147298 478760576 939676909 586174807 640587289 492937928 725276096 564613540 858107671 111609602 416514963 345285365 932920829 531023496 784527206 541449390 940952008 643752054 783096946 584966640 702313320 346626022 476115218 455802791 561576909 466855410 866928561 83288450 925443877 146063358 272421725 121034534 892623896 103571957 735473366 250743000 790278730 74297187 598916363 525912325 551458789 25580173 369930800 170442661 671302621 394289121 394383609 273089941 309399068 52218359 344637586 115242258 675652228 540626474 939642377 522431844 616765572 14480260 757156396 203020016 923500177 336715466 426532916 313135631 725943885 23713373 396157183 353754609 628725833 432293805 636843891 428206389 439763198 156085108 776258588 34366453 724877615 643287007 966183491 462852430 719036416 178277491 555405290 87995230 206216173 15992826 602942290 172221024 831758440 50057608 708290069 123084129 364092138 191874341 655404042 168274614 430752116 309535466 931294645 690695670 790064989 422420946 873347752 421493627 887897985 29875952 768344883 656867746 892029707 771118497 869161721 649465863 870397176 460728493 682660505 383202374 817458844 355856275 356482263 176991933 520685731 189525997 358509306 132962919 460123938 173785547 789494147 560596245 810944898 272384580 741140697 156323886 208249229 137471506 890455719 624402525 902983223 395467683 548121228 434628890 527655191 262187812 547077392 123118095 971056592 263498544 646148762 180326631 951234607 943412408 947427107 14339297 973127955 538881687 764616545 468652652 958230807 58538988 112223917 17134763 287587075 269984527 337109144 235772056 918654823 406421230 529227090 352548848 622024462 570115014 909417670 786551930 949173951 591016064 977424363 711956969 785384808 319722060 689076686 487402626 819572226 223368470 427010146 107080993 534097581 98993393 867945769 529607825 942706889 257180179 747100246 233751627 838080459 38924406 294663754 181792668 311222864 183833638 491153232 121864052 205462187 140948587 522649076 262836304 854655693 730159382 767396517 758118407 988231458 914743933 956611289 203506458 370841898 267078963 448294886 390697313 949139589 101943562 171990709 28499750 783367254 478987690 585124121 541540901 584084103 512079184 685266747 224354420 487818474 485328813 822063153 96230664 888709310 387001688 767778771 506202369 987116929 816874207 935781104 829808595 946842857 821635285 943993427 570786428 974185505 779769597 814416844 649302116 729699765 189650089 671384446 167990885 239290563 211634408 747590618 552919464 702000433 49888516 770606902 275043346 585679811 165297386 780461640 456798877 942200668 772126771 984755524 153507234 725901937 525959353 566975324 272168433 289425955 77613107 673655079 442359730 571611857 551952304 727809158 264460322 600016787 74778071 461689581 96962322 665357462 232150293 773742439 583060907 601932639 375175678 530330854 467547523 725864675 279552132 609652897 570566370 599683361 330078178 692188963 356257852 647915713 105332851 821601488 351145869 958936662 866978648 997891382 804307871 815590189 280300693 875477444 113336269 516673946 186280506 657858807 418534808 892677199 589301153 710107917 124242461 877473267 421383612 904552488 265162933 592900009 511776629 944280094 522194792 667610657 46769490 374577537 121095190 566957768 535729199 610867993 72172662 920066097 404643207 445272910 271311173 615555328 137519573 205929934 131627463 165167930 102688815 274590906 211786954 632362301 467643644 851479380 835237242 869161469 88620291 545174951 531574343 723108416 315825327 468071223 362693191 884791279 766676321 768122732 355563397 987120799 720138790 919542180 364639776 435327869 400715765 604091275 91864984 402115087 213576398 220167402 57791237 156630769 100027126 667870937 262076736 447365313 104396256 114818120 46790978 604222355 245294844 890568778 30260019 575391621 200482516 911651417 329641077 647357066 16126120 701097537 558863801 656432290 532611171 908039950 812699055 994388283 950249261 984350560 599596295 962080407 324344096 357841898 197073986 426189604 236333438 898028144 458828725 680233898 304807168 530011239 206903262 936947779 119639633 474684196 148555683 316804643 246099970 539537083 31173379 694637136 64112763 568318269 38835587 657335169 118851892 927298902 563293363 882711416 395655843 811032954 9377361 362939127 60025799 362094346 307920360 517810722 299034572 623628496 211345485 563590863 110898992 423402406 23966658 593857367 327066321 429906160 320335373 819396793 85955880 821888444 502955793 815576595 809484852 960882183 389455797 401088040 193090260 778750280 21489163 867426655 657562630 975695237 310395141 657858921 609716489 671704203 519688324 858031978 174951326 833299832 759408442 950244858 861201705 928130903 693576392 896199636 114255438 785070175 705436803 876923431 816116476 865224746 356825539 696463604 418801102 828510841 50608867 754470448 149553364 242542070 114733331 679229562 92626575 97298192 57882674 661368962 347412226 348892966 39648158 636850952 223702409 891281498 310541399 340195409 226215933 895857347 453499450 528876183 120278177 158380146 59289560 545784461 270540633 383866773 379513923 770858453 479160067 941973254 621230263 824713278 612083440 666461658 11221510 671962380 4547128 244577025 112684645 467858051 54719162 395674421 361568917 828487944 673234301 759458464 742647646 840512740 285125169 678124575 669790957 731159797 333668482 710243388 374534671 703431242 170681108 554272480 207337283 395224077 334498652 594701862 429666286 651943731 130642313 585103738 100331624 318250148 225099311 347465405 341560323 836027105 727664683 777365574 122393513 561638611 197216669 673875568 469937010 480472665 79092720 673077263 206292724 476133098 392752991 532046380 368874885 781383827 678193175 930934134 810836651 815607278 17260039 706780745 651772373 879591395 830726780 836728121 442405097 465840770 384194241 939200718 583453706 708096614 225042147 706773540 616776358 788891093 621466873 981828018 719639885 885298885 3277771 319256112 94943864 727913238 594509178 625180890 477247928 506321919 308375245 924245239 363998625 539988062 530837440 535717498 473902005 794006206 770171695 791126119 304431189 991055324 458494918 883147618 874128852 879772100 40470770 999654728 112362303 415600043 267719049 289633447 198555086 925906388 869022846 894090189 180040949 374852295 129616392 532034123 66281601 591344512 318654105 744857506 254964452 747585174 380516260 595669674 347879311 831044866 496181445 920793786 626535837 644296496 20715817 165997561 145870133 399082382 61982044 334437847 285409263 420503605 371450659 565475425 502446500 829480442 633994310 689907482 526503312 603843563 120709155 546021247 490126768 542110886 286818574 606358548 216257638 617723201 616721949 985350216 747471558 903396831 234879519 342796392 88763423 613510992 504286002 540441839 93746759 148057862 129328738 992331029 653755365 782823216 357529916 953640429 331392116 432958777 277810728 775825325 110278843 975177130 182425319 672596828 297990919 939541062 45678874 549077288 228038955 294185454 45173803 170050964 113391473 743487240 270615689 556186882 71073794 798139028 156098595 936152797 81306105 578270693 304625918 687834171 107458185 768714932 166624100 412665072 333935165 625039062 298356706 549308126 456577207 540009950 207541287 756074241 219724669 548320553 415890095 810920132 743609458 795416189 712585022 935733047 20145879 244851347 175423031 705526050 610546582 792427589 354757599 880248440 330122396 517985234 240330290 659037903 108308377 445608854 62973993 585164866 402502737 528715618 407823103 940679019 287889844 660256086 301187082 556266386 366746466 400929981 255893132 971235640 328742042 446966387 254620810 517414987 488919984 492813846 55392816 289003612 35397345 769674500 257743097 335940168 134575059 771649704 577085894 650313351 346089872 913302603 270144302 807269461 90587984 534707230 18160911 747561767 47697990 225611142 37948785 364279471 325849394 595802474 155082190 287146668 163208069 691314078 514847096 858164136 250497897 852497585 138425883 885009532 491825487 755903955 44903718 314640351 314302547 841735609 137658322 798499158 286479016 721459087 288917906 444959562 320353636 574379510 22669783 422355629 151374715 623587461 461977945 532763899 376125019 554182560 428978289 810110709 447110092 707213640 395132772 573164897 346047055 746156748 44564580 627236395 463731182 488915275 415715528 838769174 204750472 601989010 453694592 944658602 78678190 265376873 166970717 540510647 278183578 991019517 102163205 395725909 316715416 394356555 17848294 970097315 73294521 197712848 169225302 569791104 9909984 707541170 504558171 938388166 58192379 317463808 276001430 366779223 124422208 648896546 146303953 938669699 824210703 923523661 395372086 622672558 515076563 600780785 231110967 475732652 453409496 823401707 620758251 813199404 385645002 667087668 393579863 915806347 614094655 732837990 109812939 996934356 602660980 615330159 231397076 372695959 225154310 875569916 562788281 837953847 123721371 340997863 65012801 875937162 149470229 483599484 179574087 671850136 275472834 682617007 67230119 361833744 56412822 624664237 95975070 320265313 284232655 357088639 316398766 639689118 311388390 814800628 629931562 803441810 273269385 663781768 455276946 772756942 683470680 906887311 37354332 548770693 522013504 940971827 405277642 549141731 38322957 321218047 225777199 357786519 26622768 185466886 174816588 495850788 408371157 425519653 202643887 685584744 588727787 943999106 811006780 977336202 809828478 900863522 509171641 723942476 247342086 297751901 145804487 213170098 73169725 377374077 212775137 374521669 136818133 999372676 623322996 817253444 540731651 880614722 456754733 696901913 120998666 412965746 116929221 479201806 224474508 583446857 33044979 415059701 38006664 480687986 477257961 556598371 374808975 831490863 266461367 743871458 371766258 773479171 23496788 841202327 562265168 820462149 346572001 557368038 375378816 972682752 231366923 265089545 121229023 767989549 766224110 900599014 452007324 669569667 569663574 843304891 774010274 909357653 904476906 961135693 88751142 611475049 5174603 438554558 291461685 477455458 82840413 693840792 397752206 696973046 229711019 821812189 184018052 858290591 769998247 811776012 23775799 396828187 396322075 541936634 491502311 830070835 474725336 906455254 327300171 683464519 411344253 965318643 563634507 663021448 256848755 902546454 677932869 745335867 376305675 774287129 147229607 313544703 71631158 666782837 661113152 910425305 719744494 903074638 190632766 308133622 299484454 500619589 179038703 765728081 551133750 927770371 262627815 801738278 730782131 906188771 219858810 926912745 793572796 977460466 564304811 955983747 264006103 538167111 470315397 888841130 384802070 475499571 66686947 440734533 304916867 924204548 48270002 983918038 128603590 884172132 494576923 845633874 338126112 873836796 412068810 931074606 249042633 372466992 164113483 590573806 386460797 436113300 288909865 405915016 373209875 831300317 327877858 789546344 453696579 859569009 713216941 820956500 369380657 496450932 323811318 519156989 115034400 765820536 702319989 880151874 388284154 895390001 163687415 474576471 305669375 789999802 655663245 941140149 402728974 454093001 152769875 640774395 156032421 585949232 381169186 552972152 130746084 172487926 118703444 349608348 235047546 477501584 124371342 708060422 454716001 505077916 436651636 832745529 351583093 786004464 49924929 214880342 150766616 391159148 14974405 954044593 476150103 972340938 145944268 397199242 53501888 165584322 125970916 465821659 77470831 461282670 271859967 782216387 422389068 670703134 157082630 665408946 532620543 795213704 591452393 990776064 108712908 336548882 12057698 332676175 187578596 447941989 329222394 602109087 150627128 572407385 311507127 616393869 552683751 722336070 347024162 770942738 764388588 788045845 445550962 935705500 581086069 648028636 105351992 348781752 237422652 622701845 84104622 397392088 217519187 937269651 781934770 992811332 650400839 862616616 74598476 87206604 28562537 211062155 24124203 243572174 99883819 330998696 46473637 280179909 101514474 281074679 143790206 183629320 27860464 557760671 378819826 417077261 56797548 651837475 31556766 899020185 722844543 854089133 740137408 793091146 462780403 884602882 843568807 916532833 381339589 631104812 197733693 877223954 682032655 917581038 648093255 848319172 354356972 526473674 104337030 226523442 120704827 522382438 470023468 607041240 224598673 988398257 761843570 798186797 447729102 959119772 600214291 824435917 257588871 765550406 109038288 138962717 132333767 237345027 213933403 843745482 331248421 610482812 49663512 269105169 31185208 414452103 329750649 629479339 188472584 544652896 76762448 877145615 315998287 811240373 800666820 934712608 306860502 897644167 440199778 779973118 368306314 442946085 287170316 504137181 267822866 982320894 918624228 992412912 931765208 991189734 141858009 181350608 35341200 43670688 30716857 248686719 43072207 227046127 55665516 328977560 47233480 652493346 445931705 931660501 686956715 811009698 197063132 368419750 279804349 526144451 229646096 672680373 664132595 981228295 834695894 878817051 613741966 854264118 533132134 953978400 391484218 586199810 407677170 724930914 620655333 643011290 226611177 592023415 473557333 765253615 377829807 840243422 474980665 792194096 509915323 776495553 480007828 969223841 694967840 981491070 292250048 509035925 415682331 990350048 435639469 773305592 581913023 744164166 268510750 521614878 437572108 553818737 301135720 716755757 130399896 216708959 208469206 538593731 388436951 851213010 41832102 823942296 217661100 944283466 545428467 858788439 851244525 894566675 510438637 514477533 339326533 847778255 707810999 752284385 270647331 420334252 300813165 567271042 116763440 475213070 48041823 744387059 499393031 666184392 371349564 540810735 180597491 390068780 354220535 485781390 376842438 644308616 252099353 656073704 395749608 655451323 28486649 256851247 113894971 812560304 425528335 594589554 322253177 554127909 167019178 566580165 491319102 757345233 230850640 454747434 445570179 446096082 129779281 458011887 444975850 802793373 497608172 918258536 556053649 792814582 81141371 461142384 179497282 547469622 91777868 447155537 47881799 800942484 759980808 806659018 120691274 819474639 17228766 238085330 25100484 223351538 96870187 876945888 830271452 961271998 293660738 768808301 659152078 762736210 749216258 919725708 638687769 990465031 476652343 531866587 329961242 814091407 483617884 699367995 114827315 965821043 733441310 737716586 461329436 938410027 798991739 846334963 813245219 993062628 426861799 994131943 34889507 787939272 368305533 995147612 597804512 661033092 382864124 451900265 449876111 757742353 609366879 650245018 414377281 674631627 451194393 830786630 297605454 362975592 196602396 701979481 400703953 407307019 341724182 655811093 276158696 402927666 285493459 520093046 434295323 920213478 78411233 897586534 513302205 538472763 344182617 512036540 423716107 983797083 222905195 607752368 453869244 673652306 651564995 743918134 356022621 363572381 216770259 975283579 126426393 791493299 152390659 651830518 403142532 776795234 305683769 657069295 560358171 836084575 52018069 540418582 266138272 809544353 50918396 352513598 193271972 753054666 267556965 283616648 231495910 713363254 310969998 558481494 366197250 809829900 197907012 920922408 428631486 704221646 538799030 614399002 340878997 675924757 292904123 658705284 43879544 905425301 746249042 763506066 416560940 418331083 117751881 530327057 107883178 549111748 489585273 907387488 619528239 700329092 509162954 777038021 549568301 587629756 377642398 772232187 404082151 697896560 594110885 653408932 473788731 760744581 656848058 971624418 876591973 906468094 357281191 540673825 394579891 954338299 340876970 503985508 133030875 635178090 474174844 995403555 552109553 683374027 622852039 763194684 512586218 679505531 435774649 865740279 554051560 866650856 461195975 604023088 387130298 433210314 11216898 517224014 381584660 964984897 104727884 709464575 279865585 441329562 49519716 233901097 157787405 544198723 114892090 444341048 6534187 429963191 79984373 471108691 451215994 896279422 6420053 696862459 233459701 756074110 176137321 368217954 347152418 995419945 931074391 959677938 615671548 967919637 60035663 272687871 69348655 709928364 302090206 791188225 25208700 236544809 143980778 263679991 157039700 218831130 163116426 237585399 179495773 685199295 400010636 906202138 275344622 984443666 817336378 823994828 298165228 598644143 60491102 572679000 345930068 474720177 453372210 660300070 246934846 773188096 663427633 910172121 532463997 738060981 410996969 784035320 390554017 817829550 752916955 791750554 242106032 329969280 174479307 427124959 198424403 459211791 384581807 706938787 435494242 920283277 342459675 757906094 305898748 764972648 86179713 630234163 530896108 594764135 453362016 491202431 389553897 403856825 54605021 780897855 549509086 638968189 64623603 153808205 18629790 405039616 127620605 348188939 105962159 122566245 63864210 77533991 8501749 375017180 290288044 612976706 275531348 756834538 278377092 465139009 162512282 168245080 86077499 528503901 19854224 510749217 192725981 643992644 385835177 616140605 70422867 454864922 440474646 911293508 402303263 405513178 189094750 527942235 181082834 714949138 320611255 386409027 261318361 513991852 349484968 939903617 780345728 793126759 554361243 959730243 827877839 942846910 285381870 412039698 392862207 759453427 273846875 921610635 49411139 611308522 518896840 759228317 67895417 715867522 667834587 960477332 523878516 968158593 260645445 943954521 373497815 496398210 332315431 504817146 272407354 769690987 400854425 498612502 383638907 896239060 41555334 904436538 130163076 499187712 271143027 360547170 105255196 601266193 509487111 851523338 377956729 585339987 129535503 910837357 724143439 762116096 46578627 927195026 816165941 998558183 55667065 366643047 265270453 882979755 25772211 900305224 531989492 673306507 19747461 633154331 222885578 320831557 296987715 559174052 439297924 456553815 91855386 320187252 155768453 485625212 159692338 557506003 465874676 767814809 530186019 676650146 130740906 342884005 290617490 962993731 557195131 757942009 25737831 358844853 146159378 649470427 486626964 655517503 307966670 798402485 775647723 858005683 176475952 489905330 330887674 575187981 13604822 622844434 177947302 549777690 212031019 337322313 206415049 521375428 356153831 830763131 168017120 845547660 453321958 509863504 50260665 263644545 126646569 448101709 213616586 713529881 141046339 142194378 116402093 720743567 373995917 416663320 202968599 270843508 138153993 175210174 3163640 31455512 30675907 102665697 78188974 119196186 87037337 981855373 889820007 920176064 719223288 930052836 625805825 931267738 501317425 646050363 572984046 799858624 524272763 725026837 690695666 930023398 909484250 972865824 365680929 469095052 320175784 599854883 480124656 951378168 492266579 943143130 300108510 958306927 231354818 341951793 205537255 521834469 355741513 941144056 46460844 605977026 592019904 865551314 96542271 327576783 285154804 374619256 44623568 409063052 403701173 597831306 448440722 666774822 523982358 805717680 309332470 547908162 89799266 354809839 112313936 855155534 414248380 978106426 420158228 555870898 306618017 982685781 155417024 156042240 48197236 285089316 283999923 878973401 828754300 953275889 208966621 789537806 754262761 854921505 287716932 475112304 421431452 695252018 364588231 774496067 222895196 261097874 79216144 317778161 205037618 576637479 140202482 555987980 100775306 118463875 105203797 513051730 234648287 532404979 396080972 861088348 438106162 782465494 503577623 965827976 500090945 981122320 239484647 733557151 668317118 717555173 642786791 908408455 318967244 506379399 267605676 733422427 343991322 390903711 75560165 594370085 552275800 660661780 421810284 662656681 591725132 703054816 244105933 302343514 97293452 663756245 220598512 562076422 531878115 565854712 298451837 397009060 331202251 850989139 309310628 949334848 741252555 875342893 293816031 508765500 256282845 629199420 304015359 530670505 457162327 501052797 3673573 654340488 377277398 777823647 308868835 969731942 566473432 650663666 106051137 947387798 275682355 613523705 440112848 920087941 73013024 779526249 450381040 604512300 309901175 701820721 252211661 648715926 175921721 803535439 274913565 605499956 117303074 593538965 509897343 743920262 493858698 948588546 701031501 720821334 419084647 872526462 182277719 206381757 148091398 924740944 656774082 809877127 66956725 612727099 78032107 606264984 405039528 692925671 167862687 387259843 41132466 104930128 61127974 188167813 77398460 394352527 99804928 811954600 684179624 956321335 33179813 592917163 362261606 657017375 488910341 713142969 448331302 983796238 40615627 510111104 112602888 282334754 216930771 524359874 213455724 377330442 8548938 240608504 94769613 643490121 337360089 837862720 133764538 387407735 187690202 621630541 440912274 996258888 71370026 554161982 148903335 815843348 526118608 592981633 443029265 463598409 394995132 843789105 798048882 899051719 625112709 739942960 44292125 44955577 32861715 322437994 48254049 83816293 38737613 159566371 44311333 572876546 443063641 756720443 3701646 120650761 51834889 782473822 176603223 570458086 337667299 624179073 409900666 950970445 173290513 348733574 217680905 900573008 321823013 950200500 248236882 719792825 447963225 527418267 126358145 623193713 459114662 460396070 93664631 255132206 37980346 426899103 46467767 135129615 96677593 730638584 162975860 654575473 67854388 224628598 208892084 925795391 412741098 708373346 74559786 226889324 10921403 830708257 568035123 889455579 145460462 158042540 32463773 110296864 5969584 154588536 34149462 274812577 77977996 186210348 108626439 378356086 64559335 375758748 166690776 335426935 188920972 663756379 450389383 713036955 229004727 772555383 267022431 700851302 138035354 328874775 141457094 199449938 39191077 101332280 68777321 770266167 458743569 536826936 495871428 655967989 640421830 889070996 688220861 842719413 822940753 852956135 197615633 358016731 320294222 507283537 503917627 630644266 289929282 358538740 181514038 536392615 353572920 573597738 69172138 387947988 85554504 856271924 244632571 498034770 414712989 568835469 394499772 517412903 122735665 256527466 175035 983091350 229485787 843914880 768950105 771589012 46746645 511958815 241617463 641268379 584323524 610376796 35227507 984376615 706786779 847360299 349714883 773398123 680280985 970813018 251425560 847069269 840429186 906785250 839683645 845328628 755092153 943864104 372011987 899379608 151953086 553239763 366733787 765050944 253672601 363567496 3775874 276140259 185311118 467094297 367635972 467215159 314715298 426934940 186091132 467978417 240022196 459088071 140754076 647232355 480739987 928885839 406579770 588699380 79915842 543920349 499253624 959964985 167231923 344837642 110624849 643568920 52493468 800667171 151938065 884269308 551005185 591672222 215686335 552403064 101619678 378441239 306061625 743403796 566627518 958367315 775116753 953827976 22208706 957269879 367655041 578464825 86699723 906934958 784371320 967147871 807120498 828816119 525527569 853332332 386957557 765170836 341707674 461337851 97430196 249343371 162050167 798070438 346543143 545456291 433910398 644778380 98802397 161219846 142564241 153097186 97511226 296205040 35309762 705679901 277773703 283498504 164904043 909627099 856589336 924989739 8918255 341695389 196792709 523545636 381976458 673651507 298995028 558134963 63441292 159489613 119358649 702993838 419979134 451375100 248487222 689942611 458674717 892275351 112494188 340152707 191119930 716473329 558801615 606356466 554644606 947189018 746097401 956384591 690356147 779521175 503045033 723203683 395933874 627105995 232394360 300106545 63520828 585635957 377721303 939872650 652384107 664373428 109694933 112433572 96706184 349757480 96940063 573537268 133824382 704740349 473295022 763588177 19145055 472043773 4792609 390301307 97574759 360748880 15013763 787141297 475190568 611797791 518888166 977509728 301871073 483285191 376606802 376963592 170336549 636243602 220577801 679787538 407064164 606601679 389150337 636891804 292001362 336925070 101918142 307286234 210125722 255405616 63009502 301890739 296009538 926509553 126979913 911440146 112119382 547898172 60333431 142226438 122019084 418415107 186211990 889769344 662321620 997243483 504100554 968511032 466524005 531375676 131554433 810698648 171256878 621050567 141327365 777864652 587718661 809622377 143441658 701022289 158631381 203045967 35079338 137087677 109634141 175336645 160259893 356378745 185575244 394698629 332805932 726511957 420758027 651749034 26610872 614755014 553271621 840613407 287979365 685498514 215023597 405350583 361274602 720459521 50832755 798990079 632493672 929438214 743412974 971839383 949770634 978909017 197010710 716855168 261582488 756684322 556282692 589221130 366297037 390462477 96674614 637491277 197899437 995837779 545046702 615092934 29677478 292634291 25283047 741600784 455624971 728267836 176399742 881970800 241761751 606609383 229852919 961407622 182119353 218532565 138935474 494154730 455317269 682990680 576674783 809241155 362208574 582441318 209934162 933084559 204536275 238366031 130634296 212551339 206945611 651747028 241847237 263276808 63055186 953458794 119297908 198504532 155887583 339283619 95237770 464135548 93550592 771325277 545406400 589735270 158973879 960225038 742398315 806155383 32334161 236832761 66213659 996063296 642448986 726734399 197855476 233498323 33461777 402246738 165747679 441152272 367090541 943621647 796226051 878299441 172242506 725977399 165451003 793041347 279701089 376919565 117039665 400075223 236093141 639884011 574918998 684142768 332037106 623605540 58736680 184650037 91936599 297705893 9469477 302416831 96560826 916152148 612922608 753156782 408344329 827117409 586493337 944559439 877198657 953691906 731464592 769121625 617121370 674736097 69185500 522457146 480016662 926426340 569504871 813016412 336867190 968574086 424332204 676730063 594353123 710663616 436757718 528132735 204230737 489655785 223216938 848786984 838608365 969095295 772200137 878872693 17278382 766318589 428225778 872017700 425480955 900204491 828836822 867344632 773412077 838410184 741265180 992477605 324681853 464991417 392422371 711753986 79491709 330031047 252284914 411372891 7763570 341057875 115128004 679837695 545477669 568150135 300397890 854384214 780092741 822307139 588207534 921879127 125975597 260408806 39009714 752556892 638250119 851306097 118702555 912556203 353010456 514748125 117633253 989395048 824989232 938025620 362233119 681674039 13359633 999069450 883753663 993553340 731877404 995343789 336975454 518808281 209752691 525315950 241266262 842020243 798119184 829639187 577256314 578715181 219974051 252309492 82257138 222950166 34450906 581583138 144449872 721892397 274721145 642594085 84847139 864003038 107458440 261340522 32186453 247288962 82354442 484181545 187482225 386219999 214569815 674374719 348224843 536934565 364144869 625741070 356497279 667995515 323232320 646958102 358572323 603887788 47179213 678095797 466905904 572515013 18367960 260721657 172684619 966768903 195287586 794475339 726451988 825433228 404121337 957508564 73276587 354524594 349467346 658242045 68958788 126183638 115801804 931301067 723942610 934532681 266964079 854443870 143586142 923682150 808324285 870961375 442335159 934977963 648428914 843353367 370663717 484634837 357964676 503768851 289196621 339257928 282415489 789029891 48339965 577034780 238908302 521482111 279132771 805698886 144982909 383212231 244717620 402644359 270324699 476356530 150504736 291372605 110477962 406080928 46658029 476986989 313113741 628951925 335356625 528871758 90009321 688001742 392772711 959492688 631339730 963978266 104788180 651985207 38989199 137048219 98825775 482560261 260165531 870384852 53003275 94488188 86915236 599346664 110354313 471687005 254614210 727582685 391647917 972427993 151890240 883893227 122874273 519831359 295574814 875168691 7839141 632367011 277597803 329523456 50093288 423862787 77587167 683914158 113879070 829559214 214249427 646360869 357992809 901869623 434849272 581623481 182642618 887561495 360088704 490015203 370703639 475544735 305750142 712925979 666540201 712959985 563777714 757885543 599235478 666656911 427137081 777684690 232825466 440223883 254531924 794835023 155949565 767610011 419916592 986231462 700786647 796200938 19132882 261519662 184809206 336857508 69819104 588341359 307594702 967565816 382151725 457319572 333915815 785777260 332794251 668726209 294538618 434826894 304902093 525295072 519008498 853780457 736163575 871817802 478014699 549324487 367151173 829905762 625536780 876530778 687027164 784358739 240982855 706808857 194521283 929720602 303987782 713033396 287310056 631564636 490391923 729417270 183183632 342740175 105625017 671220646 467991419 688033067 487256065 716581192 405012848 572268707 479471023 760395298 636945598 758930641 40039166 346029611 331391981 453588493 403315230 540441783 384337656 452516692 280429996 882758365 742110649 885759041 661559971 899188343 835145716 912368252 393111950 822264588 665525242 790814909 475739054 742570843 590954031 901470452 823847329 944471635 43647747 867037370 645999905 832875587 382765548 755268148 496611186 977766489 208688114 694185592 262313817 769775101 144857022 441831842 335880093 525068812 351426337 516715933 189760798 243612280 190216286 617471131 395803811 400718378 184653881 683124792 547113988 591422052 47270806 991491478 313538738 753311254 491273376 795730206 326995046 455408997 94286395 463378122 228437230 410094491 144528533 770223360 716390131 805845448 541372031 677726801 236778947 852994099 90579937 157362599 89921904 355460173 166550821 644217241 96245073 225232057 109261720 283795529 218057765 922511747 207777571 681521904 241481542 591017287 119607275 145023947 102877242 111555061 18904920 127944771 58499387 810040669 158734456 688607846 429066521 761514676 101216915 899963549 23082129 840360462 406810307 812404566 372443314 734640963 287838858 911437774 702924565 777454738 621173560 832665979 759420144 767736219 429344317 506158762 4093927 657834951 77067592 377618748 61761985 348181769 105194484 126708705 123259830 952091952 132606883 410982908 14035349 767827922 389007853 851960875 39149590 156271983 48941688 755082603 172988147 339899483 3817018 544004999 131330395 724240026 312829832 393013892 71752394 592172480 280569124 923862693 439929542 991666853 278179209 971296001 605788996 816006405 211406510 323957979 203106543 681426865 485027155 676515717 485805782 908831766 692922476 754043272 639262925 788572341 784542630 907165427 554444370 729065808 589694630 697164440 421300295 767540736 115013418 694918743 656254761 822114991 132214673 639818316 173443834 417258868 246143715 362660640 246740007 320211181 69912904 850463070 137914702 435234426 107458910 711862418 429092030 492014483 123828504 941390630 612567256 903183018 133657962 638475701 357079635 796995717 220323371 562975680 29796811 765167951 606885910 790154469 157873232 812636700 452409458 783763237 497415852 602916939 125941226 282853471 165494912 621535069 566687194 872851601 517224303 621779752 344062504 597127273 359150627 724937259 76148135 352853198 103617944 574790881 497912082 678931881 484473374 536767935 310332605 340824534 327386022 626304784 262618470 297306601 159655511 593235541 118095115 714510865 273940925 933134592 564831922 935441998 508565137 662480927 588473560 750923450 229284246 874293386 714623912 805047240 705154101 790070857 333468782 492108227 423109019 817339423 503643260 681786013 340781071 976091070 814177274 897008649 736449032 806687140 111235615 264817979 222230166 783969714 480392692 696595793 135177990 571145111 37046975 638921612 319782351 325286222 6807716 669742873 62863197 606522128 142047106 677504747 632276330 716534184 593362894 691959931 166480807 593230478 431969638 551605375 368970568 497753811 411642331 608993122 507031129 827308111 616361206 759092376 363208968 882475094 402953467 767464675 728033483 955906775 548726229 652180008 271274832 843451441 213753257 510828153 508165970 517098491 368611275 513910285 41055893 597124195 44201343 944408080 591859758 727157252 131208449 180320614 45718763 953137258 718084146 850033269 238101305 822621588 249771085 612054967 85135042 506442891 457114967 813460525 532492922 591168085 421916765 699370596 243008836 569620545 328219051 486278250 444519882 594576314 147473337 195839001 13168405 167630345 109852609 597927268 44457797 228208877 76421848 349346690 71537493 578139905 324116072 492282719 87962046 211907610 121468482 122779635 94403177 146990800 51655082 942519716 668255076 733120408 331431669 742630627 259413174 516864506 107278829 785133103 689243772 757147962 349928002 630843809 288968146 992657516 466375473 531285260 189227850 556529630 475785926 498232677 13256101 672370429 242171038 782759555 171157881 246516995 52279605 590942705 263836694 390944827 90514505 458030663 362722668 521975749 198747391 227062445 207682186 752451728 655810445 958488061 559270329 868171658 338398406 510279109 316093031 808954473 203107203 250255546 70625875 965741452 439632456 637004220 179108183 894244206 94520077 874459723 725110924 789874245 598870463 854721454 477148479 544268541 481837087 794144188 174656251 669091353 328940821 955721694 271156960 348618331 38354452 377764700 340418709 689902047 89526047 481676498 196736795 659307638 121074359 149673750 32772249 339084176 243678211 988419857 469535303 531399104 366011918 935624176 621038107 690844237 646952898 671346358 664515792 681414488 479793747 945214086 831152113 920027632 332816506 657834034 420945432 680370572 531510954 686360229 655479575 873435529 101897894 418404028 41790191 343112443 151547354 222605887 185959254 267731532 58143404 835085958 663021182 867777749 103735122 744628788 325492549 848773254 29398110 576991559 455150180 756338589 562886023 587715397 151687690 510660013 401701509 523758996 125905279 835885809 668484251 716083298 520296452 597799512 112138686 236726054 160582891 327474619 323124650 859678503 432457472 578903727 6560083 805535690 45535231 340645880 269883354 419038355 282274863 911725148 807408371 849406789 270033190 523161974 8089329 616945706 330744702 617555420 309549692 742044471 209162493 216637280 52522257 518808306 178905463 418278067 19389888 933953744 915713591 956328494 676053562 729191778 363080913 700992871 236334136 289760209 139752685 250465675 81388566 889878786 54152513 239210180 110518364 567634821 44532940 421239418 143964813 378525784 257445543 752004195 272748358 764414240 719498237 841347313 242218358 790450852 130605046 491500859 243988644 903143121 23361414 842906746 841298642 925542241 381969473 778185046 244027134 417528014 240626180 917145656 355445887 399545675 129996889 408328379 327201357 828365766 661320380 878061910 40274966 812663487 202983107 613219636 75333733 222835190 45263653 366672304 357407566 423420495 362528251 718917058 224840783 471981669 281795399 503264616 292047631 704374152 125896625 189394266 90269478 167099730 119605693 589250166 424822375 508364713 147723119 336376775 293428497 816308668 779096056 974651317 773118295 822335420 90155949 637968102 586606301 622892125 273328879 733198397 594170581 635505054 61281774 899657771 443390754 957433859 460437532 908115796 300803623 679108509 313550325 540513796 386349962 632646644 513162642 612408758 93160110 680942106 129789455 920336790 3574020 408576088 13566614 64395833 30971294 243486350 134718472 472136197 158277228 839791376 663018561 673986117 19213828 949868706 802638385 930910990 68778950 125805797 99192901 145498837 87212141 711394945 250833445 542476238 446406144 779577102 748799655 759212845 83219476 383435113 127833258 489405019 82685163 937187191 875876176 998446051 296128208 390296784 354875538 421025363 146732412 823373948 223038110 307817538 75249312 659099309 168767430 591760540 116587650 715849058 517505171 930364817 574526421 577870816 389186264 880618494 611727400 711304750 74584898 454400170 233898136 433751829 179048826 492885592 105305249 186962746 79332160 293959142 59376575 450082700 226330668 246127318 3272701 503604982 398549175 983476993 68326559 572048126 537325258 780254795 121305065 473664901 290633913 295874453 7507246 111273833 67776964 77082352 16166577 998100911 416499506 679540122 171130623 445424961 37631147 939408202 639859756 666670327 344104354 368191957 85607730 166103412 139809902 960919683 171042735 563839828 140798529 350249834 194340589 265301348 29963924 165830531 164047351 650734406 401742580 788386742 366869335 937608827 563632721 666362494 385098236 823533049 172885002 549363511 56350830 153673295 66336339 463175774 60042064 576518877 463191421 697476954 624767485 982574894 354702692 612807673 457420152 878695602 723553397 768860126 758992640 938158778 23077012 576372535 546718097 793430700 760599078 854059212 285246843 313897839 207882746 945110079 372217778 576379992 30402619 681925507 398496623 422623291 228269377 741778991 517418982 832275788 199113064 909206536 652436097 824312229 285476054 512458259 158754272 394973382 181279141 654603325 240782097 511235296 468233878 540832328 533885755 702288755 569130366 741147216 432759457 843352609 142181478 431544436 384555381 546809738 44771321 206034176 133300866 872235746 107430855 931970364 282147167 615366980 158806400 581946061 138284780 260209982 32189593 34601562 19287107 586719613 100661811 828831820 240081975 303688069 185424993 362358264 122855239 942703121 104929902 985825086 324995584 652667067 73728815 931118299 833296013 981272558 22228060 984598009 221079421 283004680 111469514 560731853 512159897 745236595 710377244 818786178 573036847 907903996 796934191 896082470 718609138 989696781 303901517 923172323 481954423 687699433 29491982 275291160 205962464 711570945 471924356 704600149 69708313 931419414 93247841 179484078 49629127 294489881 121502314 757106568 214206967 741240442 154924048 801605842 349666106 503928726 16172363 715896466 113080266 681784018 30688156 600166885 180809401 314768932 107571955 357475378 50198259 878578809 407185718 879993178 198875248 260510909 155164046 293080232 136065658 473751207 395081322 830638099 775234734 812177160 464946920 547708627 147313618 659076009 625109550 973493729 488087360 969658735 197898075 221621835 130113852 429459866 108340009 373869045 70535813 982948642 304919474 450339233 403035209 886850050 549034402 951868052 53262045 181843264 35030114 479278338 354815766 541070649 478397177 667259086 113628748 543869194 294887971 399119279 33024653 224670424 191977404 519525831 76279817 777652166 637329774 918502677 882649514 947103268 169076300 844953612 421920065 999864789 623126012 692061325 252940679 882552102 559070264 728684926 72074975 449553048 139007817 439123825 238928281 867399029 153216759 952272563 312493550 672643741 98508828 152503272 112779925 398342253 132988866 234448366 35864323 343919440 15218752 788019535 435599088 914054611 414587140 810552885 573478790 734045290 5277708 498687552 293649242 799894206 138074754 198969784 143796205 790868153 495942155 985641860 351912199 454431959 364542698 527933972 112639018 944560669 649611413 851082096 397697289 729451151 495367978 937440339 818903210 947729538 925203961 966370044 142136345 497231793 11709703 803405904 247093879 652279045 234175521 739140504 343389590 619571495 186976992 903008120 281371168 903329943 328055054 900266416 167895742 426313400 391437803 781941130 42966354 946966336 859688304 885985434 539513532 567740513 496425135 594927092 312022230 920183164 267600260 737945097 462962365 796485581 709038157 978701118 115415213 915962679 500873019 641328897 58922220 572598246 420104633 909182519 576806346 646383366 305616129 809537316 137421581 288396355 204089177 289461952 61540406 563651600 498376262 714680326 652611615 757444151 733885344 829610241 320301723 730890402 49812968 330049747 26713788 334683797 237161375 902917563 71797429 461180650 258243108 400098029 251204737 880346059 46169774 87583947 22667540 659463829 298465796 410459907 152270286 267170336 151951353 371533667 31470288 948188997 523966059 751941403 80232871 474758813 469007886 999895719 614742892 804739174 754188672 959000908 823163500 996599228 64677136 705560967 73627102 906210653 206634481 782154115 266036687 699041962 483213322 986805713 309496329 671036711 545430332 569122187 172395027 456242768 173371564 775323049 689938352 690347802 518493652 743305635 714196768 776630159 598622555 966180044 33275482 876560877 460248784 866241641 142465506 808248293 249098994 427518088 186564097 849075535 250480114 572410046 431823305 461253468 393302178 721434610 50389644 476991172 248413640 740616439 167002752 873044513 866526376 981584942 684972999 960454793 696611519 869064168 15028290 712584960 428611634 595216730 186539511 613160059 171612132 366046940 256666287 948932327 428759424 659566311 266605899 304161645 65525343 716443917 388261493 892341970 818700679 873034942 600925624 836745225 354480004 506610422 162420186 633098479 610290618 790598231 489954912 678318289 202098729 860506885 742131806 797023120 82065778 940349125 937483816 981430403 668320904 740743875 614645636 698668369 108768588 134968076 1573958 801449507 510985133 799022152 561192197 828258432 191453745 670231633 70888020 824624084 317371215 892643130 383382170 763565291 657614018 903986026 253544150 438399681 213759762 682170579 138394336 619672562 608761636 654024457 576204423 915795048 470503168 569114148 547621667 719921671 508960604 999616242 402520635 657186406 524811487 769544019 318217178 637565447 421052633 559146341 486422588 701398640 55753785 145015064 18872643 868699607 293532600 630428593 349219255 733272910 494389634 828589809 312844046 990743891 864146795 897798527 782769717 893411394 748075443 873900196 676644142 808925644 768885399 816143550 449822250 559855905 419680686 474289681 438853926 799833053 604727921 915719157 334549633 655915381 461766455 896357077 337437987 399852472 260964614 652287037 556220994 885516339 331864878 951760030 826869972 849268543 323426065 537514695 89400837 158776408 83688980 866735202 362433972 778396149 284406408 519597309 251584467 631294451 387441631 745087248 336449596 897336693 556304034 903936360 120034608 633608000 64354225 111123709 81303228 617314076 141305762 819132190 290456655 940074987 900431576 921700917 473596763 856338495 10953086 47799020 590266 363363327 171872775 283693725 224546316 638509864 631542814 954580184 344458503 548865860 126487289 629565856 130558036 219533182 11470720 828753521 645227429 843632311 31110653 820486009 751107149 773582839 670843637 785543349 275829397 655457944 94889373 105986868 50482717 562308512 153353 260931372 156539549 398788703 260028978 663636820 239107126 730826354 338640823 813483438 625079900 694258430 203888666 899904154 159739044 643622981 31848903 155668227 149323190 475789111 425538136 442834698 5554352 297096956 27867927 164371567 43583836 824568660 705390819 719202214 367962411 462645964 165126347 535916383 96453503 562195223 520166643 545816905 24921962 153351247 39355015 102636793 44662792 847132308 111215893 942734003 46901 326257678 112921592 244003103 222400928 375008824 226402394 313848239 129664466 179709366 100986291 289132321 93797693 514561150 265318664 613465334 451842115 641316263 48880577 158433530 115586597 732347934 702146844 803118480 716947394 749749558 421670847 854856987 1468747 626455480 584074459 896840663 530317481 671411443 70948612 409212628 341079651 764744037 527583520 859187912 754491739 953115930 729229622 881947899 522865515 887232284 45362550 275002054 268075165 279980157 197305475 887767827 559166637 594305181 523690517 815090490 706638159 710400261 316501910 957182034 462819956 502636500 223857818 979736739 323960303 426635897 31574208 898707266 830314213 922366662 440455000 844659161 481290833 586448777 17155686 801521472 117775762 624534756 506840395 851590155 419525326 706024790 541686678 965333466 838342466 997852886 771505683 786580733 621489831 931541228 199771235 302032866 86961158 164664742 8681753 539617690 175295685 188328076 58843459 658911051 538540705 647519451 245480966 423332839 315136949 866012817 329916449 594552835 345711358 467256408 199175485 533075615 452591090 527926863 3565289 526321501 156356048 989346386 300597620 795268224 70939222 210842872 126609474 153168419 76089473 778380493 545695953 684265818 477797399 652196105 287574641 471853185 202468596 550338123 539496203 725445339 610137814 844726779 98617382 817225796 125734624 473771861 423973181 799294920 738134209 920438862 591328440 675831405 310553703 391838620 126556431 878110701 195207167 725334091 110767520 891087043 471801850 834120127 428609900 452414101 160254182 841616942 33490029 308148734 122936055 588293557 209073492 765086160 295792734 560125737 4296695 343157400 3054877 84325731 46872481 101416687 60005357 223159590 106166643 525048963 335837122 399090085 162260373 485600268 163122029 395987502 143380419 411068173 341890641 509398168 313827639 953340930 639365479 726190723 229152336 857588859 251242453 352479470 104854605 523074567 81436209 434482207 408859985 434448250 399647721 684329174 215538228 435820900 68785478 347610324 201562717 387421602 245338063 887615919 409186538 442560013 292962058 789780941 262511973 550913192 22852141 343054158 301114146 367243653 265534701 962494192 243943271 986203842 845125838 905755356 884645595 923491232 407787784 545799047 35454011 197991408 85526065 857450674 415626546 705355618 38444943 277458767 60197657 273181657 145520817 180933754 55918019 121581229 117199469 863154859 279779107 999162764 947977205 977722553 314336280 967496309 225339955 959809520 741761277 790978325 453855923 541066521 103519599 753247512 450193613 932663300 913051940 986293647 383709608 503067191 166585069 878670241 764206585 800571062 371932964 719880989 658737606 750218182 239407626 684748023 219233694 612794282 453482077 921345100 677334534 797434488 353470312 875153014 861153933 910104021 24107824 32581225 4968558 865625698 561302914 906495866 635135069 672033030 210974070 759032786 157027452 883706564 483657949 780439189 626799533 706716519 466229003 581498860 102859308 994330619 323440313 992909717 948168782 970106527 517111969 631303770 85389878 374945381 253510633 492682860 371653052 956830008 840430522 900176201 516751586 780878614 599629936 609361502 406267459 844850421 284443502 776419811 11817468 798353463 127828174 277307591 130447878 400947929 327302254 730169169 676076256 795682981 88568765 700156650 461317778 989446030 736744243 850847365 487878634 758977143 719972548 943602585 503122513 726553412 455712572 570595067 380040312 531077518 308513353 899149079 869104220 977724992 349447266 795552805 701110191 732397444 517727478 992197274 348307723 355259057 104075458 416610510 379785192 409262863 15220630 77161582 6995734 275369724 7346333 567258515 21917542 467612408 338313030 403812230 243720123 546986847 397965924 462954686 340853038 542798713 283800507 763410267 126259120 795569060 188666345 254221054 163063371 241869599 200808411 832862399 638450214 888813454 475748604 741003532 381711766 847268405 540813676 943445312 117071758 512805274 52150271 53031392 18037801 362588692 72852091 343429931 238221916 851086529 843752999 898462676 536815107 626978897 38841662 758569652 304618176 988690742 858964786 986083548 92696768 948913115 171217096 733803250 492105369 943595627 79470671 322963688 284011718 583558442 476191250 925739015 35278975 638456324 287352287 950448350 711043881 987345340 584201118 815462421 14366949 766121893 429751595 566291043 197319590 429301819 301757686 772196409 295613214 512880543 15107034 497458187 157998697 693779410 570774654 773894125 32215471 426002033 61875340 251980788 2836945 560150674 70223237 994613548 286460503 715212374 489406776 675077729 668396770 871597675 131454190 849314111 705130598 884172097 625247975 930020864 281291464 325682673 293534778 452422345 106173214 274303775 251492617 254772170 130492994 861004293 776259540 786482624 513461359 956980143 462388140 902824311 311497516 654200677 112033426 162143016 103439860 891186928 508401485 963340324 961660419 979968285 218580569 530832138 410335635 782979504 176614326 521851179 470882365 607825989 2250513 744242170 181187058 582257537 223714999 502199932 449219134 881190157 731827682 803607202 1113695 388003939 284488765 897108749 170715690 357474132 40779236 720032378 25825868 580353516 407285326 840940248 364829940 404257905 241405700 629751414 158520294 456336868 401387634 924076179 876108021 992392071 685092631 806500559 78896406 461420083 209369158 574957093 110079034 376303614 214868841 938415944 765444523 835270581 105982239 296643671 211727876 948435732 240948352 941356348 257684506 795064251 37272207 546607777 14442244 135457954 57980631 688250339 461283744 895958708 532695162 672688689 524486502 666324656 396450917 533849842 324915232 754258698 84997516 565236816 525039366 640212328 549580536 616913054 476786150 550093865 477326480 663442145 371240996 378519878 110602357 925260232 483739638 511974632 299019371 531354513 203573431 922594983 635328453 900143996 85894314 388634798 138349380 869934436 851652526 971311374 557144950 930441394 851638869 989892562 346683286 761331692 407100282 762148437 545914567 967669074 426719462 711071713 676644153 698435031 146878663 754596531 492713400 939134737 895665194 954366262 895285641 973122563 771562303 959689052 423364614 957999472 773628412 887089203 735242836 820853926 30555069 311043098 204174431 486354482 316736308 865169248 90596351 743039897 725073711 818654214 78023630 553943800 495954635 784452745 272723147 570344496 173141355 647052470 401521948 417356352 58933315 604832722 574729351 763469196 737843069 844893239 655477736 863216641 779007857 908724673 690199577 710093008 708340658 853368913 779224934 978490658 589013421 663409799 463746181 736283174 280214556 357626087 56884478 637110540 495867694 795938182 385125001 567024802 446671300 911334547 468992046 579241201 259640339 852877492 661649835 983580714 451647365 601040057 56747686 834905924 649305057 656999849 644718505 806252178 290613391 466572892 207668874 962432908 623494127 651995478 68525721 627764161 609897195 796361725 378492098 708013226 403773925 769380020 320985318 475483856 165600505 631477359 255669108 985493169 168004626 229995771 154233190 957873948 231114632 328586618 288479481 373392362 43029031 595356175 336715850 477422835 211391068 327025107 217549218 694150158 141924305 961684618 830724108 863840990 496284747 506193701 121509491 724466723 160998232 596157914 340290968 627169531 534215974 857132970 692193393 866675544 786808943 992240841 80553328 619385206 94430473 799639222 298609166 493882256 36040908 242482158 202413099 663197423 192582591 385698935 155882113 894594215 726131195 804614540 101757504 860207107 393915093 657478850 322763111 906415936 246173381 791190525 184798115 532554224 387939045 569082462 497070756 502784233 239075190 317392441 113691659 182381971 140278388 568129808 397964560 798900484 472505608 935844167 589547799 627746721 296531731 387469128 245729175 581829621 240291970 862101766 49747974 893655042 7073588 940505744 660517400 950058923 55290848 575253961 304897816 779768318 175757677 867949892 813093204 957157017 478718821 717546792 408596634 773763060 560287235 657035190 28042184 906629700 374631346 904308895 33051364 147154889 24054347 739772048 286481586 475537925 345574904 636574704 506683399 641395053 438258037 879553134 426193073 748079836 223151439 401203617 244255469 420549660 205969763 574871605 478592062 851094631 734123460 956403738 142879618 559465764 21740882 469562115 39928131 730230282 49964387 843446795 145387639 265761683 147115635 238240210 14169776 44578258 21087025 790192820 138102313 426442904 408772626 608406543 202304900 963130916 630610385 663901420 624552013 738795704 518285657 569744861 268094833 943389068 525467852 532846069 136668837 605966694 490335037 523689257 516814248 641179663 198477637 291087752 175464079 425137312 75939040 359027245 347738758 717314212 549778852 950817000 614728747 850668374 5400111 28259862 3064707 566525359 549459562 742800463 619996696 767698152 760962529 781140459 328301369 504153203 134615894 192890363 145231739 953821238 653898335 768910857 627580828 777812642 560009302 617208737 517302720 947512232 609489238 816193377 274140931 818030052 703056946 789328429 542639374 892825585 746513488 889754178 161427104 919399069 909280884 955090116 441459579 449786187 154747604 885386385 809517970 944876682 601838086 695295090 679513982 869622948 58143081 162780045 148040434 194487108 85269003 562760910 124600861 439986346 309224959 444950840 204873759 661842776 515728267 937515206 726179743 808705706 349971301 861480167 409429494 470001116 371891140 972887412 853532194 975627626 741113264 984469016 612238768 958184872 286063876 300508865 173510546 729876871 214899168 940704232 310282746 836818329 87852992 705025154 131803889 278066131 46214625 939522367 510387834 641183317 524465817 636892833 17193288 820335703 614211214 837605325 262416470 852435576 708667524 739809644 322494528 844174403 628048275 826218495 96130629 483294011 199926423 644556064 23574943 426965098 88690190 467748114 438287286 955210322 111832807 571016955 10958001 530628143 319793219 995406827 709248948 891227788 550922287 794847407 394324269 991590028 162475980 439830116 346198250 532401870 66572242 671232032 321186294 540785194 152850931 673128103 22895547 752567049 291579731 787766106 230405949 355475876 304342183 432807434 404164865 538120335 18230448 250324293 95465330 514779346 158166601 453636544 440694146 558252449 350201460 655191008 298601771 759468343 124191002 417119739 188490029 296870660 22199895 369303074 170914880 445024437 400661558 589363150 358396162 941697666 156233102 324883000 280831465 942708168 785125227 921681339 388759103 428793966 372040072 709408762 704652324 940814871 148430509 530611789 1770143 103037698 88286636 468180410 358032898 399350058 212553381 834780026 448259375 533509818 314841598 598138470 497404648 542532403 320768795 341672304 267858744 272901122 139455477 954938079 609953068 892001585 847115593 946165047 783942973 976596097 72327986 296384280 285257689 587788324 255242751 709622295 555434166 916100559 709184932 753727873 16924337 583368805 526935645 901622023 512019953 838169218 423054643 740153653 577531029 944279366 939186606 995716020 509372717 881759885 89526538 149067896 41742674 59549105 54438077 508873789 138155862 659614674 604805685 732038585 165033510 729473918 424196486 614297854 177990861 805075568 562551909 772270012 225651655 469239277 439741229 933895884 814796885 854684195 177069367 978330671 387907469 526845992 507184321 699955121 598747215 765274516 645899504 840464317 493113652 724213006 626907489 841341764 308348017 683295524 135236180 321859074 243069653 372030465 61607131 186142172 104552556 308193191 80637328 588832334 482463591 620617128 145007820 639276730 453673229 882577609 551518598 704345700 686824969 992721239 524389499 898588181 780639768 917842844 453126485 991350577 719248657 941592528 66525603 817572140 627470824 944646339 234773015 470325387 10795716 110434390 70335088 245723883 52677311 693405237 91681487 713808121 591992678 964830893 84973882 670605477 5950479 739909660 111893141 809743524 615836822 902933593 505953433 691312526 583656765 631031794 66137115 938921302 84454521 99990162 18654383 817244122 80076567 981247053 616074050 878077794 280977106 607455606 500124099 823689589 600953745 710539998 605567107 613629604 394982352 900256417 99382656 231950421 154398280 830688163 299280647 877838867 589080497 906360946 896737060 952578120 883936356 913217063 715517965 792100332 591703385 825353085 686769219 704171386 249897556 448952222 200534694 670071256 166110104 381050571 177452322 616416594 212359137 977914653 124281938 576557695 61221561 508879989 253591178 611452137 495282495 623863337 217334691 585695271 301650055 918390930 676646105 907034313 330100260 830968735 628609921 824001446 584797416 908870941 575731384 789531592 736565448 748299597 673260040 780131049 349078674 789507805 488602719 679732073 85850167 744564642 475655410 561013512 110596009 647835181 74432651 910187408 29789352 827397050 734805655 943688561 472200813 688002724 572655905 665925461 372921551 383390455 222089705 401305713 199001759 643551599 250565157 884488662 245011677 807975544 497266954 983665311 367919951 608588548 38134418 464552651 426533876 682833587 300614069 490232062 200549385 891989123 425503276 471866828 194921381 623839714 67398830 425416652 251924977 439401987 70462744 203279077 27210714 829284096 302959497 896672055 54352599 926082295 384477766 478225727 44576694 723018688 112139383 255532968 57728882 983706566 407524655 630910067 360308949 393655188 78610285 958070091 871016913 933507242 521351709 554508028 421967896 980441136 466769852 962480667 532415131 562618765 186921175 920851506 658082893 699673153 419108799 533390054 400000871 429092121 175340980 678528810 295276040 367385458 253072827 856002943 302846048 971001298 505879723 668695920 442069811 449480582 165577687 377434891 367463894 517088628 393226943 501104410 171370020 452272849 312759390 446918697 63786931 211461813 34148546 563671983 383823479 407823062 163406613 261608764 121880982 297540442 109119750 764784190 472664633 835436330 552585123 831580736 247383962 887619903 736594181 914237322 14600148 27114769 13068581 471460553 391779558 972743945 683791740 994588753 813190500 865510557 779718670 931206464 9087345 533747316 215849943 302216466 23951007 796254422 505258163 716715848 380034529 832119708 362909408 746838065 232449422 606217037 383728576 850863925 548871915 933655092 627799419 909944575 581178394 726307713 702439536 894256656 828864237 906724771 154479079 380448530 345556138 478987800 140225001 630658882 223324425 361295676 100373087 776782941 413297520 865177547 847578367 959779124 947778726 990430662 756511145 764463870 474259940 849456846 430124122 657882954 298155522 803964019 754449469 981569269 556039439 795021721 475432383 634225949 495213838 745790453 68773290 938089534 618177708 711867031 610293832 998286511 195818790 246984457 235309342 773436497 361374897 508485997 37241224 814304842 128050196 982863742 593587584 611382689 183012860 860221377 476090063 735642958 38336862 319930611 199515005 731628295 187277844 904598208 880066719 982611906 390476092 531875512 341224958 603261120 584232439 788999720 378000066 846210476 5379607 593709067 519321187 943584932 650110781 937938883 74942224 184442106 109841791 212359897 141119867 684153402 296787389 786417076 561237722 809474415 778450047 941297144 223289492 313518906 211032155 643819566 197987175 538928459 175804456 577080644 365308624 763437640 318378372 924425244 157373053 821921437 788605568 964717690 709497630 971072959 414308507 820078585 373465184 476862643 272877207 572412722 16738642 287252370 7774895 990898079 327154700 346242720 320318661 616026662 593461881 606893053 417057773 633122695 221823521 671957446 360984628 683293398 446533696 601737988 117104653 655463692 137432138 295530892 264242137 994552419 334591009 402809879 346517794 493463413 249007491 902885845 64290557 672389605 423185943 828330761 61426817 556147559 388405870 727874942 258230619 796015854 183147515 984325587 243102104 530287961 108944597 284293620 233592292 937770529 676641022 769489245 441185809 993652180 741902652 914636426 534190254 911976866 659879636 719675762 519974393 552396130 460197310 733240043 702771085 751920644 534861305 907974718 528896121 988883038 970305194 997026920 777316747 835637502 561954259 897275437 837548898 901496230 407337526 548378922 492069995 676962976 246010568 834442394 565219117 815890526 595239048 658435393 345739445 551087192 54270038 67864725 33120410 889446883 446368488 829391492 479948634 968796277 887606450 987671229 605693046 862067716 661580380 834471209 231267331 329055239 35142942 50877602 13032225 737764061 367980773 752764476 196572091 695972548 459487626 993567113 118953606 946245166 195540286 728145151 91963676 251750849 11074458 350045819 276997116 831239571 57394427 922057614 896201215 991392558 115657187 887879980 183557146 755812371 81264806 247103112 116935205 591886754 145669216 198172237 185485180 246606302 98386316 700403392 149899703 319993658 211315914 592941101 513448357 994082185 426351506 577834497 285823812 670516385 401689626 410021992 38316155 689538808 513453967 774393307 609006776 932633462 838387344 927968352 647820278 991161768 119848875 314182681 172335915 640726010 520330234 546060074 138219197 184550581 113193943 353257035 87309259 464690696 110407827 922323300 524099994 752902772 293624190 472477249 41183074 116911452 82487109 538423687 462961038 678333338 630249663 791424758 300602821 310876994 237934831 576316711 93729758 234301039 48781456 240348174 92879459 235459109 131032939 783957349 293072730 781565710 594580756 890832772 472860658 746995839 523106296 902814525 776817013 911972182 277345040 532938633 330897360 488741733 148629756 912269352 102475417 923001396 667289487 732827472 331580097 927010793 796460541 951228668 433943674 736971839 383643171 628794627 501609950 727765066 647822034 731143628 515322731 656275307 463039042 645588633 331481569 860237550 13309147 519970993 224242044 810917705 602470390 830071871 455039087 652748997 288858208 367417308 62084693 784927405 9122666 16030913 1061469 954879037 318123669 370393266 236046170 597403158 555851667 890694986 631708049 762382505 613505063 894624614 460916008 952724706 56781721 431862439 214220551 545707084 402790199 475428467 136540738 826416064 122840445 157956087 121050849 383800146 206388481 900429348 896001507 927483313 259431691 956545183 237612222 948586864 24779910 952563759 946831707 962569358 830915230 912454359 810175186 892786610 513081458 540309076 75498977 336996097 319312164 958729733 227317652 943689236 549625636 834555698 550246663 674138300 338483133 856222830 594813936 840731779 64329123 916754938 322664359 929451130 155182648 886720337 871945172 946859303 769271026 781663085 679619339 847735272 531819253 974669833 227300661 266134243 197134104 710941259 167854799 614750250 177289911 507965623 252882186 331567995 5856491 901040152 396331309 905425300 806030659 836511844 226979651 637393203 209491568 469373104 297093765 420933516 304168481 398560750 299872060 875956635 242305952 789462419 236854873 380504023 176238661 626695077 409291302 494942872 307973224 972268713 969240453 997119820 136610614 579959041 289225446 655970195 600923110 683401285 345745372 381863204 56251456 358792070 202769862 903070198 82480883 762950258 598899201 685265777 401034535 949702499 264055839 389060306 11498389 827608070 609728066 871732308 832347343 908452855 124381294 856631948 54138228 358642618 180944526 770474264 717344267 818503728 406789290 629259993 258160547 923907880 854943955 870739331 494907788 634763530 580894811 600659610 21320547 67313801 44879746 898471509 582894840 690942927 465004400 696120276 237336682 368494017 301883981 633615589 75224324 241027353 105916732 161971402 126895942 319676770 288374402 843100580 292566279 504460287 6494598 502379733 393369496 830340663 5065211 469333828 133291316 401199096 268885119 886753177 23615909 113098532 104706806 502603177 419077759 846467087 97519625 522295415 311208705 684338254 436161388 756825932 222105273 729522577 309168950 508937787 483813531 846234301 285684617 632782424 127368600 201727621 157374556 721549055 335754503 549714880 60522587 478131088 70462085 589764195 398554798 905498485 688139118 778886062 251964850 365771084 290564970 849482184 413153716 447466182 202064473 360473907 49506823 370593576 325079607 506080060 252463015 989211837 197472105 882177291 551188318 645529222 266134760 945478839 168809237 651858600 743470 180549828 32828012 42217786 10836969 724097615 46612815 560673516 414347721 589916041 214377903 854625551 203192457 449901757 302365455 645013405 104947500 570619867 69148245 582247030 298645642 883047839 487141935 990621270 425549937 814015179 599876947 892119101 112688814 975768853 739818054 785324474 26171821 982777185 558081898 838552382 277313758 811413950 82418701 333671779 180759059 968288573 69711183 410479759 322003718 355401077 28300748 876614974 443648360 733495589 345270263 371652122 264325298 687424924 451199622 744526947 610363600 855016709 653273727 668414681 514617976 708409377 419463214 490540203 316927639 360087836 176868045 673895436 38583894 460548456 107456880 175057657 157278292 852916608 653411437 776863177 630785824 844373129 171346101 636407434 503946446 772548770 479084655 927742005 330522717 539471520 440672097 477456919 4340729 168123064 128873186 543348241 391094558 770437853 31619066 764665851 349984633 511170648 11284959 566747110 507025202 772368540 282085928 863269094 627820736 932681461 791665277 889726046 320378931 945083869 542842544 674072236 264455014 830349736 177959844 929169086 790948354 905896317 321936161 907381846 401595882 515463885 140990442 884841040 539780626 907142427 893217001 948561867 493930262 991840665 730064082 827622489 496377801 504551167 445514900 507336821 350787390 707618768 379228646 793804624 519998815 575878949 419197275 628189458 597982290 894550746 33469175 281490205 191171688 510312112 443425042 896075760 438460369 736180304 577360090 719487445 599291835 795337165 185709454 626411803 21386136 292414282 31134679 424215905 189098746 970049211 288824425 569966622 246238829 398960538 376351237 837893253 222568641 369433427 337727890 928882689 386871082 676966642 590520008 987920891 921231777 984610698 913980550 970554614 106136990 806420076 780353395 899014829 594883116 606900781 456095623 718024086 316851897 991701699 193833843 735446393 233809101 784044554 84587801 340469961 201932165 278133602 152027307 818800343 479705039 776792563 415023798 434158800 147969219 302191929 261420947 773283387 324555778 822748547 384820055 864065349 832944622 864963822 341723267 766927739 241273822 657544536 32755991 973533966 437157592 774089065 475960035 665796621 660856940 910762396 255868886 841262384 382116221 521897772 443053049 761952766 53584942 315415910 50625742 581095002 344251697 497776952 86849849 839124093 661201852 792410005 703701926 754902694 219892730 581837415 119429191 721665685 488182171 801813578 210086503 537202297 35904703 558732639 189654946 417060827 55309734 180781298 117480889 664751765 580525834 744034205 413454773 741929375 410306627 689353891 378179111 800302587 219979951 366044144 22005049 477567845 405811870 778987323 239864003 908606344 686124214 937688101 915360825 961014896 779075178 928825520 156639015 308801399 116480341 607308736 274534054 532335454 64794902 242047963 205481270 464094925 37959978 310287265 205068031 892603142 128516269 736776724 384623247 673209568 635504640 668241473 395524352 542850535 22725946 434547781 128054833 510237686 478369369 903720749 98248493 646664658 11616238 364259593 99695679 830336727 92991848 704855999 546122165 786116742 267821661 395195257 114120276 413126795 400247745 883944990 477401343 751635509 712891421 890822740 760198959 967561382 942378968 976507940 7157855 927207788 840383931 901781465 327782071 772896807 204942021 602601807 35239968 295627895 259176147 377862239 135583609 150238335 92426843 875231806 255508135 564758026 530217796 698605862 486502866 839631062 65466191 812642895 265670551 869009751 428052383 731751705 728146947 932684813 94362531 833267480 824268242 853233269 454361285 974981194 179526948 515758163 110556811 851339355 775685327 834713411 786084999 890150418 412190819 534111537 277547300 655529513 566071462 888771361 811918054 930884179 274998284 590187780 358569236 445449708 180189515 531059191 247931205 883835085 384091920 738028952 256655189 394254984 191454685 851100947 88366195 801932009 195379385 352303019 223166203 780474444 780419671 965753860 610346505 778104406 61171291 618690120 233217958 396705348 152615541 488094256 45340895 899235984 832126585 836175941 386461985 884404560 498850799 808562421 234235972 541215089 23170089 580657450 247895428 634342512 83349341 330657983 244231024 515242791 221348057 578752615 180144971 269192618 23373397 753025940 440726440 968034127 808723228 827927174 328010510 927408812 864338116 880939657 606294042 828041408 464927107 858933726 477243069 768281663 117362609 216427035 150489528 413131706 217585971 518290503 3405642 165665152 58247682 107670328 101643156 933934302 581841294 888717898 666492155 929811191 239517622 993417143 290586661 468446997 215512110 953864707 506066576 942102000 774422864 885224419 432628473 829863009 210449502 946570228 516829940 891783664 601269966 985165768 240438670 289529528 94201385 319338283 130033868 739620404 410434104 615587741 342815492 375343586 134875827 153397737 3732433 904655719 442517735 641816171 529647158 905698715 353148705 476555250 40182180 781707091 230612742 664707344 528867710 690421440 309880929 617152589 459214701 968112767 183067848 814658133 376315787 622647970 122619618 531859546 134989695 972474608 130502801 649300327 281550984 345998213 20328453 653333690 79223606 685935844 37067830 578336788 574241536 784458082 254204593 740181611 119371178 632301456 164953047 184371514 60754614 854938033 784958772 792233465 215651741 830626907 201842106 704497203 28083779 138872380 78934703 914962199 843801521 867388398 565705228 567472744 280558662 583865920 108882674 801569133 593527431 972534845 479504435 947761236 850999554 914857802 413750549 543938782 313660981 770130007 345802363 471697384 44662334 377726247 141711216 430115677 172730047 752141640 69648734 964601363 559812671 577541523 233064473 601243370 210398198 633674091 487141461 686042035 73731816 702593709 405312388 863599291 208213317 762824551 552264356 837206746 42216832 128363612 28421956 127364379 113945709 778809659 335120682 446938328 288380586 634528828 622439922 832093556 262180342 389006631 271897384 840503505 58495081 155209328 141607846 983918195 167896193 637590869 13641209 295977392 62191601 105202601 50812812 766645078 610962088 626260891 433397823 668020037 288291862 298255253 232573653 439685213 194325590 539669222 390812456 858518611 813893867 901410268 379826713 825606864 196656346 620474361 417559688 506038542 432778072 472505588 48071822 650399551 637460998 709340602 634647078 803881596 631326030 858309296 13278458 481970475 48873430 544879550 182023363 397521321 72656503 358388834 7794300 834211565 419089469 457962591 19577622 854506762 298940283 666421104 402470531 956929888 869570393 965849109 164172788 653257647 145018983 518443823 430891466 488197825 101711031 580161153 250639333 589523683 308385339 968612152 817877043 910769447 698468723 750958989 352288868 788894781 752774079 815350110 550761603 755398973 310757827 367986448 72876015 166705141 146348364 724418750 639657116 716807775 608232876 718267728 3519659 722543966 469405116 773857014 29869370 619220330 342652503 705202250 379961445 575413458 548573678 752228368 256825236 599744020 153306355 748726186 470186613 899225598 599955246 735398187 242261835 967804554 182235148 423709184 145790068 658512151 541171063 657663138 567059910 838732729 445595218 715389362 14941283 154998509 7021249 479761155 298810071 394012242 378317112 611646611 276914480 563556584 119314612 441224466 252812912 358676127 271942941 436989276 336257062 502578722 161420810 479068223 103112564 316727843 220877126 591466366 207443843 772159564 52805421 476674497 244092616 533647265 376367325 531692381 376349290 732081573 325289763 429594029 251226558 619219784 36364780 441824710 399457845 624901920 267404173 303923310 17522950 747705093 520985205 946359421 314860672 630250683 222262291 283227144 142698679 979803289 416740205 721476876 314987782 477497551 287564710 805849707 430200200 750848878 607233134 758095049 674222898 878252657 260543082 297484009 70193964 169946161 3499942 741202851 459938147 736119587 663755188 889144023 10153476 179451958 158596551 814419038 270419396 298901369 184967165 728802414 684099291 761575686 556360986 984079259 403710066 682297245 665913498 782506561 175165761 291122907 14896430 325436195 285569207 789324233 396103998 682588032 158084283 813846846 270213607 544978287 260437533 811744616 158479140 666926638 349614060 980132261 759344661 851349520 577989979 680204096 552792904 959926743 16400305 405079993 267399214 503595883 97510896 366200374 339081247 354249625 181247559 698054756 20889187 719805654 647155775 833051738 352954089 633235869 275935815 819385983 184286546 353049770 26520421 366321447 319707215 422947028 207235733 609624066 303982392 435365933 94255320 440174961 399819294 455351585 433222901 930785670 295552652 492933555 238688533 636067436 243378559 482457196 191290134 553648812 351311942 552448443 198902671 344209164 51532830 588511810 20793184 830106103 10855030 234543154 149092734 452078360 54348561 510870810 409270879 828754772 355108389 497420769 170172969 741495241 677508109 883346023 198009358 331940404 148025887 245818806 113722315 417247627 379009817 792656842 18759420 703994443 413561986 495473023 289117283 469410423 13304539 129362744 99765556 917586660 666777611 759283000 34172449 526909663 75803183 151431135 111009599 132595762 6869431 694713642 222707587 445358894 330274542 935342692 686142530 906273272 400482881 949673940 768675399 912670664 577954690 993731541 838809525 920273495 303211479 676410786 451380202 601515322 130379658 878763933 804454571 807998932 411421261 965363193 186637336 925860567 11602521 974946153 371845647 435177681 84451742 726106302 25091684 684372323 285534540 668469273 166436663 190754762 11667074 316097880 133724308 238843178 84776200 248687225 101910899 780276424 383875888 834814887 210796829 898402334 721910435 742853376 440237959 583631154 426652537 869451936 518364499 815135703 286585491 506191595 492038701 898889382 649116826 778407069 343376763 347804744 55735414 231600381 214095531 265796070 165465913 790791130 280681225 448331859 286372770 311340038 154943598 358321635 103265282 449619202 8003915 162590243 87368514 381984576 87380988 951309765 474996423 990246024 198511290 963279494 184035261 718578894 84907901 793221811 356425751 745672443 731979695 878185706 396155682 474705704 189613114 960597962 891080648 913886344 528319508 970834830 35177495 885115090 43188102 360006104 305787660 718044269 693901387 930057153 591424525 940326432 336015508 831939419 538185297 699372548 178298160 621898005 327983056 653697709 293909237 795399968 227236154 241576100 165996628 839819491 807633917 835679694 358224393 859881502 249304755 799166037 543425378 951524190 100473037 966948476 110092670 764339257 407012856 681446684 342411222 636916492 45715347 927462129 677717102 758779353 266268704 445579545 163934070 828172096 681429384 945851999 613601002 799444217 203287790 987027004 306331282 416380393 91532986 160860156 31550792 127950864 92681647 745512434 582334709 982061885 756086508 758759555 743298068 961150892 466029971 546324908 19251471 522446354 71397965 351062004 283476239 385255193 383700929 389016412 279854092 467518987 23580475 490198183 398167724 940683405 211898074 979698551 229973264 545869089 326574487 523425477 396658209 868376142 248961851 997693267 536014063 877210042 662019313 710887325 491379244 524286490 439823969 764509484 716626284 732171641 59235464 874550981 871637508 894408334 510732955 755247701 293612205 611467826 34417826 308646321 301783329 893055417 411491690 637658239 521053306 705492360 575734814 633503427 428433879 608030679 124951393 819613937 148416478 493120181 215758385 618078543 581663341 748826768 577185028 945498119 479152731 864170731 702423674 850521404 771279007 909877415 104774747 989099592 588342676 880532164 523921587 834803464 54469369 599738689 589180205 937947428 568328707 799086357 94327006 853532962 395430464 554691678 102057169 205522472 180575270 837301089 300196299 463644226 239311766 322211092 299251819 635103512 557080017 638292522 317851816 782618570 763612927 784359810 719211147 738287154 428427147 671776724 659938211 798739083 450102545 668928624 228724803 249748166 122005084 643596271 592970566 879735593 165557795 556299899 346692592 666165101 575105370 800848191 184956768 447070569 352178901 982862882 179908558 963244932 870573941 895923178 617898589 714801996 519688801 674625256 198395947 646158206 32946947 395153412 357502863 621928797 93221480 965783393 439949503 730071998 118462636 183955208 63177987 535057997 93751124 584831606 271503215 421146039 86156089 406392777 387123747 420471694 109615354 995664824 162836660 419943802 105697983 137741305 69137788 839105021 161582591 610520801 474290464 941015424 501702426 745585017 115446746 632997136 231914504 479769285 304228694 853500861 809741477 865825715 289094212 321397317 122297512 588884246 459634622 824035002 500543862 743569896 32305428 599845602 586414913 887384335 403471629 830017256 511061960 703912032 363947455 770753426 636652334 740749072 117704776 510145660 174736632 912111537 189024851 701891487 21745570 281353822 105257414 474127657 203945711 381441954 157549135 766618732 492316755 681521415 254746250 456607536 212519572 348451174 207412348 908971993 56447100 627391773 529433148 535056248 232287527 248859906 135655039 276391309 39448728 890286332 115649066 435540570 378838865 391320639 279862280 397432190 209284811 985401468 108417639 631905441 331005143 786365932 467233556 965072671 801633290 861847124 389501600 957307255 668498825 727033670 63365860 897488089 249478135 954913135 68934938 146922763 139151154 289155857 78593197 875831789 141807992 518127188 492742403 578021455 39621085 338686963 56412313 559069084 127972247 660894643 164669995 272005488 231123471 421760001 375008618 384878755 358150436 363165485 175339081 858357368 161567411 328642713 174447774 919821266 52960112 783381423 306503765 689370839 626787268 763694959 90780979 811940251 192714705 856126799 144009703 479422146 158070727 320227299 73620332 538407762 286090824 827540204 429427383 735871531 63550148 517096312 164931011 822405103 467865164 744685257 574544713 639951991 51764091 352051513 311431347 900729037 500829414 528576640 168747758 988581838 906056662 965349231 126609075 648684239 25063713 231114561 85632596 671591107 664870154 831965282 427470044 533996541 57932871 522486423 72025291 202823563 80646906 762829296 671741515 986607634 402045122 983042533 497412041 821228109 619354728 956942054 172621796 595946528 574149527 704279653 290823461 294420594 49055773 997466456 304976162 873336765 780169598 929738085 391240904 743038197 541728405 865090977 255545377 370658548 70465809 849688355 673897542 719321765 677455788 831726531 189623903 787741238 561228898 605581892 201088233 861276027 793123877 940049384 582720243 910346387 453378762 685190514 336139442 472727456 185683695 287188808 89456479 382786169 136437975 166930481 47822809 446286467 373949328 603833029 507165659 650905689 284801066 445129365 402096902 821318303 243311102 830527725 382449935 411113772 273929692 827324357 133108402 925184189 467650475 687384169 425231880 466636171 270433208 434338025 178599685 471819423 21583024 676688625 621567823 688019707 19845886 38081247 10686395 817453573 395046018 930314913 653224533 972661534 385777024 783897234 416903365 689226229 506135224 837717376 132593901 513549005 354222611 492632270 70298035 557489604 414694274 462604822 338408799 804405060 497192460 644810339 460369807 753674036 235787879 978328784 425709843 478209376 81294019 435242495 267916038 462066633 426167830 864101522 698870547 773593485 736756215 868581384 581603785 849809722 90115385 930501012 572782330 745190477 23219237 978918570 28132670 272831355 12987951 705870790 381671090 674839451 523611408 942301904 623351553 650455031 31658592 351419319 107832341 437512341 376528594 565886598 149758095 398877104 347052837 349884054 17916331 26389967 10555711 639110914 244623363 956655133 798994033 809334971 592235056 722444560 98791120 902015537 348922744 533302358 232191734 282533030 229247029 438110718 415937384 438302715 261908346 404100377 393867435 638862090 97894736 752289261 537307530 776023888 753124708 958113385 549980479 671110294 488476359 701603864 560829277 581628771 562973169 831013084 120455904 153571917 15132054 289283747 43355829 313411202 164249278 216105591 155471888 342374258 181088483 375428315 129011356 929262358 825560106 838045313 387528993 725640772 678271085 861978732 71270519 825409556 101031271 348063238 187737558 303611914 10708156 922961509 60204290 288255922 20951341 834710366 146986451 959085235 54930983 686142285 661282818 851974183 774928996 863990902 405289043 953787705 394383280 415009856 11493171 326130282 151901130 917064472 401223078 762437891 109352747 132479956 68711475 361938820 13208773 680948979 55204320 745274930 116177075 191158995 99383246 646712771 80089515 667191558 97225729 797121148 423041493 475812596 324512758 712868839 595477294 963588634 413599823 420582231 268645562 526923277 22080114 283465639 222746858 586024715 348877482 857240088 619791363 815963894 399332967 450939123 78108969 139817340 95704553 866440825 710202478 850729674 506088253 949101197 206852514 937919388 511628499 906635121 579896064 883831959 28123695 504240921 17998168 283461468 144730372 456991188 76507997 981836456 63847981 971702174 159736513 262263824 161853908 717385999 660722763 791962601 364172245 922991969 293830809 768883726 333125957 960825260 769909537 891803603 866918539 980752365 165661867 705017666 587736948 621697869 573359736 658254184 582540344 667708750 647923634 895851365 491971948 533948627 395985007 460231387 18668025 888374760 469876184 531720182 502417747 887332389 164967734 474746873 43650984 917653370 585220054 934662677 133562465 824915226 284741972 546352173 387994363 855937022 134592761 588967792 88297931 511547569 312451937 832547618 495430878 911861588 618043123 868747673 171653067 928581559 390682913 468263745 450579532 927761483 889158672 914200589 26273322 457170029 66625851 636987589 57251099 765295430 380018421 929147243 96227207 479020116 149995540 836270352 168591136 340528781 177615041 394313719 153374505 650406059 282995842 835781677 534502031 679130289 118454392 242170195 206726063 292447426 77214875 708741734 544954178 645799710 87559094 239095029 174079568 935076538 701184136 994248880 839819584 891106330 763189090 950787404 729307265 874762359 853154841 952415080 702727697 814315338 293784959 631988872 89723721 105658585 41882479 222174912 68904561 995750373 61577753 829878581 289451752 444447192 140505329 809090988 233825767 582078776 496023998 505925316 421217896 829101570 30535169 381923795 112205557 507328982 74222371 757375673 479375879 602420468 255984587 570901094 169831659 218407607 27954839 62751245 10655881 526846919 362772577 896032415 376801107 412437261 139925036 937448637 384800134 404001426 157247540 974361482 527416181 551434552 435104304 723469064 289983571 906076418 417062199 986744586 787927705 816769222 20251756 795681287 191091236 936332509 20169260 757877706 630460948 659427986 178103488 521359522 321830435 468985059 331484887 742115132 98091396 713183232 174967887 625635383 208825092 743824240 602677745 995950420 203954907 714083450 51700037 59925951 39147617 424941585 212067629 563330869 372493330 658692918 148695272 829985477 454982584 645966228 154942022 657476409 67099 982631957 49062018 449645376 106709822 268862653 181848604 275605985 71244975 709989495 81447265 859254257 630724753 756972904 231362251 490890683 481158112 928217872 738999020 796944070 232275869 881764913 292159990 489223115 185541764 738134650 328582542 566796346 158915224 568047737 202321797 283908232 72104406 195204940 123684926 224842429 41942493 969321222 249724532 728061962 670339381 822608415 653853124 893876674 332594957 723030481 478260861 507607897 332162772 417142913 297354765 428446811 360214641 590830140 169856530 876877259 176423616 772851468 224821544 293196986 214091827 317889027 89767417 373788605 102865247 824394591 82142419 258646634 69448775 446033699 237154570 316982308 147766942 850493962 77605226 333124160 317793256 896352902 490265860 573745381 32244754 411868248 207275852 569034944 186885905 498473519 131242032 839104067 197698892 375097284 134776520 853076508 720546657 746435613 694818014 811290820 452786692 954549585 89381288 842772423 837293509 928353846 830329927 867611023 559137664 559687038 346464347 522988781 46289474 660341992 74609575 109074500 98076054 619667484 227281791 712567985 388089296 625996639 530245394 863331283 583732083 684113793 419917575 707637319 299890367 521824989 157313990 489960785 440369443 510603565 291871180 409081009 191874340 509714850 365971786 884563661 545884335 863452071 235689170 508386772 100169801 582147431 334113071 524268347 498114085 722128587 489821324 949426959 155221612 682324526 658986510 816435915 618856937 833602839 510966050 813520484 44586572 870352602 101608478 528929315 6996924 499501001 175638557 670280092 525807294 807541282 771186141 796209215 522383272 691632934 668435920 834485874 89762161 401693159 202549979 479160400 451179835 900742998 366510173 499958676 492737815 694827367 114233203 844411168 699614762 917531373 764405350 971665436 151021490 248090828 129993902 928090184 715080578 755368721 294601859 937060955 81043199 424954516 188655924 248784938 108218019 185517672 46279831 819777767 221157138 481429635 411627947 851903560 509735469 992405639 240120303 999416303 5809722 294202482 200387269 938192833 74996899 349024759 77866008 424180739 181149445 853276883 784722267 864913741 759814003 862534404 839290092 935939832 883560568 916346278 656147674 884745661 818673137 825168720 501203957 928975124 450235277 549524717 490876559 781552912 162231787 374368362 295138885 759186829 226987004 664572040 58726609 123596950 119824785 347431721 174262566 708880757 176643685 204471322 194876428 441735409 329735594 430991994 244529700 534633046 190137268 655880316 392464321 925113675 921805670 930749238 139460690 991894182 852003824 899122304 812750841 867507806 218462587 961402665 42122371 931139293 861329858 970000198 236095275 778070023 617937193 890262304 187293482 363433667 7762207 71789646 53946919 600462446 519772132 748207156 361888104 792413134 717803505 726222427 190595301 595818800 374875788 852451597 128046194 756115763 682135705 989923805 915230254 971901558 192752112 435089643 212058254 594048042 49453461 723829816 300466534 534200529 409200944 979285544 206003407 280391629 106859182 631115781 222632896 289108277 198825735 713374189 578612497 992503385 856673858 931634965 889546796 991298979 363265247 534247310 299267459 617084464 282711395 785659242 325852409 678881104 569867136 973259716 680823137 953771345 326776248 403105842 231199892 460882368 278721219 933095158 703719774 903512036 875342215 908102613 485381740 495529052 200218852 740129943 494475504 889248364 688837797 781601657 523510931 588892052 497322390 794612538 579421725 678569724 434263913 599856086 277210053 885252336 689629944 760983053 742842986 789655753 745887565 777036020 553076912 792769745 565665066 588005580 213581434 952766991 106073568 745540546 735016933 912069721 550988850 571261901 313666631 463481587 193211330 441305641 45856083 204921217 24000594 364072453 350960787 952643460 482108893 642902824 253795129 549885475 73324711 461806628 231366633 526364949 399132580 442889899 188171450 607478447 250631845 646589923 403672290 738044543 696971465 855104688 684161730 920224267 747842293 789496195 268841152 701387976 319202668 917335935 563731254 718204114 236729063 360061603 252697505 534721638 421896967 506115550 426544587 894530225 337205464 437953945 343304523 490904522 178127546 285993814 238135925 879255346 83278809 439391298 146220764 324488062 316870627 747452440 650964401 706683950 394511489 970123081 439183709 679152858 235329006 622429521 300463065 984204213 931323464 975002120 663023401 688576896 315957823 335435151 96808796 884121356 576032256 885138019 371083440 689772082 644845937 933380191 816343388 888261957 598881401 904656167 630248990 799266125 281751231 823219168 600749218 927106823 516674759 972404497 360381315 941452344 70572348 110875343 67325964 808489565 298248237 731331090 3299156 774358346 278544334 892912102 163048678 926724470 17425233 884064977 357043443 622584377 293138608 307948115 242771288 291310476 70374949 89485612 77995658 165200927 143274069 944850737 350400980 728460116 693593367 890354983 143572448 272717085 102284216 585859750 59031999 296290746 123680820 443700137 123099582 353000376 319196142 535693420 351386720 770415243 340388936 906033271 95848297 997079052 662959493 742388337 285409 333877277 56827612 748590798 186039098 567122039 167258023 882089683 617426451 758698360 417150137 516767445 299049548 399156385 112903342 921328332 118846434 751347655 168898149 402601192 341731155 492696538 431113495 731744613 174914565 390131955 18596603 552233956 247341024 463242280 166717913 865464526 263281752 955800275 671418333 685422480 364022420 974838496 158627069 438072468 384669842 410247040 384827593 587690722 498680876 538738517 510718373 729580680 331886963 551536036 212694802 451632026 436053368 782489058 9451609 996825009 617005291 916799292 764920806 773977916 381597750 915080124 413164567 735385800 277321906 344655771 195097936 532172684 306322499 810891920 362412912 561643069 247433990 403402209 30867018 809478896 394475435 767203061 615100922 880470094 697369544 923223644 808584050 819333249 436188402 932106083 398977656 894554888 225914758 933840196 278208154 902311060 425103015 773797763 671050629 723616955 807826 660185863 524912831 963460313 676013602 844899321 41133167 143070094 139373663 340700116 204010977 817826125 510436372 911152875 310012283 480721500 39629411 293205080 32373133 606950734 242658186 541846615 214545994 986545795 76033244 932228096 499067717 688277269 507086647 864739721 18141289 142162128 28741994 280686706 206124657 374368468 154319217 258596334 81759853 882961586 843993312 901529019 369251241 821319588 312645053 625015528 463592967 971989795 734601650 971965970 940224273 952116480 124272898 482054164 375755058 519919518 26390150 913192027 676297317 928551693 584626423 846267879 554209167 912683458 647018569 663644257 481404923 955997637 617818367 633495144 514252682 630547306 315477987 394272315 85758323 687347656 267479458 419458652 397859370 489562098 114903050 943786242 847278035 896504234 710646146 804268278 423471783 807266976 597662623 988539726 149154852 765559680 518804442 684587851 389772787 782680754 766722165 818405783 166228282 751771308 640804145 763443565 517427972 896136564 159559868 191108499 171845872 724446941 9009351 499246368 17152267 896627629 321277734 450386339 55574227 623708714 490997385 628605933 559282025 772300705 51306346 888050499 118295203 334351903 53753670 741675511 408340094 480581520 234698169 704774667 91394488 819993332 69313159 196068151 18795278 84120498 45775262 486254714 85385977 583556211 576635675 914989004 23623909 732111886 135927300 782068002 620696242 998070822 596417414 620680103 457342117 990734774 263409810 898900666 300560716 907755670 436905981 542397489 524148007 972510854 965591397 992326924 766643289 822324942 254776188 977475787 92191590 115589553 45971647 986745270 373476260 492969574 266154181 579134735 369291283 792228671 157664852 464390545 101488183 551088641 198052892 824317685 454326101 828930983 59929191 575071337 337247838 697224225 499191852 951464054 835000313 922306210 829998701 998483954 543964039 775482882 520035404 663638751 438752500 507867673 324820445 418516135 102196223 295775597 237334206 777593628 613288096 915580885 885593471 890205409 685004271 801528378 31174794 634130917 207095119 591420496 181267851 441812296 109510140 135976992 59009564 529566791 72670204 534092069 501584150 721904816 443216868 961266311 368802680 674086484 316281204 982267671 925972301 985514427 173174749 667932498 325328266 629616234 12136122 47931492 15802231 557741001 87922574 777136882 238217544 793181275 131340070 622584924 393778641 776070786 618984608 999820044 959777120 979737170 923572558 990827611 135549341 193099169 151992463 808234670 533728959 942951563 818636486 911187930 521151882 619088383 102210954 311918020 113411142 551951372 242272979 716599604 586539562 754460267 491992037 903684157 256684322 961937673 654135792 793345049 594602760 946734869 734084156 958874864 425138793 864956299 507163641 925300023 698214470 904525615 695797251 805985944 577105551 602804177 364638565 580257429 45685259 777668337 108534141 979477121 611817682 954569301 345388562 787401367 202885438 584068675 239483723 391668502 350942689 855248391 814468111 894479602 354545032 557673004 161986929 677752154 492794351 871445559 407668684 909565139 847087288 923313698 605820171 859876863 678648598 728084375 668764219 953762246 931357206 987863400 731045833 857911179 754030257 856250750 636975462 985512162 897526293 998507856 595618447 944688715 445884870 625240091 458897674 549056078 127734146 370730368 236900233 856670977 424454199 575532822 141525772 323629790 5526445 145456384 93858112 713220571 447492813 528228101 286628810 896941362 373265233 678772914 169891172 903686954 530227943 669058519 268332992 863152996 811490588 942946215 765843159 956297083 541669661 776624547 412103117 691705495 508170811 823642160 81354974 258421010 140320335 176811067 105465290 127336903 82680339 589109248 422730181 503089552 361687910 454061350 170722337 334660859 108668225 869785078 544203284 823348958 313467301 812501270 161036688 304435233 215814709 671485377 596299350 865194147 841364832 952553863 881140403 986641506 578402146 778255997 716719284 822215212 100899804 741375166 688352437 818583189 436213558 766581835 742887850 794677300 711609248 846549145 688731993 903481076 200568949 754304212 426622537 846020775 384537074 760529925 605231986 693995922 678850267 758565700 426444388 697310946 93958180 559862766 363724152 788600948 474565716 619952518 66901089 81401050 12299376 525076811 249781296 360261804 305561500 883897860 18331223 769711050 274642705 749690609 574865790 853647663 225586082 908461213 188485638 776818072 88423623 796051037 169014500 415246831 435973 314087015 62208897 220807948 155096498 762755254 386936428 806128257 191992889 365404528 298618959 868079505 349203487 857170257 562412779 654497779 287878884 314349821 113889445 671744828 259478786 837852208 122234476 335982975 238330824 324594713 175681954 577520232 250116478 318340827 10157427 539384246 139042792 143783650 53345761 465460542 279424042 322492334 298454723 798711970 187960357 568778618 441220493 795262477 339027063 787879831 53770607 350595068 309777317 987448090 544792882 821292771 25170350 93155373 67724117 858483186 231579965 504024178 56549954 702811982 515052338 661299055 494480439 990135717 586518223 751099421 455248050 623248328 79198971 458495551 66391664 568502964 146135112 873180763 509568033 672641110 286009911 976071171 508102118 710325245 624484641 999839757 447990781 503891479 195013115 395302028 86714449 231005509 212378666 895922088 746292591 805882242 110508497 921303978 84530550 659030162 399883746 592951399 468950928 795233506 353144790 501699008 221262411 958550145 205807892 706079716 581118591 822178472 426545345 853802928 247471457 526082305 258767330 479353541 233082907 419839494 391730510 478156986 343708471 495386102 423752150 460506181 298734774 420264234 116485848 358659889 327076114 386592873 325561423 668730347 443708749 513256771 220792829 565627173 140380206 608936143 321156206 360277415 22424463 725671809 654087344 855217055 256225167 774325885 599871363 895926563 18966028 671550627 142162376 722543093 8544315 511955685 345337940 433359881 205335831 644346973 60960810 194859412 3820035 586359389 217710493 438938827 268922714 680590070 132700672 814950984 9816441 797567134 146539188 722212199 696672349 885996518 724686742 935302466 554745562 818846397 303479700 628652724 188075222 246805921 140013035 423832077 69905624 178001670 678108 267610832 71399242 344459051 280437074 827978991 583941016 879423424 703051206 834355869 294085078 919514799 707918636 900797401 885172486 958349484 865762583 935836104 846626003 953438803 53398598 70596227 41381818 902772407 19194237 577768695 563561593 886182085 266046480 781495435 397018841 750355458 123135060 230658385 172786382 475098499 228699137 951682288 387811831 983769761 819458506 912929133 117465459 669700834 215115834 874213192 795574411 969375884 596229806 939453738 272735734 462696289 179674708 221971485 41337034 882220514 703695253 785440298 155290027 290312749 213125660 667008547 344222650 911127810 83765179 663589799 614051143 738815349 332981829 954521358 247691132 845388581 442827029 799827449 120265793 738256104 624647130 692499237 525878705 958236964 194419007 753472807 619518386 968518198 198345845 273638507 208500539 511794816 374926815 943644992 848877756 964196913 155670904 256424359 56634383 413854862 168705107 902940192 476357900 985250732 499921959 768685967 22541173 148855920 122207898 312171114 33119774 245535263 89200889 828349284 117840802 876762387 312218296 945513687 623027954 885487816 687169986 895055535 672227653 961192387 934123425 960287334 817404786 832796591 756859106 879775158 733816452 992349679 76077464 91405658 7832154 972998063 223154291 401398733 235645874 618748222 223455999 616261003 553632986 631411217 188657276 659424681 465569767 596577450 393129103 843868310 671594769 683469567 541050595 769843363 362636457 876645107 144952208 862937736 88988897 533027973 517211705 917357672 534683108 798506488 117319265 449528693 52750448 659997231 399179198 940515276 484661772 931187636 15381607 121544328 36241738 839292474 641404416 756192928 302542278 659789928 281603491 328345108 66093507 721052562 529707635 951258032 220804873 281414685 149954882 403475712 396225620 421699211 344613517 347560327 226061532 773921113 590649123 879641018 478202614 743005637 727969431 822537145 351403049 896349929 297946615 897762149 628243136 646873870 204443318 250381959 75713033 432628751 177955204 684395159 272882137 886051048 785744835 889459609 410338452 566399321 505206979 753390451 353071960 489209395 219976186 854822751 503031599 882311171 239568821 593502441 230749345 423941634 254890827 472908615 297019413 351447035 61929707 289840654 154673485 169231505 40368198 716258168 345860409 977911589 711808114 791325804 573527133 980310361 799627280 941299128 155517738 782157862 529062960 642990084 555048434 730285843 178114034 282338553 52125472 633972376 102110127 817106109 53889211 148909043 79079428 312823324 61633107 843884433 366509475 578139928 73412920 538120456 20228867 861276955 65516670 578129283 3028766 227040158 62879753 176188776 11155689 375190953 228927796 644427639 271700526 914806269 118293127 983677544 461863626 525096260 470809416 572128444 45939936 401975509 58471904 151536569 105120676 135689909 108854554 306929672 91500926 896907777 361035378 974324726 126320791 347361976 228860850 482887189 468121473 811906175 667421250 952076847 622836034 944497381 370590097 658245269 238967561 732585599 199222065 697570832 440043097 523628279 58019148 505154653 273405183 553461597 356949373 788525069 100071178 487378844 333289235 527515164 184525809 827288928 679507436 837124398 533377786 918118332 303115786 725671539 106732028 681623794 71039467 140699281 123487095 719991232 716286763 859784369 224538642 595043582 582018687 929380299 304082024 655358216 601763673 829750789 261241876 624020316 402315908 966443519 895877565 978829276 746383805 946548977 89179582 234748291 120413448 286507561 36013011 653774945 305147799 934583351 181706432 294152629 13237577 252779808 196173267 619099611 161225443 436541384 231788694 858907989 763281535 807877424 234605496 742762700 306044354 445610066 97425724 938268366 339824172 360503567 189474749 807797530 128970820 578186883 116399769 929353539 6740871 835234371 588006907 979928750 774355702 893112271 800229449 974299095 279434057 620235593 173889115 699661791 537318055 650615280 562534549 625056646 465451820 552101380 267614263 546650334 134179932 869955653 569314295 936863277 650744103 717559666 631950290 854425984 237375984 363512468 310753344 419457172 76399762 772596258 300615668 705062505 267366030 408066227 165934172 204937637 203326672 854774645 460708356 522061967 154386303 712178625 536559395 972731713 927857622 979128264 375093834 648313424 396293389 660785535 197110181 200011559 126190726 936855772 933895089 936865192 873015737 908253888 685443159 848099022 207798840 824237220 785748130 999810615 477621410 667957992 388883723 812666287 190851592 688689656 373892661 494019242 323347003 678495411 197115406 724063726 142406272 668363076 478369617 624995524 494900774 929588303 745242350 794737377 275756656 395298935 191306433 752032512 171311021 628027862 495099786 762000472 493824531 571893841 484729522 492255079 144197076 396558927 391745565 555613973 77364299 922816137 793981131 949386353 511966528 714835128 501187055 800913857 394453885 754823538 238443264 764647851 317011559 746344562 359912627 524116211 367571490 583084867 347258578 670553316 116195459 334554799 284911433 560326360 106346573 515195665 447976184 696961570 56600396 217650143 212325410 723038330 694821519 879122024 690079947 704309544 616941449 696228082 10615449 558526470 446497336 587536367 165118410 469990091 119494958 823295377 677970300 740247412 173599016 260082938 11238834 814333464 64725572 623500183 544447151 902815874 17536182 364295266 82270124 192531336 90993305 380366409 204886013 584263106 324483388 770059471 459842610 723056268 401580460 920681479 58658026 825924809 754097482 935518960 532973243 586496917 563173214 925201437 489516227 814861338 671886114 716446828 625083241 756801494 61685594 119422158 99991372 122688884 98066484 384677045 208278837 895668976 524346320 534095170 460613923 817093666 295071605 883480776 380157751 823547002 658681820 965860317 572402938 595719755 555202688 966610239 327336653 406831543 184540008 984205226 215211709 895576720 9032476 852103678 805585399 908942232 125051112 470378400 282740100 801051117 140741663 839335397 827653214 964732809 25089965 132734779 51617160 442584235 201104038 836862519 211376251 396978698 173380844 409375577 196379233 767115454 744946996 749446351 5221313 656127788 104551228 874201764 107978445 255689558 66439439 852915763 814354259 958385298 580720441 802400077 515727081 892490242 36231311 397796150 384169614 596171838 62390816 810738789 781101431 848328319 461832387 628230513 510949229 772248715 60419385 977905210 779111975 884755810 585883835 603904605 133519719 873356073 510643881 581500659 448585080 712617139 594710838 965808002 519539324 650673547 387158324 729426831 418384592 975403863 898741246 996970785 752114248 901416525 526379041 924218304 458289271 581015725 383586250 930052178 290876850 515699402 284153754 749904599 447424580 698528556 507032462 542721740 458973112 540208978 483809050 612284175 287485426 712960989 303286100 401246951 139917620 884386093 881326691 974127915 121394425 263545286 242135669 518990922 518094019 835311473 487412191 665468780 457429353 907839777 328495306 450613509 404082323 854905862 256058985 718176050 58654716 907090300 62662350 929071700 688971097 803485877 782175924 922986878 126489068 805270365 796368581 862107377 223502822 973607714 904460922 953906796 94931222 624093299 17508927 624333919 521211709 789853672 10032167 502419919 390985133 745816102 298930864 607537503 159927108 288477000 157017982 742382356 742099323 993661604 115263547 887033264 825305473 870517830 659798094 836934158 390545046 821010059 430607243 650001267 419788256 484631026 331362896 589714593 91750059 965849741 267317538 323986355 159954189 482983213 243936075 391827733 91996301 516300692 296804048 874916478 794569089 981855013 220956792 385788410 166244328 274879341 114470437 512013761 277136226 974066331 519373237 870650068 603363782 993905418 528630074 817694239 477809724 626423799 382618927 445591986 370560141 537506686 419079911 550140477 544066009 860545394 260861198 322968678 233792857 859252785 502623983 773168482 161220024 781051488 32738441 999279207 271580913 776660874 714789507 884133261 172823477 833828555 664003404 737371970 559782467 782557054 454692639 541988171 464907530 631028877 577136172 684848662 161841949 534422845 111071509 775539066 397797814 594833429 349550007 662833247 606572395 759863906 510324189 784049036 133341811 297264335 29571321 896015217 375015524 599130528 191667491 191815646 59148970 157046576 44415768 383285493 227887825 522742044 302774650 642429283 320799227 475831797 66881833 477790914 168091281 393661855 138945193 886561264 149949496 663753021 337090709 355019161 278114813 961118447 666871535 927005238 520880546 751596631 65254190 765691621 435409864 517183470 163957795 407509278 208127766 462761759 243121821 393707375 224059279 788122274 571229655 654506047 473598116 827439169 535693039 693685942 618201251 819660862 406268185 547121867 383730393 408362613 255620891 537408796 375595395 508325597 33860124 650818319 434949411 943346917 731684445 804211677 200678500 504038941 246129587 933459792 302129203 662295778 379030315 742786940 175087250 725937756 237604391 474124169 69451833 972122615 592342789 725692190 360488888 604432883 80710231 326779619 250678744 811113311 535765606 813736485 435333621 890892532 216458248 793887444 670731879 847406773 378597249 512051575 281981467 565573780 447518340 816680389 298696761 362488292 314712364 760970505 667066085 983802047 939936108 940123285 898152144 918707530 845564163 944647464 464042575 964426335 257927779 995554230 349272990 351688197 25759009 120068155 70242306 179729323 38258648 631615561 378695797 681525973 12483859 692401347 144938592 514289932 344624914 992923749 479731195 843507116 516924323 695399738 254010696 743849501 84068652 529673716 130169247 432043087 25026808 176281646 142016322 901273659 199022268 864918728 411254026 649979462 323539708 514991626 29846946 878021403 249552439 460835796 255742484 264817416 169214173 610035271 284314102 634782041 73740652 716867704 35963400 685032487 269999575 657951111 48684540 288091734 173048575 251599960 93008043 363166225 118548209 350093566 168787132 604267873 349201823 478203109 155951022 700500589 228761645 261824585 113920107 776416312 23779636 976221526 535786850 587556667 269091331 429621631 316265549 951595651 367444979 427010617 419259342 762654613 355382639 470665850 384779420 961389061 166999949 749279155 473141119 751952614 591524952 593527120 541173135 594888744 285724213 661234052 472535041 937307371 795507263 897431557 149364228 765796974 155631469 456906788 226087866 539364833 2936059 38711613 1543458 758477421 298115963 310197454 275668891 744246753 214746048 216002478 4242683 83692043 75840097 368744527 222376557 257431535 31396839 576442406 305713901 758742319 152975477 633560990 323121476 590195675 207048983 333352316 264196720 948192598 135092872 582371418 75657587 363271062 350514749 354107066 291308195 347458469 190239631 619105576 12649459 198843227 3995245 582863383 23411662 351180007 93576716 472996344 363578509 793437020 582205266 706863328 393461873 551636799 35186001 823015064 149309505 986533597 315860705 908819726 816611423 979173983 543119461 593722175 156227017 657360328 427602887 673996206 377088635 872612661 670757561 689890627 224522253 241026065 99073205 103135068 59327461 945666128 488425891 633239959 584372744 931920553 352716290 791639358 733931314 858192557 787564763 879789342 517671541 809646116 253500528 434952983 165771377 310108224 149823346 491510475 396769503 653483062 651279682 724077768 508521433 764970696 611934745 613209551 602535546 998734364 460311642 848271128 735353326 742951572 692477608 887426022 419068112 763695065 616284597 861457947 388872399 899400099 794144487 890515736 139728295 177486986 17742811 924040523 348365792 840312845 745139778 770222888 135911699 285863439 281110288 418391282 97681165 579246507 220671356 941801475 52807812 950824935 803592277 825960248 243048670 687258397 548252065 700114072 382292949 582438797 428502309 959098980 469115454 764119076 113911683 302617223 223664123 969479926 944206560 960797671 285070168 379314319 354830943 445086790 401452818 424741413 112305234 112841909 15660219 31605454 16352209 489065441 481384920 832836116 51694165 798790691 485301374 511503751 286305424 332602880 330039322 791361648 773424542 987831890 701469582 769494498 516403011 873765452 203822136 699394790 24756618 418058171 353222616 991166416 626343392 667329565 136199446 673688582 427524769 961972059 264790443 681150533 60832545 723346544 470282890 470975247 469313177 689886710 452894206 888485407 198710776 213327541 99677171 432723923 6787979 468967937 383838885 882254594 845239299 911420220 737292478 895286149 744908269 792255453 526316229 578672690 538593978 729805900 215609549 394007379 219841908 292174031 38069163 432228429 44725817 597990244 133750864 792255641 501770517 884172274 195950062 856540599 496840235 645891851 643040205 873389784 730027008 857112940 94803182 512416761 480272320 655643693 475880070 689521830 438072023 997274904 93908219 645039370 157754120 187533190 116806920 644444274 169692051 739271321 411491294 426061368 341583356 808826912 319323363 445985024 36500475 226294887 192254584 969396924 660798531 742890468 721700107 908717153 524348376 986203387 438217084 477474887 206769393 807397054 178132817 829649191 815215183 890282460 469128995 516870519 57646172 240459411 192019678 259377955 74921926 397540751 381012071 545161136 394141797 807060970 793725988 995724371 966880473 989870015 593142705 892982115 251299350 810828718 727854308 925070372 911735170 982894907 494486046 956233272 626819257 934710585 305465180 916817638 764538889 900849371 620456323 987780860 845190886 905288406 696451520 853021179 446485504 926390668 862180905 926646666 517169410 971675106 571848283 743628521 435126512 613660892 571099582 615984598 217542520 779191467 738532269 838694264 293818204 404700615 390122612 969182785 277300833 492896499 253913091 709585660 400222825 699207262 15252668 654850080 30583878 716116760 358910233 993594766 57589269 88545113 9227240 391467075 290163316 681033056 325143316 729738755 265937493 432366155 279491808 691157742 385763518 401823871 300117217 603129093 40313674 890290120 556433647 841832429 544034087 812957598 712808221 910679378 177664948 757981176 130909789 366444017 297291793 302208915 237172777 944531513 462263030 714908464 490605074 983197970 562947890 946276603 689295541 851755683 761528097 987066920 861379554 991961283 867518060 960676987 403657334 756741436 693374764 829219648 346411148 953948794 925442658 972265870 114844382 404415540 58759560 635934636 587598671 638832447 530392711 822865759 192372987 896343557 799141532 809871269 719207159 778415267 326064111 551509762 113308866 598771239 97504090 796720939 656338021 890099792 734773605 773718750 50617823 865271361 129223430 437960271 168659268 828573087 681092170 702314021 648003157 811327018 685367127 952787249 726214476 958727791 487046888 718708123 496312120 502523570 236467484 335383055 142590018 288852302 267251354 531976168 487645659 844324748 470570550 680859147 534436156 961290870 91971866 110383167 45475090 444153403 267950227 524697565 185674578 815647481 123480769 760247643 314437676 382235958 364904353 888374471 506621485 693678050 408441881 807119011 795474518 820612092 762936331 965174821 225872043 438238305 379555038 851980013 628956234 642058105 49967385 73139966 55415852 389226721 1251156 168887245 144968467 836636282 375635803 925744534 592367636 686173907 68445649 240206115 229450469 671664832 217595809 281223567 246340336 614154739 570159734 824673086 781891950 898487591 518405262 877678756 296683179 893796655 684410277 758909007 394410632 426514016 305182048 474207295 9317460 745726774 257497838 509336537 163175295 663361595 420387026 431572240 90893231 277921501 250534912 541342773 88907354 777293399 762563768 844374242 19153940 283849018 11158283 189582720 130125814 900540364 117797507 326424129 150879701 572919756 330101304 471087581 116372265 279859907 1177602 243067878 55956271 271651628 26861603 962133454 944314797 968795660 409927330 696453971 300893393 437366886 321871819 469224831 290932842 432404310 344084618 454877380 112949362 207700641 53494387 863776859 638057426 798175427 160267357 270924418 104419816 161789548 34286779 727916126 570141326 844186407 377365454 507152531 399803326 576928008 470466300 796612426 769417453 908563596 716017485 933815546 724761221 992839862 725304356 909634562 208487992 521319371 393890527 759472246 91607991 702246794 379676598 572340840 237238313 980257724 250925216 658586164 324161893 879710020 781233809 806855710 310300546 753011029 9923767 98818875 56571941 131583341 84843195 754633768 186085894 688486839 390690643 621085403 24384443 817848961 499561767 598467030 200425749 997996373 234714577 521712891 335393363 993747006 464388566 931842061 898408007 918361700 99801316 563578858 278134523 446864110 370493905 408071609 227474606 776380186 494154931 551812888 448969267 863629683 364488489 930738105 519557228 570666817 412240077 962405274 620699017 714612399 350074592 753210763 462016800 521297215 428746522 687726467 97108633 520978479 500511210 676883418 437684232 577445897 2143832 468606209 180554553 515042408 70965398 109570798 67441423 311538410 275540407 536071025 451104991 883713021 608540720 773054465 396828505 549075369 542308223 976126511 933697031 977619952 835114065 964875499 738883222 866440304 504387952 978121403 974780877 990110636 879441559 902602396 375836898 442526456 408934861 563476360 91742802 455487519 221703276 340151870 191032689 311211123 175356554 493798912 87914031 828275521 790422826 833387390 648141397 675023575 475852632 729841331 340775497 954943143 846949504 956171904 157776197 204644761 27840008 875073246 418196203 573283374 473407032 490625075 35757427 532283745 46352506 642237659 97020644 561351349 413726908 589245107 90655467 186376918 110832077 527055711 21804851 367173196 117051594 202185041 2714089 908883701 299580395 416921933 306865213 864224371 288700403 942213655 524558087 602074273 357500681 488610829 368400247 624352008 214075856 640012933 619603328 804048213 98589724 380953795 236280673 757140815 473344639 946873260 266081913 282077680 254947877 876012167 721948854 811172079 745977541 905144730 899639435 942657075 791706961 976525431 599757606 640369560 626496243 872921570 25220141 834193971 753208017 951875261 721719048 805122478 793640392 886635355 203667187 769399331 332759341 377604039 132585516 481056911 54464804 418067736 416422497 573442486 112371412 989813749 14616874 453416768 240169162 722521665 229192613 866212148 473168389 761513801 720031404 966131209 958504678 971780080 494654412 631225439 279646324 864811145 726881593 967529191 878285368 992897383 394198371 906600288 569937825 954442112 5263914 770621526 524345890 974583607 813018503 976875110 794101629 995370349 234433406 762065312 527003887 608298476 171916007 796940357 374591571 976912460 287934419 952713479 124788535 254449033 232479371 367505142 289352103 737370560 328889130 820684556 387339230 894785248 809464255 836374801 320317197 972296011 936627441 940258715 146668616 497132699 480346994 485261035 201306370 874518927 220413467 384243669 330840671 947039861 856090419 868993486 470793115 709441199 440271885 668257825 396180989 425941644 46568969 806851832 611493175 618301958 319029046 900632973 45763554 929190144 89758608 855044704 530609413 883791228 727802816 938368650 50698184 54180615 28757539 160003597 23916042 488578550 29302019 993295654 142530376 342890981 76093929 428133945 26310469 636627076 348224068 902672898 522676389 593554555 491416985 743397278 443585605 721404728 166108137 499666793 401762926 790378771 586763840 859590502 402604476 845872248 716184417 972676539 523295673 578928769 53395592 156432369 65871721 122670973 97172777 339072909 326203433 577755442 12120779 246925206 57446238 882175416 413375579 724707092 122998258 840417078 546727751 721401192 502243808 776176218 453841581 526892189 258048144 925708667 882369320 925442143 381469682 725217919 59492998 938716123 380651825 551918552 205080999 597665191 572917649 713485846 203595885 551850205 370431668 522445555 272229637 729491059 469048819 769535932 393273768 786332482 429752002 866405660 788830100 832168209 184256099 927449330 849336968 972777805 751880379 954785308 463186378 883351393 709988458 811049102 307390239 690510877 8628336 81256455 42326336 432057409 258233572 590384334 38255065 497508295 40614694 61115182 7054999 942511802 479406228 818485549 178063495 493520549 95172489 751914600 534689402 888188682 541918134 959851540 416479461 822554684 426357970 950860872 721713470 765938542 387920696 899345567 576654052 786351440 460153222 576133454 437990033 780045371 723839247 901092843 208512506 699307839 634253476 847477697 819982407 998045771 982876425 997625239 153623245 570293235 424366804 841813798 715448128 923053017 855842124 917693869 500690873 697715629 11217244 729936276 496660987 706441263 401967772 729697007 197213974 958460081 411724171 817856484 55290505 163783786 114598530 734245120 289873892 754830995 415847926 461544760 395894961 564602593 375590119 561337885 191147246 859598793 667499987 802581495 109229312 390766688 135328963 420660035 155634003 773350823 551016339 686565390 227220406 478571152 429376553 651119136 96362194 762660627 606577498 761873593 698690812 812407135 112976141 527897514 445769091 780482821 255622731 312967270 291200277 662659172 46340426 700653812 515961522 882852228 270501392 449700264 147530908 168429288 162758839 759783018 8810426 572349595 122168083 545695549 407447671 507522577 32969113 946460023 645109489 924746295 668979063 850572407 476224913 596563569 584467716 635043761 592746347 912991418 826531733 872345741 508368377 691648743 629317017 639628132 638966427 989035084 189964522 688866905 107221884 797435287 471103561 788284072 331954481 825251733 338790978 515090038 330354773 476887975 123959548 298116604 29634933 970787577 565908916 771082602 183085284 319531022 9166176 238675622 5874274 50709411 43539026 731290269 540851339 970465838 204521247 673777979 117498651 276574541 220979210 998346367 870009299 919142869 749350746 862642690 45696599 737322046 309963383 387830871 369129047 931662610 171298448 825782208 26339595 813992065 424282849 600258000 135771124 316392510 162449194 855955121 470343127 605927278 98147820 118884496 32095737 308764120 217033137 660110908 571894621 841426899 93832737 762959316 164759227 484549243 388984656 483086015 10478394 142676443 102001421 884682105 546028493 629650683 68618513 772350164 526128620 827015629 273182895 964350851 363824754 593161951 6666275 86166760 48644081 474143050 381040630 591732739 281739369 479324667 252234933 282751633 219994290 865571993 453895100 883921393 660130139 944882866 416103253 550299370 180204027 606062285 487149747 760677741 753559856 884073397 702842552 858276363 311096805 333584221 255496176 260010545 212708473 801033584 720943711 975286808 594651073 966270496 705398821 926247566 617841165 673219681 397611873 632470333 624834919 858029560 701881194 703541804 509436768 567504167 217960056 581120019 267181197 705537894 651272751 830150136 478039557 514244088 93732425 432531698 40815157 237521777 191067258 867208304 701474411 793404265 115835032 625215472 523076834 725860258 165760408 961777551 276134865 556376052 298639045 909332663 706461802 986554195 561629243 724897855 392188194 751815978 556213399 917175009 834734529 931687180 803318548 864989121 3599066 91003534 55078926 574877221 151272336 694659508 310302732 686668245 215000692 560761770 305079964 351284914 234848495 355867063 184727120 602098991 472430446 556022892 358868431 811204474 741494985 840150324 245981263 675150910 30708226 411677074 89286029 808313441 459818809 633799816 124082570 425093908 483124 733737491 278868305 339183850 280661119 311637774 149103528 877069057 344507776 711722225 205992652 470649623 135932578 566796161 11529596 660967173 555719298 956920242 683465938 686488952 232175332 711652800 133998303 836508940 153485444 698864288 524970266 959891228 117526220 998009908 587999810 748686249 504357687 582986600 564452978 798704901 768532767 800080573 72663287 409897859 304545113 523516971 144374427 726003147 244020714 584581800 445774083 950247036 844957583 894313463 253115255 866236510 565180973 925275483 202245020 695531921 569142503 789090476 674877199 901632730 742371060 933268294 349016067 863565070 413644722 910300741 863231489 921318817 781787834 784004488 606114873 723853766 642917333 983260123 151375560 357492348 20534807 969151713 166348748 320137516 175721249 449244851 289406611 399599855 103439145 611039897 528969216 598987739 566528511 678307948 351539102 968656480 399252439 732205407 22042011 517875585 109385451 207063601 59359020 874544343 278091979 845536032 165156914 647637010 87915257 148676603 9433786 859757108 7206345 316009013 300445412 710334598 460824501 752839142 467610731 591690746 304861623 386848026 19734745 572757968 115096741 405677412 192169571 457288075 230526608 958084921 841880628 869172935 531011800 845371772 411080634 606105504 414854310 785471601 562113783 941980682 562651368 636839186 362506152 632836500 120970939 540753654 508117873 752425375 442607293 603655175 482433031 901622439 529975773 562401110 33874845 857429047 563487806 659204958 517241949 837286723 293092838 867139545 460571115 652785638 25270870 300872823 151236074 429369683 22889047 139386943 94396163 519422705 332667194 687622663 487824590 519239627 213096861 604889625 203037057 662766365 407965571 434800343 140593507 394776149 263373070 905145507 366787299 638135339 213078054 889998786 380414052 574794302 450889653 826408710 11802937 194757634 135781813 746566778 416058316 573419827 206942381 796949090 120486815 686791034 124900707 883984898 205607728 992759229 476576174 977910030 607994691 828413329 761452567 993151093 406422959 598375330 324362834 797734895 373452405 723140107 633418162 966931489 734481521 908315150 519767096 526042068 190284830 870717675 374909939 919084419 443858578 948154616 55644998 391943811 322484909 443544494 328923123 550711619 21067226 146960822 128967386 736287351 321622096 834259310 721937198 872096215 59778599 129420783 54991905 504366498 295266011 918291754 832720396 996456587 929332332 984677330 964056503 990772319 76986966 151472453 12878781 188105985 25045143 550967897 495526745 958400779 160680925 592681561 345808592 406547787 66975682 391966230 290734939 562547856 330085646 566686040 517810290 624498853 289635951 950146318 35751779 249441151 206959754 774264251 663508913 674558635 365260324 460986018 297320745 861298254 361128706 572069737 439822500 868764138 1923610 318638176 112560400 846508040 255921325 721182713 17226159 908782924 721918245 924801104 887400516 981643330 909706956 979599682 260617157 638012687 332499781 731025645 103314240 385383073 76469214 700072068 63875020 185317983 72192301 171032862 61203427 453786796 447328350 655167621 544609326 762445889 747432586 962500458 625476903 678044599 639927981 843703452 278487895 926916566 248078403 713603255 423191217 794034672 110523842 615493566 405886249 716580923 424623814 502429314 206809615 237269918 168141608 559994123 216862750 610769938 427880227 580221297 298735669 509829641 473132256 813306814 306726859 690799145 338675944 525455384 254716524 879651139 438644940 657335567 462531936 520104800 163905271 991136360 201475628 865512785 161923332 512200399 511069052 955893427 616802638 651424563 307696918 750923990 329884155 406315713 182511793 729225370 591457755 797737062 786949527 987862953 52522654 83104192 55203180 378007672 188172029 879095268 74496376 995803438 867661050 917226654 729301374 898997621 755226456 815352278 313636356 619326389 352560428 948477908 585417107 911669511 341615581 936525156 778337613 805875739 575813143 635176627 234378654 446132715 342230912 876660187 639941396 716818888 29918187 110040771 60420510 401039432 290800665 748411296 232954975 406694082 199784116 484862461 40358591 974387000 35247936 136786640 21541088 668700322 73526756 528618530 363469671 979723553 939020760 964307178 621536543 713024370 105388690 995172836 333027525 349257293 319195682 901071533 245354465 566041692 208322133 221120197 140477255 225275285 94811126 291310306 810028 322691681 158173818 228844637 66886741 194060991 46727996 933764229 865700189 927033746 652374538 881038566 632017729 792901149 156750848 524119322 215988646 566285842 248578848 735540506 683204952 858934327 468593997 862337219 855577342 976520574 399983185 694539059 231170613 459443264 334426881 716428462 572663059 993740576 656564806 850596972 797499059 886481333 667713317 721922218 146166987 562623320 87904615 923124223 777188132 847359412 724641609 775182433 106123749 250786653 127597538 231475206 2946721 769464099 234793822 397689450 191631837 728426480 379004144 923032220 906656875 955290034 536747479 569733145 38398376 612363854 398782602 539333097 34173452 919129409 827252333 902773720 578391225 599113008 62026163 725936013 76548637 214254778 205588807 854108272 714924274 945391845 48810866 134748543 43158432 307397359 231838613 386959132 171432693 685989840 417233096 823163750 49777856 120899836 115631790 896771359 767382135 983363800 905060451 985443471 648512112 705421389 433771559 691548838 596021783 766507945 212768579 242061412 208975369 349666896 47220630 986857920 556014337 766334168 516481402 972163158 45070221 939533143 301979966 640621713 71712851 110090116 80435012 805013095 417606582 767635780 669768691 902290455 665806899 925575669 337227702 671621146 665924892 884088172 474091351 966480328 807724414 986560178 389169979 433094074 33273334 436100135 257662505 752546419 442079353 899619195 265727092 658494318 203221903 377913237 194140445 224817116 119393542 497557985 482222498 727276667 303348005 405985813 94513721 119350995 53342251 709041021 566300890 620385916 112407780 936986425 900820495 961513021 43895658 322699067 227320806 252773953 45331619 987380334 193317666 400346328 41610187 93330394 40483325 677783004 138939503 427958662 367152977 418821221 186011308 481938483 415664627 623871114 421615875 675328526 148296473 323138098 83253191 647231766 627247667 638000967 257503627 708999323 434627228 859603607 452077348 908207930 437443128 882280940 706596178 784584355 152940305 787566501 199327070 301192893 259331481 878397335 338629657 524575141 56453819 454024484 172111948 626292420 127933716 993144949 349724541 565125069 286466235 559147955 325708289 842273847 516625415 687593580 192274903 341305313 210628199 242533558 48280373 576306094 305152280 876451937 727526930 894789575 388228997 689888870 471393773 493653722 97538359 338570571 13444945 176136504 12636324 138307167 63899671 573378964 88325208 272339445 125722112 595402800 314044436 716218817 195459113 387935477 64417725 135818108 110473869 741552852 106361335 190301736 86207513 426206814 11230640 509092347 37617380 387368242 115646980 791500555 334744081 528876423 38316469 821366089 523204675 912960695 128943088 593259960 528734744 668046732 434380036 490499623 27014828 806856835 69933948 237807421 207345737 894158355 800612108 990023053 463897166 478407958 184185650 736873751 649352994 985748666 532246134 828733360 29723389 600326562 51836875 676501520 551219659 758733018 721590904 891316961 571234918 667747360 638036617 645522134 555270111 861089804 792105960 976163339 624634951 885833180 162696137 338287835 302672717 407857654 10737594 147328212 102638446 213051621 175586233 311525737 160816792 225882651 45244361 166417160 57787976 181143585 75806131 623641170 564857239 582902036 444558755 851031139 71395617 752784928 399229455 563667897 275092681 947920198 101815580 436136719 166968572 914171379 275724118 464539336 425259941 997012752 504222083 894782168 271378343 765505488 293467672 340446869 273325106 646205907 505108894 986683166 720316328 738291465 102444584 199635438 95415533 420627361 214078209 557564482 477074141 564930229 145780261 749474846 614167507 982511814 8851178 845501368 451232503 531858691 406295525 613123379 98413377 480700059 265615085 528493859 360642889 846445490 512718779 828631757 799542182 836366581 745097665 965008332 797609459 839132127 461720661 564106818 312510724 835440935 494193508 968764421 508071473 923185353 644163222 814875871 43863423 427728467 106026096 597290667 278815799 834060463 757391272 764642026 4309757 447788774 33146530 791227297 711100827 913750105 825962751 945795608 914976670 969965767 346679423 926708817 164993185 403764755 328422888 776257432 360783963 949821141 893565607 951185500 224425024 672545313 200090102 674392763 122469968 230598152 64671105 385242898 347983788 735487821 556247400 911223082 600320867 775170592 351793917 769579049 123685195 188095226 126350509 726369939 429952206 554324069 229459571 712840991 566411249 762331714 265404450 445763800 39126771 579140308 308864286 699906131 249051693 461901742 74342247 978643047 217248628 654430101 499684647 743222914 152111502 875675411 462653762 852342680 579882134 726799195 411362972 709876602 680288859 766527522 450815468 818559286 789440097 935787993 450436463 834584771 389340695 630987958 302533432 863836199 615998485 628370838 33371015 532600048 410865653 807189254 312865228 974072752 583125890 912963595 269061035 911783196 859125546 960862712 56095490 253760414 112486620 557118838 525732921 593076766 209834519 318744969 316596678 725452983 566101654 939904638 289063811 679209823 355039902 611579726 155977414 928204307 638792241 639866340 139175376 781291320 178616420 982088961 415284617 929582312 900301460 982627257 374496671 419085252 89192560 213495056 68193663 344460873 216798756 427686204 157032327 800277927 763283392 775673402 32357066 226598147 152834207 299763827 272200015 344827272 156377878 226387329 28121908 70972693 23140801 405960876 43499214 327153858 51315805 776134274 291342449 574074636 62911452 502888183 195219852 237469574 152143569 225209037 177224213 629979074 116339844 193059462 50353823 673977729 442235867 719269607 654004357 721977992 355432119 361130857 223510553 791601380 75772183 553525115 108789683 624017954 473855987 949122377 866914436 946764981 495611730 789502567 105536688 442811988 324256249 984462209 932033422 995124155 547785365 568339040 259191705 385844923 258231449 737189176 164360864 919350716 548703155 994092908 505155170 590125694 197082991 970659357 45155438 489872238 383673703 830551294 346062407 619187265 129745330 365143026 172078244 736420216 292121139 843768402 598230142 794864092 147864585 691564886 125621781 765568495 738873172 924483917 78588287 955749844 40522140 698033515 114875590 388779278 106698020 325333183 49667180 621334929 239058258 491333695 402702043 813250813 269627511 707371183 340515361 771132524 384998302 526960591 102740905 881558336 575147818 880027516 612215872 919633881 403089178 799640158 749892928 869032310 620719698 872573174 375210032 564599856 112819430 885720362 56594631 318030218 60764162 347706880 125783350 953540320 781764340 792368403 772355144 786497801 759833765 924971093 712473333 877986651 89548458 440489983 382239802 410740975 103626792 889470167 527443631 649247422 158977408 844896708 760587569 931895644 535548688 672724423 650194104 971924347 688816281 748391495 384770592 472409924 429071617 698580917 319738709 953418735 731561845 861045910 366003800 670467945 473496461 967553687 400619985 739840214 232876494 461139114 367987861 925211330 59974033 955221692 574088321 879358756 600389797 701776238 441676468 808942421 355931017 874549490 143317622 977548198 256815510 679889937 155957969 677009677 418941797 670351616 342520751 451968907 125657555 667699977 286020419 802284911 532417773 649788862 547178336 906806032 392423083 537750790 241638549 690270865 229781233 462482512 107330675 481855876 468157518 957815322 508548487 992787933 194723312 759740619 408709789 639338697 399109595 470854179 195942264 539951711 94697963 295269141 16345672 915882917 676930239 879495855 289300206 544355879 168408464 917547980 464837434 784929093 297179046 644817302 343593197 517011357 379648255 807672523 525194418 744274878 481741313 572513492 541875445 695779422 150773502 732146082 498275353 964888711 8650152 650920922 80826380 667011509 290577046 932113532 239402517 958048760 46968880 531277140 160787776 211929084 45480900 933579414 259133514 277856460 254939328 390137761 43247936 260104314 85585397 683530211 122467029 399797276 9391077 466599446 345334303 500579632 333370406 340040057 167968629 485188927 116502080 339874679 82869449 522826364 306641309 759972380 101569102 974368024 89315689 257837561 225931793 482903372 217728942 886352919 251245065 998686338 805850122 921917900 840214472 921913597 185055030 254234610 51454297 861122932 171026293 999433076 252657165 533376463 464165096 841817759 531786609 535908100 461717842 601277982 321484828 345932613 162065530 713664824 238966143 909905493 659834245 915816168 432437643 715615040 320686783 530066822 63346421 920421723 684328443 902675517 821489612 847531901 611692705 797720762 22292352 813958205 29443437 127603220 30153758 766923028 96666376 133784480 43640085 247358534 177215447 595867681 22569655 610165020 305873061 341726060 29522982 495441872 232640384 371060298 342423215 965399881 701415918 968208595 299162407 861205696 587326149 831039441 490764201 913847252 75460076 257490622 1793217 117726276 16761550 381075300 261028872 591382356 165267867 965627381 230598579 768850496 535957811 879236071 459379240 661866554 405301482 900454237 682683873 834544606 118870943 514224747 384525223 605251872 75178591 350714183 92231089 646775845 258116668 863577583 498228831 633787249 495254933 787933790 477358588 714662547 46424863 682023054 500106411 861470673 574912403 977474069 556366484 634792115 589852499 972885792 713797607 863899348 820525753 858479077 13406433 813849332 218283161 831972749 700124030 916445392 96706756 612242117 490214955 889169880 453597936 989399805 590806330 978790102 785268794 996570468 409348156 584444727 379886749 716394848 337752474 661801674 213306771 801054651 245594955 468777786 176450016 633644478 480829196 567082173 30752320 66295163 22975503 445281073 421492398 481453323 29544079 54871646 16061790 666278142 440663708 618915116 285353093 915200097 569548023 705296931 281222526 902580976 551387761 985445038 364968734 969073804 518733088 826300698 119285704 718316332 77942343 138715025 33559521 712167831 692809934 969022920 639828740 756610007 631944411 842165647 572152002 684269592 188481210 455973281 434302020 492598768 351240312 913951746 398929291 691731118 366795114 993371035 670570958 729247059 204451785 447056477 189787087 737530217 190136939 202214987 199143437 229607547 102534184 309060624 27413161 79888626 45519802 934822213 802587679 841902434 541372387 676900711 135298893 994664245 713604913 775868860 573506050 651054587 48205614 113984735 23343408 384420089 168213389 432060721 163427624 292526225 112913104 457285662 12773584 235193617 42103468 509401420 86808160 350420092 11665400 359783808 205596023 528205218 52506883 102040674 6552106 570773710 143167125 778422094 703355857 798654235 374586437 614637200 569786572 771451214 561645768 630924778 191384315 737395697 121034017 760214124 694683297 887624736 801537903 916985144 224758791 383574371 301324530 807474464 757804953 848320588 366288126 843672958 441103793 582234648 353584801 609253202 303881175 405359285 53926158 479275880 136170052 656734911 379126201 780720543 452297579 611596025 540120280 793238333 250416196 914963055 821672279 895142270 648277590 695483972 259526347 532404564 240734012 528852764 494761752 636108960 573949890 607047804 4226180 860167704 384245064 621516968 512066151 589163577 67025717 438088967 211931852 348418066 133115460 356640651 135465502 774085476 300588466 541127821 138434400 533623792 127968609 652172545 453049463 892959444 519469645 891581913 542934768 598473088 262513691 403564014 299935395 536350889 382238160 477590387 359496366 930379046 79803663 842137641 686937221 916382030 391319645 799394728 670520491 990603047 389841683 624714815 304933034 424410876 344368433 505301503 258989516 538052266 426705414 827407842 414448565 470399297 239574354 852276473 801649152 805054952 604532376 669658480 598837234 649603052 151999655 329508644 138217523 984297058 112357269 603112421 522614350 525848340 473336393 816881679 808878363 964914130 82955352 278409510 38068617 865842789 785726240 817940305 203475772 434715511 121273942 189050139 58126871 277345975 172202905 272651586 78753966 551913071 458512132 525207344 292322828 656374492 153238281 656409001 112667496 911806601 41704110 744759330 328128741 853957458 507778348 788054829 338737638 818843732 367385908 672818178 270833275 566870579 3917647 872456838 763631857 970904031 361509374 466062827 74467703 127184476 69132051 979951046 760342818 857050904 582912855 775790985 430838590 447218872 187727774 389115739 298734900 404809094 97703298 939421628 886066168 915718683 98327800 757290298 577564793 592532735 562216984 998880228 535987364 625199540 563642983 876989023 121192895 395449549 28290806 643529703 319579428 351562803 608422 969106049 58545543 320454834 154569499 334260745 233928517 328622787 58336655 166274392 124848765 787518678 674002651 867599182 50176274 310418253 78268740 167761365 99950986 392348087 80867448 673466519 107468566 390556152 2422509 702702192 79343279 293499615 166829373 697193313 224938872 616783084 541417093 603972498 389040887 705775487 237067919 360851382 85517577 236183519 24045523 314796835 159259779 465881070 374519085 975468746 287653895 786331138 450999060 602730165 342170064 519225029 307234973 512718664 410297496 497448326 394061406 601709222 444398565 663610200 47340252 741613399 418812728 902290720 440911894 780785148 651421551 873326087 30041167 883656883 271400221 287650503 121433776 842153971 159112158 823704402 61448839 240067685 154846455 973689612 430275379 850339491 795987934 900179987 776992258 982765875 973881778 976198720 136646626 640792500 489621027 545107596 37409439 437345733 111669132 284059808 264870521 707160453 581821399 730340170 172084881 406160245 3645315 704447610 660026201 838610094 93415947 776603613 32248277 632517386 484058577 840118392 651139550 985745791 762387076 894306095 734523773 742222240 385704140 593000285 533811926 942992646 732273199 893532075 160698654 735821881 415545687 935865398 402663554 774608754 594790726 971659134 264178393 634288372 251583599 987881137 808039762 996993174 247241109 927355016 566760194 827867077 61256029 951137260 781732912 784283454 552104265 944723590 636477511 654784865 101592532 850194463 487190425 740880798 402873760 479107107 122349645 340888163 339968240 928538638 717278009 750325885 193329401 842786451 568373079 941695151 244483120 367334244 210723970 320209147 199595907 647279267 238782347 690766620 202295284 372372625 199955516 548896753 150391727 328611385 105350241 784859422 85218472 533391020 382529226 838434559 406069086 792737021 567263407 597843907 417955485 998983463 952658382 958735737 754810346 940193215 493659891 872770560 701960860 870017494 173412663 937940517 496654890 980054417 236979901 821049439 244148554 693275671 60930815 918884186 310241708 345536161 8321815 452452229 104699261 314270128 170726212 632320801 72238842 521351389 84372241 735084390 729428512 969058703 303649342 763511543 266518347 607245337 22928543 282705236 206853038 711075196 271798992 758819669 721258769 971528394 837251012 854522730 606976073 882441100 27970161 473076874 104168778 606887866 308839156 531242970 68688640 839632295 167994344 586384371 527424562 622272434 290826052 688451543 233867553 937445144 50472867 560234605 277403865 334226098 51347208 567473615 294970620 979387454 519229716 981180058 745805387 768880422 637810119 921592011 362878108 901782304 578470907 904948799 148782477 962412281 531046156 747283731 10894570 273232410 161194930 243820979 40184969 860249490 596884019 722678667 520690400 976723707 819804434 903283942 319023325 709490174 701173935 765627979 204942614 882045201 831691583 967824061 896610220 960469996 293153738 758461917 429896767 468250558 353119269 570436216 190127701 844692080 760947907 875168663 96400994 357013826 36296517 365049434 40883711 212264157 99964301 950701358 8165658 817894864 212109941 584183745 425644891 690912672 47753671 979473724 893417039 944040992 689567984 998104495 854244862 954778721 840294419 873121703 625191454 951267303 432867468 479241817 294727312 901077212 535202491 914828882 401711091 985766009 957369226 995116153 287925618 921551795 660130434 972680269 633043026 918886038 728387086 851581270 188620060 930573963 643736474 780592765 615441477 805567083 490448859 776430084 466949321 721843519 594172682 935681137 20454606 979500076 518576692 603288939 544508510 940849597 501600592 567969643 256044223 964675596 938028427 994454366 469420880 919037462 147745830 973042190 251188562 402043531 368934467 529502734 137815283 301066387 151877478 440585057 153204788 386869532 26881454 868879346 414237826 916658691 495854956 687855516 438547379 609129384 557871386 710757784 111992363 650918902 254597349 889451052 130747532 550509833 256683683 321903429 209169365 489156178 259493358 440634186 75711385 261836233 200533706 388771356 7089973 203719262 110351653 575292932 11387473 104190088 79674846 570669796 42169610 94529570 28413376 822998564 357575160 654976950 67652425 464267309 107619346 110374746 66656076 445460977 18280663 442590582 86267436 921667649 809899809 944715138 491354109 811560087 16412915 903097630 594960335 972863440 852872920 880945732 395209721 691936883 456607538 904698498 656077919 854868820 111390483 642975645 556377792 579684530 119277281 377449215 181507816 399195880 133981421 918926460 908513909 981790788 118464384 157674734 141906286 287340934 99741457 730694884 447685010 790379226 605003482 885824275 29691226 933976389 281421995 771190025 162599201 896199288 865564297 966686165 302832723 669090304 638498293 909413001 228175991 420606894 380877197 627119338 36042216 512674962 85727735 589969253 213180333 847260608 405608732 949465783 101155558 644252539 195437382 332535739 9464944 886379017 559839548 948399319 938964317 983360030 211271033 571061733 306150670 371517532 278462845 455994936 361790124 802194233 541975173 576417389 552256697 683289751 646591076 746410953 40179404 722189644 527650170 735019808 617899111 771885817 593728549 982360628 356532505 694247082 449486332 771469535 295269950 728284451 76279577 617526611 583280170 852526749 74789437 141679016 45119651 979476139 416664299 889750030 35731027 722707596 458546971 968128847 517234307 915695416 828271055 917685560 387741855 597147952 97317037 696503772 257637048 375536007 313276951 701918575 690625812 947075643 196654430 399693301 62482807 611271166 75092789 393355438 70495448 779109167 740962797 773388675 415296741 476752488 110635792 843485942 220240967 465388705 297840630 525504003 51551487 579965396 150322157 225323079 10809152 415568576 250133440 869218633 714460673 961192113 257990976 383090646 182716340 528979320 40640837 929121230 547571814 826020152 36766675 440957801 401660359 822342058 224721271 976433285 239432437 245094444 33905935 191047754 28430768 126040899 43214057 958971199 658649009 900547938 760600392 949914454 599847489 783062564 655984227 887170047 231471597 676804402 291009426 844442815 374760702 502522089 64326408 686740478 573687482 800880337 89944267 701336824 598244772 882344122 570108949 790306738 630145983 943348285 644516849 700656667 533223017 722089517 128570858 159110870 36778740 577175995 560766946 783077041 599333700 671223875 351500873 853738384 665415848 841649873 661695441 809159304 122946376 859788071 507358131 780782672 528222740 913828224 473654432 544179660 183621245 567890860 404113923 876714295 98022450 804450023 666977110 947906021 630765538 877495609 167989324 798352354 450811510 599890616 168055193 418141269 331723186 372717626 139383641 872492129 569766709 776024038 558953702 640601512 202604929 445511119 341090267 456266585 118560582 432457908 426976030 605896295 438511748 592382641 399400382 510490042 267622133 539370983 499507136 671781278 331840129 676679796 288053210 581510223 157919654 694598490 317626522 877183400 743817008 853896184 779767218 785228613 457061266 508058108 377153306 449382851 425842523 827566261 406764047 942904653 698614095 740349445 614119182 736060393 9635665 926556457 603312428 944020173 425071364 488095141 222126487 677394942 321275249 747363802 21572545 416000535 394443964 786605940 492211254 695925615 669353890 891181028 274810311 375977202 118449523 620056087 270738538 676806517 351208736 466936913 100068400 458036634 63723427 479574801 123891504 679132879 535568380 702791491 236001450 934422253 468136828 929840453 689540611 719654535 152497737 963968238 740304928 910334798 421319352 928968082 510852988 525652160 67884889 170160916 74562352 382745331 210198519 973060109 362011372 727876381 216075269 820281830 689362423 769681519 726819959 757842538 116647770 884477779 320243857 964250206 659845277 776095416 307756906 749101357 387666567 977853092 47045052 712593371 486390259 896828071 861664126 947162754 332634605 777775329 548418462 989213124 883236558 903730904 426103502 629462281 219877842 331454850 135534715 664493654 49072386 956656230 879836554 929406498 341660826 571892624 270521690 728182158 470281295 543721305 413989305 659357571 367441554 613599748 345879374 372665693 207986203 901061239 466152025 560281492 416995044 745602675 174032040 569508198 383307262 512490637 65786100 375142508 21238364 678895497 464651256 740316766 196736567 771646889 754530354 755433620 8895679 285102359 44318227 273774779 147123719 980677354 937165588 943555364 246571032 396585870 56930918 651946119 316602915 350259577 240648235 493907029 232094762 595523531 65073950 389858382 160098522 349681846 88269029 569260955 514930346 627627259 574263802 590693786 185793324 738335827 81200175 257264690 232445556 852463531 15647038 137234689 2135384 14393823 4039106 33730704 28064663 952229889 533196919 921933798 870110779 959897046 563481854 623963884 583974372 839686160 821917494 977245856 293730047 563302397 318999225 419464813 269801803 700834511 662604603 928494063 900090896 921679525 470179903 570507343 282079709 980964797 788042176 889577856 468502683 894031860 362670197 837485663 410901319 741717020 237644421 631900103 602546515 817418974 778890458 999220670 478280019 965489378 476199262 832414957 68673989 223636657 16275218 821440813 163750844 176382122 41145304 511755419 285116985 465645711 84739738 924521909 59938630 225544460 214820920 698781672 103188602 717658750 405783874 838097984 446508861 802046059 709089383 732822022 492566450 565971839 96376075 117829141 67484679 836928918 748178822 880004474 859215697 895807716 356456283 479691119 416178385 593693782 86764039 879711297 152441711 457537145 98055952 963304123 592637077 663746419 324633125 997107312 701962938 756703877 72707677 669080358 453667518 775599797 305896044 429386001 422819807 887226166 781672526 972604946 75552425 462624867 101932255 355898560 250249337 584870692 302267167 477138278 162638721 824848901 450100616 694437266 565746275 926730028 371002743 372128220 91980821 393178365 208005541 239456741 123885356 873805505 19279835 48239841 36684979 621097230 305822024 640005792 80271891 128301516 76373095 498301051 294806617 556615879 531571169 938297642 794772173 881843312 13288427 337787730 249223388 509106078 123267854 934129719 767430815 867166865 26975340 601854892 282645986 633245548 29741816 631989634 189564701 982557285 715715005 727676124 428652989 748162988 77229610 423923033 67170086 735938212 635685816 941728743 319839585 622853507 265479070 604855016 440483707 715836183 286460504 932916601 685884959 960249749 620360019 695550304 569185893 751751821 252787533 832085689 203730270 457978034 150881343 333336570 32162534 62433930 44489038 111837920 1867553 503615610 434165646 785778336 519776167 859762087 490885743 722873671 73825325 603232514 338533943 873154112 290924467 483700795 345367960 493956122 44274486 132898221 31440797 448438616 422360209 439628952 96297266 720554674 637807035 976486486 621197450 680431942 56350362 363480765 96066961 652192378 20287023 87667503 30296868 223328911 87098429 817488913 575251820 997916339 632489522 696409830 297397011 974867656 325992941 686626521 112795289 782872432 231148236 369394597 152473077 775355328 3773860 96518549 87061999 907836710 707868905 932054860 793078684 918680592 296391838 657301443 241550802 656445388 126808865 344359963 95754579 950972226 315684249 425439186 58192971 194257292 12418861 450520862 143767560 164988527 91987095 186952189 52891552 764767501 586399698 676988398 573291814 972123524 536733137 649747609 91228786 294858528 165550298 568653237 555102940 690135523 63655406 255911744 238781527 687569048 257526674 628773922 73370921 804083390 285934137 342519629 127438608 725006514 492322312 653149473 210789612 965847446 537518694 571285613 49135152 560522067 498672574 729917166 649075565 813599926 299117557 311141644 274305069 868561353 300865558 789233154 159964948 182191878 47201134 814224856 617764752 781700244 339180031 679835412 561536925 672108202 324170202 410260345 36850786 391839136 2864862 716448642 383350882 533587290 364008366 418809501 332563061 788977740 58852618 143673042 30730750 391813779 331190568 694454465 306634804 530175521 403681624 888271151 758889125 957132891 663955915 725459805 661478059 919397572 188002483 392041476 37414061 732125757 555668096 591680622 133409876 701477309 531487261 940340904 123973716 571138105 412492624 444910573 244697332 686838313 234945648 660493130 75444664 703314399 71342008 667905697 241691303 687145690 499668650 986388341 252922589 948082518 777762079 964489735 425638901 779912175 228982899 623428334 526164960 769426033 573741535 722248071 457076795 925382902 61718162 243918769 143634126 991991185 119614978 270745114 135668997 230395740 106210978 473070483 282305838 593152129 106581639 437911490 168255256 770950198 187675694 586389710 75549737 948850934 70286322 887053432 768404731 938492697 751870806 994782014 419160149 433184133 248781962 991150547 617943410 626436341 133651704 713253677 49169898 673978291 230835108 490676225 45404823 938133783 141523728 289525379 21829895 231253859 10155904 599677460 130253414 882231981 218381816 679184236 462831121 972502725 214705712 718877810 235507544 703855589 385613069 430574943 230460355 768307066 110340831 616678952 362029247 505348377 252161823 712452963 295149701 942247522 587144219 840971349 62678737 503287605 170641759 628200322 432883696 907588995 575280001 774050842 100972995 616898472 533332548 988660133 377019645 423516134 16083875 223720331 2386048 531962347 48820738 281035203 1988562 989616829 974045893 979681964 82846992 453587467 302719178 848377571 235269505 682166926 615009088 847982057 771916238 917579850 61258424 930312645 435156734 802317641 583056171 971894994 902018406 913877747 467338471 649496670 525172288 758960626 82732869 747457950 250941510 586191601 275418297 981096812 892301419 986952568 482759250 924742655 489108184 506319162 427340013 818430075 409912960 641158758 463970930 795062009 717659604 828524489 299345178 780639719 307770228 821006401 808748923 891596779 3401063 651105691 487185623 798068835 651048639 798923901 529637731 754534974 472385142 840181247 635010254 997319666 193804413 824282361 695248206 867570169 451062209 842735279 709219342 894814389 449989368 768010684 22659380 291933148 67635104 912011134 591806180 997460290 957301122 965592128 157728448 571029799 283017910 661951631 268178623 690749997 245280575 436480271 238503219 590508533 576424425 601139248 148562727 150786902 19307789 400796481 215024254 863602831 536144350 698285791 512247312 633542062 490077026 939956429 772202513 974958028 972413475 977919893 861094977 900888496 272626441 416847918 163837681 743809493 661895306 972437118 733355064 903106840 733241210 960222771 480056893 915537733 490359216 502051601 498350295 956140909 51969019 710171278 280340213 981848133 849112296 891760834 681491957 959957149 638834740 946120691 315836394 687794225 578454847 787963240 46739168 509726731 115577799 345312747 75769924 432967193 34899513 299222734 20377549 755217758 12055100 597856284 301116736 659360484 299830221 788388885 574220763 928288933 561214902 824796463 326067305 827205838 485028864 741844688 55297492 293804297 153971476 899186238 254748388 412893591 30015650 583153390 20059920 199713682 156047524 597472650 302707298 880045814 799823367 913166925 259514623 709298906 128982400 424648568 342361441 622919916 215933660 638808310 106151460 217979679 214402770 529666120 449036387 724510160 268195921 496815611 244972658 313063658 112409907 364741800 4574636 648478228 163737422 388188479 355761791 698527743 662767999 948963935 662878806 951934027 688289273 925600937 249521113 996878082 827237842 944846735 686652915 914443586 414429908 589849820 384034036 633789236 394549068 862663070 689333767 937417648 290406125 572480363 468022794 800929983 62979018 147859686 3881480 554221204 399137758 531849940 123402547 388169394 168786024 848712823 766733180 970814992 535940976 659402959 502531121 797381853 750417037 788512223 441377153 690416084 35092962 120191423 98403147 837825794 63612428 314558154 282224510 735223517 27791839 944764661 5494504 443232146 396736018 890777590 708960468 860406142 714118893 813137430 358161816 758282905 596851605 636884117 499599342 810150397 694608547 979792083 617897667 668097428 165932800 291757091 99085128 119185547 85775803 211991353 191896434 209076189 170797532 173115387 136010468 160708866 25244638 726072477 89439778 954029722 830562184 949522429 368928616 768381722 125267125 702656357 423559885 509284252 382768437 957794371 341731111 725764933 95601638 433355874 320192409 405950572 394265606 929035893 455839010 715401335 213743207 795253584 659601389 888558918 41163372 968995521 504181667 855752754 138420004 942970201 912649913 960266603 951094352 958765468 818468577 980903286 632619802 996764183 202333128 963116585 769366936 895275602 103347172 858585122 183940767 846787405 385604527 459954488 289619863 673887049 235375342 817772383 455379442 967157504 316124541 547453715 186600789 371809588 58596344 98118028 72384274 182220736 124816980 124992237 81038471 439219423 420863456 532571063 490310626 603170340 422286504 743179739 559382932 775777535 207698029 911934496 157915561 439666097 367536405 932965328 13377873 575781571 159189080 609893002 530853850 614687515 385144135 582279625 150832532 599131840 355155202 395538554 327982466 408056948 111266462 618828120 254245135 929261411 85323587 185620625 111410111 275737580 169849158 213645125 104499787 143616235 12094090 154911367 59583814 128243208 87079280 122744918 96867238 658873159 109663784 395592691 274751010 584768027 108523144 895252949 109427012 904636748 560633624 689069597 570399204 892450311 874629527 874883212 557667491 699820635 295218173 868966098 865251879 877002856 747012536 797174482 503178659 542318978 395761087 939540341 384225370 940816822 567971120 825932407 476983159 960409998 728118827 844615731 244986893 689709283 589385937 955439216 648060174 995356635 342970388 610891589 436535300 945555506 373675615 637205301 266560566 685990324 76133998 248373133 197558511 486541899 342966980 827616508 95016844 482543279 311222828 529159887 54250726 414558202 310000948 863158189 649629532 669274445 340132199 422293112 328079148 733609780 415914564 676059515 541485861 575907344 48508519 808189895 59477253 682065473 545544508 778291946 507150174 702667000 157576298 423593259 127128104 625709771 276136635 902850130 801463645 863704898 816179926 888285027 501466598 546816005 527171447 589503692 131923609 388710428 68465180 88158576 6700598 447350390 107720940 921527404 884811765 963749923 534397970 982320600 175300842 443216432 128448608 223167295 211336750 687498968 439352334 538213943 155424572 621577719 41643852 780547536 59598792 675812202 11392952 50698398 14023573 74010126 48809679 535854202 64966199 789500161 328840700 552234821 200587234 459685637 201727482 977348959 22193882 797916071 332629679 812655175 575447 116053100 58234211 567536978 392785790 566805768 457091909 903192549 202242699 675356175 63567376 675022354 169510022 754205419 599698721 778875795 709782752 712091950 641146585 684811374 161127876 760323787 576310364 902136555 632912832 675928330 392437521 804333266 173868563 460987135 406658376 986489691 713419336 761474214 540033828 543325463 282086080 554758897 521876077 797283398 317781000 717631322 716864245 927345535 284341580 780298222 454604860 641225059 18345462 239362499 77412094 586669829 103731291 593751942 12719970 511836274 480062141 932199187 76041912 542362484 254971051 410576122 248700969 983038893 631335298 930474400 801447324 827579383 748251674 972602011 80475973 415094471 305519537 587968295 31929102 400534093 369055439 436977094 226014927 430869188 262938412 778258929 39435291 252917536 75878191 585090325 70882802 506174297 175172032 387834336 71504445 869038294 527709445 968115874 863165284 899051491 540981267 813461520 557133537 779870987 212489813 553746097 432958937 855087776 672709296 846410731 139875046 479285334 468943141 586810032 319061386 394301949 109749295 259659272 210346743 481466050 400279423 806949213 563848582 833238379 778358548 906245720 369591990 394520671 125697632 837128559 61854371 199249783 146367042 470034288 17047885 827321442 212718241 549989489 60447842 622441031 395905966 449453301 93039779 979240714 487188722 978369378 727521976 816336576 197741796 892009426 221260611 472238952 360954717 803700115 498668636 502008352 10458482 262916530 257454530 466476072 99619381 667972837 113528092 450737253 357067335 388055396 75943638 128865649 35630743 311705614 298688673 858067812 469506209 985988671 739837776 952682490 712424622 770406218 329711559 361429761 274084406 646890239 302894047 583728145 545046432 918496531 442976586 490912225 15830189 398237636 66077481 703351271 276122551 562095679 474284660 522476984 450697098 631759698 603564680 965940163 136416016 193238458 111452887 558816791 332435281 556718237 396409585 562308024 276439866 373567224 245775689 700115155 42868487 907707924 675989723 875866752 522829908 561854531 236889154 775234721 72924646 393173264 180143939 545488594 238879368 645356760 395563383 759016853 551302199 798842885 481394469 536553594 36773809 283648472 200294381 956515503 174407772 671646839 233842821 664039771 332194720 649804583 609471785 729520235 673451138 843874716 751804880 933266748 290745974 357208696 10513995 149680446 41623674 611390080 306359587 591672549 72675789 964720895 177711912 774192777 658358546 725182985 574349808 806056919 234593930 769537031 84917761 763412595 33575746 393493304 39731335 784106244 599020859 725154009 397822346 460643922 36771120 728557663 138366128 140862360 42049076 97602158 66090605 589179758 250250702 636156441 145855847 469948731 459737799 945289784 109500967 214505650 60979462 814581900 628687463 815619405 476516177 576008783 131036127 797352414 201414536 375941607 106050502 968980582 958489366 993085582 627775276 978910450 376774613 526391131 503171586 918792291 888211258 912825938 832732074 950450485 741790760 941506539 141619486 253399510 71202231 340773853 242384513 642367353 183703538 633768703 321906649 333171524 84823490 824805489 449998287 501306959 342549724 856169741 747783588 940741298 307158319 701631860 492523462 651008449 631673816 865548149 403241256 552928939 473445495 898297507 873169206 906981361 91597359 820938636 714220891 846181319 711898075 803169400 272659907 397821477 390126667 486670639 343926250 687170152 244832266 659073684 210190632 453735910 233162028 860779894 481309530 640387176 290697168 438770221 389177808 928666366 655269036 824097425 428306337 461818667 390717139 478838485 400165731 893613231 489487751 493307540 58767732 521170583 210117498 437389481 40358614 704290891 685165107 802701715 74035914 993523019 789383314 858514028 513315142 571242938 507179147 757296291 624733763 659055850 646851806 978236900 4777441 459619932 69578423 953345963 710147334 934038282 343770490 475779518 160214090 358070153 20124189 844499515 703384903 738346292 281109465 809996066 501180958 955930563 115569230 254049244 232472357 785317627 620695146 695468405 236939959 344402787 68658880 587061635 190191180 628061725 106541947 227661983 104372355 703123019 63486130 768741858 270182258 748559371 575107046 637223480 576625503 738810631 658984876 754065424 1456064 633571538 62457292 625514635 372228946 414680795 339631610 965342066 409470249 532110795 25143090 166334662 8026854 19712829 17405019 451977550 262619383 525189143 436198408 642989182 515700618 767965061 344798744 491717826 490166332 833074788 379944539 633151495 256516846 681482111 546908534 936873168 120493667 613854481 308555419 809197705 492595599 945167947 687005320 737079261 58362267 288695909 238774982 361659447 288889049 917136347 701142984 808015845 105205381 794135746 268561509 304502920 78140347 455848670 334778535 590247753 10995164 651159257 426954566 953220622 782657645 954140336 252672061 350157153 209251825 385098019 24123433 708657775 595682253 866359912 488725365 972232606 86293787 940775870 341356135 636149386 55199079 688256891 85333484 590265518 288900428 553891559 99240235 671666465 436668320 980102765 323097705 981114499 321532593 435625064 258762596 589801694 376326564 475433752 227720747 297619893 290065357 366253171 221069461 760969317 184807817 988398644 604599947 906755009 880492167 963487920 951766486 958061298 349303517 741269768 315553943 468287757 102486852 439349602 382790126 776220131 383587802 690998814 27023456 160501422 136965096 362969336 148383026 459534763 120625490 165571852 108470380 680901104 367118996 460105580 54925074 757899720 733227365 987182368 427087611 875903176 862641597 993645050 107719113 659442020 252127573 793257867 779511480 919575108 183187835 982133386 49130354 660529905 559762111 827960477 386893590 679696767 184435346 611578096 325354161 344017864 19907650 451228502 67292051 585568833 444281341 557440453 245127501 901775000 381795880 515419159 316459748 853474931 643382593 681064995 309992237 682234688 577894193 873794709 386723048 832321504 407266737 476688741 380018444 830665922 130697926 567003452 79993416 718512378 282338751 686558405 151765206 999026014 169829640 402325824 80735132 877539227 761565528 939167158 166432524 991962379 831797738 854965888 844881103 984055677 145368764 453909650 420254052 524165767 348202812 922279086 731862781 740931071 134387253 904898960 824465722 937663935 716734900 981034093 357174277 415605258 262373733 359583937 123972883 469026150 8484304 137136455 42153312 320590804 118910724 305021804 282292515 325056869 178003577 824579439 821815645 939058722 352734848 979766906 312369870 968191484 583796404 839892022 517743992 519717260 197026231 311107705 254360817 740678040 688816671 817807606 810383225 933000596 531670807 583806524 539224657 670803175 507625848 542849013 74004624 868103799 20376100 411074252 135760307 534249160 134887854 692978877 45933586 237148160 201121053 695637824 238459797 719438673 611732140 750141610 148381211 254132116 81711569 82975488 70087534 666459082 292403093 636928217 535883576 599792339 38299259 227466315 99273997 834698685 766205775 974313388 955717261 992801388 713646410 719732529 351488415 826024318 148917868 205922258 75785182 743312921 189044595 342361707 202465112 285690333 138443971 459276479 266109476 859822638 262580437 670397988 698470 474093840 285378730 622103402 214483105 402645347 153083103 783670391 358060283 804766807 204546343 818505837 465919469 947666319 499852797 987647857 112531023 273999730 122554472 187289206 75534322 267014211 103318417 441431590 256687459 436969394 327479226 858945250 853724424 963249795 31866691 81527568 5670129 136387722 127387964 531988937 302985150 379192102 288758202 528965208 90682523 261502830 48633658 917468766 1564552 582479398 116088141 293585933 102427109 630124101 451611740 603618660 154332600 177685534 167749509 654630065 550046310 867411540 802985088 892929946 857194063 907000495 596139188 682842497 78633475 351417233 334540280 799687945 642769238 775712382 588129973 773369083 656769749 808224613 416235819 709366323 500033214 589156379 491661653 972686089 633117239 933538575 232855452 312396421 52966508 325282348 293013076 399581041 146072488 675553001 587024867 646170854 13700462 181520521 128736462 862435018 103377310 414671398 175282448 538823402 443894862 768626604 229813897 679187931 28836064 824645384 288909747 350007041 230858752 795335078 362928516 676520564 185764567 754706998 521704209 754097954 158625115 319228312 232106542 769096982 73080848 225783772 95689809 409299248 175510471 481548561 296177491 673967213 530724317 853011390 58075972 887430966 106468945 275457348 221758414 867932227 33103071 772215015 246983315 773016762 360745553 868491264 645118693 647785636 322671946 614275822 87766483 311079345 155705383 658245999 645282929 730384198 337809631 466138921 439729259 471888561 247257184 754888444 84650633 498984332 445830299 886607114 224175558 498406996 443627654 729190664 282390179 513589348 497526891 993485198 568130134 759486435 391531366 404474735 402086255 648588047 151505177 699123695 665065001 741823901 480928806 641188363 439512935 816080207 727104312 750411069 392246522 399464119 119916166 971765797 444205059 640956432 539485187 800229002 767717827 778447770 221180219 349758952 345398300 896554550 164507032 854656680 221805347 627956299 114863255 191027999 173900156 760881593 58468737 865122084 474426829 893376718 799943619 826937156 823619622 933129092 917266158 971038683 895953193 992928164 890242630 947365879 628716737 647227650 479355478 619903775 462569101 930237188 744376805 893470146 841850112 930116748 836579322 995634501 329180493 543293600 410149695 788475969 542733105 909035910 193474009 908138198 714724522 921427591 213329127 810662740 427606275 459601773 452245158 648210122 485453915 695085691 274297626 884580091 468421296 733435326 726353310 802563858 399269243 874282515 819068607 857806313 212756138 781539545 223519488 521900987 424251723 689489225 561818330 787129454 83962412 548644954 28853501 676888457 54530293 647611065 539312140 566199093 224989680 623026752 562542522 615454596 384446661 852350182 361772847 804308809 562587158 737413304 674690410 741707681 660954932 895738516 222069614 974937477 53255706 126555355 87338473 907143510 721134687 828310775 232967424 548478619 299919964 468325852 91105756 127701616 36466055 147920721 54451451 698862595 382128249 777249420 353171515 404157506 402343929 607864419 311988441 403097991 169533480 181032159 115491073 853597138 51033904 686989963 499024487 611332290 364947559 637490689 297420763 472411300 450947481 815887269 388158119 433908494 426930589 978033354 971905619 987463824 71190408 101242297 54441500 357536616 127615404 682682559 190779271 968452077 252745857 827806355 40903803 143467782 89552305 129124577 108068044 421944598 315769816 772608349 592992788 926133537 53393606 706068791 384540192 498090145 107379813 390940471 115492254 696467924 335780282 674676999 271546930 807573025 795455033 874458043 335101720 380148927 111323172 327179658 238786146 729908560 197028795 310854512 124337437 974910844 266983403 628048198 530734859 953047508 479771590 841409314 231971509 534164145 208807107 834456964 563120394 873361839 162817900 898099617 650378201 686432483 216275843 698430502 244086982 604867302 101837052 853858659 18943256 804430536 727854382 855739776 182364216 481971197 361089101 838275740 673752501 681259592 199185172 444688919 59885120 110484043 98551363 611634434 190575297 334387191 82960504 669457882 238480875 282128060 15266098 909242203 33467 724116422 300376020 616371769 348719918 909612744 774662668 810700086 212895088 331942413 173983871 524807244 501307588 785090310 758044569 880217242 288665690 563808510 132726776 985064870 586614864 848244576 22857661 358920546 92498051 122058595 93415339 543522391 541455863 888324137 469809981 627597659 476942117 521787632 414431590 497188649 304399318 715656165 216225466 797159371 23027955 886627243 326747363 676371461 65960079 598850881 18156854 283829872 100296719 122315606 62478380 895081711 134627289 383268430 215010198 685724027 412419936 697578677 452633320 802976529 447202133 938550760 681137254 994585713 844896005 976033965 647150784 853877608 824653695 906711148 51555605 155765398 81674715 106936264 59682393 642620246 595370062 808799893 749614022 903791778 543466969 979457250 395515570 761170419 197963678 847463841 139010745 400206429 57692589 169713619 9996325 509704207 103172051 670072913 396043683 485520032 252189043 658549693 408821873 898730785 308081417 540982490 465269128 912025117 712480683 926747107 736392944 824106585 427699667 738935863 304061489 729945408 478407014 784916942 176653776 787867409 742116125 850699248 468390840 819793188 98249965 274505585 163103501 581718439 5758007 955878084 944587658 951080685 491646082 888388415 182201905 794056950 45007213 189694963 35644250 503167136 183660657 507197962 462656731 528435120 455838538 798600254 202518171 340914716 331511265 509543326 218313614 683377610 479898229 543446338 428761280 628165067 617238497 884729404 332945476 851104455 244000763 721253185 391491369 726282698 6394332 975297439 28833033 559650130 124206941 981947346 256687559 678183602 634093165 953773950 801362985 950439081 509290050 789797075 131447239 567238117 505029164 767271304 181142674 804732674 121467297 216562253 122388348 985355368 95774870 910640326 707914330 766618290 68411847 508126544 385990925 416045228 404783733 438130183 229938261 781050324 61032399 505236503 223248459 320900065 178575301 962936191 562846857 931253844 365077287 776556782 692236831 747624443 272581288 927526251 243445231 767881654 166084067 844729256 623130457 745207463 680383070 779619033 632505679 939807940 857882324 924019970 819204238 873945850 427011318 575309006 53587978 222671901 83790276 463822591 300742628 608679166 148779900 864383118 660650245 777892988 181460795 688678180 368327935 742865941 355745480 658700312 131427725 518918190 343974061 753336223 160859772 937160063 613195715 639625248 325733596 445279233 294176829 719577128 699203265 717997022 319500945 906027996 22605334 975920477 900836227 967897813 610419281 956447679 670603019 922038032 366359628 770874634 91969934 344729677 208729389 527452405 267730750 551739029 90913046 707091645 654502815 859989429 167384810 341302621 257969644 836887680 514362250 882639832 814397965 985815714 780065336 976920615 450755175 462904389 387594037 962955281 89844997 746821102 274892799 471005720 108002614 523790244 161205137 984560396 352857190 819021905 620282095 876874089 695510946 826177813 120011838 885627683 485577283 775149618 706829704 736596110 528044156 903450300 55459369 846023994 267039396 476777756 261449456 491346243 424458798 925679751 815911929 825377022 236706759 451449152 357806460 513578659 331714129 939090923 615028199 737528404 92000076 791140031 264462576 475239104 302603495 710067885 93600575 608205096 527456767 685875017 310263615 789642540 378771992 833217001 131608824 637920788 377054649 643640396 298681890 317295828 65837638 215358889 101403677 825653307 589565512 610522512 547499239 971761785 62173945 253308157 130019270 808789167 47762289 680796027 415258843 651806641 644475996 657845632 548376417 772310504 438847106 518969103 444113159 817941559 60195731 782846697 306465076 957156093 611962237 874221749 138436254 722833293 299511013 663324526 11423171 360248565 29712167 972352414 756626340 885231754 274622442 833838942 432560804 778424173 623013767 714694925 73162823 646937417 571017912 907263365 326815375 965302968 255010356 873481841 798119792 850853810 438669856 722804407 342546238 470408970 377579710 846771294 758345641 997471093 42856395 805989858 636793030 826895053 290542351 963648245 312419132 894509788 424977409 782292028 250376913 836533382 26489775 264100874 54531741 621931371 23090115 52816119 37630725 558898324 474518585 804938958 536035594 708136343 201740877 248375252 220001228 671271343 472689516 625129025 95936960 148464281 20829292 206334424 109246447 334926737 135145623 647547497 22054483 638589738 55610336 635055019 617624920 739550264 708163503 973491034 67281556 212172539 3305552 90206469 42881706 580721486 132985060 873042907 92805477 407141226 288719550 885608217 679114069 879418712 716160476 787919621 507381488 786272866 384258348 926041018 918886111 945494697 134952892 482433573 97905434 994603698 273487756 936192972 803600669 975353109 211710773 454248803 167707433 527112385 329313601 749078711 444112395 725977655 301855391 442879995 404456103 638602309 228482463 694518486 554741564 700927897 228854354 963069053 17966053 127164516 103783227 452469109 401974886 624161271 427541463 461215434 76824510 98869646 96309070 700257740 524388226 708018267 405550845 884449464 490156003 630002286 290860553 448464162 190611018 827206004 564069899 964133736 586862037 772536132 242001612 991883175 950616543 959956118 936045438 988678039 502252596 510561565 313923608 933258110 881885323 954844437 297352461 760206635 301457083 633815996 116057084 563890077 38980405 834157208 339246219 959989096 95382811 425909758 363872299 920943343 473647623 515521130 61909771 81713911 322268 133591021 111130741 441409008 356810832 817550418 175329032 449881317 262630132 694715315 640698714 843175191 424338798 982685452 827606661 997408365 25691235 374730703 351957085 595958728 106969265 729513698 279150236 430359776 155407227 454830167 300097332 866490883 831439957 948170466 384910804 541973987 360781505 375109902 162446035 764442441 518033947 737848280 113768698 232955245 191609542 885364670 81095947 626915972 136791722 865690493 268474381 565184787 29131740 927704590 881425324 930918158 804691312 894518933 738088876 981165748 797222527 940489318 516621309 633798993 512906191 824412736 218818073 984299001 696831966 896157905 323525715 373030131 75074327 153737836 92586352 636371635 634497927 846396640 412363180 597614378 500320429 782941166 705198033 965540924 86631084 742413462 368151919 471905526 289196218 824558776 340059321 899654207 3752878 867578057 504683289 630618886 455072144 975964541 232960671 663499576 544330288 675804738 659528036 674650208 127563445 711192139 246753845 845756309 103718654 774019589 771031298 872216858 599994097 760336144 149490515 390588336 112011631 156635768 155826600 883550201 583402082 980309000 446869550 767639488 290021361 723326388 214572819 567160993 144940736 331241857 172415079 394449557 103045315 254502603 136365594 835065833 140981382 822662312 96104872 950556756 739687980 768348622 543263702 734824618 499404868 687170574 255999785 514476160 167738850 983049404 85265796 641915460 437800770 852954916 631240013 650674687 508489943 943562427 271128119 391861432 180570904 236568808 231612554 991952933 76558759 750514237 277640214 967441147 300298433 625692564 571018950 753730468 688175962 953364098 546498930 642724490 296461765 555525775 85766537 378771318 108460510 740683775 184381697 485159808 51263259 664755818 266101264 580151496 48369129 53234144 14356267 280906573 146548194 960277705 550106676 856327700 111860079 593075961 498531610 871506399 71959809 600296009 468236333 873470259 367754189 689989182 348820875 579109813 366881303 641033189 171493900 664842737 448021185 836360463 313725589 484704800 399260178 408870490 392906934 787703232 192730942 379519642 50460014 731926290 383684670 819065029 744369284 828767317 704264503 779585071 20953094 812870726 560527290 668039323 157103796 870351682 740230026 854625191 575562450 743941262 133507814 331976450 149173769 381298355 277917239 322482209 249625388 403001633 42968157 888762538 309610146 634501879 117768964 280028367 163084091 956457183 216145479 310303391 55129376 71148145 68498280 709842980 519478859 690081008 322108517 975434852 5438361 887311231 399793052 705639076 361300570 990039718 628358813 886461204 114529930 552916454 8633272 224739979 129043484 519979777 241446705 600664586 358775723 966587126 781248730 877295553 357071345 784511006 384060579 454186927 153118892 218237800 188714971 430745069 261419777 482989692 103134232 904128641 207586201 321091308 272486342 962038185 160944955 688985374 618296047 705911088 331311936 645333303 627108512 894816133 583688912 889902416 577839448 967447591 108657319 308419282 38648010 933449023 606805890 876234469 561684435 773437247 650851320 761774078 664244145 887906657 142547431 724554661 270453310 377486049 207291913 462942280 397566273 534543008 295537055 480322222 108916300 365437622 252693895 587031804 40432382 475506362 362970091 375608636 234844237 507035318 185076636 834524843 374370030 538438265 139746461 575672045 499625774 989132174 914277431 953350623 625347093 648102470 362992104 420896001 416868837 426507680 13754767 733192095 509841530 565612432 459957602 882381408 556610019 930918056 14249795 147350549 114189441 835613134 203505799 946725905 206940823 966574177 796451277 859328982 701061139 930263541 688000807 952270602 178814033 978907027 52589410 452917005 175693843 971433922 553918110 605558446 228063657 982901100 845687129 926084396 770131382 874646167 630843911 832801845 242251089 772668339 730651633 861487426 753904561 767012893 450912741 465735722 135924492 835871307 131679732 437199958 57281274 617746584 84244239 417266938 372082585 806761098 195855758 791243706 771823632 925076013 744963069 901135142 351290636 750116606 381058078 739621744 425835107 772442667 40406603 219977567 155876423 812572069 571134143 952315881 71047842 861220949 744287395 852762519 612587244 664167359 606438013 793990171 748299420 814522300 574157628 921989702 818075357 986011728 202877162 977483342 259032761 433960259 234281288 594406117 211613311 848201459 754578975 867154400 838624459 990841863 495467828 706800159 48687179 182771882 108673306 432042504 347251612 843203075 823897848 950488092 186307530 977267584 373575163 846266539 489259828 998770473 694055154 754964530 555881373 678171232 271140050 929265447 205748432 311485794 191181755 852607101 126617056 978062863 331626952 990846385 747376759 935810304 535766322 778155445 352964771 398769662 369473408 982613430 341058104 548154059 62834420 770494788 280268306 505266330 390631062 597461958 270802052 518694653 370197297 522425335 132693745 384839051 252424104 852073938 850618213 933671143 481582804 839975997 123636722 593949335 364231605 880147784 311605548 819543493 410271829 868621493 349132957 706425816 16500981 20655356 12571398 33498155 11453753 843943733 379978071 671851551 175795272 826466118 117004138 990056060 894264247 954470011 502638169 747769663 143999590 702008524 373113818 610698504 146010753 608314369 405482482 639360792 36650132 646624239 118812638 541262088 64055664 287524148 201647560 800587510 483590676 837807211 308992253 855090717 143176852 309028423 212213622 618090738 367810614 735525363 511862006 688383473 394328409 575813258 147391945 285597359 162818956 735106335 9773576 121346418 66957063 872957787 794021454 930026294 191728573 629097187 394303946 473943224 442723918 723968950 539530744 889373974 18947550 464296082 455714196 588277344 580722067 702998169 246671339 775852616 707767014 764240761 187841131 946127030 545489488 991732114 956974163 963115154 397878154 515223782 144234719 307277357 242357847 840122577 578049280 585716956 361746929 363327590 225951646 247733459 185373026 984712287 826615646 957377396 127961517 328045438 175554138 876152811 110960585 366460161 28003317 667264072 416375730 440307412 318316776 785475620 634214755 854064417 86825333 416734218 165605414 253572149 29632551 366421364 67929895 404453210 94407986 563204498 324294510 806781194 397157547 657430014 48806040 687509195 363386744 767854311 110909180 728947630 7902827 110654589 105117847 211179506 61530879 850534551 83958548 183612872 126569210 561016675 398072477 844665036 31772032 304686880 302248402 785810298 614451986 693084313 294016754 964034689 915679139 984701953 979407222 981430160 102723824 649182175 574299845 711869972 682818380 813769097 684918463 685315739 325857136 493942872 437181853 749017730 279730262 572489674 306471867 710377535 376702847 881872956 533016316 969166666 123956638 876963044 516971408 866696064 316093481 367240038 341808169 824956048 519991633 970290577 613519412 818302227 700741200 935219886 566171741 906098926 286127734 516994249 207564121 557218070 319661410 327162626 89812144 776891402 113868137 393384986 189577004 970739048 432274552 911326247 132089987 960487534 733371386 784432404 168068898 853806142 70294279 574357381 222470786 296293848 56548437 513141466 84535967 404597859 126328143 542977090 37307486 318526258 90766243 644725393 86525940 994638909 529853224 942530395 164490586 741376308 83472560 897216966 537089633 997243233 392337331 854942796 415975895 513380494 201735429 999322182 637777884 803847398 331641595 585895396 396436451 653198938 166790460 706138794 365161890 562636847 425667622 623051666 276635249 668206940 666820281 776698401 335010812 720152203 457786123 947221706 205805827 983366068 410181206 746848486 554703200 937521002 590114990 808391993 374870916 828208711 757264982 974510305 125202766 187146651 87317358 873757752 666908865 896107708 397214846 668897386 387707915 869816978 212512043 235768647 40408189 690486281 159615844 881417678 255927073 308994358 135274784 245341784 148422878 602631409 163029488 499418951 9424700 421222733 3697122 678664901 139088687 861396567 318632781 860601214 48216985 172621375 170623316 212308936 133210157 970553944 915209557 919828185 712230082 746382547 421917677 758532891 442437124 843406306 68952831 88183951 29849301 853561546 267868781 292987129 271893847 806976124 251734068 751351884 370524809 799853712 6230475 250979387 111589809 549889388 179091799 352455953 218372282 827639404 486989313 557068554 1502941 141263108 59263214 703080136 207949237 913140196 752043864 886629042 494453151 909493802 783058381 977095505 256096656 670244500 188056468 550482112 258976299 632676273 506629481 761202496 428741547 592882457 486619268 950064689 764977644 939466478 152311303 486632740 336528316 699779749 111646294 261653947 112339567 445714087 391162027 896970445 372650251 634441130 14787718 663272600 528786500 562236677 280355857 497335893 93484906 287480055 235408408 796585143 84575560 471262879 263794538 627074263 131933848 523762974 53108726 632379631 348474733 740769185 378647317 401751188 311039809 647007651 633717546 932029472 355680247 750040657 297202299 591757892 443209222 908469541 55568028 518013242 490064208 622909703 348042732 429618210 396399929 802655342 470530188 883337624 692666858 797056014 53101735 644851376 361173667 650382032 217178454 470999870 423472237 822372568 298500975 393549408 109752570 148445911 30915353 929993663 182601485 837901021 366968746 472967107 398567001 923898268 222919049 872384531 321313444 515519543 72715689 746863664 18701533 111262343 21908035 819739264 335772448 907277776 598603981 961381957 496449847 548392089 497717856 624816399 232422804 382077994 319806736 993815732 741615754 829143988 626516875 663434780 514859865 546351360 222264129 296255570 61145637 178062691 143724502 460834153 293835842 920892261 255028974 626635487 433111175 513373793 110254494 802678302 585777817 631465682 307332016 811436984 100028792 870085139 664586628 883781380 702445473 838024211 434950754 618542610 375622099 639459491 23454778 685159674 309195544 394322074 104626499 331516399 141443106 763782370 333779497 426409998 38757891 72876229 29722022 593629155 501419417 630001483 595375230 940128703 253121560 912476335 335653529 722414278 547740952 997088333 649130248 799291529 69606462 773772012 399620771 489739502 374425708 898615542 537541813 727392911 393111407 760808846 735452762 927380943 135331005 992011918 785939541 867059541 653062405 735847026 573198521 734740039 107601452 890375112 323575845 988713383 859454168 926387723 886115945 948031433 868715677 985758164 356609904 507350132 59523318 305120284 294854684 358737732 134409435 488435514 319550732 561455795 352144272 527317355 366445285 906135531 497831625 702845877 400836217 596256970 31806750 865571791 454934063 938383267 435546949 735656588 24671484 940245045 15564405 739800323 373048591 926155858 334067676 858428454 642868180 892561001 400492214 893241863 842440170 971304031 682259072 758771056 747409346 948555922 525392072 650803239 571402348 987302942 80685583 168358546 57664909 907930285 170965949 311491252 262323773 810266286 96108488 520126519 250979604 826135338 122850123 567407769 8569634 276088708 21686495 888945971 486766734 967003381 3920099 191489444 147182276 917308951 159605830 413366253 244332546 927168644 293953438 912642698 596327397 833973432 658943803 856797159 485837876 599397186 230416023 423417204 292319384 696000388 417973714 760060839 40112452 807978335 699642159 961077189 205598861 269018661 86477188 546666984 363561845 946673392 908694970 941665003 763177338 854354276 16548921 211945040 42357789 503962512 374945717 969564666 296836393 467747481 439466598 775776955 238561658 471461695 432755906 578156888 482772886 711073355 611616859 818199849 6538264 574274660 88306664 271689015 79032650 713368130 213183478 423478202 128960976 268286146 138274297 846361737 78572528 89978184 18443013 363751975 89838980 625412800 313262073 889300358 584857527 616608534 593740957 950239641 535828624 576973612 529857822 751311029 74436232 943082160 17961815 778216123 664277144 940159494 861386231 927911516 128466785 297458779 283821992 881848899 33759911 533583194 443237898 548562659 84941422 367052113 107734958 427571963 136607474 378834114 45885815 127780693 66981526 637351913 348652723 589197620 383619142 800724540 628212084 673526920 421556396 591155685 507592070 868355715 523864100 967460912 75111818 883519795 441639226 641100221 608172196 979046189 520612083 764250478 256665868 992975581 511670379 780173407 647821841 967724483 500990419 670621359 422840473 818272568 290008601 631040638 409953922 441830855 292591044 770246974 200475403 724459759 568409247 888926745 505464714 580598354 385350319 761992642 686074893 729214474 339021670 789204334 215314937 544890103 285988279 919085732 496014895 886256443 665912863 956788531 219704724 272558971 220898864 995328000 794119557 818859263 56172934 498497169 218752998 776178591 546696120 981147734 225161306 862709347 223241401 553724807 93946137 382150013 103757714 239869444 69736496 770946284 89501875 836093014 459970420 664057102 257096043 729522957 536430167 598487319 520304040 992924128 869766972 946265960 806981171 832127604 485103184 983425173 886585623 888469754 823885467 925354590 500807525 665794765 465607062 945477150 2827113 477458406 398837877 899590440 850660390 987773323 740688890 761119117 347992551 842542917 138659736 691125765 298572121 447832457 313714883 847779887 704354578 780516584 21739890 152694821 7039023 547613013 98064481 440640842 30846328 255410228 179762814 975179945 757564308 779980571 741799950 912173297 250347294 934889532 509411026 520004479 517315934 619057105 261995065 594096578 342678403 804493250 87150572 956503516 725007934 832683927 174824310 374217602 180758142 266977402 131622787 359580896 175456358 184825159 855041 707058869 356488620 858868257 289125016 686392879 80355379 405616106 329236366 985341017 845150092 924679218 409487795 610929860 137329184 678805656 440856021 846844433 412778909 561255588 355876426 909180540 814866320 977039726 896905244 914593504 730996044 838390451 638859260 874574926 310554270 563376024 109715290 355784544 301659029 464080475 309432395 917395959 864584301 957793861 833293712 965519189 964168816 995948320 556530133 614336920 210975030 767582022 152161779 685129878 512673390 685685318 257228172 852135989 292698370 842578524 370100102 800714648 450570203 896336719 717293762 814069303 132145446 828370923 102192902 255878345 154918216 931381410 538935470 822843735 720308549 958333388 245329743 474091905 459754236 728269062 600624688 728679621 264897612 835340097 220298854 923721415 344481527 655449123 529571698 976891649 317274462 372828559 363139077 918236067 628581173 891505139 141722545 273489516 244793166 368894950 252026919 799444875 458467419 957417856 791796547 866500537 657013786 884057005 470959630 493594407 88563846 510804122 330277553 348765446 115552956 674149516 309667236 748969730 713943379 913467436 134063225 399481528 37894729 481711606 257574979 645611995 162864796 333781540 61398686 67779018 36291321 674440680 227233020 338268233 338109132 710945976 520286026 636838211 365286767 974177855 439560159 527816949 489936345 640112382 315382902 838252888 63764098 233172576 93849601 552167983 303058317 386371063 143069933 252309888 175886358 414914736 188543073 265179982 208886794 991936366 406551883 732092042 61898444 881870243 4609067 462485281 286439530 932253569 848551167 859372624 695159528 830946179 516748572 632694447 479607943 962116393 411481649 769913995 62316073 496502417 301654535 881743111 610191136 671807443 188736109 630960571 329072548 852486293 393581436 442980688 66468444 919902501 288608669 726851004 570427282 614560444 70162195 513259988 137334326 982296984 430632030 453752177 430970337 743188379 736586620 762955051 460179682 919601034 667424613 709830860 321580476 509737543 267654625 407978397 289179136 490248968 159390630 610853745 332958284 378136361 210332211 606091082 458540762 719402782 117800427 300152726 238862234 792027366 509665022 843092754 204765041 859453678 83540460 859606396 753161759 845065746 438523369 985680511 716676429 853957826 328724657 866486284 452389138 904368804 562737552 712761287 469103092 753829259 143194824 515431611 339397521 920199052 424940545 704215239 549174120 780006992 103843895 235009084 68328021 564216711 455612981 575279944 115659993 255228158 190550024 208500544 202184590 951102450 202952301 733678896 349962145 440755660 227025693 463075277 381800076 594302195 295436201 759648142 174609492 748306581 444453456 904746130 236048457 597343384 318119042 467512202 1761832 101616236 30153458 545856186 442449155 572543122 432754446 937772652 558555292 695954026 255900214 492845894 424832191 724518016 654062053 987857100 758971463 872977862 769686259 814379724 259063745 949485583 812942521 996387338 938031701 951602448 514155063 793685788 637085372 814917788 752832155 955728614 254022243 906546212 866958214 908884996 468667115 594183220 68854517 721490108 516007633 667446374 424680701 910128133 294033776 591760375 172111891 336641132 38077911 657708796 334953789 655028438 107927523 667754282 242656102 789094634 35451714 190991358 34584729 768280581 84966970 962603728 314217174 627201816 617984377 752553316 143610790 922557293 579450925 988802811 463004190 471184665 296681875 686397943 632592482 680838387 168439223 283388500 252787062 600114990 368316301 376903632 206776087 889716059 242714920 490802816 355445955 623264378 425392245 958980536 201793368 474907319 343925559 755667702 224694654 643976046 525388616 616616534 187678930 247507805 55631293 707056800 607106126 954689470 248767051 853820064 525941545 961725083 581788553 949160704 31403369 200043352 105387651 830855724 100148856 703978954 377893225 608818714 537817396 767175506 675620149 801435952 80105900 173072817 88925856 304860350 28261275 477170092 198230481 975875349 660584447 980282003 617790781 764869699 743301824 938809046 467000188 997865477 572106774 915819863 176000225 320509006 228941531 315495521 226529080 855329010 590061218 832548659 818158507 818857360 340614953 752282723 572816009 825411340 43945664 430458208 352233711 478205750 278465882 728048492 39016221 475780361 112343845 869019888 417103413 670558818 496766886 845835345 335952890 626051511 93319790 706509643 561256201 790172243 171017092 922151189 299140675 892631151 271930505 827110793 157863976 512579817 125388740 455528807 177991428 756227131 454655692 600529370 156034234 603289076 113041425 569815710 40263844 105228367 64650749 964841449 185840358 921276386 137890101 456830555 278851001 809930714 671681296 935419199 14449386 455493803 385543428 598202039 508505228 565087371 6603896 982905274 773108769 958350264 774431596 964700784 121262525 273884295 85842892 185866345 130843454 856111903 630253990 661751442 321334564 354365576 107001310 843107545 524814073 755781259 430239896 530282919 314295758 425618679 14149433 299556308 39408488 698908961 333960028 691420700 520323522 835808914 704959868 878034525 24344075 140766535 15181177 689298967 682416511 857165115 501565853 968382598 671676032 894997088 746597043 755956737 328979250 810603658 180742043 725062083 593175678 896000407 630501125 909306648 195940954 458590200 72606795 787369643 570796265 901412480 718622012 817826974 801180501 999141659 471702484 518396899 511916719 722611497 541422630 572637780 428590623 894539556 23194999 978659197 786693342 865434852 458308166 547753729 472090051 773396111 741880780 951363493 669879337 826205764 463891196 845472954 639056647 873013580 563425277 923990203 506869244 851790368 255376156 923375669 491778989 719552227 419976597 838214550 722119615 918016559 554433773 770541222 335483104 672714713 146023468 497474785 134628188 307450087 298996441 497005646 318609208 972138784 549729272 773909002 250185446 869324053 50333965 297842994 167334727 508080974 232056804 801416706 359322214 913981881 733344078 857153409 487758413 827435074 469936941 799607739 472149771 901919837 90272076 246239968 149470803 803673779 325559254 682810114 556491573 813143218 660386489 665410833 267344198 433684480 249535599 839234659 691794119 841812903 370730629 749833905 262840872 897671938 271036345 549237560 299857703 554340353 275191800 826915726 68003059 452592796 172342909 319753945 210512031 751999463 137192158 284121893 61323836 415955703 351245759 981380072 152609473 161595806 142088749 649961848 86542679 862183500 104699162 909985640 574121854 747374242 419119602 991340968 862014255 902367134 25540742 45741544 14037732 200771638 32716191 85120338 37611659 611696067 345827081 712014615 290736446 355505950 77901472 187436852 20622658 938853985 521637040 790112768 262607997 962888479 873568295 923630036 612052611 839978000 536727304 864248521 522521656 647181771 404737123 866604219 808925215 811336538 410711316 765221618 684085508 926248017 424472872 512565575 131982473 357597798 344774224 429199920 377627892 777265329 369030275 913732450 440093842 867181686 143179892 385215994 252166398 351118882 140890610 737856668 347886704 594555454 554072853 580486122 212331936 936735044 455297758 548735410 2689189 664791916 155359392 166453527 126808323 515871553 201873567 927030368 292957755 561495328 448046748 520939289 199049160 318061575 127939948 968965026 21159205 75838898 38202320 500712833 448766605 839462499 660727190 680572461 34342383 970435456 45823505 299982530 218329217 352431559 13562228 91171492 36270014 119632186 33293354 461249440 294501904 515680817 353954850 681202441 252738665 782896964 299641641 884048240 119090752 320294714 248957812 700174948 136443516 249569700 18894915 297050560 242074665 492694271 97749194 398545926 234747302 591669619 516278015 920070206 450400966 762980848 165276525 349171975 72890974 130168245 72717244 735380253 460692961 695725864 353042719 968145015 565217343 698993167 433448574 893699467 738626997 932082171 363934511 598553489 405282381 665320260 275832684 545056891 467223170 673841717 281305075 873734719 205023132 299405525 40214570 880686877 161163074 932393988 337838986 435343489 20143613 524584595 349393679 994770246 906005641 931396341 491603175 720483493 159994460 709338532 590986270 960669425 349365132 391608013 57508356 472586634 191528776 715417434 34613602 907364019 577871331 974799501 702813488 906886523 835648763 988985810 215482258 300954097 163489793 926005665 693304906 728256678 296151335 689492267 655752683 832531510 736117339 838715772 767393405 814414289 14576651 952257025 433857792 809702071 568778306 815124709 654525377 738189132 389533747 497544920 173202755 688099658 115186798 586422686 264630874 269222156 184514004 272219310 165308444 932444879 533853881 885924755 593509291 676410062 269648106 848940455 803282511 884980743 109420000 543119636 350210329 878635356 172831222 700787232 221088888 754103582 328880283 453533807 155726718 246443978 145652566 399981287 28506990 229041671 203888782 554743949 186744806 307770995 76028152 743623327 695556726 788493573 204304914 284033453 72735928 546533131 445445020 951098334 257951353 739979707 82922690 167565665 124956317 765601275 202181145 431879527 247408679 897331779 654661718 902516804 570428751 638971333 366073562 635234457 220399520 927441929 683917902 870172836 354927036 758266752 356844766 903406008 415862524 535293690 54274890 497238614 240310988 657745492 552314899 694001239 220900939 748919066 673121539 706147630 329382368 338173752 224456323 535963942 429267104 522998097 268946050 615152750 590052308 895078266 282938353 318265299 247704455 943778486 452770411 713011513 627250988 964498483 193058587 915087131 294090630 326267939 3326891 34648874 33767923 50625017 33712081 445819803 254104441 854677673 11571016 940075016 141627465 848248066 517786484 956600923 328559227 629044358 210476432 446879510 256390482 306435017 48606583 701766165 339408361 781878203 626603868 789713770 581996535 649593419 143889252 720224829 514858267 867974053 832849125 959709490 109106454 835918815 172374535 762330215 265850308 666366451 490103561 803837497 729259645 930873905 584502656 694220059 456642511 922735094 855994693 949495432 656079226 969099836 32335032 111021133 7632748 302927865 266289912 985959361 8562358 724713157 314480630 818015657 196717178 665008935 378514534 597145871 447167957 688996949 464239692 838551407 94837246 367453765 165574191 710605495 319030562 762795666 653824134 969671468 375092996 698497672 30476299 503508838 147847868 859290169 828428944 941930488 110209281 514306339 360216031 563018366 357337258 445201965 382665601 938290785 371830601 940617984 98454357 157878886 63316605 227147584 178145642 621181055 62259323 231106564 90277598 418850621 163107482 994761421 845139486 907478720 753381505 960394751 617217605 721796455 285288481 558533445 100019633 566153398 32512397 634362451 401195522 882928018 277194874 648630298 245609359 534042878 429925318 778639098 242564763 863544581 119598028 196649914 151620248 543757661 409032301 791005608 297763153 783689207 615133234 889318148 393259576 763300034 687400570 790099105 696304414 727562898 367354374 377810361 269600501 511136081 327158580 696181468 668645655 887384796 767442357 845148407 654646994 859207176 616609923 927677381 90571923 108783414 30945289 348029551 330475561 875607919 428985324 443942305 40110519 668334605 455157933 722071220 390300449 698446794 636710608 807038582 466452673 660063100 184105920 268919662 90304455 847159173 241866630 990030708 309602634 893011086 549536645 631068491 602719843 642242618 535586415 605342536 397521872 783298254 659736540 742192454 501809467 965642740 260818071 775046290 602251555 792836025 195515684 870693299 738303636 809306107 464287292 893189800 315561658 894124504 62997698 132657043 37702653 103939848 60005286 282959966 68459135 240105081 150497510 182787831 92511695 492085022 15854932 564820078 336787862 913830588 259207544 317916018 82867506 913851498 615285999 849339406 748995577 758075868 8556565 323829898 87135226 789520665 702877259 907061594 302062346 346457285 14444368 113074263 41897148 268535192 150393398 431479959 388231900 625542533 506140530 902924802 822336714 998647399 462057066 848895329 115725529 512224251 413522654 517438223 97354980 340032394 190628924 687762953 60757087 718842841 265052055 921083813 825955450 848997987 742598354 786239913 679010972 684530135 652215986 742902680 663371166 935501749 3593377 572183043 119194958 378482814 120448552 607693279 213362294 254342602 244665969 388726844 224576511 268297381 77521196 872355143 1336394 767640282 389430416 843591697 527024897 609066472 444865513 726246741 42265614 402568383 218731614 340532585 320189025 320234242 27284965 212970049 163439259 310529909 274267560 518441731 213405498 640541405 318011910 658386782 142847707 643816204 287134895 904156882 616190857 847409479 698502495 918767988 134671491 649095233 630742358 812494792 607362508 630319274 314278228 864849388 113804346 757233630 671165389 929935424 785508045 897766343 758318176 802012489 779456757 889484179 399111802 735706880 529160656 866776828 685562273 703371676 277608802 297080953 140136675 720546678 15383334 248130833 99755576 442639584 323481657 522330038 455976722 570972456 264051689 831622521 509901070 790859304 651052918 740971090 259248392 693236278 527867118 723471557 345683314 459838477 373398959 907022029 405047759 596214949 94097656 998530972 512110893 948023765 265223469 999661286 714874521 899599949 868770048 979860894 638031326 760538558 565861179 994446424 908608809 935189262 833777615 896812819 298169872 915430650 100190864 961436758 746357600 947201315 128103696 815882663 77846518 111968771 31153263 276245244 92754203 94659519 64067837 313957911 280944686 282506850 68187963 756825224 714439540 995047244 510461705 864986977 25156076 606101132 407265809 952636945 944371514 953574163 64268580 881857030 572501280 797204006 430406663 813792221 276441054 762635805 611228390 980916733 380675040 487164596 187680597 382395707 336423634 645536920 468256668 584142825 272273273 386148265 268108268 664172049 633812683 980997323 194596873 773339704 77805721 83358773 1125241 997696940 968420839 996012751 737239446 846708200 777069340 911003797 806415445 850375444 178357516 743860141 335034428 652898527 64968427 761490175 245083661 753022354 403518155 942025179 814833535 861690440 232856851 322239264 137900849 146597367 34143643 696914325 24908500 964481444 876888503 888691099 40501707 665909996 149592903 580025015 313417157 484266470 246274791 902664951 882644033 922888336 32710179 542873692 504039027 915033420 464929448 505640783 230434365 557500943 224134697 666635276 564491903 898658632 128594192 555369593 445549268 675298097 5441613 302515215 47393529 315662423 40885670 507189417 29704086 809359118 660872516 986733422 746944753 879304149 555144853 719049462 460635564 636331007 460265341 605413519 497233080 820721576 183593934 419540815 284335140 666322224 516455931 650786697 245964676 854935890 801350687 906422624 819813149 988209614 753250597 995081017 637669118 691318369 212640519 398176489 12631751 710480914 465969157 924991453 566380135 595108250 570748945 607780223 587871882 989440439 715626670 765282124 708718503 740803500 246094061 938886272 61462002 855045280 748206935 999427704 341266772 511159269 361777048 717161259 212617470 250525732 113059046 899352401 573892564 657129117 187970944 902688290 383340931 614212239 573856445 738436791 683520837 978523121 462852876 888650779 705818261 732236310 728414614 963313940 757608358 819481937 528466714 983941459 21432627 140380978 81369548 765771173 298969859 632226012 375970756 377908338 5896631 418753133 403838023 621380963 320203548 376341083 236222055 395751139 141380903 533616557 2810408 100811147 65315474 114970624 96485174 781371626 673993666 900133364 353499707 359462876 96265637 466895454 109591350 683662483 65517052 965223693 45096845 295310494 39478483 477694501 327477904 725729114 167567570 194094987 76443327 373014884 111223478 671488949 633769183 634209429 247753025 956360354 391718637 515547438 502924883 532672486 236047158 297810128 18028539 729009662 293285963 638367227 204984535 321667186 228347587 782267733 525618769 609814447 584103833 821730964 12846782 343681213 30835737 520983767 122342602 231518498 132017771 306720902 213932096 226487999 166058129 686762291 471171922 801554395 732187874 802153805 729651460 878285045 203623993 699874606 58117796 349899307 243794953 687614314 509374964 825461060 147332263 793894389 366656428 875914457 687530911 946891300 570289046 789997142 261331081 777358854 305064925 576026296 127674509 225738841 85366987 357179792 303167585 352321533 159627155 263171037 7213916 404858996 270299692 489042782 99657878 803719543 538054773 746321217 467825239 763728871 8705419 832920471 686776326 724269269 336441670 699683825 266306116 816919403 578694046 814706150 49107967 777527451 757478136 813943382 427886576 505126186 183219075 487031231 33247378 290480967 22329488 643562492 211600875 429011066 409774507 626477088 572347750 795960908 404099108 648875060 476131753 608871423 387699676 940044857 399797903 491029806 265371995 593926260 320283149 668277093 383473165 526957911 344551412 550865296 309556637 646731174 33064284 342267323 79825172 207094478 117166390 310390841 96383607 728887913 355475877 607127431 285594782 705344138 522575967 881007887 8588492 446067070 405362351 902644317 654027530 996029690 127959710 601457455 392196979 488984653 192960743 424200598 301122944 721262628 81970626 145280667 121103513 231183870 138819485 856833884 306992722 539166343 250505995 430936161 322962449 513614810 157239497 215453094 143874444 632839308 6823626 611127217 248660669 498624367 91010319 721106602 188850331 480771378 400097788 940772139 657092245 932217587 562294598 864628186 768282118 864493219 55845018 958464424 881976999 935134252 178596561 939917530 353594158 553907727 498086960 742062160 5971000 681584602 179854015 657477410 545256909 975675564 153443026 469338709 464617706 747178488 729485366 786827053 73669931 535741411 373953646 512345013 129983856 689273735 532926715 921657228 151794012 410572726 118138582 485587614 371788556 653314421 186235441 297581147 170380277 527785770 265833784 297285996 85558072 712461792 225542348 459005685 105222466 440312251 76169029 776610212 69318602 383824595 116131509 881814364 473667556 753912318 220007803 235395163 164330277 797965756 565142014 790635574 731114975 871816949 433467875 462309747 5764185 291361369 226206042 828096015 33143363 926755956 782686771 851608819 193450419 497914561 416994685 683743324 122340498 442780789 347846835 422973271 85756852 981798707 450790224 513974111 146084891 203197184 168449185 927928370 322043745 588671680 29003801 147572185 47335826 564618823 449127054 951316257 413591959 728824711 636211286 992297049 739607288 876825738 202409492 828608430 735056709 919983798 242156110 884502648 74558491 743365843 441359062 810952149 208754138 491298269 194156132 636302409 472762576 826854037 91766105 419064613 28398499 36042717 19793262 424280469 8671893 669104341 502460495 711512241 6079192 996058863 988384265 995155789 713845170 831635202 92693344 873792749 661155732 994803247 487788113 620840019 563313947 991646950 824840913 825329243 75946125 902274610 245405729 444965877 339859780 808063598 233791734 683078650 187887318 828715165 9131287 305401874 8741287 878857130 440595918 887725508 808831797 866755726 38101679 777406359 648913385 677996932 459808185 588964446 188116123 636826794 96880258 865119996 72364787 695956779 483305351 687541070 446459716 860980925 40300531 693793907 219497845 237859593 25686283 158886948 79409267 573977797 70736567 942688278 518273166 738030505 588563115 596734184 514547743 935468042 449348428 762534434 615173110 817550161 718406782 774944567 494649632 928208237 437852230 707738368 111595915 484691522 217090351 666131526 50203384 454215398 125093733 795343044 462775589 671931661 284504834 462089661 207157854 770732207 392237384 591462766 265617335 664298218 496003955 587846574 97737674 787712626 290274857 873957645 554192853 567886088 235364090 704040463 232657833 565234177 355407092 963341108 532616446 991165169 1466761 61449901 1365139 306888718 221866614 859054539 661076814 675103517 317710389 554315846 362646585 692848195 178772765 839843182 755041637 824112814 107605884 339968349 90091830 427170224 85105772 876291445 141498847 233947320 16748803 430161689 154906671 430513483 11938051 796920306 264200867 320971425 257216493 564957032 218882146 909626896 50575918 78772988 77854044 197097914 22846831 726638219 280688798 493233506 415535526 555407159 284264207 577366439 334241515 768817754 494269737 686881171 47201353 479534087 161053390 433514407 366576365 638263265 618637780 984696621 274846605 528856971 139749579 812759560 77824661 557327641 323474973 906129504 253285806 512231850 90392697 423270093 263337106 884986312 716931014 820925433 319998456 771159819 469151096 995700795 486421882 913077652 241884460 385207797 315953379 492223405 203448779 954097865 586958696 992317336 732525073 979185163 877848518 959375404 918220007 922180892 250460599 486992997 457615745 561647258 468043506 474931232 275376142 487537701 133915928 886558310 627348824 965722373 479308907 938362065 910387920 993456580 730699538 855013609 134827863 955281633 265394829 574652178 373277908 822738846 419487649 421482624 149287576 453666088 125223125 640200418 483398269 527293885 332085941 382952354 13064649 378588707 206656914 674451403 56960529 779528731 174681592 486993432 220186848 720072298 707705759 888266563 31536121 818984782 220594062 943679593 721876384 888888788 595047590 914572058 95451323 965738276 866579981 945979400 401011901 622299712 231367031 571287005 41822739 650294954 330198946 666120687 54603558 451301239 239267424 376491323 22017814 877492695 244956915 376993084 238683442 893402265 320830036 494574039 190722153 708691573 67483840 386329813 225227612 942406090 399984179 722712085 652380755 902583459 139481149 984467727 416496142 608188422 565340313 671050079 384466665 486226912 322413200 639329881 248448701 467238445 12702357 247832298 106570183 797855743 704200117 798698445 318529679 577183061 429175393 987506125 412933664 601777822 267238482 680685683 231871382 561839638 403038710 842845268 349568907 534211190 378737247 413220654 325188248 798227423 140069474 218463286 6746208 753098847 606189609 876703858 423416350 574980421 454441981 787701614 75293473 686252756 508552227 517875603 314268435 352508276 92032974 274446493 4189229 604277499 34497127 329920055 248515750 253573877 225389105 928738201 805030089 928206215 630968662 683733338 646015091 910159845 799296487 839619413 176205879 758077598 129747126 976903794 955130839 973344265 560927630 743861822 406795333 622168109 400978802 508256572 14585275 185915610 33752019 842398804 89841751 720798188 55211628 213467926 12958925 409358502 260215055 677611529 502719411 615896756 112983374 405413491 24912201 588106935 173754104 646015246 964507947 25697225 644926544 315223029 668410511 643881663 872100305 182952910 736586468 668809588 829253645 793610231 843052174 277275166 723440964 380937941 575828569 294843034 383764365 291972374 301002954 201618105 421989801 365888706 481727303 338346532 655767608 97540381 232415960 60167085 710186316 51357338 542695445 426101484 726292665 532865232 864146189 270634951 901950504 57687656 915611389 715180477 781464155 559808931 831919765 35266252 543046699 508067295 879932977 51944241 521905188 97264588 474941521 8218795 571963967 98942643 966909287 349224918 934205942 327225126 470894854 463391115 520955100 377620091 844526256 150075713 895691186 119473730 191665093 138327895 686073270 307306460 457916821 202736159 621346196 325883318 380582549 268210194 578173618 59752492 803641122 552474103 851906683 240883550 266761463 63677226 780239892 448365859 870464330 258739069 993166108 247462078 965624419 428378195 977347169 700098360 868117587 853461560 971796476 428143226 560970708 230519652 987010078 476432641 677097640 553787918 821285527 511694157 986302697 791296019 968217956 707802966 888959685 134214553 253758850 228497059 510323186 276242292 658124477 49673271 968890422 227020745 573808732 479256236 628686751 248651248 436818340 163708900 563590735 40259407 863397544 476724291 702421620 628198986 685420829 298233688 824575747 61040586 659061378 631528431 882455970 798832878 806573566 97196763 503715751 364820037 467319607 257262075 620044198 344702707 996848325 703140401 825272764 372387300 919308388 536416089 629820189 505766127 541096480 249098601 945786128 23192184 35546905 11977745 453260769 98402017 759994972 403331220 962553444 11910375 252717051 154904292 480195423 395323799 861545095 415737476 733841518 561776531 610767884 211459709 720122997 567645396 662803211 628669792 663848962 525011224 576777835 92186239 226251460 162660484 512765111 153208665 229921956 151565011 197711254 125220014 685870322 608538971 720378694 38659202 200853599 187538106 694321545 427652773 687792221 377278588 730928370 35337303 574616132 241264128 263659135 5788967 667108150 534457398 612305851 251133581 785610700 427397182 833019402 691345608 752621753 395598793 944304584 801248404 852994784 103420438 534690200 235938320 241623124 30152636 195080049 88370106 961751900 672605720 868938029 157713597 674302423 645126942 857574702 166987541 642590752 409979765 910315439 850948296 950986228 858696469 931713855 638640044 865528799 765034137 954970067 921770662 947672095 513085079 539051850 525888044 864962564 44559485 705284746 215481085 538906950 281930301 398535383 128487819 629009326 211534996 536301135 485576347 724376000 476160868 535679645 371125588 458819948 298259361 302513431 84159277 97851873 52046617 112124870 52777402 749670156 734254198 834180812 609280297 745289157 710985076 883550964 837858132 975195710 581739816 934327852 890570227 972617780 958697806 988348603 352014068 458435364 324355862 935658617 929481790 999071056 557708427 746120773 339461593 956903667 783264692 876902327 240073231 757793389 496025322 902862033 398231709 795261987 101161436 313867456 310960160 820159509 759016584 884057038 356556925 398517945 342818880 977090677 950343399 973154446 947863507 963100159 613959668 954010763 391998791 554771263 442452315 520578853 438141684 455337836 201447418 757645246 294414398 994154107 314621352 638223256 573410381 673507084 218315094 437117833 427854410 802411572 402157362 571371522 280945267 316931349 20703328 346900820 289848185 948221474 179586658 428231218 338188623 751953664 571788272 740495714 517560060 945627909 850150772 896193393 73612069 179802045 155267116 522502367 387014127 551226675 230137216 379827950 267213312 664413086 575170955 948968661 626582748 817344923 743702090 815449383 530554845 571533138 118787728 291545974 169744368 724247177 486800585 984548360 827642756 965915872 893044282 938920770 431567120 480482586 245985390 580224047 424808245 831135380 643392290 863637149 222014249 845043518 437785996 442344835 338055114 520547528 226793987 888289167 520489074 581130193 295325125 382904855 168692178 772961080 79170802 259659846 193947686 458958815 156540349 159184511 136803372 380413907 195056495 528497560 510375758 581790919 545987796 736778808 650180360 781957870 109245238 856803615 514425322 643107407 250493560 983710698 190715395 442531503 339380601 847237193 262892297 895502227 90047646 294861388 235921156 771025101 650326032 762435075 578632043 635140907 300851277 732673015 143443134 562471076 404406183 691282801 164148162 337847745 49386161 532126195 338963785 830730935 653572045 868391397 555974374 618630562 77326994 974382257 812354493 897995513 33266598 457802026 377745490 484720648 344685085 884790411 187473317 193256654 131874468 758637646 613450218 693794614 553660741 653648170 116547441 371052838 169716097 933960771 387707702 634957251 336668620 603537810 383439237 672061609 562060942 745251864 418303403 983249368 44698801 256658264 251999485 676442224 557377195 699518423 8526737 86812042 80761800 380771089 326098413 583435661 63290649 238859614 171465746 608047179 307020936 883591036 149372783 611895541 414506074 643698223 286504288 671750761 622853745 737322700 56551487 947046197 450097147 554892959 88558928 247275884 124163664 564411741 423323492 487448083 88295658 887609330 1774028 161986656 144300498 621423091 451041471 684931959 283896768 405266312 382006432 542780108 383205008 705352752 133391561 652618018 483612660 814768129 137675288 464287800 268926333 342165397 2491735 174482426 1496605 135832122 83709119 90658202 66136354 669249393 631200328 739584852 593213055 812731953 550868271 740173308 493642122 746452000 348653155 354299289 167094997 654262213 625163471 904690102 416320821 462827626 235385102 286947379 285815025 794613933 544893741 659233977 303302759 639558421 500391682 993959777 21467424 689575964 559362871 609958295 254300105 738931104 690272616 995273256 628073883 772032854 72965100 213736679 113333264 696828197 441555304 867203903 114761175 995374075 871695891 994618683 557241142 953279842 836715885 860403982 90541886 207421297 187888574 521409167 91165452 522915316 427008160 704936074 232417424 276080881 267968112 807815237 87082560 123311072 24764541 545515080 228274372 295236758 19789366 589928867 583856168 698062283 500290946 682147027 541517389 758858737 179881748 217729077 29346465 554500922 515225099 664931438 3490083 543070726 239937351 536740031 156679383 467639582 162788372 887337640 321338053 362353414 358614898 898830731 45458959 612591576 562166499 794503822 770273726 788275452 265718774 400350797 265850800 365068120 135470973 720581331 690342424 831603072 222812112 361865206 296712708 953913438 796267792 830475798 595266786 636824801 44093505 780133893 742158786 966481556 214417698 676180312 525302326 872033277 193071069 986473836 250098459 259448179 210121255 806619559 317167244 743728978 246855190 396994362 377459961 843433495 212675719 628259981 245334724 799001964 418646390 431246870 274172911 429534493 205551587 273661355 83614363 290475937 4074669 384477621 326243493 770004814 155489705 388502075 353458438 379370176 11874828 789918034 104866297 752619707 288492069 896349387 117922237 360857114 221951992 827774730 105494505 857115801 526148712 667930530 376492099 456546256 325356966 656383425 467001427 489339965 160424065 766272312 379964822 618031669 451891177 722750436 673852954 761674942 490564135 977722059 397302505 949303593 374753435 774564254 743457160 842154419 184732155 254789727 153623527 246597334 62849869 537684416 350268094 383347140 29831464 353984449 163998717 781963407 36763144 482221705 11411654 379557954 4096707 393762351 618096 251310932 82694807 484670254 127079907 427572842 111390900 588850138 350741893 879777766 340995739 420830497 211503988 263125807 203050438 326343963 23815941 44294411 22378188 343338596 214931426 858437347 695467592 943438259 845411991 913170324 10560747 564522639 393163874 454878454 140773688 552914596 296664064 368832708 211143736 786654575 368623834 731542976 273924643 787052531 463400552 727906222 518058217 908065884 709113602 984406166 208119606 470398798 143301785 879016178 775220279 787706555 428788950 973807281 973364952 973386692 556168687 787075913 760055217 790775437 19020501 785534802 262599557 466863115 202371523 302370176 80151132 105491074 35642965 36302996 16274453 464752689 157496682 558133359 379542333 504631891 287212421 331732353 32481711 509730444 90233605 246633790 86550114 848703361 256960856 687115727 43424925 762201716 325874180 657643673 327284942 938303439 936512577 965818830 760577256 772886800 598332196 848289450 509084254 655498010 642667519 914835996 442894275 657935338 220791484 346639429 142263556 765824152 111681805 967995183 952322011 953440846 362669630 442897103 133856909 547668438 115196306 757657830 538728334 564283148 48526411 886905688 674585430 951690258 555343273 873557405 276202599 638350214 586666558 749821809 188093106 788626940 411174607 953902656 835031165 988974920 502723203 852370273 496380412 749657820 571703369 652915325 300592081 531802137 179287972 597871737 446857567 882041836 839106192 912943759 27637553 654750886 583751652 880498741 397098444 633180757 102124200 524767857 367242790 727701203 553200144 726062915 474028715 611357764 211018187 533676371 480364512 724006097 11099760 957965516 510844302 758868094 527769557 597903324 249266331 666298057 526656234 708925519 204178072 925590215 569519348 834326596 638233946 723287072 286785274 905222600 686839653 939862840 153159600 957940301 719725119 963026552 703326192 866313470 292559019 933056994 77170623 80910528 44848263 258927012 65923185 878179823 57325797 91274850 87553077 177380817 149344829 265544878 205313516 740277895 664420866 795661565 188737329 405405559 192066531 535585794 268968280 485429418 485105573 544069016 418885929 746722068 273705633 450197860 261141397 532812704 188074255 302977295 71801806 524902897 169534590 329405404 39077327 222386600 201626981 362966509 209890728 660057592 193712113 241014835 73477552 400761163 299635965 605935458 550518735 845067017 218610400 328522021 35519860 368582198 344139739 582890431 202131266 958542213 368956208 692726934 451186879 485575032 499646 185455804 40856633 391343564 330685925 460610273 380008828 726958782 20750728 493685178 153991004 608427026 341668871 695554794 402638255 897656445 53107953 64972824 30532157 747851097 27900442 148468229 79132886 129091258 8933628 20896221 15377495 664854963 582478399 755901872 263944018 345301289 252687306 976330627 226780017 467299204 27031896 70891558 19601223 516255199 458077716 681467917 639358658 655426387 477377980 514978497 495784482 531120728 381908244 645392686 638790568 951573075 22343618 621574101 225297933 588500084 448575564 807620333 498094137 589550064 348136999 782037407 139389274 410976358 63215321 287052221 220325105 326193139 190713070 518690223 320346125 889003209 431699778 954694390 780747340 975909129 925576480 972860296 659060190 836501967 151683340 201618111 48617760 900535190 871673519 988622301 274275168 585719762 479728424 928333217 571465703 595888027 173852103 803967455 391031037 840635389 67288630 84273091 67103506 509091295 311990000 466560533 128149676 886288109 832476031 848316579 19041878 362927070 293016264 987191583 325755642 635360459 504701697 706218211 317892853 959438497 636538912 761066144 241685866 935440219 685065179 847556727 795918590 919207932 285607898 657155154 405466705 445546340 308965701 842461009 694437501 962399425 910866043 999572058 708943567 827658107 719358579 992116322 419678007 434241463 51231728 727372002 453984955 848060430 83679334 494001592 87332579 490751804 163085803 575421385 124347295 716249131 682288903 953015890 398916391 549042008 79919353 582996053 146356456 468688702 13257437 924938941 773842023 815881939 546477762 942079637 757866827 981990992 54497188 179037749 130669808 198052812 30215799 570602676 264390437 875255895 262106570 952241757 382518040 812880347 36416353 254624344 178812466 476100203 259097100 344285515 277342777 875432511 35967593 179071162 10407508 649692374 340022840 563626276 368359083 570855828 101544862 212854528 37529697 243155290 81792145 462719312 402369069 887796917 108651985 183947174 129886216 963947423 622391828 950143482 407692317 837009033 563662949 673907061 36175435 894334612 579310522 854531815 437601693 874006497 859380661 910583755 699326311 730875608 96624603 349852158 290963526 807191030 341273203 806329325 169330553 224486581 126802860 237675492 106511280 271919858 172726115 825718078 706857398 793998026 21585853 489977668 208605222 546781669 410849085 510734651 1142879 140728796 48218101 773760361 425168262 709358821 530079645 789769466 357206531 895814272 323256141 899382675 412533543 953964955 788585015 891815626 801765398 924327716 25857144 843209739 116512795 590489211 468186770 779412945 568672399 989872881 109548215 131297787 44350614 895329462 327109016 950124878 643732628 737127728 200228716 893854217 24279332 577641078 392862122 711300884 319764573 880470085 262633805 741914238 436023760 938876474 439438235 654094498 379013212 569895081 427165881 624190965 434957808 772389796 397609966 621182917 85311462 186075232 23621985 490030978 421790645 793350188 231155177 338362062 222756822 592265600 478066505 558788594 359299261 413389283 378865278 595420970 476993044 845811521 198962470 361691131 157025853 306474793 50379042 342796172 140522717 869794990 263258363 761683809 390970810 546179805 254366255 426902702 5740916 458350573 430323036 865493723 116393953 202299037 154515684 675875599 531812567 693958978 52685270 233976072 51461544 987104228 309900436 665089706 52278879 61407258 16345801 462865707 412279253 680349225 667301103 873941088 503613465 568664552 156644027 945692478 13360917 988635182 495916029 533945449 364972970 792747642 725331429 834340492 261875903 873765627 482892594 698854973 11363866 903132243 442890364 511754122 211522643 932801695 625707567 849817148 380194605 625088937 362686302 833531703 618211370 740839574 472323688 587447627 443356930 925144084 148303557 389645338 380852343 820761349 484665218 547229284 340751282 790686537 217485008 491748980 127000062 991998111 710728832 833107819 402830839 458414785 89099361 157263437 157261510 859634578 661838684 988607271 735376146 852742177 774348352 775761047 429970287 749171605 435305368 804596739 414069387 451000545 366042563 583513605 419410562 926680882 430334650 923829416 762822877 967421991 298316079 486881938 323245279 566241975 135562517 243529278 93733996 971921025 507556626 974042185 67748597 249780426 143322855 718836837 138826023 586351995 123170209 124778013 56188137 165959049 37500801 884236724 352347658 698145369 534605943 817324480 409916728 496040148 408377888 860144034 703788626 954645206 721743302 758350573 602805260 827849766 166684941 847966276 52917529 285759042 65812215 830981101 418709284 957069246 13669956 317017260 208393495 514039782 480227237 511444672 51455938 171146164 169362139 545802523 60088855 891473873 456180285 676319960 422307031 952577440 944023236 984236757 760268562 813050589 97205280 719935705 549067062 964859504 41663841 662440117 504086096 883031981 535081075 995892250 475551685 738172028 341170125 974131249 32264540 607046956 146375062 704230456 329673582 737683826 440333309 627656304 546816879 992144893 188312448 904644950 71057063 136128988 35470137 620265876 4970649 898365288 111020035 117743102 115292861 411779440 394914031 530380303 524502312 590045182 334156803 750267999 744919610 789207930 637886654 938039348 560533579 864663848 472749681 815689483 368984615 712800781 22628655 32663084 11079355 780877337 399014669 435111366 262043336 966557720 320574562 412081252 320640997 472013014 416687753 956192637 578429523 604249968 571400164 878486473 248525606 708895024 215246138 653059992 511939276 664560684 66115955 83308138 16239223 729023240 310157222 831712128 168927376 772842969 300052793 364337807 71737669 836252618 104146771 287088974 112577782 654434773 500802066 663378979 274043304 790327281 648344994 984470894 84048998 257294252 217803417 427028733 77481940 272889564 248750678 950823283 256461858 380742356 313758441 893489393 80229027 380570474 165711402 507172283 205992056 995177951 762598680 778879275 60393592 138044506 51045038 786826660 177508508 423208211 399141806 499583716 455382364 623616288 348113008 634644792 585030624 935530565 165102930 923559262 38400975 128192586 123328085 823401002 745209233 860682176 348865678 968565790 146914535 225436917 24823137 890063404 727383776 945393549 567522717 810615677 90050 96965494 6932368 394543319 115280556 582350394 372599305 480831017 192487784 282806073 259029402 398612148 140314798 977324693 659400133 729086479 376132810 944251824 801999114 926689579 203412261 612688768 437527745 497198775 391602660 874778704 93607021 436692407 204866268 373880688 298171072 984544377 52210972 630548618 261607536 788367378 562981395 773964027 215842984 271684241 112008163 979340315 746963670 963357962 398862439 985302955 156967264 249403661 115988928 130529687 17074519 28609848 19003527 794196761 745701900 946469699 151082588 549200049 18435189 249854439 99083495 728183297 445349501 774730885 127543680 164497413 6333509 621079187 449445968 661467845 339836504 857885549 49189285 922860775 699881589 766769733 737030437 759428115 633444431 790476270 59663558 314592502 225912189 475919560 424524780 715499549 432213876 552024361 215913902 761096187 537843273 573191209 72523984 393308059 210802409 520054273 465610993 667396008 412830985 987935218 225112030 965484722 139166871 359673185 105521709 220414900 196984188 631416169 51530674 560788728 520905471 616217238 519259498 771609708 625883762 988838507 974271299 994677962 321810711 911384391 493227859 833971523 790011808 804428472 413419211 866839284 350274116 414488507 1178938 598901441 573530113 995372319 772242419 915105762 840096727 909126906 264697549 268014603 206510657 341361008 242221973 866428293 431215472 884102306 161300680 988317710 907729273 944315295 29237141 430454170 37415580 126934573 40623607 133842588 22988766 530460201 139753694 325234824 48109331 202712565 55093459 785464698 85797692 267700233 212975514 486008590 203861987 764526122 517477585 698389307 474482655 661518752 579557447 852369965 95774192 973811748 539403969 832263474 695791836 967060548 624190520 734260447 675006935 803999433 36402794 267881354 86274801 938813244 738877786 919486539 837416493 904743225 702356551 759999024 429622885 855808885 378615639 458485480 433796673 837089019 25493786 99304435 77689676 78784287 74690793 281580390 174116010 591363159 60334118 258513944 233176471 578416538 460384633 887795511 389644626 794994202 367692924 876775749 819095054 944305592 566204780 958311037 929954518 956758657 847362957 996424017 124865531 583809109 58624524 377532486 109862828 365692419 323917974 566430017 251278491 653654945 524032369 540005602 492989096 606130165 342507537 555073782 3619800 688459595 466486484 519922731 166008698 976035317 689087000 904971563 371350681 556881710 395170513 678683477 533291157 906429494 228138362 596452397 206157917 787436913 183733571 900295771 7551260 77188321 17695938 595743771 429874297 796670101 578297236 874572854 119247892 768080861 526793712 965797487 97406117 767435444 118758729 627764590 479831836 935350158 438494175 998544888 448041708 754934692 46420659 342038458 5306434 329741872 208801050 414084718 187026341 615024951 267531225 849528199 122282545 841375728 124186654 858697418 540134356 586124899 326371886 968742102 874595346 961428116 729679701 772420620 591140189 697695545 693887202 882155683 664617848 815754025 320004791 601402480 459588492 552236251 43614611 337737332 8505883 614064691 898947 185194832 90870223 752276078 349195307 751729141 265314362 345631576 296392918 474367368 21047675 117304871 102674125 782508430 472503554 926273704 548960228 983186334 230567977 420853800 227483826 947341675 292201329 308276224 282473672 709107124 114462104 123428591 58522136 664560675 323095775 966190756 879494949 930601376 856252154 861441904 604780946 854608833 329285881 864667906 488168511 668142916 401803308 830052353 9338266 473549791 339983723 524428835 453949972 764905522 474320411 748840509 106047626 641764998 117137309 221377114 116897920 781017071 241973215 733673712 582531188 912353282 345743924 911472680 406758081 571713764 469292120 595395277 59280697 912974154 136831055 828747340 337741722 665183238 590189606 764496100 236610886 785688538 225609866 445952564 2525376 139684876 137771273 374842383 237242086 519588957 142360219 274220075 5898573 562913918 158299315 536814808 129467780 717160037 420336539 608779196 91640515 133107574 103222382 914495991 324901925 439673890 81047094 124743001 5947592 505891153 191153588 927873696 351128020 387553831 339858115 415133744 364911674 600283181 330701635 803044478 510963724 921726083 787413339 868763201 792087001 973444303 851076606 978736304 130624444 664071829 290453051 349865308 133874921 424914234 43009430 70546981 16622782 805573421 652782413 733202983 656015005 961839186 226775304 917008940 17688125 301032335 30878744 998068562 700249442 721035976 136988858 563681692 194646266 392588966 211329270 523335493 87357430 153144430 82992809 218030429 143774395 382462362 12855160 142671354 33946796 911008154 563866646 921755932 84505564 399423975 142811963 331847738 93116533 243410064 111877742 958586239 533360479 880270682 26897337 369872140 359671243 817568660 347040183 557494996 544673751 591933863 586288689 913227635 300135751 585654284 86093933 158894299 24365757 566341344 148763464 867502477 630756622 930871017 353903539 675882643 626806950 782901296 417354223 832765043 390058002 798386604 326663303 937681589 547478159 607876995 348012422 676439460 444971934 775354070 580982212 658279522 189377543 984474448 181213552 865360604 85823655 124463587 70513395 326611261 39524242 44202451 35278109 477903991 333517256 666251141 122594842 650144658 325443462 735448882 396427488 718836980 445227680 703273942 527285236 875969888 713419227 917560313 726827535 780595539 438841154 823441725 572480332 934846101 798110910 875491008 693473381 916916759 497806692 764208215 190171843 460303405 148909250 703337819 183568333 357382153 26297687 380027646 48112893 199225553 24552813 194293596 22077608 592622175 128981017 536260797 132316827 756133224 541435674 746158504 115978969 449364189 394452931 437335486 309021045 628473866 209719477 715975424 168458134 333217142 250378023 479342334 142147430 900691898 848041664 871166694 184408531 248519908 80518322 461871964 390574969 627471713 60687859 914842470 476515853 915608549 66829442 105287668 70598526 209102401 21625925 635993150 243142486 488226745 89272329 345520354 250282795 751803852 83808258 280511112 1342611 983531630 811902313 902411411 513866963 637380236 244927063 638030005 73450477 967489744 244999474 437136302 373470677 374545011 81719667 604892167 377898452 377906259 122438880 624290328 231663714 952955944 719304990 878701076 38847453 170766062 10775713 942718497 432217921 578315774 501138269 947081710 162736572 973989340 392781797 670597751 9440393 772735748 270462076 355718761 113444802 688190102 249285796 373688840 344120649 647809167 406260323 944500374 287491316 540424040 452582801 458535683 279617112 865460445 105540776 717777817 476920574 962149298 375093519 731984832 246761038 820931603 23228961 663467883 337374009 556937791 414406092 777652580 334573614 654442892 339293140 654800609 173980992 528142004 171197912 798287132 174249761 520803322 339969896 764819713 351828994 714157061 572481551 915575601 567568153 948759135 652610795 894388119 428652042 932105258 629062922 991130794 228608698 601203720 184794776 268740591 247602693 360443120 177065027 313567197 166236834 287739339 178268435 337139153 329908293 976194827 536588897 583730456 157990665 377682055 143837379 677334927 405672117 758909583 456640877 822785898 122625806 798751366 157038015 716043586 334942850 998499002 38893617 854612508 525597195 798832787 612852734 643202687 582802333 703026766 585771573 678513334 605934698 972667543 353624011 719001214 212645990 226081670 161638460 434966979 30829860 983395922 94864417 150044064 79470247 175552261 39928800 93107231 28405776 712025301 445712966 769354206 66107543 450183253 269516428 748795181 240567797 447049593 59626759 944569424 765255115 998721627 652243070 905208036 292638187 327655799 283354308 792257438 773006083 808359905 205594116 845690970 25988323 825142835 765118699 797202894 260086877 640419512 31846830 305882390 81150577 796646066 587215104 802294368 600009035 695853902 384665186 527857038 308998979 549874670 471743998 520423382 388221455 585683191 438412348 604021846 591750360 942928214 772106684 881960382 677356536 920943215 705126190 795380296 328823428 771585923 422884357 855002284 842104018 998816894 861450005 912906995 513450448 994213667 895214393 904807199 47028128 624094996 332615364 597384078 22023877 334158035 52284614 152756965 67945720 420356716 340326217 955750273 726482800 856300953 405238313 758455234 469962592 713642946 692683703 804015868 77882803 509361599 459446930 539976770 353320845 500345558 62657141 255807733 237050894 673684910 599519095 996226074 947087414 965466111 678905818 997308155 636448301 729240488 476040921 678377910 554162116 925492175 225549636 504045447 147801324 567062057 312701097 660871478 322410517 773499992 657925135 715036883 62529573 168787786 40651850 890392775 324355849 773114059 608665401 979397523 298117805 494601054 109853173 783236482 119195494 256924316 251856480 629487436 558854343 801426378 658899484 696099158 120558100 624325982 432991635 890952259 701021262 789177165 785635507 999150800 517172235 559324937 381347141 428517434 97362862 296902996 292282409 705267370 462438884 809275852 667708742 972206209 433868009 745336331 274342091 940753670 876329768 983288875 904255222 996208591 154766113 508356254 132452213 931942347 198747433 274487495 55523278 917288670 111361736 186937061 97961968 151854535 41314008 969590445 58567247 780925334 160824005 269934728 92888420 283548400 219449114 849795464 468565976 889244624 418291882 693178360 101939084 672329278 388972315 834675415 821075842 901381455 545952006 880344992 48564451 677798533 310071773 412293924 313784582 511605661 300619825 853023978 797358784 863668770 487507018 857560274 377513880 469946925 289464467 494250093 367153 537822621 33669067 564322902 18881562 64015369 32432188 550558105 433187838 788734208 144459758 382852575 21762254 501341337 315361359 360392605 137986732 175805532 171785816 838409230 733278042 820671012 457239978 496633722 30380138 832125803 403077965 793339784 642064243 692651059 485543042 998935396 77832728 775691169 247543774 632539385 79645088 303304146 268993738 550960877 72098191 891814842 748490912 914051256 610426257 611211700 40182644 911128828 100585662 992809488 124690938 194183475 127841287 924385005 360183051 949288312 678147395 975257873 882046778 960298193 782027360 931183918 862089385 867770879 599630195 910472235 615961718 761371566 135387967 603739144 375211302 843948089 295335008 511091751 457737262 927211037 476820798 516668671 30289052 687460029 273327465 781870643 605512953 626423538 323654558 404802535 345127407 707498006 147604564 934796527 96702913 775675808 117397889 261156173 100544886 991973967 639280635 782044134 160750660 914282202 437276139 812588148 359378035 865603252 386090398 849838723 555568068 929100696 258505522 446736963 201536047 546052681 410365697 873326350 310333530 445945002 191304986 884943902 487378614 939904415 322334619 546470816 57306923 553234043 375065909 688293272 412847634 564674788 449935198 593875573 196851422 842790214 213064262 440420296 279043067 442236741 403719239 540877344 319631877 715599398 602520586 799478944 132943974 994695514 978090110 991059234 108844821 285289009 199129422 475606878 407102418 650826389 89434448 688414336 304294196 414740768 73231127 815049704 80625437 194867330 7169244 525084599 141623313 766131611 645396871 708320291 384830951 884809499 452557349 728322973 440635672 985933392 512671744 693861481 100225516 677832990 249676243 505915680 62863 718646866 53802706 108240547 86691426 693499702 673897603 780966496 240751170 624574011 558775614 988229101 842382987 997765329 462180272 524753807 490988531 882458418 668417051 864444201 271104092 560704653 129488810 204681270 7911888 209070662 113335937 230403564 197126687 278129101 151858200 430387903 191648618 201059569 181563035 314585548 109740750 757694917 19268465 658052528 39279271 42245634 3490850 325086039 68517393 479585914 216756919 566500543 315535796 337044581 9051467 796608930 585846882 809772722 225896694 591256754 480438619 828336471 682796724 843986216 645541147 689059069 420076682 570459129 409045804 612687715 530968398 818841785 52090598 718922323 294263269 626686767 141494002 771508243 531336232 758341489 47508801 348253604 75487753 234969214 200945083 826459582 45085223 93688404 39809000 941449568 73656770 900200897 830209441 849468979 76446277 170288478 120208771 210197427 74875110 998708509 709818431 742975985 120309342 547676927 181169726 441253012 416893220 910664304 324763709 595581412 375044112 729827992 463682182 633858376 417494667 621584845 353668367 456284211 403424600 891100561 427646032 750961653 538273755 604122482 375573555 543100782 170598399 480064862 56376022 535350598 343491917 506773783 335517982 917917970 282682439 469801320 272390434 764394580 8093780 221744485 123309914 302486395 189577235 213755514 74197316 544199080 72689530 993082871 454862183 699510940 236263979 846938785 779455281 851425831 247000531 987641279 949148364 956552920 946706923 981171284 343585055 419139558 60993033 783601443 215798896 943664295 364709171 618557643 423443496 953549602 569531067 616254657 427006653 770019322 55619576 339697736 293283104 363479573 85866674 201616032 70860135 885552397 377732098 856852495 184601654 535063518 201392376 634445926 11670207 146374447 60569931 974745421 562908509 939660401 479960010 633514227 101519146 527329908 147214368 159947119 7232635 541093369 142273334 382389415 113160436 176488616 144992807 329286441 35376851 844292567 778055017 837397323 744543200 829728758 412045914 414236573 394098289 822015076 602646920 848445174 797836160 834006698 713489492 808852446 88765496 559942732 213502136 328985828 153654210 947592088 872500220 892246346 541091562 830721422 320149034 951984823 771252885 817021418 69392485 455208292 99944932 208161937 68219560 685014748 615409953 946955492 935782729 986813700 855052900 879586991 585729954 951613433 682138422 917059313 199576781 571109943 294272021 316656411 74239326 774318504 234364983 581171312 439833727 582055260 7248297 995770608 153658537 723805488 654381975 955365473 235343402 604019580 147035381 781726475 254434271 574058958 43357944 494425165 304353749 838158640 337457802 744826751 507831747 782520336 347283168 369486430 347671490 980971267 826496524 972385444 461938252 652742970 330841729 974846527 345984719 665328358 532146299 897567562 208544763 370191033 334543165 926235514 11646366 283279796 254020599 704630374 374121451 420513532 298609919 389660397 207518158 611058851 327518781 623634444 289762058 633215311 173959805 773021270 666136328 709019151 312704503 417055675 366389878 703597535 247674732 857501839 296293525 863810813 736442695 775926176 83033783 787750894 25493179 36198116 2149510 444119420 178262347 506988020 433130259 601009122 14556990 268100716 164930992 304350964 286850020 516852552 134848819 732053124 454857145 765914422 329617449 708206087 177202598 294076590 69327287 832076205 662985370 726009748 705648249 946707779 69020378 909904076 489108099 674254182 135938255 141085489 25487946 569976666 358897044 527500578 221200546 516562802 313545544 460384077 216144232 895006298 188371851 963966124 383907414 774527810 764226746 985299396 512804445 900364455 305852107 737446264 173136170 507567664 425907096 754850892 653567959 887206482 396089453 811464753 447462116 470182242 7018235 402717009 31871735 211064596 169811949 732090430 519859161 890772876 201433563 335593643 144704420 709961301 649715272 685251487 652781970 919705467 46653333 234986817 160150537 197019821 87618753 781973308 649028555 745812781 356563025 574375922 574045723 643437756 8765895 729230257 32670163 764016843 507662934 644410793 516168140 670336097 81526757 634512745 520395884 661336114 142305362 819930239 758017055 869759411 227919179 795980176 620544838 670246564 50326052 669013580 245126575 336943063 314287630 929307679 395884051 399137110 122434824 706065985 609679763 674482935 314642846 773697321 629573711 943078855 893677791 936305675 827605099 932151178 357725709 452224686 426128118 488137937 443177901 665363346 271272423 980148218 883067033 956569237 761509065 937834644 621994061 771177396 476933347 769439878 456058931 649723198 176642573 908432102 3182497 21274552 7610262 994745818 155113945 947226708 363119991 634939164 72473581 951061767 455985806 491237104 233212930 297647631 171965130 401077342 313518334 582733758 260577673 671758374 16691075 455773329 159556953 359257456 267104204 667910100 27017163 169205309 63340963 173657032 54498278 659087180 191274505 793605252 379468897 772265500 548064400 656829370 429728086 660400166 316018453 872129992 676844932 846128598 21957703 141706657 139671058 288219205 270325956 849211598 646802790 736354233 17236372 393437542 200768174 353438764 340658526 663834016 537697525 973853473 527197980 788810342 467029292 704621046 640164901 890310242 456705149 886306769 789202365 880235882 665435163 736572738 240130342 752677251 198034117 254836294 198579533 458497086 291991690 315475254 16966901 214647858 117800782 280335628 12866745 290842283 154899114 168156672 167859999 670904234 198954941 246173371 81253066 172975342 167477434 830075279 496638502 909317244 178122536 933036778 801916418 862378925 17997089 877125299 149047667 377581359 154598072 609331787 483877129 986258944 558462570 753750720 68224832 750736676 650764367 857705136 605392022 893519462 578414491 960958194 76011120 861467220 576165764 753686517 353987584 641530938 37369297 514942282 422921626 816449148 354079664 471823166 457942910 507345973 360107276 459502332 336738242 767383936 80244397 647797654 322736345 734977900 622065379 667041516 542420874 707461267 10801959 949139661 855546820 983707120 533964116 680251318 497560686 620221934 7184681 443568716 292121884 349340663 219416490 591013758 522195490 762468729 438025264 445907462 180254960 465666736 183578045 605681147 192799689 493476006 418148443 464576875 375517906 644167509 620443793 816781527 239460329 446066017 26204964 91752587 65696328 855422118 526925870 670453500 418916851 955517171 155641228 713411834 367112421 886657172 85957898 778963233 180468789 853529213 268405475 413967765 41894249 743237494 274203886 509325376 244745281 282740376 62278550 736167736 269466017 274854407 205140189 322788737 12215519 47983269 38239383 261501506 141618424 700268244 297769276 541238025 299995144 823133080 336237580 738823211 475544175 697674901 577184219 620182006 540605156 663923741 607434488 943293961 44836868 662349201 648727384 696061908 351839670 717397709 54902561 479325664 404518559 474488700 67983358 204058232 89476814 759932175 669393793 998846132 661321466 932315138 395012522 969552694 109252541 538138124 477748004 590349013 333775189 618224165 74438973 780377031 301461637 784152356 701751686 836663717 74718641 88440413 58610987 535961975 175675123 911316273 52912168 332759228 178344094 757478960 692312636 693049727 96440287 294388996 198939974 234936532 151751569 881620342 207578989 326266654 225105069 466557897 361557841 928812862 383907483 507171123 205516690 267466586 191744731 963261062 961455156 961559691 31987043 82152302 66289102 85513937 8637095 181459948 171788824 232406355 200458645 408720722 364416603 797091857 90477998 624230753 372569828 689352673 539152598 858518062 22577256 675099753 540823425 938236207 535701167 990753848 239951715 921727091 862064348 915540450 314969452 566708927 55887839 820905940 57193319 106656318 66611063 407262194 277907827 706863636 169867042 209308158 89205882 592580527 48742007 427806267 51095428 216121730 49947530 729117239 300606362 429731167 284975473 629659163 224492375 252655656 232248707 525248510 240660587 353728718 197169630 593596897 276392283 613601104 447673841 630511071 127033597 939400260 422297478 924533369 824406490 853596079 477519288 722272838 154734746 514059222 258994375 404155326 227849413 694859188 222449258 554904968 553619984 775102531 175607048 519698721 115055420 610587558 220604311 874000934 143724435 651562891 177823648 231106116 220128446 303267974 185626116 566102264 112550116 899177744 731947982 832610070 251574216 811100231 694901940 923633434 515804944 726646503 266287300 378730871 208507334 839650131 398303309 631808308 502021877 827883510 307148088 413359197 70903123 687512944 473408970 906544052 11698578 275775276 204838148 565126453 504139022 799897748 116759757 414823415 363485534 486492303 310305691 461354928 414271988 607851434 38524414 528059740 411652420 632367507 615468575 670919811 394705291 783417716 144773468 406835865 37295204 112171273 110449481 926103030 885168382 935805605 553244191 628212431 612175880 727605051 366643145 510807960 62500899 324401389 310732647 540229926 286509460 564800726 454353792 463017282 381316295 568828926 176854110 536720218 228885615 363979157 120080785 906611645 508472745 747427547 353098321 923662171 163540771 971089316 13869182 672007280 16739675 152214301 76644272 802549050 28442585 246546558 65340392 629456969 123795377 649478307 198603930 616768650 288915207 409880234 377757411 663949522 465673434 668475807 79612842 649853301 196699083 968213808 584062937 895932196 337325232 650870680 283589350 491782773 397198324 499846732 411373305 528079428 479908722 812643606 486976014 791287026 458442262 993131051 92333083 724456063 647159692 792731389 579213367 647882631 124017871 287820943 155413502 843485753 467733897 834825291 147960078 261980576 105369220 645687843 146160628 190884284 90296838 357191089 281069430 707753763 24365794 721291594 303476348 612454523 559850012 987210500 462328217 507865516 147828497 168024936 91987174 667162844 499406218 881544014 737053556 889654494 736005630 924688233 533871922 769119820 524220483 970795479 30930366 437402460 157337446 719395367 202276689 752860753 68557567 171550915 50539908 639658335 142657309 374790927 272295011 355351983 336196867 506602820 375596752 517475026 91225704 544591475 358249781 663887015 546158605 831781071 10275612 321915178 79270287 941740152 162277176 515881818 229444125 854405313 109187569 153255644 76248271 561084152 95234886 644886472 352494949 511565239 284841961 641719671 181163431 528212452 303428205 798694611 546228076 698211677 557059178 826447703 297456175 382203419 161106687 181532987 120903700 925556214 795306317 870326329 57478728 784758137 544922256 925256811 523852747 867943099 535631180 999060361 750037438 779905124 283704351 938021162 568182619 657035779 249063432 363088509 38806991 274556811 230190014 531879913 512596914 554881012 78564178 321144394 229362763 804279691 390029668 630734121 219612808 332032666 99072926 324717545 104580272 422468289 265620689 849311111 731609091 790957324 773686979 782566559 748455863 959927652 950801420 974207002 46168293 132801504 53975027 564801984 200792157 440636202 129986633 204430440 132279675 227417158 182321948 432911137 401138574 498462156 409535602 759416790 633439802 791859750 659959795 850669303 132458489 272398148 58009306 84628923 75665407 723493271 682527674 927914869 911120498 989123620 859018034 880597755 201276067 911064199 318081202 372906839 24195768 27153767 17926354 390161606 139681389 952684174 159088521 375597409 238614354 316726139 245974893 527899802 432444880 565014234 502747715 913806350 683373912 904095149 788647023 928533892 74766104 485761016 267901050 922076113 785089685 924415491 906691313 950251317 597387328 766407287 269936299 398945159 58808574 859983877 613021198 663922621 148675157 681688892 404942723 781423085 683451964 831047799 134992913 166348387 117938718 889713797 348109915 740665653 546897150 956942551 465155449 617900934 417213645 601007939 328426199 831247077 623776811 980359283 470255559 928632768 677461779 703217072 460566625 952885483 113058342 942050745 718306970 784467681 587433278 614099347 187600958 460976556 430163190 609163610 137002443 208865551 158789131 580591806 159473520 278946910 30530130 318737255 211679207 400803868 275554640 379906730 203083236 684078540 297450372 520163330 238244897 760258443 100071020 690749025 504666683 824592184 26324491 114891457 90589578 842831386 473840750 542973708 64851249 506506531 91421083 380785522 314955770 353445383 52501424 953550910 127496795 897006360 122629847 155121863 84708602 188105155 101472787 842434747 255670163 259994391 3646216 829697439 138342682 343671533 194318904 450422735 445529669 643746133 348216132 915154005 632415802 706216661 112480202 542109527 246308159 534574044 248651680 458789840 352136327 962261422 537740537 917511402 742741314 782239979 166358941 572320649 309827358 519768443 246729451 695933315 105261636 202054490 195515901 588567534 558417217 827112763 671443898 708539109 81968984 305579349 272136811 941402946 418477630 640022337 569948265 851386125 116924403 293998762 240003368 938289878 641513344 717004473 435683287 721447638 565174102 733131644 256250998 293883165 174722193 265500927 107954898 551752220 451706255 700901269 263360993 392906370 246835842 821277325 379378310 469857199 380091138 508660985 324886023 475077335 201093780 975223345 230504414 474262072 7973432 799786697 321727362 635311877 63510915 103468283 1493690 88782666 31232647 473808574 288367866 335979760 112970095 995023324 348036397 937094986 278430087 812276684 338323939 811188338 203877459 727509671 92237670 274307922 220327837 816827565 193469503 848529664 567236632 648746920 343598796 811617219 331647187 750549026 514071256 942314780 836331540 841142976 505363655 587579211 452855470 947343361 460224240 826495446 141072167 547721354 97918867 257099593 226748453 908408395 497636192 740967446 576261661 699102081 605665428 847644766 566524625 839303250 304472251 837608280 313614717 513941483 250814148 645671914 496700486 754702353 190920737 273750722 199408807 245699389 70257381 73243995 33907441 788153664 420316266 788828870 708081948 900148328 309034963 570473741 111333047 331108582 159870957 495707987 108000464 598380769 498023757 750321173 111213157 474413296 61909982 139589098 112084672 501782403 302731150 331426666 54960609 254749281 92700412 754100679 225141066 537973013 85339623 968793159 82018642 677851940 549419015 949033849 717623635 840462652 686216162 976582074 436581888 851019439 513866911 839206689 834792602 953440587 472784003 556643451 118512583 248258589 132822090 905866479 371091855 718738851 102450495 401429515 238353883 247577831 144448722 561584161 347053048 349646687 20598290 884473868 4961909 107268972 56260742 141783081 7140602 530313835 1960393 195147316 73443908 369901015 364931252 453202434 144170443 937230973 883643667 990907604 118151399 518658322 375132571 415286007 234265853 480280139 369074324 641936974 253978058 930094163 508527112 576522614 69294380 371486428 146236623 225584164 120642093 796826925 304146356 590369293 444193527 800101897 586002625 948502616 125425876 132699182 100668773 424045726 96537933 207436145 3473120 516602686 436166963 588747630 321655039 439091272 278183571 347977708 67958719 316105696 198424860 803707918 693937869 853577786 450628902 558188456 298467776 979763667 894188052 936110356 763281456 859448118 75769419 821269303 66411468 903110664 150402450 486173485 144813877 670619237 643726704 667118128 167726399 691846787 235834629 736012420 126116756 365456884 178580368 850682369 424239909 603246032 225709791 823795044 161406877 271588130 250289010 513018637 476078959 789030382 219536194 503627189 363514453 796440429 527327694 896759339 358457835 893692947 232687831 939088164 290787306 830034166 399127253 884333729 340898145 387714904 6864224 557665369 38125803 811020533 123909039 808330775 763348037 881649662 188620386 700613843 578522264 663867968 216716034 802650375 619904325 685049503 64826630 86236026 30526384 544393499 391978911 708987702 140380814 590637798 35436284 728040603 314676459 731561900 169422002 860870232 231237226 257972474 180287636 735134721 179950472 317927729 307009670 982081656 842855869 906343281 266523207 695767615 436755127 894379578 140432498 536328087 304686635 938445835 327797979 748462010 649815425 710031261 267198321 633994590 371686310 450801791 16471086 802797628 238608466 600597513 574507906 904919886 312326275 644623857 234068804 558612548 372955746 726604570 60540283 360453140 322731204 702239876 78947378 79333614 17976016 487947902 475347057 737526912 545724188 811878211 725199999 779687813 374020676 985519733 658509644 802420626 167046467 950673058 885924736 984437871 526915419 756891261 320469863 399594883 240673097 512955728 223707076 641737308 517599903 758110915 219336995 238055746 41464041 778326198 593316410 920058855 913565467 944133044 943096374 972487405 87270269 948155064 464037765 566192611 108551946 648204003 416088761 726594997 68216061 886914368 569222531 796455814 655495027 875717330 102734969 779425504 769746351 831826244 317777417 538515943 17615271 483813333 56122831 126019185 108786326 733028104 449926063 942862426 769827785 872086903 239008674 919422987 839790165 968451577 281510583 949658186 304857633 740615084 199882526 856736409 407647202 417719943 226193186 589851014 220066521 647152494 586320025 658292577 250468723 537947913 135783907 162167155 160028904 302256883 64940601 356900724 82442083 880547356 867288328 954011612 142896068 960959770 303480287 490267802 303171517 700698790 690605424 944833416 271102090 596192351 461623592 967079918 411097075 903155111 725842731 735048907 447455432 618634904 61299599 585341533 517972502 747872593 356600773 738445231 495964964 938978601 924704409 997148859 358775594 663036850 100434218 661440641 512190768 843223761 162272225 243444003 211503128 285878946 131888828 850771925 452166794 526924159 395297568 986342837 45080002 167894284 79793865 120308850 4518546 303134807 171369705 955618099 86523655 506656012 138600781 437808899 368514037 519686672 360094344 575558275 26285571 830048563 682721672 953927968 899381361 968215426 102927007 268186923 133872266 349060955 312757765 321025416 220632127 719544638 673084644 708238959 521599412 924842791 885351546 898450031 81919261 818481163 483854380 618563073 253016087 364208757 351476009 663882521 275317093 542223739 149873931 579223791 220478959 598569929 199241613 400550666 378884788 925420581 358895899 654225959 191370453 852268764 774081445 934929086 28449468 402251716 66679743 782096742 723874357 973780448 563735206 680072354 232435832 586042127 301777437 687447639 55621341 995040592 876461444 931823109 60514290 494652674 4148659 177400598 110582972 112651500 35894301 935048114 710980232 994039052 969075696 996142254 791966353 883935413 766150772 851381446 375693486 539001680 169730995 187250623 16980595 322108472 126622551 370047034 8481708 151866886 75143644 87149484 36888251 569337234 238678166 846660001 21615337 69936629 58843102 805630498 690128628 849576802 458221005 770094550 104755462 231050590 192654801 944243858 59833792 668101030 461331271 870399090 549990652 962841224 653197683 804963514 571339870 923033335 370137184 745764115 508152906 727897060 644254522 768975615 348866479 939279023 235790574 979794976 447336476 742158680 548096291 749265688 443247756 845270745 33707814 368931853 119817050 356733935 287755769 669649933 625745258 791519725 238188620 408556773 251040752 384412244 382973714 835560011 158953772 346801744 298976152 639883469 168155007 324077755 153836364 646694799 376575316 651604915 182125307 731082432 463293581 664747767 45783801 120822725 54687322 927975054 769983657 996579305 114138121 830892300 328975584 905808421 814807676 826642561 755581602 841228582 638338341 843194017 576784480 636330620 36064292 303100097 295060934 916561457 636208152 754072549 660336154 708141155 42013258 867128629 681124678 684062040 543523726 882372848 819581287 873323701 329557292 887912850 358879758 754737857 326309776 853830463 363651451 779629207 318578447 649384557 514550661 910539141 831426095 882799545 664135616 919816105 699371570 975149293 570984065 770239038 527945304 812819987 89050874 726547452 246855095 550652012 118694608 601766122 149831877 652754617 402413715 735430727 480160689 905253848 688300091 979318488 27453138 437012244 165407289 861650952 364389445 701377290 692723465 702434553 513280831 912352994 437830697 530826195 248989142 588133348 232914128 985476268 485562429 691461020 234527726 738554133 146080061 518477026 283026693 528862950 481792079 769131777 546752525 558472034 485345681 986941346 425061059 767861124 127687368 732694008 497833962 633177754 604674704 728742507 108764652 669501262 184188747 462290455 18030413 514610356 248336677 888834060 613519748 657267971 608746262 677585004 387764229 594003392 353866371 608699432 2970848 625701184 123410559 814357976 524791441 541902443 371543720 783555657 417929495 641833358 428908876 650511319 261834681 390599088 356467218 816929242 34169283 316914366 258578699 922801869 420658144 618386411 366584941 792759618 149265904 477734276 19448626 493277970 433209278 743333160 619702343 768776050 411944125 542420427 287437861 599904654 280515718 659223180 421808718 433346100 229484118 569104917 224223501 644479197 343656473 847345899 487285002 792978770 68268773 102846987 51448792 416726752 2035764 860330004 74894031 532371681 368683638 643653353 224566386 665031382 182612319 565772705 89934997 995530344 583967402 790902783 361173514 737491491 276437010 364984122 124170755 862074702 323184058 393302434 313331167 403752163 369323092 831175185 354011170 986940049 148524363 968747689 151732385 805513679 563577057 942033390 185511476 412107930 290277765 927721488 388945362 438392307 249850219 799814379 40105786 97006576 69881538 127970655 75730637 796881713 26022890 676606112 355466974 491800713 248680275 978766710 318953057 750249677 407262257 453145370 368546296 709643447 701880040 997948942 513575186 544175593 317343398 856763953 759616748 777560093 410658195 771057702 70597261 534654500 274940262 870385450 308388065 880270256 658290141 733339139 709393852 737656523 40804406 987662459 411057407 571680948 38271204 800848357 25826642 940577153 824587693 826691742 639045755 920001332 48395578 615751774 450634272 766520146 127837125 292111275 30043152 766347219 119465317 463407309 144106873 627124605 470831951 517341587 305354615 910490095 326417141 334842598 60665267 376580791 224119357 687047087 73126967 418821643 287415832 947655881 493403714 869181231 252207576 270554284 111963707 732977211 54125031 97795816 54826188 149718143 36031451 884951959 105859727 570059200 5683461 414220446 197749911 706072473 142044432 876821699 499991728 561757419 452992413 474725240 296737790 582537130 428104771 579986019 563600356 582778067 288067418 768033041 328835444 623838676 203130767 917523464 781738097 838839157 545925676 547467581 532958113 606250813 536657981 639173460 146008970 149390377 138105669 716309587 496975466 871766775 729270044 943947003 885580886 993733700 571132261 575160245 510992746 973797557 51459591 973702818 9714285 814294096 290238166 335819299 181629146 898013385 722678027 739481268 82402633 864259691 358395317 391668909 14970614 222868996 153459339 594123361 7009586 270193449 199175883 950042943 598822107 829160750 346823339 918327622 887966949 937620438 902751271 938917523 640710218 673103266 201917694 909130325 418287322 460848588 170294946 195957004 68073923 595034960 466856079 605144856 445248364 784463394 720499366 865359290 195491950 224569754 138628637 447312674 240504647 959430218 721477461 822836057 115975683 330364681 193674795 584082398 84771434 413739124 234127190 633967225 268804536 902744176 317024017 996773728 623703769 934850093 424526768 701430176 680478573 944500080 556043059 875451486 726891246 940355176 182435487 968967272 390173050 907833440 892713626 998822847 132527638 307896154 115680851 889556629 575300812 788125914 250528120 902856288 67849460 618514405 597015522 955588059 648497395 685242887 480791812 944177952 30887650 590681325 330143210 669230685 347152242 838052870 231212238 521800215 330510597 403248173 273962065 723971269 45993929 72873372 72680160 518287681 440179812 610642658 218093452 252740888 181301532 838199623 461571161 612569408 330044499 778882014 169105201 272157243 62192449 532392362 421022278 911327464 335722863 509349649 280041168 813756417 91105542 926173195 2787406 990713600 461801609 492661562 340249691 401386452 139126843 277761134 22356343 184189309 55188042 366138589 97546498 786135252 248430491 485083155 139494469 426199559 149508796 617007900 365322785 850550760 268352833 429329321 371730435 489155792 410820685 482912898 250266638 959515197 269370921 424458382 308917963 671079606 339921746 675147462 17765830 549127216 290821729 628440488 104124547 555042383 272097593 650391593 4525075 326055325 259898538 329751171 259996664 438037456 145925924 349734134 231332413 313769551 213660986 552751053 115453069 277374245 237063039 530776907 80502766 813826423 669507607 735544321 262036740 424967181 405522567 876292282 307938596 707055630 337325389 342765976 305219649 737332855 112168659 128132465 108879623 969955476 596965390 981858275 783405612 837713729 748057956 902863972 291874827 977352642 658382334 853350022 49671823 999970640 735105927 925415480 423369365 902787527 355712164 473730456 44922756 238821251 69566057 497762818 49064927 458930380 22652742 563301294 235868368 578618701 261792006 911372304 895674646 909030221 901598294 997345228 113353889 492947558 368449352 610569092 573199824 736893197 168378715 740127715 374587702 494595529 469343821 705111524 424013750 521759565 205195546 904822070 750828689 909332513 296130725 466545660 390652342 961738659 442894580 941781817 536777806 652420359 478694894 687576668 104270542 807316428 775593188 779097066 595629841 853981967 727933635 771994717 493138130 575734473 322231501 757165378 294865532 797518615 493332990 709736027 606681799 748315308 545117674 894008648 463593291 601458479 163946230 539084868 46584385 128057722 59211460 219182747 114017941 796817219 678225588 701756654 84930532 358698047 24575069 70366022 54107587 960685240 830967312 958096963 284868584 799401851 102923834 164910328 21098856 852148413 143006590 708082730 315727808 902827126 278313442 931741571 851555409 928764414 18147761 514248610 203447749 604007847 22667556 396325270 23814916 379521321 299531543 957287988 318475779 494135309 272706591 850751486 34786340 922409888 395968996 644990562 535856677 782876660 736555779 831604702 564245685 816225873 243077466 314156071 248488826 519263627 349943376 873249592 742655690 921861622 309642345 920875932 66653456 261918383 223458704 498772883 108308274 667939435 303610955 522311727 423946552 903178111 229214442 650699921 221712834 548276483 501508674 548253779 107218201 971088026 817059567 837625935 295854590 696293155 248775609 526780140 43051773 685707955 38243977 307853065 213514072 597302266 51760122 819402413 565124666 956619010 649254235 684000026 484632845 872436902 314498354 665882421 419577734 753591824 224937498 811532018 629601086 777571109 105231725 938334972 543141916 902041658 811746654 854073150 729228075 948000834 361660775 925551981 838771265 839712316 817170529 934844250 669099194 896507906 76514915 270122774 90795731 485365671 440420732 690942002 169209734 567785873 179514146 906240453 721905555 896019174 360937030 897024573 405455413 460262934 414813699 643063037 630600195 845047458 360482471 633028967 620103857 709104298 309062120 825551960 299193994 884428558 608914102 794026177 230909409 607404766 420596632 717616140 237022516 477179385 413191594 533662371 154675356 861546691 797531200 832403600 191538081 535079222 73110402 911574032 233209672 885739228 223429236 928433712 732353882 877454495 510889568 942494920 308855333 523535122 289605755 585046385 579767130 621222595 95180330 660646428 96655991 142841734 108921186 849836743 658368524 805411803 163718103 411316366 345713613 863802479 62945240 170809593 120308123 481973257 81084576 101254291 75271060 420708771 97873804 439278200 69790413 175592886 8564229 140914516 110282808 272993294 122805205 207305626 206029683 719761352 192238778 442974154 188034064 518591058 197227874 569890310 568612526 961895942 440451747 863022750 86434218 206954301 94163165 736955042 246665544 649540537 160061417 766345955 702665216 927887341 534886504 882167588 24043757 319295947 71248408 119336452 88074222 893101939 488195323 760424464 505430372 668528002 11919895 104125722 93785601 400253173 250614350 365594385 359089152 796092210 123465271 163946364 37957086 526028439 65001623 863944615 451810190 714150610 181883984 712078239 429208061 473543955 47720273 605337806 298534238 393393121 118717939 551203226 517273904 621353864 552253452 853735892 29290645 179817718 39290874 389827770 246374549 645835498 590010627 760122744 294003162 776532370 350276117 844491249 820492028 964571733 120982023 450789381 105286386 650345410 336580526 705601440 633994198 761647455 328272473 469046477 267862641 353207144 226849330 661193852 364166475 934083334 348549101 714033192 402475278 906228758 336805080 625249494 223823895 831714200 767320299 954769493 411381603 686017941 217237356 893253961 390834127 619190526 531805546 839891642 16994601 908476224 36753389 660104880 118736557 800623729 615579366 668370606 529266058 752393827 365208817 437751271 206167531 282974993 268709421 662287709 201878849 931813791 426550403 653079054 205679161 397614576 54712997 246297059 29834015 35046490 31580825 640687543 337228652 791500323 416124543 912346203 709767414 891815658 423755715 538803096 201414460 923760981 162463547 779547354 66852854 718911186 581324442 742390680 627240716 680573122 262757467 871052313 636149226 660663793 282662467 601736521 189688476 800788429 26753948 576594594 30386606 609152074 371526753 924609939 94696631 691764966 464746227 967029347 685199525 976669133 764851046 884351822 134442571 507710076 186484478 319762100 254260343 741941003 103081986 413397692 372060728 538502436 503910329 734912783 112743330 707744307 611559929 981292072 857316197 916193418 766399645 998147233 224839171 612847800 84077932 550661058 343068030 751011056 86288994 278759120 268961324 626451011 106630757 737868680 540526641 929167126 828444578 963628299 657491257 854624038 344034398 984179444 349398296 729054346 458905236 840422416 69851468 773654006 348972238 964635629 34357401 326914735 326348303 972102651 581236352 961962257 76975445 97205442 22515924 191503189 77592262 319348279 266146191 819593202 34094968 375818976 310520069 783566128 31435575 271750677 164491507 883380779 60957982 192822565 57191990 417292311 261317880 412392113 43169179 208681748 69976459 412531977 20916309 384832975 281997750 662365841 436455475 989172290 90667423 864803567 454121845 729625955 402201833 416379670 387141359 476803909 280006927 882760072 170135907 704465039 251653975 539923236 226181064 830886588 345744833 646383120 596632650 762457930 361158514 626133363 312197601 919896145 738781171 772678233 431943791 935952860 716790147 988455122 982191982 993702174 838531543 904623600 174332080 352849191 342336088 620556521 366348266 834882413 689741419 914884231 448976203 913118944 863615754 880370408 366368063 587037580 308749578 377545171 209718815 934591947 511100212 756511517 17840879 926631891 297067105 953185608 256901155 503059038 247592273 630318883 390329421 726671438 388489665 719433687 250678704 257329502 92239934 153362423 22126706 237506178 121269344 565529469 388160644 411147955 134616563 317102016 76155560 743538224 518103247 831270163 757096089 914263265 643288859 910376299 122455155 504205915 82463565 907084234 239319845 758222293 214397611 225221974 46384007 172637183 66742086 340784867 111089770 118877099 2473494 834792443 337452770 582551371 397160841 503084724 57424735 821039301 81987904 875729668 730202222 843705749 441140082 677191895 327423896 849346992 539599533 846160836 612183617 818943810 350850816 454397727 214298654 375368838 1847066 909310189 885756958 898217262 253542981 761747214 277458845 328200526 258172774 968302215 363144445 882113852 251218223 495580098 348107086 989441609 879516560 995294362 159024643 701671199 108796816 127036772 42518202 492303276 16792987 37587435 6039227 438688041 403182420 627310638 297998356 400260191 134142741 199603177 38145041 92265005 28540130 489556996 320355695 934354381 306063135 583119214 495956382 925199454 378148493 449824409 218891078 982284705 138751629 855855258 296461227 826493147 583435412 684800865 264022233 816182680 560899858 632401890 628676116 643166255 111023615 858649926 403309985 524314953 242038326 834000088 596122435 784306580 358094880 909201371 392711519 815134574 711375774 745817925 715124569 747378469 417282831 671987038 29792794 674698053 462616686 693704832 410630775 955740135 325604285 498453500 326983675 667416771 34881603 119036158 33871040 480124757 336135390 759987386 607708243 812929792 647856281 983593859 462936629 565246867 170951688 291858851 194321425 413822204 282181961 356012148 210194503 669272236 25928126 164960233 158556589 375815114 311928057 637332525 486453369 843693799 620526592 976834705 131988260 551673008 507478183 861054613 138211673 465077184 354216726 493122776 40646739 144828510 55599820 241141538 66442824 269594486 86929274 838885671 28028174 477111061 341798975 486709717 409698943 638794706 274169286 664437308 380597821 976327735 296930675 529211570 261016810 489309890 469626418 585130591 35389351 228638198 159719380 304019598 71360051 648238787 152870460 948972471 470038052 684332279 636681816 958923047 902883560 982495334 648372485 851217739 145142622 650961825 390906619 432848415 185475223 424414737 265504654 883497585 17261529 839959411 782888555 925635624 734697278 849732837 556807809 590567306 491078585 780997993 482684092 610201119 37312693 224200997 42404853 543834836 337468843 860827172 748901244 903362155 657708526 947571737 282457148 459855707 413017707 568807452 500003456 866361329 64659762 284636722 159990850 608277879 515537515 550987568 104146831 201493789 130466052 993652262 93547116 913509506 257667550 429620862 284722701 714842991 15631090 853465403 405855080 444391642 195529451 903840398 208522641 706243452 277470568 517876848 503309054 804169156 195847482 596259323 285687358 382891499 57633390 500408816 358243445 539106545 34069699 396345494 71091178 943527333 552662209 707089892 78288888 415919692 109164746 467698503 282642738 590359156 444963024 964275265 695937464 706310903 694265220 881050206 605311211 908325841 562798074 627875945 69291252 730422441 459065194 866697924 745064267 967511275 436168158 464258897 302402713 793813353 637223350 653334660 492370319 863468823 398380127 902402054 402878587 630933598 5103817 988029849 734283411 866935052 765273937 907184103 182185797 853647138 42839677 88996118 28467041 351786007 144824634 903996231 344517777 901929667 245098024 389126827 182568629 551946729 363235234 623712678 193457557 434069200 35431153 534721680 439972452 954696009 757500391 771944900 198281245 329094620 156857703 559016462 420449394 486709075 80363892 909987610 58193518 735217668 340159621 478080022 354543372 402255531 94249881 943945803 910648027 924737444 531366163 768644435 138586291 996560648 201723543 270899701 86891274 512427275 181070925 438705685 123763723 628960896 486530418 761399238 437339279 998397786 832942221 946816725 156208099 264859814 148450533 197794532 1140065 824184299 89936444 604410330 405399231 546638980 100893282 927683929 324608038 801969173 185700618 972814834 220924413 300822944 281498024 600373364 377767392 675246088 119578380 201171266 124409579 730731547 195070602 605753410 281379719 689363869 585801508 811575971 185730752 643313649 380053942 415093883 61803227 923763534 69146613 261757114 189896753 634673802 388534788 188418816 806049663 534464734 668931205 164776749 166939346 128724379 935479157 33851395 740212829 477861743 689513395 57286525 165881921 119368619 756563638 544721659 546847184 343221377 389814039 51928623 454244284 367729151 744968548 397139830 989294422 323230782 834489822 174503132 703196056 42513166 356051160 147469581 511230323 141156726 751214663 728011217 856383480 541828943 926255942 614553400 899529577 259284581 944011439 842074068 920455606 505663129 541782783 5702534 480496602 59823556 340542696 112255726 502967137 445942568 851894381 535776691 914054113 805685925 985138987 62314100 359000662 315625999 768391326 243968951 911547072 140964439 946284743 835096105 929371489 745035818 970390470 219267888 832499936 122149129 299476653 208488267 259651012 121953720 305730508 182161079 194667699 95212849 686439662 453839873 595867404 523997354 787281542 780243498 800444324 494504082 597500016 513009322 897596560 48681735 557862717 381953645 942433579 187795741 465972027 336736674 539997124 439276200 979962536 927049563 970797809 852963050 860507274 656030794 819830369 558360937 983939574 433439819 780198539 67025210 462463778 197941653 329752897 111960904 228257465 43347098 115155382 18712402 25171975 18308753 224273092 16738793 348124977 237198639 873412462 323494101 387937373 62827085 925970545 438860783 894915857 465076763 811657708 4365865 963875479 364745266 918758190 352070799 919178812 25650420 788175710 192430147 671974508 486923803 748253756 681185388 738845425 537004422 787864809 142194000 491675366 427246057 646111943 625037809 695583693 384788074 610324522 302724198 816622537 14282891 310544998 62157931 728067242 83237964 980870589 773098957 858433173 44415954 736266039 360492848 979531093 266092146 453055723 109693474 923642057 425291598 433065481 350503015 981489287 579085671 609258378 475611074 751739319 175825685 333351455 234749191 785512066 304387136 810035504 36816450 469204994 222793772 688793732 507507695 622163817 126076799 855877730 22865879 699008368 300098595 426911777 304675675 832753375 827577154 985848873 502002331 888867393 756814980 915433689 531662037 851432352 529730252 774403834 739485931 914250598 6503533 898781610 306327176 831345790 233044021 783721837 701123896 706603237 217272280 760634842 315806441 858023119 194161557 571407869 440063846 801328881 475973187 793036921 786490518 857701110 546580067 634812447 456090947 637817697 113808292 498593474 238173260 351090427 239879464 827424182 123454713 482739989 414955124 973110227 120729003 677820162 302530359 576030934 116720661 309692211 271489326 553393902 141677788 642862216 399022229 869891697 84534606 440757876 48452573 703868278 53772572 644853207 395917172 774165797 545274166 738578496 602403961 923518695 208422728 783780220 196993044 596969292 276214179 460523354 277196545 983712379 420019123 809533851 278483508 729301479 541084343 555994351 419389829 442015041 28658323 993290604 345695896 650550046 341338438 544106813 231406670 664501855 133156830 880052597 339298445 818565314 134650491 842124202 452219446 775446911 672880019 797876421 322107674 390212937 5596256 929829460 340239027 976488487 24402755 243948689 38607888 225710932 140277497 908859247 397303466 489738246 161516527 741165027 421819230 547353155 124281906 591567845 167574188 728577271 252864975 569574642 413375547 676529519 601345567 871894599 748326604 953044582 463190474 952758164 712091089 798887274 259638731 400962529 268314698 621687975 92001951 447035228 314762012 579498721 110567775 196834367 96340246 110760833 26261947 640341889 320766644 371509786 284313326 824722999 573629423 721514752 110571739 255014496 164608298 898267101 731378509 995155635 994219763 995749549 520583346 634266353 561452512 937064468 643783691 958043941 223095056 517105050 201257353 466165481 62184727 625128962 86746313 972891999 736276399 803881044 229830219 719013129 530855340 981317051 434034036 444934078 349484918 467863918 274271939 502239493 275420006 884374135 714319568 733483359 354642866 557010513 196304478 346036601 80216718 874696738 438768533 855801991 302866317 993423490 114269066 118713483 7197773 390321199 61307984 381631562 137127618 874288209 351906275 498922890 37207997 274437057 88597702 424141711 349466327 961189747 190439017 603415416 78037296 337576236 183814876 334632103 137279539 179318136 14255388 548661240 317119602 354000021 222421588 258891482 106169538 472537896 109696375 816462768 153256539 541897140 494263886 574365857 181130180 262589829 2663430 442597341 323471695 763410371 319068184 531099462 442250164 947722539 164414404 501663186 196950105 370637901 54406962 500617362 199981007 896649808 37361961 805723650 214983179 910137386 578514399 957284983 540221692 640218014 148565623 544298250 478289604 945907287 159102194 579822610 343828562 995806130 498975789 711602384 154109948 445597286 442091636 725111884 246669641 769986363 122615861 883459158 771020231 907450140 111011492 177811290 1910328 218013172 154323404 674140240 202425377 870726931 468772123 684233822 558229103 828906668 207352250 914183711 604470253 752129030 568386075 644707958 273626679 822026514 221885808 427411769 341044921 596394812 422069597 887931422 296655385 298972889 38139883 688505498 415607505 864465953 533819521 602440384 99777155 230113945 101524269 855222325 337842814 800147876 138322283 540462062 379542627 704548594 517770912 901879689 728234212 846516427 634575540 779829692 723217104 757838526 134951667 787740937 118939354 517181575 133647737 435503723 70584997 371384278 329079272 547417989 428341703 919636607 226854012 321293369 20151027 522773198 271815972 419049892 156152828 828917232 226325265 309279852 144986624 831877764 465201549 845571182 628085681 639757464 520393523 971833087 153821893 279950615 211207561 510344970 305558305 837992013 322392779 746208759 361045519 709259553 327564319 461755636 175795748 770929869 100869028 233581996 172072329 998045648 207316131 740591491 399611474 738621184 199070732 432571276 231329847 589840468 286341048 439729716 393970899 908202460 471595569 784133266 769139781 841015770 533773070 914130454 98511935 682958389 79490827 536917362 463817346 671400599 657109917 666767695 661751268 668705123 502855775 982312917 567148668 791596385 635905498 647249767 41317017 744428153 117219060 925422966 159792174 716278749 146026297 980507127 136612782 989540245 699775154 808786486 362886633 923788985 450818202 984711298 81501531 485207907 102891472 715242605 401413968 753948786 373289300 954733672 316608707 321238877 136768430 563123830 214647324 562901967 56444653 499984114 142134045 710558309 314777304 406618838 247448308 832044231 278222818 670367906 280368942 979629121 456370498 739707197 361841207 835549063 75593199 272108092 73393011 288130532 194346121 906887285 704395086 720626192 462885165 789544106 250693498 718549418 673499948 906237619 261562577 627287284 468903946 482057303 38119416 138994882 11316616 435824544 432013783 459613215 48748590 641616833 244486644 523568395 43307016 471715998 430800652 753842006 559897779 953078772 261622279 837787433 340752845 569663054 7367912 16149861 10648593 32470802 2037334 425462213 308830694 891699949 833132886 991863908 296747961 948153453 56311363 983231516 926109066 967524717 728899174 784313033 702928136 928703013 395844106 923224776 376019625 884339084 324755578 760833423 502189579 955495700 723846252 887725873 395666459 625381230 96807076 326581850 292633112 541061250 535268032 817035954 221514927 305334176 259004342 344415962 224038940 747063330 146698849 854800023 800852066 933609623 484478407 916700517 587442555 628861945 183322881 983887085 557649946 714756758 39890721 628626381 173662797 722240850 229736053 827352965 635763140 998690054 472416784 819506573 781046091 854638220 202102215 884199872 44162187 538947770 280408460 642447232 265958894 530319814 490621887 871266502 75964054 132435385 26308280 190429353 42055267 468452172 401061433 709329672 142076555 730878499 390137349 453031692 5846134 340720506 262208335 868555798 167746017 982335478 656242818 664668761 152535894 554801704 359215312 553608878 522034076 842440724 470402024 964802978 961649196 999854303 99310855 518505311 93759330 274941249 203255191 963612189 918320933 956347512 791425412 968737309 80594814 559471620 332860706 815800678 373573896 814660503 700761129 933433521 625557341 637618699 152552101 304065222 254393522 365012888 73259295 546614655 182993132 385638551 154405353 526785423 499080788 964584184 677513188 946087435 284059381 340204158 259764515 377187545 235507082 273278096 45044322 420163225 399431421 927756550 920869316 955272798 683148126 971946863 542724083 975474586 189903907 445729609 437125608 486895380 182174450 620081091 445674332 663478969 500973308 574519904 37969373 780840058 506815831 628022862 26237070 592292862 2516145 617417884 473693408 758332373 353408114 937352555 272680977 380761622 230973669 437239620 329108526 386632488 130752184 346606913 280206708 319017313 145225213 697843106 441785320 576134663 550227798 651940043 335689763 338045864 28600606 197917921 81740371 163421748 7407177 749142132 531626576 727150620 524796703 882687030 53344313 61701220 4053629 920224327 573061009 837508051 90421263 862598107 322202945 322310550 256588498 913034624 41819056 272669781 248425667 547885965 366830976 878695295 753283645 992677507 832503840 902431631 340867330 747446054 495048932 789940245 159196882 305352841 107979105 455053664 261430428 589655818 296139129 356329058 313496804 717105396 119933309 636395187 584636566 975739656 643510406 680758287 571727753 734261973 445030979 656244644 174851663 406325372 192938899 650940916 159905642 442060692 282041449 515085838 497167581 634945730 358406390 506966991 38288545 445106196 83574002 844323542 695407406 704013798 221972060 972899488 804428008 850906237 718027716 769888697 447284484 472618550 109348448 541216278 306674047 683751866 493353530 663320914 2107933 292182534 65302110 205883853 83929745 671591663 537586812 549207047 185499535 530400982 224245547 492951686 445289374 771782074 550437735 813330911 100822148 927437004 655325168 848411440 386843032 858657761 128146785 616471757 119153374 207240581 76059652 317485506 64786370 276955146 80232790 914162255 835858261 892413939 123574810 390377162 73150121 751755563 644969519 810309745 359947917 940862373 74657091 838558054 571270404 587974168 419370883 499774767 79423236 157166209 76976145 85245353 75925956 181413061 71880316 789133780 303090119 931349133 62540662 458778728 21524045 982409424 362623021 746273501 383477431 580539478 501233295 519355240 358578854 416747330 406342320 724117725 317681173 662280778 291743147 480767254 231980554 995024433 124201186 452366220 250781030 703207135 411073608 534909126 375152919 881847799 100084065 628509946 477918402 975462316 668497098 792193570 27479542 860697892 288741306 719334112 444454523 669995354 173588755 333860332 242340624 538724016 136992155 470788590 174901551 923504312 309533076 456604363 443892995 943759425 869841730 984542681 18167448 381847401 284861696 844169130 723838532 974913965 38340541 490996071 7901841 194488519 122295540 567711321 249019893 341430968 200990714 521244838 433110941 838472797 306358969 678871436 530319971 557587186 159512388 563116430 457557513 592335182 20450265 117034085 81797398 639503364 159670803 899288847 114967483 591041213 199423452 537507105 103657434 402211140 140946301 304753352 13401852 543128104 395519176 574586418 190226258 596148591 322077246 397413506 204651097 456946192 236493559 364865438 232922318 700486621 639666381 762619272 25633162 665952213 463403256 984962224 511668422 636692379 540443008 849756148 561062305 827215429 745064974 942883208 236252452 374636609 156172191 413198652 210677872 507904985 56589261 565689917 54532789 282445873 169587292 752189377 582545878 954587077 441977343 608495824 314068602 632729824 430007485 752813442 575396855 828062021 204184326 299949624 233148808 303660920 245440393 462431122 174995410 195997057 107181266 453466226 361963175 531523820 99088416 136198981 89293200 240035061 191916073 724846079 617348678 914263479 367733282 652449399 414828379 475962630 467469047 656729643 5522575 382797554 182195386 929520694 205745119 428491596 27081946 64452380 6137478 96556300 44988651 631700239 160245770 742085047 572603702 766888514 585744480 668855796 599528833 721389386 230429080 314242825 223033424 293946235 25721509 853805108 473218010 631879323 575161673 636785019 300149946 535137748 93145941 950002893 736257099 996062711 248110038 424988123 89694367 292168442 248580943 862350240 312292995 379403725 374243295 797153323 261094284 781528558 143409844 846013066 153130134 164597578 129257751 915320726 822050722 856157859 681016751 743772627 63539957 388887857 42692002 655999125 228377335 617003550 235850978 732120705 572183010 641577054 590611532 625960032 387787818 433015376 176128510 650141836 258104305 492552194 182403410 435424943 74033754 550288668 281404420 295917348 261036106 678083192 571341008 721657996 601860456 825666329 697950733 734650766 448486094 638671905 56042062 773986443 223954693 514264713 238358584 775410940 539955161 982721354 125506463 713783665 275698275 573944679 99486311 863527685 641647252 739441018 498724334 654526509 201756615 608351030 600532429 706282702 633751811 800830364 778792512 839891140 154751348 993925844 282037214 441661920 152132356 872912505 551446428 915024246 201852304 386055314 62555610 470740602 432987779 827929490 786752261 833338297 116421370 233678316 75858464 132057626 91396642 622306065 7565324 608400416 138793995 375640902 248868401 855256806 668904753 753126448 614596330 899996746 336702413 951932010 246723240 299370346 139459318 798531834 589410234 590551976 404738114 831845860 544917503 574197504 331505356 449284901 368319487 628149450 389615411 898732747 855201471 869604744 521274982 986039567 846992101 897356584 566124734 621888749 58013386 434284478 215191012 928283687 633671595 770664352 576082550 914939005 520636762 936983471 537292964 797157358 375444235 843657346 453536853 768605665 476346096 909073036 108415236 145513575 108659709 858332456 804023013 809414090 338634168 828822636 527589691 854018232 422980555 699065249 99728127 759150978 474269826 544055719 271693001 560279596 17859009 686194293 134030782 839395958 810197341 886537373 709931014 953450314 682467355 998069387 312155056 431855590 98276175 660206559 531840518 919387832 568020154 936460547 667834286 949549807 643208862 735624623 377537384 796895308 211456712 966752741 39603017 98885408 48764684 286159149 167488107 521549274 339035006 954056180 352975980 670278836 315495340 839641833 97208772 146929264 64596830 778935988 117443734 253971101 206746913 316114001 76970670 736529168 225957522 436293954 142812283 876810449 778667981 959605453 797933206 879147531 874192768 984759477 377159489 971967552 74355753 79366216 61099076 316211272 147002111 229042393 170936081 955956806 641134367 652614241 412015433 531085330 247130924 389671072 301444755 772991091 508073131 703951447 279756908 460388792 423203759 777495332 680574415 821372577 351579141 407633006 385596277 975842790 581872317 829478367 715465073 864453817 541524480 675628360 355299139 565339712 89222893 420463289 182313258 840415939 399224442 719691324 481661447 722384417 279729140 929259112 46888236 918305805 11708937 33620613 9998240 618893931 530575791 875917124 396935141 563198924 452497311 663715588 344283711 628404763 265484597 500701088 498363816 690628606 614288740 904991603 14803669 315125320 1247752 710873838 415925497 419042130 2733081 427026425 368592325 405622307 167145270 190136057 39981854 626849002 350544913 500365190 78825084 190087741 51477158 492646305 35956945 814805857 228365806 698119869 655190284 748091487 282416507 306399617 178884910 999508402 110739593 727384071 399837058 874297500 26401963 414803851 323929439 701556550 636917 887297067 451229202 615040579 103163507 322340073 138792699 278212369 127567090 814164792 238175822 462130561 187688711 194696319 14825078 236671589 232091906 400635109 309545076 471776894 440894949 751659524 508183639 691302914 620386095 866916808 781027847 967986336 401482491 867312430 677357230 996180284 912471420 997159394 416829579 595291733 113577971 999757991 807424405 911155435 861228975 947216375 41766448 524824388 376304345 866698882 392198459 508850432 284583867 903252307 747979588 764678291 418822889 655096146 534184847 925444003 815915154 827697748 228437756 991663991 584042632 678644653 664878333 693866124 51897681 524199588 380688268 947566496 127123583 149439114 143680210 220238016 195951551 305611532 9391724 43515468 10972459 25123798 2528956 922081583 582896590 695221324 52060655 229547696 139200533 635703105 213880649 315817517 856310 50810591 22427205 932806445 806371017 919743572 44840691 229980149 176494458 286423048 149158048 451511151 66803840 258125663 94463934 879512223 596984383 858090047 26754074 841335257 719062432 878038201 176688877 563964149 319880838 637437432 309268723 631667572 301082734 442340520 423110985 662812703 504311920 815578268 112703534 674523443 213291544 467968048 306610610 700898067 19036268 20651853 10756349 624648020 315986556 890251491 410697081 527756905 237701309 319841495 138806013 169170374 106518959 427983052 328494798 787552576 474375013 942428866 931278126 945915518 563162040 767541413 476705061 619160154 563285445 885311347 159948378 301154104 128361634 188855598 79828311 284999305 173071854 476258716 240502528 260083934 184001236 536520185 371890110 588197344 214863413 261421069 9772760 270120121 209090483 596787427 527569661 813342532 75187631 816104375 378464999 873837087 716846606 903609756 533967070 892650382 424548008 734468873 678945893 680795302 386069740 921950886 330394960 918589681 596590910 683329693 279155128 804072675 67856692 965314708 465452095 631393218 373710161 797804527 588517399 635359661 455426770 888016301 359869490 521776052 80313490 313470021 257704259 673571217 118747048 731866364 15198342 897627888 243875791 706460904 354987593 408923959 116001455 173711335 94492705 528343401 485929432 636271706 459474885 838247232 61441361 916076542 169762994 216646145 90398322 932592073 786185478 986236998 50798352 870314631 822406575 991926626 506950896 902446276 654336733 955381089 115183778 639933544 247758097 284088669 81393176 200954228 35074748 435371434 198986884 618695433 610412859 750872556 712651512 952135845 901006059 925353604 412102041 831657020 344400045 428137653 91204750 817986629 426823456 635140938 93542097 500516983 413867140 656812467 506309211 929146297 897919919 985892578 284767993 403405005 183775687 586055724 253102763 818555228 184818654 347694861 168938844 421134324 207162828 606711347 308213570 331873231 131939599 546613374 470457822 512551268 25836808 69439170 18419140 874631350 594296938 861875518 570816992 646449775 23151371 849613508 831558385 921731985 232054730 823662818 694287549 847475594 416797586 495279521 113680833 969286857 256159153 432650607 190925135 662599569 332809345 492934141 144819898 533455276 147302748 171339992 125561038 212029716 209732908 614970191 393526875 919323242 227734807 283847349 73280460 740463568 695306686 892275253 889661404 959270535 954140457 979805406 105069057 428359193 163346587 891293199 832337979 930277837 919886646 974993389 283772850 868140828 853279207 876536844 801218895 887656128 235720782 908250847 192675411 700775993 351509062 369724154 161771754 309090365 236818951 252723170 68526306 309450800 163503887 773088792 447172978 791932831 562597014 666227565 532257894 879287886 637630184 864114857 810387052 854565319 592715528 745197597 643289725 783520890 84165122 886433099 825815754 854479878 398189327 899823495 146550308 517493053 422904092 755802724 486421589 715017488 481612077 830767046 560532539 576337776 14008486 915596486 651456208 937699181 760776210 968490854 187006055 689022543 120710314 645136186 123553278 573056650 93865955 348216533 344877075 981785762 71249018 75721837 23102865 427483020 201691991 388736727 319531127 542741565 416389370 480614311 462792577 983029621 716368216 797433146 470848354 636009513 304351008 305794637 207496494 293959110 99568369 547786034 532808102 947942165 395780873 577935385 8726392 851583332 403635801 922601091 509416158 888985479 872476566 988752170 502267838 904728279 415313204 810730820 717610726 822176689 656031661 826968422 26370734 514886514 180868093 628812045 319738813 544927451 526989407 663668955 481496552 910218549 155331862 960864632 567581131 866793289 624803817 664935469 239645894 669889094 591077981 752095998 380767109 749303099 338212435 455838803 108796310 360155592 35472413 572545293 464552643 969757981 444679236 687780681 87371723 371332429 7438768 129658435 50445784 116276901 42961817 492923931 311228481 934855619 428356027 659020648 545412567 547526682 14430620 258407300 145468776 284213323 2814126 344453731 3246646 347565490 343321429 507333890 490717619 602170495 577968269 642386066 272418657 489214096 267227397 981738153 173748655 890779907 155999143 303710964 130372656 987427577 121065090 814925456 164496709 244277944 145568127 368456583 103174453 565447048 335027396 749351211 477692082 919387942 284212642 651949432 631340992 678629197 44292003 330763889 143421330 415463227 322339482 930879520 549882413 818691358 352346386 925994408 100780298 336680757 272034485 333546466 254149978 363044471 14200794 856849575 565828236 997246532 729256675 918723274 316857708 368154870 125372886 437784220 176226777 218085726 200722477 540474044 273058311 723121327 437254195 529056247 519643442 737855483 126528393 138657573 44493861 266809138 256081020 351101041 335624471 728934886 63334110 586896012 393542675 920826579 562037060 846274335 410685054 435330147 70787403 825248787 699250991 870680427 571380631 849479489 501186750 708138903 560087147 992324375 617668396 918026932 212903777 953145079 75624792 647715323 427558990 472985243 432905049 674792542 508370088 565736565 266503126 997163251 677734772 927498489 494895625 989709540 753713744 785024945 40277572 840612187 658230507 765637123 756239981 922901944 783649510 902389132 441832541 844913600 438779739 652490019 323293721 594539510 184879475 519945906 260512044 789851163 758790226 917136646 292147036 827626529 695495218 958395312 65530859 162313402 103082538 514124695 297578614 528331187 17756171 366537577 348119335 378544887 362292097 381878593 153878749 335589174 255258299 412858443 82187335 480308480 360091658 558805459 222820301 884303565 767235678 880751556 104253158 156114223 56282531 749220582 447784376 775926205 144041883 333202775 247474347 808347140 285458987 605930882 565658140 628075703 300481436 708471069 431024493 683566056 344731831 359301304 37473822 312710495 288126321 888990278 659027669 956713381 386225365 409316608 215443835 499262702 305764567 872011350 521423533 596815122 90468943 128031533 82548766 761095435 566333944 757862335 409566552 517427306 221011956 594382595 169900748 998247939 809535268 991977760 152129358 559421292 377758292 438583543 143036571 670968070 33082616 740599053 246708481 659414100 234689483 347862313 73566963 686618893 119898086 458231144 98944106 151928346 130080308 564517232 537303643 615239384 524991286 865317828 416425417 797863476 736503243 763301858 433434009 634849719 318653436 815147898 474376187 520796255 417463664 606936042 474981100 477886979 9053271 462884960 316278479 717819221 534534654 997639035 535222767 829316733 502165657 768491547 311123691 325313882 69414815 447431628 347541295 483173828 242097731 418903738 207336347 549756993 524051267 959890227 821391797 914145675 736525161 913877587 455472812 954868154 640863208 714906425 175879633 525758848 77551793 97769027 36111520 687378487 352498305 928252889 346968289 666908860 481173234 972084763 691248259 897132965 817434573 944043279 244269124 404315413 355571528 433335515 230808069 702441658 518766394 717094490 25209841 684507911 77673364 184740241 60424974 772570081 591364034 863451412 811443844 996493779 360530223 810022858 631972984 694622813 339209133 560121125 105428449 528732509 150017151 605820473 200635751 603073773 213431674 351358263 97184406 473080248 240998420 997577538 866392306 985554552 270588187 724950388 627996772 732342338 70940880 605691389 200458275 924281723 459899136 989001429 161106815 298488613 108582939 419943515 17220712 350474317 349598225 921947591 180260273 274580906 18163666 791385542 595831027 886272097 82431120 999852449 353195691 507060038 250351303 444103820 219484783 675536228 453420477 748362792 375265298 437092426 353723551 728923787 282142824 558680825 283238007 844720717 511656207 749461266 223878753 322637401 207925067 979955566 588353943 715921569 702948614 849597822 534993509 735579285 15800255 102278266 1410436 150374818 125522828 212159156 79729255 434758855 178489337 281698784 257824307 528063451 465076710 701538316 515218108 913880201 144358873 776192639 506253439 650889135 94081522 859512461 558881709 610908583 139295065 175160323 130627813 186817355 40502989 157804155 2138187 651693492 270756944 678823274 184973082 190953438 18989461 277568447 261520254 806748852 88783969 767564882 731794731 830675523 57550004 257279334 130974738 379375526 158792687 480935370 265449559 309705338 257703591 857344764 74386465 600947874 378257449 505046406 114850267 857862486 654446859 986452005 742301250 803083415 637417610 961502408 783303786 888545456 673346317 982204542 555956697 828521763 644552523 943176419 865572890 907236252 726179059 990909989 49807946 147591752 24500780 777429629 475091373 531676207 303568432 665778482 502095162 989332665 407424359 461796546 17399002 407251123 256494310 907346412 221605304 823297119 714075470 995631683 952776096 998412201 364235981 380186968 231803670 915632212 812039722 924675480 7246227 45035593 7463738 403650149 385939511 493110772 206295005 332090425 65677173 692976872 268374662 579834956 220020780 295487135 223822759 954450224 501178238 758972827 137735657 642319162 447777113 591963794 215106007 584391589 502066111 808705417 543261154 630927848 27984174 860866573 10436555 808405107 332156863 958087519 216675275 639481512 318856224 843135381 710751489 988015238 366675517 632660026 433621900 921862661 487537087 819193458 669462168 991776187 335560770 834133413 581795687 774158836 331204711 544105571 255174414 354296861 338048871 872442929 359720549 887709579 206959329 566420266 184851174 624800731 69871394 922603532 36600272 556913251 314617040 624772268 542915108 552343589 222872862 794245353 553930777 794472083 395597421 664169923 126041317 613429874 215765499 337919273 270759684 921505733 282518092 724353282 297647589 946301255 152593442 189023677 6532985 430257081 259353759 856882504 624449036 969538094 552289238 999641999 317539415 511947096 422471460 553478410 128237790 557842277 65211330 705204868 453955441 858468237 214545626 900509226 612510342 781458005 731138286 792834531 697597553 720099963 347895460 984789667 696856315 967949430 429657351 875196260 723793499 832920647 516075498 997196485 778854552 888710447 349864426 420212504 331107677 947360831 553109048 901029370 770402355 837418501 161484205 930180676 680920441 923777162 550889586 857682822 113728830 187474861 3548434 758058086 173487740 277972092 33200322 315254600 104176911 325714751 288221442 626383142 280934983 291287057 34360529 867538264 712767527 791535635 719782014 784361872 524775396 589741033 235800968 519207031 160861352 294879569 212017177 781105772 327861412 409897664 84464013 338830809 187297836 323197576 262833460 730528344 286922838 820648613 343374966 793243125 39872619 343146618 257916491 339023023 260219676 420290707 418634150 966056593 261998225 928476955 498623654 727048845 130343003 694057135 213252970 584684872 313585881 766839076 423430830 543773125 310480309 367259955 10499040 17661487 17010376 147277389 27755100 696191108 416814773 859028904 274016383 611507535 264087253 939227608 633261120 958219236 188220281 749897792 686978080 857106921 762362676 903274524 522553888 823800780 41031812 501491958 9985028 867098828 482221398 800553066 185724306 740013984 266717144 829281860 802551739 906074709 301617701 755446008 497286117 667940655 325453528 944216132 773864861 815372101 442930990 613056075 316350492 705647608 675992111 843213660 122912442 249920589 192436511 893110911 473481221 655695087 90960243 294268564 96877586 703809992 516084105 546902335 175392179 584350557 467312474 678133852 86280754 221541170 194450526 499886214 150952134 858194417 637536131 913577550 363933626 690508554 260027935 821612657 313555932 903736504 153545210 328874309 122487660 822843365 341501797 919776987 455231533 678751913 472910623 760927461 512737661 951852103 131382488 845147900 277095487 800471797 529207847 953454789 829278568 840666499 181990365 980701733 364069664 607351613 244163373 704229905 596571463 869196489 73458233 627892609 187442983 414160433 116693334 736913275 283380760 867986739 783956908 987971518 272015000 496742164 146173166 456038968 321041990 752981513 72729797 273246268 226831224 590772915 565797025 848719260 36015413 766122356 313801559 824878543 251101895 347863259 181845008 367250958 337484452 474350141 244768758 376349501 215318776 703766307 98778932 846584459 574567762 806893179 768398352 775111932 603851381 800363727 144129886 974242978 967813620 999875830 769568354 885219455 357295386 417357382 305741612 578528276 265091479 422021209 218303369 491405217 489013785 562534302 429920591 991933858 947883092 977796236 176827780 294772681 10127327 20661908 6535477 131878785 87987681 218953905 69395794 497780658 142095304 829229050 205215938 830534931 297060228 776896108 279961129 763333936 29208018 738222244 154640221 583715822 389211208 587729949 241930611 638931076 434737872 878139007 279079619 407842353 217291695 854376121 357639391 727046388 203931505 290717675 173568318 181109408 54540098 904296597 265889219 266692791 162946136 755588524 632432331 731314898 485726797 737997776 552370273 816409509 740374886 955697694 574778484 950762624 416130314 626700686 520716392 910247731 250000622 997025542 627419849 750678389 426063082 767780000 260145566 429178326 169644780 715231225 288772925 974106743 602973024 748340868 264705228 781357333 578912073 580189287 544682152 819318875 106613108 917663097 485673731 621946163 179055958 400733559 60152886 220397795 36111354 245961083 211374177 852735724 500444875 584961597 411450060 615226925 270404443 361503055 235756359 664111041 412587788 960243505 176720112 202540870 57621627 986354962 321485610 591836038 179135838 499501679 176074283 948269005 942591532 992782922 610677732 901673491 63025199 176398656 108981869 151145571 147941355 351813344 97400010 879088115 420512646 425763789 269950990 404703780 14056264 753372180 140108226 725454990 519954546 925224964 821154546 855094602 368718014 638276525 191161905 366132943 94125191 691893296 322874224 541668957 200397159 548372882 150736402 956703380 152054734 412616994 64427622 757083704 30445985 930121101 250712869 833602416 403973222 632626453 222167041 828057907 449864934 924031840 513119356 605981375 421412806 670102629 288542757 430657400 313229165 325027387 199418340 604043696 26096889 37549702 28582984 382609545 339111845 820641179 45425250 460333805 242907647 980710363 154826440 727385405 51571217 682611454 364798417 725984310 681126310 725198167 661013810 666952575 363816464 454005612 373592106 812737264 39681059 824881655 352632450 923179241 214457775 312453759 265032473 642111524 439961856 478795638 321695528 407958679 81983825 902745247 219800401 385796414 46331482 639439850 339434003 823899100 588244542 744993383 213954622 583278403 186643730 217427380 146428069 711730644 134372922 182688443 12033491 587615657 508692050 509070727 415476517 429321141 384759418 780465658 21383033 597600817 207777143 675813460 233496580 333343060 234154339 525104885 37785372 202332547 44059723 755970908 737436725 805071173 387773884 647306315 519602225 948423048 407151856 481598367 289895398 747940422 528999538 529569238 170590386 646526634 29348278 719904924 189555022 851969901 375198500 588205318 474135141 481406354 201042757 702836658 334236270 592480648 362179887 392695222 356378004 646697165 323008179 815299630 591991101 873454741 820806156 859948185 128797619 449616158 234657539 327663919 107566038 746240892 390693900 471905775 102325779 141679603 56621430 396342139 32903627 514155907 374077533 861431368 477526534 785563804 340927828 753002980 13535816 377539034 126867323 291893652 232111802 357879340 154126533 235396287 77428764 567651235 465618253 653643804 189956681 190777661 6202887 448208182 283626107 650156603 54296235 913700481 697717095 954260002 866670335 910771037 564726079 584195108 82826797 553491512 42971025 489900729 63222077 510763864 117224715 456157125 169721723 481372064 311453087 763781159 746216995 930307113 703978527 769675513 491281481 581931721 339415640 664786874 382514896 521564389 452540708 773135360 742220692 994062532 240171378 702897283 324241410 825939489 479955380 980812379 936847406 965096129 622183704 789407307 264479073 415796860 339488461 373791264 175321492 387290936 244359164 254526649 196231177 491105574 338148918 863476418 165357661 177540909 72956808 219984171 29414533 672920140 580942442 800902815 648848400 719272703 464357920 700938566 152028510 676623399 175381415 942379475 936721115 972776108 136420141 258349329 48821785 587080923 419899243 541081460 13740315 494955860 138780864 792237625 471035872 764083235 514975828 605293390 187312586 686536292 335698769 526856079 380837833 837878258 405363995 773590600 750507549 900211843 513081370 805516589 146415645 714991442 305610735 333221898 226710169 450842671 14305635 443946142 434743050 445293891 332220144 550150312 138226788 248352455 93113896 590029409 550822960 873466087 170299963 611023484 576649310 650581148 171653578 972953782 844205137 855261106 83792351 135657787 110615779 177873684 107481774 913162295 360313949 683494578 550504729 721801071 575654939 963631036 586626443 931522410 730529116 922639983 341953441 948019555 105928530 844021020 802871417 965350407 872842011 962047157 223378305 953062740 140315528 245459011 116786366 200191908 16274938 617570791 255221182 425881387 143723627 510320130 316122719 844927771 28571059 68052106 50496719 792298810 174048964 812485738 187511239 266032562 186050798 883596450 35484980 454789637 412707281 459812698 153359738 837773545 779088004 958369881 648314326 975839882 78702481 499735637 20333556 425995039 216544567 930707469 369018145 593755386 219790763 903867182 818534303 932955060 848006280 956759659 742641934 787043381 597818492 974985112 852925248 991927038 779812094 876142474 795195923 911250014 881020257 916100917 26540484 476514034 103341192 404863763 79076631 877270249 794262750 829586015 529975307 906791840 419702714 549069715 526074878 759349802 692606918 882308518 721179563 826208747 234315169 656654932 83418382 984803014 481816506 695927659 92048252 165204468 88947447 552575675 96520252 270830487 102254742 392854584 364832865 628924184 564677626 595146263 554435607 818750481 680936311 936672498 825480481 866439122 427229750 719961650 391246471 517141302 408714439 905122764 216766660 462676644 307726927 794044047 227448575 681128059 465328559 701054123 160270102 935853359 544607642 963706120 882029388 970223638 767497574 849409606 683790916 849962759 10824278 595978355 516334379 949571569 837768660 921869262 720659751 806403710 271750927 340804994 215644531 580762165 545297599 793573488 610647070 913546403 91036053 191848325 51902133 694168772 136465453 162946595 122476463 961702395 440671856 729101970 195770146 438879989 142857928 719803384 88215222 883766033 77189786 155358646 110254130 826333389 284965310 664449331 219779517 882994010 88866966 169007351 153825805 241057479 154133930 869450212 491761746 694341810 234568924 955835942 109934187 676350565 298130502 991305516 90510716 677160439 148759827 473969101 99455331 518616705 490553883 834654758 833646556 880703854 195330509 770203152 627189473 670071692 40340793 631461641 531163371 823763030 78471617 823425620 659341445 963047044 102713503 336201742 324952142 706781325 146251969 965948436 16572269 519800772 386362626 649893803 181321863 405471921 272531011 883019480 405602143 955419398 951030127 983916601 771072438 880171240 235128384 710933628 152995078 848426631 432439394 485877607 368190125 775833195 463780371 790411158 212988606 515001799 447445910 989501815 298328181 888101869 343469183 908128011 835767517 903579533 239172193 779820702 383199588 623536632 465629099 820297356 423798242 818886377 612571789 651162063 51065388 446020680 333889521 358757863 38859426 124386610 2499806 735565311 577063160 974030326 554295528 833480984 757196077 898981642 776919746 858285806 290016934 885800885 73458778 792718303 309817574 450918332 383382261 818412057 444816502 677904718 576431368 745768996 275861733 403577878 325752740 557641745 514847159 780486181 11890567 604069883 58967001 644952260 218240239 452513408 434622640 606764453 534379115 641037869 243886873 947337642 361107635 843831608 662904161 776403253 336865313 688668727 634919736 881265063 309866626 843747987 680735755 734366276 652425321 793392512 407187187 943300364 543711984 986157499 956790568 972573172 875854488 996373268 13091548 237583195 62330779 462862547 369120035 942607404 95988 129474757 22498936 107791650 90541613 618600428 269676074 450387675 107357172 659471603 230058768 684847377 116958585 325091783 68211641 822499522 132776961 888199537 567852566 874769517 66104265 407761707 380284812 385628715 382538521 924296037 134467871 851652235 180867861 996830969 113389985 842431120 611289366 783932834 758507341 880279600 369633135 955240324 520269810 697624187 65276146 237932685 67765478 325616377 302500949 929581090 846827685 848161506 408422957 619298549 191049414 517209807 94676814 224585251 22058558 780283049 53503580 807249935 81134592 984202789 585991169 764803773 102979557 472739960 19727495 56979486 10924071 994593306 503459951 779416237 300339171 703572514 564576042 794974088 63666982 885409023 465264814 790032052 761021137 941001501 13154730 353473561 158905120 253892540 163417085 260245170 167268803 528155838 74396523 474620767 412756784 461536149 112816675 113138339 33364293 190909146 62255769 501366231 65710403 118807758 109229583 345650474 171231184 258096984 129733404 373125134 343312596 862088432 636595487 700369791 126540658 179501139 59195964 108785380 97324988 402816953 51595277 334031493 143571335 590966175 521878484 718662341 110634882 798932246 133491146 313560704 94498950 818635433 728552136 897411980 272804564 293241862 266089222 415040123 167664030 613446088 160216203 870064587 283792471 871760018 216391383 613598910 17786577 183086715 7545900 520888054 310207751 747949320 736975427 960050468 439955725 709037840 211877577 901165042 565796223 799196162 476203415 520218326 463218446 737612185 595637041 872864347 341737520 756706452 686390502 749911008 710155351 999203086 643855115 896602081 428486126 901790508 48252557 179411311 21775570 866313196 674420801 862001579 526516304 534244114 501661919 530162580 491864318 831015193 727591137 867300137 294872900 465738800 122651352 256561836 25748886 408699550 51418628 721169944 676852200 842887756 591420176 879247120 399565007 594101941 263161864 339079276 19560765 621882601 12890478 508533603 185741568 529186600 412875129 681680842 129665040 618217284 8795352 939450628 656300862 783248285 102932946 459919637 20816272 998113721 186339611 614265187 386603495 464454845 63595420 148830914 56292234 962720604 276672306 406521502 204376763 686872648 124945950 383030423 153901847 553492407 187330661 250891169 128707503 409401498 226163656 934880065 668467746 809006075 175419886 586325053 406142035 648422692 142769709 917018581 661821097 951305301 936030561 955374587 882111330 896436941 46576645 879432112 739149839 940209642 145545364 541000571 438015704 505930143 206838609 290402714 116077424 408413374 48047102 293310636 24862434 506212090 193899085 255459090 198038314 704658821 229401665 983342797 323640123 407356937 109897951 370247905 149958716 800771667 580361109 658755926 403854337 420621537 78994215 149881282 7579383 598007466 217711388 240640733 183120448 966961517 159507042 767899481 539800430 719889310 458704225 612540597 43161224 761939478 120805022 659044275 487011711 571246739 92600321 245580602 7933706 826692219 693809986 807138522 155447352 694661376 18069859 652484879 47862402 919228613 13316487 738871009 388770417 771425276 36466684 683793148 491094102 507289815 262788670 287010016 286042419 589568270 171159018 795099363 714555514 844820235 535640258 916899044 888391062 905981461 544265166 805201329 21469091 678633356 676771154 939841685 790238192 816533359 56420988 648609507 636836046 923254821 340794878 515952108 178822357 583196987 569858018 681009374 631371642 738216473 432083447 584319077 17747308 918439898 871027141 958901450 275241834 850484446 399256317 542207294 169034480 721904674 169453664 429602258 334613947 614265864 165709429 382206366 42451228 409397878 39110847 440144445 213395267 464873971 195838026 717394808 438408318 793133439 535993287 863186533 623879749 842968021 641533087 995008456 968870359 989485365 320444044 930934467 560054659 920240068 719717572 832821293 274191437 731038249 230853457 332942770 50112488 342826555 38094037 773406095 112659082 673551836 391257263 464447766 352942299 996756698 974821566 983921163 370225898 817870817 625517100 773337377 570538778 793846165 116924943 454389888 63326151 752778138 418324243 464888282 312429261 634997591 351151960 498099973 348715591 976163309 952961097 992185037 415132524 508401326 377624452 382070096 205351605 421073165 296224320 923191041 519937757 821463793 455530705 956798286 373067120 766186007 456075660 684599851 3717989 612748800 327833405 820001380 39457397 282056838 38356794 443172491 250943910 731173737 599144835 723581105 191005870 619635924 414170023 645661153 532284192 744773644 732832519 781364560 36812734 159500768 11371557 978327221 55860632 269263668 263574307 330370565 103817604 403220710 214533214 668620981 203450986 659135337 222424329 431542225 408336795 432958644 7057453 992958866 540435598 565040283 207328443 744675401 38234733 524870967 393339166 667962567 547918444 836659009 592258148 870293527 523724474 825639096 87299773 146734445 15161696 252998421 116547423 229076523 12730042 888739405 305879775 605368559 375292032 695597609 590939704 988629818 138253271 893152777 828217574 882368365 48018025 237004190 58357066 555548866 489783307 690604330 558778546 753742673 205312336 206357015 157644112 420779222 195783130 474282699 5152978 167623511 65171781 929252305 758480457 774638417 229961488 499780494 201872756 241240375 37647510 881404231 786002280 956881875 709886257 738279235 646495235 755303772 208569498 525105110 80097714 767246757 574792619 982199971 68705861 500572893 479076952 956361349 102464128 256114770 116957484 838096888 659484739 998462916 957676589 980159153 89310741 623947551 37996851 269356479 227504673 948429743 473723145 633607046 443105754 949902617 778440720 954053302 716263386 803982848 117921894 265434555 35926971 885435229 97322834 119454154 115655097 839660032 315769475 466167403 413821776 543486736 284910793 719805138 275908852 508786458 174270068 714542232 96495232 800643619 730243819 973397279 82582719 630509465 449392455 956070421 333954872 877030682 596865382 790820538 774502571 968104130 238585133 410969757 245798832 979715268 695327139 918272889 635519147 823066237 319310518 500206546 185252599 361499963 220876995 447780100 349000632 945794865 605388408 856107726 13279437 608888606 340502112 630438214 356083091 888769527 63688795 163385527 134879564 405867154 70438019 863693619 588120130 651528010 457688842 668753640 551670592 721654307 546199838 826989394 167496082 917419503 780620431 937540597 536098692 548158475 344018993 395650655 256975469 257544176 94211544 836945787 583172664 958338319 112863970 190774704 2095527 486976385 268593378 471071347 188601749 191412557 180712131 821975786 45125019 380532600 155711414 180760298 154813643 489277402 147931557 924503466 706219357 922225481 377338827 913864928 528927376 607281178 307709331 451366796 85718260 269766077 46790902 511622315 503478857 760202087 66986661 131051181 127475747 254021638 200215746 647147817 363040193 507161633 385957409 669790127 82879220 121986558 64050502 736366913 407998864 779704088 21745626 665536821 320542644 641268295 334529705 408240715 216087463 693316279 385819081 881460040 541965480 793017580 30541713 328150640 6899441 86870090 15131081 177805759 171206265 306398851 81553878 523440116 123303105 532331798 40552145 620587249 612609824 964931061 32901953 171300700 88555372 539927280 50562300 116486412 28499685 227343087 47310040 838847457 531588295 721892373 555347781 907205796 356156838 806546148 595427120 733576345 731474092 937336697 510216258 839511501 95443437 729033120 534083320 652203294 296724437 801283513 25877212 421280095 167549048 791451987 74213767 715277372 265430710 957479832 293722562 855673859 430671414 516653882 339142299 380146733 32351606 305572696 5747919 861855000 488016555 584821542 7669792 128192365 119592038 606200776 215291258 598417178 347753043 600253260 552228896 802355041 494468635 653471115 397829139 854588932 337138813 658748635 79398707 518526773 306635833 857183254 358706093 997633603 658583707 669681309 94958375 822323353 205279895 330870241 8237635 218930520 5418169 191098703 26951395 897480016 202341091 389465870 337193530 619781526 144784418 693350805 34091225 679524976 272755115 667675850 665110889 845431748 693473109 831398407 118223906 411265608 209958065 518126946 87321503 486591371 161042153 656690323 402002661 609396913 246834210 835580626 99243693 373824276 70114158 180069778 85220496 89784251 64495344 669313300 132281933 991941971 781191484 839010366 411320954 880078783 319391917 779296426 70288407 186342396 2065514 3263558 3000370 388565545 267904916 596339637 11700114 620775980 472546566 854913137 805566414 920580400 235917979 486118101 165107158 306102898 110721932 455139944 334748090 581671144 324473628 651747023 280412513 742200578 440251073 575272749 78037468 698320584 599894990 805588620 498080197 803198864 690034206 750078163 523774618 588723117 435345278 531582443 325061419 705302533 696595543 785486922 364262552 600887103 210740656 986636440 358582080 798126270 715623785 769885090 660253793 977866515 897010428 975175066 25013350 727183140 29386934 686589560 553223627 988717968 427653520 763939328 651521672 999952217 457210797 512942191 78474691 149956272 86131256 804930938 410690265 841365614 619403079 968600370 955820627 964335521 885479892 949791040 833297482 965784200 461953488 816172412 680673026 761657150 596040696 687185774 74546451 750479094 246212192 353375837 65207328 255168963 195349890 377182932 159469088 469384083 60528130 977616266 67211387 260890775 131090172 721189540 277103422 638652677 253472814 479326440 169183644 589283296 345866722 914004143 577677145 813294625 614073718 893950224 169071186 559057098 19104431 760731694 645642591 896712742 871732409 966908960 606949544 769430238 115258087 335319134 139998339 654085574 426228207 706537720 397324061 653574183 204478078 235646382 64272577 303050320 183220558 991538812 672197467 702898951 513910998 684753970 269853652 747601205 21613173 657809676 330993219 433754542 132410382 937746141 674605307 685660809 326551744 948029068 355353437 824290681 370986481 617693114 416102577 556499050 285167274 964179904 494647046 514296917 50661064 439678181 183153360 691142669 146544214 737126383 654612136 987119149 279564717 901653082 523313452 645510857 538410765 591729135 396522863 417202281 273462672 391155529 326128010 563516568 72577424 107315437 1262135 203312636 105783587 986257442 304625388 656614037 428398622 456437180 62528182 969289099 444982778 748622585 515187559 958207550 825181616 895671611 344186463 768981494 640644327 832217809 604797501 982107045 150046816 411676090 183528863 464395370 365107010 750247379 142294812 179161156 167018063 254967710 11980463 419215385 140343979 225974246 50807927 258531381 220952869 510189873 105529070 611939155 587517650 882002961 130108308 556092527 283648863 763800893 657606282 890529577 97733137 855583328 461874053 661092819 625980881 901831748 475227492 944521048 729599790 936844052 105721754 860692961 355910910 371534592 263904369 513033123 509237028 975286992 705459960 896252005 566175322 903611760 487642767 832587877 158344940 537335195 316905495 497953638 418216446 567305845 337487276 600606909 297660728 315861382 213689246 494665150 289772590 982830198 800694697 919540063 816151644 875703067 783994208 900008167 253095066 875892785 420301301 897542583 798992407 932855294 536521517 918093736 619298357 798732376 512404996 632601649 425693940 739657386 257543952 942516809 4358127 963670901 638187028 684292163 501529468 664781769 15149001 896037153 30627735 116741274 36257830 179270470 56384593 81890413 58084724 383051774 341386778 392607584 288168779 538879148 250689917 262362020 249039216 959132329 133368776 698607464 123175494 596662575 24860922 510628921 38617840 596967837 430539969 649415732 299428063 584577638 126932265 214702602 16336068 134782908 18059953 49352636 35502834 591003335 243147964 984009360 146857163 659014952 187204716 216443927 143881565 365842504 132079718 781884208 539509152 686421209 200774450 846332777 424451227 675627334 674488337 761351522 652942998 671997554 605338329 803451092 367597059 421505894 170872733 340984908 281625524 370580485 273506282 559770446 182226834 830189390 629248671 787561255 427190804 886144223 82123757 796980996 226469991 341229570 91602264 888745948 723885058 871308405 213250794 719789040 231742181 696842632 397862553 621710159 41163736 175270089 90457542 98300026 14358943 229494910 34104530 603934734 590095388 865000919 351753917 850704843 577782380 701203423 696458357 948502475 127344427 983095478 541684241 544084357 328544991 763816835 232706170 291049680 239664192 993926485 54719110 675878510 304924029 479030173 343473077 381407224 325815887 775384056 396156485 455347791 360074202 935525755 666267149 748255691 100393861 635734758 428634549 482909531 144464524 709674224 99926209 573875353 116206166 956280183 649903835 949997611 482211187 877863977 377206208 831653388 576815964 918137624 387194256 752137005 13246809 735386251 457886619 817684979 675341943 950724436 682745710 933998569 459598934 533138214 522768179 848543993 383874960 783805082 552057050 877718894 482109906 548132539 241717175 300234037 293231819 471028573 162299885 202940891 33783943 847242305 765676965 779192549 744351245 836549219 724250148 939111749 182446289 300022598 269343402 689283501 176345950 764695219 194147066 931151360 162266568 182158694 122293661 909416316 17342858 995725553 657496921 955321917 391834396 890600987 146890030 737299606 201206942 942608947 193115609 835651620 261972177 433048211 136906443 322021287 105245023 179789057 114269206 395004972 318773768 713056477 645811365 935594560 691201988 990396686 767935882 874581210 281211377 965189875 108970097 970309384 669197967 708889798 428119491 693635009 43732696 488512720 302668041 400369786 378254956 734501456 134505457 900831409 518729846 992458468 472313775 960424726 586253841 740607335 20352856 23360295 18155803 59294991 855946 314857586 33743173 742106979 678931005 999527390 6836160 28079183 9761373 662350317 544954210 666958552 3507445 156673487 11528372 123297998 7124008 228510520 84660701 316024431 113565870 566945413 252145349 726856305 210633382 970551810 496662805 800501506 799615606 900784434 209367410 840532114 7160916 703435302 605564445 801286942 171082983 356912984 19805732 636912498 526267369 619190782 594396954 864099735 223861849 477356123 341066670 457729879 246656300 374985678 363203891 389808340 234619018 708822095 99789757 774949613 372639521 631032334 115340037 216798467 103912283 340905241 241017912 798682990 480824288 873975958 64754891 563813214 264349488 750652950 383778015 637232996 295687183 411079308 220760129 624885118 377297607 685282512 484170766 518842603 113579673 916505731 621007067 942649227 752006036 827917917 509897838 825006259 140276192 303751292 294834758 580060828 91718366 580497843 492820628 661754211 343065280 392794810 212658784 228105182 51191025 723421672 414320414 441652882 367358206 825514420 476811539 722678953 233733979 575142650 331936463 585249165 371405793 634070453 24896402 948363748 569479312 981308752 175918004 833371252 710435098 762083570 335046284 425537980 167339902 349271929 166505623 747212926 353798707 676780807 185707842 661935002 325961276 797022215 671465144 686500718 247903590 414856199 292154279 472698252 46254411 560042638 504113770 777684296 100766023 230796759 85091541 769243091 516129013 920161430 251904055 609612250 603739098 713216431 295896753 595661402 94759046 199911016 187372658 745400501 370846863 768836115 434869355 691759892 587087064 643774457 50939680 649137820 618133122 802252875 801194291 954274291 309433816 922523204 774399030 819450406 640145760 704100297 443339305 578557362 260496822 780076694 568892486 922731482 843260562 924448800 672077826 828298583 319829494 397277512 120376807 856409150 533392908 577363188 224954383 404913677 190305070 961787792 573811130 825205492 414189036 450489153 250640348 262056290 202609445 490716418 211348414 799312090 337280934 746286591 107806265 722114784 64177824 994932460 576697597 753554209 556633873 970564514 362723521 931939540 196174825 869284429 372926977 729676679 386213962 509691162 498987664 648940136 464977198 674739214 249361431 398017492 167981341 253381901 129928102 279852011 110233511 131238091 100243393 599082937 243541103 329440664 295375584 434453576 231029121 714251293 482223329 747789397 390490068 963380938 607632917 688658641 420006435 580731511 357680586 657067256 177862893 654743394 223197736 776165256 636088319 942746828 760895633 840304154 684423270 881590466 404367887 659830509 387237998 677668082 178904815 926105461 362601930 755794977 745560195 985762778 619737728 948516688 45047912 73619316 53012198 788007310 778033740 890509351 839325518 989329980 630066988 723342889 459779458 727730146 153520435 320820314 98449409 471031278 320689873 505371708 222690657 699810541 170110891 514073538 312988781 885792436 629088473 719905224 184372972 489656541 448417933 949480574 460886222 464894725 451451826 975446415 610252900 693391793 116210080 757295827 63528094 648906936 527539858 538873094 90519450 513314495 492788500 900641703 723313661 792619061 341993529 405973323 366045973 873341860 850080459 927433334 17097274 240875082 51213072 690095768 401868349 422021988 84040524 129330882 38390468 533118051 128998882 212522133 112081898 245622671 11268437 47945108 19455981 115127614 4521252 378187686 95692706 448185841 267457134 501200249 410527975 907323534 734678785 779123288 271690405 555161632 111537381 650812366 511376523 740487414 321959144 938069606 540891822 897179200 819389943 968645417 48825765 165329364 97305454 971403004 570712318 977123305 929103968 996488893 677371327 874433088 168023759 690513288 451522822 852454334 21887414 646857591 492042853 899083225 403315729 633864393 111622303 942007206 614196171 715084713 388942988 719451225 177428819 803315966 643021502 991968765 826744569 846077630 402044479 554493231 290864806 656431818 479883949 851788816 760195035 992881965 38306653 695894429 126969223 449079044 47041873 541943957 111364160 775099846 356675574 915719559 90210494 716167457 596127309 794956246 631433015 652865098 496764847 927833920 370940782 987552804 372487074 634211366 491244536 965193838 216765016 665820840 205328189 944230465 624795175 961029680 928680175 999354434 462167887 642560590 195122484 344748329 161697034 183176285 144524934 960250559 248535035 703819469 654077750 758625808 628742971 861903770 515278773 523132506 16820723 954024572 292450377 748824159 689148207 850684582 114374825 927274802 586544560 664585224 231812939 305945166 50684297 842320516 190880218 591937534 47289689 771704697 318569841 411206800 126910006 147516709 85161561 313780956 295185822 605334464 106649166 557703791 371992007 423954047 381424156 541551583 171776332 318313332 69150561 844736345 788477169 952145596 747679875 913761450 113975774 435964741 142833604 704994197 654156781 803034335 526221656 870982221 366726949 785095929 3496248 778593635 620021623 800604548 658274329 750618905 434727619 624360723 405984091 542171061 89166380 454858374 43811189 292056939 208046831 816466867 424811801 513339082 314696026 869061669 47584309 675328095 662358787 752522634 432952169 885046825 612608125 831629335 693481812 770819661 310215555 361663910 15546520 443682605 292607850 747328699 193931901 233092995 137544928 386485803 129879880 369460195 274240184 693442954 649206849 663261451 485301853 934283472 813189754 995032817 968393120 990666894 472952761 884394478 277282351 865964138 276813172 634344517 22595434 952025787 497133391 747898701 333153528 495673584 129810467 421592926 388953404 921021880 808633097 993924955 478483783 960137772 116304073 680020993 35327067 768141650 338531933 656278393 121660116 783530787 676429926 746737792 526818638 557800838 120865804 577533612 319616095 813419901 676737403 842607318 408732777 549912555 69666198 494515936 358514635 872685760 358196391 647301837 437493177 513870939 388940499 850402146 174875516 997667348 36857369 914323377 203821732 905510981 192384326 757527400 96409611 783088227 236700235 361773686 286680982 623161049 351359960 381987593 230031171 368524002 305930310 349521272 136818848 764803881 222333275 549720317 538998001 615821397 303732470 796187108 533600577 789073580 316722100 846936623 560143394 771200332 44911772 469904534 125472108 481090923 185166849 938168255 784178022 963737750 17212866 600443821 342454664 628295929 225766454 394725527 386385757 683507140 564650120 587547671 447700417 659905095 122032067 780151306 483020608 959457648 525161629 913784920 737346719 737469365 553255652 945079879 699868032 878844898 204396893 390489788 113873159 921504746 856041749 962824494 284763478 572653279 240814044 829952474 241867769 999588240 208678872 369661635 289955451 937158185 283318979 609771571 450426139 678585013 300203100 414386958 104608981 855874964 34730316 959120986 396698687 669617405 467244512 584591188 72465061 79862455 24576899 164195626 54026446 625133314 598806485 638137303 182492431 794863761 348937889 623975026 412295885 723905286 534705675 800212884 341096157 848437974 83285824 414636458 46313355 539406146 496580857 866075204 374281272 809054982 478154911 927120684 468124567 693504585 170585290 579515355 509140230 596602746 168933877 584496974 486016817 733101458 164745314 265236492 97278909 380358316 270792442 774703164 164081494 803571611 174277251 386196809 210333593 488082793 95105595 136421187 107156380 147331947 86562354 326896276 270053555 975226074 684592166 929743367 63127178 172541138 90306536 528018670 304351052 406744346 35035518 127391811 9071686 804561268 450088118 548232198 130971736 251571666 41584173 524408660 77561633 617194330 267613077 962068079 42038105 704088737 339309714 561246612 301457657 352724872 183875634 313645983 162872634 963255595 35080466 910418540 692183797 749024490 378980797 871970233 311558564 668514445 271451961 411564441 256514761 408293892 365791844 715007021 212660963 904612196 625936696 923984397 579500467 919033359 898396687 992257036 960571451 980530372 816561924 934869917 294735208 750551871 377662035 868444632 84420353 137820546 44731599 213714055 22703289 407113586 63032682 977139345 890063591 925947333 142616852 221542095 209576559 224802424 204865535 287985095 218086707 432606426 330656047 371956565 273904593 411472302 354385602 397734467 87493335 267456194 194247822 464338415 42589365 804944014 271784149 714749721 62164655 523883426 368025012 991621228 211360974 281863936 180578583 444828470 32045190 192857662 35854620 79787466 57223230 674672130 479935449 993474308 708419946 989759699 734685323 853851518 149766595 262502129 202740152 736704013 456514298 879037714 778968457 857419612 733908150 905216970 613108957 895997797 870967066 875495051 611855953 876290876 730318562 980779653 661552636 998199591 425732255 801583623 253032793 328705216 3045927 132174424 111993066 480073442 172551657 773802457 214475941 827754287 674942004 808684218 226125622 584345987 99038904 212681804 148087680 389579498 146015540 922775207 679009352 990727586 882803225 930101275 590861067 961957788 515721565 584352826 536557963 654272510 17078706 924314480 56641696 640767152 237167270 321252615 161066570 493683400 283286426 980196105 807607148 913231727 279114618 843164716 57850982 391871824 139683429 269038786 138286253 557050269 33029359 296052657 10846803 334506712 30871158 962626983 530112749 667129134 445860516 921837269 272169469 679311348 344408926 408911323 394806569 816550452 76726877 964839166 474221166 975372625 214212757 859525695 339259533 714751960 591169069 971045844 50253867 809132130 125957310 651605517 91772978 321277129 112287419 411592813 316197819 353559923 298953056 542423179 206927730 219913324 5155821 14566225 3945755 730381932 508181751 788803974 17806376 489119288 404262674 509668853 98120986 984579834 552488438 754537763 648535980 908633039 141978058 616117793 467037595 661461147 262415906 865027392 211019019 885177857 233713572 794960530 164894063 168412129 143652230 876197391 299169641 498765544 190132034 666672400 586366285 657154982 402738622 674313010 631796763 766724468 199589848 861731413 664140478 788472618 397665344 764310326 9475729 708752536 317943109 443222423 98314419 347297709 104570963 241709462 146130541 806505367 660024252 815169017 630861095 753737615 443338424 640548274 272311602 753389714 363674597 476261806 240332782 446186034 283368997 472142412 31449168 579661792 276082810 408734627 64994465 820331310 166700334 830392446 308898106 633090085 296803270 797581351 108730024 567327502 388269809 705097271 338486583 383719735 14385044 181466172 170956208 730029666 196240290 345326293 83370077 93596965 36826423 883390139 241456925 480361574 81477849 665940632 525969063 732555436 180789212 322895954 110282552 356502354 204902329 676353077 214353915 987294461 498089921 913707048 521678830 831913073 37206684 120119859 16918180 45944781 40795476 288725674 34505669 303842215 239619927 332768961 105113117 921479888 791263076 853289441 393800146 989182596 972345249 992358289 24262019 718604897 45593632 458711611 338599481 862055902 245504431 309148241 181913783 832708835 770753195 796320840 387772363 760598569 437504411 952078797 471499894 829364292 220296726 837512016 153268074 711959561 402285260 462868588 404665092 749860802 283328462 921009157 16461711 468776075 216305644 774514504 374394764 515579158 388876594 393430201 32821219 47094648 9594041 875402896 324324651 404166469 167848251 931150411 668745690 942787995 620558392 670936969 551200705 718980545 371639019 647205302 234311631 875981615 498405909 634301098 561094162 735009061 677613912 898529257 444011379 938217241 411184320 823292557 385492381 638923824 358669265 805358198 677120830 710807736 683686003 892798599 171474441 547565089 388916074 971898405 708445318 990190177 309008318 457474981 436806119 892768332 627441939 819303034 673775057 745193557 265302286 784176934 625706860 940534592 549628870 930766331 715285311 956584072 15380210 631709425 184636253 909324836 637798231 822357762 455881576 976678817 301047203 653151052 86949136 890934440 98173480 947487886 654193344 783325710 71434340 504504041 129580402 260447007 168958040 281608399 10182456 558557206 426158667 587625990 360078316 405774876 272487408 370594241 312706595 367320964 209946763 860502812 367666768 573362301 22145295 813560778 723832803 732034222 311470632 766403966 98046602 603998403 585292716 604774205 17591213 667393290 435450135 720755238 129115677 777955282 535643096 827514891 289551927 630041531 310121357 775755531 759207385 846482408 614350316 677165287 107275704 841595515 469940012 612326465 100230379 373697923 44964832 812197653 223920139 657140038 361921980 627546644 7848806 87856355 42573412 368093269 156609310 985396614 480646629 846239560 721416870 722237996 83066061 903870070 539828090 835834074 203060219 462205274 443606491 951968728 638377679 669875858 661318892 815534050 784851575 895230887 774708923 792773255 330649931 457356988 184646959 680810770 118119849 819393430 432952139 453834192 236138797 784403943 531021996 901451291 760572396 845048965 161617773 700130093 135490358 228921838 56399032 171123484 155184002 373323553 199508361 625539639 257141714 313058775 84372194 697965422 582140171 724436733 341000155 776781197 151696564 426208183 69720584 509664215 405533178 942940624 40919085 225697889 176258435 370715047 363213242 489746244 421350675 505213696 115546095 981755088 950457919 996854035 674548527 938847577 536270412 900647075 888630937 908752370 450647150 586300654 203324326 893038986 20517871 818946351 121524904 206445783 51867868 593618642 13009166 123488173 92140908 593323451 155621315 636000748 495931252 588414147 208772022 838411297 737512025 816241441 68220048 410852127 204651113 674062561 129981967 243569656 228129880 514543202 61458814 965487242 739143407 863933130 552374629 639058562 612223133 697553223 362145976 977164217 241315016 357953806 324628498 886958999 541810310 863488151 352613230 952403682 310517958 955158960 583459006 979360561 457065716 673361544 603951120 795092984 534333768 847924394 370753867 447128321 111310048 183226706 59645746 559545440 279178794 861304125 398037228 505566352 471364916 479831275 104866476 831306928 204434654 722002974 241183165 759809392 515320844 686678220 162401758 743144682 460067306 524806769 256090307 823689508 131919512 649200870 71824085 382739402 190742225 266070996 160329539 676601773 663814052 671468956 13269665 213324045 79333177 330376320 310406046 748200733 306606295 875751771 540212351 657849585 458508725 751509712 157147440 316627054 223036252 331367564 1023775 318082104 203610077 375367171 112310907 929255057 697999523 869273622 566284800 607592896 247614728 251233351 223960080 233279500 207720695 562018119 107745029 689396705 656812094 956438665 514551157 952345473 921361668 935145795 837325572 909138594 777461337 819756358 483720674 697729316 318082351 463055937 202071645 519269305 275784844 370675450 278144993 921915672 545400103 870479873 780835561 844243458 196113161 570367929 80474206 689554688 155046296 626731611 546747529 754431163 201549042 777816840 425609702 582757032 234345211 962821333 719419144 784519712 72590194 533429947 78567736 555540814 355454509 547680509 248743074 820103338 177658087 324302235 184268365 592504684 297139753 488821681 31999139 327601945 65964285 493283791 463381815 550558575 415421760 581757446 490114353 536120715 361888506 474403870 368426576 418487050 198713478 806668966 202240082 244908289 114588611 975436024 579080037 579192119 432404738 960105272 690535766 774787886 271473488 756670622 718554294 855263577 527956665 703450767 614071714 927675928 433628055 732596257 548444455 960031867 674677375 990034280 590950335 776884528 759249905 911158826 879468763 902995293 707155521 727649383 287299018 662599377 54457932 801943305 87634716 957476786 940159408 994761172 610587836 990757722 65464499 148206161 76907251 381762909 47918381 854362033 699553790 753895108 624000539 725812268 268558772 492530939 443540194 640017917 93021405 253174914 7679754 87341620 26871344 925821980 48659774 642991865 267651321 563197323 179453707 771321462 165275525 747840827 297873128 367891230 190799088 743487002 464984576 539266859 49008717 495895384 479360349 573377336 226363591 708754617 696116489 803000594 135429651 803619512 339199781 670846558 527843723 938689005 480945432 903026096 100425272 261012266 116434606 178628721 95039836 636945914 150997172 706049258 366389417 846672380 706179145 891648453 465217979 752706256 748887272 817765507 572165362 623236294 552395428 991483291 778648395 802947036 507762036 931281799 656792721 698207091 124193407 372413047 36299595 346905979 87446159 142329404 1469949 72071772 52223813 75244453 66764897 309969827 294960053 784598682 138639282 617203419 330544880 500511114 306564489 762857128 311745788 821519525 195216336 250644458 193870132 364894383 62075281 552932028 343714418 941911890 842924986 853843824 602324260 956419390 115163742 322675338 228724286 697616015 177990059 341455249 297838653 659083215 109425077 853312205 346970126 427032023 323252852 928815522 473519338 514482783 48214135 765607289 478655799 639859787 413260103 952937444 312084287 603367762 80409448 558466859 32358450 150990651 54184584 411720360 205605231 635555996 324695756 703086430 611088764 748981945 409481847 909739529 424409596 943178985 355395200 413591683 294438567 873924301 573180087 647080306 19981269 309030878 121027573 212113132 4122788 751116973 548635925 697286780 206869936 900004656 833144886 921092890 650738392 813335899 231600152 433708933 51758877 874280118 210384022 893288960 885896045 936647466 569048347 951470745 711996673 996457825 972877990 976832315 497182586 836134265 668260747 876586971 80286931 112051119 21943063 468830384 14511346 19777073 5024407 619179485 595817349 851397833 96526285 634348832 415760078 624856233 442535576 704143512 311376082 739304673 698120094 701033473 178749011 520620080 304109033 494885025 440997083 950740222 878370370 896245878 192137483 944046144 940380934 970571865 133279732 336278169 320008802 965280210 9912199 76441319 21197473 409832436 116316589 349736950 155559334 850670392 765289611 917933201 485989353 523394021 518641503 639625703 33969134 771705685 57279592 284075486 207591848 840481091 143810100 704791477 120900317 257673880 177201175 415637867 64019708 187644316 9719897 825241876 791930319 797461327 377278251 904476572 51022610 565911421 260905702 268118872 51000993 569156028 229954587 700629800 137863440 659697211 326153455 533285224 278820214 855569817 285980846 857120161 668467765 701831451 39043946 83816247 35119704 461705871 454377575 746300338 545755001 587446248 180087233 614972430 229402974 647901381 194493029 804246097 726130142 795692458 624754488 957331938 224427362 962603109 465831820 968090141 940519745 941162140 617222569 757536690 76230734 275280561 144623977 202538209 100777578 357662043 307172132 575876442 490702232 986743417 593439201 979572725 757844268 848910710 808704063 999566134 937409786 951058064 421966964 427900022 150652323 568042182 112367981 682910899 150335705 199464762 178184877 556684149 467982471 537730868 104802761 839998785 227391325 498741405 231654820 618769033 388129617 823691924 636164169 701352456 8500542 986783736 168393895 859543937 319531397 592593282 543407354 847711863 192974071 252807309 251189672 584596972 43980951 806189744 316404680 852973046 321744311 578861935 333177214 579198626 421292486 646505687 93248031 863553480 733283173 778825603 474076013 917852078 638005407 760479786 88316473 431918545 120791514 595321935 469041234 492815813 150878634 260961051 208202075 960452870 367004544 880732411 289953394 548118923 544933643 953935423 402873223 891124333 129803354 431451292 56051552 168849196 104034945 828008204 467466010 962080836 118063764 434763531 363655887 719626075 597677376 629362961 621203179 930556732 418979920 781964652 484091259 958543880 316463233 383686515 124253775 350561562 259008051 488181108 346519493 709378273 66271834 590340475 271843248 777170227 71042840 308036241 58887419 952285416 879821772 974637428 163900268 867598289 434299434 504000953 368916131 879584664 145975998 314724545 24731336 459456973 357551088 769516322 621127437 819516046 763930712 874828785 88008822 494893380 172702047 844087140 810814555 831193168 45628593 416989769 400016913 925362625 792834859 983866849 826965414 916573280 907018357 958779442 276696264 918381663 570048495 693534383 611917741 895290965 85152373 790860490 542836892 819632359 141945027 806570604 578859912 657067905 198988646 396300879 64658667 703462646 344462637 379171381 46168913 46909144 6823719 129673018 4020115 908010977 93749808 983662132 92315283 597821592 343671470 833162834 259566154 500541941 359073578 870243511 512780719 630389494 308178723 657054506 512596212 896753561 402241497 878682327 335423973 345278418 289489315 713983222 174740027 366317359 122416912 991012694 241880691 913889582 856307603 961346331 744739677 968283810 791434348 866388943 732869607 807951124 238749379 453895771 44457414 996438828 68481880 480735892 93562426 361433581 250700658 813594759 271050381 387028821 142172867 994714868 34229817 772458569 450581574 592760847 1844783 768156463 109418167 264936339 187202101 621140437 324375904 622639649 187649113 254742677 236067039 370706496 206365613 817023350 704658522 741261429 565858549 596263429 341554807 488535407 336410231 824969007 50134627 140370878 60127431 869306836 842676328 914305659 13288486 731125155 98800873 314029033 153287464 963870776 114874359 264336765 2269819 483707853 313538797 607254815 367199859 886728026 50043212 956150826 705561522 733759096 302361104 495616712 445958563 906619459 342836126 826366657 659736883 941413540 205857387 559601335 476277526 782329996 643179567 660859286 105271000 552490529 448027855 839845064 359764474 837520044 800392127 885215518 780218491 800899120 758025624 904054151 232334803 909715043 765749355 924821969 818988101 997853213 405395605 487709718 330553146 917731069 520602780 852587174 671182555 849942942 280004159 599801813 238807271 720460966 526420871 639300152 448790621 618562817 447456253 599538056 463565297 964682578 636625755 756828238 300233534 920639712 500687858 617473531 448134965 662778693 424725434 646751779 222384674 793541754 324034990 905825134 774377239 841249782 244082614 322589410 40481239 424243049 139886635 375669570 223512554 279569617 161200880 535192141 400934180 919841354 756517351 911561168 570729156 964413599 897601982 986055965 76453167 845409209 619829266 771653863 200607503 277686826 128234056 217115489 89723369 376098779 374984950 683992441 523492194 875018853 197957942 611680283 355369296 962648163 321924871 534250364 523764381 531494934 531298490 740626418 562106948 631173406 583002096 965905511 718806962 868015428 59258880 229394667 73704162 722774461 509255711 606554790 563111373 788061153 764608036 937408164 422378059 675776913 586059160 832475919 345039463 522311633 348518175 394670035 268776950 474502297 425994749 872462263 531528269 865381466 84945234 127126217 66124740 937815080 37777888 227294681 197007063 786905840 349170265 580468144 367028570 456805953 396352422 862733641 545561083 550350200 197538767 702797713 92950785 574301876 284336508 544038906 339264251 530967812 226228346 713460473 245202411 448713343 342386248 689684463 354011944 952223771 781389770 825847471 121446153 225354712 175099094 883407162 167406517 627751295 408752275 584717170 438575729 557462994 148942668 512681791 502348304 714152681 95198947 733302385 311506619 327246644 231143834 318803238 120897189 183214285 142187872 452910797 65683845 293998710 191147226 554225854 46134993 623191488 552083060 658340898 234221609 971569436 923850924 941029875 410682859 794039017 616020120 794670522 84094484 700863973 106284501 157702597 41762097 374796746 316904715 472769823 144533017 733650559 432290667 476362095 409893612 417069513 203137976 591936759 491039905 707649902 227385571 993913808 13372806 134482931 2240592 626568846 570953187 772599847 43345252 84289550 51112358 717338023 517146402 618515236 292223175 953581178 780236122 868301221 224130769 826048518 476632995 766764384 223614270 947164026 379372364 408636229 71483324 214043984 143683888 295538287 234289603 279562553 257232768 705313251 573963352 686797547 509475944 930397773 480793289 994209255 149518403 164185611 25096392 612193012 393357852 833340643 179062175 766970214 66337831 882569667 783105910 947681956 328888916 821324388 99611409 174587800 126023540 451217697 166576933 588597174 8958038 899783868 59225137 774227362 622995425 701592352 343861615 861404392 836157547 864567696 613696598 899988957 546219436 714762822 465271373 531508261 315327095 873674711 809701106 861731860 633464166 638923543 543990774 983497713 373838871 538584959 330322106 802231553 463912740 772425885 583872130 621935712 101315022 124259597 75223148 884349809 774443102 951807055 13784362 707901948 575457510 988042313 515994025 543622910 343199525 348916526 17449150 791677704 3754098 659723917 14396118 411611730 221120870 561803148 394385998 435743082 93982049 307857125 92351680 457511070 406656369 458944250 378614349 628772538 34292206 268759180 59926807 328860870 206752353 806542447 105645543 360528803 326530410 764399915 614055944 660249581 639056433 658344562 194471898 216876304 167648985 246073432 204624437 389399630 68132006 765688724 263206055 339074657 239676292 655862798 470306094 782215964 171659442 940127166 928001196 938262446 222841081 421046284 223521403 341997249 129339435 512505796 132403889 721040001 254852697 579004381 527760586 563586205 371066334 846616292 670131143 894443119 321098187 417244559 99277373 775803721 406881119 775456537 338070231 553032571 412651171 643943306 217352526 838983042 626864668 775770260 139257048 987715404 129060349 438813251 126400747 680766325 342947311 875568988 430525740 827627241 580066927 644360623 484043509 731928403 4808063 474524554 243852301 402048708 358449798 811502273 174745829 667674290 145898984 617620024 277997882 665007400 440903265 823542795 776352061 895784457 457405792 846223541 360298691 741935682 701614202 967375069 263024191 596528787 586142797 614706543 7962150 929075283 745619411 879031987 32602462 205054579 17745887 313596459 229172950 435055670 213007638 626039724 185600769 593212295 280928040 974893944 689061068 778091615 661035736 937928425 375397386 378233204 99987568 879167267 351568936 693959895 159832141 580340481 510187623 693984560 274601274 607784609 4283136 101632874 23058108 227160898 9626000 551095377 209036649 279505387 66535137 924871720 14067481 25570145 16024882 224791835 44546403 476469045 87737187 789702110 491638941 817795244 806135121 960145097 735500084 909791938 412731767 950055924 854801900 991129121 422423068 665845566 300009194 836809361 412485489 920520666 374698129 827794045 532953748 935216742 595236910 844925982 701117501 958705431 456676782 902395226 18496326 289720867 21231242 978537041 645073608 771733293 446518696 562091881 439078488 596635089 496401981 724463029 91583094 568062195 30672510 778374567 189292620 589551168 360534726 710110496 496413459 613602157 55934539 696238018 194823320 425715493 321070917 675763226 350678510 518885420 416257105 906573916 653715217 890865715 81632589 590218461 574989823 881110436 570851739 603476816 14729917 331207658 165493898 662779863 238666279 996330179 537103106 930763115 753814297 994414646 190068746 538066626 210014709 873614479 538217683 963877997 111383110 827383087 717165261 957632243 63384446 796928276 431454002 444374967 249710492 674098334 120128857 219989012 149479365 535436350 279292816 784480692 600921363 714108324 484273723 552372452 254613908 679638359 392553488 818265451 440170541 485575853 203456376 987843714 162384194 987400244 417130228 922928268 227443503 898282450 754594534 947209641 250251192 809226117 567189364 932665464 819457326 850536369 180625898 325255830 63844295 233259402 102779665 681301819 560168164 754249922 379684450 494852951 367044029 751453468 562903953 976287246 577835115 628724407 270186592 397340137 32050937 402942535 394204491 724863900 718896326 763535721 8264604 255354285 159353124 540052879 439803032 493376394 30529284 532763942 507943744 549735498 73305000 787789291 3854001 137725461 35188430 750938187 298946394 413706265 100678589 984608250 315321989 982320865 894110526 929828374 737377768 966872051 38623562 505607712 58061424 257032163 67750425 264238888 141092311 958528373 865336384 934773724 164592642 251215918 212591409 448165398 283340043 706026711 616981486 965536140 314343963 431074517 107656253 360593106 358627926 448952661 173733171 191438269 172055697 936175222 524582678 692299887 349826484 660901743 478519998 746558148 477878678 729589940 391254909 589687265 567364986 756860083 420363647 543563954 441527894 972243285 371402621 715041667 257072745 549320099 233922931 972396645 843036491 889487262 295777607 320446432 99614048 850336064 103796701 613939226 66675798 244907688 103341829 628048825 142505655 471836534 205775425 521252376 268332252 723532210 584733459 919683830 694352650 819811085 627789969 925158969 299324888 727041867 316446804 883174083 769251997 837655079 227937764 686724541 674355084 987241906 646791210 934236708 561530223 803975872 297265954 837842677 413883376 592339743 89006311 538559296 429211634 738266683 79714025 92149653 34998979 60108262 47652060 890381086 843663279 866732188 368281925 427246496 373918631 520751241 507877678 595573539 301700027 405018643 139713188 181861266 9901821 366596638 181886393 551747994 479942458 721538916 590077694 633246075 411744522 750068948 683293930 861319342 859705231 906003784 216446666 690866495 132888337 956350986 328345812 872915767 481180912 613118184 464785875 960305388 679739745 760615572 343772199 922116909 760493289 875096008 773029775 800877729 438232687 973475258 605251265 971177643 527745251 610923997 88285040 155519652 34278490 224514147 154375616 248416405 133632698 271042867 99114077 609342630 402337984 983247463 368796788 968417901 466839607 651383334 346838944 555680522 108283179 442565376 286220929 366921063 149922079 606005625 459054689 654376064 20954436 647193487 131015840 173281764 113365166 595341750 67309942 993552064 379861730 401593768 248535577 754189065 383519745 640192389 271920598 518896982 272166519 605542606 463447526 725004050 438799746 621974572 92024715 866593314 575387854 850077658 337990228 397868838 199930116 582602754 108462065 955194567 302109989 951190919 623720395 954396340 708146762 812324273 474659019 607427081 557809596 771481153 603639275 835667424 362052176 496056788 215135416 644370580 223147388 890722718 689886075 877435811 718368784 722760506 581004538 892501516 703957527 766225930 326481550 388059720 182389190 651886205 300211641 771258179 700704352 885935905 825884734 984552039 321206291 777835512 373567504 555725041 336137439 660584101 559046462 692231796 572089175 814322508 171506857 705689058 271869981 867909396 283517030 846455763 591303721 668658497 96962103 996204462 864855170 979151608 675784240 841461492 593408978 715617859 78769253 903613724 9380782 624849247 502497088 723706562 275868990 664434380 541925893 913796907 797569305 960925533 549990029 606448450 497770828 846793873 623930111 907817970 416759298 457677005 42621308 306174860 265231899 802119557 292977748 574722159 494552920 697546200 639676792 908334082 137900502 731159962 508223729 920248790 293496352 942332292 845830209 859839930 30302216 729220990 357176940 861446316 238032473 454729405 140820669 641171024 289549056 318472490 178980817 302887274 75530196 260754044 214121989 278381645 160748573 264202564 77305221 840538955 473266038 939277057 644480420 860451374 635155439 959296440 913320223 960794266 956277321 963940481 853708147 934584540 895347972 989259085 304611722 817013223 780674038 835138507 617717877 883316961 414081639 667010390 199003906 491883264 22512104 754761867 392061821 880545920 647864724 899027393 694594355 710462240 569704933 599744176 458403913 720336769 223995190 430191381 93364534 125687252 121182038 752509190 57436164 495667176 459653324 726769129 622332222 746408076 630943745 979479366 159545765 957470912 511831453 913885856 143031838 324139181 154355404 468646415 231907586 385975379 12049508 534730458 240139519 667658838 571222064 668045841 562828295 809275742 140549305 471150565 267292584 609741837 195993300 338743543 149764753 241736009 161122918 583992602 515864818 575140137 518850708 577297378 66214833 617841460 407076828 499527058 137460466 619621116 600065309 885536257 4220515 842557670 314623284 314945691 233002559 834168822 722559382 793899937 261424693 676285338 537486910 775141466 564312604 635670140 144478657 861273450 540047362 666352035 191817823 270277878 183833652 338074624 52136017 83976045 13639011 353684324 105179580 656464229 24388063 531082069 181443723 674196368 660175581 912759817 100451051 112192532 43585071 458621007 33614355 838690834 696434360 773079197 359715734 570092975 553353041 628006713 202618389 794862505 776101468 909739714 87106076 636281426 494858504 931998118 856290037 869963262 557880526 852471480 40424398 786460501 105369079 749286025 6457728 310412719 163466634 568969839 509937352 825496355 177642382 340144828 7115962 32469741 1834770 192125253 38702506 524809385 105418867 793103863 486036933 694892928 347259657 525498678 481137970 648968549 492653711 548980071 367748891 801228539 666123008 713258978 291475049 777708808 233519299 341095546 186126786 401954282 55315563 666749722 302422697 345711226 129650531 711991022 175389644 978676968 694230619 702472946 689012526 887991563 201576181 644542961 365384460 380233731 224557029 600508542 525418394 902858324 672169606 920540416 592776181 918744813 73240083 492846333 335978658 717086254 208535080 734650152 477921282 808813393 1266321 163358951 148463495 486672902 79747863 844023379 61587635 825406950 614830438 731825856 661825340 745046359 416371706 639187875 544138766 705926734 300188168 751882737 298248385 457617549 139323372 656802065 366023631 548136164 39384704 533340732 181233311 772637037 223217819 582081980 52408126 376186531 214724910 656478914 608062907 740342223 456166690 807732820 728865775 784266988 456004711 939831832 819376375 965779779 712826548 848859401 192603826 801908436 267486874 587288653 492889328 871450956 614716633 872652510 216054388 265039880 16339706 116570357 1779985 894686270 549846830 896289737 119201020 426522972 348261307 785411043 674408806 777778579 26421479 876102998 352085235 936844318 782244963 997591437 103984670 723237534 687261592 836232426 469438121 990518550 630642348 738044696 442995730 520922803 198994912 315704896 215774736 306359300 289322091 848916191 690576153 713594877 25711891 895286451 552732540 987466644 585012188 791573815 96854435 362257302 320757119 992178356 935039713 986909345 658368202 880417536 580250522 702090527 32682751 886996988 758917688 954639522 474241852 640977606 339276256 896276160 434189706 934913755 439804517 715081110 229791559 234288714 190689528 854402234 594197222 708558117 307749185 519815058 360124461 466492052 141376710 270471149 77157507 477966605 402660972 778185196 682182055 771184808 444538704 880871949 672055256 825238758 80348931 978379072 510155013 904911455 161576234 561348309 159617999 254043428 155723832 908254075 898211081 916887421 632803452 776266466 419114188 822282039 118651042 380910253 289357202 530013071 485389730 648257914 599424355 855131402 566304874 832691672 229458785 556485386 488121463 494949851 218322353 833416100 700143876 957807323 650577374 763777113 182584920 865286642 528453043 963072431 468468648 654226911 51754630 715881218 184352992 408868639 92572284 732913281 630715241 719478119 449905865 999460952 400429285 638712169 47899642 913462667 852410441 961016988 456772121 772991352 251732350 492634047 437382207 867501622 605123767 763243485 632338726 761616954 753880105 865637057 335059079 989290642 447996307 742997948 713274146 917482236 608711012 783310937 469131190 812574041 618780654 725878089 150367451 563129541 11216098 983642560 729771308 856678420 129110606 456938969 268576764 314146764 299288826 657975987 104460405 971930227 278241323 671318104 606765869 760271157 56103889 672026233 51740457 464429460 119719754 506009872 326757960 850147388 592330173 972723104 12977762 112259793 38319965 883957841 48739143 292380268 130321140 344819675 331782634 623167056 308099708 762452075 22785376 27638565 21690127 289872043 166199450 901194186 639346668 836915145 781681493 788991371 369782100 638777780 160922011 986868089 929490927 954816238 650444574 853531696 849886336 877932964 684926383 715835270 294932359 336324978 324422458 505509763 82573201 142656617 51544371 681131772 340779847 574428905 218418986 240910692 195849481 879245945 468003180 925711980 837654782 885500204 738154732 880172521 679737639 705691861 555485070 740294104 647926083 657004265 329855273 990207694 515470024 826991473 476756247 809816512 162176792 320769319 301725733 988152858 719106842 751657416 320098354 652691757 393290051 680512445 487743258 642315214 241481717 393107204 340030484 811655394 316227689 467598822 459242747 901057541 175345105 891898721 241505001 357576286 191688909 906876144 270050412 689285485 513948739 615291771 265502562 276210267 247573944 847775362 233650947 856681538 399290379 591272991 149793636 871182845 705351783 940648757 262010537 711561111 438964530 562569925 331761034 725035665 493777054 523253256 331113679 496765237 36076853 865103342 248219738 346761307 7594806 834336819 98076716 962728746 438913550 907532819 639451749 677434860 454844496 836538545 616173295 634027132 385061998 903646234 527622456 701676237 230997957 827412669 352223034 519626751 375413801 900280415 671544597 795608476 389670850 829834237 188231952 791252486 356329238 656345169 159511899 621597114 569777970 994830992 680306470 712581683 609325872 888205273 385115744 824915959 658486136 707767000 340612636 726410243 602019340 742587178 443496219 653901707 607141501 896725585 779832071 905214046 537063838 703934053 539760424 960230918 200583728 902482116 877948739 927939936 582931973 723158503 5954551 949470649 329710827 446303116 33168526 453641415 116848576 343030559 163995430 964780171 252688032 487859313 127509808 346933421 225733082 357170228 198281294 648163916 392001421 877245709 697911642 924918314 71263192 534198685 147803020 981475134 378638199 848005499 445717160 958134113 820744153 865956808 790196489 812189912 755109693 831401469 392266863 726659969 7894184 911043397 447987427 753477317 6615163 577389061 35605343 614475584 92593729 571806283 497277251 861231647 470628301 488844890 216448042 869090874 504556212 529946672 347956883 445218777 207550851 716058500 119871599 166753594 66296078 589269783 553679683 665695614 29026756 29947325 6235106 647051785 457311481 846073411 54604503 809669562 521178924 696041640 38282988 775657300 167253488 823849125 810797251 836096704 274800539 434888343 342790145 397934548 266368323 794046689 320898666 812332378 470725771 764497996 37638463 332191607 42898257 286225013 179551792 440699162 349489516 870557663 239620954 336142463 142500284 807276665 686540595 909445469 900923059 980745746 612188560 762411201 596830563 953805603 230097632 233666430 209793945 677070873 543651370 659422437 572066280 991193716 315439750 765461378 352484803 884233348 237962942 646387188 358468733 651427323 454703291 980234055 521183532 963550810 423313028 812797328 802821805 852854425 567510514 915564053 274569250 518807106 217685294 746987226 209098127 443012625 45427921 425426471 271142984 650038261 237863643 777855575 178783184 562200392 540416452 618583468 357918869 493492353 145631875 943315942 323782143 442269469 187010317 299461341 142979224 843010888 736230476 746000229 267741271 685948337 60761418 468132657 72537561 587437982 223423038 871429411 824114303 934443084 689883212 762743848 390392043 999459319 291100728 435979071 29449010 661716453 647973755 833031684 402313486 447007621 19541533 550417817 236075746 270829681 176234316 988267487 294098109 721215795 212191073 515378947 3844236 852949429 362952432 396872992 82484230 452937279 342630444 667826112 114435881 303120065 202455934 744499348 528386184 534502449 398183518 677140085 130558000 480328716 118693182 284143773 214214061 303806522 218970862 508240341 15465396 701241456 335336671 348648079 281874681 740732388 347920072 469932523 325778720 802093129 510950922 940547135 693696887 973255850 116229338 457740549 394541185 603915736 492315892 728574829 242394832 506746455 226533812 508526488 42688997 316368742 247229638 968438156 602729605 772296110 316201614 777507214 350504629 682387540 247927035 488964992 165785143 754506255 3259391 621894280 455757305 659556595 92989139 373203948 346370582 388305619 347518696 456915394 159728278 759281449 617682256 697464182 538373873 890728880 765374014 984545669 22044469 936084880 726368724 741249558 738077808 862325283 3234786 927544317 791022443 890237252 569144705 804154667 515823793 707511219 632354203 942400562 927827703 950499078 642116214 958095898 386889554 705695796 616352693 785890468 507869313 539720472 162649245 606872124 351095961 944794099 327686637 408997717 386156846 750913470 624602118 999496300 176231228 488779780 475314843 783145908 696298025 840410777 387741612 656814558 282080275 486371450 393516316 488306666 365324166 584542428 367656808 955620931 676700980 700381375 640840962 681017606 140571542 162802788 103182734 391697932 384504950 671633610 669012825 775593378 674137903 904850423 488158515 795081782 781407331 997032149 791213110 872639051 228298919 933795118 64110368 900343974 109447134 553146189 504947510 794948907 449460142 687589908 143594046 510614897 72535901 494950664 178860173 645987519 344568555 839581849 580486977 969524609 203128533 543659371 86614802 506739209 371259144 758928222 668033679 983190806 540733092 923782191 493821641 833367236 3124016 416498152 114338195 191419895 92348021 188117410 28480775 675842835 147937389 810122262 770754554 826488395 699597658 827484280 515240101 788120686 787043496 812587345 274745192 830048989 405333473 601412389 339593427 780151182 446915348 817523909 183510671 828874419 106590158 360754428 119682365 572247363 426975747 556633388 152169907 701210804 182523133 418977662 370306021 600887800 551332561 992551683 504339434 684317105 684192820 758631873 593641881 909233810 767491304 907092735 408889435 557944042 167618312 564074859 279269842 450503365 59205166 396670795 235893874 584943819 125789747 536206037 392422025 940491653 422882494 670824757 491409265 902165469 309401928 377640576 156728792 755070898 456811957 919566748 211726817 928608523 404060781 630786645 77166504 107225034 31456494 271152232 245922778 955257203 601984190 622712213 134708062 323452145 120871494 922918581 119977380 163667603 139154926 204855290 8397423 450922495 107115378 775703888 566658558 893638361 425726163 758587713 568031901 994063835 67577112 82868882 62089212 530787266 303526133 621749819 584758964 924858024 853502154 874711847 274332590 686003407 204617400 627367651 106639464 646817746 143148566 536632870 495649362 659046073 2312536 531246377 500156313 767829015 13621499 154395921 1364635 5317520 320874 488084646 171943245 475438165 418433384 774447773 569301072 815635776 572141238 940460658 583947412 697679387 258339562 731690331 436393455 988358103 674953877 958771115 712438204 864098936 767353211 954993290 923978832 955962823 612894697 845452451 18106871 173777702 72025420 339144072 22937857 277209150 247208990 347172468 170194396 545172659 193322053 353476008 184947955 707924576 199900777 786338832 229123363 442982108 366222967 772348263 602055392 750012695 490313114 843977154 449943953 566551886 545313956 560349238 221706769 521981865 80885401 432992236 243763327 497962301 157731249 271885812 47314724 943161699 772599274 947961765 58971950 851527880 669614640 931990482 398591545 477360584 102681722 383623383 81438724 281032357 105220891 463924735 318157799 614968311 217369294 415488655 39578826 568813562 76400576 734527321 104654444 471999046 110633461 845894944 533370297 718523140 535728698 585105030 180346587 202784626 81319840 724173963 17792940 31675518 21100426 239835956 24973753 661632211 519113821 990925723 497341103 849481905 559764239 588908024 534178715 609535770 16930840 472502958 369862172 637027396 261256030 720474490 305556678 858525053 238387621 328581184 77787626 693104442 176836469 433476089 291310069 862342898 522266054 591439612 448631223 975554411 368806702 870242568 726876107 734137678 634992553 768515046 638925086 660568081 83891196 586868085 8207035 294989031 92504579 215945608 136886487 732366608 312394709 732183822 194249156 237867111 20573969 113702958 35256261 738184175 597396384 852615878 81788539 205411167 52055290 917102732 879911697 940847907 542881781 686988781 543163240 868620727 842415198 920162170 434889867 973369405 486532831 531587115 116102607 494982604 386481217 414031741 55123323 603297181 349021257 532738568 122612772 187487730 59500821 240995819 229358398 977341723 304774919 879809678 295697326 421319977 232540795 387977670 337389817 392578893 20007721 796781281 69939631 262235357 111182340 758759503 82311653 361178994 275419582 949508934 253291560 477084739 458337872 516957690 98289959 775410597 437050808 965618126 591992156 652771234 151879637 557214014 341731259 793549332 108976373 688767397 556543638 595677058 212815712 449091083 137833366 384007983 5067227 405295525 107400331 233296194 188051166 766368311 288610356 510577489 188942435 377949608 327932170 791843303 764989973 809219511 475142652 513973746 219187984 834607068 757446090 789169427 703658072 750134989 228596323 722400701 682178757 986156659 455325748 972247943 782327209 852210651 377127200 881196390 474861721 768752576 378882731 872141859 810260295 995847732 678922410 867170866 80569069 655638402 518636784 609526949 227953169 903025873 356999803 715931841 266272416 477482604 430833022 871260334 174578276 661010723 456757705 747552547 90483181 984827800 770553112 983211977 44071826 828093983 654178698 711650524 707980026 825188520 267820431 695823893 399093301 727689940 245917084 514939809 154557278 705028458 603270301 851887453 331164543 903296333 243718417 273255544 13571124 517576564 195931026 268094116 256560103 822411508 230686553 810743431 39367313 439197801 340992585 452116267 373191037 484875426 77942049 641195227 303417395 981304483 3014211 567987532 267568485 771608927 151256993 241156983 127883410 680405632 654386266 832098984 89350750 569000415 351954697 387310222 359977057 944919734 617478105 829340983 827947617 983451170 785631197 922315744 8240076 489994991 154872484 489386312 375410940 995074708 416476477 517677379 93285901 102282166 20470211 117878316 5949520 889029393 460427804 462923955 90799402 461537111 30982485 423321483 417907130 715771267 3386446 802650790 730961752 996330807 172455413 377896049 268093799 798233087 72094224 954830912 516734970 570850525 345816051 841233876 561859017 646752204 187582547 918047218 441600188 918338432 415890316 550954507 424311995 449106186 198368037 353329296 301144089 975723889 882568917 891446203 75948996 392954146 81214753 348613384 176090944 566290319 6226291 389254955 128120793 885622976 251338776 830066797 331148973 619169001 276070804 846181010 7934268 485436785 322425094 651617459 436550742 868837909 73462703 330895584 293149616 638948178 495747873 563774417 168160684 671746766 442462203 888328369 436915093 552399146 274895115 466468596 41026027 123408722 50853436 201659917 31272449 587892686 196372755 331002667 61894046 315333000 252022280 759444882 519763941 667287722 570606814 847609798 543388488 766009032 655281892 710028842 376617999 493983018 362468330 733360146 386754196 961243965 660380474 829347550 711392786 998591082 103858616 153923332 6721100 300919462 93544086 511535162 139971823 737969491 668696787 838262394 452771238 729919285 460777992 896973749 826360475 951109534 87914700 438694245 399509857 943319568 152419012 801496585 388695436 581392343 128004863 790234401 64058316 544820792 122730654 344478877 135027694 835681298 380768050 496290192 109505244 301024101 143090893 758364021 480890510 820537192 790014164 930196766 708054165 785237642 713591617 747026662 58445635 615171043 339899423 666039013 599761931 953599433 846322386 990498597 235858706 631695546 271337713 974181782 456578727 884288960 29465818 523958427 126795718 583469622 379623372 582475488 341566586 622375182 38978547 788206029 561493927 999330444 11486672 18240895 3990460 675131115 373433724 629338285 353015138 948521441 911078104 912633327 479154126 908892954 273690666 711255610 654615367 967636713 548224011 774939378 24405392 384213028 219883753 416825232 76887839 130937823 34884390 757620561 358215578 896136135 640874204 739813680 638390512 930189657 462561192 996051044 696918920 912747181 543679399 775747449 307723918 905749859 410609529 569254225 465210207 766095689 314733846 566760488 238992280 691981455 421427805 472965574 411632791 853289244 466613789 857691077 566781451 950830070 642739761 939683615 438057964 628886059 539418071 887484269 262516343 909391785 364798390 388362185 130098726 200942288 53204451 468239984 168790814 592457509 493676680 612183099 171040918 739899094 349575162 969727048 261252837 672232388 336176056 529992236 148543047 821676825 1091996 487830565 268170043 499188248 147058137 391715640 266335715 316457439 120168335 967997190 964495300 985895271 763625799 901256216 9682431 590254279 324334374 891783369 610906816 739111981 522752297 745685528 708361804 957826305 952396684 958373487 101032858 525409446 430169454 734014540 179859109 803016878 437483457 570215528 466505603 986740994 349929090 899427368 66235997 178446231 26715462 417546468 250907263 580101420 424144013 456297559 159063291 182256617 106518654 328240399 222845708 954928920 814012042 978257088 412233399 559242064 134657488 797631315 124597447 852975796 719698965 724380530 361751381 507005973 322037038 718302696 101522684 506131520 129570853 738739718 153922325 625576206 81702103 491115669 208368898 853339886 651075968 666521138 562513453 685375302 86869985 499650628 242686142 732565904 49806919 853057901 679103745 855133828 302616593 303780905 117010488 267972537 20246334 950389000 197982923 442161518 94170692 781293478 40637867 803853183 700810645 719517991 17185574 676416057 461373602 974839594 549247190 789281410 201500066 770074358 125663127 549388668 468334807 681923459 454590378 580615915 252536751 405664404 269791666 754032442 709654594 964139022 267227729 401634029 366991002 569226599 92575299 740735571 517376708 649034489 561361249 921729920 694745307 934182685 679957229 709402453 171227167 344760918 248699454 357084066 245011520 606931445 140130557 685830550 665140099 723718108 494716098 975217656 558611098 892658517 536558939 689614907 537698661 842176999 280295227 907775381 271746530 779262896 769744560 947957176 773466499 929641365 199423716 733970230 649525388 950200589 346558157 488704823 7811352 880402132 278284058 391282266 293950768 782977760 311979659 898443477 844745432 984063788 353450657 604088071 137536320 937939753 587472983 919634222 763984475 936553196 573136270 688285588 184201899 978014377 15070634 225531009 121400647 425700562 25031496 688019776 270165736 360014628 76629678 660040676 372478888 962973259 798220531 864464707 628954294 905001739 101302456 692598423 119302236 851060319 477680754 616310225 181829441 926550042 586483535 857928653 512263849 984656291 1985080 885076608 11389336 220558350 135135158 603824994 571478863 792118452 287795348 692413947 437849152 869625496 684963975 707096402 230641132 475411426 367314391 631969899 208761132 545605816 183058980 241740982 169839328 394343140 359439319 778140377 81093563 863603216 743629114 951603480 891147352 934334686 509336443 680989741 331273205 997786929 29692595 934461086 681118064 772333899 576610123 807154921 559201173 642488573 162795568 901102481 540834201 934525777 360623101 785699575 367301222 771779138 643957808 678780288 155695698 264961270 119833216 339741495 67657557 196366169 127715225 219427866 42706848 860057532 15626651 66458551 52788328 222280116 151966361 612019838 86001872 379881103 242742491 915176613 273558418 469603852 372214751 814321955 460611819 595243605 355664209 577770731 407769991 996216532 954123164 996489811 723545235 897611199 15546303 470261349 61040815 691808068 194420225 414974265 361567268 992411405 262915123 455567602 100065632 413931213 244199139 423691629 183933238 410510688 65578419 910108275 246156744 756862402 254685250 440829314 228215584 233193525 102108257 595096007 440785787 519319588 313528761 837142237 496434146 813774939 293519066 584613094 322305761 567678133 469120265 786527345 246069152 705838285 12114032 67034155 13047151 587943240 86598542 441582642 233868703 545568586 36358680 66991068 12158612 838653115 512830209 773029067 228083456 939995735 522846777 524366779 364488322 628748789 430741911 528438487 22257235 857800509 274137720 460432579 12279244 81717186 59327293 991769665 338655835 421993489 312174703 405431983 245323697 713750129 623384594 744877640 223547837 682238593 549375505 606367221 220742039 293024892 86326060 524489511 217739099 750951296 81116634 523929116 474788171 749297270 634826680 938164417 170258249 329254869 165170425 453245973 365911765 573087426 159836335 506679220 99883484 191905965 164638885 856207807 263937894 892723079 118814550 608515728 315372365 482550860 93649486 827640111 82410703 393931824 179527383 523543485 391212415 812568656 267593724 960155247 354089955 890461770 500795529 521721873 15566695 48686241 21619348 883228508 629149446 734420817 53360200 245736341 40156907 625184015 93318392 775188469 640951440 964189018 770073304 835174406 394040992 533819385 522302965 944293030 841746923 974836929 324204888 358116547 132564142 989026805 425785082 732522885 642343870 742440548 39928453 936143046 622246569 894818159 234542277 699573538 575137676 633258576 467926062 825231417 552333653 921221046 129222512 388643067 248143053 711191631 88579760 537865044 493873274 864551719 485943617 620777013 233080060 466172667 99559048 409384702 43597994 303344633 244184834 651166255 441921844 496108091 199193525 401278847 291930219 555014612 276246747 929943500 239563833 984035924 543494114 982641400 751414831 861240732 587822100 921462040 763943172 929859603 720135653 951293201 322271052 977068521 152003981 833144454 622581914 982758113 182744575 290629587 265048856 292222605 291767984 455448482 207795860 213541259 15065884 97867144 57924413 297929372 64584157 636826207 544781218 608645261 232219130 280555743 205586616 320817111 302564612 856689638 509425972 535029323 96410812 681564773 124085045 809950897 202475715 588711765 74427713 492318805 331315543 459212960 77899325 964797720 877979362 898039042 336740057 504805142 434416727 905954251 93842551 893849849 536685176 861822887 585158242 927200999 302524955 905881416 347394754 945079139 108558543 872291104 856170487 884235324 860672493 928521198 426124017 769334849 595979294 876391295 767937781 779353910 553663458 963464742 335770712 892804666 78929040 418161013 340852591 596360565 460006889 766822288 144801472 527844301 161761594 618101454 441494780 938493790 331793729 831680139 133358915 621868641 399630365 995634071 484092783 725103375 111389305 235321893 190920027 993224848 626554887 914304885 408146034 494432847 479508707 697371145 547466215 571355970 22377004 360893668 288774052 856624581 73766732 286917567 38661498 917139301 349055691 966077336 532879210 541686481 123717821 354110836 108072061 961514329 636786896 836146650 264809599 969330980 431305317 998469809 794522076 819196111 757230353 952015293 388959946 726440612 153719413 242992325 120336388 952830147 372994880 796441662 606740893 960188348 628687132 636780356 598019260 728811144 538783057 858821057 502115040 649161584 285232624 353575449 204443397 389397150 208596897 897367394 38158996 92695957 78737641 670342682 270371899 797460377 509573248 998649543 761417630 936656771 250809277 461809495 102137641 803149106 150498649 559143073 459967185 939769666 218214906 828783906 490083668 559350993 137190736 868615531 214265249 849938667 30318187 601498780 244459308 458008330 21511105 864167703 520432456 940526539 170427135 703979448 609004885 887987835 336812063 520658020 334358441 621704679 121829395 973890658 140264444 652942147 571500090 731585102 355141459 752921941 33023786 96529726 79141395 754299062 65094270 733133295 167477008 305433704 168613699 378906268 140722371 524139323 251305644 747976834 554228283 604583835 184632422 263553206 260862938 892233133 626566179 736668874 626435882 688758755 245107036 814324528 637460516 736773565 685444373 854116329 192523179 855559709 197155045 433636271 305903407 682993738 590576226 691633418 124277893 483686737 88061088 318959846 165213682 560347541 320187316 423052653 208508755 685862023 487349304 850961496 449056354 935213030 393698645 428002414 295185999 456086629 363629613 439210512 196459006 585039613 177468285 830524545 594254658 809852344 492276739 950970828 228260324 468140272 87394803 203818120 66620909 218808099 213386028 590927115 52324631 469881331 75490744 837994011 599352092 838375647 400184441 670549299 86262654 332332312 145595168 203293641 142018239 407461272 24669998 277026018 129019951 907941066 72191897 629677640 414255917 417698653 211503962 329708526 43736485 358348719 130153523 500505535 186371082 410293976 192730203 796666313 387523047 700796885 440263061 954533062 664500221 763276315 488626359 599885929 121211375 265899013 198967306 341594205 144492834 221549334 220901791 907635147 158525239 179370506 142378328 723848582 344930585 752137121 428897928 536754748 300901213 422599115 323084399 940704658 662221885 915600287 461466591 503626307 1698104 189468919 54040100 901581944 59514788 269557691 185560064 816290469 789081689 835168954 233328564 807849365 280449713 401395817 14949871 783449419 424467870 767014337 485998562 956774887 72236385 834902793 208575613 365073477 122400522 595352534 59402806 913379454 20069302 236071340 14567113 346775291 232801927 349085481 4369383 838875246 205935992 902131157 769655761 939117892 809211107 886156308 558094959 559163013 117130066 562602290 554210137 557033211 369385440 566817522 198691670 465320128 110622630 759082337 324032378 438815885 342137005 981397158 394769486 571970357 227191581 874170325 305614627 407185468 368357764 562989103 385545174 527654900 356089995 395383587 254642641 915704827 417147803 692465152 461302011 541455674 298234131 585059018 140077181 256998391 11237111 281695634 58033832 68340443 57666534 58001320 45735708 919701785 373535828 639177995 514625936 559240181 375203409 490007113 202425389 356326243 166946755 525395153 437746875 697626229 300352095 360977185 186857119 294858199 196761548 968180373 536441864 791565657 345209263 514422251 67598026 212838606 91969262 884722020 312191281 498048470 72573796 303486378 282583167 474636421 253747647 738158347 477048350 607846525 153759446 433922955 42363393 560518237 461593110 880178934 305778586 358027245 161361467 818273650 649881857 828665612 131628217 172679516 14714983 451936564 403629834 774796682 377704285 497229852 119497821 175686105 172158697 964087404 592375357 642938490 424756126 938574338 349674164 397127115 389606178 844294009 344224790 552314506 269448569 446175720 335039227 501767801 231023980 329005272 48101237 466236402 20395375 946152453 837387652 904065791 811483336 819762781 504356336 690515096 577896780 814411030 371891659 483719772 297007770 358994800 275143610 398502125 182402187 902168671 718540970 982538455 159698940 994694717 88868875 922717792 123430869 256462775 71176107 611249448 173000026 509937480 292955165 855750896 103119745 219159891 36151244 839280404 368055889 838490836 90544647 923208966 723676630 979738091 200033319 909567276 568607160 744400504 151612444 895673096 533339887 612233049 405631214 493305622 206401967 241152059 159140222 579318315 298809772 692266163 681156897 967746791 594271554 920899233 423340906 576968789 56777401 905358993 683154229 876135457 59112311 273320698 244270484 271008229 128542394 347205744 41547374 507983888 475522220 935100704 388878894 733994533 474805899 912555072 704109208 951894704 402250069 873614493 804803284 950911037 163633531 225707130 70315338 515841437 360948725 979592417 411134061 776567916 631534717 650967867 149521024 787878860 561498759 627532643 259138158 677568774 594601159 688957106 413557112 743095668 607722802 918418432 246060262 924960361 505297517 678905387 510583397 675967064 607000953 791785112 723191572 781611680 680624152 699397419 126843840 878548495 536640426 926699923 581373850 607559790 439934953 471113809 135235448 856183507 561594771 722639536 31273011 393392047 291247108 395171421 188097974 710728985 310592470 891693963 750193564 868621557 785000760 971084884 315684732 874307606 520029028 664133541 623092329 717991675 552091748 782441139 144002418 978257653 596306939 629355189 561954667 893962356 811588042 813893869 63860328 886212624 647042431 750294003 340543265 641678317 122129675 594464452 531396228 994473454 651779763 693292551 589089954 779870554 6458635 625197799 60370840 959384603 744651234 955227989 119459005 454173984 395936310 696956030 688784796 835267032 832973586 873457044 125648538 273384930 214620292 435057337 16281254 413702426 360455232 401686715 76096687 528156858 463688005 615850891 590004402 853872574 645655550 795060433 235531992 986605869 884474933 895309244 332668861 573404719 125006313 517228819 30379056 128225151 116485464 684728438 344687548 860272368 756433961 976278165 131566737 821513619 444421988 593616849 283957438 338711394 278107394 441117340 313006730 357516840 217998743 416854111 275456315 758267335 605659274 710475863 595510150 939269547 446532127 767499208 408354234 889809115 497221349 542446938 382373066 687392462 143938728 933535109 462052300 558936962 56361854 744721342 511561338 835498946 371963434 493423715 489861088 837628430 187975349 986352465 24507461 128846748 8879258 338801493 58814783 896029015 162246935 609670918 602796971 664725574 65597669 543208666 302993878 767627646 251656011 973023137 450667353 478800474 295030105 397530289 82074285 629036681 77010184 105949868 100782420 653729591 131256611 655365682 521602214 924235133 33489647 550260004 459850572 977325911 625508986 860601986 775696439 938721203 714872679 779218156 457188281 772326917 144781422 404410763 84320662 427587353 189648085 753439662 296787809 365783721 119258465 654841955 647784131 984029847 7672753 137635588 105773783 173937081 75079264 534792548 53796725 334393672 222995795 447067208 312946267 643197162 637762705 740293554 217916689 339607849 280842789 925945453 497171233 965405777 335842712 895691191 810474479 853448040 189536410 982907660 428325454 779667797 209160167 718205735 179079059 214694645 163002251 305127114 36417866 693795070 676135254 679370166 73529229 397740596 157775100 986575116 534772479 656023362 456067262 642613938 238929573 424849819 294311090 393534871 273532814 309868675 244205880 959779076 68879023 221999484 78991050 174220542 104716307 667633239 411385846 681794639 586799675 666667447 149270567 902687265 561065223 918770017 606008498 617418338 506016800 661386808 2764003 636644274 430046217 691994645 376244731 996353698 530942371 553602114 130001090 164730169 153458924 251041376 7281045 296420173 186971558 890695420 94903561 391884051 366774030 863342785 414037633 534722752 58066089 572001919 418273430 677883647 96431743 106466869 3720705 882793980 231791195 887051186 447963522 878290171 101174894 159654459 29787567 915513811 629723362 928077786 180907830 289632702 5109834 928905636 276712223 811543670 742960663 748245883 618966954 864092371 240142620 330097021 285526696 539831450 98764081 521816102 7098734 197183519 69652460 225694311 102282083 605497677 567985183 792110204 210413509 559204359 23221799 605787984 152507869 184269058 129215104 485906803 202319715 902831412 397610949 873552343 506754293 775479376 235943905 735194848 559392075 776383607 759264047 847799499 664824303 926281334 689946521 825385738 175623662 530983861 303378187 786707381 198204262 359215813 280596089 973925315 516797861 819183620 290628747 796399652 752929040 956862759 681700220 816598970 580915406 664531355 530450034 821310440 340647433 887120592 581977836 703744300 179954194 340162666 213052009 603195048 293543730 837912407 260111392 795154400 749197090 986045743 605149331 987631458 153866277 766565509 528154 420245579 239287757 779312522 27119487 112100547 2246210 494107518 104737724 969024240 294258049 624051291 564930737 568211823 472501948 902914108 187191375 638183616 376698530 734632280 503666392 713127430 218253476 615610107 321138869 811017079 265447 197978954 124437556 573697988 271199691 502185213 410185628 554763917 365111482 557518461 186550018 346045316 300657749 875505550 542346151 818935096 554274761 958703754 195181585 404895853 153738889 911028096 276025210 385962797 5658075 508533025 282685879 522917111 293995152 898246038 630326712 698660433 242401876 342202763 202291040 692165259 110378817 928508160 810876537 963167722 685770833 993814096 813901272 979204058 384300772 792096924 256766515 796944946 385445302 444819933 19115159 479924882 134916199 843989940 607603949 915752623 437056123 804381333 459672510 562282853 380558862 589818614 348954780 576088475 9116496 922092987 510158648 948525967 182994557 773304663 200370447 277415541 260432804 544867282 302700144 569353827 377200051 670787353 570527746 915314595 404047983 430728490 18601903 856052000 72118823 934981989 135720397 695189056 56799583 897189344 352021859 837192918 23992232 328640564 230455742 929844311 661905542 798078819 236755781 536582441 270460763 944611775 929252958 994622035 181357298 972247665 524118196 777922423 597436629 630887663 471552459 617745087 360960682 462129590 103400482 793101041 413987200 821919226 678031708 699769275 670752152 790167321 299330541 620389590 252794088 578298434 71670319 273000353 5435938 990021904 971028375 971950758 837856232 844502654 503369538 592214029 56403037 656205517 397098512 434870405 76093623 571796981 568124347 684730096 326972666 619826630 283993079 840985831 305032504 767569755 573235869 766440210 188280390 597057773 163572098 773912811 755301377 934138277 732851117 934857660 588955197 876054713 128786025 707194699 82062546 755647717 214746942 730804004 15780160 628929504 608422192 634070471 376545755 969268469 836861942 897998142 809223969 811903690 443554862 898855210 492530632 497382959 97663758 467654495 428260591 695160716 667815016 875500518 179802886 816879927 389001444 695435623 236456444 315695811 149124526 728372688 224029095 319075657 226469895 721514932 14045765 958070576 789331045 877233852 760913871 809742585 315729557 790995348 151945010 606665566 261132699 503035394 424003366 967311519 599309815 928772540 910480206 945311711 426444540 771462014 353981152 957972724 643465577 998674275 604403584 866699488 821720714 867103971 684465783 822001356 703748758 961980847 448163600 586415846 92322329 842874645 631179322 783082657 716765569 885666064 289415888 438170955 331040108 857570514 480780997 726523123 403176387 875188557 360729068 641643022 22751767 278459144 203954808 558896318 522011691 731243664 110770017 506966918 367123757 661984752 361441769 573079154 172421357 871332584 815663284 984464957 344537905 551709927 472028464 551080802 496952054 847719950 58050679 797912661 590571215 849094148 244014540 272979501 108930555 513941104 13535746 499850670 206191463 770586371 258882927 871150344 297930561 359591053 262592455 625637492 453246655 733529588 194204532 213369791 159113059 966632391 245427162 525987131 429084620 695081152 634622900 983616790 307966366 542402518 1370267 257738447 70091115 259545646 37150269 449344186 422679165 808412653 99726438 731248777 651110232 891006212 748573403 929723302 368274765 391428007 123260651 698195827 665307696 718722855 342956038 871845915 805972222 894578170 278127695 920602233 691844658 805580344 202704710 807853752 734858361 736896553 442211437 869494675 603059467 868002256 690370434 849176428 703555451 930798221 644968288 732506947 423236556 553573228 383841122 972412788 207431910 382812571 84566876 172348445 11275225 191417492 91044893 394632577 63342885 209537808 54934656 110872685 81497369 667072522 565113770 963463789 134222475 623657818 69700510 618704611 119886008 178755732 118310011 981900836 765867211 905631057 177278077 521686163 215519730 803992432 183910734 438296448 210919422 898914578 42166222 461160601 102331313 671676144 369854938 719199111 233883092 982805612 517286180 710900075 494431822 671340161 24555525 54358402 3159636 308461650 22693239 273580206 93981926 158210091 76776735 151317504 57849530 955103847 620104993 688040518 173601238 743054389 84848207 755968352 391986106 881624288 429518973 568851574 270038209 612782329 401350947 602869698 286633688 413112536 266174595 571373209 8868175 498143290 198268846 801750343 624529129 777117518 495158605 581299484 83698048 269276444 14393778 35280035 19163499 578486218 548037569 666779618 39509845 45061792 39749607 917193057 376248034 512117562 206710403 793328458 20867589 858685119 223267204 239158865 181083072 685234656 352001695 596116630 480801472 919879402 418948588 874164146 31251387 87559679 8876002 897559063 129707402 237429536 169824553 392827252 203706804 501600765 211593167 633629831 275158804 338036603 299113896 725531197 219308422 764087108 280519564 529336191 64786661 396194180 278448196 763812750 747010789 841295482 794755109 832691601 814384558 889450981 717401075 982271293 758442411 840560410 794652827 877177558 502125505 822582120 64658912 582831394 411921322 991075099 217444817 301018279 1597114 375397435 159186805 711858366 583632454 766514487 328491563 983510033 18321962 403435259 359981517 513148986 91531363 393327444 193393799 901117676 804626029 893614837 669063884 971339377 313860005 934473758 4952447 768399849 183753089 280647300 101029751 615998477 78940675 571377860 422457659 629379727 238737071 815736536 517615927 674961636 333334964 555157960 473408950 570641190 482071169 828359673 213971930 576488038 398809037 438987863 272950243 744926113 275949472 345147943 218209551 281399951 147818691 593005163 528660191 673646573 632630023 804816918 223245375 462904723 35652653 682015293 177784758 580490184 376549808 889423311 868484923 932531510 746519396 912852117 224279588 912763805 560254239 710005589 242302327 435871575 200041304 786038416 380408354 420242621 36400332 236490534 24254838 738668478 151276528 356597875 144308114 950341814 551752655 968573018 610306335 901138369 239444977 867048250 184007365 938070103 183860406 453561529 407107735 617832220 476265421 650667678 466105344 824882797 807062830 888678197 29324529 961673989 391725426 616509042 172089565 270799720 224297321 312240930 181125154 209347336 11672860 895855312 614473287 696409890 509077793 732021124 492951157 667498685 144012515 886018343 811159283 940104939 427592156 942373865 713992310 924769822 634315781 960515899 204821494 850859422 377962689 470498525 93385623 807181641 37137618 781134485 435537686 850511808 553020476 828999587 741268424 753737163 503776912 828233033 537919860 825360209 267546401 723104551 91471776 769854240 135505133 597970546 284493198 660729184 553100564 802550609 14483883 213990413 78758298 393272346 156800140 671887257 211237373 292173975 14610661 172207276 122661601 442529346 103249848 202776988 43128339 910370923 540323205 985024668 351010160 526453604 183157677 437377482 181011672 421131299 143037219 385751671 85030976 529459760 38191022 122328908 105105105 307446435 25287862 514991002 272757848 279825730 10214558 922332917 737968414 980260110 683538032 890869297 890041536 923574150 662799364 825857500 792040323 931096294 46692999 580280615 231441062 534098874 473807523 592147111 562353348 861489175 402916928 821724984 271562766 890009447 414867860 963064584 109551292 641805168 112698388 355095556 211846707 670151641 15848136 720684106 261856706 857947262 138684975 281173164 225976847 625370421 559351523 900017308 856882107 978786557 244483835 848449302 162586300 714716841 622243386 879348772 181227723 883668807 526694217 850618510 50157196 667737339 539322929 670593249 669472196 930550504 372258837 665125463 610432194 782072481 357048417 766431272 166294205 861984270 369034735 903124811 151572238 654786198 32389530 314076686 160918606 998237812 933042254 982136389 680573403 878460050 165187008 371817450 175300054 531685211 133150811 949757630 349192276 843807037 205824455 284826351 22871887 615996750 535592482 800059161 339658416 798660340 646748305 978242858 618966878 972669667 945646715 973574061 82024885 376586951 105525563 453395347 349435839 846969526 751266477 817677846 676440952 769523640 505815670 911597106 662163590 979868460 691457517 995544375 634372421 707579180 166019210 828517602 231090355 840481666 107488327 502227589 274350408 361274175 309154889 511815406 182778746 712765657 370052224 591688052 429138554 921418187 592042436 630182168 306700229 345247220 23474525 326464255 157932370 723925297 126913676 207167422 51913934 74201793 34696090 751339059 296173116 657396190 417176118 796918439 521324655 743797543 279421227 349762455 348087447 696437260 513998979 835956501 779639880 971925353 135576997 771277365 54161998 97703581 40912536 89255700 70935270 398081366 117237863 263265856 102228960 964429096 887833765 910613420 902813365 996549474 147555731 328428700 297494981 904392948 299583776 643464426 516442338 851379895 587870393 626270884 593020983 998293649 517555645 964218501 197034191 418484347 91810711 95072217 75514180 281461137 44855468 397428537 92178616 254858667 242877392 820968451 492836125 540212220 52343785 474753985 341233252 917606981 137032126 687654874 445024946 647250262 360994180 588292436 37595036 780760127 688445738 967459646 333144041 526129000 270733889 299235916 22504970 830447391 302806802 712209236 271466920 982778633 569311044 953529137 836565739 974543849 563643785 789877036 185965528 325316921 180711719 990753222 714337335 886965040 62570730 535573700 169709435 672610376 444351509 768474549 761719994 833766356 639341828 690694533 488947668 596338973 383009663 708624545 225729420 274091920 250959796 462782834 80859325 412455231 400994398 577318132 427823001 939096010 309512123 431066097 417221874 445797259 60874568 631630290 542804636 775910488 463542983 718500686 101154168 191977980 93904196 997009927 368402841 467485002 55037342 563091966 325054285 384080157 92592976 497863342 412052306 895286522 305944857 730413164 59110619 106043981 5235609 726590277 647754813 716256264 172473882 684091317 608350661 847662510 90370186 988920929 344835380 740167848 166793855 545185422 176028879 399138825 141503133 952977538 38393210 325184018 197137988 235523804 27405232 304659635 126866909 375570905 55309870 292591416 1261866 794622849 319428871 379335905 143893218 249696370 97369505 826849550 677861186 749878044 622981050 884656632 777139880 936544680 899978700 984986758 273029409 482190294 267819885 720437799 394985622 735230945 537183296 588565945 151179514 740322716 425610368 903556594 147656671 595274327 86983432 300494978 275643634 901480453 104134126 601991076 452714826 608066665 150322840 781266755 533767832 744048297 707192377 952176895 59541774 122477431 13068319 212059805 71690162 819115966 76016537 978059370 416238093 831626348 265248097 771921582 126931586 811626377 375663449 577611482 113591480 685847790 489123510 552575959 343078621 563757133 410554553 552054953 145765177 906644704 808231396 839990013 561597060 748205537 3706120 120016238 81203570 711081345 323123400 401416692 293152225 436831241 361580123 979953794 485929199 990464459 207646089 429374852 375684684 922574203 853218360 928661208 216662198 822203994 144754191 414460856 69436671 474279535 470301825 825886335 222633149 634982466 290677316 900825666 501469739 563318950 303237958 512790177 431751423 527875408 36518778 549546319 265807657 733054229 148339374 569990508 334028825 746776849 504222587 590636599 516777274 689344585 334280501 733466175 559820171 576054606 1140308 986486499 406076139 679994843 459261406 979133598 810264422 853124288 758246156 768528313 402288478 515376227 436421921 528598572 157370149 208036369 127714550 353989078 333037280 815365113 463056103 787545349 570718517 892270961 778615441 843610061 291410205 373063474 153240898 298552368 68696322 484943999 428716194 438060348 171476727 416152172 29418154 45483312 37098498 916523195 672881086 849535429 589276429 674771957 393628585 977592709 268264063 423146747 144787455 672766046 564736286 884466996 305825238 898707091 467156070 608500010 172093462 745052806 289241943 442631786 16762981 55513138 44148429 156941530 44935119 767631052 461023933 635304341 494294662 933741747 96293305 542684132 214363715 426998901 186071425 327610802 119013748 336241378 241418722 570730592 380053621 580053573 213775890 505036158 335528190 716167324 246372288 670457382 35437226 361162157 143688114 886602815 578230820 685262524 371753626 876037618 503720771 597637896 561103050 709008588 688561979 727472075 49257147 475862319 273446083 328407072 42381054 523622282 58016479 988027392 857186473 995887169 941248709 950459788 644673423 803321033 344327188 350318616 204314506 574556173 424561847 522656720 351910346 682125324 272179836 962675147 362144174 364689929 286868173 600143966 142105031 964636004 147938275 396077257 47851786 657401708 579375580 974972732 747936846 820924356 326040251 888187847 411516740 721536783 81879797 760144025 13708899 136184207 100562676 936095576 583531177 726446240 698873706 747633766 482496963 630495708 369560605 977922662 953185564 982628968 817125750 885967214 592578804 611028034 534673876 784737925 365384909 540418236 461062753 804736678 535811447 753091127 471312351 857041319 75318321 322790171 87677938 557139511 62327566 200715972 159410806 987871358 680949095 798110733 358535216 388566622 224422097 268471219 78416162 423719078 368900503 478559547 6102011 939712713 775294864 889846536 477568550 722075473 514708011 533126097 166030240 472286296 401945092 875056254 716282419 918621310 189909909 803648425 421488016 766162211 682082122 904514895 562156856 949744772 446946083 589415654 330029113 959666887 731242821 909230342 801298834 977042313 303184523 742115288 312359480 714963133 618687623 714040427 252074124 349851515 162958216 218583804 159902012 514563209 64542626 352820344 97889871 517120947 423627560 484025184 461176767 673208969 16307046 512501149 481818706 524203644 32326623 549205379 36352952 106641380 68494413 390423143 114964329 394199990 182840978 673956862 640782589 704146309 288980208 928710379 474910140 743390153 514757612 627304621 305740957 596847966 460318044 609985268 358246370 543755001 81434981 855186166 71370163 808889200 104824860 837672866 794948971 798965232 736851811 984909166 492921485 557866762 191942761 340312706 274593751 798852578 283737884 851743685 583963245 983711928 277300554 907497554 637230552 702083734 494781387 620253898 147664543 226054285 113084613 868502105 124433989 929153290 480715288 958851781 306986617 387050025 308323785 826488070 101006914 634650873 323881993 446521298 105511233 804653121 395881159 532613306 365087901 853157696 830970156 962187153 347219001 893901252 257228863 426450408 14808641 168436694 85988724 614737096 298444303 562038989 84246221 701690032 591691413 817602029 783583319 794793329 381378863 997410322 942406424 978729678 415420999 838996854 524378066 738287737 120071864 932521088 756671625 767325398 13973743 513224798 134705886 948681999 440109348 530963160 163392047 846326843 636306206 763269356 40069645 50382205 33150591 763172671 179500287 540516816 377814648 932037741 416117710 708773856 523853123 937367137 657695260 719438583 284377101 686763406 333338657 349080033 232948664 337056047 163935466 936308858 422018798 726507077 75943641 857918809 355991642 553759974 448401764 952364175 72045351 159847066 137420333 613734625 100687751 458256016 283440682 345321375 77589042 619888225 338458080 429143053 45530550 308319030 163404432 632491270 15265247 975976342 965039045 971136807 495026150 654227612 123902337 779047206 369009685 563223686 334683185 720723053 178794622 690476501 47277130 483309116 312111683 588253777 158857548 905288342 425085798 528732179 471567120 946724860 206846348 940123454 755256126 879546442 34458151 691337031 540813074 941268215 935844939 938166606 119560127 722307712 232904331 621028460 208472155 982240136 190674934 253973293 211435099 941125871 326609149 575410775 550332345 785949675 572933130 786020146 31523534 249012402 233062800 420722690 337230182 632033533 616585832 712483309 379868570 784502590 401401389 911200237 880171314 891060786 523342104 684593393 624439812 852621354 436888612 667454635 393423778 822417799 646801159 786216389 385457166 656676458 644721631 984041821 48570748 708315340 11374214 831445753 160066647 872730350 415052735 629800128 471195234 946466160 608681346 641558594 158330038 168751010 104328666 745751328 451453737 929186990 214057300 806550181 491527531 681835265 543933407 560304371 464569839 779266559 166189567 423516858 234624296 510477354 207259942 988452684 694418303 862743660 149240818 837182944 635306908 913198884 180475563 470054207 418299602 458682033 182106134 849559959 487329741 896125464 249182613 427296887 259524437 714761839 408433360 739750280 119692425 220211489 158869644 539892536 162893492 835419537 309882053 618355940 320966527 894191395 337369108 609018405 172537678 927047443 505788199 545437806 693082 335820403 252348818 923459309 259705845 708487390 362983923 914720978 781265896 865904946 737883821 957218447 631632919 758443033 461672222 738283712 333604483 982084532 508560937 959259649 341938396 984709417 489887932 677704811 388762694 732047966 323444786 733063991 626241704 939266291 870424699 924265071 860426804 987382453 282283457 893440418 153206577 819861708 692002799 716480187 142778070 486206508 104017187 684544546 318577689 425522860 269237554 349912865 147813496 618742492 569990856 778775316 502393508 582216628 94773681 314189142 16625758 737262270 91900244 649173718 53629935 425605223 404580911 684094571 412590741 888132789 717713911 875784150 436992372 761607927 389471529 463028591 133653991 603287386 474959079 963067144 170020867 782998127 516740627 624329590 39938121 152974257 101915163 630128059 419319240 456686845 45866081 316579830 33113903 584364536 91892367 623447502 620813861 898217913 511741425 879781279 384232676 958263136 622040767 647697448 322881441 547993108 183140769 374830534 146260379 542610119 481384736 664671584 372854542 474360269 147888574 297675264 207583373 227843784 142730934 857463829 642656227 985232058 692996224 697372838 238764965 837610656 8659080 225398664 154058756 798563061 206765064 451558775 451063259 859168958 143114771 476189496 99220975 349190928 93430249 226722378 224211716 305187803 200362294 641934304 35964910 137686997 90380495 705382805 335144549 671609652 384202039 667187890 135668455 468353730 12936479 723374582 278510905 546734041 87785154 268024016 151235705 548481375 368113326 853693742 524194514 585206610 360143543 748562899 25193016 760467774 203492526 841069688 780815797 802489458 373002387 917320795 389594184 523600961 410865615 609190514 479584065 654254977 510122085 587516005 264262857 751363070 588283924 997354854 398599689 785430095 497220770 621031460 411673044 734840802 80187338 203542489 185607096 235176386 193271164 792041039 547520131 959282078 629367843 886720748 25148256 148082043 139033065 765805707 583076974 945485857 242576795 421934891 249358018 798592139 333317675 969262229 929563864 988915952 147155672 720769723 460590276 754258029 640557771 775394933 516263886 892592152 636740518 847755906 197508039 698483624 218821350 493351906 333731797 621988140 90091287 886176537 42565650 241784799 25781780 426567248 197326741 427251823 405097856 469508963 459990112 979205444 583917511 673042946 513964337 519964660 337949440 972105041 5552775 690767755 470559674 603908442 557839120 760923776 663250773 982358528 326370577 838426420 94904334 635688101 735021 749163701 324006548 463162234 292526331 646232041 398498748 720840322 365153223 921401643 277066316 805874339 152557540 208739824 105890941 924184235 519378789 817814222 346020330 705380989 330837307 357726569 120510166 364590121 333461022 989695148 502976414 677022625 365035020 428403808 222178125 567771949 46002638 875574148 635839364 805341717 568841 816858041 604200677 699512279 309983019 824494738 383462615 815040561 365745935 544142314 245920748 929215605 659698439 975436648 551232834 777636231 302875515 402783215 287185724 986872364 473774699 512185509 212135748 400278557 136932524 472689949 288540378 940937166 106767461 390858182 177300713 863624091 629620747 719395668 495537103 634131350 358052287 909192756 484197204 916257951 911704102 952667456 825560727 827297430 690799179 743082180 110103052 975840569 193024120 551146466 45824734 564112550 454216538 754898095 206617848 578991962 302152788 970861570 764578098 814617438 454013035 813130919 453487135 819665659 521650911 592945271 446027919 960368817 365313173 943287877 870624509 940623255 255973671 628386986 261266811 720607761 72035625 284027274 59078714 501877044 456371299 989683053 777224938 829675951 567806365 893514593 519064171 641810191 527477064 785499101 380619305 965207341 809372098 984318985 797922843 825639557 14077857 612925752 94187920 350392598 332933108 471242065 455525100 778133852 728273795 970711988 906839321 911367154 457289151 730969499 182834492 897182347 619604620 995078485 866921039 994003435 912154154 975435472 312053345 864752955 335962050 747681300 299743721 530972957 529594310 876099425 134190483 748300981 23486809 224841602 133538484 472977980 135455872 259785334 96980287 633423672 273438236 991909778 429502814 628721196 511816511 921962231 764054844 952190936 174883949 956236733 268254323 480700132 423558628 641202072 320578695 585557789 580935074 755842278 207571130 391234844 307651576 561503937 395422876 844514991 357722449 840740409 324883729 967236247 59595147 785794555 197354682 415421859 159680175 402983062 101240032 247378857 151929475 606556768 197506960 808293549 387264047 550726641 175786046 781245980 591809201 853467062 538988267 788477570 597273740 681414344 637881198 827880296 243172014 353633636 92276501 840479055 644342320 985877232 506854315 635514653 563688349 958837575 741425315 947290277 408515227 910308231 161733289 227280121 90261175 152485230 68810960 232827612 104980950 743538622 377983913 801317045 742760896 953337104 148233690 155352365 13894792 94229800 54843499 62000399 58709084 389277377 29369455 441234825 73986265 641976782 361052463 693538142 669690010 747920320 110777738 749428288 599023239 784728045 177609846 742966394 108186276 541790595 97457769 841298285 335255292 576977713 51000499 516537697 288812346 749797397 550068465 719291480 412114253 428451887 59726068 988699161 164439985 373709968 89237997 270689844 74890378 520913094 376910584 453123230 257616085 484212002 477135881 704726963 323349447 985569666 145300064 945798740 847307683 981480564 504661094 605749564 161751369 455088889 427860263 428147575 372766204 535985592 165452832 396792215 11376583 806548352 538523402 581863805 267365457 871563249 409743578 513897209 70948418 863267291 623822197 957323330 603526174 922159147 245368152 779376666 739268738 913908749 866426386 925035958 475197594 489280716 656191 941490289 31143129 972152660 907640334 932783536 523386837 765830421 365818175 664048140 471808313 619123528 283001656 862022045 484098252 983803834 940177448 957075722 360451320 720623972 267693163 899677687 47516612 239886385 30893118 331108259 164427300 619916985 2319605 294955101 113939190 888524379 292547667 949236263 834410580 916281071 162161679 610569174 179647440 197111419 193455589 415353738 283115784 574959333 179578412 377947846 107492554 561031545 165974781 529511152 423647515 928873970 125913846 850537592 788123357 789261548 647001584 930592994 921790213 964667130 747685032 921424676 524575343 591012038 518724304 820924460 2587349 176683867 64437255 709081253 511816292 925125770 801643777 866467610 506012759 791345426 281546391 602412403 600494174 789988567 130010526 556989756 288266167 566050946 174449803 480012004 332273216 430591049 350766937 694275859 361034340 945050203 820435514 969734081 287693829 773232449 735720489 978172552 799298994 894478420 308638171 672898976 229253743 909321012 413014885 876637995 420785463 455344828 159075355 810293475 678444710 760366806 418188776 736871680 439758013 791993963 263067519 282694025 15141320 707480139 452581504 560366142 409199782 790897551 273647289 399832179 160823548 227295912 17710660 723806560 524931999 530709055 274776446 741882815 151327935 254310817 36754892 820934110 648045593 838125205 411117222 528582195 198284431 661914854 563490146 704042718 254134283 267965283 50900441 308182901 244833095 683393888 534956299 891465866 325030025 889809130 689217798 879103198 32182681 88855276 78041875 259708009 123128224 383346916 324973377 650815249 645681945 689524097 221838941 763462938 406899579 752383410 220540135 790711322 168902483 979957488 978384611 988961884 492722897 898654590 404383444 502125383 492488872 502578692 434154224 947732604 710715208 862257453 426257564 536272148 413718033 423918094 363995 790000975 511063379 575928182 4212250 730111464 154941331 577564299 48244781 94900889 88153196 576614872 333362272 467213240 456702354 489159633 67448486 442050152 96811760 346411734 248889640 621774131 344495925 713153800 708952268 962115209 244014049 636030825 598979185 618275096 222275606 368024808 22987583 727364311 412774548 813791056 335862939 729026001 51582493 64364373 52625271 574466651 440436623 608160771 73870885 832606702 164759697 663977905 228599733 618581616 421112790 596265309 545324717 726426319 4781770 241135058 30248013 990843959 475287708 715803928 153661492 769222987 56873042 705400656 632051701 721485051 160932778 885929650 175350806 432276606 114442788 472509232 24970492 414289696 25018646 194031952 143380363 285966798 218971058 338309500 91423868 270030523 39573687 513241882 427819150 449404437 415689265 544697460 424009070 464021937 404325283 462526165 438336832 690392258 57146914 452659669 92743989 863032488 745898575 965793721 497498074 603840312 142975703 519261026 117442373 889870430 354565295 918989968 459182197 776130653 560949203 705769500 623049824 657518152 421386503 787696482 194412337 776829994 408135780 655016219 461460430 924903466 436758052 491711966 34865602 585125266 560966201 623908120 212445162 556040291 220900354 627709285 521249235 865466347 275648465 645544493 492830583 690945043 530701606 665311173 532799861 711227271 194537653 971955434 829803886 860364783 691430395 848035252 274365217 627463720 231403214 423313823 299760095 395966140 144226774 552852302 314096256 830319922 386124656 906902086 184764417 989574333 25985473 435386526 97013980 723938744 11887299 744216704 130687707 909694357 764873996 865385440 525193983 630400737 38023493 153111888 143559421 730736612 618021275 753081118 297578152 683836068 544620026 760194614 701337927 936758693 845560105 887606207 18903638 973026357 817260468 824903487 718496658 899208846 324541576 461942417 40852550 418194286 235428567 710610497 182608850 875728501 277378970 845287094 668492525 677768707 34364128 278666863 195531733 246173112 185193556 201150173 193435801 995155978 507509927 683412035 389329797 999895277 575422928 987250343 776234705 985648321 720754426 938855858 151689326 236285271 59409111 844367881 428014855 438377072 31942417 163551782 38076104 909454121 240951326 832435402 628683518 644345640 643455246 649907221 330131195 351046333 230638610 763091625 570817251 714072166 463827233 635693347 444005344 967043941 354082274 985836414 720200195 988489416 459649031 521648404 224684601 393027194 118672573 831626396 62754923 244469973 144400484 553596629 108216560 667459355 589004929 976845804 331848226 714286936 580288244 912029717 697801289 935986441 279941973 732346350 411421442 688748972 53404863 219792783 197183169 750150319 414237840 767580611 647221248 849741297 169147674 346928280 140720643 506619264 77997500 748924114 464428403 995197394 974604095 981877035 239883889 336605215 59819100 686502539 243925931 886175345 698992429 728099161 432107167 589014513 352679823 680833124 406166957 820814913 563768401 630424203 252621927 622052415 49230596 308264200 182455495 838130754 778305833 853491786 747720746 818264041 548804975 764536504 136560422 669848989 564976530 570235823 70952120 530205473 420094189 701824935 387090304 786523753 426633017 553396425 493400426 692057322 431710803 566025162 50783869 898156253 436445211 499402472 447326264 874650411 291606830 811196432 583487131 906884066 237465116 887097167 770053941 904849471 885952349 985057371 853036106 944504584 413947114 664615695 573415935 868247777 784869384 972641944 201162250 872716609 59678060 723205033 402844860 485544591 483418572 729897145 307742001 722365349 94158545 986549919 72633694 643805012 205511210 701436155 305865631 506907832 125931234 631705541 435415504 710251283 566999375 975412434 762900504 988524616 264558069 967479059 938117753 997443553 949535553 969433816 410971141 475351550 127038369 477438467 17524279 448553956 213587172 897482035 506834939 991657006 537597477 951322890 689465249 913133596 427784055 813078597 303726640 462750496 271295586 807139120 722306053 855330843 623804493 765606487 520966404 708186174 654389138 912401900 742798985 949601188 830141674 863702954 499205446 957219643 820699907 862869601 413477805 655123252 97231471 642102302 473531721 629902757 311414776 348840772 49209511 417213626 172037317 390770793 316274983 388090711 308024477 519413758 226168457 543748988 134402569 167285700 147109286 955837785 248209883 699505074 244099987 883503639 199236811 628930043 581852406 734940922 513713195 575167451 144386841 930886282 298435759 321736687 220474238 976254687 416088015 548100015 102360056 303306364 189667355 711216270 594318686 717724814 208279215 847689255 265407139 643640751 581364289 930978814 41491927 171736231 155577536 807811023 278326614 558620192 450137253 593366832 221064970 466819301 190248114 649690909 559066122 943757403 918039644 963866413 549290269 565380033 205181436 682781906 98703504 225302491 122732492 155674923 52916860 269062963 215566650 326833591 68646979 696686729 581655855 614117065 201192163 738794105 40719472 57104397 50140223 69833278 37136381 556268711 465272493 691539099 320450481 432011556 165115316 847397414 558429906 861485885 693651710 990595572 886853245 932527984 209819236 543324823 494269469 611080664 357453920 451615464 122966752 996038917 968196479 971715831 732228002 851758037 593420958 692658048 41511334 47863133 26626208 925531570 194984686 617245191 58744489 835363192 45987646 941954866 793143936 931540668 531731304 761584113 166765947 662353678 186193341 811443156 92703968 579776285 113856171 203974939 87615371 122354909 18279163 701678974 10075608 211372895 204575942 612377485 234110995 960961906 5336881 521238394 359399083 747917205 629234311 974807442 36485415 295442354 153094642 465962771 13224481 621831567 136234402 167240640 33830321 483172793 34381960 316430433 79854221 987168331 508677088 747643786 236338740 761782274 669651595 988069755 414428766 820911347 797943991 950490905 460928758 639370601 587979785 708249961 446172053 657077578 358568255 763786315 550571285 729374324 254646465 851914753 415841812 557102386 170068790 330945213 14234898 588619307 486462143 877325646 54408901 188343446 94950978 542311468 206371575 592421152 231225983 469487516 305478434 452775233 279150215 453020136 426317890 603319505 87774025 900148079 51400647 328130419 37927640 941173716 139361200 324212320 120267094 957005080 263636444 570661668 15528768 945307680 537764711 629829039 161029655 606245963 255551072 702117068 77556665 744212077 683320261 859411807 587895186 976918029 733586194 745145740 193937002 918335897 552299811 929535495 453529633 853743654 397830177 585621404 316800704 997149424 290571638 905049798 496466238 842778187 827145272 991343481 141602870 793589932 748019692 961537835 35543336 793369261 700782050 726248695 312383036 940758359 507499416 857827097 587842523 797347281 237580802 674306429 389891691 661372832 527665915 941051706 246582496 713829375 648198309 924930694 480762505 774592517 298725051 389434401 177588474 752341344 466003786 620262326 101914236 897278616 450760891 847282558 155384125 316046195 254909841 656159647 103793567 474582940 60373387 273026149 167923644 964873990 203807378 776854460 295402640 697531002 655716720 672411942 313713976 454186282 84821472 554342029 316303354 448609510 205565923 842779249 309850784 492482864 471774985 681389096 311660637 922911737 315493748 531887352 103680574 762062331 655504705 985496917 811667904 965728068 197141816 900330013 405818087 589239743 506505959 723073519 510666134 855288458 623131741 748722369 150497550 990429156 159232082 246584870 9694805 106475352 86850970 987551007 441711967 859670975 517979073 999499884 673992003 727847141 263202535 941915808 535069484 586047395 374134797 462040777 263436615 322463726 193498806 304944429 214226906 773539131 420025577 914499093 783336184 898549250 247202843 625948001 461402954 683042968 61363106 262335939 77571611 294908965 114937034 575289339 281455594 753283051 494405424 641964145 512826937 823842272 677103784 925317686 839862404 961139788 364859680 521523166 19439914 977619747 251543677 994039847 500762254 529324076 87267283 375287413 336808166 677695081 601063630 725492506 468114440 806962680 456804352 941258082 381782390 882466960 537581748 610117858 73656290 130536713 41806916 423033650 347383801 868702873 766290668 917129850 217863199 917626709 461773152 769693150 230040906 837233276 818759351 871065762 388167888 584565766 466222587 591686074 312822760 775364034 291321260 551325342 237373879 802453848 771439316 925692666 289938817 571359702 370869537 701633376 181862734 868799336 145870670 318185637 2417902 204110715 144403590 904212803 424005756 465025675 191601678 921528363 277934185 988151406 243585070 600506481 589079156 834502492 530211048 769276129 467678938 807058114 217423043 541732232 37418412 266366666 6253581 305729544 38538202 656465972 359586448 820880304 797191077 813013515 501897267 533283594 431708492 736476274 429924080 960443581 301025487 834758088 463425952 577376737 562872933 891282056 142696426 936784838 390869097 454684916 137706961 841923679 833591114 890112460 592529316 846061280 364384342 541465940 348889076 544156761 115204951 638100280 376499310 476007563 62479983 642378538 383110274 794252716 581122262 794443544 445698594 896121378 476048732 588085228 291266762 835736807 152155157 883979036 340001088 918201636 211166484 422778891 4351495 685745530 607113410 642543981 369667290 924426730 210345257 961639739 339070928 674155081 27104513 439690972 310991779 958144189 548891815 808910660 808739176 909132282 181513226 999358675 254117984 846540367 558704442 638544747 574593622 721064444 590088524 622613802 195051020 633003672 4569154 950104112 105555025 346860421 13863674 539024055 171047398 176519524 134883296 258473902 251725084 413508195 367142229 680361035 543380309 697808563 476042176 699019981 482033233 563973371 508907028 571041888 409759417 464475278 92327286 126517918 112861393 640161547 532552818 827398351 298174234 561682249 127327090 379413910 164551485 218513161 69001081 931831037 117605131 222432551 39914923 49645452 24317132 281066777 272451452 703974433 673725585 812915262 332682750 488573276 160935933 245048440 149977752 936827267 431155579 903939188 393746910 572498259 403507372 892897297 149663599 233766532 71338854 366881396 72018184 935153979 712594662 919696019 881364828 902232827 387098960 572737518 176538105 851441897 770646001 804750024 205828640 346046413 327413509 362657507 208629516 493196499 216597711 882010031 198025952 552457715 347188448 553740507 172769553 442057287 228928560 292001061 103921120 499548706 40691716 491074060 216358968 596277764 269399641 781645818 76945768 656629233 249798714 431120879 59107707 478827570 241583640 310083720 186988828 940625157 292109809 302186875 281401068 913396609 239285513 763461571 596042476 684747206 423979199 609078094 511926523 955722368 138358750 687684863 666044635 804085603 644287017 856928146 675006317 861181018 788629083 898284633 382084642 957620445 737487152 904603061 230530590 955345888 617967344 655770549 336183015 421830716 243937666 767903988 133936971 863242808 24096744 603221134 67810583 873171046 342771853 433912650 402558609 786897233 730772203 954745124 136479652 950784221 325927268 916594719 747050235 922779638 763326585 980608106 301864303 769291727 307075976 611781708 152645248 172269039 92581960 772094012 565869972 881139595 680789267 750641499 140483168 608020107 71475925 291428739 277020417 904514050 484260719 502671767 454947549 662279658 480541200 912348414 547111693 865450865 225699008 811449996 277207838 363771145 110177007 301532249 18006396 657529781 499348168 624799168 558799040 846469598 168770363 317156467 92158747 998081340 908282254 914029019 805397962 806697556 50275771 877338165 444444821 539125073 231047622 406919358 302450506 887318445 795539350 798268412 2670360 574817374 447085574 878423760 357925160 888875708 322534695 346854010 101384975 397878510 377894431 956748001 792533417 848121332 286992935 969916785 355011785 856516176 361303994 722062351 423721625 893558789 631357237 824152296 627417099 742035987 288181041 561352141 125179624 399114911 274656830 627238663 483698875 951807454 37522624 290254115 193331541 430733312 200666319 301676044 236476021 876423013 417188149 780086403 548083937 574562966 548785779 676965257 489053143 673162679 476368648 950419541 866639547 949928167 432618150 617921698 309937576 751037434 256679225 396450880 187040461 593261259 389778043 665843440 166295704 252239134 12705234 907660755 690928285 856259015 760204066 821587618 326086443 609429314 353718165 950590885 266228057 462140609 92049439 195111134 52019699 301263876 236559414 868882796 46787590 647661060 295614449 738268063 571160359 873986549 213345969 452733393 439978402 713545580 592620173 866084636 815059880 817819938 151105573 394328260 40888621 612148941 436909701 832239514 127604298 978036068 356455127 970474035 246047612 680425865 3120693 185064436 76896469 637919735 587456881 767633895 484895017 973498115 40874159 443253573 38021803 441537366 277412053 792037970 469198753 678368873 204335665 799818601 385542531 917930219 469451335 763915882 425649132 685471693 12336734 422219813 150345926 267191469 217573435 910651587 250570562 983507457 124754850 357739074 133481778 726652274 93590191 729508269 210645117 739147545 688289810 933913434 646555059 687477748 292918317 966555212 140732598 204209480 33454522 542521592 259662196 545799710 247247055 784901201 593388051 870374846 383809236 389515360 328842660 916251903 564282564 913396286 490031931 874867233 638871665 959522058 628471903 961709942 500927073 998621313 880046439 973355944 20456122 261822681 63733176 407215422 120511902 650000482 133208668 157032234 45323713 506361068 359262069 689498859 10328280 435875024 207234503 680103472 187814933 570051195 15878626 125165010 24113158 763615763 586495058 762186392 45816917 663609808 371619615 963235348 357469358 421359912 134757046 826709066 582643429 810538018 520399579 860931362 689978003 930469847 89809387 920775788 895824106 991375209 702844890 972771949 653465784 858396434 331208273 542954362 121282436 784564266 348671661 957759088 288448905 317453783 117704124 561781577 483923544 598778150 415786916 677414166 108394933 488731740 354608969 422147177 331927200 933558136 220181004 339273829 208349899 743516880 36989067 352045133 9982714 761669674 319054882 842521040 95139769 919930341 711603182 770329390 426494111 593498145 85835178 311815500 76845241 526601496 71019756 595921781 5436475 82047267 28176983 963249187 799590617 959885341 341663845 584239360 340573765 360425701 288235260 863939114 171186237 982673946 458974463 603317617 236539602 688280648 367289906 841609172 358946325 806516717 731428657 776351025 710689133 771411161 248137613 685741315 260417735 407551557 4509749 315514286 283519024 627525280 476228629 831602826 730588403 896518038 237870146 498815551 190960479 335617979 96331233 615200730 521003226 634624652 327802665 686472732 220484736 858202088 85714868 904800148 410705774 803859525 759896042 844711661 534301428 618703724 500435653 529083376 153396025 586296084 86934672 198543093 74912434 490337180 486558387 747244903 364643661 828833481 555929729 676155530 311233213 967146424 752997873 850677020 7846288 747898987 433299624 551246743 9925636 755844385 88805404 643986407 111101732 447671426 97021086 916640450 227475238 857525499 754716473 947183504 795125937 822604419 59202890 340649509 198848836 670304048 181456353 284707128 140735401 314877297 183759179 682851019 65921527 390035744 264535765 622740438 57686338 703483038 186315197 551889469 318051758 573762164 157933990 619740166 513620447 769315034 213603669 309066481 278372116 461885656 220757348 453501958 87179596 959257445 273155467 722083831 62218681 131407800 120868148 664273635 66374844 836933635 731874722 892776871 302962895 371131222 309349738 624674475 208730881 422520537 139558579 871006023 221909722 971531964 458371329 495053547 405545515 417367615 323216375 406795631 253113916 399983885 285119532 315487451 255534289 697457074 9787874 469759831 274523191 420318458 268308056 955877672 367470140 747500722 100490687 580860723 69406303 948449034 528906055 682960602 171661230 877334391 509024966 849550712 230969910 678840833 350459965 517765038 297069892 540305204 44143653 621909215 14603816 915782421 55514849 189769846 174895002 836838126 205282417 674311893 408665252 985244837 534701187 595524444 437591035 565027909 82952606 223725225 125756802 801850234 219376104 336021781 175918513 682130864 46819971 760319775 93412925 173714728 26378114 385062831 248688020 713318356 27464930 945009561 786304038 839815765 781750865 798865180 189627339 279649899 219714779 684525303 366871871 699213497 128182969 564918870 419467892 798091529 761561242 899817390 821972046 895905042 120201158 963934917 441177230 914365762 336805804 739076936 540402211 731873873 472402094 575577830 128507785 579416093 270546187 290318870 177851936 473439786 310434122 946020764 667887860 769636511 474509448 932726961 749371689 849038475 174929329 971038138 385907576 555395530 315748081 978214060 411458377 733036287 591765558 928902479 33821699 885058009 80936225 312209686 296255287 907725897 84937962 455235941 229299782 339412790 133041046 669078504 431568215 502134259 425683430 434827102 160895960 578576497 171409600 778697363 319244083 925040581 323719492 478696263 322721783 775887335 469277760 982540361 263559060 718425564 679398407 781660063 568337139 937723017 583416761 643972657 41118676 893282922 176634093 254259910 135941115 491641334 345558454 829685268 441317185 789387825 20534658 654148421 25227178 245298267 8811922 17292547 12030165 884438417 381069664 738628210 93071221 360441048 113417845 468787420 411053819 585254007 127583814 463820257 251584464 754326861 235234388 540321824 155487554 919687471 833611485 869819553 812730449 965469406 875916080 900967651 502993474 886090539 227122779 860766834 353334027 763051275 172347048 531545834 405821888 763927933 188210440 622180367 580744596 854439900 813249838 843963151 9559262 876347823 6784066 769874423 459672979 491539546 138659096 549964462 321096765 778779653 43665649 398826260 193321928 907347648 97506749 99307006 32676902 310197375 158644893 172667150 109974722 204183947 116274488 972394375 689539084 968290147 825139253 839653407 622118667 901002462 81721880 288633763 107479628 735163263 720019022 783624767 130149279 778943562 369480025 466236429 31680997 587129475 217535228 481289661 117257328 381648908 374769768 805198774 263434985 899244332 152431559 759622311 571935172 853198760 768496680 957874362 77288842 737079405 391542117 626425046 211031218 756477118 238190630 544919851 26881572 197846962 35015913 436674562 102507942 741530591 352539075 595854638 500698229 660137863 629132514 869106082 147060684 423028356 280245075 296132298 225380961 505567859 376810009 879012681 235482458 861981113 625234483 848495061 617038576 804938241 556598388 987114135 131674320 237394642 33333234 995309614 378742331 513997498 227171694 613760538 571274999 649437839 200348245 943199260 187210310 249243367 154108016 235358580 222507224 773472315 245287259 888004498 49695660 975286621 337910968 550880788 403182730 845857333 681587926 823831340 387293715 846280097 318714736 385381499 117189449 614912000 358140809 733256408 515850776 847673774 134433959 394466788 22705625 686488682 57273052 782670522 45852016 404171907 295238493 728600213 535246181 953202034 115259611 129655008 3592867 158398308 68940680 103748023 85982863 804473754 763454098 959172945 678565050 945528358 564941943 696697902 374333124 604577669 489719019 968522171 336319158 907541393 533664862 723791148 461226914 873878093 567616647 669275631 395676403 960367995 476325279 548602471 527973546 609980639 236085869 439179889 213932604 838112901 343010033 966906640 361975680 848468338 628499509 715892877 31371496 349127388 218483325 335881106 309481391 598055140 477899347 734015870 206336154 487121806 59228758 643511119 430650142 897440610 735974846 812123322 617740693 781396355 767365498 881662612 769297957 775246818 274149814 699282918 85272993 741446465 234151467 551685223 534325960 906356504 224963055 394327786 44641349 175636993 173686604 882577677 340363518 379088078 24278489 669503510 591046027 927893174 236859047 539513884 404263435 414883549 281576549 956519805 490263016 865627792 348180411 674155305 573468477 835487199 643440239 749247532 351806487 832231219 752579579 763585065 524258134 595867441 513514217 635144207 615049302 674207673 160321907 558784409 261752068 495661447 26814216 961496876 838580462 862253956 492791789 865845151 352691348 894114103 577883199 803799287 19302607 217395591 71710095 465080805 15714827 614915912 319540630 376163885 165084984 212055124 203730220 589058277 248287693 491366726 129828679 569258312 189638655 864181743 152918199 394187176 45288229 321249395 38709725 910617078 195721110 997047449 300928081 721979337 303635393 990235342 519662975 578082403 558858631 682729075 460340333 716951326 377288691 924191394 752909142 856199971 451238575 616225554 13280670 664752850 3786387 596372752 250227062 261034993 7558439 355907559 35566980 378664344 276289321 922248738 634383727 782954752 70839921 696099993 117342227 909498774 71906285 860072725 788937672 802096235 727247047 729584639 539891079 836133441 177444881 257613817 62752758 963267546 592257060 931915397 83415442 841283394 426633777 449241478 437987999 746626164 718541760 742280845 115462051 506555381 168484130 306167810 224473704 794109330 541080967 756069398 576267190 616481177 140369501 396336658 362518921 514036018 465022238 901160593 787631066 947091107 301756061 483049812 203568135 411234364 283698647 395541252 47009065 785360734 490469641 702531719 608628538 692608954 233808191 594888324 511946454 963565633 515844469 871994092 854321044 998634875 509772561 574321924 142879034 958699978 126366138 539615239 527185546 556706175 310750049 775279689 32845317 567531655 458802094 663433843 448491661 465676937 333205910 782015059 14046456 506453047 415158349 612433314 197334937 830562813 18698196 68348415 12998786 483676097 7466386 687017746 79869124 294209462 122860556 345545965 240819534 267522658 13918644 553312724 72829092 302201843 174980195 788314251 198171802 488229769 111750281 685758452 480038770 885245797 748030160 964115279 435272636 901382719 300730297 308855291 30435600 387895909 88856748 267135449 25211896 428765493 270638758 982371229 869229610 909606391 675806496 885873085 149511791 151242456 137369717 957591637 929794145 995267454 995109755 998698579 390979836 453348219 86593458 548391334 126670781 931421486 83529204 156081369 137706463 188193798 18086933 22174180 14405391 434772010 314752963 663991298 537066376 652959064 313491570 992705563 22169518 340643153 18486200 997684147 302735306 618800596 424066031 912966031 879475234 989123766 767303572 769585903 514220124 623826103 442029812 555649993 443859028 991741343 608434855 955032435 443286268 596716852 444073132 912792175 813288386 955442224 862430836 978101491 550960216 770919712 441856542 779752292 527481628 741045856 532312664 768812747 467848639 558297984 295945679 933285703 126901954 173940001 136458553 352357007 41936682 705787164 341034272 949400664 206238759 625329808 380841438 420541419 149986933 988709859 351057494 461204944 453416394 744816056 597702494 823697397 79539719 970383949 304152978 681439998 428667559 685902916 155781339 640440960 444277587 689387973 106086211 817150330 584336972 628364701 594105070 654408303 541210389 984262370 129433211 665449562 590549934 871105014 647704394 906440942 152852120 308373748 168489723 244851607 136064053 916335969 171059671 252020780 209459850 343927187 319032982 793524048 444690008 733749100 231435215 401680442 70793630 364149587 256843708 315857734 268081793 471492995 342429779 989710120 382435541 507911784 119791160 533052360 400840209 402612623 356162577 723995404 99323190 399069320 341884702 559690207 80475325 256885166 231202085 515566181 508061918 562455114 183666178 232236302 50999022 115230676 14575686 597624324 354605407 600030928 523512303 672087522 175094071 478050515 95486055 955827164 355881558 548595432 165425494 320330028 36270677 319360838 282212808 900551885 628758875 939318878 689988742 964721291 360058452 380414727 123235361 988628051 484912454 667330020 366309778 369426852 219020307 510776888 415935011 639403271 559963114 693567671 120902201 651880114 526135628 819845502 29899879 886560616 808118434 999515161 646140144 845685999 495732626 790320307 356174977 901239978 361573019 536114923 366379056 710407309 111777161 212263158 85793174 792609195 39217112 161355076 124299151 954878661 259129861 892259609 720796913 775548013 200762498 427367222 183863951 577997960 263122188 460184897 150681503 415071624 403529306 734847812 709308619 943412985 820583345 965832229 64996496 725625912 208222109 885838570 194648177 935818363 461607728 935896238 250736172 628883389 259774902 765120084 279615179 582847814 350668878 722217834 316611151 800259611 229231834 747497806 627709611 992820450 785179504 888638626 827462680 843972813 50134976 566689595 219173788 430891822 188467937 193521486 33848706 337647877 24284908 394623160 153216034 597198623 491926425 539992751 490798799 729798264 105241909 159248996 140546042 605657354 58883022 94307997 46147660 522307915 330712670 633562222 8381476 779990345 56889583 504006626 327671009 452888011 336429913 608265591 311694025 527494259 442047304 744842519 695453830 901847228 721977429 879963707 46965820 722627446 560133029 918950489 17022667 400152187 328513896 855681990 827831251 830120161 391109378 465773799 302102980 843819417 671014401 770688536 761372000 771847174 338997580 371643380 180640034 721955990 347074717 932741883 742353266 781313230 46753191 520873788 376346207 936437162 42014798 862481074 222299490 949874712 228703570 680721413 436014330 988592612 363349606 633959038 281791374 980480697 681685580 910425217 523399153 576254882 419320950 537225865 146132527 585503581 357569024 852737087 790295580 839506697 678105185 799182441 399935064 563778909 390293784 762181749 460232298 747133920 183132721 732210995 454008335 516415954 167179547 452000490 148832767 486981330 422248896 881689059 452237038 848915138 776863322 832471021 480415071 572985195 426845278 893256630 795353502 832674607 349932604 496781335 494189659 555862884 429901850 830088368 449966354 700847187 429944442 816342426 462580894 960817855 398474987 527153943 431386227 625789505 8422242 996229588 740171203 858209335 19117357 505235617 211220687 765988194 331805712 951326458 56248678 202613524 363585 48626232 913084 820402273 669921798 681615885 484564489 569977566 522261028 916239173 177411557 725122718 67269935 98316765 49455554 957236381 455313159 590113063 349929293 808729374 599888927 648883535 248001182 540628593 94001100 568174898 379417969 997931606 587284629 689405450 645936369 957343532 75292154 875307069 257825296 731886651 691225272 925965776 724802120 802614349 578509301 784761787 535638408 897653538 318748 902903191 77176330 135997936 56563835 791076434 666631206 975372542 688331209 852884702 100595067 549715046 333108247 545377866 134213582 438852158 323487179 654598454 284227282 945636619 916860112 917858450 653116578 997536290 693392284 914138825 247903319 275420989 30722167 402351510 196293083 860271940 95051991 790626984 693679861 725752298 599642734 829503128 298302334 717379559 676414150 780038749 246312670 304896753 268123685 402125467 113747026 775117754 647479369 955724826 740418571 959139340 66334207 445769419 84232857 866609906 531083233 833716571 62600211 421333941 289489956 519521016 393041145 532792458 14045319 638845075 419952781 860386952 422652904 599081172 397993006 652370487 91740202 977169640 705888036 727589830 596097229 861427796 607509509 722943839 495841685 649216411 397310800 520697980 178622095 457399062 223680261 591362159 169469922 887437048 575434351 745276771 351757491 629069705 147052531 687991742 147378213 858986871 731273723 745640537 678695060 865541207 381169764 673481060 110218601 910742224 700783785 714423876 530109557 782100837 316074391 594587830 322531896 557486810 230518171 289775997 226803049 884458931 400275962 592597832 164267320 818223745 471405549 873739020 850986268 992851398 505412938 905631055 225595254 610105441 15639773 500006374 403893205 984455595 926458748 955025347 614870901 734779215 314853103 783619847 725442215 774791440 322619119 676360326 106510299 649892663 248428320 857890116 14093137 529009490 47371157 720496098 691239226 741242102 390285266 884476001 798948676 812220291 685141308 908679590 159353833 728221976 630541789 855823062 628529492 998720300 671593483 861526912 615777038 799216217 63872149 252854596 30042036 155053424 33103667 582792858 554842875 786259183 66575872 201136114 50888931 412276678 73111940 698886660 571103389 982403657 857815765 875228137 863560842 969421923 279149636 922943735 572551744 851748023 700183979 900483567 483655631 810048931 684757091 774892817 682192689 826108864 195552565 615204377 581501770 821875287 126991101 923033227 182106805 714636855 370053896 462232342 455447001 516447708 387694304 802805469 34315025 554688513 122108205 695006928 583726454 674729298 161255652 326774692 36698008 186261166 3718268 657589667 26360146 286001336 117253616 942794004 324920129 668239815 106863435 252911952 88460088 892120021 210019114 836817371 281425080 893932389 811415611 848180572 455369744 689134504 62966993 458461448 400284704 711055241 206309772 634993751 588394466 843793304 84831234 465553743 443039148 912548811 284454867 301967746 151961464 843258604 445762387 819231368 512645155 889853890 841830035 961026459 218191576 455207280 120312170 316080591 298725061 838402858 442538895 735216662 114014056 143470326 78180818 904479727 681671336 979597246 416392967 486606841 188483356 347553518 128433234 744194528 646764658 859597261 638078586 688278751 518061961 774525160 409648352 463236283 454803303 518288584 461968760 917605807 706404432 782241461 184972974 384087414 196839395 648345440 107716168 438487573 129124304 496244713 219139177 441799715 69697559 249072500 97903905 677471163 386991335 810984130 433067094 984346798 779345994 783505460 13356746 550541037 391883431 564570137 397120034 663700274 351794287 537780680 465782806 847542409 360887953 886967831 400615240 518586084 507049676 726183734 150219172 296395746 43846551 307911439 185772174 254346024 14842441 97382386 71406442 532013848 88537266 288968993 21421944 305185064 137775004 743135567 724255313 884533344 379599039 572633713 566150387 739634936 588559387 774212841 167144889 896030559 221998824 804498533 405309425 797557948 609751927 673978440 426397969 448810339 376105138 596829497 250590901 637168356 506958220 989703383 600678657 613944113 201970879 403892181 150685178 211871564 71294729 660207829 104527811 603447507 90237977 964092721 487618493 668887895 63530533 711795422 19851594 70940371 32394805 704753624 43353681 917920152 29208898 868959534 743439607 763474194 709900156 871439229 558554591 890472349 135840486 321338487 2248191 176072909 80933715 722084101 59093628 838908827 127475218 872376365 673715269 862120302 803513092 821610449 59966802 151089794 5794908 817659614 343612839 687702744 401950716 944839662 708069330 829080939 487969782 985258333 193771847 963450146 60516667 406933357 61342085 683213669 195840077 567151546 169639455 514350182 307081838 557915009 484512937 696170029 578837326 719502445 692287231 960952441 116187545 370446222 293391226 521407559 255208119 515639167 442319890 771983339 244645962 475446264 185562530 339780890 31302440 645900616 532955617 742926589 560963833 752144742 717104254 928985898 874504217 956694925 104990997 262947950 89903106 437569822 250592672 360256252 116519283 782074250 606202531 899843541 696985170 725966043 174948383 446208533 261099131 657582128 351498722 600162010 218416111 742682462 55725300 895493218 612209047 962450845 798678468 924429317 657698620 667397690 608862493 982270466 328974311 709829545 661612755 662142448 474889914 651530826 179853363 909860806 578219781 773088132 423232317 473248741 421415810 770445180 96738160 148430219 101739800 524667628 301400728 841744305 303557331 896223391 443426604 835859177 57591353 234693133 196018780 584543209 218294005 851592214 576011112 593690292 96316775 932745709 478178333 512016278 257446940 399585227 259312008 938129620 26259259 878303287 770774892 836358707 282563788 435124010 268520279 607216567 39303332 150310511 129417508 484425204 472943698 817389594 517373970 961836552 359179658 765108347 43107989 732629940 522508792 721171645 412238684 692423687 284286821 879974858 390791841 596341608 315188568 361327009 95372390 498531128 394270705 565031547 448727429 774124410 501515807 623893977 543700675 719299864 584139218 887918084 686373048 991749170 568518510 752033911 57211465 942756379 522092079 542971080 247358237 760228920 200479312 823467165 469753582 815654425 664357836 830219345 592471171 733875785 578451864 909534799 205912598 533939458 122863458 498720657 275412670 683086443 409008064 733215590 530083896 841077654 407602486 902430841 668676109 847008474 470229528 995898180 196122214 677598844 267520005 432588898 303734128 449992676 388224308 569035706 213504376 379973210 35630878 474783314 262149769 324887109 271396953 513248210 411725734 672986909 63360508 813275421 412431197 937686612 225458198 705676049 232598721 425443576 198278058 687500595 247329479 548750297 29049685 521517978 236014987 793195005 585695800 795607473 647215548 756725261 16144935 621181265 424867560 813958242 272546674 969432777 494233160 637403886 47063801 953071305 662329163 730805418 36760201 355357624 37477094 345120306 226266376 643300009 251505817 477301922 59560043 631027147 553828283 841890298 838632944 975950130 550035267 856505228 489146445 521291821 333906969 773889260 586893484 632590722 274778238 753681031 30690823 380420078 17811059 108437346 102599790 332925885 304804794 692904431 168134443 801334551 197939025 965158357 73294663 591075819 384199595 479049903 86070298 881773566 458444274 934940432 812341138 887747413 53936140 592641923 174409866 227963228 152232061 262809985 92946939 753612965 649837537 894317312 351056182 920995600 635145135 834945128 367790306 544551728 56166644 192069176 191552216 752091804 697139684 771582921 692140071 776693286 46697052 436361935 425986895 451924539 324374788 570291997 209652534 442184428 373914600 579594545 98252712 225044981 42956924 256408650 250965914 390139982 70554504 310871586 73177483 141635441 133067272 629300259 373771332 538399309 101938866 488246826 405344155 424308501 118756402 592063107 270975180 608578968 207907380 739230462 323663862 611183926 380123021 391644687 8808668 40289244 1938908 812978663 325337688 507980320 425112895 789903333 168157262 389198621 86773316 852594598 750294219 811993610 246498599 902814383 47959207 868406346 94084367 106842253 52863402 218626239 33859352 407092705 57673541 927162803 721745614 758639472 355234606 525361435 525035813 541624009 218098821 568268000 541946590 859131800 536493069 913760882 644724302 694114355 347427155 672203304 415481699 929978357 376067874 966390526 500105623 524098228 400709092 813709989 456179012 895361999 455712236 855634372 677911131 980825922 796739286 834335181 707678212 960947370 415333393 543127242 104512809 898575844 517412206 752373999 495157592 839695770 514864337 588594165 120651432 784762194 259150635 860921801 256475228 420829216 77976203 417479109 360088818 947321840 497290960 652529743 339734136 771321924 628947442 945295685 200489274 754942290 553821294 607879151 392110259 769470744 14717234 316140530 263757317 375168534 234408598 853372842 335688063 717196603 70174058 872011571 763437287 895600537 203011103 284314206 43987060 786743940 652966164 897404211 549437445 941659115 579508952 694900735 430261917 823570883 547235639 977705339 522711071 781515510 616610255 658728621 195464073 304108479 202904227 705910446 439390199 613017569 586224464 894038687 849059285 949032471 529165452 757704287 711320505 846198309 56885286 765952908 413868570 551049842 233984535 872792087 499800042 547466844 290987493 789387542 422255102 585883626 320712931 423330675 214869801 846959283 808961908 885796982 90669329 575036368 278768480 834776177 563328252 824452198 596138803 912859398 507168938 909983154 808560350 916092702 750660331 980411657 540552274 941106588 491557074 521664983 32066463 983803637 474546576 786761910 23384235 395331411 262008184 593047110 409297698 805253015 530325872 882925195 706683647 920226932 889637031 904579114 170601627 699604907 471041701 859995889 271931200 985514444 434435630 607987995 96525933 283453303 248267095 377784418 217402075 355939385 106620748 445259841 428221177 617085737 456448984 477020511 297303719 643795609 412305318 966606037 37976262 256673456 122058095 469325507 275373576 982065983 843385264 886750671 8982347 240818479 202412803 254522919 86502091 969265586 452051631 844945005 789888373 979952930 458968665 975270797 320262906 324480389 200317891 219684866 145711376 543792315 433006752 649702912 537487412 714610744 299403905 303604314 260296151 926716264 318337680 988980456 725930967 926537859 810150696 965765451 937965369 946094535 764056976 936249815 343329751 914371013 814924847 853010340 489576901 528239732 262739190 468559433 170082915 681774634 524247759 989259726 512984440 606383059 564051567 661441074 332361846 513655447 33380599 84861964 903383 974393058 407370834 861987019 398198264 861543003 238077642 623953104 259317738 746493020 37486957 304358392 9303970 773306786 380797936 503553149 173612175 851818414 764608075 990117888 417617709 680271901 489380869 603925124 527546643 929481196 562116962 755752928 452073686 919990272 182907732 517485067 504796438 592058920 374804681 602306862 505281667 567537477 559335666 882048725 513585424 577114209 313876834 356793300 131406836 608567099 286973656 886949887 124843983 128189054 10626098 416178393 187128291 571410967 98516517 365816098 234725429 914730415 489266172 853284383 828205671 968901617 174755376 178789182 94446002 864362392 806288549 950751791 761765377 992526140 456281035 944112850 52076288 939843749 4436452 258839111 122589273 207309729 181154534 598824083 313683972 915723777 443195543 763722177 405819831 451138487 184660966 837034076 485545189 989832714 695420275 714431582 460398822 783055456 5370480 346937562 115195924 521775187 495354339 903168388 375523932 975054169 853039218 897248779 364919699 867455217 359591423 531403292 216393278 271242932 229135426 725653366 208176455 721501052 87052212 887973406 319966198 800807467 330622178 799948343 645327214 810711191 480641277 947949809 127251907 132299390 38965584 46709308 4395726 225654521 145251889 425298018 138654060 624535624 392372004 722234054 137052528 905200178 370729782 697139372 217112052 782863908 57607875 453563128 386267119 500840309 301079308 960876724 663182978 713923145 583852816 608730783 459808640 979647766 773484389 940743201 239272766 498941079 329423116 619243458 250708615 423661580 230816402 846807746 19126324 877374660 561905635 690929492 285296455 761467026 252616434 586102830 552270650 581719684 493246965 553002218 481234624 844291232 205931223 398864907 236216880 479213560 363071770 646812409 255978259 768988721 350192918 557930004 349687014 476286090 287314864 743164370 461365000 476446879 303783728 350837321 230869886 543896265 115144681 423381614 406712199 740730630 551008578 633951934 8694616 339379107 190634639 323946238 244906931 263380482 237011884 432822706 104559545 695161166 88469308 210487292 113223084 887028834 837478085 852743235 788274772 827405324 116669483 220360270 207361613 427243477 392229360 681366623 215960009 790422855 390665506 948518338 86755869 938948007 382174480 731116358 444357023 968416447 571375812 841062518 790294534 924929997 853009621 884901748 636183118 640921016 622018997 757217871 206616392 962539454 407415971 879933669 18472009 165664609 135016046 317026610 93338593 708035117 176815807 962327148 113032216 381146794 301860711 885929991 35569760 686877984 284064416 378066288 103791002 300349237 16706953 794826189 161750413 352165021 238219096 436108405 214074315 826264725 543270268 862679045 807692895 978958650 609884436 664828608 367361930 419722077 205175725 751516671 374974930 736438522 575367089 797572417 24618350 881367128 39813112 793243278 602803982 895984890 349158614 658718417 6374481 383773833 146639317 998843714 888576950 890525279 861828808 908125643 815437840 883948958 592493232 924629775 874099998 948135052 111395828 430727825 38515854 368518958 166873285 445568240 322646709 726525013 172473720 323211536 9874001 890610068 251556653 765162868 360370297 416199196 115824546 902949845 851894911 967908176 414619963 979744622 635496066 638148503 530800559 629955678 584112353 753303353 433843014 991466853 894132646 999269926 229993791 795582664 630223456 925376186 742115291 853037091 27994418 229081861 142702339 308393950 187229703 809328421 196441889 730359689 450195864 752337445 131355267 580377422 460448992 530346096 254773232 864244848 182521029 801241685 11135917 889947826 217128462 576760560 372299226 486353517 366849423 428878952 89383099 648691401 520003939 830822347 628982609 634358105 34974870 126689310 47646590 620826649 597978326 870562397 539269183 553758833 399987716 589724128 410017612 516265143 98167738 881398584 232309372 479252872 42921180 478552682 393749467 666678790 556971686 627624525 255487306 855182818 503705211 548340552 103873919 327063367 65566402 98381542 87582940 687805209 2502055 873136254 81944695 198299502 130789772 572014359 166278352 497241026 320339254 871011887 714171763 950470087 449644160 598460239 335161689 694090372 123994497 284750513 140117806 472190992 457868606 465076531 154395262 929647956 907693559 969554134 826765321 832309791 179209431 910247170 842283999 887514191 814505225 902874593 8261607 18258311 6319672 608342529 590940114 688794667 232325817 922738960 90371873 473542305 351257070 385444454 213158154 452241302 169047193 867384438 772421171 800822067 430143345 732353893 566762222 965464482 28045621 473352886 446102296 591443494 239634283 369286615 121795553 215885554 80855343 338326563 51098077 249623296 221305444 787549234 518788145 831456765 823839430 967082941 330130683 558693783 49456721 714277343 442948179 923805358 882776597 930956036 696797393 866402030 577021350 677216935 220388038 955983568 244166842 909794160 456769690 892767188 189529910 850830085 579063327 737917756 659952634 750250291 500879515 533902357 445040111 882724343 846361761 990631855 477198486 543232954 216618650 528881758 439706687 748981300 575727823 677771897 361273690 947243562 575381637 778399851 316021942 449557822 340648289 776750924 251958553 306202846 36688644 894309228 821425052 925153529 494139566 541066059 231916919 318957381 158288493 810334061 760168999 856513275 394016342 780788899 779053262 998443188 970732609 979745478 507169627 519023574 473481510 726637745 64586033 980204920 237480789 930684330 833010775 977786678 318704281 362045021 180300795 320270329 239137982 289157168 143318369 706620954 306641367 515167070 127104805 910688048 49429281 66943744 62472543 823681701 150431836 831893868 805215761 814266617 409828143 443110509 222218288 673977405 464876272 583502239 99572398 292728766 152831925 271565390 25884213 779437433 92021860 137400882 45634157 123870418 119939933 919732124 549212973 628858077 127058223 279075793 206285084 946657742 402187835 481426786 263430390 677876153 97956768 186546101 96069828 382319943 191229002 634756034 607682671 868867750 215799396 254377765 143820161 742064710 184086521 841877700 632410858 713633971 598637073 748890433 116572249 841427231 499832443 504772880 135313876 813705471 308881770 814847583 755561109 806987753 655165218 940181835 175410532 628575560 251146707 712538500 239645229 298217443 187437608 854121781 95131713 430052740 167970998 655018829 58303879 825511227 165729074 724202247 194366438 419605352 247913633 998857799 963252662 980115782 317800854 971083685 970268371 971131715 98549141 404617232 115515233 527746581 503614596 515959726 515817824 910274896 595457204 599583109 95745693 188167867 147387068 603087279 58626196 164946811 118029903 590505920 271376908 504404845 365706567 696177469 647932406 830537188 715547057 849637276 419880960 662401846 182452938 862190122 505373260 852499974 431262531 610023265 235929183 920773558 297902952 788369883 527876889 711607078 293488943 674715887 319799287 389141047 344260506 530894863 251692952 940304883 707504610 976691741 363554961 908864961 645008679 867380453 653815780 886036410 203696936 707048834 580953817 847956263 24910697 610598156 432598027 654527710 158240119 262289816 93493427 327276466 230159070 969025568 66421361 311698233 130599249 342344127 28273481 325340275 124516760 716681125 230888006 591415427 555342067 764924546 273394146 445594874 135060277 866912504 472665475 653794118 263596876 510911456 234608437 471756258 63857725 536161968 9469740 804623889 203475878 583183111 115922643 952167628 264101201 735109364 58214046 159889924 2303976 916622746 678814853 996180677 848345173 876219304 206020100 830452457 808231289 934844794 516373880 747136462 125817785 933690843 230172893 691704855 357737918 748216307 572697648 888188390 620099622 742250427 70628555 502078485 492081184 499952027 425037046 929214812 620263035 974498800 423363981 764541282 561715198 597455448 109459735 414487867 128262788 750504633 315098139 409357674 108589456 448626029 42111148 833646736 560718122 881928642 514957130 996001204 479501348 791528424 636828678 662690155 453885765 896485394 183748143 549019606 96718839 920111786 758935855 952418994 36976167 902443089 611124769 751938371 618286841 664264139 188436340 870840187 754907511 763044975 494893187 855449236 81232908 732645818 369434133 792912411 622291952 657279127 168380741 514342960 420950614 658596557 230723907 374157252 243425735 906726708 897990154 984804152 641259919 749047018 95089940 348514724 9886142 613354351 51162489 443629446 370813033 874420874 46577240 262287943 24212096 983550567 787495777 840673072 141695125 532969913 403461913 418944508 96919806 188921774 159679994 712602040 235712934 370102333 200555845 633143804 11387458 526410642 254424176 678703044 572825826 789773823 374630949 513632537 73080804 247194853 87149569 238716824 20667189 510182896 271583558 634794673 220977769 947314933 694404316 879113400 580934885 600075984 179941595 192521153 83019240 97033100 27262030 510591471 24856072 874950083 284926232 828942374 779574617 990810477 710309504 801784892 42958456 405493046 293596631 910805636 559970555 816423125 219862009 479668648 176622379 660772425 89278978 279170329 96416692 351271463 195005975 800026288 238671925 390656576 295854857 448907634 408202582 565088347 368543604 888819881 411978145 749354393 450037595 747828884 416853455 718392747 176551916 303938435 216443978 312315207 122018247 873123621 271373763 439602085 98583409 996886618 283154775 329551498 128077871 611138211 130018067 826931322 531174480 638583058 342234599 532695083 407628600 830800584 438218394 593028614 8867056 212906397 150105677 674912282 616199846 690470463 591504102 909470459 813502332 847768379 820518211 991917499 74090593 83906438 64301634 340851302 162998071 593156833 457393779 511967752 229697804 733706923 214235601 646543344 320884714 507199810 465377092 815545714 286546028 858434475 617429542 634796403 200928471 271696401 204704783 936720157 100999701 507847989 176254554 910079891 750351506 831901610 151641775 630663993 590920806 654764902 454637426 467297526 402266390 984121421 873035175 966864270 343297341 561190068 378552869 633332023 326019253 656441933 58728260 435176800 17652456 673294684 456468297 794986521 677245214 946917475 703301912 716272501 621644668 687002290 587564795 841937083 814789525 816611804 359332349 530139360 285352165 616803694 539523744 943025896 303482902 734683001 539475455 975172471 871834129 958384523 755747200 882036059 56291162 227136220 91866938 605292088 155805850 487877788 124165825 454188884 348129695 420265521 252360340 744506699 67555727 374929289 140055757 463526969 123424284 315546736 9171307 85127135 57192650 574160053 459620277 704978271 483122338 946554454 697381134 991597987 446143955 668512599 472849896 881928441 273674946 832305455 667061802 943773187 573194300 771620105 391566654 920464200 731840440 829150400 134486771 875240066 335099146 989581370 485316725 868265639 824645549 938927914 446674366 543964338 160226528 604584316 172350131 654089096 561440991 728959924 703834928 753743536 254755143 498241077 39018095 845798575 592099757 854362376 378957440 780585127 210435483 759502018 626910555 707215889 513801657 916284408 607208542 688478740 178394197 248957819 111249268 129408480 8364103 416029703 110310845 801609447 650011167 672574467 77796435 446999024 326064706 918247758 341127352 453105213 224331526 467378946 349224062 885621846 873806757 887865019 765097921 845712433 201792230 505322153 496520988 745125960 143200012 587637881 338007082 687499028 62291666 189992396 131303334 624638571 622467513 699489157 610090269 810182149 30282924 822333753 11176837 378789383 254686782 955776781 252017023 841100651 434787883 604875566 17007038 327567752 229019879 260885033 257560299 517434114 156126179 978790572 839276445 855790411 701800357 883246096 444347485 698333510 587353978 675968449 75547357 747517012 237728999 789552068 298327300 564282653 526202986 963113504 375858716 492093039 284936074 808243709 253330114 391624154 81002066 428576688 371751145 815217539 545920794 759713652 100506619 380233101 29711113 990367418 360812129 832323271 437798857 849794824 820068338 892385165 561756361 623606140 37849944 82963844 67242492 777234716 46872131 99112700 81654737 806132962 698673527 828815145 684087195 736978152 735306349 795795248 235731316 607198789 227693460 797933058 570745630 805475076 20021096 99790503 80289084 478900567 287361453 842771379 114125353 207052555 69053543 809955039 212805512 986146792 516238367 613222204 589042441 707681479 591198150 694988567 658721798 750797314 275460646 902064565 578225276 935427657 510485638 621899509 482685433 534594781 329062600 631896040 267599318 602710365 408901319 877148568 772627642 878971186 377276691 577511877 454378134 667995434 397297153 640095171 260521791 264882850 228563159 352143634 233448510 645369418 495081584 711793882 161169485 989734487 482877913 864244100 767316951 925015683 314424093 427565739 416133588 524945828 81427735 617501752 44919035 569261909 399494088 548173326 90833217 108028865 18058738 633198783 52422069 745168593 322180975 998337657 167265674 529914896 449133066 499876782 267323163 758536826 324940986 988679559 34982228 293261753 291335798 493430854 287740796 659484550 348058783 846252656 434251981 915160406 389664103 863787609 643248155 853453219 529626275 552166581 179259483 461500072 21436709 684961314 74491141 665474582 393958572 859258488 248363333 741355564 340361374 409404963 271010421 596178720 519558792 538214829 93410320 374439717 256295873 954707831 433283692 527463714 33200590 779813092 163695307 734628318 120556276 898287264 194198838 725839471 502542714 699023082 524254195 913634468 635878576 783306454 4823951 595726593 264445565 470038112 408337426 787739374 744580273 921319599 737360964 969853464 254288486 533542818 91110906 482058270 431067867 787351794 123075252 403820567 1089969 186176839 93412900 848880246 413055959 828597485 473564097 602485671 333601106 544336480 199140891 930817131 505118514 786803308 294166031 786476138 139879526 309788481 256380316 957539343 786701899 860919298 468271547 985139681 155411700 805452722 258925354 782548886 350004185 508243423 63342925 647955351 441049090 700486142 602498728 692298775 349508075 778524315 643254771 886353102 226842831 560739641 46148461 585286562 215567133 355553116 286078154 993496535 524069481 600906992 527631412 533648500 93792387 753614108 624798915 869357641 456503350 857917884 228891284 364635283 137755015 281307348 117208985 555098943 302759713 385458835 270402420 907920408 147554356 624231619 22675449 972342937 591311380 701724828 140882155 261923627 237781318 283482158 257191968 488904256 195054081 357911407 31384486 462312492 239449261 859665329 162943564 846135078 52773348 564140569 57927744 778010478 359982571 362818618 82844709 157981635 63950692 851381349 179085889 997966946 983374690 992498933 708149699 902229312 769927468 984918193 538354083 669525582 429589348 453361492 178659483 743120987 368558716 478673141 401423621 885433353 478685493 696854933 203398633 437827469 63258596 241658864 120803541 796814358 254680429 280711050 145239240 185457332 19420137 383257171 112474877 296526622 171651455 679251351 466847835 579213312 105015906 475534195 424633814 689347249 370707886 737270453 325745535 417211506 358221145 825377441 116174619 449647278 232825514 519434186 237652156 546391477 437529765 848713888 677551489 680722109 311530845 539879584 469410793 562942012 456304564 814110096 686790052 959967324 592346771 617784122 119634360 443987718 48413108 517203623 467104408 480715596 177403543 877002175 716060417 731743561 584475461 778605857 736735596 987002570 632512721 746693041 429320867 760988887 360961457 995587964 494845180 833145756 260796146 779760814 306860808 309786590 110250462 440902231 87216292 958449837 623144616 770031460 450552679 642538011 1810380 207375795 134526498 926594346 737964538 994143997 969249834 983638297 946337215 995174619 566635858 734719177 449862203 894599887 865872250 957865838 102493962 976431974 718532283 768126958 68439794 575841071 421624898 686540851 302433033 981768949 318326637 510493914 501745872 955054751 930350094 991426816 397371625 460403684 169310131 265959417 173701368 487077768 477975271 517009171 449534004 791025972 717882842 809256071 241008446 894755296 62906335 142957656 6519141 892908732 180920327 775135177 14905811 647575388 643130777 828018550 339984601 786074372 412615673 918082473 363038219 704654673 324247147 531691317 99775933 401362968 122513000 578861339 435393915 972675092 341177331 466743989 364435257 692371854 55225981 436766327 399868216 984337628 262741747 318529000 209059036 732092315 172268075 254529145 101256370 501594255 9112400 699921381 292284704 295285945 154044066 317545277 70902305 381056623 213103153 716903247 64347922 201917661 115624873 232087107 84002542 589898408 64770178 656310433 463328551 609596261 260838821 271273718 58867336 214206179 139567955 345857483 82510842 120002294 7017278 940498885 93605014 278862863 119958155 248117048 151190787 655031375 63942871 336028351 111103853 128522044 54540070 441331047 151814251 862697435 453692596 783303435 569322132 743131484 203192782 966398566 266303132 510075866 41302245 468906816 15681594 225707897 107441193 312127183 54407418 137690478 96659571 165763368 39111857 401171903 341656840 802360008 688491811 954274860 463672055 839482421 296625898 849632267 406058061 761723924 316414805 746778470 453014830 521585054 84349411 118140601 44912358 426172995 413429962 799396672 96933658 567963812 106830733 194617887 162967431 498243654 337530587 707329126 499337459 698010957 495638238 713202277 184991871 796678251 556816815 912547797 337647705 951330705 537539293 608964884 570822027 904063871 265659094 638076870 543359398 650421153 34788300 781834743 636262221 848921013 739847773 961201220 508658399 891166683 102722773 323098749 322211530 382103365 108053272 114861328 3461209 620140017 304560962 445934328 297565075 563727162 26633983 64826034 42262379 549728382 392713004 436927469 249466165 385615105 126497066 334248113 164915487 424969072 10389793 713780211 71397571 776721103 224411644 902370331 412738541 531191848 391937218 609572665 252183339 303965868 215865231 675409272 278371219 320362599 163974842 523246528 460804234 706662907 234243328 611589857 177733374 237299990 71269334 809514833 108680906 570157296 424895888 649128280 591895214 997650986 770339310 947846994 818111783 946559793 544167483 927462396 136667218 166053031 53965582 870213069 666813476 716941646 378719347 683431674 659150691 810264510 581204984 709746844 640899705 764680985 275150004 780265251 316549426 572794789 257369349 310555044 119475193 681663551 26749698 86303025 22136647 424477084 283875189 854789520 564652445 666823887 493238152 585303707 271256734 817359625 756967704 857482662 451159450 471616321 217893816 757233477 533944309 607193978 501916430 818610058 308802778 773905764 369646505 585400750 177840501 274210855 250868452 535814460 128830814 171374125 33071835 46962428 28164767 151159216 60426704 712914600 76409823 917059187 97110391 902367068 18858340 360820796 185194270 218003233 166762763 932621929 423658274 549046928 348724153 510035129 439902237 962749066 207575531 357951169 183703458 300843807 190602989 937467604 168589935 588961318 463575894 799033963 116129410 971750088 728136568 790223873 614425072 725043284 307600313 502049414 243208999 895889879 260399526 519795682 499837065 570264387 510975439 996242491 420327932 889298784 91423978 347830324 200910006 672948635 12197068 172057815 145160948 581260445 110676538 329962992 299857315 497383615 326069061 989738037 937821912 987931427 533689811 954133910 932866973 959105986 520184979 621106942 614962309 814104590 728654645 963993096 524459217 973392809 784363960 863060256 328463892 750841865 526147143 739512453 426558082 544040005 72770478 81358844 18760029 757803982 216913537 908474807 195146549 951354008 356477687 840780655 748455865 975040008 401043024 882280014 75132418 849017284 842910700 911795618 302292066 579536930 486478517 607948473 205307015 537608351 262047879 765183416 616102201 817902110 816148412 977540275 519154157 648480652 483760103 594300580 5165267 170085035 147120531 562972293 77114183 736392846 382056804 735285648 79319241 724479119 436683917 556349112 280957168 804206765 470453801 917868290 439981716 806130013 314299621 706179485 638318672 899413989 642777447 718477521 121228909 539303943 63226438 213094635 108478772 647957514 285108378 476145935 164724435 342161353 341186229 359907899 610723 394842992 359596793 811691060 58869330 906623601 726603218 778708179 677103275 922294531 403606201 489580591 223730359 650654775 363297186 815319813 695421307 988217015 914126860 927671463 510613397 696656093 403724545 677519698 232191279 335479456 92869684 774070802 618397086 659705604 288124717 705285202 597382398 925562873 63377294 737853792 241574252 704548111 298325509 369505532 233069881 873271634 657581422 813397974 123283188 181908664 73157821 970875834 215438222 997032029 779495007 811390471 261893486 930969983 90957398 195312911 168885808 910641446 582812088 717925467 589178719 993675111 381714679 758565652 293082378 300227572 55008370 715158879 276263439 644174836 53124449 170332691 5730324 34197335 22708974 412820988 235327975 883743778 228399612 986435651 76877970 496074765 41572125 720539874 572674398 875291898 1356678 964578024 170222255 603883436 75142659 268813657 97828949 121834548 113722478 465305938 3602905 86854389 19655079 150134715 3926268 866587646 109545721 126187014 98907476 418770312 407999677 816253866 755701575 761320522 136288923 859059563 425367897 429946478 332924900 518730125 466687971 910412900 642354531 774572994 245474562 300385148 40950691 574926616 472275991 776533405 761981139 977029609 32925801 75435050 24979652 716773426 201626366 660867247 356672541 992226011 649304816 937733933 655117276 706595140 192976628 815408376 763227096 796979937 393890578 693592497 479750219 666534880 177301306 473180480 397439963 510450157 472178398 805849194 267935342 309090646 287462615 523990903 377798792 935143282 565978243 783062884 299533979 687486159 625207678 819926112 583184844 769446261 326564601 390543954 56870338 385686704 242596076 420980191 148326146 893443213 718746195 822574480 38929102 921514106 787577375 875133193 347350216 773899867 295200403 433440861 22743768 355576492 71620493 87778061 83825880 188546721 131411232 332914341 169943532 600213593 476374750 560438828 460852166 916774558 154438928 349672443 223895000 561966536 201074264 405649169 309311850 394340870 114896750 123501839 115354767 533202876 331028572 342422742 313865210 427409749 181739632 570527497 554147658 878143142 639921235 993770594 623465047 866653271 622845862 996692295 316919861 952425506 65773455 384843009 109005858 699797044 661010469 704208109 365478728 908948033 650792970 952563506 939093420 943707814 675321486 871531714 84562790 171160862 105130545 550834084 248363390 863769991 149735047 698454407 620613268 964950057 455301847 486821893 249760272 642214056 578750228 671032689 16025254 709120942 72979258 603526827 225258708 638483961 515527638 876239534 503049201 656405422 75451546 706982301 473970839 701176683 49572680 209213336 5746448 992869361 931625857 940439447 849274265 944357222 825758301 963363176 370673015 765871308 212380806 914888046 149209965 945315210 503878355 945804281 769452748 933467021 702248503 797518025 515580074 565757075 521344134 899074930 437251719 612808261 411166093 529214541 285489272 378324157 337143877 717033140 509584532 687255745 175755765 576336960 439618017 592476834 286298492 934903322 440286664 901078189 536375556 557361289 280223225 906443477 357783168 562907423 110918789 368303493 33509985 806406013 439405756 943126556 180307012 429761558 174389839 432407551 89551793 580955478 405065232 447969724 318865313 778840811 383465423 654917177 340972863 387538495 164474028 316304843 297694713 656575908 600160090 652177942 223971134 230890434 47571521 489560324 106630847 177678471 73362682 484584191 433424519 484996317 55350668 727039795 591966406 906022377 815516457 900748248 156560995 195540388 112940271 939043395 501726695 967600273 101531022 293489314 232163243 429893261 157441404 980746763 924187524 974037876 161554865 690843839 370434870 558802593 133322086 300477333 205727241 965390988 762455552 993624207 525119014 758694864 261597554 270935686 245699894 292715471 187189146 758915547 530879511 683688989 164297874 955988499 654174584 778659930 505076285 543468258 306769541 332515798 277928424 487836603 333749555 808679061 485089848 913106484 757346287 828744511 533275506 645008260 441954184 903159369 478148182 944050621 327590101 477052786 327209030 558207945 12342624 263550914 100664191 636601858 329381610 424858916 392797118 560888245 50210296 987399072 303025448 501691100 350426740 803671162 737704845 997822529 323854434 887815584 567316753 658533244 125127246 522869724 275027489 398835014 22266971 733241051 577986812 907790413 372732949 689022184 242076203 629329716 65826968 687802368 505146886 508218471 310478685 450054653 413867401 747453866 478710779 612876733 444335125 933323492 222243260 633926634 105073463 944467773 869195245 966012424 467421991 690899546 28880964 492213102 250211661 549951031 110646532 619483099 340727829 452606125 154600225 819968657 101992752 681867110 224591611 994215609 742159230 811703506 777870922 838653702 33983683 448988171 340915908 965542563 202178993 564996778 74201456 162401104 14838901 278869645 69215374 110244196 2027213 700649505 306280059 716507680 586440991 890139683 409459796 845026952 505028481 798168767 310780752 771487288 283779922 361885718 221717910 831053237 86348946 464722986 46979063 56018100 12293658 799360961 773203391 895494621 447395378 697784176 382768728 860277817 526812053 648633934 85562914 418468811 328961906 376107506 172254759 249528126 52888628 660041141 438375082 915095466 324813396 859693151 794252893 809423173 35321000 510093702 458464041 920784514 648827335 823496123 627589774 948459664 551556941 810104996 351250443 745766844 145486526 382200350 202350850 536129820 52409745 695863206 157392384 628336547 455562771 664939516 311116256 763684994 431407925 658017434 103855718 488807612 381530887 936646811 853568882 972131700 345863849 504069056 78552131 503641123 236435823 566481980 497842156 691397220 224829300 876486652 700615468 961414205 729778101 949817595 751066674 823990194 557988350 644930419 557701143 788774836 392974159 643959636 597770301 798721852 18157312 907060883 797969289 944299727 571579214 624241064 35337922 961287356 720298645 967360153 892279939 931973413 265863887 969800724 286699668 745787079 169022521 619472317 292813504 907288150 8744797 113825450 62465190 194026221 111793552 175609049 146245305 201428002 157289866 702278870 101727819 204672858 82415006 267901047 161950299 587711576 325948303 859866627 787149546 788235230 116507196 244330415 97143785 236603545 54975636 308519134 36345928 66994504 17297043 916569459 448169961 584592982 538903840 904214195 398378555 920430102 27439104 722771102 367799044 398591537 230598612 413047842 166247449 973584664 82749935 688876813 652532314 940989210 470162304 741753680 670139290 724806310 256766935 656273260 472588019 756749663 157117473 896543544 189339674 743728296 571460089 936503639 503204658 689593293 338603164 342176365 198170922 814939540 744417818 997592586 660945592 751862804 207083351 876697990 131854853 322920353 180782017 858588449 321960198 706361018 662216846 840056372 798693669 832228251 222904137 389166419 35987367 876626692 865938047 950112676 441701660 784186521 424717476 940433149 445265354 710262629 459367091 526901131 46737837 513074590 478634945 800213020 408998412 459714712 165645087 496050525 257357531 721995789 182891969 494140574 65265818 477959109 163893197 289599154 60808987 587836711 72956129 726147991 33164535 730287972 257171921 259004560 54232381 884469651 448380327 634678886 492787679 554765961 297182429 823954513 456246253 518660069 263759715 999490569 490718353 765698937 320860623 762604587 418460199 498780346 391504972 424177754 12959928 562513575 279698131 370324588 123981822 674157294 37124295 821569481 515069747 623609511 279320081 349921950 285665644 462259033 254168112 825864393 353532934 878437139 709076440 761377359 317497198 697317997 353607004 932064357 802325567 821316230 234845325 940131311 19668629 550882782 507893558 757327255 650616020 775840854 500350937 705813253 511208029 672387818 331705030 894728766 529179125 972018305 671917188 901439760 655479511 685991401 377842283 504933471 401222282 465919586 158690608 487234520 238840916 617204190 283773985 651766137 607315084 986959768 465331254 850193519 415257863 850813142 275955540 288555923 224003574 681374067 523963911 896442052 318313495 408784100 26318579 659835683 98008656 172677149 28756619 209912177 132730540 910831401 183761838 377846901 186949137 376396145 78529569 435688725 214861101 554280127 219348300 444781209 140036950 903555471 828891789 872361217 358110617 704851487 402047594 861382822 325644281 636346814 530381455 851891573 730476117 746012640 77264170 258613551 185372598 567956244 477970140 549011048 508954609 873335766 667017570 970240544 533237095 552867548 262900177 813608584 273260363 770349137 386490806 669353250 508017347 996351635 388338250 748972152 353665303 728647280 54702355 785458788 528653452 939207165 1430235 718783350 528375727 721988971 670010036 816846486 90593313 467169175 321995159 517290688 130160558 903077272 723405026 901208924 737783870 868543629 343365170 356364697 28544714 282304567 82548438 609773004 231476719 734208356 279778316 959780165 405013928 875627053 127215131 391098678 121946706 954927211 622983071 657813750 610423057 781872729 45419908 653452997 210289283 540970183 260110175 637444641 247549488 812239288 387134056 905464897 826863628 938918622 879819671 921417286 182051272 955125585 509405367 556256284 321952504 898381484 25843020 133178015 107065162 429919426 341896210 518340606 4474384 578294567 409645631 451845785 165605335 838731682 612558620 953644587 494379510 869827774 492168081 863110592 39094958 272256748 251023930 452569583 362936370 471262990 237790997 849680803 458192022 787413350 426323217 450141146 218101022 767855632 110480242 311346177 19284215 948679659 13247427 880542291 235263703 663823058 409439005 783309808 646754378 735505839 440642794 615525656 255793506 542815570 123075906 234373496 141244715 835651249 669315015 898308529 768749964 988110299 179368423 963706256 461504 767566775 497294884 754400739 412047591 565473331 465075245 834858677 815654635 968573107 30348399 854492566 386880728 751981111 660281607 962825602 572371175 944286205 626328594 943067546 192789248 832532455 73203748 753622551 386805068 453868116 226905156 351762546 246510164 675115404 99813092 833332907 748299706 951162858 455665819 942886074 533894025 875719406 829309231 998435600 770405183 879312354 214335835 849751990 551603335 971912793 535788198 675606873 276162729 574810680 162717686 865732323 416570176 517666395 85581500 766652990 95797980 131336180 112432932 766852788 5072141 970734226 915295926 954067388 395715763 545014952 86004723 646087940 501712293 841481951 631813371 824344539 46364498 185077538 113463995 632452075 72053926 196484364 73298805 202510078 179652317 392867468 176128392 686182971 275092471 703162396 604465543 965842353 244239006 849595946 204896562 586579533 470536317 531185581 112294319 188254635 147940716 702605214 228852093 526988408 462602802 630964198 263323885 755908475 565003093 757242091 367639555 402583407 199810122 408648674 142112131 949346321 851663118 886982000 78481441 610447261 29806884 311972775 230228352 437841838 428071982 681512363 307073046 637348521 115068349 626337397 289211526 485094290 349992352 356895366 316385127 766916400 740516805 816906758 637477986 708881345 106552672 410156732 133374875 299860697 23023613 827880758 216810522 951082431 892905332 972210814 134014684 915065569 527887955 602464200 401852939 535354217 134192388 386636467 39103693 266415009 172981860 767410718 665863865 903431300 654576352 758715574 579320446 705193643 398912987 740072677 630662551 721112116 288265725 759539093 474581259 626863006 178537634 334920983 246408452 949756556 557281654 955433640 725325707 919893196 431247825 786944670 696362554 772770582 748146325 803115749 439342609 558132948 306618666 859639715 345267560 593151792 319471023 756204167 556407805 829693628 201234707 444222693 312786287 668501193 334580186 462135799 439746687 492114809 380370830 571628332 80999819 218032800 100439079 317837665 179405532 394566632 146062571 447990464 83855326 736167424 684966586 917586883 588483275 908198563 681620281 834917862 479443679 686150262 145417268 702049409 472124337 570515264 170059972 193836079 171855339 346637700 234829692 409786552 106776458 947582048 174587417 323458364 102413096 268411237 23803099 596501371 311648619 379249876 344278058 986246214 248253244 319437021 152259839 251653095 179096650 824271777 566827405 758501782 510994350 546535201 48531674 740720791 280674102 394583444 16445587 946276794 779629049 797050387 99519478 693369638 529580975 654422482 228420328 917587757 520552571 695993817 401781522 983748180 357435175 768011064 565863499 806398341 483513414 903944855 883798083 945586088 297858620 744870685 527218106 642997961 207160127 841645748 278518029 402818015 200561602 660571761 271113749 438288581 201777197 393705438 33126318 974635255 600796993 644114108 139473345 544982479 518790383 547955462 426942167 975431841 943599484 954924060 585626034 635142492 42564206 853783415 13166205 446414763 277276599 805662718 778844094 905381672 661038389 697344317 373690156 625981047 105524265 951806205 844984368 984833036 372250227 495908771 240994281 776963080 54290530 338034262 36551000 748773602 426562692 780519745 360425847 666776177 204317656 210552725 70133027 178615156 4433466 572721485 64673594 207911260 44646906 856316966 73691542 454082028 56474038 287384944 284563602 925821810 405914770 748325768 389882556 416774777 255772840 748445759 621996451 718778843 368641906 926283012 235625905 536433988 119459420 370469640 88548948 98441592 56850498 460617973 237166085 593097904 72117507 834263323 785291897 794953626 711833983 989331274 201400480 370767774 51124867 931470473 262800336 722598920 104602520 994465639 451638016 669335129 164316469 285851280 36528407 918161004 432102497 628925539 125228029 462339799 142238812 429280705 319746141 439270125 421531804 690935094 645770309 706217442 111597607 372808817 331267188 692243338 630340924 942324133 148637431 864545865 674248089 750213115 726835431 828600548 357997402 691780404 125356252 567296291 34483583 622065468 45448653 252109683 202534493 888937278 472217980 530236431 107353442 489060209 177596737 500269262 226450541 893546706 545847367 782602954 727434918 750372002 177972679 738415369 731521883 947376242 915726155 967977484 933203559 951054734 312723654 443416629 126232319 528393451 249592303 718751079 297768399 603479556 68858976 533370182 193347040 630773873 190924218 747189490 119590576 788164379 202178539 869055123 53776799 473725349 213649381 461788449 261754191 450703882 234951590 462548964 375308440 541906435 256345269 909922547 684128605 687585266 232791518 914600252 71594608 245843207 117533279 409365144 227801861 838970675 105119595 962594730 527781098 849833458 16318962 43083016 9503026 73842865 51227511 601562286 490360822 866112919 781304021 929599137 438999657 659180361 465809660 647903506 350120513 558725932 63229838 414500449 46693872 532228419 455168988 721388392 656045612 860616458 23939010 767891234 511999934 575154916 259447207 590277286 118023660 297728086 233873774 574438680 322373106 609743661 553000808 668612181 382795815 412012439 44333782 520431201 273559585 987963953 508979436 875364876 866174477 975469471 468211047 560630075 416970530 420241998 84611302 194227294 33834808 907051014 459763471 777471036 489585448 661550141 198361597 689242340 665803520 773215764 77583598 466459328 108435574 431290425 306368663 315763520 121947699 769019758 295941025 519082723 30067951 525525248 436848049 772179448 646736921 792539218 331313138 982623621 776603068 853336936 711058366 808818191 23488144 512383175 448862455 838190647 377558950 951646752 607537468 934773611 33703693 215647799 132931790 751543288 428113769 689455025 323889849 521464863 21362419 349015331 292204929 808363300 593679926 903420353 285978282 550602583 88223806 574126780 403389081 997755205 926754789 954608023 501686629 912412973 876259262 967820045 41441741 948293489 368263223 453443674 435389664 571737926 386075693 912588183 488349902 924879485 356672568 970153808 956761052 971806045 94202675 628421338 142934384 575270408 470326778 816698947 756512494 989587447 284359316 855896235 105794706 983975851 372862117 632017657 1881369 791965388 742022504 852710761 780658392 789648623 89267870 671717045 338995733 654210113 315233205 994906350 136587843 538427482 433660718 896068551 472401611 684732328 515845776 899496789 213268358 294883041 48466318 218066291 3517956 975341704 168088391 910156235 642770443 834563489 701745773 754699267 707215129 891987270 572028816 644425540 225118038 464454173 451028125 942256415 524276469 632554569 231122297 965254386 496089625 499161549 382608524 649225728 525350604 601377282 394153348 566021795 135676676 752735363 734764477 884073822 695028474 922026937 357492599 835753516 170651383 806138020 445256055 782823655 218994657 423903563 323588492 875722695 422376023 792232390 645530347 868610160 271648382 791783097 425404253 780337552 571437725 782007374 534821245 899297343 37649103 615967500 559136230 890047405 123248096 259316454 249783465 428186092 34877061 707061115 415654268 952954723 422155482 967637050 695575116 704624987 402107356 986791505 297098068 649456698 295238757 438828992 298724670 907487276 271578932 515914661 243433207 860510868 359036250 631390749 398466606 965234966 127830422 837065384 710076823 715623606 490007669 726786084 641878975 983982470 235937183 507598805 502788141 832369627 144060224 686774651 128687046 910742310 784225186 975174829 345771969 611807728 365341805 869313552 681527454 836359047 318689995 755798972 93313895 651857159 65148007 399561343 1469385 233049329 76536077 908731711 690064559 759274934 452442260 839573034 719412731 856888019 703745046 992999489 531247255 653523242 474447959 963055509 341796779 655516353 328949163 612016578 24836956 271071461 172251844 474995688 104776130 935440620 694144553 867952478 385191048 846645813 13917433 23933399 6268313 906155023 35405871 513294832 418746549 616628142 268318382 939328788 620760719 693668110 480468115 694020061 462118844 852862741 92559041 223749951 190418396 385212765 65938315 741608451 92091937 825651912 88680404 231321832 138434748 221778069 21092396 762904481 190578131 661399752 468825558 758442514 55261308 147278089 124403199 777162737 661998372 732678836 179140746 774469017 373976820 662834424 544375649 843935837 460343022 935235227 33415759 970912083 876525097 957547914 548270543 660235953 523583412 775195328 73288955 157474740 57437721 449678189 386879508 593613060 87403631 200555630 52059034 493571850 91233826 504468578 386935753 810189868 459141681 550796178 536572890 835242292 145095578 223773615 53932338 350990019 110473297 159868803 44126106 569033352 15470461 261057083 142397383 580519454 443828606 468504413 241395753 768516064 129645126 677481017 438733364 922355948 325462364 981633683 785498079 943565835 213637519 783923840 561887635 860695666 586890304 898215844 362370746 479822792 205050767 666694414 472293596 989977597 207259046 730810495 487439881 494079864 291911789 731981826 178772189 464572325 238709698 410976222 362489337 692517443 288891484 362739583 96822552 321012042 231438764 699943373 692498360 749797881 20862616 232383317 174560525 698324642 476784428 618035634 118551981 508241080 335090368 977384330 124579131 446533270 392670728 885340273 66006593 481466194 425183736 703391567 612479564 871212673 346539398 742847781 580915152 787115012 417979789 808411064 46675354 93170589 55667783 100663110 46116554 629271131 229349277 457275037 169591994 169967511 165825893 943341090 636436364 731193028 436064451 939097792 448973079 711699409 96938404 258341045 17665066 713922201 245956917 954029945 212175678 687594246 523286277 888896255 26841611 778010789 478883636 677560925 140474390 759708910 98153758 811165157 577117350 824269716 350219481 682551027 454525643 669254821 481118706 924217576 504418468 945021017 827033166 865176080 1310237 151397841 76039054 880676526 789409223 945599643 95053446 782080574 443506507 797738863 305487232 479146139 137814863 712026965 64035011 249954452 174158740 920853646 825758083 859614706 130880694 504838195 244344219 896284948 393397588 664091667 647583355 653846813 90456371 319146962 157018509 615194497 412646592 719101278 467576339 845233999 584873172 757247661 207248048 675569189 437281731 699079256 528112471 807186811 559877866 795964425 554673244 675965247 328764664 569395113 490522035 730956076 197333135 759580870 151343522 190066255 59840001 960076277 437050629 456395633 186856244 215610888 139762244 939505602 744037187 987292803 603078954 716744833 14280036 143822098 132443286 616226836 562711622 782186083 731634569 964851591 736558820 842242120 767439407 812456208 202520729 524557010 470653957 881612534 865917217 877215077 433721081 911184630 220661575 374545726 163996698 508045503 206706494 450088720 99580935 564006658 446833403 934651639 652951818 785005716 719013713 962898514 334085055 447569222 254223853 940442301 719507357 832832971 542779823 762859421 641422183 959701525 441935007 918876468 547769750 559271666 481405185 896814790 436746378 445675486 264480088 912263833 100786905 470690016 221476239 510760100 240229826 977021105 567239990 636911660 224963935 904610558 255171105 977205851 943173783 978419470 146509505 544733555 319553482 915136008 73061701 362107894 163564481 435994825 9115420 57418863 50731831 375296799 266451122 419709087 39767662 895553957 139610391 171434748 58950416 494285827 68219622 436464831 390117388 414018597 255664756 305567391 104605809 289566606 268718944 518476711 195906452 299690694 184889953 267966140 263062441 281076292 140672376 721146263 605914103 924919826 696407485 990062368 651784836 795214244 155929906 506173111 216989105 773062506 124353312 161758478 138844750 865255346 97055999 118359186 85782833 726155399 236453232 360771782 335729011 408487996 211654953 677717831 311437492 398716818 284629226 591529540 264318723 625362130 319867851 797198438 181808050 650659328 10659195 477067916 128488973 833147614 312550610 584785690 225418236 392265451 343602760 392055783 374195062 889802579 679808460 689091951 510232376 798117808 326134468 806410692 175725307 243120347 220174877 254667940 45277777 980191520 224710025 829693986 377415472 729353336 85621983 339230492 61135191 725456815 673780218 885008436 696713109 751122877 255639634 367715028 30950285 849737467 789171786 842317238 835334692 946355502 753359450 817014420 180045177 353530485 271239365 584553387 150502948 286680490 251039997 906986355 473398298 920705365 645242207 717272553 362825844 658724652 429599385 585722772 161193289 448668546 345432883 847721076 66423431 247070570 108283097 234862693 146503113 433831509 242476085 256038776 66439191 820914885 722385625 771106598 270303803 678014015 286619811 440070828 276896479 685834571 500947600 719651009 324457351 588979395 549870444 920838752 524700838 751838342 528276353 893055750 440743138 466881181 374525523 482836957 475169964 845959993 743123210 988907998 219731610 297799957 131159149 983286202 324324710 507667958 229984515 833543358 265364955 591378593 497364437 540523678 45161301 51135928 15638443 660271069 652738450 846315853 177712436 461272535 161979825 365906013 88213710 653995306 394847289 779791147 330542593 393784113 17075821 976021185 752142572 833569961 429166460 603006601 571739728 871342332 823743208 832292532 569632180 845970960 408545497 590124929 66426834 215386090 63459749 767606129 133598221 912550641 379584056 627915614 527210831 989611803 978554114 996534468 938830003 995141772 321412237 848959976 846407122 875477710 224233342 893474452 822559755 933886719 338948842 542853892 208470152 324644418 192815448 602397892 64339498 745634936 485990204 553802929 92548124 198893461 188688043 242270915 99936337 281137262 96704818 692493681 3694930 88229619 36979311 417742454 172853765 563627031 454117310 751119311 48435761 681878488 39597190 104293226 48239354 230193502 184784403 695778295 108880779 864070676 648138640 760012180 429196903 868321790 367943652 542489608 18522553 740242618 75271024 573929259 359801716 782376776 78677395 556950433 132099296 843697535 37672929 226703460 30423593 72244094 41990482 755288874 510861204 750614225 280378098 907260587 620913468 636331898 166412106 518119755 72805868 75190798 66122897 985579403 641946307 687511777 96433496 556121606 401592191 454195597 342611252 629605701 14621037 202946315 180879319 431453713 15403973 221963065 175077604 669374597 196433815 607642863 296015713 595887292 575769284 747272354 243570648 435247940 400917351 980150769 139969446 702728660 452523076 640007495 525898717 858305132 571546942 656654011 483845879 929244179 444238919 690499596 406676495 589154995 78334407 901374171 863611458 872806479 822654832 952640964 906994050 923352872 804195735 840897385 227522476 278825492 84195723 871780059 489299212 500758788 81453185 730016731 240506232 717722302 612706918 949456728 904180178 999200165 83552573 522261655 208155502 567614220 213379458 772401523 85564071 252062212 102167327 493964189 413056346 445762105 132465779 727626971 316008780 989826931 975765580 986445035 597076196 870353308 108978927 866998596 497784275 677140078 368190138 440724679 83906443 734978073 313836805 538927011 225555859 846837913 656649249 678637281 566301685 573028975 214962296 537614440 433452571 579662185 435627617 796108172 632753476 843076664 167518885 601893117 405135557 698510216 107101968 549514077 544662604 833444871 172209295 638295906 298156509 376976869 365728284 651787378 369304882 740205638 410180989 902535181 509972598 900301876 530731091 955395257 520026176 792443318 344235860 592895641 142969898 360405397 86199672 644605570 582812949 979977865 355883271 874956713 842120510 975285902 408618625 777371166 754019515 827100725 510786798 741592234 610869462 766704910 153953591 448278008 408101690 520832907 250277900 619001382 386878443 469519608 204512549 342558901 132425887 712513220 419029695 876031955 675939447 850132066 340740746 424148717 360956731 768334128 558007463 701129823 622510861 936765028 722414259 986766082 764325436 830602055 711947910 719369776 52605458 816938549 415351758 498188405 291345413 511659292 471324092 617435890 446586621 563542912 555871725 811185670 397000887 704189651 416150178 778597164 296630794 929490274 15369896 555716582 229576558 621276669 533016340 892267744 354247882 921411911 84292373 630986169 60328233 938779020 67258295 765164581 652487696 874277978 679834186 898658394 394879107 509169050 468888042 587260223 260023413 607899688 222603518 947319170 488911519 607861503 75239976 885351872 572014684 949109279 547165784 614621108 371355538 994300145 800215178 996506097 402659758 469914644 368506704 863364997 685437139 816492824 411709671 914584267 260439454 571365880 94470811 987166946 842223858 923128732 872283662 949578806 607421139 713608840 278003157 838652324 37545538 285027517 199322429 584801759 248834091 706203699 646462421 754378343 279795473 574521687 232320596 924210858 739665163 956131998 652328159 845432746 175279358 790155414 661660427 979508866 743112854 797341927 332548074 492923338 73684590 815024284 807087145 982702060 957605062 967948067 632621574 677228232 95464475 475014877 167958909 711160651 383424817 985590152 816780122 929975939 108507648 984684541 261350807 459243006 331631202 909031808 753992802 996636453 817864846 866366085 97363622 354174358 317376083 876677028 832309425 853774399 367402348 846113922 408489861 426327874 306245857 975152789 711997516 887210791 695528287 768050567 585919441 868746745 220375303 650318775 274437247 970541402 895476700 928235694 371212477 428986771 21974563 967695354 706640446 954226908 727152180 909669697 249370535 843341146 735768989 927675151 653782926 928971553 428736208 909185005 39068540 305854134 171987744 518823524 280845196 417130684 308649644 901748502 362663295 750133940 686053392 988614113 406753589 494681555 155400748 265501727 238745055 840619421 825035709 961228166 373103735 918081964 729066815 923782325 522511498 579859223 97186255 321424159 315775783 362626759 98054965 201714647 5356181 329406628 82046502 93995522 62766397 728002028 191610821 396297088 207829755 924934030 866288165 923510861 401038578 509609923 279784014 786943332 652906021 710366936 365565441 895229786 749308004 929220825 336426742 453792268 145520077 662932584 656294043 976605566 85311154 113065644 51916530 937219544 502357744 712543256 18797863 213889042 10320785 476505536 238211776 449186239 67893266 740308554 555924047 561655135 458878799 842847577 562605666 649588454 172963786 208767095 91729427 964391995 477970800 850844686 674904443 882746812 850683711 877786434 731987895 839052181 249458209 319835033 265959680 672708118 657077218 878589540 766895232 982817262 910836927 978869440 496736145 764512041 14529115 473022694 433299674 764099148 34369091 980973946 139398408 206865944 66772871 958400096 534922477 941920796 482619635 985461377 160132702 961137462 235253633 385719618 4092135 806339236 643911921 647772350 348415821 488693379 143799462 172278346 10830305 59628054 19791047 551170844 416512268 787936327 467683991 917711436 580367058 700087411 320505359 807346841 471900008 734688745 179905530 312338166 176854088 441232591 274577458 890305376 723812007 964145351 609831017 823221424 634814713 668436322 521369472 701656298 418581836 875305782 427098723 637994517 448999046 699800086 516450007 655965988 119499901 171008264 54807313 257840993 130972299 744845329 597377866 764330239 314012411 580140090 111716039 603217328 183724769 371376704 152666227 340529100 201312716 202796592 22221850 972938353 920233023 977713691 844584785 929599858 692692078 862069100 427349302 795170533 636515501 803812203 187910071 553976323 808768 581143524 315296475 344959617 117917834 156833934 113349090 639836344 223418332 603346849 36796627 37949468 8727679 604503522 515709454 647382690 434338909 914492934 274831838 381211906 192678272 271590096 236752464 435562752 97122706 628897398 435244118 922537235 627138642 715363268 341229138 615154868 347890363 881586488 163202400 888484147 464312449 479089151 316695839 394479197 68704094 633094680 377183391 787352265 621300349 799598364 427192973 783948563 476801908 702437424 259516593 280791431 104219658 488310891 442020954 670675670 242929517 498880780 380583634 787715650 493593539 808197704 458302549 734958341 480567211 743789612 69064661 682561670 203085280 270298418 75202035 893820649 149613198 187655275 129552721 600788277 597574708 787286833 127448135 661589845 599181049 922919003 570230919 840487607 623672575 776311019 641095811 716516058 47292731 303877669 6331492 25309501 21176900 177227915 2880836 30067863 7646488 965373654 47212908 414759305 160048899 973021786 683291677 944956551 429897263 815205771 455243521 804942204 699358726 749174269 249427029 739463117 170592517 500409029 274278836 858092806 232961243 868924962 758256946 823307885 474039197 923332904 228921625 613083710 115414421 541428586 373122215 684081680 521270196 935570212 519032396 797430072 237817798 990673617 658695240 845877483 76678841 380773734 81503558 758362234 65560617 255025603 11182263 193139990 129339493 961633472 841256762 901110479 114180314 304577595 4059702 668359561 21052008 148116925 137497058 539554915 492560568 884422123 87084573 463814942 453353184 555751501 436100475 630502437 233671359 636611553 519271568 689324510 327384810 668115023 80473177 902509964 551005029 880699399 469111553 895304699 645351213 881340075 388343612 980112665 756523390 765661338 300594123 726789110 718736498 840843397 522154033 796918063 398095059 673321484 219525873 353451211 261357828 606897349 549791941 772648535 47509755 412073021 259620952 653599669 648964210 743074547 741316303 897361637 184352054 435165248 222957659 718504700 623284031 800140501 275325923 881924630 614827438 719848513 219830080 797040709 42583338 724446199 96171537 485347860 152905208 153509216 63080893 344311783 62729465 353652879 350280293 648442940 150194841 852319462 632426949 921078536 592859957 717040177 481373985 630762199 339846329 974442786 760197556 815314305 592411568 659519791 472372231 495687655 408704907 921916139 645456276 998884737 679284847 993708924 323317241 574523764 444135199 570240411 262015318 670717000 545698341 758306690 548194302 926582716 805275496 934494516 698024437 869536056 858375914 958891857 370765832 849072459 8492173 655855572 99989740 865020639 180269333 425794975 111685707 983673364 689938917 911189687 395157369 520381965 517872153 781576923 180533806 931269116 327469692 767227432 495482055 815992320 743872099 912804487 480213407 753120900 9230833 329044575 202952145 368856069 186098034 331759429 50932262 402251134 377011053 641103790 195469560 783223671 142509449 696552231 50657798 187533506 78803591 862917535 609698412 948517949 590354532 713363338 78869526 321977842 186859639 940463528 329587123 937559643 837618261 979979282 858800075 951361049 501371522 741354173 434655669 869788623 633978417 908332998 749170361 999242513 992490520 995965416 508068792 573400663 514000422 907171903 885172650 982393040 197857650 707296850 576539638 731770297 707383787 751437259 335250264 724577415 349945072 692416566 218638038 306696930 90272921 392013486 350239182 931073580 163111781 606940411 518969788 810511063 448767565 694773508 635022498 702740250 661614276 832937770 616684995 844283650 538801821 935049577 249180489 498305601 98346087 234094842 52866496 972935612 222994813 895650938 725538612 998188521 313757130 670222885 198611711 952293865 178105265 916247934 563843621 645253729 524602687 664087550 364528 446595524 13907988 423155869 81339398 625749125 576693552 972582880 820422900 861216320 532420769 902878058 783324757 817137258 100365494 837392360 677627304 739552666 85899025 659723142 305187277 522902738 279708676 306792331 287188443 868284587 413433341 882139466 360575936 998452615 157967530 967089096 811801953 940455361 606956310 947536789 238438263 695891033 675506936 723181776 514932918 558750489 226570291 747745552 123251017 554431633 57908602 308085751 61959283 849162499 115652903 298378704 8251456 831496426 324622086 969821858 517378 457921303 329044695 437368187 91242184 912169037 139319678 649216138 614607724 629131272 292882548 573041739 476417225 513365032 507269300 900995561 697275256 940608093 339523715 763928961 155462311 585723232 61099186 823856562 198998749 348989527 250494978 875150332 477780544 865812642 108135278 246368994 161577424 799018113 87930963 836594776 302384882 882128531 317595783 761212355 707955327 983536562 567773000 710261391 588779615 878019053 658582796 944240659 558821613 572618450 312589989 955373444 214609375 736955020 225639256 776643695 481150395 713934986 417880875 818324370 592796168 973464322 378953736 568115028 296037533 314428826 66622873 507239679 67566268 548438596 213615658 977988758 862493491 996027264 518535038 558068298 256855205 305243789 86651139 372842140 216607334 232150293 28141474 801262903 779290202 935835180 299842022 325624260 62910575 753036024 312558389 750366708 124227485 577985822 158255382 676197301 25748631 194872394 27332622 792998477 206530368 765447813 403768934 911931509 875745202 932679205 88514871 592348208 257370504 774181030 268855814 923688827 53548369 498666351 438322241 562129923 401263137 403746076 330419374 831905585 386624999 541611126 286793446 730601334 355702061 763942684 409885207 717285920 127449088 332077024 179985423 860339830 214076545 998665191 306647503 897861348 603213440 653668957 337732699 938426298 786245743 888239057 258291195 451886109 57633019 950075762 77851809 125341954 78783974 276695019 101253755 883353948 141400843 150180305 92276616 444067036 177484536 750452589 147276136 814133732 782830094 832669526 745573458 931115885 667767312 766172841 212760182 921578408 245192664 441185959 79480815 537662778 342570071 708891269 550333028 898405094 262991116 381759285 8541694 529746395 472056182 812537252 524252007 755237721 230593325 877967497 473245387 548081605 121684507 961250672 490007986 490821868 177604029 860186535 14608069 283343371 69993198 283184353 36598907 634122939 487579008 839847968 164736336 837409238 619538913 930934551 653174036 785561021 612239981 616754520 400508711 984001218 919441542 924431834 696431379 732773593 507311943 968300898 513329495 635465749 206989352 951450519 787895757 999940025 694311317 824966895 7944047 654224591 276495174 757445460 222457914 685403004 191275125 763776944 372832408 388756009 225140834 626448314 131030876 301526197 37111275 539514895 521832748 655523820 435159012 792803862 627198906 825293420 377977992 403853581 226890078 735415240 367030970 664527870 333673435 738255775 645979841 689745999 257962890 373567673 87979971 440326227 218953929 740723528 376178659 937720970 95519720 151405502 97870220 477493864 409284669 901335574 427712883 733393708 419814273 941405434 814957581 910637798 84505521 585534276 102196392 876203953 613825923 673624471 334493653 562841004 401301584 768964325 309255371 716879043 708992956 902335498 289397338 721818843 441961492 663625279 245585916 537893994 111175696 239125534 51797054 968376777 774264243 943939680 529322144 769434826 766601238 876697469 703512777 705799328 554829811 819178016 297229702 900105992 303960355 888679657 476726557 834524348 536550750 718903683 54367916 147040914 6931725 145136441 65053425 435278394 209981700 994196765 954917984 991987924 253949304 925389870 76746935 518449809 506649960 953549650 5085665 174888988 92792005 557964024 290386616 839046502 538329460 815477829 740045295 890817678 176285278 897432957 388352045 406100499 146076630 850213528 155862809 282734199 59555540 394397046 203222075 680316258 231910618 731741805 99119348 454983639 3341130 149445108 145993382 940405398 406473828 698722664 123089929 593746221 75194533 876727479 576556043 649549291 249029460 490252843 12132713 182717063 173931260 439262044 225357300 393301276 298554732 820291810 12522442 334561394 209236372 582527994 328462709 754430643 104314911 519232288 286820742 415808229 329277907 708582616 99735274 665561952 407603400 419010601 350630721 911414126 188357331 879639877 171482772 312530410 62991763 965761556 184228777 455302687 113692958 531968864 436742177 945099857 910174520 947350186 851252236 853951927 263261433 413006506 85692413 610138937 534034203 710328741 91376410 648931584 50815214 824661470 149380953 410359184 340638028 889062466 838805972 884477742 719525227 955890335 711455847 844288209 180682155 313964802 141510326 671321877 263642580 760466509 424800846 525679768 432086158 694318082 173398141 497557638 280813696 543731857 98903973 605985547 574253249 726686487 358374441 960525789 462975716 566088186 271985916 689413355 674150596 897543186 836018709 953137177 214061207 809548930 751107805 990726948 143583441 734140658 616316748 872103086 868098862 938549809 549443531 855257314 622930759 653425205 171939874 206856666 93932904 413231365 49977077 841329210 369017967 970173144 395380597 938585548 830828988 890625090 883787111 927550210 757096312 979142961 682236418 774945407 81352022 623054260 244260695 828569546 46555482 774796651 121553458 649339033 481451877 691786297 508146204 739659367 152630495 425075554 239827236 939988247 103185536 379318403 39652214 932436813 864648086 888665315 761266637 982063061 478937932 843255835 731753404 879922066 610429626 778088922 598970041 776127658 327790280 524343627 3416254 150398077 2171048 837256333 417504931 756874320 500274365 770268543 2251895 217318029 104606306 272915413 145154073 658903894 405721498 650448338 648834306 993181839 833080851 899590864 280998978 670155023 470359064 719378793 469279973 966773260 247447773 959400661 492670710 879731868 702091941 752761752 307669821 541451430 137803431 878068546 147976299 403930445 243688648 773543788 614199459 728579670 290084515 840183505 566996557 922199111 532035254 957958327 862615096 956775375 707002804 908231600 145743709 992862749 154819608 704489109 420502955 721895987 136464509 193257680 48136981 158266386 81908658 165695257 21312708 646307336 352724125 794455392 721818880 930230648 178754552 254410464 241499757 913070014 444289930 798945963 137261824 461637096 59537460 326096582 243137723 316859365 266113782 744638925 300694240 837433246 240434781 645167346 551334047 741316730 96195421 473861187 91128352 419863091 101725916 908513011 78948619 944461420 64959992 220670347 2191200 473596314 191423986 595079744 348327905 685135820 78199384 929181950 630101474 671439799 538358453 734469974 702715575 989821720 309907896 779841752 91978322 518018271 103948652 893874278 38902355 648627793 578433516 758757828 342955814 517241889 391756797 456132501 401113841 835572440 23383706 312192346 22577789 253067728 137059829 797761469 451434772 586907929 21667039 452882428 10829266 179765453 1323961 478986639 207051456 547816510 281604763 406379934 264694293 649099172 47005810 902103076 714982125 968460442 72911183 467021774 257846732 802671510 423330575 617210575 591808623 597941749 472652611 486824597 10563778 930004076 390925693 837398799 562332988 976118722 657587678 807711542 192991022 887979515 619911993 821698660 237091305 600677646 522319363 640416117 604482310 764369298 81373357 353844364 332748805 678314437 509169407 798115155 128997960 687433059 526966620 914261514 838043546 899207824 2497862 451287530 134665508 155649639 121400232 924904458 537106258 599913559 183924962 292174295 152867595 394763306 334873605 939421413 857369428 878143421 55261032 248240817 185645579 300117165 35625266 428587312 61342668 981566221 138900558 477827814 421002557 599980457 174110523 516387106 340612312 784868164 397133991 697764074 161182255 545223079 131138773 176146302 29849764 993661152 462022572 535111362 60621224 767544481 475311849 564390259 287151719 540281094 446538036 857331973 277370997 635579340 512795316 665911213 558666150 822446730 497453971 743700174 187994332 368195426 334502069 606409798 330916962 671243183 487343996 499562731 437515288 828802839 591789572 963910769 276362741 751490202 186905587 905317528 267814551 857199771 612999133 784071259 161870792 913663357 910820174 931582311 286945421 938538485 791992935 950727626 491923645 957011210 614476152 919621795 83552722 521538226 147715687 604447350 195061545 828518539 295012211 649388543 545806736 596154090 166236230 680848452 61009217 747813245 583218704 806169961 93617201 678165775 347264023 720995545 541909212 703351037 391647836 809359568 99427671 537347251 480703048 509843060 320209983 917837353 854497922 865527392 711902543 908038622 284153287 823505785 40648443 246169725 27030437 543876698 13938526 378252316 338354742 691120849 406684117 434493910 410184803 705567578 633013122 636717382 349373047 729608158 647158783 962364374 885980037 960783256 526120982 554706846 4285441 998222175 199792363 759900950 405768425 531169233 244873469 584609824 361265395 520921471 205448901 843838169 677061680 787245373 570534670 963435942 660461883 979086790 530768683 677018578 538366565 862140389 381944489 886591738 50938095 140521299 60834251 554470553 54833175 526479122 178570923 868156423 832781127 898763876 537284010 946154407 262811297 408014382 366264002 891304548 322203542 922986580 816969336 979844603 285022802 765162270 377225643 404349754 61736982 965168690 108639083 148213397 97262518 117039183 14766730 717130078 414351807 804495648 294993272 859015186 708120397 872588942 404322270 613055548 299093384 345046744 187657503 263544992 259133841 405995025 29099219 36877338 10308720 57622949 40852084 734715309 348996213 531217890 3718584 865852538 671322374 733264083 241366736 821055167 622537713 636709491 407613304 562713534 453107373 688122536 109063102 475276326 438415695 740283604 402251809 450423034 7476567 279261168 203237232 214429633 164390699 411844600 161269186 580446597 296567427 879589438 230921873 553554456 98238872 171294617 165406693 356045969 79377063 554994349 192648898 333458140 122377636 692867102 669279739 836020661 578191137 896286994 349231286 381801656 80606392 650375498 296998764 430337380 330299265 940945929 717244822 848096448 457510978 667411359 475435622 852463124 237608859 284942989 4370362 511823837 295619569 479975879 412424426 640233531 215613920 671417630 260789493 546390330 170737149 242308279 174253124 432101729 368017332 582640954 454298746 749252578 457050823 956428670 699451457 771711016 506436952 762001979 384040192 387794909 66577211 803911705 800709474 988278873 241693185 750845049 114819893 833981130 732933710 986585256 900220428 987187382 422607159 999265042 483698087 879845567 817628701 820227252 672559562 936685246 678960553 943176423 908753399 977728737 208821099 351446315 325343850 591607814 547905259 882557215 419316807 766835022 462829473 641585063 155447717 608222598 331925038 893581465 555504903 613757271 106553435 888177316 737454485 784142442 752855275 821037020 268217007 321947056 293254235 809207180 719350602 922321816 868269778 948486449 441568589 792953809 165864605 802728866 122000905 733460188 113750169 239206135 76946713 228668469 27264786 332533472 255686448 573059600 114773523 514292914 393873222 477880369 322321301 999988737 970958900 997250385 171147212 477428833 31590644 993347761 403845280 665675097 573428609 715991863 138519738 723743943 495799199 897035176 852224974 956482084 17391051 639952223 532147702 733523112 209247848 875771997 642686496 655454152 479940690 602948726 188310902 597767099 558334551 842431708 278346019 478759763 320364060 324940999 309885672 882863207 206550727 243727052 6079031 234542600 155756217 441175775 281276219 767565744 353456057 357620146 84697429 258102315 133686665 189024148 95745267 445255938 223912720 224824124 76359922 91285093 86980368 989194377 214516996 872076425 498430898 831910784 40250911 848110221 130925343 828233895 583094507 821020149 755607610 877492261 228142175 476579039 289815393 519232853 471149358 635689788 302853155 509921188 386110892 515214598 477453101 807079616 373425433 415034322 242823174 981401241 460016190 470430478 2727052 603453996 136016442 241044628 240940001 801713988 564419762 823445604 399239424 790573420 400049034 903034736 345440787 882025981 169282542 191518927 180199210 904908818 656832803 732654087 35286372 513655107 504165733 701812209 420906026 569022470 518587244 552346553 414742730 595592853 538698203 694924014 295124994 465558743 138639783 202306013 97998780 113647758 9822757 431095715 91253284 139769805 26644270 369684485 208096839 398168338 154738673 957848607 951725449 973285327 134083210 257179072 183665272 710613280 489667444 928017341 404729143 749211271 593814812 719703133 572585344 738465486 134145709 640928229 548595993 642273846 451196981 918631592 151466127 852671926 617835712 881970503 357819424 458757019 37086578 991798877 607268 701637950 485238724 983019057 886126491 977612838 331960385 701863416 677179247 930293292 332258006 836045934 32756440 88814353 9297527 612354370 444460995 558971712 273563293 698033424 95329852 801184458 522783512 793183174 483398335 882568086 235747670 985441653 621913156 990190099 671159551 956929699 365919814 982225427 197345273 533861468 464059615 850878558 771567519 955123214 585429159 609580056 107807081 908610366 824705823 835017496 208624537 976912471 107561301 475192092 215881844 711358817 575198146 877706779 161267073 860245346 351805427 568957451 341221678 887615446 348613114 421584240 306020401 700337021 60274563 724926256 41277835 555709277 274414544 502042049 281132043 922166184 390113538 427823199 82124189 403273893 401092211 538567068 239649395 496224058 201365532 974161044 348782857 627789344 260745907 647127346 405498160 710195323 295661641 622514888 165296410 815662167 619944095 706999240 432115038 731962452 707093314 990789441 487709805 706959051 575474899 984676811 642676416 731276246 337331663 423681872 149594297 432232085 145969330 401824985 38671764 861879389 162566644 847716305 189136277 449174984 310148727 992954805 387336905 679473739 532088463 910352545 286931319 682819500 272949572 982606473 97920039 605276087 511095282 542074842 126713260 209692627 50122840 150805424 75758531 634456002 573943767 708581396 414082328 585578211 469380032 908053668 56779153 58239220 42215256 621166266 509724290 895083806 797187350 908068515 778614175 917571398 329358082 495809342 358785594 805809782 668897639 864491514 738184384 797956791 192992094 811181236 408168111 538983388 235731175 628744817 149941803 937434693 771378446 786933259 217375603 369502058 79426926 215142036 146602918 382704420 150105534 427635823 362088413 629442400 443365371 513024263 193557147 796371215 399944989 556723180 222816992 922071215 159243224 219389238 55783380 226799956 155692993 581120541 354341591 472698024 92050930 146716570 65956096 906656428 383296846 832817062 287748402 969719032 961803670 983185532 915168952 934282962 595003683 976737173 132198415 358214708 106346048 469940651 331521289 678086105 375203843 756545993 642618911 934818441 323109847 824061733 516169541 755697636 453582676 938029052 927656071 998700893 561763799 946508420 107416459 232403369 31751701 231357932 63002853 982441298 712048353 872044531 591889850 878232103 789085101 970039317 571101371 839070697 443808977 652187826 40155948 651934766 83032062 642230837 575375998 703603240 685252940 812132381 768880251 916166119 105224718 480682541 73906165 609233824 357966098 588378989 135345923 913029755 687956543 792447848 630366963 946030994 313491922 369147510 256652650 770776281 713321776 898912173 68283367 334690244 88529975 789249486 125803093 146303126 49325015 223871095 177137746 519938160 11786487 572528734 199410733 988520267 372030751 629086143 24189340 167344305 150908005 444814826 181939175 983915209 93793618 845831015 833261974 913901399 1803863 978829751 319667193 899648275 394422514 991116230 364175188 780380776 483597547 583939100 500078463 701410829 245684186 818369597 406066793 955231272 688319238 983408304 211710122 629849712 159164796 617971802 55256305 120106926 65963792 557549753 496389814 948960220 607262836 780269241 467354835 931262059 151410260 624129578 549925911 787257087 565986598 582784366 371262607 914805954 514905028 797941107 488745334 943779804 197514110 813109838 246908075 394314471 354794625 873446302 400096344 533774942 95050093 159837114 87817027 857110000 321387356 907072937 225413402 909634483 111648035 826201957 703716300 746196871 367398255 493948851 446383793 993847302 683729778 939301277 4800286 803312115 296486692 899405012 90016116 214184874 43628945 457990138 402275703 803836054 280147702 645136152 627331557 710817201 510074252 683756555 578205633 947505627 82879763 852287965 697455524 744558460 590756953 808909416 315373204 890188583 568550405 684853325 548505308 681547697 360049084 408410247 195068269 710062083 486088197 708601824 363871063 417642447 76413746 561258150 326269943 998241420 95210688 280815436 97307153 582799713 444383699 544591816 53378794 157874246 49843214 91423394 9527609 95468229 53259929 563476259 478353030 677839078 541591218 979167953 477834260 655961381 317414056 428716726 387482068 895479146 866451180 988485873 333206196 455225293 357821531 580110940 203722270 340919897 240680938 248010325 66822451 641254642 227323572 701998064 181350873 201712406 176397016 275201354 20709358 604935436 126978180 677927278 436057197 912695993 801613461 885788584 405777294 567554952 460918107 772164889 563648559 565417201 319879997 777749709 39979956 797246439 651866683 904430575 843597192 887404696 300606424 328388761 234952302 364801753 348714751 473804027 17562455 112500932 24760067 440068490 413766081 800838486 715469376 812296303 194627293 232813125 142820129 514374700 259530494 350850870 126886893 992514284 932407314 932483904 121429330 577467307 2967076 373287345 63744840 749919621 499458271 529720169 401618143 692459236 191854371 777346730 429101425 885506911 360426030 828822649 565309509 797140021 589234388 951177199 211340174 217174697 166935969 641799601 435120590 673159647 638878188 952975457 854582560 948205692 350005670 679610396 323760847 449309943 216633206 422851882 259338056 406964545 370955334 781961072 131609929 903019530 363330018 866202237 449719876 770603912 194342354 700594831 641994114 688237994 613896076 991592091 667933375 953658033 236933613 786861771 351494451 681770959 156404500 182709870 87844898 676693045 466501150 624006005 512916027 951519034 626194101 680937215 311973400 811450853 513681653 615701953 311897407 672333326 54137066 640843502 188813612 528039979 474111787 927713921 457448920 921675537 205514249 340239869 303077156 386697371 105318943 389884018 386874369 633966269 603607757 861790733 282001061 432769511 420299165 998289323 288254867 606868103 105062884 491547998 166147760 668292313 136857851 941858858 369721016 748875354 241707121 896538774 383633908 436730522 408710749 532219712 435573704 836467762 299671638 796512505 168568509 231194290 36026881 100474972 66142758 396600701 107936283 959163322 241161145 597901641 347253809 738855580 131363948 718883798 283980053 763175135 515346798 850624588 836320319 860716349 657767106 931895190 663462806 868019799 716075107 737685527 708505682 980876974 554603835 769053573 610767778 775002787 524833941 806186510 18228938 321857948 100993691 411894241 124232798 482574901 298739257 470480537 111328849 580319855 344581675 372799842 290309861 679624495 406291590 457256845 265630083 545616430 300650783 420130654 245493384 328191222 145246035 970156672 647265289 939841515 546119688 608733230 151008719 495291201 130870587 985949805 30334908 926435896 222903792 490203332 340687916 933925353 674962254 678181079 556188578 965268691 679338046 829200712 582049236 703187249 311557202 851721774 144374293 464762577 397824013 706295591 4758715 683069824 263526719 292139619 5261122 355830367 341969242 968454376 116566421 768965513 199442113 970548762 839419602 980764371 763904872 855478473 758085203 779236504 345851250 716596886 76069362 337541796 297724943 515121261 61147426 891876938 740280970 847627978 61419323 546362642 317028351 371573298 177045738 302061164 118847622 139320262 25624129 906151925 84257352 562969137 450024295 693447836 686717725 971232598 581480516 675244855 237769643 808945210 326828091 661523359 231068979 524022373 459250187 819536495 564071161 929791717 219806733 827766653 765561559 975572255 702443557 864074108 268178238 573313871 175703572 241305701 173754298 764167880 406562525 923848574 357412486 641513711 213753802 480194101 13857097 46428505 7658643 508407846 424989857 525414695 2510298 388968382 346083500 614281644 326569414 495221200 360498732 405926970 188873023 418097394 116635012 921015370 553448483 609612063 4949553 770077413 678248895 876213979 661356418 676807553 1471093 109471996 57517650 740397851 632988669 875781829 182033823 499020431 139242588 402856143 51955542 385811783 85744225 280583216 248547783 581285872 37818266 977633200 814458152 852032700 795526803 845631459 650525695 793798632 747767858 952465866 785002638 979211757 673291343 691581366 490086709 535278630 438124967 800757651 763184397 813100060 146236442 534948315 258349503 283604022 148430007 862077150 501576128 567269411 519589582 686608667 391889783 855677729 305962364 779408534 607243027 634345377 126677970 451079495 437584633 913735707 726835837 898998911 65308990 244166936 218971373 823252030 292777633 815477426 689482197 775088330 417579170 690218865 550757118 638795276 95701634 346558231 328741871 464747124 37058785 86104063 24786102 297548638 251279670 594534947 355595722 668332860 163489966 530917264 515589153 838079748 713765801 962267161 639127613 907721695 545756714 912946757 587550046 664330652 441211735 787520308 201067092 812911799 305828320 424391777 363272916 612360527 184445156 395898336 201853344 338643829 233983441 957532748 415880074 908436492 346435665 656845560 546913844 950701148 141723144 905057747 605438006 788151665 94628080 278112364 172617107 443296928 127122945 970520036 950891322 977640542 619557489 731104782 634167245 695894817 184484774 665764226 531272490 743051238 79484916 647342718 138793440 149267060 36358281 351616277 44969368 753579763 252802475 974008630 477360143 552269275 141530215 520116829 147365970 193622550 49229911 399746141 1176222 175150419 25482086 820425880 750996174 777530012 744824255 892467841 14035627 805248437 618318175 639531096 627657672 767786359 708352300 878355699 250071142 682694726 213745204 463092822 89265872 127301805 40105400 903051613 365454273 540446403 255169535 583609829 194054383 267954168 265591864 962552402 806990699 830737554 353248242 692728278 311906935 624583767 518765749 730564452 424447323 624136845 98425848 899269734 107869356 308762112 174364044 289654405 138085363 520429965 400834574 790388923 716841759 849502355 66554573 697116037 450900449 966846842 417148358 718886361 69017174 178094684 172585451 760984939 526243869 591132507 267900400 893694975 499258212 633156900 46928071 816996372 311651563 918102854 468160509 737497354 339699920 798335747 256255610 293519830 48044928 923850558 775991462 894919183 734347079 994240796 933184949 971506469 523501774 922769762 723819767 739715360 165426344 913714721 42861043 780786650 417895030 782061479 21311726 879479839 529530482 600148668 16483013 504044168 86067492 371257190 300487453 300491251 182627907 512603739 230194960 699077406 643878262 693616205 289830343 722596847 599922078 882762742 646574109 784807546 471863421 783539817 582688991 842334231 266930596 939861113 736686636 918785721 516652011 675634796 490347510 671732569 292279895 950367432 240171392 538464058 95239598 426295287 256711171 300524319 200053563 575906036 142785993 523338564 408212534 856670955 295558149 372887999 247537505 658693455 412125967 908303008 800432170 910786245 735865739 859819961 414848186 903580684 295024852 733298666 57954151 619209049 22631417 132552662 82741333 491453616 388524284 769307535 599494434 984435682 914313549 951012346 605994543 926250208 802974653 917463365 508258063 964584731 42705282 444644301 103390597 192944128 57081310 949007997 727270140 755290013 295587659 618477426 47600911 341506865 113591459 810118039 216171602 385584456 42265177 163910881 118520218 546206416 263389153 583322125 184692019 588218056 564446871 586932660 128944320 490659321 285217966 499439155 299714167 831895882 223155253 334941022 137281560 733528526 686474190 814367428 500403897 880680508 630077709 823836527 626415086 941139280 426071951 440494970 334336723 357738339 133867927 525899952 506764754 588127063 299330680 317373259 269644200 795094219 790799596 837291526 525041220 823104600 543932469 878695067 876536348 997409261 516549327 816845007 648085369 807593312 593526176 627694778 91960844 402994931 304868267 419832463 377890190 594228962 405257226 614718121 164950257 832045452 768632540 857508738 324854300 994017580 891807017 902438953 399701208 735807712 165989620 230910204 79836044 896832133 810146151 872213383 310373051 768960910 303329262 901049192 174806968 916397264 368677567 497352875 122968551 291342833 79282227 146994257 9044217 587225155 228377968 882125918 817449570 826467124 3675555 969651340 850441039 864195152 487243962 919054516 619947975 725767607 65459916 680195790 16448977 725002844 81094390 384352553 314182715 568997926 287561379 736721535 493286370 856508370 688610797 804134879 588991632 826059497 313134638 438849132 407882997 896241687 402280632 976867572 356710099 548027143 403123212 486929014 249862235 284723213 198831834 322198768 47405006 413227098 393845095 840968210 635605235 991765525 395832391 637154878 20410157 620373903 69657113 583557291 561974298 726585409 5739589 723819052 144195660 837078296 145646185 364773057 165289280 965171806 735424648 915030282 690217941 890187294 795468134 890920489 17118935 813276253 270089929 305519837 166118080 531547663 329733464 355852142 41550911 762892315 574084266 958298626 17305984 336410341 190407438 617529665 458616572 866188573 194397701 368290518 103322739 477317721 234749578 329039796 245953377 415545061 305094270 951602187 306714259 770231381 411343303 948771527 135084937 558717749 142599583 357309801 246687922 348349411 60115567 124319029 63308600 216700391 84271832 90579138 12730280 295425027 145686516 965648550 210636858 365497768 56283517 366880100 10521741 232190894 33496861 665488588 47222481 589028418 292373946 898842924 514905883 563870060 131497679 355784791 218298901 787408677 49506525 268166149 14798649 468815471 76865238 804017305 631960998 728568452 532965591 774379700 363116209 724612740 184529682 395781682 96225346 941796371 436023181 627685266 82248140 498878054 72876243 391684993 327334617 373037040 53501972 732213098 583349646 769929741 632710388 884057183 593124432 618344560 614999829 769719766 725844693 739827335 17992079 384799206 173942438 951674042 430448818 998778015 483025734 563833461 349643762 936070890 468753159 829160077 431007675 592931528 39702156 573330944 308890146 578331440 133736949 845090234 762018132 883218692 309793450 553212220 406667378 721685340 625451671 972624420 573759022 624843636 302406227 844025701 673279138 946167858 914100455 938043077 887014986 971350240 801093941 877825207 239283743 557779774 212519614 753882460 105529655 652308273 448876799 971050080 841234212 942806111 222908300 434998494 349926216 732019244 25787499 862036794 96734310 194853330 187788635 777728391 293927979 725869929 475569877 519035875 199399353 877552335 494646855 891839331 424246565 992252247 401255777 575911886 355871824 581727352 119607195 337880962 53164613 284470963 160885246 361186216 266694153 936318877 396135471 777862216 707412940 851981604 622471461 631364031 447594572 861877931 555857007 961503505 939779424 943022484 107229066 207097588 69657340 271288356 143168196 354032901 314621472 818178628 604223734 655454772 605394963 704210906 565285543 683015820 637134599 705951624 243824788 807750044 490184444 496650657 97306839 603940345 35561901 197443550 120310958 710923700 221459043 278965276 33620473 953159025 946912214 987539934 163624819 682358840 507038603 821077552 689495649 896942156 131338766 615370303 251123064 847872732 312290826 815580751 813890009 888036591 325472397 724712507 66978371 254345801 65112287 160217179 28921643 801844989 380357670 828207289 318729382 939235210 517044214 587951842 264784237 423890168 301336237 817999951 432231323 592814488 446073090 817748279 95272649 781233953 705180642 985713236 525939539 529383852 428500436 465913552 5613664 349497955 298857770 464955624 451164472 531381910 509151039 619374946 169021279 714155709 322675947 394762493 386490705 628578074 449488744 707599933 368016595 945041542 322241578 673567798 409196381 679038848 220631353 528735051 254893549 928661694 874758081 997243987 891027666 960486729 845074397 935176998 542315527 656918434 20251899 673230820 411359798 452408288 218622221 925253918 784180592 872382669 634588226 731689934 76244689 874664017 640519071 973211710 316295150 464403313 352125924 792116940 133123303 580836043 274509542 847237301 802031397 930707535 756474516 772785895 146311621 631513011 468046953 541016719 23344826 610506765 541603812 872854241 327282609 880639381 34627880 943902352 754935565 848839221 661971153 933651338 57296371 112690234 98158338 150162106 123498454 224302441 100008249 555402362 109559139 251690689 49711430 481837791 5304170 311775129 56858469 885216892 298724104 760333089 523466929 833194842 451320382 843637566 269958188 505218815 303666357 713910528 590681787 771187485 758416582 918451310 621026486 726581363 246969291 320755697 66488643 919825117 236076559 777993629 170442361 635498204 105129300 369496268 81175786 757498975 157651221 912664196 198674251 959020068 94118441 723317106 658362883 844249733 540040389 579394582 455924044 962861268 900749939 923439793 639305174 741103826 585160227 764007676 328149455 511118942 430637593 549164109 356459138 883786510 453146521 732817379 720218163 902641193 228173740 237729193 20936918 655666857 655458621 980079346 160040279 809162233 430339406 706185073 122618920 504905109 230475360 440153620 421369795 593149642 255310288 567129121 239839139 500846722 206469676 429952408 150987550 877099654 829672502 864189038 26952331 162662253 93144235 533085235 12212766 354572832 302997105 795390553 57793354 205041515 204880486 400442733 86405463 616608733 531859744 989134877 821105177 835215961 267036814 519970643 388542683 577995855 533888240 686819277 355147408 388308275 211988931 957383593 833070387 874842862 32041164 780495647 667981283 948994182 733265418 974016404 625605335 835813354 451246045 754967157 704791242 790105226 114140272 523257101 120852020 730536093 650227964 678331994 436576550 545144992 125629321 854965451 687834252 812954231 251146482 679845587 614220129 992223490 291395389 972530903 950443217 984570819 566004235 579157114 90935944 989028685 427082688 621567460 542152288 757706526 86176509 742129198 645607804 735153662 484232705 989724257 299667410 680030188 136395048 348108833 30700417 887964500 222842847 255457777 142663224 462382921 27138200 789220261 356168803 964780357 956071011 970954551 816125875 986701746 126164943 699437036 7331999 273970818 44530973 358349698 28039613 203536118 169946392 511720592 266647782 562962533 29962514 592154745 586860091 624025350 238594168 347885127 269026461 656303571 350388759 932498166 667017178 773838431 153728288 488304886 49934891 515070951 467460334 937457253 689947014 847119286 555344873 749853323 597087603 729461825 708642543 970868345 174506828 431055747 18034569 476787031 440740146 628951666 619950091 834924220 22705255 347612501 151500032 335868979 14090374 615809312 429854034 451272703 229331015 582760205 207158250 567772990 15276755 702476930 103980244 764345051 566711808 702876591 567906767 708731416 332428744 966264423 86611957 368567330 59317345 486061615 426223533 831549751 526447066 953958639 195294290 751446030 539823949 582605800 235272178 353435167 336977556 556299282 297921892 651670916 275967322 511937829 146782839 735155719 291342934 652066504 72957760 107062397 45152073 87703394 75483001 372984684 34161194 186865257 156664583 185173083 132151459 308108559 139442345 156914283 5362729 855090850 85360437 971609508 816220177 941612345 150707605 906525705 491259774 720799922 171506881 502479411 123431088 590266304 543036531 824376999 521690540 706955305 314785515 582483235 511174291 738920523 693540822 766099342 710392963 720875933 696511972 995065518 60739679 767361288 606406714 676099529 46431633 369431212 126365460 389853927 371685348 703245632 614620110 986130324 84618280 866352182 500643203 701809608 552676320 890554756 768107658 806110602 183667264 588627556 211577500 288748741 209404826 792286084 205465105 523557741 65168553 494849636 365279474 823413563 376702170 382355394 300654434 995318799 413368254 734674135 213801301 444591830 376009088 833691106 389223893 734871742 153862142 982097413 948791125 995680185 972149935 974117298 657134423 924212783 305930974 514704004 241273616 859215837 351738140 413351852 292867648 713903852 296083557 418047637 326819721 362853607 147046230 875201912 307130234 912466033 66111743 272427580 77489847 895929843 684410391 875735181 474350578 995610627 299625477 946772586 584334203 621242287 556123963 977780019 511942630 657748055 327124203 931779108 630192865 683593458 267455857 594826470 499646958 934520883 505781293 964170464 569665456 789817565 589880023 879981982 134508922 361489755 50642658 873181212 209978996 511399217 15374227 632670869 438610566 581755943 97896610 971732508 714899218 728523792 107208916 771415333 335887712 452142927 100399079 369749069 142748652 296312463 179752664 916226724 656483082 801102676 331286749 652123692 641411266 763742141 140849952 676365984 491229987 959457688 552892078 913807929 508926632 863727855 837715647 964526781 612444356 799749909 498972506 996113109 846335687 888498823 857412944 932112750 25581720 213792360 26816320 559591303 29961077 321482837 66697915 192728107 123671321 514867151 65607875 604081585 364158121 726782475 389125337 633664134 119882327 591674497 18685188 420470757 181703169 778377831 96819574 648490757 562203433 858187072 462554517 499412729 100404902 888032495 878470703 965847532 117052237 255324292 115395341 532682956 88438475 313014329 139457865 689512091 480072803 880239014 550029433 694538008 90058713 239000342 134309228 663812459 649223582 766807386 37755564 205959305 182105598 957507345 114300334 680009513 460704905 717689887 413958539 933248313 179618841 797633231 294974250 872465563 599931133 881921418 197682164 501918595 5684138 771204132 572814001 646540013 493471554 734747165 371857586 660270072 620050127 990016841 558361571 577236511 413415909 630793113 321375052 950682288 871907085 967951853 612419384 647092555 577859980 816769865 755258486 776411930 155646257 489580837 235846952 936847946 125690410 848120958 671172597 920238587 243890541 466647219 464659651 659868265 637708245 922975125 596742440 827756461 578768557 986292349 659478748 830576770 742878278 973273644 893811956 938205333 524890751 996843442 823616399 892784378 867968757 919951138 554265548 650785434 201940658 255214154 33118075 612660086 361308596 918310764 625193502 945484966 460304227 766489051 447067673 557055191 37189758 861233064 814105295 907965904 138239525 142156088 82862805 350670464 126309399 357440360 341265309 648133635 517995890 717501541 473787010 989890921 177910492 864333300 285437605 957677432 405399068 506113753 288812968 728475080 150902261 497935930 329982471 747425256 704542295 734436241 671330522 936144521 86117657 169357332 166482129 860442689 347005043 404240415 130292100 416645235 270763972 416210253 227154554 895191660 656119149 827193548 327829405 431849423 165588066 557021056 98149358 310486395 274792207 519711158 384571527 679693603 515103100 776840043 371753749 856728075 616730587 956000090 719552936 980743183 130525022 972037137 576029063 991405803 397908694 873784815 143919690 988102261 890788830 906659361 773393452 808808184 532859143 916655674 282044671 339618942 330858003 569231511 450349093 485279972 318246449 823005356 153836603 638298459 237825525 537877156 267313183 463229142 206823102 332169670 150128822 618496664 260322365 956369597 602112643 668443175 39416395 601330409 94199909 958862614 513127982 557018670 412657971 756108899 35050296 261578236 26018060 339008414 156803187 207817155 143482546 941466966 537714932 562241045 455665110 711708186 499940835 901313274 274449111 429762264 9616080 968670282 117336389 570230306 202557975 560895643 181139724 331172258 166409929 726098256 184273484 265006735 153812363 284510761 221904120 319259071 306851552 655551641 345199704 786530198 565470696 635506891 144844093 448347330 372079401 946979232 54148042 468588914 43143710 149127947 146433777 179009856 173463498 285735662 280152762 550735634 437805237 704007774 194374600 526913398 24398889 211276312 165496412 799704262 23733937 75228099 65238487 695630144 10034932 298842982 133093852 283065707 107732288 457342446 427026899 736327138 7724351 716597719 531244073 818320261 408269631 782229529 141963495 407806291 58490850 556986454 162545647 947185371 879456913 972552388 934816308 995910615 260648843 903545221 239615725 630132413 71905061 213058078 41689981 209137989 60514646 411357693 120048407 555857793 471316331 652117322 245015334 644420480 6001922 963620614 680137279 852843205 395384774 563591424 9256870 615429251 597831559 658326292 416546518 742401335 61034938 579803297 358651508 940016587 557100607 786781178 450798594 494355709 206466029 493208848 148568898 466363503 365602055 638628327 247319806 397975350 76715989 757589899 291634065 875564040 782245391 854528896 344036046 478381699 292924959 603434208 377886567 710656186 377992774 802365414 131856590 936853116 395488989 747861275 340204408 659244875 39711241 435117185 369526982 552412529 405550888 856116432 152635781 744835658 272832395 520650445 454637503 623307055 396579004 570884469 127056591 216888581 107022938 295642810 193158239 398593497 31347451 67077846 20818584 273181440 33447918 861655106 183436758 186022506 53485830 475849959 47213868 286596885 52827391 135735827 68926080 294184895 73784034 270245831 108107371 707216523 569853677 814684909 469367264 495047098 370834857 697912979 253310902 721281784 616652527 616720956 276646850 409924021 72545192 412177275 90405030 535060454 18361015 797541130 595387058 981584348 847108072 875968379 263498297 321961394 135118027 256263753 184616898 240604797 173728980 631342867 97761518 839470251 390833105 773365120 561736457 661046728 650727638 897285611 855286267 913277773 146353033 341977161 58490374 981646454 596854797 675016467 300905115 353718490 82727095 361946913 314514986 647323965 118653811 869635011 415068722 490119321 121854370 654393597 548792506 706514292 307640886 735945093 563432025 574628586 348464979 683733862 418126614 813558038 124968127 684763245 26028672 456136763 14594517 487682817 403015282 760136453 530123966 575512898 233262640 967403313 108576524 654029495 24549627 354954931 105011637 257977262 186139546 219401717 199957556 326627498 48942135 166640321 78580148 643309311 539970231 716799936 224311113 840430425 390902799 670262359 330605534 440218808 390854940 686127204 589476355 650229883 250233690 448059268 27991210 91958634 16564530 404211128 43038456 880925219 803730277 849169294 431050991 600188222 143961576 443518634 73257323 948452727 487451881 931126560 126400916 839963328 329498046 797218770 102232125 593448407 52719293 540458415 175872609 401011142 38932505 562481083 399638359 887219726 497086378 527609015 461629107 857137059 196617198 577228914 185468332 891159543 681610448 718716009 612213196 969621181 688817314 982478518 784018501 848261008 529133828 658907844 632436623 996658328 545896899 845570500 31275631 701592537 73619794 675629530 269315365 394350498 222483940 668197013 529664800 726542783 679599721 969530116 181844055 925818463 669293625 765396848 362968000 653564992 510978470 579838033 188278246 634527278 360348698 575633113 183420804 640678065 247065237 562676567 412040252 934348652 629729760 805931810 567191579 632925170 561422074 815197753 86656621 370589685 355541180 864271763 707355408 871625467 290121488 503005119 302590000 594260250 10626890 266445553 50081790 794474400 364869290 786284032 249933977 914920690 542954218 703283047 369185461 842242071 486222100 617522326 152698853 534578022 433996979 818951794 164603759 378686254 296851657 740592022 478631928 642317642 51332175 678870830 465012051 616870415 255867908 321572390 293908212 663364944 3971291 968469386 912193973 977281090 234216213 617549509 486697633 835783303 86842312 355705806 72187275 649933592 395225053 473521954 16535858 385843217 168616466 270873435 159458754 750008604 554709318 737324151 683025879 804249460 86209991 988679467 967364553 982719657 358133121 376133174 254086814 657343386 353889603 526212974 53251383 630937992 49855396 870758279 559754823 687040658 662872550 891010549 723821894 856053616 244841884 761342536 194812970 518723004 472507204 797196882 6415977 209419685 143292765 243385443 105422435 478256903 356777633 504371498 207387153 447438356 123892926 996584756 486505451 754235010 112694110 905616009 616508688 827091883 534852474 694265673 514160694 607190152 522896130 681589425 142647363 871106667 378361820 593948145 580662018 695554875 440675757 926112461 687024746 807037802 479598781 567530001 385720054 505115860 423232236 802235149 703388182 854046880 542294825 815331716 365163352 601677431 18181141 580144368 430791905 450658391 185821110 932014639 310034847 588141096 423289741 432441550 235515476 771902704 254975747 574286731 556303841 801501793 677003050 722573177 556027860 615765842 112236945 485036852 320147434 651699281 180146469 756931465 120443492 245916361 119691452 906227269 211328553 692719495 107502110 413354821 364091287 397036098 103960564 499295119 96865778 777644504 216258769 702457866 242798538 741058070 409231125 491122057 250724695 265570375 214169455 565731730 80752412 220063462 194356741 656928842 514558331 569291798 81809018 337676095 155240344 638147883 532368100 960444501 575401608 679859983 23312319 62097866 17751695 673333583 560457372 626446597 371404999 614649593 591272275 671287452 304408669 471273358 203394042 290201043 177718940 407933078 318682585 726252894 89771284 788619451 90102789 197821829 1692422 104821210 68629057 316604338 34270987 703578811 702638448 858192664 665597423 825892101 679834854 746587937 375771531 474064630 82285686 231787122 141207119 936948568 725031619 835790915 162268521 901622549 822300344 955803908 374457079 750336826 63702257 555506410 113351984 522200632 520319688 601209150 234886653 669620042 529051833 569959626 265240704 778120911 647962685 734064230 537614938 981003533 377945984 764098778 183229981 915928533 650615447 746196014 491499146 998294306 823408387 964407473 733063431 998510035 632637315 996963258 798401454 950888949 316374827 442992474 204137790 791876936 582375242 832611993 654925237 926982565 22563427 93594023 49617794 119818552 32011782 424979525 137817435 774096201 757548742 878883556 513220464 724627266 534017923 643360572 587474413 679269969 166663468 926508480 232159010 833405628 649528701 784154808 739304712 749919512 693395012 746393648 695505288 877135754 14828386 106561380 33564106 955260782 591318420 774889836 56829432 739592857 488883242 570598361 199169415 783800192 387629554 795105232 695374384 727926769 524302436 983202737 687477462 735236465 521899769 700436988 21067325 67446252 12545212 488791215 324436512 645354685 258960880 707829191 511942413 791958076 630865693 699546237 49647516 964720405 446697545 738340004 355453261 537241845 465256914 579446235 233149330 737409254 681104282 851065211 460382035 799591124 26940001 952819773 679011528 861205346 204768437 692944075 485919101 944731464 175500367 969310234 858645510 996298454 544631609 714774609 685294579 811743766 739164818 992577536 991645866 999263833 405162834 414542896 202024745 704274778 180103621 344044193 152217993 417389088 36555635 924997584 828281802 873616728 719574154 882254596 53468237 458922867 343399163 493234549 48585165 260260792 8398821 734506879 275315795 622641918 462568460 999836168 795514743 995335129 704245632 972978880 256390728 520469046 254692286 871913651 71718156 751515937 9349214 86658082 40998692 102851720 81680731 182106082 54652749 463841664 378614662 989007293 280361141 529157806 498107680 660666143 410091021 893096379 766936606 857565448 518488828 993730109 221038046 408233184 364080719 754624069 481737558 791024638 339698951 401881967 253858521 658881551 515741708 575562528 154573515 979899145 578218521 662118884 636299937 808213364 543473330 679375282 56457236 551484560 545749270 576464623 410281178 432820811 211572934 988781422 102703263 647518629 634278133 653587656 164002241 270812813 74078710 516903645 235086288 756087856 355025007 759576666 590167696 764503752 381576052 968454138 50811670 295374439 222534732 662540311 158516882 847211710 705245266 861282492 371599314 901217772 393604800 988162962 123787426 196112503 102383536 564523525 408828629 676530801 169932451 591191758 381992259 464644545 257274275 339495526 237477080 643390529 246399931 776670184 245587825 703566272 286643203 344491697 67039582 492216596 144428296 762596900 420801525 927216987 550050059 586837352 306901438 867988947 780863844 927865419 625223996 953296820 400933372 756153227 306321338 668225173 602098777 973788604 666149177 801808839 670724131 860725149 337262443 760846368 290539484 974072491 655426810 716694657 69797017 178324308 158881922 813875111 256839573 800799551 286921556 982617445 792323341 876983636 660323783 781740271 514428251 850574275 356423946 888755540 844455210 943864945 171342687 467661832 434481571 888000583 511205883 642606933 342865610 902791255 552566254 655090916 193996201 323713712 27238246 764586901 155896048 171629569 61159155 988587657 26056573 31010144 1393381 246060814 17638454 101726048 73286991 371019517 58901812 150384550 7809865 448818848 304652914 311749741 198824379 997698310 97317755 913782771 507013756 633068378 616235458 670415353 54068314 98026016 81825824 830218854 140888573 580070419 477089260 772430258 324068257 932734627 387694292 768152121 470158572 940684208 302894258 868685109 415193229 538220517 402478135 888357407 518071813 686118245 644469787 997308814 842499152 999668893 568112424 803754858 59839376 421486173 169615330 195185939 14888536 30756295 10077743 715929509 106397864 366921502 213601386 332960888 88011089 323931811 74545339 516456025 150751388 169372578 95879962 995788486 134621025 561495704 120585725 657509505 461963242 963057118 736722684 985408003 196047590 413315179 398332395 733759820 115135298 899523430 148004066 919184586 873649805 997447999 985807333 999267119 947374821 981784973 530962027 892053136 525965683 978171584 25640239 776804057 229619238 670608714 112427624 879130539 823133055 867786229 338029571 775306566 471386107 591759383 299243077 964706967 822576383 996693581 551776204 627660240 203761849 873111714 788671362 795123859 278399630 345663618 327885606 848032950 722723959 755435815 555001258 721429837 496109850 618499560 476284842 890266921 654743690 670801747 106842792 671060349 476137274 913798790 491813950 663225192 385256326 585279958 194849599 891956311 618726454 904997175 536947979 582086153 179421975 886351041 19495493 467601649 55723467 655989213 152153480 438884697 112895807 866664217 569922087 840289683 671761701 686811169 681296544 909762154 45669550 353115548 24792217 270457710 165527900 716806688 293769171 878326996 793204270 905118276 600504693 654186721 645566844 930552341 195526553 625663291 183546857 985832035 444264077 493024155 209896265 320019063 213540147 274869827 219472792 852885262 181029033 225472268 69025689 106117968 42400372 237245857 164651658 956838585 160069789 757026565 593876126 679764652 467146477 905917492 871492320 950511665 873711269 996966473 766423718 944141546 882039622 973533839 370181715 570329114 432183777 865507498 67229863 871313055 783084633 797722515 64570276 593401616 397361389 937762131 20449192 214634755 32950815 821561033 439912006 574623784 560658985 920023539 688004733 872322727 315586494 558810876 295477134 586045752 296927976 519258965 339118678 366914570 266898946 772464916 127606359 717031781 500166298 524580922 260483975 728212113 237732530 671603844 652872881 990161838 424664116 720155008 208186946 734333217 649957097 892781179 874781856 989915473 645879277 672221636 554263969 805522308 216260103 763032790 592367424 618369567 185181988 352114768 191933471 969074238 848900929 960401184 538046622 546592275 417201328 480699958 422962285 472383539 462244922 781694055 736280377 812941160 644038902 891343852 513035483 585072812 238597958 375031350 360357040 883834500 7227618 317935933 317139667 536111780 101176115 739204682 14723336 306610386 129494498 714493409 68928473 215566365 8737976 846627061 204541645 702605710 646694038 930603990 24585167 553752402 452737057 560673001 250859170 926464433 324409452 402823628 286516926 375599648 283475664 482784248 442414504 982826225 231286534 484736553 2630259 432870728 10317482 96020097 71616789 239392907 175305320 919376338 844838606 913764472 878194371 955580875 741506223 810574317 798330875 837536704 46173760 657428732 573272972 967196389 98163032 784659243 349650803 402278263 125900260 402797840 145344499 378928349 84281512 171677379 156587382 371113613 135960235 230893825 104331900 867828529 840656584 959778995 558790914 607887628 342385628 986589616 737958296 973049468 296858686 890317574 878489733 903790495 22545278 233308232 104238207 506389518 291477496 923534036 834672381 968077373 267596101 541295911 480196607 521642801 47153164 400981288 339493824 617684841 150066451 281896563 281841902 624034332 234963891 606946251 560105699 621862300 456959793 983356642 687406706 707122188 30562921 45410212 28647616 291530239 136727414 508823961 504140268 594212841 43278962 315774352 159917356 358673718 190599126 939801457 231553134 489365758 55801216 870925083 771936574 848312088 785517195 824191554 193969097 747002394 488207480 524035417 43380102 203389503 84569572 985824321 803871302 983098237 950889710 997439534 795920536 855343003 75454485 294931319 17251480 884611354 231292065 600370074 219371774 450480900 417024710 428313446 381038241 888812084 480769578 892645665 838972260 919783310 675557548 759780750 535779004 692356177 386450434 424886337 38940009 133814645 84635773 884966624 178789605 179842336 91547264 259611934 133806681 447779655 114536332 203624488 145728492 882904102 92081583 821531492 807174131 884697916 516040149 951217000 567512217 813374395 651019678 980464837 840675738 954919628 509251721 892590004 827531624 828580927 279206146 534401635 202926022 220817199 173343844 602310871 25770229 834051112 586891739 702583017 403064402 570931752 101200383 403801394 44587200 943867055 227545331 700108183 246169747 625354855 623872974 854689075 163103038 534071708 363484664 456387413 382152979 733626239 296081983 760423244 518290233 943880704 235313615 342203771 12457144 929625161 563684978 887205388 703542943 931614670 853367336 937253527 727977746 749477298 162501798 759725170 367290051 620234098 82029636 666591638 571953726 965576559 517501223 862173479 257110795 936103485 824387940 892460521 820303929 862261974 278432745 683756266 632828810 713637194 194704609 224427283 221991257 488195811 366966773 820209844 453165536 998832308 312954429 417406552 189190815 890557116 182353622 434079999 155238432 329293111 1085561 334565864 222797534 878984611 779735383 985218422 375235516 586073314 213061814 507689193 499319631 735007017 258967921 869936972 108225778 905107564 556802188 563566361 361043922 476032681 230657639 240072559 5472665 97166993 13955329 593689509 530158657 678857360 607613004 662022942 621192479 888057136 763321755 976284928 251545112 388493252 251854939 530478520 529594134 923313732 537383425 855863058 493288737 602908411 161125858 706333864 531697796 979297560 649870832 988524981 648444435 665596347 114840052 379737457 98561737 736116653 317346290 398436281 70180611 210247612 192455531 982403801 154771261 542006697 430673828 599569560 334158858 663510659 235430983 955648982 130115574 453023983 174980163 503684423 226154297 448545149 134347037 756761870 564626553 893545553 521625727 620998578 339975129 893181666 600600447 874761629 689189020 836480532 700229971 767263681 537655461 623785976 58850852 975063455 624452601 693792484 354647146 987106264 633002601 675038181 462338183 508214490 388564015 848932624 334690857 416857112 224012996 430954509 39446422 875923851 563835394 891412444 710363091 853429349 767677826 861012693 131180204 264149326 213286980 893047614 715036836 876382020 782815170 859257925 292266152 786516352 148586005 736456148 128339386 729729192 234156051 395647181 153920762 177654391 153157438 603851114 483487968 852664045 719348617 744061239 565887916 639360403 498877447 538328432 2164562 230166767 46576787 162757525 52403827 686498835 246115201 249868694 31825978 679560737 330728873 904925960 61640488 340165538 305960458 965346229 945455988 985139394 385795597 641571870 327006240 937630029 458856055 944162067 413233246 934109623 462595976 616254651 361361837 999007855 388928704 918627811 290760330 877596029 286447092 735384004 28799774 538803015 237737324 345643334 45650785 545774474 383571214 641014914 502986492 673893674 376148705 760540249 688279848 699245546 104427720 926060319 299370398 384351792 82368658 456781456 282387377 445857472 115542783 491858553 325343348 390489198 270464543 926352662 586513669 819176925 757335123 858805441 1833768 102931808 75638999 693805296 60001276 891364926 210034884 572862760 176332940 247884058 19372974 589518136 8439794 951240997 810747532 866917561 604401956 990208745 705336629 817270966 734204809 806453635 649650018 724864114 280273070 516451879 74335959 912452909 74748592 126012165 52292855 511280363 392226056 403796462 269820911 772685225 214997377 908859730 686683400 990298807 812174646 854793284 782457108 834614509 360720450 441354979 116675206 962403934 203398652 357968486 258613589 807715832 536638023 891635171 102540463 675601650 209943496 769953379 65508557 997580239 288236558 621634660 126537563 308537608 191262949 225682779 8450397 104439097 85097693 873123955 91040318 366346488 274273718 608456652 416011645 512317262 126023484 573834199 57435098 625771578 561437453 692245319 5915151 230802621 37416003 576304911 173151260 238923880 140477199 914182192 579064797 988851496 727195116 983278540 57591469 566203365 150051417 459449690 99201322 551401965 165651173 847159794 732023083 861796997 209363456 690992588 600573433 816758698 174412837 390033643 370690769 561276253 39798356 953959801 546699853 989152903 250566461 385642076 119524306 532873593 343009333 965948657 590032059 729295092 513842355 790869759 390171434 573898843 133686416 195291589 45652884 706889465 419533618 727067921 677005587 943035537 275551840 607654668 5312053 790685794 585672921 826053655 465850299 881702725 669508310 722037187 604595247 879016723 389134545 554354181 139988008 250020029 10664500 447689541 72585311 818648128 144092057 176105223 7200825 233289262 69701637 876234419 65187730 466923162 344625990 374645530 221961800 723786176 374623774 641497210 522987380 548814352 297186180 859419053 539245248 951760606 821906058 866346077 499564082 525784738 220585275 344940419 187723757 270206607 103290238 117705850 80823449 634349039 230016542 769428651 448850551 994257928 697992580 951672617 750173990 921658143 824536439 970998206 591931045 832725386 768361817 797982652 113245351 794954512 463598962 576918959 144624112 582039630 153197253 391726573 268047471 955446129 396169880 700863444 516777151 592000776 144031969 633988186 278008721 716557690 280603031 676388330 298897488 561127128 431114185 585675693 288909984 508670150 1120187 177509570 73183466 103271817 69299216 853953461 378379585 886559203 91306575 360641838 28888619 453478065 84205287 602462815 514987497 880292356 690042560 792661131 786207717 933179517 858891164 871469678 117887957 582001941 87353704 353959980 25709731 971946456 554343114 694904839 91718613 201061569 73643020 285622289 38498872 375984419 102363867 436905967 303547147 917070648 625006619 850587783 396692464 637710932 133143107 366493546 65672615 830464934 416430470 496640436 119683415 455595834 113094687 956717760 830509762 952946831 346529309 762387560 91904032 590460871 451275908 866610903 623430284 711638040 50561012 412967085 285480787 826002117 338704295 665160890 257110159 890986521 273463296 483260650 162863110 675513503 18803230 266929595 199395887 456013443 326157523 721336568 421575214 836354837 575958944 694633604 379275334 748046052 43530351 196785065 176701812 905453307 887361866 968181276 931212750 982541751 315993396 417023264 338495647 563541527 401430061 938591415 170471354 770264367 712992409 799537011 217047694 244091839 169081101 250101200 218270721 630347389 198465221 202275925 131380040 235242489 128103317 999565487 304432570 749010180 187878691 457264149 159721588 831604135 158940519 741723239 95426699 123279792 26004708 837016497 707063685 920493150 833617117 860289006 808301182 852762515 336559529 348123184 211103573 892137245 325877666 975187327 742935555 876692443 466061671 543725669 26208525 828458756 128391395 984258052 147822871 176460164 91964601 792728760 292295326 488086735 270312530 614726474 600243898 886159333 230602449 847243977 251843043 289787703 144433802 373695677 263546083 795324152 91893506 309088350 238911121 620878157 370317720 739117449 671531866 917356403 425984616 464423037 380003207 910017610 459582113 994178704 331021556 986700980 413503839 989347517 147782703 937658948 10120749 375803916 189610281 326316692 233336351 320467916 317498650 569087426 68814213 744645531 382040017 917865986 480254105 644731244 134106616 980570601 298989785 691200967 617748432 827029674 29734993 399286719 103408009 894542990 892882282 974633619 596172342 843248141 169634116 251509605 137939757 637218569 615184220 773272701 611321763 700487063 613854778 804177730 635819272 803250550 271251341 353812640 309350066 722116187 25229057 729848667 294884227 627984540 110489788 412056964 30015991 735707150 348509833 660259384 589338145 722942728 218970467 940094695 710374305 909065753 658422768 745855610 302685876 858529665 740236231 768501315 752085149 947397479 920979329 997889489 506830152 739700356 723927078 809840443 603809807 844712680 420218685 898559648 307567909 840983419 371596381 784244408 300066381 581224656 192052238 965983262 116512539 697304446 88493104 745586411 95238670 399134329 117400609 333075606 94062689 684858978 70128768 706690322 348328427 896449475 168244447 847139931 182208306 964792166 223971319 678482609 523107906 862643790 423220665 808485264 766410774 973309592 791383311 918360155 318586239 490422576 41577429 420055589 404545378 783293882 712701348 946416114 722350892 829168292 88848341 144078314 29796408 843860666 305742655 513653179 118740884 223392083 65810649 230058629 53854699 455377792 161297414 243403716 158867924 971638613 822071902 854427748 316948101 481331452 438334056 670477031 63416312 95794336 63723929 767325927 123436382 741886601 92919888 736792103 295673129 920023067 431369627 879819557 754655195 761436994 615502812 735848667 126993962 674626255 503044224 759476528 466368395 892571445 447121579 603613169 180096395 449119266 80526074 575120610 427767533 662176557 618207504 658142957 130782297 988928963 204056799 505074972 401680071 959092991 264867830 362190733 123662160 920125280 46370333 987777469 114022960 397864821 82122817 781839551 592918399 808106783 11420897 150989992 101427685 507369079 20642185 425235615 165650789 346061394 303132015 988457240 569304051 848450205 683420099 930123656 849536606 975931103 233161892 729627500 224265248 759176088 513606634 792559444 414938116 631713530 348290835 657975635 552593205 869179201 705107701 966799704 735591542 876982091 549506558 931062086 83269412 974063012 838894136 858237936 311535329 407487175 93739044 566539953 30743252 303950564 162298170 322244016 223774176 345498575 239513125 967125728 277949651 794462439 221314371 241396117 111263661 649232980 239761775 411631602 401538096 437141817 54021575 356108486 11337095 348092843 158505755 761231591 713336402 978027156 601647371 922635027 656601023 751768889 265951462 366949984 272059341 374151996 341271582 807096789 101995710 541111475 211405086 854542569 336752870 340008779 26264322 467755355 367817075 829550531 364624963 730897338 142560128 414776145 250883955 374433114 76172120 918417911 564581728 777929952 695477345 858377388 811508239 847485806 725279126 819977802 484071067 620161817 458197986 780950219 533108189 761090455 263524910 620720982 529144478 829565846 555667292 933966174 20327760 30623278 13603011 928631277 698723963 827667075 646465399 679435494 487043563 696462791 79207074 183749079 94265971 200095213 123073371 371912499 191103553 797591642 420151791 651501111 598017052 782649827 560345411 680302571 43541274 67156669 54330720 591350628 101210036 509469342 132418372 995025049 864616846 895542444 471331347 695316870 345458147 863170312 748663823 809914962 553123804 692142138 400000276 979579075 557160770 829057201 200284014 639621098 287383583 802626692 145880068 388078040 344845273 744835715 110940833 921656920 324512967 765309201 575807564 736168906 359534849 468221976 375654328 657916203 25152706 70980056 35389342 103674797 22748116 567087127 25790821 243201018 194465748 931444518 19995673 804277446 729791760 918693309 57670458 82235324 55949269 326154340 196199149 568139647 24197205 28833944 14330445 326421949 279656274 482291962 76396347 927185433 172984238 753212123 660327223 678504727 236510452 703763512 360287687 823546152 790120826 842621512 605129409 648014321 511181281 584225696 148503184 470434823 313254186 513271527 108603156 243698235 213286007 438775208 405765693 480672252 86202335 681033377 476373020 936551654 189661109 525896216 32609382 115379554 19990583 387244446 338189952 833443809 767585349 778351399 205994411 358049668 214758530 717219388 159373377 437750076 73586277 832888214 463207787 465981771 373139876 917127173 58670213 883044737 709512160 998908944 558153560 943926381 231731244 438686084 320062176 808058541 585904574 780527782 290118211 541614576 294978779 596323812 111661530 581340764 146546753 520657286 13444648 307648180 234770563 326541205 153760176 624217336 93393938 855609191 45862524 171488661 18196028 824778428 464922994 787226310 98464277 729663056 564785004 571672271 283879098 436446874 433775782 535220834 281640668 487398533 416832449 449404041 365011048 883817471 524856269 858594751 452219983 595266671 320469240 579004695 176726401 969783942 207109475 667180857 443456847 705162162 370205496 461773039 153876309 226557847 96431471 359131831 144129446 403681246 15147050 579428079 259857308 879994880 719172983 989526350 484243180 704498571 165540665 672829360 284673701 418270881 266684074 711449162 170156463 785410495 62746783 305052955 4155903 826304147 813694843 959406602 769135039 841939374 283893243 665958539 127992674 272457024 48821410 583608902 241935415 256070216 66077867 705644354 110914281 337798851 133827305 670127410 407541107 573478853 249281616 953292805 589015868 849945015 776137138 828216281 444483429 714204589 476893168 997968750 378180552 880988671 666373115 881322125 128517171 301263538 143610856 747902900 631674180 694326000 568563065 928013513 902507264 933582664 252779706 380426823 37477130 509030032 192686635 402667018 366066336 503134198 124323888 601976438 551279585 825630883 792270895 881493912 560589432 642506835 137554230 350825657 328517114 946008289 793368098 985820251 749049997 969753783 121379001 171742586 52576275 620267318 477129321 595681534 522147386 602654175 353076986 685080931 577174211 658089803 346851827 796834120 751537472 918685622 713544412 968940303 263926145 900677248 468497357 985014060 433914735 851013015 632684973 891925351 871491471 910355742 276014601 292821006 6467498 776442498 572249829 621070867 232107978 987265061 305670614 791781903 93262865 963419761 854892252 955904409 810472523 919966426 779745417 979549772 669780290 725284686 300144913 464818094 398116126 415559747 325083324 699053660 191325639 423788614 260878692 660094270 464439891 944548117 636992606 835075986 774230286 816285354 597598493 657395202 293740472 767738385 739483510 824202718 14978844 984544380 655114671 976612871 727364165 880885331 836105107 916818103 129286855 268559378 170469459 530746242 95170443 381803110 112827849 515786605 258647647 401031890 192697280 315639190 30991534 285365025 123296461 945155881 445429494 873283781 716338830 813625210 611942938 755115814 4589134 410205872 85657395 603093744 137170571 809607263 584497450 625469663 279633852 383796581 223193289 373827916 55760618 267178937 205141929 683135309 214245842 300512398 29334644 638614656 248284854 573443128 492239498 862228937 407157734 599293079 469982429 768916745 219917490 478073530 415908521 857931865 533672590 748339143 288491693 596614554 290434734 683034013 546761910 809880886 686890299 705472488 78334599 708184663 297090588 730918218 79295061 271299044 57540102 665546763 500084648 669554307 622393425 745951519 3085700 778769832 430184358 628189912 385785071 594879526 367725867 834669086 511992051 942202729 703482466 739241020 579316235 832267563 702541981 738879328 324804536 484347962 122337589 449622708 202574626 453566375 303743330 444401340 183646979 941905825 477246408 648760610 554353015 978236726 879815547 986982288 211453804 782626795 699759949 763900269 412698147 873957186 644809609 697768113 483959983 770734402 521985783 905871478 740974582 904158068 343255448 886222510 792022848 913643627 765295970 904783411 790484506 836679959 827404305 910051733 239990864 750881481 332989329 663162647 447828180 677551992 283533410 550146764 65669622 474391891 363991485 807922144 550771921 831005510 662618030 799440020 505880196 757045992 253992989 925915451 321095818 948513530 738021050 787003938 596846837 634033926 483443820 636747441 193347723 435006644 29511523 208511013 92387044 897854538 600398260 858137174 343715610 860471086 599732008 706575173 246589991 573170170 194542502 896278982 35828313 697360694 77175759 857369115 798126134 840789176 419728966 421091046 19343556 338902189 36980796 589773926 475465569 648773521 507219730 713909258 348833939 886963269 527045622 731821282 369858262 736183584 708410179 744970760 255819838 902136470 635329347 938685514 932947647 969731451 964807703 981622905 837279685 879657514 45151262 759462826 593277740 659783009 490176944 665292754 165672859 879823080 232223000 429633876 309405598 789845167 622564434 700476136 399327155 493436917 400288123 603796630 557059507 688764070 416751586 667872429 526180634 743807415 498528585 663976892 472695338 732688751 268762597 712910295 650591809 703332169 197969593 610952081 360586874 567078401 146501764 266546990 55472695 822605589 182042565 660324445 493192297 697878900 11721984 912769319 124177491 315565693 221929361 709695049 36661238 629579262 249950305 335918016 44702280 927098196 232919112 994777639 288935639 754114811 326796945 582340331 227353864 571359861 178307896 213532976 195831461 409105426 278210490 408884072 217721371 589704129 518936519 790095786 334423412 991406771 191734520 386660869 148578673 511733922 47178261 315069102 91221497 773452545 430276680 594044773 373750955 435907012 169300771 495075331 239290749 773725599 248834780 406285026 35723533 695407251 167067841 646136846 101325428 391543853 140088536 466142978 424658490 706596526 639810889 785561828 250379353 701566666 427174254 837797939 47882563 56383150 40112506 484189169 472550631 477571566 8790827 81620227 56579911 975206793 102179003 254979204 102703636 870194151 776067403 993139678 341181912 766432539 230034154 959572836 604041323 751315524 124630246 748010618 664725175 917437151 514930887 836878602 367552255 411469084 163575546 813456946 702050528 917353876 578475860 865348950 453088243 778797683 329716820 898042074 257804596 967581851 475932818 958110698 586949178 866188551 71617229 433579376 65176641 299088340 202679946 497377392 352902380 601869947 457345902 769489858 403321513 443877754 314978288 987972568 258884789 842519526 310171832 892706161 13822940 763053815 218604156 453869572 386695659 391047891 252990048 802901593 640569144 783847460 449637987 753325616 371131984 737334996 546160627 643655919 302989489 825638983 409355942 968303795 31012527 919179800 648885224 897239810 58924350 892466155 806493815 863496789 262120317 773756943 356553769 406909240 388191687 587666629 520304579 875128372 643492471 990048437 953025085 961585407 339438706 591341153 369139544 995483702 490637619 581455764 332602075 555413142 536860807 758873667 508727865 825860661 70661010 158416844 33141357 537798472 367790501 449090096 63505359 194033998 86611395 529286342 476258199 762431801 702447477 786597843 488116233 596579812 207306683 700630727 339149517 457127607 124107288 185985509 156417300 323084086 284828621 922507815 687328865 892549691 377451394 794068987 402606631 944638470 908634994 983681829 946622343 953293417 913056664 977481320 556256242 927736593 576390150 722991415 178806004 270543688 260541726 629772971 258409853 268296164 7610069 506062548 164709655 369582119 141303091 357419624 188116701 298041061 266807994 302575677 225964841 750763542 476407581 993445562 175340783 569207019 250170037 773374283 214817908 577323840 115722316 817988405 574698063 648656690 184511454 828614303 455993363 468878752 163948477 984967973 374053425 692433423 304807180 656427204 245572186 332913197 220254582 567063255 299193308 473140286 271042155 540260610 281805073 430102352 413155316 670859232 12881454 492042269 462149234 787451440 333181564 522657788 381056596 726520848 436275404 731235018 725977884 969794804 933819582 941137586 645292488 678927587 464300419 629386814 51138505 662405728 542637539 609410326 420315515 457930053 300739888 869061980 278827482 380971300 22925530 148518974 143504403 645511274 220647430 773135205 753315193 799192875 205892076 680556480 276084231 737297222 16024172 365689838 5522782 180986121 66834330 845111932 725833123 895763449 297480225 377332919 171464365 272903146 67483697 910443026 9629157 446383710 376824292 989652019 329858055 963543100 377036283 404150132 64751983 727664912 100542921 469936174 149423167 190820703 28064642 80513677 68255630 448522053 56532852 790806967 305408488 813933222 309856051 654234804 230462400 856066804 548494186 655755943 60279244 759324326 372919992 944260228 666400716 744217976 212000589 628524724 545244448 558440769 70147804 634116763 170031071 993663502 716951517 733358272 676052437 716454165 34076628 881192560 127854431 423414134 267805786 712513304 78762439 347279880 322497137 660941560 204833714 446527195 63294973 883260148 469263246 504836481 383255193 813521533 253246718 623842393 216119155 614876455 194437639 470271959 342527555 670320659 2948032 981646711 244907702 645669946 462193186 903121174 880886161 958199449 604686940 808105621 94692131 437813815 52197614 589122159 530744589 968997961 923770219 997125717 764303630 927517946 4799415 777472076 314771267 561775867 180739756 432633956 430843509 483771111 409479832 494560565 247488228 837722866 727732937 782588193 370840912 807981900 60295557 472615415 240103976 529846236 99706557 502080552 285633991 305861632 251556721 878438822 238189607 503817102 138017590 823678054 767011575 876412492 332032155 413874981 363606285 858364042 495254613 936438200 921363415 951951025 541799606 860780371 572730131 953430630 305085192 585853767 164660805 979603172 81063644 814010039 183796427 624535071 583779553 969879058 801311597 996862032 320866555 502697946 75926873 715479322 167571722 452202146 227730802 402617353 98898622 640838492 63663246 536642209 414632066 442511464 338057172 712604897 321708554 529711036 415210337 956507047 948814670 999985542 349362155 570809894 236474789 281256738 8016683 323356942 118773429 732750850 601947868 844746253 499592297 638652088 561954658 948109674 412887434 823189214 161353382 951768251 711152375 820522520 451001813 551175922 179723531 315150415 289234892 829580466 721206530 925349794 160007520 912238816 710188880 710832974 150208595 841911057 825108187 827468478 783155260 967794287 69663183 412132065 206607213 562169370 513794703 606513559 585218686 652351446 73516956 427096345 306622732 381895470 43182864 601787743 502822026 933978981 888912096 932178728 275648557 576305126 539031818 764956752 363836354 879067122 368374119 936616410 485408550 966857084 754283601 917437640 345045672 733317238 196004782 462094208 164467635 898517245 868825193 938163471 133311695 318183889 271607386 573736369 536838118 753165601 638640622 792915542 739008924 894495445 266197697 617915432 159043527 231168595 17912545 980981592 818655985 949782188 932210796 997563061 822634254 908981905 409887874 950627789 488303897 610932897 125376226 759086842 751913191 970066805 316320772 721681984 262369673 707128650 404940017 639232330 514819035 639226425 486186647 551188203 352389738 709934111 702849791 751997421 682770995 843476870 390098426 639478256 110154747 217387424 82991664 417117266 333593155 493647921 450505455 547194178 219086139 665958346 205660696 696968499 468393013 701848747 543906899 911369546 604058367 801241930 223243467 561874641 5023836 143764650 37828068 231514206 32953199 933430458 112771578 531854376 531113162 536168172 80617966 431937160 332756583 677849282 26508311 334806794 14889773 980949866 161547942 421173939 118499709 784380471 489632043 891670584 766570459 963807082 96551217 537155960 519933307 682624764 612523250 752540526 463738981 833407346 260104940 636815080 617234846 823007740 701012429 868219931 175034594 562679545 210731056 850533391 151930269 330775806 135562310 519479412 358492115 785836524 488284987 627939040 453942446 709868729 580248306 882644472 92870198 243307890 187604731 464808232 73825776 584704511 246168960 595111563 43200265 45868487 19304001 592952655 77746690 232905400 93955745 558271615 516250809 744669017 596297867 772636814 357966079 449762429 365443602 542729600 496903079 863874964 596742384 808196343 535357961 590041187 483787878 491060960 432979992 884553066 216735082 301569797 100621415 468734122 235137908 780223875 42221838 66306615 8597358 249919158 2460865 358603637 252371336 769261733 248879571 816902845 112295605 370138659 247968471 543105856 399587263 971545038 470457017 690703977 212956618 825641705 362731518 449433674 37967761 835786416 101136650 773254636 107683217 742223057 421508986 888208092 88851084 708743441 273068111 825873751 702815472 807484433 664069118 834856105 642498690 787722161 493316548 965328759 169537935 640945811 44603417 565761078 51480004 958939043 513654440 551692507 302353218 856755983 546847885 613200688 246660222 993638105 462227245 656847956 575835754 805691599 155141065 470377707 3942005 235602583 207010508 247346314 29609639 57669361 23602049 507219192 89114143 630873824 619404875 869449691 303605196 682862930 364117765 946479125 595618236 777691051 621621875 694916080 326688854 686984162 513062050 932982036 213449586 270637431 7262914 861482800 821504330 954165451 248850962 652618563 290201878 898999481 499242855 732575342 137867061 792914192 751673200 928125785 673907378 849991616 83744596 885617774 146857008 214109940 5297293 212984700 161960584 946893745 686492995 915878235 211592684 559775624 255541661 376585673 348494436 757502532 436563757 565004929 224331901 868757773 696609513 985854218 765524827 868460908 538198691 894354451 123905210 253967928 133739183 399361916 386550843 507573099 222602319 341008171 327341310 555558067 385783668 641072701 306324026 354859748 336197755 636094566 589849714 934886031 597893403 782901976 90950151 773025838 83833593 548054531 470039744 829346606 310999813 454465423 158066433 680946305 484983890 846674692 484457601 522594101 175255143 365556473 147908288 302371211 173487095 941408599 466446117 659904138 396065107 760193229 498785985 911304102 136069288 256103874 7401636 195131933 176466379 274223978 61502819 930960224 615198857 793598511 264050976 296459362 112552775 656121684 642420848 654017073 452467125 670651617 402602090 630020079 257596902 874433916 32319408 246959529 240916030 505425253 94264776 519084703 353659174 693872542 559217698 951966901 91682808 355300118 300053254 939804515 204958951 263046253 151861428 779598133 230880246 339910842 263403500 548756848 521909219 669449278 448304397 856798525 197724070 774566350 388290653 900503874 752273855 823561424 626772153 688028046 614397915 636641545 430139239 507302517 424100862 442471342 175078834 561373687 383384633 620109559 336076043 676056764 606968952 706807814 228365115 686100093 242553013 664006283 297699427 529369345 69206635 524916413 54652451 355989739 6773676 358560016 28652184 141401717 25690518 943727222 72216567 717636725 316172652 747628555 316571638 449136295 119949435 495419839 419231861 859913812 386327806 576544453 300160397 904110389 290033502 375363769 319248467 881445729 310857739 746889309 453546304 802869419 589826159 863344410 111552729 160247284 59114586 416883292 240740033 578781970 173798423 723936984 177750777 552689460 435011428 817808860 808814593 856868427 444620820 761749142 47092148 976458728 54864084 647192093 505006094 864127146 352806389 586563171 264782845 416142882 173530252 872020270 130480627 300280158 74963547 660686146 284781741 701339374 103383068 600013976 364304864 776779825 472375083 873667867 747933958 808582928 529917508 608532055 183892551 929438752 142205364 945478658 529015931 919777279 698821794 805924727 771174954 947568778 404417192 832822229 655861333 691111664 613459359 730701629 133973976 448734889 57326605 695193832 460342966 777795981 338253309 544262891 417080852 520298874 86847394 755442278 289902862 760604527 243843694 895391140 3103323 51981592 2859347 59163098 30474632 157088089 124399990 754324725 579135256 968701341 644007695 769215296 736085693 933390046 669206528 955822175 815894149 910960763 502621774 710964482 608678920 834206306 246303109 722277558 338268775 798885579 507191610 546410562 33642535 507936521 184668994 447346510 276838069 375346310 320919820 763162582 360147354 591860179 53412292 602052909 17973745 86365805 78026736 596554018 59558370 277398552 138331704 632611375 153142903 488158449 444654092 800978644 13589142 236501138 758659 707840788 513604338 723771371 513178419 720038521 4875152 816780053 290170257 422681421 114406893 384439891 317593982 434216011 171890725 397525540 373078549 716142914 387824918 571184522 151316324 755402387 701607660 745867460 724932667 984516250 494512617 832008014 383624403 437052902 399548211 497816979 15123903 569924126 145344110 542054887 505252726 622196086 426983869 867363778 685556050 993505638 580564215 978507809 371947955 411932905 271940462 451276872 288981198 583943182 393559662 578056021 240166996 857082363 329110437 998126607 569874633 764747700 442912927 517167944 55401977 385688686 188076095 661654411 525015344 938726647 770602648 775949381 756966339 976998058 663802919 969922940 697575886 870313158 1651274 656434274 302921132 729818235 402428830 973351795 807045823 986165516 330212921 688990338 568319327 655777020 300109094 338963664 13941223 476031605 451995766 828374949 694387878 764375820 159372679 992951404 528583534 552017287 180157938 861576788 625693087 979287957 259416333 863927691 500276547 601142140 13657437 284753709 117518887 950352588 897123608 963865849 352054257 913241626 39541933 668661572 583653774 951512873 27329146 612444099 506037127 892769521 874299953 886579999 872217408 964545043 9191101 522308026 90781671 951048605 28586053 402280802 308974640 962826352 604027429 901183312 757646129 985286450 893488583 916309876 904860810 943573386 876570606 956323404 759850812 993038476 782406442 787076745 265862604 586716567 508898103 658021075 339110452 950548077 374653032 989272829 246653383 434038609 146947850 290943716 206518665 466761433 145685136 275213982 228290990 506702007 346387783 572613507 449440822 779033975 229693754 568316226 241680259 791269709 755778690 865150188 123138789 255458245 115437707 957668745 147344131 982937156 170713402 950865252 153495609 552778648 315274533 520282432 118354350 973318773 368760685 811581058 126246074 929065116 332067497 377616584 198600072 504214957 146058016 567732539 58608699 374564941 155330088 354090128 9032602 573637067 482613844 635075411 53575441 640767368 546637794 839201089 465493654 836533726 822194910 991006167 888454977 984035921 106877404 697294109 671108049 916347601 216303330 586548745 238643480 582824308 76339720 489027719 175116919 268231685 29031800 635875187 380339561 383418236 307588869 614037553 199261342 547935019 281309033 981713234 847460177 890264404 509040222 932106138 162475816 721199680 64223161 620175020 254280324 318054879 289201533 849287725 653391095 918042209 702621704 841448682 263587741 670008306 118161549 734150133 476433151 916829647 187270625 355843204 350511958 447308165 99692393 510957114 132019892 136054647 110859413 508060851 7306557 10599220 2517217 779261569 94776256 824917721 283033250 498148358 54984149 250826531 72661665 514957680 275039150 809357217 656400495 811187245 11100340 192222656 36561163 206230531 127137681 188051423 111621476 804495850 731694416 900698637 109137158 485221982 155371515 384344003 300400373 461903488 290751267 391300991 247215331 333021768 164707693 411368272 77633840 245503505 15717710 331792749 102849831 707814458 330810463 810726939 779327126 845140548 76433710 608965145 332461633 618822435 199923946 734404130 396406958 413076729 158154899 771755937 700928583 843775649 706158761 800412939 301779120 822498874 692591410 818860715 639431299 868587236 385133524 860863936 734047298 781594650 423808708 708702648 69897049 472768343 41817743 873227253 64663227 654627261 639360852 783138996 365122296 977229171 784366396 949136624 666849457 762341789 502697366 618862537 533228570 619720573 65860412 333330356 151632709 867771709 729001596 861057653 543358906 761068733 392629893 445976738 116590800 800672174 335752012 481937772 77843071 382831871 308550275 946384708 706790462 987079345 938113671 987005505 748741714 947585422 610536665 725178205 176214084 302244331 211281788 885026018 874108154 909920471 291789498 650243931 585234646 852499502 682619187 985027776 509157031 927686857 205953794 223145432 210225903 452465512 307148174 457881354 163128395 370011106 361543192 414573009 235052193 410541198 308696011 376545106 331145139 951911906 134439535 757331963 285910592 722707063 573857193 594508917 533087095 867174845 443828328 504068092 365576914 437791223 113098078 203113555 67724083 247002415 221459595 682068650 209993173 395680068 292206652 553867234 163408416 741964463 97109975 717673006 687377517 936995243 184428311 582056214 374668666 767993816 152893614 193424080 103844348 633635111 94672223 610346270 577092425 688103952 443127232 453323541 13323226 763898326 332679607 852462351 74250697 498180010 120605202 318374679 96898936 201855319 130027170 614746998 143284872 503436252 127787917 495469218 318378665 958228520 15762403 808720754 554764581 942616279 901076831 979528637 182726999 448194995 229642916 996898035 444915454 667485254 430428489 555561605 194090580 851023437 382390963 789818610 179550010 261507982 47487291 111818360 3799624 500173498 370843557 770871577 296885043 484509737 345503614 629615192 145754066 700699925 277585560 696703591 151440783 593944194 444987336 764829320 530269437 592866119 436108276 847894290 396088892 524348702 379759590 663926925 220844898 923322278 409990548 732537830 544856318 727190921 528331158 865165815 210639949 273377294 54562435 543391309 326115960 505286683 409297129 489545897 282035358 413387774 152053702 886800804 317332280 362229466 157351568 561492472 188205003 202125895 49378518 584257995 495315054 609473383 568767944 584474441 15874362 836239934 783232546 785672883 264858820 641869190 580901842 670468453 491558124 506005956 107372751 444158082 361464488 649452893 347856308 713062561 151261323 604528142 69841431 198671776 115559778 348330680 58807737 182449948 135929698 343566002 87229478 580704441 195886600 785348788 732029242 876030515 137378287 859921739 347772267 621627923 414433337 974524720 443205725 913430637 860844269 999281697 89283866 936724482 572982730 628048575 378127961 549247474 463181371 767789166 744963043 893292050 541778409 647244683 564634256 822863190 766214311 888734074 425684377 693196201 658318736 851427567 373874399 608535900 395756738 711940917 421436704 870789977 457552357 876991551 398096007 644725507 241215117 901753078 851948220 861814529 205008013 399949075 333247556 810463553 53747129 760991046 289555121 548548759 199186033 681827621 511817715 516762184 363847302 388214305 297553174 299278589 160669912 280456225 241858304 271859217 239167583 961795925 930921871 958069753 885059307 979956746 571212116 897210290 53021317 646375861 380369517 711317280 563650656 746163715 682413846 866831555 143211027 223542302 78261653 461237791 378482232 643562521 90390264 624540278 112892353 855294267 252680570 322494711 270088128 566129421 389480038 801791619 117395632 896506239 728532998 831804468 521413278 851356922 714931114 792256744 361889839 758310937 465009939 989653511 93686785 248608661 163452089 277345521 59925040 114229060 22207805 440787763 124370257 406842881 171133685 783517545 269750297 999779348 33609329 654310516 394374067 938917862 68225975 804851275 174009628 443812738 434608674 871028687 507064188 866000680 469185316 919881579 444018133 738925426 664461712 675692781 471433205 933094233 860806437 926506568 889601352 908248963 339304845 774656947 627193833 742381567 160558640 887151793 456856159 967033233 869797704 911643776 82743270 332858585 248725751 338328032 308825525 668619391 611295731 791120844 632453866 805567016 661941533 832980211 382922785 907412915 340499055 411066234 152253183 832312330 704608095 805781095 465216866 511771199 104936057 627083591 32639260 116010338 83506385 403300949 273425039 760084046 74512481 163571136 108783223 266578061 237125761 487723533 316767004 677506381 609067100 766098507 315483597 788413811 479574034 643121452 51219195 885602654 462153159 619383909 275985501 364984119 59647460 305859441 259792714 611613275 441813345 999502238 492652342 623601590 451809668 506460186 301745954 845791595 4353686 403498748 376579944 973303700 578845501 994182329 941015107 949998764 293218771 459234191 122927564 762308481 155927019 262132307 131128671 263959095 168719860 816078665 617427665 979561360 304970900 381501535 90104349 999220721 227977190 922072795 135043800 913773361 658250810 816781073 141933730 340216191 234726922 442758814 151494695 758384532 380370764 961612759 324592 876449905 341848987 677033555 598498872 660348568 502590509 560548305 465189360 542435006 75189157 76478204 11235386 273724289 252222262 608396295 77561941 588752604 280031843 709658836 231547931 906477492 210384950 440084958 350702892 470699570 273479633 931322688 590189436 979893676 206237548 715336029 596099714 962989918 780667792 901466948 247288470 693014986 460696180 799064292 105857964 768887040 701119137 946588241 377154636 834161881 396990580 876856436 556855192 962796527 41618693 392882500 191687457 262609054 14322366 67899215 56380081 240530447 133624584 994969138 842226861 885114171 507255756 912022710 710351277 802684587 1731479 907336511 836798573 909431039 392842942 759090450 32259433 870787925 738817307 901386997 152552272 703052927 592475095 893062996 330860102 759228491 725154448 753463230 621605274 707153419 270420448 538826128 44845168 861165845 574101819 763118837 114458640 631979127 302430782 926117661 437970203 559466588 476528277 874128920 656164409 696437069 503235379 510775614 463167562 472525033 22247642 33610260 5761863 98786365 18077980 475664187 98929794 138990546 88269836 858828397 217156874 969521823 736860498 759924171 404541235 475197441 21895046 387871164 375608879 678651680 123451987 252525279 17617304 412632894 85922007 996319265 367499359 715956291 551462695 944595917 420274924 488993279 217637409 667419551 518463869 771765765 262912845 440485588 3680196 612570990 59597675 73655794 33337684 139700440 47066849 386053976 186631171 379065153 102333946 328653819 26376747 273339145 55524841 567726932 162795031 767651025 351063578 501786831 337518217 396314314 236321751 267143009 141996544 472427014 1088960 861570556 8465891 539589466 466556803 890031186 188526510 659697473 622907394 770662223 713486416 741142477 600125343 877442069 110097332 447110473 353191488 662176837 133613573 604771287 572078453 857714727 54746427 935840586 927407642 986255085 707611230 883463908 778242778 859932894 46585979 924810913 772119570 798512255 592736423 663851570 521313369 964090829 892068492 906796796 878208117 973694594 923515873 956987754 53988210 644824118 224443539 914915320 540157857 859993526 191319687 532051805 394101819 963099553 406533865 621584518 181212660 864183878 458743753 896088057 709662620 782679909 399070555 798596538 679086873 817603918 207567641 988375064 155111570 219835891 193100827 564816738 561259437 968870334 735083140 860008517 278877998 498542148 334553526 665584931 440864855 944614451 465632071 947718782 901805446 926696584 195029507 268238578 25131414 964055038 429548441 668480220 638911139 799437049 589233452 949992665 825963859 871911190 20832159 707119613 315424839 653120033 159630635 725577609 543156428 725915892 214820339 877453312 169828381 733351917 313508023 504769977 64883853 130770834 34216929 476335322 198989424 369078859 92993667 980353402 750742899 832351491 570380043 781712477 639088884 949445158 318797368 542487451 456962156 524018562 108957533 206030760 152459013 897483502 564226570 758167759 446965472 975587457 799284156 958876695 587242507 603353733 28632631 837278387 641007159 649110183 480236610 501854186 236670067 459149366 311982078 548442173 414101951 768729919 622781153 874542594 604446231 747152245 321354836 334870611 106963735 302941470 248393345 877874946 91791114 216802331 102703362 192275326 7875522 292806516 213240246 554755636 422483500 831936347 311515604 863090568 215693267 916474651 277390679 504927038 57737236 260020620 2972189 201726186 88754389 304286715 179198926 611160730 587765855 996119862 282871647 712458714 666176139 823284207 338901311 519076877 259640901 281476665 83277796 349069697 333589509 978150137 301931529 934235972 776821294 929571101 447782658 770444858 161361445 276732390 64646089 317970417 293261463 424961457 255825705 797010613 583665433 837241969 38110466 506517466 298831442 997324817 569077564 860624413 122133863 653305480 126935108 861070396 51851481 457089887 64681542 455157765 214451239 488785864 40821742 520362818 11676963 556687013 304909876 397688738 40895174 600096830 95494971 501858562 73053138 326208206 102087865 858353598 33544700 647949087 311256701 875587957 166726461 674947773 614230709 812262071 789797060 996504421 817026664 929063610 741785421 946017417 411766892 435183556 88229923 610450468 532851834 534775512 256904727 978165715 554499980 902128595 628511118 632513771 120448549 166052950 107530770 586615173 322207450 692416654 119726278 944161328 728140467 821816315 40927024 298326766 257684741 642325925 546836807 768904034 202240444 236216316 47357906 410837869 164078546 591830759 228436881 651751837 612475927 805552529 298137072 902948145 307898422 392287144 197065342 645221455 498916117 872779891 224567484 423337789 246178985 670629928 109749437 256229063 129619414 513435395 21616883 397514169 307999378 971766487 708657943 759633348 75958864 991240761 662836573 988156187 3496983 25534840 24741196 172099366 118911334 953060165 848374577 892409499 301329155 842350354 155638050 406382291 88471393 812777936 714655241 987088447 610050591 871619778 683854094 861170412 521731650 977550695 15577645 925036564 795669231 963474198 309459633 716694943 143470544 424418735 316609566 812006864 619308113 919268815 812328427 852169116 380268934 606844845 373134186 473526309 471517578 999374329 361465406 792484004 535684122 861594632 591903426 814555302 204278552 303389870 238617843 841481347 435909614 984047150 487180166 713549246 244539424 812642505 508784476 912843405 587677025 775896248 294340810 833460880 487336598 818287474 659899876 899266862 503431046 853113268 410495886 850696424 195796646 236303329 210620345 940271084 210513783 897119587 381737471 428898896 164278439 747939200 407433213 624220358 300163963 538869322 247790213 326671788 167910936 491615245 158401992 803404601 608749309 945270262 433275194 472972702 271081510 669981834 635174568 892091163 635455090 718599383 483707558 518409111 439449208 724444463 447335109 766706424 279616749 750876100 188397632 959761088 713989836 776271679 169657910 796830061 178944690 452702937 421066516 613687699 426734391 941435420 298296887 975999857 454441648 503683924 386892349 828776080 211189587 744630745 650531686 745311609 397196630 437661429 211220899 329852866 136978947 682412492 556431094 556564935 253556306 583036713 538057596 721107323 689516183 793936956 558714031 650637283 275301963 791610028 365621424 683785770 200120226 503138654 182195590 891549463 367539883 557038990 402925373 517865255 86889284 879841697 377539520 565206366 504349793 994000713 407819561 739272777 572822892 770760479 202566176 812857300 247312094 316897483 226601055 483893788 545378 681116139 131251208 819799133 729003765 828918065 244913749 689343072 190831356 745868688 490499936 587125125 555680484 764362895 62708594 117285041 111198341 801589538 230217351 397528999 368359237 932764081 449042557 812514088 599266834 729281923 546103049 795308998 211113043 990071585 321065716 933649999 397848235 406095750 160742029 995962610 910582325 996475737 414912759 642710928 221137658 598716616 1000601 561346350 36192536 924081714 777524522 916483053 302041973 740309871 670721037 751063012 534407701 966082346 942847528 972135544 528529978 747038670 386430265 958046103 372261020 743826819 157395583 499912616 324092640 459515090 1860887 836448561 835251151 931410454 736078862 799959057 513957171 707090107 636986784 945607892 921005569 954638272 839181309 951698173 239785525 295710350 21033179 779495099 735408926 998842141 821002020 968381398 418283810 715108303 511970918 993367495 374574166 435812062 316789836 842380345 405157264 933888860 476871903 478427207 339157879 589363125 370795849 839510402 484970906 857790941 73390171 890956147 301064722 952934397 411347565 827920459 590790362 951311207 394191147 635126897 13074541 20363147 16028018 635987527 347563534 786247995 418195588 550074437 187949264 812589946 752770984 914040050 709138909 929592339 445025542 806439920 6009277 557267664 391872682 602754371 444881334 464690471 167310406 743199071 532577111 713664458 622915337 937137594 664221779 707401610 670911977 801231506 713272061 720560607 616041902 760959646 682714736 908775126 644188290 670146737 53841357 965904217 570596101 783417088 102926467 341849596 303355568 790036324 378238050 396915874 25344846 299057449 136245736 926548427 266642775 930873120 442638511 878277294 3155533 410405051 251975929 678286609 122989265 936774120 432739464 967585139 64309304 335867598 127204883 502361032 197857484 957268538 164743851 849598592 210350681 979256075 501661376 897782328 659256269 668579131 47477205 928829699 269508776 354131782 79919251 513810879 163455542 211992225 119467661 653675874 402932878 887332416 173930890 395725315 47987513 574839804 205429565 647366540 39400699 568085353 502127792 575182469 201766520 843429707 595997258 762354007 692400841 802787681 428945985 675552593 128563044 926765093 54600293 258309072 143649051 638982730 266809479 585630318 146290886 220403204 49935283 227814526 102645971 475429527 423321446 816902753 171086927 293758929 197334965 591639040 531384023 615060614 312529429 563589393 502443945 970888027 778409305 868999387 826329214 858110142 640996662 796999005 324492967 961085576 29788771 735796159 109057268 987143612 695136706 803048528 544912014 562028611 462194239 940340275 61593365 965878901 838367398 908352932 788653965 811256503 783256174 939505851 363797471 438042716 173556321 253711482 113753185 240090975 206286210 726542176 122449690 800418388 652330013 756019745 751052270 842768885 681891817 813092279 296614735 977549838 866388840 970154711 835659321 960033121 14457079 690663847 484059373 836693614 706477443 990216123 441927599 557835787 76777719 683056015 29198169 260000226 255991544 951332755 536508960 544175597 539352662 944037107 725453837 935796518 220490671 992089290 619049256 806222527 214009223 617675137 462743787 577986915 44360239 329943277 139712814 518547408 259358765 618946552 69498230 406559612 132435341 789058668 652299272 922935953 561219661 583694974 474248762 790743114 488125157 680568516 529114241 788374480 673690560 926966810 741662210 873132691 366260507 812280822 333271800 503781900 252017963 978630368 245046387 847208861 504805309 952202145 867781572 873400812 374306946 478178906 96971509 258368988 171932435 840586342 347205599 525775444 468579607 716801277 166079710 330013597 319946246 956958687 241276997 488157470 314210026 441236604 98409712 890824858 573457219 790356570 317979664 720736668 627378596 841492625 492031086 649168301 441054276 809673507 342179521 808154707 48476074 462273678 18321621 768544269 440336181 823816829 311216937 863606138 767240696 786867355 305362677 328942795 255171396 637125967 468411802 715204482 299989056 528739077 323175015 963659212 430664544 785317440 149779621 973991007 455009779 760120881 105139482 904331874 837964925 889443516 283024411 467118243 357837002 693186152 305401818 702029142 40270211 542674378 176086322 843379316 606501212 836014669 21371191 186529264 53448681 389077553 283202586 356880178 195617024 921510702 510680448 593480179 510974034 784577336 289732396 749026371 224110031 951542082 671479250 990824585 740525318 801879008 421935615 884245587 621823270 682814263 7789718 266350285 18875722 632352560 223136934 764669331 393378124 599466697 429574014 878149990 347303217 544148326 88968030 701737373 200381210 999185424 477865718 740056580 55202149 375791067 108849062 869174056 681155929 790999458 391378420 577448411 226506044 428173603 408992719 872160818 778361442 781916158 675034106 966587334 864488497 983464837 778148622 827322666 750229413 830745906 258335914 471925937 316943160 929194523 181380407 236777708 221784954 545204132 75520356 576981379 532774267 984212387 238384632 565140475 62421001 619626626 446342999 899517543 690510285 694318431 539094795 957258259 112670578 438890158 392593465 422546270 264713613 910344100 495903824 529185597 73096655 122534868 106607781 863124215 398618454 746599733 416576061 539017893 364571167 526593546 370460793 951120292 492387966 843204613 759528757 864944163 41789196 377377759 293107251 945938047 86718034 478396542 316978169 994184938 638013715 827458399 257348746 350390738 256282073 517020693 151446808 482049298 36525852 300776937 239043872 402638207 173417348 808729984 407834523 410489748 78326551 668916366 482424202 545666641 222121938 774193246 217495404 947044909 325157791 989432403 628590629 878808749 309731691 900626395 654758953 935640645 613394613 684300825 237879176 928392700 110412343 928453134 124352836 552942019 250987631 338874772 235192870 689041968 460528015 883002841 478204434 799010662 359705709 448120902 55646964 267771454 126235534 690630562 664050854 994429228 919350122 947467280 517563677 813161062 455733770 786997919 741403827 780998273 53062290 419231582 153596157 173120059 84066055 809728616 661258223 950546678 45575528 736860932 78200106 96394659 33652330 269398973 261770117 677447870 349569656 557029506 124664726 181949938 155814462 355991706 43110278 835425367 602518517 867390555 149822878 537182529 499371089 941031920 85539912 319161982 186608000 613939801 141376862 550973288 495727078 559240756 356071122 880007817 247597117 723822243 614768998 761179850 688854887 937231013 505597311 544982113 184158213 872274392 524192843 712228632 132860846 781643554 418801989 906963508 424521794 560989939 445659174 785261542 636283284 820128311 484481752 623122713 175699225 254807101 100758374 470607543 130986829 556860179 197148942 727643228 363585680 372071152 157431919 538188606 76076271 851652037 24691652 591920518 359316041 619967486 414260186 491218319 158895383 926954965 760876368 980691897 906370057 966936694 621214807 904393299 127285526 785373746 393640180 658134798 566005495 926658816 654546321 963586793 679442920 771241626 454541482 650466161 35910471 477499079 207617427 352815519 320308204 597754161 538678519 969828156 828961710 857601457 609759813 689646270 575296835 669164944 119971228 434118432 208625760 508465056 191399022 728533308 501750099 919403245 23649973 245309128 228144215 591572194 355553369 609368399 124704864 844885800 275003185 664724113 646718250 924453172 268502393 962876652 888228005 931686603 894018866 911860611 254169329 569129468 263321553 932970992 336315256 453861853 29385658 941003342 164907137 970439450 823338599 939289853 668259902 928865618 226954939 283906829 22927518 718244634 6907597 834138545 309687174 947418172 887584100 892316312 549955964 687070867 174630519 211416035 82379901 720981456 156980214 351552310 259525586 529699207 120839555 772918383 367067136 727869273 326404537 467018524 28816227 320382239 125904801 451232482 351202429 377549513 148544869 585297233 346635936 515668380 131613118 794767468 145087735 284249096 282596658 487378952 150382319 956211847 254391012 982879062 368613600 447591591 306988164 970905264 218540717 463365766 191008172 857166776 49041696 768573015 27796064 602476406 310528167 771264694 247415860 744795048 635098534 753136975 451497037 496487661 400796881 471034963 34239335 722930355 187135697 983971396 662209861 873436075 280883193 414596137 15820548 492836981 17227857 85498631 65962806 976957242 539555752 869027511 146133688 958411266 497878469 532486469 149218222 795935068 433838497 781288088 290538209 776362834 615119894 747809243 346780947 700678654 132073150 949946165 770553014 832904451 539332356 598387959 245202727 723100244 320286891 392636968 9697792 502675401 368640124 927387874 670950468 801331643 519114352 789304464 660150254 697318604 145961984 626214898 493807046 585940855 531465580 794752429 104544505 562451476 164099345 922885357 91576345 147495436 113569490 835267796 552393387 982721656 217626250 636259280 627027184 747257398 694114284 799599186 537899159 694762976 347333424 429618796 114178885 636734352 612075624 931536505 216710628 443139914 51063488 714192200 363582747 889971519 610956883 867203627 215634518 702559101 513379210 742274791 735206705 797931771 22405773 457805073 284159299 902783006 725001357 768249980 280401236 554237516 331088563 374184684 155565007 994656110 364619663 571393167 510673543 564278881 16795735 405507360 174248470 742109566 375846515 934241839 481832118 794944896 251282061 664454421 265633694 952025485 564463920 754204182 131598701 996054890 640877109 702116780 238400634 260699388 111084037 348025021 157818613 785319798 624019974 740047325 717210834 788112634 728036856 789558967 184933929 825132788 446564537 881766911 222055665 831679115 775152910 835448830 607233159 976306404 117936778 972056693 627559494 630077127 21209286 179752131 155819385 402052987 88785292 95465932 8724016 856870625 63297825 239028620 107457365 898305894 202667742 972816517 708254141 997270903 396213539 436640558 432359065 845792256 26003483 307143976 145284675 945978706 326934183 962035047 450800635 473359474 72415698 207255430 143281636 835286827 557112342 886183556 697852165 981744552 874287970 926465268 790266314 872848196 308739540 523268072 408673976 914849111 647067678 764489756 288541409 615389619 434620642 461707594 340589225 797847829 208117578 421502452 257390180 704660555 373929198 541442110 142255431 455465962 394345224 602444167 69086082 238669623 213875284 772401399 387493666 867619596 22275508 70433929 22986926 628404428 81274874 326093141 320582957 497183238 305220932 736354554 186261254 345335479 158968932 994684044 678394234 818190572 372239926 662665699 425062747 931390548 492491322 622563189 257007849 840384646 757183399 981125630 427866940 688074526 586788184 914706341 177349006 532003254 256599277 527329568 175692661 233730523 91642008 245116321 19848260 129415822 52713913 586689839 217555695 410194922 261002640 508957026 508423747 846550109 446542919 714869578 400171426 550141613 158313834 919738004 4273046 410073334 218617878 226382546 207698599 358048098 67922126 324522021 52126166 191265895 31274212 969012145 726350240 891444689 367415458 783355707 774522770 987703777 523848628 789987596 775310674 868487599 425834582 608092120 435761834 571772327 75192884 271450129 128383913 808550726 760572568 814485968 241446062 655945219 198504673 607762642 211687608 759371957 564949324 775487229 472770607 543288722 279571757 639012742 554620333 882168089 132224050 233028194 22699168 909759456 53444751 483613177 247868805 889483271 812435501 976556911 344749753 684459370 137770526 976789795 72046124 706761365 354281041 355414907 212318304 577315721 537471100 780592216 461452450 848154837 131103211 156078779 132488133 432511663 332286131 784353958 646646330 913454307 913269762 942507119 74620402 728095501 77111073 162031477 97258971 834571293 105122385 822321510 614328364 692477361 591306106 593788306 501126485 984323204 737196779 944935499 422950646 543465748 510674163 669948760 586308166 922490583 60922991 399677299 18346266 216211627 179963214 767706962 490366211 599474648 401950136 615467781 542855321 556233845 215146881 475986921 240991180 377079517 354812213 723457148 550981432 872785633 13859417 690236170 613417694 941612892 588097910 925435306 471039100 884512971 439746702 825685704 748866596 841890380 132616298 496224400 392611625 782360607 490614917 749757592 184842334 851089957 434415786 520034394 332254788 979677098 380572189 401279088 368747070 693947445 487469736 608352696 473747020 551464386 542911726 663852885 378909818 429513528 2972162 701525436 370786911 794255275 283364799 716129945 489233897 841905705 260352004 493673480 240839907 427963404 394262606 788051079 323574771 866220748 175846441 401239111 332808183 426736927 54898387 964375877 684709035 792558033 160707344 999168052 834416828 856455687 351750565 936606697 648167729 800255532 111282622 149081192 113495733 620927561 393533226 511484543 366255448 584176814 2406188 381273540 363974403 912907541 434551870 486996684 149385994 909461472 705896557 991755475 255514771 859305688 312910669 466200217 228368628 300916731 70504428 688406416 327642873 472783120 392941621 679125778 60462461 761072705 413549801 978445853 383287571 615116906 449292274 642546878 70649347 255203674 198348039 824830098 670165480 758838274 72186924 789328915 40774930 237023937 219132103 508779598 134930612 895673021 209192916 546861963 24068263 467552199 445255498 489952601 114237894 497709602 488091692 820779717 517645354 529816413 440557206 693840434 564189359 803416302 354458547 369455670 127502832 543889215 34616714 937662940 351712270 594818974 209687614 223529695 130586394 786777060 418393489 419644547 46449270 275973354 228359833 832870182 822089822 990134030 226379792 437223204 345727605 881482146 458225455 880490880 836090053 836124650 751535240 777664747 662930000 882915782 697605424 962739170 586561484 852011001 809785185 879236991 768746250 804226483 749315809 924733526 497907145 996847780 684744788 935046668 618850263 673430959 299932673 551325009 165555440 675137127 390060070 915580250 533329628 705684512 367165380 455609191 183949471 604548525 363476250 720779130 491475247 946951702 299037420 322450056 124738671 942891276 337918477 812492824 11709270 712164816 18498688 955440569 424059013 798637014 300928638 867898175 486740137 524067773 242180616 734334430 502563992 509227870 404910385 810554096 328694155 439480034 286581042 380958685 357072374 634952742 527299718 910768038 878566661 953758759 340029614 418289584 292661899 826830565 393817236 461955236 120155189 946847361 676839302 977085445 134539788 769658921 313221280 777235032 222894429 517051122 315293446 573560773 495153914 758867125 627551784 966006731 367166925 522801615 110401829 327624360 127082024 816543269 95651277 208546381 163636535 492640407 17842419 176504855 149786532 772973023 541477016 796224071 691647467 781676844 141889597 806664829 262871904 915336345 727964921 825559459 115168679 612945427 402820134 580642616 106017248 112608036 63327387 250113130 95217305 586009760 76498012 200467965 104641360 694633283 212065857 598479670 594207277 624947756 141297470 313428200 137639405 727924141 109014906 211116385 92855304 302879607 275110995 340129323 64311432 389599702 108315375 682865596 274441122 436205721 35535007 534335980 139155865 288386462 159141606 821746874 354024653 878500027 285353878 425698060 45918769 865232154 169043579 505454283 101460397 600258444 371750467 601268136 569604365 748161984 171149626 902101217 149468840 318892086 8605965 879393630 154107639 368156111 117767433 140175507 124257625 953187858 826068518 938409654 613945950 673250559 293520223 601455100 475079745 981942509 571306698 890050158 614116339 760586798 108782504 436301373 79397808 313940775 263255293 464949478 370777006 961011047 416176256 632591229 306522235 859669256 39373465 579927141 22364789 373736520 325936840 921294238 837023165 855999056 257253844 732283274 553162166 813798336 605934323 644816139 370630583 622459148 410851327 602051936 502447259 793250491 319808048 349936292 146664197 505751205 811550 981536496 581014084 839765705 629016076 904399177 386355215 522412177 232640954 458715932 57544449 627451220 67522556 457319181 450279379 683126167 602466661 920950321 459376867 563559058 65683281 966406769 91646416 481732541 293091152 694426789 263900769 316223102 293912596 799318164 104948942 859468966 729225670 856357419 782938317 857657520 616303113 970778657 933855453 967232520 469609774 747108390 282911188 652756281 453981875 535788382 191002040 985390951 818988850 889545564 33327286 918849066 640539893 697225770 44037089 58827514 9974810 326960243 12602242 663485016 250696149 900865048 779066987 871461289 532389360 667886481 522708560 649298472 362524359 437797179 699066 882550698 452249178 679503523 216573759 753740410 3421203 494803965 91017049 740872152 288291042 589478186 423800724 964954406 912367004 984382760 58031233 770253046 617693702 678884958 269850439 873413495 640380453 740702027 369475997 997991967 79774 980323984 464713318 888101265 842752214 903544045 230335518 872136042 128987128 951855963 797682072 852731747 454096934 982225744 348436006 899757949 301539682 872584525 538644085 951907308 761688259 846088844 102235977 678480645 2227315 971022262 360579726 479664540 149379724 842167889 3969546 375691556 7806122 803069772 19149918 320831703 212752664 870043152 683307375 840402944 42454230 296891043 137385257 710850536 2100512 873273803 165971919 175507270 2897010 188378680 68564837 151927131 108441577 868073123 102916135 756569113 295128224 764348570 279604654 901905470 302985454 817785277 733813462 950399853 766270798 998923172 994932715 998141935 103217584 849026365 600709493 928201640 918863576 957454684 597424975 697002526 561004916 849934248 79176612 919980289 345500175 945253802 292119105 994252574 381437664 920918646 33046019 700270941 51955703 536378269 21835386 380519854 15760038 871977961 556280308 879340592 383328926 426792942 258856122 402011821 322730978 550409390 167256756 330470718 303107481 686038930 16346273 435385465 392311958 932921614 812903453 879385915 154741803 367215468 119365253 156083586 42523975 905736328 95074716 498515704 304498627 860237997 823078900 911220317 169087853 415883938 178339770 238682852 72800343 443491483 26091413 915999798 428784018 436059993 92580412 214373367 155628628 247659374 169558343 737517404 605264667 861545085 651861280 993685083 903808357 906892092 533109662 911830875 49923777 602072781 147175196 939791608 840888355 940652960 392466716 427915828 259212709 666625363 337037554 493423253 179801839 304813280 138307042 716035858 709451430 833088146 534509051 868054806 665369206 901846555 14630904 643336266 413834232 528233719 323776057 677818158 370823742 403057284 47999809 853348419 610606981 616117591 520341800 815340493 664013304 898610191 416352910 784061830 24508790 777604973 71462136 901310248 393707000 686433744 324509907 612643557 597947449 844844093 3209330 942600056 478614501 634200349 609046114 995835762 638531115 886419487 311844235 990028923 51866471 215379550 163334278 818722305 15816356 844812837 15785716 894695605 443410116 937894458 122245793 907730866 845375446 913194771 898226280 952583537 209778089 747754573 377459079 379176022 95315089 248248952 66153254 250487119 32786079 649288275 286055021 293619441 162280642 839320115 599061699 773128826 52613323 478840041 77422113 724316075 652193319 915178788 237067161 791742372 76993156 397613377 302100864 766842255 546308939 667813875 256761079 607478003 74415872 774476954 414668153 551268808 137743683 815833521 556584158 954129158 25283802 597542360 41208896 345895910 6210749 204619535 27891705 279812744 177212302 548139387 454077771 916073970 816681307 977063860 741089903 783855782 547456215 713127515 484010697 604742713 192476466 273455227 72542673 973690175 394316815 740707803 338866720 934531662 430762756 667269558 397084401 398367491 23677199 461104516 422231502 978588800 63021215 201688212 70654041 195231104 130697532 448275514 384546408 682388005 483279412 554682677 524664102 625455342 142578529 648182390 600177237 784957665 384373528 570324146 17231171 884117692 262787000 706066293 477206161 533749596 321783265 637619422 533498179 726894518 167624797 923106741 19451117 501243662 87892815 838868661 582964070 602419848 356433056 664785477 94086523 941820474 290912865 563018018 521422830 827211020 221982788 366142740 85362395 545777268 284542244 304364646 41872976 424239048 129176128 600161935 398459228 887640702 808214425 826994284 723804673 929978799 316046813 418383856 406690677 696849004 509369325 994159946 97867991 638048767 131984143 633498701 496020540 693511622 232730813 956433857 214323306 474116007 201651642 383330537 296304357 900483866 107345596 137960246 94215333 241440285 105231844 657395317 65541013 380148132 258227691 940242617 163358613 253445416 81061245 327938924 254943323 911939194 3324975 326183891 174162889 984965703 467925629 784472924 488084852 570311371 399187138 644882520 96417142 475999276 45129778 133257349 92121012 595896890 185487848 389245146 72700228 78297902 73363202 325287365 172192106 318805801 11116985 617087876 539556314 642768092 289920069 398782529 269748430 491904814 281987306 760408205 318202867 695539806 264575013 638132915 416610189 529533743 527227431 653675911 33410242 935787038 103687726 994379085 67260288 512517957 44522426 440122813 390778156 771827181 527917910 595665081 187512147 653991286 415313996 633083997 302164365 386135562 245698134 625421750 531842298 931665264 676577892 827682689 313112136 815100688 252072673 726497041 26248174 257456879 97171664 462319653 152589553 438153752 152910404 363268580 18441593 463962268 31023230 947411229 777940694 799824198 107254841 117997350 104077386 399589621 385044761 615259677 252718101 850968036 581372605 685764633 486790789 970151112 752954465 929282782 551136520 770112869 188062735 636403458 394597754 975347250 244901035 794241389 162800083 535861515 255001261 721830212 178747772 814738575 334654919 562171274 41347215 894514330 584902615 604056912 283957102 756776148 576595655 694603040 87087712 443102419 350269313 523240177 294701447 772105332 594435828 918803585 489651806 792393728 233319492 353599284 137031215 346831432 33185331 678079732 394735932 548971468 341719518 596898543 349822134 625063300 76291505 304387391 80493215 184331978 67108988 624565696 424485018 742277474 76002 474653960 337168216 779251634 763433491 988807094 974024387 975829099 273903585 787968792 705201025 918877834 878001796 929551459 725886047 903381310 659304040 922705171 524213579 658786262 190113994 608791374 311209934 721806208 446798667 557483242 257369226 478713158 198381492 687029212 596574719 774048991 141162264 491172508 14429375 896456163 319840175 764903041 462543940 945184158 168834333 837905142 113619736 372219051 65740544 135198714 66047206 937118564 50161720 731044648 124886972 951852241 159867867 774599503 579905690 741667143 402919329 812925051 551263391 619506136 396409077 503161033 277427065 310660574 25526269 826170056 340927214 834309475 809737235 904953842 832354370 916405680 683565950 772039915 150809397 948240825 784246791 784633033 583029563 592359495 42903646 136586801 96116735 876547815 673530745 772012380 734169336 961123393 665782215 717945596 364871226 516980683 279677904 864419150 8382782 698936744 472729335 633071807 579049266 984768986 931668661 948334738 906354988 933445327 607528043 830590024 90920156 283282072 147931963 458457173 322244893 529153836 513382363 950894900 268381969 671007463 154140239 969268685 193920194 602602850 60617822 160102385 13240926 759488767 196384946 328434107 205380013 626347472 501938473 907562818 679313561 720363494 419513017 619445912 5946325 129579508 94639040 514451978 202882775 650251625 101046751 148733719 3837280 982980725 69148386 311773703 157833559 875735031 265561168 476867256 40928105 990568508 897886545 963623727 324688732 951071500 943586593 961654555 22521274 261043449 219995378 264045671 32340402 515489545 274544819 598562930 587670244 830822350 684432115 691852423 462468134 779181113 386928515 886515785 387221981 801968592 631623433 892092803 247144230 766045150 620028111 826542856 578128396 967249371 416306989 441740561 266280929 549370395 388254125 750767548 459784727 765563267 85314901 572470260 526811997 699376051 652628242 799446353 425456542 637834857 253883518 854384312 35149167 274154239 101784679 430411713 276587211 684628661 374451501 661912440 657190291 817896998 289981246 338454495 217179387 660315755 348258216 933618949 787944622 815273347 675346285 684536652 512075894 809075549 314476773 746926386 678368229 916160579 260160513 730670919 184555051 580842646 546279792 941170863 157268895 356431979 217292430 266983602 18153404 59766787 46748558 444841101 351299182 427586109 204005103 944464190 923980204 931992272 513579222 690569713 165146412 227600205 19865504 160728045 44104492 646033529 254826370 536807321 451250078 890195022 439196768 459204860 416276247 697848384 127722285 920523396 79541041 776105377 266668448 722728582 92858481 779239407 453995940 677213530 240955404 306235529 181579247 297862389 1453391 727154976 628456604 887276036 607815546 847095992 838770097 885040841 603638848 883960282 825437537 884047402 774985257 964063633 868184399 959840740 954604535 962039849 404356408 933966234 888806340 910938392 742428415 845346565 542036672 958265136 21288644 834353266 578651183 591596804 199634645 209774375 169216784 486834185 148008628 772660389 267787397 438039984 361915682 589040107 342942161 821630926 595737110 769485462 142071101 199716796 175932975 658363609 549167084 863560571 712272377 834929712 162425403 233831915 231342669 589649551 166202570 267642308 59096411 473217640 62639280 423985274 284159269 585908956 432694834 814777203 372037642 873255674 171580858 306568666 163648577 783897218 500993370 868835635 125180700 306099321 154131599 933307101 699235824 825123822 99536715 140058304 25332257 533012339 293667859 736381471 204540680 831403932 714721128 836744799 40157569 222755782 204750819 706952058 586592135 670665055 410103657 977692639 176460081 618397066 617558448 699954324 425076349 997056051 777955530 791296006 30746297 733910664 120916375 572183246 449750517 752283436 575507657 642543841 552616533 879095354 285105481 622647236 30904977 710839893 87584513 577320818 177586360 331299851 218997394 283728579 55394414 435146647 252734563 981191277 578736523 768767804 636466175 693866716 54014971 604875260 598517009 661399737 633748833 949377941 593722744 905967201 475901899 511636595 391549759 738553603 640741213 976021464 908626990 950486429 729924250 866477313 443744597 992636307 370518877 415887591 104513958 597744492 529154356 690168891 164346512 705512086 132720100 534755092 315999438 451510131 56751309 980759189 764498444 898356271 707042829 850347397 39427100 64638421 51597383 415058962 128348054 440164722 393825455 689951532 120118567 635525282 427365800 507799822 283749122 933696847 372802583 899413746 783768911 845939678 84727491 415565082 309457213 565828998 376898925 741089967 611052035 829122469 59031901 572094121 299126061 747173411 416346292 527015725 397070103 490909272 379639731 884995934 309416622 396584209 201900886 590182610 293842690 681206105 640247129 692008711 568168789 796257271 55276128 840506133 408594144 806845619 652786457 700253640 459250194 586489263 472387024 823996379 570425331 711273443 191233280 637260802 277669259 903849869 88937476 384461422 366784734 490006996 150255825 622262610 589451495 737786600 359220984 659576830 507393073 824326237 245423567 818966265 153817944 773693953 393772692 622876922 591161139 976589804 233576144 643175594 275482347 692763485 258614906 497260304 293822152 348805886 43874163 549581100 346987704 843938351 130561279 971267139 203850047 851547745 743795689 851420742 416525221 889335437 504665575 860224122 422878354 537211770 221666291 922310143 333797954 836089208 320770383 790072533 357984603 567447346 415454589 756799605 386398042 547017224 95229273 852698106 493904372 813838575 19113475 169571580 142661317 773675710 769941985 861519987 348167354 873773413 341890394 790911705 609540839 758859838 277214775 670824730 536828092 565853171 380289427 387367591 213100569 358819078 187519483 992171402 874467649 973153160 189397745 883007260 650762868 964594624 180947901 438712623 319501075 792818495 339072648 480101228 266171388 276581676 49461031 151721736 41404757 872987647 163354867 921076656 681473311 980595147 412248870 510431536 238231347 801053680 447719986 705985730 384247668 926338849 369603477 959024330 892428706 895000154 147370070 801828767 611501079 860333601 31511530 578584993 423409177 506770231 68606648 550469639 515947116 545531238 110259691 813320663 338222517 617063506 266582034 865677300 767527481 982436445 877557139 955268102 519784767 583223764 537144229 988419553 109642782 953064927 551267741 829988172 251445368 416736213 98846096 171795401 7798623 762294969 638379202 953950576 751265593 896136666 102761334 442160462 296111173 425272951 112612471 459564553 14869470 885979247 729633506 874233045 106568934 199399101 85559986 598488329 353171724 481300483 310449752 588037464 31876381 799148123 597201196 925919644 809679244 946543165 220597394 600834354 177063554 262156396 224576756 753765228 728805783 998326008 964873846 976314184 274040976 420362212 279462864 815876665 555203231 679363874 496246228 627292960 31972898 675098262 409154765 487278063 430041608 934562071 568730305 839776510 318315312 375679038 43719130 264657129 101723717 759715450 112596333 372239371 330603854 843942268 35529632 151157529 107899704 417085575 331536533 446635045 377233217 513938160 421841887 701077748 398310166 501811408 430027594 718948721 584433287 857253748 579970079 946639351 701112598 950379219 942733843 971322035 648949922 731882004 370773976 701146322 149978472 629361012 492335116 857209776 422815937 580554940 306091899 590877462 371826558 687950590 132770901 476716649 258952138 581742272 38159120 161852755 135599036 597803931 5968127 782448747 36339554 988874280 683877451 930755917 714666611 971518350 813190360 868644520 185813771 490907055 126725591 317605191 158214748 840958913 781911204 837402904 468102197 883976704 163605523 416676076 47144707 542581936 307052328 646574102 44621505 594620058 194190311 676589493 98581236 562841339 217761611 749726208 60877436 282848344 145279029 538576663 197521018 629691729 66873879 520080312 510108089 636568328 219985982 711171288 283352131 320945724 56813600 697424024 88734739 693247162 238463073 671485634 549079449 885945220 773490043 869799278 247954633 790533266 516289743 776073821 593296304 737561672 177319613 893116846 548495179 841627944 521400865 831452882 18139899 566560161 495511515 522542411 81630567 397946828 212104901 886295718 750150526 766987807 525931030 728012139 105631075 907935978 248557898 396112398 169228472 753744074 578832783 760419832 500469634 570022488 29958402 679780914 349727542 543602788 216342354 408491266 299314518 456303132 13527539 96025931 49699158 400941832 201309061 659900670 474034263 951448961 266146654 658312067 229071882 827373172 749788827 928411450 121180847 568714390 298647180 978649163 938079773 999996868 904148136 913463360 313938797 881529920 186063261 708359296 82242323 581283764 4657895 220350507 32498736 50769666 32829562 136947801 86272483 621521465 147038417 884032064 852219346 857128513 813644164 906356573 252235728 475924702 390843992 520087485 7567366 244467780 53052327 729933794 323261841 347536525 87831520 419210675 57602791 897934715 844981053 864454326 49547408 344941837 317982225 378937835 312164533 669924688 466208650 656859464 91273792 183746248 47069528 295662100 249985499 773753208 219239110 885699899 605346776 993251263 369572769 785056548 299909977 873808864 373596744 518845171 334352035 918824807 874837821 997767438 707624709 871545639 196710182 742819323 114867332 166503021 134133382 701154271 658447596 870077963 811440947 821654852 442706693 491192252 44075283 819071583 717268730 743454063 412005288 728974919 635494266 981916809 505626827 838930196 513226485 672310106 4521372 912228512 875441542 908093413 390095894 950105752 281906409 325355669 173074416 216632621 183471820 255705453 212486329 519548794 309901064 917437813 742468102 906733513 106176342 732949342 354326057 466922203 322601866 410935090 350419501 769610663 65214520 780893435 325674318 690188078 114121186 946759501 528938962 941692091 523207094 892179285 196957764 822877386 186188733 342662734 299449447 896135160 64013904 943548528 670012867 950362187 83550939 499347556 385656238 793182412 172106280 308392742 72670562 712567802 567239020 870685880 150367993 227413672 61589606 760640183 196787358 256664195 201943578 710122205 530319289 590866980 7991912 397315884 113389986 525813052 274156642 747966913 345920077 983974473 177687994 766803402 11763656 336072362 279818987 925559211 912042951 967403601 597407914 859371953 546526692 856564125 188986506 996975016 474730924 533830116 72856145 995004406 906912859 960392380 567907753 950307485 711459510 873512074 830601129 966082150 269670008 823609798 518457162 582211105 93449734 748992633 367529275 965451271 502692659 647854635 509848257 891316638 372598646 657224266 314110698 807549508 352734464 811623704 416432253 574665127 66089372 830854622 533686514 938099659 445820049 821905832 379979470 503999982 118438417 657377562 638887430 946823575 9648343 463909589 170547855 271181519 100389158 222628133 121646230 999390746 282744450 831767102 555769913 702453395 414132940 970215697 356431831 624678883 430072912 526082864 144255722 577621817 456864358 807067454 87771218 896269618 537284931 622185094 9480691 477110779 394683924 686408280 586553134 594690708 232569790 923627496 722370995 935876048 279653974 604592383 599605380 987039238 349299408 845654881 284921587 443980427 46077824 245438909 9815843 482778897 470066399 828876084 789917248 836551353 218775070 937609196 778429983 956874699 183698567 267418754 23799077 624134734 576938348 703798326 426086375 453391529 429665512 609738772 570009000 625871916 77191200 639595557 416812534 724458698 682628711 975226241 409232729 571033031 146495318 795854951 223761730 402600068 240232170 695176292 279278506 730949381 75247839 997748345 633610826 954326758 678532256 902972243 494844843 517347262 175935657 277990776 48287052 341415852 129301864 364599243 128983421 934420575 566454505 922669553 601982173 673256497 343891297 785812056 501012493 567107093 15384333 586859068 458265604 559527815 347005757 622016207 13973546 779506562 670003340 776469545 37147288 602900312 220940520 774120332 134435382 467913235 333197952 847287957 669348897 907668246 436202371 943335291 377866398 687315890 147968997 620029794 431356076 871311179 293776613 782144050 97557476 740192315 343069718 354266497 250459241 444588195 264370078 352743393 89322489 985070128 730935448 916706492 369076774 431028660 184617261 791212632 387207019 804470084 799234216 925359012 355382088 802157964 611375212 979799178 408555203 699469733 386652578 390469207 314184940 576628993 133668712 169197864 104160493 704698880 342255809 484946402 239356447 905522305 337947396 673124015 236220014 784245338 350817670 778706144 189612612 587326353 318130620 400795408 365536645 614584893 139044389 455448246 256786761 814953809 549001668 783618528 170427322 873142754 504858916 620648801 589037567 654350323 329050580 699498193 493953250 787513619 527738048 685865427 400675089 576223407 265978937 399611446 305252881 552982679 372812123 655783422 313978608 573216964 95048532 871185114 822705487 912012465 68006772 809585963 288929586 802886447 137038531 350146623 142633377 710013793 477417842 951077491 71530089 741959702 544875641 702125494 223658898 499048067 317942624 645616010 172451822 648119352 321502197 521648783 183471762 361204775 28052256 284684054 107301800 349408834 157428302 407431850 323175271 460581283 6805756 669488707 281322692 717273334 690340996 817933208 473535982 657411909 318984759 892111700 57040075 903070118 670932266 678648856 229595301 936000073 441241501 842546929 378229578 680953394 167067256 767975803 112590782 822810853 682837476 985086191 572917992 691569944 547819945 959322335 682522603 822914754 440180267 871851524 288645749 760151510 116789020 291005112 276469656 713840871 491202454 796621596 127565071 226899410 209668352 264682974 34142108 318987550 123309270 239144072 111933882 421903767 368381860 475447114 223246266 445672836 360003400 771947635 360384134 516957771 281132730 721357213 456610195 747568737 17541811 266478381 71686402 90308610 77314587 239242004 61915849 230974719 25077139 25927815 3212125 217224180 117092992 518251506 480163238 617761076 581793702 981812958 834379128 931575488 277712251 653838330 301936645 375140946 246363809 435261859 266084990 963171438 469970187 871474942 378717808 697552376 302567605 481064219 264873240 289240842 278877084 398243007 304526 236110921 37305629 861281887 268137898 658910340 548530728 936689398 477131898 879953359 622454669 768476676 135541141 744232394 413510037 969934702 367932324 760699509 584046469 636243143 554028986 965171586 761182694 789370587 275578680 693156481 587473121 974977887 590771391 945621410 897008851 982464323 213872162 223008584 210904001 474934492 15611724 61180322 41223605 509389745 159320577 471122136 469543345 971213693 395584548 901374937 539434255 901902327 284450597 849366918 325256804 970698607 271216659 430836725 4376842 426418006 374516863 511611060 453071306 861483092 168656730 376672761 168514516 711931682 366115629 609653351 285852677 723051186 499571737 929336692 13859106 667979298 290544920 791573940 80933641 320837891 27283213 590420242 474920132 859065407 464883692 976638869 460266620 895269926 377272840 987312163 565517309 674178873 219832529 867408674 692143614 721376326 344167422 414092490 11125471 473808219 284694831 501906402 72888707 376855475 44712915 207246109 116723097 311774964 239636074 661487636 109883575 581811638 504689880 643800109 105067429 512316087 490872625 777648778 327898145 409281274 403968445 970153444 441257675 456306314 446220306 526298786 296325144 877333572 12640016 675536132 22906225 778536184 287801592 978390568 92524453 795600615 583427407 998735694 670445700 865616324 298329060 609926764 96830884 276776272 86628661 955463544 592283557 596530502 91328570 106744710 14756351 171080685 62923758 606399180 232742362 429224114 409792296 950151861 406578468 631475239 292630564 328510228 205762917 261508322 161758349 202855800 5975971 853094412 643419576 695454075 152121245 784389138 702557613 830846299 120593974 692985603 557557696 949536874 810484072 899483570 255636847 968678868 278180340 748048057 23158276 692345592 594241124 712636954 68091568 141934533 101826572 182779053 96811545 361074393 144279589 654633078 308913254 410173900 381737275 909975587 425844379 955802799 870431027 877106923 550769116 894645609 869095846 912669745 111615977 684160737 513167317 938546605 18414538 734046957 40297735 461317337 365627610 824311091 408883841 596031570 589351195 601015493 588520844 724455646 560668757 850634704 281058692 646423773 543083346 723847953 22783019 800345389 101263332 331605587 330456949 585621202 324007423 727898479 656577160 797102915 239139411 776600307 229774587 852764738 677099101 973196906 120436118 208451432 121006473 505379645 420130746 648033472 610623231 639032188 490381214 703905961 368107588 483233733 65846478 448856185 393632249 561362493 510272757 721806047 477915264 641837000 488858907 686043571 575033602 818979575 7491095 183392645 62271953 730702046 505354920 644199609 15602396 806140513 520657782 721358124 238408592 491280842 452581162 572237702 503079712 742173263 474051163 979940754 115491733 252571127 109458475 123660007 84449697 677780595 443428443 997187833 553893940 725699866 45576644 789498865 452179715 707350142 107210697 757879184 703676621 791030724 455164428 911506790 275247044 870778490 829268423 986305493 293614290 488407708 330044765 754497111 507222537 853781759 133910864 519993181 281221808 621836221 498155431 582408492 460089094 521705188 51457692 919298337 56844100 408893528 38030729 557345572 499311667 562090222 40538493 439097764 2468827 120224670 88878750 470682257 321176807 851105751 162406887 503950148 58155010 856151601 552120000 808947356 139718873 814198063 812596165 943092434 321739267 620182423 584437260 843081755 420855202 910151009 879674187 983783049 588936162 668530470 497095220 504233479 41424167 49880038 10491665 11778797 8939081 321303855 209488324 841242488 223672541 765402974 713810287 898606030 30161680 632924328 283906152 447047937 284051625 781929872 540331297 601391834 260932693 741557552 726022349 917905619 858984766 914384246 751763121 942829582 342734492 346335562 280331008 907143774 586575653 781968928 694850618 883717545 743499777 881433166 323818951 892361092 201824115 717631612 578158660 951832582 468599494 495450274 68599028 206587216 149846114 633287459 106060826 722780762 475372380 627270019 609564415 716663648 418631046 843376047 517559043 956796849 471321830 531662315 401284666 422148588 146713535 695882823 601856336 707605917 416374208 728313087 244409078 363099223 113080608 382249826 371260596 585971211 333359268 702659602 645585199 668213715 103424740 221416365 8899725 218030119 108712256 692191019 198159295 348764190 30059176 911771717 250226143 710285189 330071141 727832272 14635369 566646346 24245358 448952272 308176084 849447521 16203154 672597872 458576430 934500006 37053621 167327096 11744598 313770207 245370432 846094689 19581128 371720285 337002412 749405715 708726963 800536686 336890567 778735920 403210830 776251954 611453449 972714324 843252886 899679505 92066051 342328690 279547305 813120518 172030506 678240050 22065084 852118279 52358276 989356486 429573590 571077826 445088378 995230019 720525497 722376933 234852468 610539428 191575664 849027483 47500961 904155123 879425532 957270330 641781327 888853337 520616517 769330799 480632807 807347383 779601398 996066433 393062514 506148812 378108996 934453714 442429281 456266752 395905600 662559572 469279645 867783445 57509123 317733818 161249684 229126465 124032448 916855133 167680460 407125245 289934156 913724720 273464453 466750422 312632542 333057156 268900280 440876860 230149779 392004975 206566601 233647952 51227249 265113962 135550815 583644845 341326900 456285989 42378999 392849810 133324001 639869836 237616539 957293596 862356896 864054087 173126103 394569963 358194014 952551696 803034018 822744427 298172458 907786270 178492990 354207039 328120837 557377773 348267854 671261209 157144759 629945104 112526572 486567448 414621804 640270942 336754433 628912733 499183359 861741816 836279713 863584455 462852711 720350658 695858934 750873079 409147731 457943339 156886917 306128086 147958595 383353420 328541597 960688066 75437960 751283778 21440969 999381406 808315025 972065255 261267811 365913022 170497472 969918093 355393171 764973891 543991366 853602692 320574339 519573947 242124077 542273819 72625484 204742459 181680299 924709413 752269917 786769351 361435924 455378893 440979235 990330363 122880874 468925485 262828477 699472424 633297913 953343394 550607837 793244042 531502577 675124144 612684912 808644678 789966083 824246953 511413095 746951435 626751897 808992118 221784423 803782981 481004959 811967435 760745247 782688363 514738556 812070785 66782745 513241903 164119346 237426914 41120090 861970010 698926012 904718136 128690551 584941914 196973173 281262423 111950875 787077700 760644319 878565795 178287051 315703371 290199849 621528609 452829184 795992152 59538471 178466867 171289961 695020472 558324205 977436725 866872978 877182184 386822975 677330896 312423226 672297321 27840556 750691379 700429457 920092299 440178595 568832770 387358061 730295995 467478140 636904816 617797310 820963254 420981696 638095248 386937296 747603536 702772577 796115977 313557294 585945769 264422376 475157231 30162999 562974659 354791181 696945405 152362087 170239102 119971606 389871368 198166277 742190501 302786925 958950012 26834861 297295621 178858008 422210832 253338201 915447022 399603268 525635444 97739459 561666245 209065585 729229811 124746976 305761069 216304920 410557484 32213845 735607842 627934990 929108467 14909772 720182656 353118193 897240146 871550171 934264121 262314439 956952322 271925417 278870829 222213758 694692558 142945161 144851485 105940938 298455452 220175198 232992757 36042733 627660651 238829095 727173443 582070607 953898407 123567513 926359869 476612893 606683804 319144434 850672990 149407430 739626052 190117583 848698281 75537109 363591817 136305358 468666360 77322234 451148384 227185403 668679033 386151469 810371016 343404864 386282084 264001740 800387035 400831613 675909775 149623966 871506570 582581527 830050532 733869920 927005591 263994437 512278930 393806963 928741641 54445442 209687169 161928888 775663695 103128812 895584808 183413964 874713044 460923076 593370667 360358350 843764327 478477766 702080360 599862651 631113111 309001912 891242170 207832589 513428580 48068374 163952530 46304564 980344927 510902787 852235944 644984369 848356619 139206451 968864475 689874901 801605031 11549374 780899730 650569289 787190385 204816050 545859579 79186052 325011640 46567127 795841058 530040168 666951493 405056065 973393253 460903853 497317374 241933306 277191114 31215048 31494079 15949769 791879948 20229355 875048103 616980625 641023828 157015087 883975739 544046417 803999186 287245251 513277191 371734404 713744351 491326811 803214124 190033140 499426271 56452523 851011268 420361980 832804212 576099306 587986736 4071842 81391615 70515794 380454373 48891344 934485601 61331236 510150561 364079162 646665517 279227629 810295434 53521334 66412139 7233463 877588064 175859392 226972394 31161127 177699414 61071496 496877575 99539025 756428386 755519424 825141402 10979591 239349146 162472682 221910931 73463073 981789434 673423149 855605591 150145975 968548423 770244127 929631960 233567131 517154134 52343374 753151043 179759564 744182263 561145880 994606837 600113274 806228641 676482505 900232815 115249556 204674534 110965211 359183025 176805274 868518881 478046764 644615345 159038877 743977441 365404803 850689968 654868289 869236351 767645675 911240844 167589081 949132323 904313849 988944025 620851396 773654812 716126210 720782228 632522170 974929754 247007138 301193260 23436606 48815127 26190926 158380940 22242289 899943053 710751571 863490152 487360835 594461972 367374700 830997050 675030815 700956901 89013900 822063490 718073893 879771444 855833347 949653682 134523842 416314449 161539814 306983360 119438060 715588970 520846827 541220053 189553187 607215195 432243950 933232590 438675398 649064325 431465421 739293552 418895650 446050184 97644926 819277248 723645923 983547908 622197663 993786584 147959273 822886648 279944563 299189571 264332097 531970850 132034523 680240224 258186376 283294425 191811525 371102967 94839737 403098370 264132314 735938378 683683405 743204726 38638376 382596562 343804190 799984048 577273984 819354319 656528156 946195039 6624763 74237379 5872195 177536634 167907175 624093618 490055703 612344632 41505275 685032795 562832906 881596739 720568977 778932822 253210412 900655128 686499155 976236323 255150889 255728473 6231485 161797890 4300926 623917950 304932433 722046867 197467895 947738893 120853576 557432293 446776216 756713864 673807008 794079111 29042990 406240454 295117289 786514996 443890924 774616100 362470021 432981557 9325299 139233547 129304876 881234394 477776469 703946636 304012661 675735326 355359965 574442976 14500542 443026770 64197454 143735840 58218681 936177958 284208877 900378078 119605571 673513642 162679431 973726557 220508165 776361318 547870560 747345684 702153113 914919327 688448325 767494654 491465368 806052403 387739197 840392807 409976450 888514548 725208505 842474676 15288726 155651010 50539803 982246802 829587285 831347569 555202466 797094063 51889340 683390771 329517252 504473031 148223281 338975216 211088263 625243001 31383090 697608590 304881661 628274155 401335698 818490334 657208053 713600171 275724348 325201411 261237487 460074873 414428179 575312967 466492665 962993272 146239018 885217508 596625390 920897345 454868163 786202024 60619672 280098971 63966686 834286304 528759156 559255554 213285401 697882780 230925957 806059266 381260205 610434697 567620721 943789387 622199539 887852437 586409372 930475971 719027443 866385220 832482054 893300917 318001227 808141946 759000912 965429386 65658239 501215903 459048117 707946476 372420481 823625267 272101463 969905561 688960773 849526985 406705653 995147130 975248159 983140007 508487462 712360954 350125583 445335223 256798772 838658991 578346495 584452070 222819589 577887463 291656903 469645179 449762988 818303206 517658069 958569720 57717952 64344223 38358351 538901744 26988086 483085002 61365540 511142091 385802621 519218813 300989522 622501160 400223186 549836174 471781469 592947217 557114252 771083286 671854704 978924118 24490242 520312357 146213971 934638365 580240696 993514469 209576467 602588926 431925194 967688488 779026749 855461323 57408083 796624329 283878426 810643386 133369351 890028402 3336642 388691048 160065190 625022468 188418404 245474154 93714501 340608460 250807880 545955197 288232836 467503869 353252993 412277886 140017860 658924701 55172801 926994585 694148207 721592171 667653319 947759032 853614456 919544969 106113347 620849313 213706385 523819442 438701794 531125342 379666185 697448274 481442451 518241804 15236319 260924042 32802797 891364439 763890850 798828793 63192471 828588986 550069 220778298 13613502 315220261 105144491 128775404 46052333 865356187 578476210 738940166 698509178 959660888 677515447 998339027 916517660 960565998 508513628 704812229 168689320 604951465 14659884 942436534 284451165 438963879 426623932 983167915 531810437 804170010 352910174 685314106 472058225 709574640 188323724 457797835 322819352 883234938 84864178 602106896 28411175 90898523 46720908 727640063 218876183 923752260 59047012 841171690 114648130 273952069 80578329 327061594 245633902 348573652 122161080 479628441 295132576 475848027 70192793 613926725 382444256 701156938 683351097 823797585 524560782 909930315 132359246 965342556 937869004 940701493 506105763 784261074 127817117 214495020 16235057 460896205 111575419 834595656 772245969 825403797 17755901 177837800 161445200 327252166 294518023 498027603 452033044 683960028 619482351 916105274 422701588 521725860 101537330 455459666 172040723 407153028 157894378 285601686 46325333 673703441 294314388 682526519 364689702 382955024 362410391 869541063 53740765 657792484 609668343 693376912 238899883 598113761 319024452 654948839 366179156 827036635 153875849 846637444 325916716 497103180 171969282 923974036 158768778 690857824 266555395 784558662 284647671 354173983 148546955 455535779 304636835 827972333 147203932 255023833 231985473 363808139 188631499 828732230 405222950 896549197 118073854 785128842 568869326 930906679 234016687 894777526 609059933 742422570 559503502 833570658 459620621 602601623 370160244 809559697 487450038 519848163 450224413 652742180 466773067 584112538 5189915 263463324 72568699 550786607 331756163 654282891 411957399 450945179 324055389 883857927 460107361 708684878 659785688 960772729 124307174 463687171 404540902 516580934 281535928 530878315 225616158 617419395 610177623 906388688 814816979 971107887 722327997 796690506 313396892 915639774 894872155 998427879 891322720 991077324 765974925 841080817 97911300 608023356 198801259 880656775 11145601 579280531 426141742 919431377 632706806 841276604 811238523 927180106 775564659 956612259 893811364 985737849 127557532 887258441 460350343 585372737 522240052 917164467 178000770 538998531 94057936 929325895 330767117 769065977 494050798 848781732 390568958 764382469 168054183 570870688 96922610 842203083 78216464 635047473 431753312 736999493 520134311 665480118 410579795 575905688 346046812 701118436 371505319 395468441 312374340 483051117 447083111 977348408 497112693 665232167 15755727 362083567 170564200 315296121 216205165 451634431 38852886 610387267 359309917 997570311 905166521 985433624 241195817 756771213 644400650 982759631 336074020 711812268 318885985 925098742 161914121 772493501 765862867 847365002 587950785 794390747 494419534 976322456 618923419 795753772 549031031 815843604 405323273 557869891 33665133 416556649 380978720 992197141 845005850 894543978 334304834 691238534 57734375 690738365 326928299 992256102 505135720 809841608 588924931 771998493 553052219 882307384 380070765 900128987 191845927 830980810 75631829 918190226 71495889 613239949 281809995 840113804 4904061 243232170 54020929 653584732 230641412 564009735 212528167 561409166 542032333 665995419 444055064 658202109 147503190 648804465 81559004 288812260 16749225 964427637 861149320 891827950 284651862 976207775 278253425 501547151 108525040 909503504 394591060 806076406 519038662 794797064 701786998 763882383 758980477 765672912 534372144 873876063 573756807 609041066 213792488 615721383 456194093 848275766 590042813 936436046 219330305 618865694 73622654 887886387 348598388 531455783 20257305 214885448 26310952 243920497 165266855 256918085 252392094 640934151 20095031 533481459 268692644 424291034 205688871 650551833 497724318 954653622 219358621 889881211 761595995 786433394 331805057 712334517 483057056 780786723 16421985 857749348 213064320 889562472 169560100 537760904 525156679 599210734 47923104 320225300 204999306 550392592 509172638 857575548 361169301 900146408 896246495 962096156 304464663 669416720 90862571 649988289 222684078 483173099 339801703 750600322 624798331 870047642 753668098 932118638 278039681 847988089 769620680 884600103 110512702 809103326 96710468 965481179 695890686 972016800 150151653 988611121 41905879 971364517 64809861 807310008 569240969 775311618 498116601 966496540 545563622 915635998 103758844 924761907 188832887 703634024 315916650 952245586 194324789 701229872 301748459 720722055 123196902 962373715 554335690 846845449 329669330 452980762 213127931 915711127 111671173 233049857 114423410 759489038 457885346 983990392 691660046 795010547 557488071 618093160 502257409 773895932 387207954 426383561 350899538 732998942 211013631 646646692 479988730 555723400 150792516 558120171 63109402 829676771 764239892 789112223 195718952 796647335 512345096 861015350 504888477 712226150 7214778 736902513 658424884 693030337 348797890 770349437 636847165 838300672 160431693 329141910 47006395 890686755 754344152 860748197 245824479 508081162 316151921 476465563 349400187 645609899 441791632 602783525 239716357 790924484 227856305 637824428 304986255 942047019 456283784 665313564 38569397 416638999 369772336 508320704 310492351 948657994 413345307 747191012 530102466 590143273 6141615 840776830 482340565 772114267 725661548 975032570 107456742 310211868 254436064 812177335 229277340 533591485 210280640 341539056 314570407 629452083 121834047 802206194 702485371 715502123 262218739 407780470 20812945 845372948 767909243 989174811 389513381 746710740 294294544 968399288 802091603 845247539 33671481 361071978 42163356 651634292 22988474 310961973 298235894 864651129 363546891 800776648 205515348 359133871 228896270 533028445 340698758 961841312 515764390 943600435 218098817 396578747 288621957 928813562 670317513 932195123 864524705 978842540 825514335 930273505 426883279 541624161 355076477 838216678 423493237 833688118 192771912 235990234 189881039 586707515 551149574 973269275 890887985 897395208 528395562 696023148 33062798 727506973 390686469 657933298 439183033 656309296 149358396 196235499 17935176 189675702 2714273 573770266 2882804 574096517 129615771 695588071 152980548 682726131 38120393 824866156 435929450 580557300 355710105 759346430 272526144 776450204 762080792 885744680 181028505 341906705 172391917 909499537 573901780 983923070 280889568 298458241 122019818 447077595 410848218 864191349 349915096 825906950 458902827 689475383 278485237 563709692 126830754 401346179 112702335 688361414 126657294 438912919 409823588 495023972 253255068 475441905 459040332 964375329 769994709 826242366 373844026 854018097 773604751 928683509 756429748 910439237 262344447 712109987 87137701 904950298 623192146 702829064 334989435 728093049 364149650 620932317 143590765 294726399 163397055 759486087 46727739 184290709 18219631 185089774 119874189 252770041 238556746 565740774 231979361 409222696 148238929 487694590 2988139 921452473 461255604 878420919 873116795 942363194 902260421 943695213 780228372 852655218 779345016 944579842 545477338 819452504 6585339 486428999 347348734 707682274 672037835 910945279 493175964 500640707 4291074 575645591 349037861 719189712 694420050 756078596 653526899 659143097 310834964 550878438 510593252 657965495 374066836 453277131 108564192 303338937 26952442 756477540 140820111 573797165 267759507 788014010 363775834 947772546 548847365 916142447 84849424 989940252 556415521 869044457 154838674 324123882 117886945 502407131 392112603 507050688 164299982 473768748 145162260 949196056 122579276 186819472 159540562 698989384 227951501 311239754 175810058 734372949 92774246 658767558 115841222 576504723 99765664 277997291 193915972 427970125 54383389 649582700 521840286 618974943 426365519 879006749 52791048 269311630 79035787 511186860 65160140 174680038 120757173 520558522 138325856 306679322 218499168 971831364 849652050 874512085 193244225 904763742 280530247 607755192 356804691 787902388 418282265 975322671 592268128 775112397 558190355 586763326 229676955 477926306 323129746 596893101 376914710 992644530 163670555 817199011 643731834 780183342 743085853 757527585 447405575 862608981 465307449 875035874 554198401 813035754 564900685 978204042 9579408 410295409 312052947 787050422 69964071 647740917 181836314 581016669 228167318 665399990 574197057 675277278 553834002 980071341 454532049 523968846 111328117 373494993 364414140 425389239 217985733 846431644 744486791 978411769 180523813 486301253 204550263 239311398 233887948 934242675 269763180 725442117 225194751 267546737 172851093 289402160 219661816 518093482 17497304 806915045 666432842 696887350 151126785 563116438 14401432 633936345 537272996 755960500 69486985 958448278 88453089 161871099 89709394 358557240 174447245 912217435 14741391 875177800 387019475 406943108 212445790 377599183 274494038 401095470 103657013 283140874 152985634 332415328 325675462 654728827 531390621 760655849 257391442 516130326 158909766 790521974 171023202 190911219 82542363 954671789 828739348 988594464 164450348 989633529 958779675 993848280 911037917 962506954 252781858 528863705 378819777 993584283 651172290 765693002 697906425 916559212 868166910 993954440 49225860 766778729 264426377 835452619 812480753 931303057 615134514 947299753 315314506 803393588 429020015 562036153 20562612 765475752 761178917 930530652 281466377 711829369 527383919 733773546 721858141 900517304 460361165 600744224 518363115 774504823 383532538 394340247 276259297 378683707 162696982 893846007 663981154 842355786 510289435 986901946 747353986 764309564 418942419 891683616 361938445 533747504 380737895 791424568 281552888 758620146 304025027 591058122 179276057 291039409 178301882 805757674 401760154 510489614 173023907 723935829 493791178 742034485 165046961 262127850 6163797 556343132 316308290 881562976 778859352 800944368 731535731 833166231 191600927 387119910 309598557 854196283 761460339 884156068 107363481 152274585 31299884 907622297 531848256 556632737 440495370 767285012 292205302 400920716 139446635 354918082 138176075 555268437 7727026 424351732 351363463 886796134 176989032 940846243 271927891 639781163 97318861 863407300 576453865 740729996 693186255 901608236 14859958 931137405 334062250 805855048 459382008 489949396 31401915 687696799 547597791 751586736 608516490 986691638 886925789 965408115 811582925 979956544 222546962 670482185 407718954 703288173 654099907 977605379 838362553 842757200 131731865 243888235 236235472 708658958 393173648 411871824 212512156 602594271 192789047 604588169 34678558 385168703 370598478 404362885 69030103 524801122 488841560 973814417 888666598 985224298 557346006 941350590 502691437 771734840 89079973 953229916 321111297 768447470 98765179 316696434 81254668 665645983 469781670 971258992 568056947 598417877 530073785 948070842 702968426 891566461 737051017 979112613 91330746 973675593 219684506 898182306 845594318 956986322 761357001 934231191 375404753 867621424 757195569 860117604 132244264 910615414 356033410 854518685 318927622 864826834 350381511 461475474 1709801 146732750 61371948 514567739 12395864 843898194 520300106 632085984 210256593 590839043 82798790 904605366 29724493 863810088 394797934 826930282 767866319 816709335 443246158 493816373 471605422 869162414 300119969 988618114 677049034 747828750 645218528 718730340 622748148 881989710 420867120 778230072 6811064 414652006 10675453 840972869 543222247 984875868 861489170 994017362 535889222 749496391 600571911 769555573 193997281 735088753 522554232 669218603 587982717 713016799 125194120 359213753 16428581 774626268 417266756 917409281 299741621 575127191 176419357 639736177 590751199 749322794 422805509 655161496 651830714 789602330 518984053 612101790 495995695 545423320 533638636 568404573 401450592 900999666 469122546 975514990 119924732 748845719 479764825 523706357 492458901 999545087 324634400 798095473 737406917 104350279 493678756 206859438 431794956 279512472 575641428 108296465 131483591 74137580 492273099 139701208 443057852 381969160 802369483 10452990 100651663 75562502 883163826 33915202 528562915 132597500 619996966 524305342 801278756 92786300 602597810 240982586 310331631 166009266 744528127 237292439 826829737 105144908 232350209 64631049 827310984 552967430 799709387 393696798 914604972 454157651 798706215 132584276 782626514 710318633 768758792 712725574 900522510 173881925 368742000 363189254 876011303 184648952 473768068 281496466 891083746 466872175 802172308 737588215 741826416 554760144 787338826 455553930 808533285 105978719 116630046 66233926 765435531 365512480 888195110 781273884 830229973 359298264 677106098 283221540 877273226 766869853 823582975 809232038 984054092 773377815 840794837 128543258 660943794 135158683 375481874 260940761 277547545 194675847 457380568 414688332 961032383 266739073 456348108 324022036 822899218 18544174 830931442 47340682 581762302 294652752 436135128 241525981 542030750 393122638 982993364 429937806 756731791 274425510 994206185 15133462 511955962 359533491 934453904 462505486 878342303 38272325 179278850 20311357 140509740 58981070 765214566 291956046 922520969 721376029 940663989 287722178 762909840 161790770 538275874 500481867 909296811 663608193 841033032 665447182 725548354 707491582 980503755 367543265 518722976 45954382 606565634 511840127 637886355 532121328 850100530 361753145 514115003 387993718 436513567 121333821 196477189 107072930 548750754 138857192 408872212 18288481 646534020 111130176 168936157 114088532 923596669 48956618 307067316 216212454 882517255 258758464 725554962 4994236 821283578 533866609 998813219 576825423 772449029 188158009 529265486 290770039 602458048 184222815 480665961 57368533 661592786 305920624 803546321 568142728 953378816 920922218 925325111 812820988 871236763 238246627 794052407 572081121 963897565 926689938 972152438 756211041 822586526 428463367 822536646 764966263 801071923 569399094 589285646 332149893 840662254 82899112 786262878 239977237 877467183 335029072 587735739 421245877 647729720 472144838 892384754 542539050 680477156 363815833 567960907 366531502 936404158 345794560 591543438 426298747 855635260 85299153 891254103 361420289 713379918 114636613 178419816 41389495 982181023 634283736 918828111 461381462 714360327 65260675 242450998 102334149 909287969 746402752 973816975 368500289 956081484 930417397 995974688 175643400 728950745 286112417 835559253 685124013 923556648 821226518 976874063 388525024 685703520 95235425 488178401 39297682 737884710 330286711 977090598 945856420 972785443 861966140 919350068 672318150 984644886 38064298 968115990 835750791 915110031 488746561 952013881 577795314 951547100 183171587 652529480 321395937 859278290 543911635 943918204 479933757 842265369 442371576 481176936 100239056 110825548 61219898 374433496 64656204 232590487 4284824 159143122 86220882 609830196 252302143 866175410 323875299 549333795 14314822 162798372 157046919 639795780 567797938 978215252 658730171 950484265 789923074 977921274 936557935 959306186 138501316 507145832 6770156 66635871 4893389 254426433 1043485 343374794 192344270 387952195 120592078 419633197 206675044 255777147 28914269 893763525 252856362 375256761 122246694 908523086 521086087 787448629 624582735 805058301 667709353 797029886 123537636 183884637 7836516 586974444 134743683 411302516 380162717 574714613 34802922 964926883 165479207 342214539 48802788 338271546 188456029 428650270 359627482 425942422 423191357 922362673 773385127 894192029 302288398 732623931 524482207 869096536 744988282 800575792 382425243 618377428 187795350 894594589 553440518 617777817 543977255 581307570 200760191 705830246 519428589 768466646 538098606 605773382 158469905 200199050 123969101 525391823 207058517 972486756 598448286 885748796 449902082 671078005 101392072 517980067 249966535 475012032 293938374 933894936 481227385 864907593 767262818 842982858 150471831 592450335 418623837 722759754 179535323 676659267 143447566 371801330 49264931 271145925 48769686 771226759 276648680 711525610 106672533 719175071 194688364 910885176 498636553 855306768 446106378 739655658 161276796 435917401 419674508 621157167 416553786 827031699 195740936 385645769 314981405 733454352 308818357 587585376 184816385 944096394 131060931 687045903 198919029 745749149 13956901 243992782 60608715 503588341 340614179 589786252 145728493 954264125 670873286 727673850 678602226 975672057 310418723 812740640 441194942 538925435 63748198 424451803 264637568 923943557 480186495 848103991 435883761 572592424 211611393 864241582 226083950 242348478 43718362 162708761 143941069 205411417 68772156 560736045 47826496 994263335 822397888 891351356 762542276 890151329 644309422 688854267 47942842 977205685 395484049 895373270 515522178 953588047 127774903 447121932 323626202 842474336 467938211 503565861 342019375 696132212 641292442 789459993 336862588 674788940 638092179 924933362 632627304 885710876 472034539 664422264 33039916 174564956 126539282 608017147 77321393 532600445 428244244 854183377 125699312 517377337 286635160 347932673 201293105 423037335 322687181 897577062 216170130 430272583 325423227 435031451 236850191 345160370 121171720 408417695 310922617 975300149 26120074 748925856 708906260 997339180 861146895 885044078 791402539 824988133 472342746 624752809 614085695 895629086 408793444 963268288 354941048 805173173 242602768 261974451 36156729 471828085 30611146 456057479 21417608 93865278 78773964 957424522 106649808 219225003 102247413 507459322 156780521 564390156 501018004 590967368 385116622 546844527 316769074 420683351 235698559 355815333 346187572 676034327 194127089 441213138 22668709 159104933 22826161 815478075 785051676 796493821 257609829 374210822 76419228 351755684 83882428 185202776 80489579 554639959 433378598 595105691 315670400 646681094 552889189 628539905 554689865 736076078 63639331 566648355 521231197 967024532 713156947 992508272 900190557 972057754 251896742 685421011 649479624 730468180 62903883 172840161 93710267 210653703 9203544 191464395 83490757 897873784 433505399 940039271 219347610 880360732 694935571 955385566 515798898 518657073 478696690 737880500 12343425 442861043 120134316 840264451 507757239 552031915 390600828 576451926 89303822 754719841 45235838 961000406 45090466 386658965 109926953 475370292 46819407 765370787 156851995 618553218 538452117 975348324 217628177 959417614 591347060 817327568 421451999 491680519 373631565 720747818 570232962 621787804 34032724 254993936 64322935 153009385 122396130 959537722 364794877 697470846 442301473 827545489 740979430 802273251 626969001 805798410 765711279 994854251 485792211 985420207 415255650 878853217 817736742 882088415 157756867 327925877 259599110 730621643 416426032 885678396 189201065 793562585 560953776 621114005 187254437 534825272 78043612 393333260 77438374 518217526 352004452 443223455 152228805 719891921 285176604 807530964 369115143 964288218 264231111 672674198 549288047 838076517 35480696 80142790 65950484 301050252 163172124 435167831 420877418 539256803 116405645 662419089 638244466 835705809 401903384 984989881 880870233 914670498 406950727 507349000 481809865 621559744 563828226 563941986 376235909 629575733 220670599 463472450 392111490 865356440 373572107 432477180 193080433 443281823 320084912 943033934 322487312 701338127 407042437 522996226 227475674 848361198 814226000 849041133 541164769 828858504 340142545 565450646 58818555 932965035 211201963 472213817 256770304 607391391 120964349 871404546 557642332 678041282 597144170 870727301 641776248 705988091 536590840 865335295 693127073 962764622 621312003 923714133 815020442 857684474 715919743 835427985 339918783 752060461 357575778 968304510 655221005 947135052 364483609 860362437 322329216 473071629 313151116 606039293 43571203 86713721 66025910 207716489 46398146 605025166 260875222 756682564 751878280 842181720 127346979 926172718 516269372 836691719 42779852 255368187 236938475 259209253 39499243 925701015 745548169 777885038 192708407 903427397 592133113 861657961 553708446 910174820 635961224 843544567 299153030 969777710 936614825 943139965 747502173 948691987 833510124 907391753 121107581 827162027 436906493 872462372 778047619 955017092 686575730 706846074 531402760 783833051 305106651 913487938 516788753 771732842 285207353 456926417 21711844 103534301 24249622 594024568 172920083 946404182 896578398 983984772 167441732 663482418 450917162 676686784 238309 606307897 86047070 525372854 220407499 682697592 5139156 743245895 188688605 433403187 148329180 172621609 123972456 746676240 129584225 252356056 121630004 542000761 147302895 287200371 221896888 386077557 138779975 995311895 135475792 709757300 169873395 402272971 111877644 955359674 397418255 736307202 524315305 670900515 538086820 757182224 349824575 995376979 925233732 939529284 571793070 897193263 863097945 868601442 307229945 527251868 8964542 320438798 12724795 20091611 18495896 821890350 141428794 543806628 460230253 985515448 160446826 665392725 68991304 824130058 105418270 876679548 218567917 459744051 353631886 850818707 704676782 868592785 542234539 752295512 688339043 994719049 489562255 583259367 338577047 648756717 8564391 935328773 275555537 346914215 83824836 562984967 33752005 968286869 765527177 955738223 288686472 439590014 383891057 552005686 104107422 834650119 662782569 967191028 838664845 926103269 100877807 539568099 47753498 894052042 625209501 661518070 580208813 617277037 72391106 275715944 238375869 552238751 348443400 770157181 590613187 803519728 91320234 302113621 242016117 634731023 240344876 569963074 250834905 577936004 262295512 915181234 194497692 966538709 529857422 698841131 482748143 718812751 293603635 880768146 478516586 864665572 293906631 613066669 48333073 807365261 266411662 396312471 165741295 700405603 697850201 798484992 381120524 505936541 409072909 425627357 245857141 958169141 543148779 855408403 777004640 950924725 902351779 951850149 269567981 502098132 243542991 918429617 532048655 857235988 674256607 844132010 732341828 921661893 73147190 198577097 4361468 522211998 102564958 558142897 256166380 620805983 337963546 869165895 860277370 945220129 672006390 853670947 175352549 247307472 165486331 957892717 353735 880374015 520471632 560751514 338010771 687994029 27843831 947465958 488340470 567120542 367226618 612890100 286276728 725061746 655433067 770616258 661046205 838181931 628552113 785376064 124370624 294977712 149875242 252117457 134470497 597545555 343726424 590384729 324447003 336790354 10063026 237291355 24654318 308846456 138985131 530565822 52307966 255388692 62705264 697291159 296221654 429898971 141089290 497087553 436911126 638028414 271048533 824781648 258363990 597516635 545161424 971228186 160901151 709638149 345784739 967673041 204259061 266330438 64235108 705424220 279136078 447078558 287674251 742010590 468866275 991871214 777021229 953942156 50611156 825997612 51160427 52136820 13343888 467184020 169150359 429225742 44418277 142456454 51136663 671415055 468954314 534599644 302674231 848282404 58334651 421721941 179370736 526244087 281996764 637204276 239733573 452603924 193441927 398784912 327686728 699320757 190410435 888027945 488193185 656068944 3510067 672090906 412412887 549666704 454058154 826096443 210205524 938680073 728767801 881478416 391980247 707672440 448681118 517304463 143055449 278931362 50921640 960956281 918648953 935523827 391442926 701845747 701437847 919552576 804817577 879703188 245179126 662190875 612635023 688617892 102327485 380214770 76919949 149762232 65670510 335122844 46300217 716331630 183551580 815960234 809363691 901915271 849960185 926151950 894491135 995027204 468215042 946699218 811647610 878285777 34541956 79659742 34232564 911683917 151263755 152589275 47370624 214693015 134875659 550853657 33414322 150565807 24091782 758392784 116903070 244598214 124833128 612849431 134018118 678067087 571703289 756136325 594234654 727637868 98225291 919370807 718798868 884295367 875215496 891963832 614195039 997769634 188588259 980073267 187246824 740125588 608091182 925375402 850422402 956282074 731773831 857131931 131385394 410002327 182406574 999687451 579401998 819944529 82159362 946375148 419158115 634347530 431872067 903698692 377609363 920838890 695745920 947451431 524679760 962844886 878693841 994784901 294848554 660583953 348629007 426339227 417325077 640374583 278348857 979766159 668634449 873136066 113439376 562759451 429393768 548836191 463865740 806255069 405743865 697528013 666882230 721913289 206101447 635746665 97027438 334626357 125445031 807545777 45181932 823285588 238977198 899268145 518999750 629539211 495581740 718304191 222269073 670713885 661570363 974698708 308274620 509570732 293238478 790443503 455167200 923728180 676213270 714861488 361393368 793673712 302477655 942694713 768703586 914957479 630218476 668911803 620674252 943729176 266997299 670230680 223220734 711690380 661506588 848205901 271846108 359104829 297565302 691668755 450810848 814603755 155857223 644684497 227875943 892148497 362178512 531141071 233155117 297139161 107159093 761231031 120712440 268244909 252001200 864476458 414345514 455561331 39746269 864449606 826900900 864338796 232007269 970615171 929106765 930063988 920137144 958260178 469599756 545423418 272197688 699485153 397958253 408647617 237913331 407076381 232259621 425849536 313511651 735286505 387170508 483310465 9239752 65657013 27390786 657663124 467329182 583803007 257225560 780453510 655354737 985073145 594014332 706888669 204867028 369042316 338052643 879957883 417259746 554296869 467529259 838804305 623010712 806932998 314616147 830151287 189935845 919332850 738115073 860695184 295678739 375199051 63918622 321238262 221041483 932433595 804328325 901290336 812023782 910930658 692990334 792041563 116499156 179221540 107853317 719738786 127947159 781066018 203485575 929515774 608573757 866410682 695570847 732644214 16664141 704025646 67962426 611859685 416146160 960241055 943989788 969762673 758011689 786386953 514744833 943787936 555429980 626350706 70471937 230326843 2754433 392018032 59566873 304993949 167055297 533422540 429185259 631881576 219862740 621098062 243524711 472736326 163444074 983409990 873560380 874196678 415630169 979756176 116219138 686094982 217701422 416365883 301889814 798446114 678573745 911920134 139786772 400806666 79532205 612886316 249221604 518253782 484618542 506646741 315016072 847303733 74856662 789297693 7339151 416181765 167960583 777451291 147498808 581940755 178929450 330021418 230586139 784549111 678005189 889003584 198991042 359922039 119472417 340303256 45505283 140156912 36091613 123697901 86076118 231494295 158504849 614053630 154880719 488285173 384879294 716181625 353489793 600471041 418943998 614388313 233447851 785122433 191892680 929833539 880520753 894109848 28071618 88078235 52175387 707173908 565106704 576962502 102610498 939355043 881309595 922127445 122900417 425740253 105199766 818656132 291990680 969670571 442851239 619137502 402586657 416377310 282279717 480026604 361878814 570215484 237132939 344798503 137011410 526812077 505113420 576170316 182593816 651544219 491517443 628712756 504811574 863127651 338133669 416050898 326325543 785686834 684575220 777163340 267805127 351606346 227749064 613381505 288755305 814323808 75251868 961100307 655845904 751825116 243041180 309385503 233967129 812842042 413544058 767516633 60804507 876243317 224966730 463739247 51643572 698693394 466563882 764259659 252165448 912450778 790286867 807607245 443594837 569428177 508630192 887322572 326712448 603481207 53779631 887254413 586891996 936494625 898820897 992578000 277430111 687068355 298976282 892428087 477608195 851090320 8534864 315908443 47578413 137990639 51250854 335742822 111784369 116788818 94243943 788748367 697946123 864116855 5358122 213740929 2220944 220787391 190149706 903322346 463572552 610552343 140782577 773593326 97592354 722792689 642996688 976962034 133658556 877532706 190360658 273941814 83821874 441990875 367414482 957931213 677668223 901350869 240638284 620053663 468276126 764410723 470511012 875418798 552757927 999794045 644785039 767851894 409773649 508447057 494437567 523482851 244423927 463913275 129040263 520931354 63856927 107579169 61285129 629933019 467575506 820633094 606458183 833163423 176043517 425230040 97971506 563787862 107489487 604410066 16494130 679891391 149315474 276908358 32077218 219021417 119635358 894940053 256602505 602629676 403525130 433499350 126376673 828618528 112478632 985598172 783746794 966342425 893228240 922635273 287662251 667453281 340329926 980356259 81112686 705896724 440704384 663966787 210831250 524364531 312664894 338941815 320522795 952113953 413789620 579649186 553815357 918820161 53778677 526412900 230054390 410815927 170585039 449574322 287737649 922400125 640455551 931000780 641336616 641701425 182488379 520934350 309347460 766069159 697657664 838066341 617289984 911636060 374187867 560858788 361680172 629731362 83609701 885518740 295339598 846026942 515155939 678943021 643541890 792996244 164578439 929165486 314307822 487536824 353678903 407077784 245856376 601217706 408835971 853403221 314284843 503454239 315936420 663410532 21903509 376025190 273135526 364784255 290906968 452773184 130519673 556361723 114823340 452109169 265346763 931865460 805699370 925931536 827395074 986618318 735007586 971303638 848016814 881024404 780086520 866152025 402501462 551961369 439520465 730927525 4367201 620867971 146125497 869690534 130318686 139306001 80403687 579390727 345028040 487912676 225000683 732021456 241260047 517394894 25447795 484525519 346658924 518416328 431178122 819099479 60242962 364679960 34114287 940285606 160400661 185275294 43964630 292811323 166032791 343418130 17447330 545553018 302938320 967239695 75888282 646157035 436953776 754047861 440074809 879467405 361860924 961342166 101196819 624509663 165374150 620004103 145697191 363573153 8747350 644146916 455036204 727011129 267292596 322825493 111662931 239261996 129682730 738200316 511415438 689610150 39369146 160891996 149831993 920081670 47639824 642929620 369412718 459476822 443758229 917795265 169456900 228148862 165729369 414978694 105320977 780959145 36812408 660383670 206419059 791832632 650540623 940413190 199284003 520204229 190802404 892002145 805248862 953712058 854336944 991180975 309690757 397473131 321506959 840694589 674853105 907567248 855525974 949885332 575831679 794359652 758427950 899374146 707766719 822499313 815330284 906446517 503121512 933084404 563261752 809576054 688814285 919721514 887611967 996355439 272233154 602202213 294059968 882446999 589428436 679616292 90140130 527890811 34352350 122771351 106575948 120965900 16423103 835350616 522551907 935744027 157838428 993659689 10215648 678024796 40853476 206870382 147439560 775595305 505862777 970585718 252118624 706051309 640267779 837801618 361766129 555478857 326673362 757938409 595645189 791107394 765395324 970003937 84953747 816214004 463856754 904811094 502772374 903036400 547605489 677015312 74807932 793821545 319326139 432420922 240995424 984308227 705654303 801450219 205507946 252541481 4282014 533583548 19807354 397571152 190803366 882087553 668503852 766372393 648953337 670700452 172734769 910804735 531986497 758864950 314891251 600679696 289125321 495374335 368199252 805936453 690437666 981251063 134564617 957447301 67413466 551459117 85162039 825726604 599903038 780552292 269892857 637076789 474197651 872772408 663226969 755800197 469101754 861405830 780619031 951164918 72067591 354440542 86865008 121553097 93580161 200303438 145592129 959346725 494104724 929347456 852156586 891083976 21850737 406592327 85008322 408276334 122384622 647101362 590266236 719387947 251040058 487974843 198127011 493051748 181652860 471417344 354448454 388204849 316971166 362238040 173310585 671292025 616824904 784780545 129858438 956501073 806005021 895137631 346399439 805450146 596476565 857668989 159985417 416083824 123435157 842139347 437166467 763191652 311947890 635297016 375121347 679803698 118501092 366714655 11984486 129685489 20871754 905072860 618736229 985820241 654190348 945740740 213111432 707462437 520863869 561470336 483032594 810809677 721757505 915131319 526792761 970219785 772245196 900851959 533790500 863867930 193356452 584768369 130477927 558880624 43141137 126851517 6061457 186193373 63586059 743817801 547118538 565910167 453614799 822035171 208667081 704792378 439200812 844243935 761162864 943231641 482131744 978858376 811889479 861808604 347055670 474402309 275244131 647251814 136862184 551173457 511248635 694810373 333459000 697954329 374586049 797374626 206919142 695618148 26522473 973246753 735529141 749112452 577245952 758808609 502823798 632026104 297748980 615976332 66536753 999533513 450998268 492314688 254397100 608804050 245599263 924858691 256343644 312809182 12660949 268744688 38108141 201481120 68806438 707334600 400941494 932632696 426865553 855686870 468155905 685889438 605493184 708677368 232301526 664047829 444989596 839460652 719538297 775703639 408912358 499875012 95766924 361868902 308186968 819262734 394284771 494025160 411935962 798750533 143933975 186030540 88275560 553804370 302984951 765749483 733730574 793141747 411138224 459562826 260675167 585554470 261203736 638761288 140814587 784077809 476452653 966304674 56211461 94969688 45408609 250133818 74974668 576946705 230467074 484074628 434971090 909483859 35579111 120602537 25838783 658415648 193698496 894919223 156227602 827671139 292034749 649289055 71144746 83911116 76552212 781248817 123733078 233097443 89221191 343432587 119445221 402702993 140254368 944501678 643019941 781105871 141514180 844305698 747434000 875098685 769323023 912246109 321028584 697722641 373594619 520380554 334419956 454757228 368364727 680721269 234540024 292101598 267579762 786972595 259946727 451774306 247857215 506475888 308319154 386582635 253116488 422529662 361433615 608217955 241652799 864529421 363760618 719757322 39898808 300970677 238304528 693164613 253376578 417885103 380598963 397196620 174030126 703019423 108090042 278341214 203844693 805518373 723581517 954811249 331583176 816327737 332196236 982925998 806497195 834475628 225883019 331392026 50941246 212957772 20955238 487060531 276015035 700892491 675504944 989589432 248011770 580741989 479955507 947631604 611250972 631719715 72613639 352567004 198353031 937869880 119954094 606352016 54636811 529049370 78609618 255644571 20530014 681261719 622414943 647395174 107686673 692587338 167171057 476284668 435595367 784045893 599314253 651825016 173310832 215915279 166393984 200852642 190350401 647901266 220237823 516093535 336685172 476317834 468583198 940827292 478046778 973637322 74355552 794586916 48733878 78266134 44736393 865341372 661083632 978447885 61888393 248412970 92874888 562079098 175682367 463242008 454521388 533917553 462269878 524605540 480022045 892370461 540362284 917006109 527121858 757881265 720543641 844876284 327455199 380285534 119466264 224734839 41103504 315331766 21048949 84768232 26155229 124240179 97135680 988501677 441124155 985886905 832663449 850100399 462991037 538981751 322300758 839169759 568865597 704071776 370565320 781630488 532663740 749088208 547090365 683946746 454466594 617993003 539940051 570247667 42839045 567021794 561979464 886546252 177216229 680064564 667397580 888220973 291685095 959271886 536590326 796595129 119760066 430732761 306686029 959852390 10632183 628451637 585806995 666251123 550592753 792101495 163673267 681722863 504243251 743994164 422289434 839395967 651877492 956847769 494618078 506416698 158785906 929668678 776195411 964672576 487394070 922237492 38887827 167736444 118885397 903986508 791967697 956083739 91966500 297578032 5877990 824836662 6684559 603510639 410450882 904933779 520559143 860837989 846461647 966949550 824166247 914507301 434167908 497873626 259179842 999009436 466587679 937921031 426619153 514825657 23928587 96940308 45861875 162958542 149036776 970528486 433681047 629313351 225521459 695905640 216328045 224114126 102145735 316043492 132182238 349086949 26984185 798598237 290073252 554902427 410663338 493500620 116737995 703097449 181859570 286302459 165168651 172278281 71711374 377623404 233236377 771425459 260590427 603311545 65383975 199564043 195323211 390335720 341185211 706465240 205262316 957402997 16322569 765505316 511386095 613211131 268659440 797319519 391486305 876131467 548757689 924684494 231263746 934306386 305770505 804829382 51631175 632480447 38875047 326753374 175328148 516225139 277593846 606517587 12833072 524345480 314802339 848893137 524103071 727889795 572788774 914869438 193282940 507152826 414446229 680130825 57774416 71612033 26715900 734120075 118093293 463912270 462377717 662652036 619983881 887573217 172936458 265992981 31458561 442651484 429144395 823382511 313227631 726231459 154671014 921773994 807567035 917204363 411804734 682179191 52369815 490533887 64685909 916104824 497806746 913171128 765170338 970127896 550676159 899575309 821802216 967737662 448526129 808064349 559713988 601332086 532122750 870136804 838031851 943349610 14646002 654653237 539238952 583212733 450335367 666706383 303019427 380831789 243081169 702426465 274520656 889689603 618460825 970821544 160043147 843597369 693412365 890284622 410242458 928531555 151921701 997779092 733772944 873796584 552085614 623831770 600330300 746693160 399575669 535979039 272098468 733130587 401684904 558450386 385657980 454466491 29699589 639526193 514049440 873974818 614594382 987161490 238841481 301120340 272641551 904872218 196929970 501796328 383525766 800635969 504880811 973463799 384929239 523987334 44975919 981987760 311866509 758381577 392961383 881416762 424104278 544176395 257673599 707170510 561526373 835819345 520533109 954748009 954074413 972082465 86294502 677023737 380253388 381581111 350955925 967394317 543828300 921574335 523760046 559220977 120862853 876380608 114637447 465305088 172880402 193492839 182091243 456043366 328149277 801536816 558881466 851679725 162710776 176685756 60336484 831136932 177877797 430785184 160735392 404550416 102975631 253196021 240454174 259733464 210671143 398950705 174639753 512766304 104806438 175472652 79750226 329418647 83556725 961392448 360350276 412721935 32038885 166157116 165738175 377066363 208491647 325806344 204004646 437854629 158580694 569213039 250668313 624831840 513595058 952400744 605598495 992558364 387145192 837257347 312928260 758234778 148555056 919847611 276903912 946088076 659972832 913829535 822142293 845362053 592208681 982820020 950002954 976534644 645360663 879520182 873376309 969051395 252551249 559388636 558230411 911904598 204404416 285797982 942124 248157959 236079666 521058564 40070967 565504189 548613668 950799626 647748596 821572564 294555031 369670084 53838655 956583282 64374232 549230358 516533325 782935334 722311991 920246198 324735945 765297140 109933023 314729857 61096608 787297315 723471963 916778644 343541825 453664019 240708186 551165020 499956168 693065387 669491717 957258142 842821151 951925163 834927717 887111256 841494809 963923998 186824172 355214047 144921926 293987172 209693478 266347089 33432137 477818461 437877274 883611395 667980399 741239295 734620872 819100973 762314773 776147606 596007788 603021218 536475737 979042978 577893967 820764801 43545380 596922354 163598412 730667835 31289576 416821756 217762697 556960032 30510347 261893626 47836902 951201749 513041462 584531175 351708393 734231837 490832003 623317768 41058479 160115513 97163567 669934492 246843733 471788852 463552959 553373960 373089617 894025881 611981163 740120768 367727222 463360595 447074771 811371871 718132916 896895516 263893442 440191999 277423505 852190742 613047869 772882067 756612763 915311040 853074220 859365506 390654340 851877710 624595767 926586297 563593408 566577055 200766691 956913719 735910036 761243200 585831680 780852045 754848472 844326378 355315617 530855842 201779986 791399487 462926113 494513156 349909232 365056867 330731178 618096101 378109017 669714063 372202028 777851475 695241748 839236469 11841656 372929205 135123690 803902110 705776868 743011285 376123042 745330210 674449576 890499334 577708963 657625878 361274470 892266067 710392498 934195846 220164741 616462223 380869369 476461155 367051196 455328798 412503997 537329797 108647094 315060379 313147263 922380982 134187071 184487922 24031808 25042197 21294685 198627103 140295539 875916321 455765829 779874831 316451984 734106369 557871545 731307509 494860074 835785005 216520145 520089249 224842059 596410653 516858970 607977744 63635984 638638573 555038494 973679170 35617002 849489701 536186760 712552770 250522479 645723877 201879956 720619214 504208625 668851890 604200818 742564501 584595984 595789881 37974679 243649580 86672393 107352572 87856895 578772183 289954736 699176787 476547709 733041230 172084656 830074317 261007390 436784118 29025596 913665651 119714429 135179681 25315357 494794672 333485186 644720072 570555209 615782629 306768592 424532243 372494168 855198616 758996021 930403245 754355827 838548522 270336701 756723220 740089572 796106527 57576685 72327642 38370052 151235225 148940333 532915007 362325484 772085053 309558041 953130673 393360325 517341880 151554598 187251175 102943783 723557166 192939921 530591614 1549980 927831559 863377660 984466288 287303291 412081569 203835784 323150192 167340008 225758612 180434723 561585399 81149431 927948692 182423043 803330143 775960474 891374914 454859932 803440102 257110732 371814589 53349800 305873816 219770126 732255022 24058171 161652269 43921043 994469657 56519411 348293070 343744306 992799350 927243442 981583804 616017074 989764924 440367092 918553055 356138734 677565101 296540506 470078199 150465357 565773851 52848466 940435255 667538228 953894801 853261575 927205068 395932209 810155970 688617327 796831218 695112106 705569576 547401405 784523156 158555033 472742375 404845962 836207463 119861150 689901373 112524098 608951770 536285814 842014883 840492955 888241835 420494300 600063066 502271362 573557750 361371459 565351008 333245299 993833934 752541395 968382795 655790481 767740322 364752389 956393142 48215051 297411752 160569069 670629065 445037785 678772945 182412643 268301091 120513322 718810080 123399070 466490421 43600351 931349242 76391155 937796976 690502499 993669947 987410645 987975965 716680689 755537858 144275765 995640602 251025099 795835855 191641806 400937832 12196247 311741450 38139869 645253534 198755098 629112737 123226394 526673997 288331455 570779637 264132446 587049793 542685858 651521475 101163330 629485980 423534864 917908376 50672935 458358069 346781058 613570855 530892103 923995115 741689104 924306645 243214953 571140107 164811353 214116899 95808025 163075320 93545487 158778185 11747971 573814324 479603875 722517881 310939288 532743999 106503529 354053299 162434591 404935477 99806827 965807407 780493206 949380281 780851145 870620030 810670461 832141413 733062232 950658377 102159055 894733425 579516821 707717913 341850558 746736924 269308319 363090773 120388389 404204291 175393636 626081705 52416531 754867890 386127428 999590080 852319654 945202378 725583459 960594104 821537834 832729542 734164882 840911416 547259889 926260778 926089070 954779645 898313924 982079325 329957713 586810623 417171520 422948086 311613584 716166185 584452845 753108664 698077088 908459127 907181597 908993267 781107152 821408264 138413678 570882768 263989210 959153271 840945015 914068286 71916917 868747115 504000251 912268735 677943933 979632978 651475124 666330401 530929476 906248479 796736845 997340252 292584751 574548889 489641937 934731427 143347845 498174196 429916368 946918098 279627990 509281376 272779328 430326487 98013591 614167244 35104074 674595936 335148967 814707693 485277160 587340519 101065765 989690394 534463979 989729697 592955155 660567916 422947300 809869269 382645712 420073782 146464293 827018103 525427923 808930295 415162619 990973044 203933431 309354378 170654281 192187865 103410379 951118183 797496162 902339311 464419407 935639957 699850524 748054582 395404192 764101894 576622709 643309673 198761551 996103459 904183054 904483790 641805523 935052860 841030226 944875205 189117959 909414039 108029227 707257948 501056783 945461178 466464115 507868461 431599979 593493391 521392254 860252547 127338839 163485497 67546200 425753433 391138329 868901437 670424478 891228314 308145654 660235350 120058066 179960520 34721946 800442523 465117476 992540361 253965618 415496317 309789377 649448388 39792130 91733783 75788972 738526052 101749397 896894021 167729254 182591626 84274754 495914095 401510263 910093604 806601842 922871124 921190378 964927704 940117101 942922596 598412876 984550118 685767929 908693371 189030990 551616280 103038821 674902270 121070612 686456234 142339573 495200553 78496239 168442688 74644865 569098238 534131009 836104979 474723911 690833268 116023902 327418524 298724637 418212464 191220174 813660071 322912553 451548965 343358208 780145750 133061687 943956434 562216918 841397520 714587702 879589548 638385859 865870914 602457364 998825477 986342830 989951327 17863618 124587057 121383872 900860445 421890865 675948268 207781139 791354495 511177999 920609876 111477663 441207482 135374635 561212414 490314888 978740086 219760367 718854763 559553178 901867314 876907107 924255056 31023424 904767513 33404868 223587470 218720442 775028333 246555816 257599017 7961160 835993592 461384851 733729695 42461310 776254100 110682818 285670906 178348189 518212904 66314200 364315448 282384873 756767957 56220941 938258411 552903589 724602296 284189169 776368275 89125233 510697993 250400884 942505728 287535684 454373636 65484180 230805833 206454828 393746643 104042325 407171038 88026734 596409472 402395011 472377696 370465763 461989910 303332295 456144450 367158255 567973262 505068763 525548037 98916795 560804800 548222279 889993802 524187127 938861710 171117 41920016 10740291 148216625 35300379 885303516 92841228 364201899 233809695 308611796 270156516 554976528 272393147 844643031 212182687 371705984 86817334 373743848 287307302 728556934 125094601 502800482 449699771 746168680 445387982 996183403 772217548 864862414 24402226 204163474 51196735 734640249 124952505 598676696 552312113 590640184 292758153 545347733 259203563 278471479 54386111 833081145 587466850 649805939 21599620 120025257 109213660 638310701 228346886 517238573 78271031 768208443 734642027 755125955 392508197 502233348 180447570 965977847 962679845 987280876 281697515 344184477 108448099 124729196 53644872 318350750 278405791 766399320 513242368 993020621 946382933 955949896 936732105 942531799 543318210 854720226 799472573 800184980 168918915 932585830 925458204 993390166 491627748 656275872 594001551 925600088 247028923 564345137 540811199 798177845 693851669 971005935 261298147 576732346 537884005 603216273 411726929 521242133 150436026 349551891 20624899 258544070 439587 44260707 20215200 751440144 88264945 681859606 316321237 462549385 401134254 913017242 298671410 481846505 285645414 416430099 294542989 501304343 485240797 768018123 766488360 988032632 96940453 540902698 166267333 346920630 210085984 296124894 78465196 465953349 342860045 966418084 801537116 976698210 602522194 663719757 192243489 746757969 638727708 914386693 614314811 930331160 242906805 331002617 299391965 902538020 16847273 555358119 332769972 712769385 150698332 668264625 608618031 905178672 431069498 700313640 53125715 894650179 272813924 715742469 257233544 292150682 148644636 830098383 548867207 760554179 560951835 837554314 542318437 824721910 720079134 944995549 469520406 713821453 213751415 250989036 38857402 689938226 284196282 498509973 436556799 436851421 143285463 307933135 156329826 448102845 55546192 610523073 295957926 962009748 87324510 699970509 461867449 587078261 493229449 674689290 409917608 919558355 366058957 996877826 785871877 856652953 269261338 934162585 788517275 794988214 339087999 369379913 32859843 727523518 239799201 565805892 411878605 554223282 203143278 236992494 65689783 379402431 88609706 234357731 95893214 139724381 106879107 128490500 81619731 252944072 197206426 782971225 535477593 698949295 38166583 933520049 21652820 714228647 697705178 810231908 132585109 793919654 618789547 839903240 831791630 966532179 360661627 597586132 20020660 991422146 192990330 888872120 858033372 871373194 194443697 651896404 195806114 944276927 144450715 285930193 132512063 675623279 304946399 608091629 582512576 648792533 392326019 433367089 239239501 355945433 75466165 236130456 149992453 749128073 724546074 783292690 141731268 971338398 638114072 812462181 449686728 568945535 227995397 799904941 334950545 568691535 3586207 156858152 81041396 82073269 76221936 778166562 708439322 759737626 12404979 939203571 365475507 517625986 74076111 404526689 7035024 477085742 223303354 746591185 517728141 845298221 117328046 648267178 556105967 885198957 611793404 673106961 491100016 974736922 92125683 336773863 255384830 621775401 570571679 880189529 368161682 605032178 321206032 750304697 112713111 639472252 312928669 333762580 183628280 486167171 413204933 774815591 758448261 942108728 672939160 777959895 130048947 182363667 22402441 26885580 20491339 204565831 146034694 981608408 225459815 767583151 745181082 888068694 686597452 719490949 519219818 825857153 633671908 680088777 381447423 894828664 538973440 852090707 207291589 730412743 577695046 968301812 915990350 970167068 651324984 975795770 99444228 104810747 31911306 111849151 78208915 232747256 43926890 846077628 188168233 533738322 339085659 480363859 244714233 699424461 580516342 661368698 303605446 860978343 744985325 970724674 54737272 420224901 348158548 630892755 179046785 286870983 95913989 996142599 327349867 985602515 162719564 251642887 130283628 365025611 47146427 741480104 559623366 894640304 545931868 577758198 430529178 959196851 431664574 514500511 135678139 236212328 24617844 185606218 24225466 959518746 244101501 580453056 262448045 615207799 464561006 601947381 274773401 424642410 112636688 939099620 717560905 828782626 500050124 711147815 390680025 816052301 713643981 984444233 468705958 657230085 530119564 541593184 56302913 581098138 465334242 593353369 215825174 848262021 412465842 790631506 444471632 547625091 363284053 443315507 432921375 647169652 246346149 876463981 252057841 757383298 594199698 611486114 232920488 273545762 165658652 247323397 102911412 882760962 401961001 899988459 641315342 755539143 153934374 737210726 639999368 924858802 529288959 618882202 167616186 525224043 184921668 600927462 231253829 889232317 196795945 471531914 323299099 431357159 105467485 701886197 605651771 822773251 448654845 791824313 698014951 998932240 158505820 667800069 649723752 858570878 765741976 990437384 724710203 793089126 123729375 671593620 423887885 469905286 7954125 836989802 569458464 623101183 417911181 912894688 39079121 717803918 523984094 596270030 524281880 688048404 610724901 789302733 460211199 718714755 247564102 649568544 222999144 635882202 347298975 725278171 554851998 885413504 587852398 957620470 109357077 558462602 421388299 536979043 445669850 678300244 562767788 605845352 579641010 618223283 180206881 931172557 602445581 973441256 98607818 702468604 184628764 983263619 5956594 603585397 426165828 692115787 240582398 860522750 422757307 520294505 506030555 972536958 617600531 682549023 654076455 714088490 701114932 715114419 581821527 668483130 660824836 808181873 635730832 931084908 609925080 633560309 599475281 921329601 491978824 648134499 536189260 949534054 197061019 968023752 440243808 659537326 376719339 638186651 25683702 363012113 229141429 976030180 12279449 546508947 22943749 940002253 194974702 408207606 64789627 843649645 154517866 158793590 20392594 480304914 131994634 251082135 19472767 430897073 129297733 588686311 324899234 523714384 285923221 847764860 483702457 538065828 458314860 983434858 134549733 715079474 446523140 570871549 306913449 309006061 97705027 580605917 180421876 536838450 146633271 350341417 137805027 752789301 686436433 703199381 163444198 802142718 573167464 992136918 850780446 973797892 30151561 133555624 94254213 527526462 86576710 825139644 222772872 603882077 83830534 659069362 91807618 166066900 31344299 692368207 531109687 715666674 368472109 851314029 782789574 785447136 676156418 917351534 776034378 959275305 640299937 744366956 444083936 704775752 608983516 631356092 241097509 623889336 428094399 891933183 259654197 463903498 345163432 618850271 43971545 768953911 724010479 881232629 241519371 897407284 472056272 567426609 278251350 634499737 425913139 789171855 52877449 122193173 94314665 176972425 75374908 984539760 269689513 315764326 204379729 589049924 176762377 944653465 261808157 840836343 384644176 708214650 191777428 465786830 40777091 91463368 62855291 291126140 18687321 885521449 735834954 909514826 429043882 581485527 417038271 975729602 800970854 908135002 660008207 762414115 602083590 693859480 380038278 997843874 665082818 958152655 511086240 774450619 654200572 792609433 693217238 854000935 760431742 958064224 439811633 517156341 444454948 516474784 202713954 971853664 624711538 768694606 54507677 898107979 387720235 563274992 480179314 745932047 420792401 824397852 602519568 791280294 697585960 736559052 419770997 932921142 168690661 866715690 233341495 779613717 121633231 511907346 212674663 672243495 580356526 598569543 506507020 768429388 334828322 475212557 73715984 88400371 32318045 545494969 309272870 668468684 362730890 982717814 548826896 755229442 72005447 727328274 726587151 878748456 193135902 696321464 168970653 809662193 633906873 690454803 442481473 791885633 659944501 904343876 126520354 127777839 103606079 199205705 40243283 115872263 109121780 928657736 848626851 956388434 709060222 819111453 612676340 943296864 622257902 956418605 776032647 886269553 776604577 861455998 658247304 935979564 621579932 866474141 618429517 851838673 647986755 940649604 259826039 339482533 190570118 443791216 406385550 887948701 223227009 430608222 191568633 691229910 109803218 930367380 735579103 790828569 496631443 498591006 148798770 371235468 239490383 294610420 94722482 667596475 92525171 721496267 532487292 642467386 476952196 894799570 626694877 688915847 58739637 939944981 523971589 782860987 302266793 358007664 4759195 115906953 111221855 429211270 101965573 741978907 186937468 988055463 736003221 901905883 383567180 840571163 607641133 949529746 246813968 310283144 278068885 917878891 345620548 611791534 202033856 707463058 57052421 970810883 116145241 357600732 305037098 474836519 204869385 866447989 204055622 540817581 532140360 862797174 567875423 591186062 175566854 630034026 484291579 933221582 7613744 32235537 15870522 810135563 508681775 671364935 180675939 452213468 23712893 754214042 77564236 732320763 245922483 867497392 145315763 927048660 506607797 984346812 267345043 460366167 392120898 915871470 840955532 863490361 598282697 804900760 310911789 730440850 302335011 556783528 341678523 570753892 387885583 720121996 447561790 793110532 722726663 779387205 176213386 592385422 5162621 202185139 24764039 744695806 32347328 618300061 248493626 706165245 450562509 820245876 474517125 747692038 262331525 266535121 261458630 789686126 703949488 784920627 622896071 983315500 839527419 906648824 92166581 306146569 126516703 280181749 237562742 314865499 350659 373386189 199374302 213421543 81736814 499042859 404541485 764016949 517955948 518258227 371481722 832301942 435717616 841122086 163875276 225730938 34602728 243711964 25439362 403675490 284569095 541562156 197759835 619769898 468804236 897388613 29707390 150312674 125677825 987444042 537490784 575909639 191081659 800743883 339035325 787603032 529834440 768273794 602039956 906050022 606607607 991445405 668092266 868213535 39454644 567704069 239939317 491593349 446223756 856488601 315007853 996183366 651928984 854038299 391471008 969920379 825578008 989179482 472165255 753871394 55991716 587733032 322144618 540485010 236118562 640855367 238377532 393946023 15774563 120020406 76733919 957908571 625904708 663763538 624008082 782607872 104524148 392501617 82802637 341637862 272971830 834841569 189112328 564423951 330827908 478711409 252727683 373956093 49177602 379348803 294144408 435712703 1725462 960808872 789745858 881062009 618195349 804939379 184968207 621289557 603674660 874285875 196829363 841843529 132360513 698539466 694908630 706307545 615391708 642282703 368991726 935303678 18937078 197702942 175483376 805777557 315981995 848339972 7325926 429735538 306024401 711517850 236598708 686743930 40047143 663492184 302805114 955603668 180686370 901726690 36339303 593814143 385613527 748725459 68696150 910661490 193008101 304387276 276598541 723847244 623517557 729467490 353045685 527968342 224265013 833253545 654001621 882250688 658409619 790037154 731391676 843748886 731093177 803415132 468103892 722330150 137081617 202803420 58035959 938699531 88633990 939544464 330760369 501477284 409709664 639117748 621030575 802440571 771266847 985907082 46607974 747527990 342183752 857572174 18553560 610100431 480935701 710887630 87169126 399966503 223022860 524991890 491047484 553746542 537864436 878639128 350860644 710166063 45871505 741248887 530420198 751157418 628597740 769188630 680298333 855876061 644399415 911001079 265051767 736315449 412984396 558852005 115022567 613398687 88448689 171741415 106683801 850071817 244648837 768642185 184373388 415019816 175884620 812730350 691140368 921267491 907090192 911068701 507310620 620901015 329081415 534235236 259557424 353559392 220282633 294576649 78444557 840157824 690321398 707908554 322474470 793394389 599265994 609395345 485760848 924600431 37088739 537914354 400150034 686592921 322523500 962639619 260702282 433440103 392599153 847422525 762483571 862138197 483291226 497165105 50167774 72220584 12873315 222880287 194688787 609132076 597858622 820908718 532591971 947946672 875678451 996797463 941503694 955323253 896491630 969736879 87364331 155091746 142699249 143514562 115991951 653302609 593959992 894313234 870000519 996811226 363818842 992643610 169049010 938207744 473978755 889378741 294631526 356338811 140293653 879624102 147506744 367613666 41323772 857727812 473515093 963681391 9028245 377631110 81539962 192246211 19074360 37242553 19916078 533573039 34714368 303671443 84048512 529396036 110821056 657550228 261921004 529422855 342055266 474757180 187027311 627803515 438671394 844243841 747379547 820622019 396414012 768736620 422459289 730667867 373972865 643461679 625908136 672464813 630277835 857996264 415372892 454553632 418876939 541181141 244947369 871888026 641135947 708825632 518056311 929656202 870428291 935759681 2629288 711047360 536089553 652133930 197355740 487713306 65474754 353051961 11016032 490156327 290140840 876610806 561966209 844532012 561722615 718405984 624891277 901776804 6370800 754755186 208050941 553887381 487459596 688322944 193467274 724486056 36402402 431829781 382529535 834605568 621062792 810566781 585496120 716229558 248030357 632680596 498081305 949514096 916813341 991842612 462940589 554144750 283643689 761164433 505926486 943951756 621877277 648230544 543023219 623582792 410874294 822713079 389226663 501105763 119122579 413637441 87494132 357980221 231823040 258961521 128899218 537922573 204020215 210940224 150887748 321142755 199141313 522356412 256312221 485164684 18448194 118222542 10927162 867737254 757125607 848852182 5990590 716702224 595209175 885805107 235092510 530545820 396825476 473186704 24642078 706020594 66318599 482863276 250807434 981764200 186097942 889642792 712780629 952879708 724480131 754240869 550008552 615245812 451678945 525465262 365487358 725989637 62931469 797792183 165994001 831695785 135057207 604285901 312596358 841888809 90716315 265989403 236628696 943353306 692386777 993795785 990951413 996340109 667106746 958431936 781418858 816713650 357201747 377233714 313817400 356031734 120349277 980468356 855098017 863168949 357950958 986516271 329778738 817291174 215161973 324785024 96704521 240712016 145288897 983678812 83406135 874343987 37192311 72235127 11105331 823860251 1788353 296234442 111898338 417638042 68567922 239259460 46599117 344287532 53100195 666288542 615564851 764909598 67543388 797797646 423065709 698168315 466787020 579306647 436640814 706138853 640168991 917160821 166087300 272871835 103004695 446944825 58889374 310256502 110957164 724991114 621344627 733426506 409049002 880320375 671602777 976471578 404027738 894381429 679779082 971379802 802193561 862650957 642878588 704441864 267526916 406917663 174835762 256085753 10191590 623954078 284272364 826400043 739041529 841738776 461048175 558823093 462073534 519299773 492634860 827721389 43261121 283400598 228806270 852819192 356602527 923752592 518581816 611934485 86541530 991251944 300879237 787956497 40249961 257469221 142193414 369887575 205333304 753796548 745846768 793755269 168255668 428798993 133750870 981624216 868096465 962173099 142803363 419001679 368749237 531981137 399669634 705506303 645061477 687630745 317186773 991498680 625464003 706301515 374591705 934620739 651673599 786299231 167362401 797015998 596612281 936752188 350748474 620353257 155099672 415191814 132757239 904082976 6586308 582163881 250910626 767362269 451470674 564318766 518797374 948047853 536473601 818309617 432867411 957863241 285022040 288586822 209055690 422359858 151587619 327162593 49583667 109381836 49208624 216798911 71462835 78652314 56356196 549122849 89882294 893822382 592358820 689337851 28260134 464429473 195829593 304058134 167079812 336936160 267358686 964055501 738201479 944750729 572016345 619084702 544944431 911615467 90932005 210018935 129761126 560468572 543203872 602005472 37003880 630709046 308134832 641504593 93542625 278778952 32796308 901199180 474701056 578854773 397170915 568030520 158356122 938910950 716393083 966840330 392149810 839825744 593880431 713285475 673874749 927352821 106990576 810531044 145603981 717597720 429140069 729967454 512001045 554791574 160738726 462211997 156006706 596002211 480593387 911093374 235534306 533290967 193176646 499272708 109878397 344546276 321040677 878497114 299216423 465037517 449631173 688945926 58329236 646291121 8237815 654323396 316970681 533615218 105578820 425344915 196310958 579794135 537196617 670287000 509322659 879484919 370664864 754566352 358579300 444299105 75065563 634296230 27182490 446846902 264264146 747557015 296167798 296302576 38125703 958338769 86386354 626811493 105954227 819446292 90680032 538668630 88942307 573194530 252304113 553877328 178993332 938084686 180359341 596193683 180834014 275505507 212168957 220037866 208220693 755129410 180946748 413691978 26565489 470588026 422966040 892237983 624245621 918506049 500094536 583891633 5328598 680548525 143455386 903989059 366612900 515917167 283237832 585980076 307275591 905319132 365704425 603771121 82539272 435520560 335863198 727451416 67194805 648012003 67520769 701122326 537771597 872168394 416394242 813700503 688416850 949700950 258283236 482411300 60148213 855705031 732719320 818091724 761118619 925786574 820857989 970628654 606240728 927026510 498419085 967679444 230418529 413328350 166024972 401953466 81606894 746722027 128864107 765880137 748179975 886291672 276859357 839738072 780790042 831175368 47386334 236737890 103649836 497339534 154497910 941892353 731317045 835384546 322335953 594825562 114755889 961950121 586191466 806993121 57229031 111219068 25438398 991671875 144955190 844592611 98220056 665939663 611636354 829832513 390728990 912605171 683436758 993099081 490515358 946325736 210487254 317367146 17535265 725497635 488234464 594782455 566117265 963496999 332431437 823816803 54423049 948035634 875761812 971889094 85628578 685107028 684525747 802746865 797438832 938693924 831284998 990982627 366493284 488573020 129934024 525401772 161998320 274383625 266050521 724077856 339176744 496156109 394724302 582291852 419758805 593411503 467695141 576177840 512035719 877115996 13580079 476678750 367247265 882176464 209448218 782942050 685673617 876259049 750769502 821051028 565838842 611113156 32741314 424226698 141649868 315117688 296017576 809715562 36399044 530166455 33520470 66742102 55173255 255440138 71411131 258551711 70490222 964886700 74029923 818652837 576799169 796876610 104013449 332779949 118504238 933132679 578817699 656091900 134896779 282801720 124521358 606080845 217782974 882974930 277740537 919732505 268056591 334634919 79347726 761320569 101943814 546632141 455257713 593986425 428697560 990080590 170668377 222216604 46098471 361597009 237152951 804042713 217747723 219779533 82609928 562409234 217935896 239070378 116364382 240096890 81143105 500798164 58392957 448605417 122768962 617165786 26167849 488473060 108921772 684555173 194030053 980484847 662435460 941824705 406324926 981472619 442681447 532848839 258075115 932896380 75757227 721065506 549815224 984696354 755349330 796606800 226219685 994702383 566811398 728578659 537397560 844667207 279383878 398763199 317234604 818335656 185599248 738202293 554252167 754639068 360671708 963706077 39795660 244009643 54661290 492300783 265878998 275474008 267291776 799856076 739035222 915321140 789428567 914149989 175371793 765584887 4656 39504376 16729062 350085451 149253335 708384811 684533255 685065037 279465058 369145352 358638628 569790407 316168183 658165064 591712997 933907354 17252079 928557100 546559639 953766984 216043059 686482808 152187033 330236847 86206288 829164490 542265884 848797569 840837894 878719459 730444650 952520554 204234940 207568209 19284107 860338328 629963271 678980744 511128399 934573290 536842053 662747483 123264438 136534083 84413953 936377645 186133030 227870538 14239969 636422081 96948483 580682136 36284769 587362845 166783570 432202409 330362369 366711458 308909362 367286642 341078829 744177183 139589959 619327771 302022661 506128370 434356129 955176784 707482477 737152133 149805836 307268792 261402248 873045801 726017991 911867853 146188119 564267995 208715487 446888655 322102915 770570928 335354858 553618371 182115707 203167273 88341565 625520407 131321009 165383267 72382975 666720352 514275963 600718951 483426426 503713694 364059909 725096736 428651484 830798925 114365655 619858465 203286769 431853893 8124740 968012950 281683063 492810754 335389929 449014268 428097626 536397242 135242628 765310133 179574885 791545710 32053819 398197847 30491340 45907709 4800625 693249325 486538925 971958318 665601533 706532861 561293484 627413186 124776028 578994148 397282591 400279811 225992614 874957098 867640443 876016488 619028433 916031851 553972549 990098672 383074379 728517523 460752958 846070374 553024914 937503272 639492834 758951245 617718298 792976009 342557030 510615239 44060676 68724709 44289359 665522243 258204944 310166962 26103693 154877986 55587748 825774174 464516791 519663790 468627911 715105639 276681998 609564708 105596303 208725811 151039097 660035439 352369290 605292848 137577797 435230228 346699178 411382803 319263805 998981685 141583265 688924714 7799811 880590135 552473325 884848649 127736029 340365464 174696835 289086474 211227769 743923965 466998344 901414008 426456654 610654017 137579427 163477346 49051675 112535089 18743241 890183685 540261765 675370227 522382417 875831496 868082193 959836796 527060464 633012527 319165615 629799393 545840046 571017030 384871333 612777932 134778496 569034074 136535331 674380287 250410640 469358312 287349417 422432073 393568032 706703996 193542748 471786864 92079810 611918374 69240864 630894161 287241446 623395374 84560637 246262620 143744665 506343971 151115874 353519149 240030473 315518924 97039671 361874955 298657396 518029914 33122261 813914789 621843954 914228554 474770056 495084715 236261402 722676516 182200413 704182767 218497879 961585092 628765265 970876889 766777073 835067113 143770064 168448080 25048910 773960829 530722059 805992583 478430255 648781614 103843480 932926810 661210808 688229556 654065769 831309317 350295451 814129245 80037467 335780828 90131140 344458339 226593219 433788560 422108366 823569999 723393360 836581195 154740795 357287258 286080873 372691215 201316066 997612214 448798868 772765478 686041922 744436096 144637279 551171884 336719188 867424756 760657525 825382402 113183480 544780873 325273625 607269089 478195386 510765432 149144630 639785811 334623440 829492733 586603889 942361806 11766781 856561108 586855092 729667747 641580080 926967241 189045855 817494047 471932060 564488523 482255434 598163392 421935538 508113038 460690149 707511751 402245935 500423925 389998894 593252711 5247721 291348114 103962097 330827974 196662759 689764587 629494487 727260448 415437626 544603837 238421270 490754559 119466414 350741062 330238936 374528514 269567695 961032332 373631256 525135703 205380914 936857271 907302991 921582123 780992323 878907828 68848095 415942719 229151449 820546967 448474398 751457017 17246700 956266806 793944484 854537344 380479920 444277825 304127597 520796303 122493017 330847452 170985098 880189893 669267885 725051101 528041477 641866468 165767498 239067193 73035393 863793112 430923299 898713193 81357680 275932327 270795858 338853268 149818883 452946017 378957013 437749899 385471265 979149092 846375909 850998034 157316014 238421932 89172588 826276274 586621438 967991677 793460852 856482457 587670507 735054557 494166430 594476235 180193667 412069466 269412545 984587942 634337495 712944939 5810530 74055576 17791090 353310714 342630161 752531790 470735849 527647332 255720885 493635675 222600508 796496090 200249014 608779160 362682540 688348976 299292468 421668739 255154058 678872901 145928843 665323315 153223886 964034079 748583636 870805293 599611233 813389737 301283962 344629296 18472501 211270736 4694373 401406114 337417751 806984741 164839584 787214542 35843979 428812693 285633278 935426508 725592426 900265775 191833944 693441710 287058260 679679579 44618229 704634590 654689601 775519082 531845814 540086263 325125757 471236650 151795842 863400566 284664819 426326054 226736392 755994946 149389656 991299360 387003048 535474069 132923725 281895350 153207209 969115278 530920525 938978849 257752758 493897438 280182049 689740253 360750273 390959353 212093505 989353207 623211144 897914001 101733966 897717161 157707339 560767211 489743049 631538246 400282068 465412042 128890786 207591811 86340245 371711579 35007408 479037318 245866854 625942052 567986325 908973990 582749652 749908115 36162652 669004043 197791945 336183703 132464571 560096116 252225809 275323005 25819516 563080139 94644576 823950293 111324252 331915920 195213538 852679638 167593406 214291850 34577738 805778318 183273757 260426259 58874830 797738352 729654173 921910608 509651257 582092678 562298646 692932030 192163727 692005795 381621577 649402177 612645430 878796860 303582984 839854918 704822865 913603263 93518361 943660091 735301293 998373552 274639648 471516681 199580379 578706652 267495835 990074863 450722634 611122338 303164651 963587956 263156900 295012811 192727890 609017216 55573453 406722722 199492398 975217326 257141988 947436435 790132457 822999690 529355406 866272742 448482019 940645585 487727970 854375175 398480707 745104234 735341553 868684515 445853301 868396065 483150405 496887037 170261675 499919518 405332312 746554214 262721637 361606229 143098552 615325234 497959705 841038175 132489510 145303458 128978203 565748445 451714492 829364072 608554604 657403940 124622235 925213272 647573442 894408017 687960393 882128797 518490575 619395764 164339209 832001929 13744660 166199298 118456809 815756389 590441126 890430108 734483466 739062760 342309150 926503206 296694009 683895304 405132438 716567612 533108236 918783091 87504967 985952242 112303908 477972633 16798479 757216668 212269005 365864858 162565686 617781529 3584244 994731790 529298532 704594241 93894220 297453179 60231533 996457257 809541814 825857816 571462283 743912001 583257020 872146638 194830207 426733270 408313224 485360123 462029175 778119288 653402183 887443739 329295128 806949825 330443257 941252269 484430662 995510219 986879345 989811748 94535387 520710364 359361691 654212040 631229480 873032342 522749009 966749747 508160691 822389777 83622421 363544214 330730158 573883565 52041383 874525997 704850606 722404036 558211671 844236583 438526823 764215481 722878267 754790087 334195867 622097426 446486353 448654954 163247016 793473143 81849593 535830114 147907005 676419926 138361558 655920198 284163283 747543838 26517134 806071696 744852048 936166919 493818224 883738290 303260941 790078802 662056466 781863323 4841994 556325571 261458188 350621293 475463 195370408 74749862 898830991 575438812 965582420 863049111 916614608 789779693 876072404 845275908 951032449 669955514 941369514 348561340 904218514 769483977 997144286 183963752 592158564 121043148 569693913 31016464 245554395 127492798 487890852 351985625 536655168 410874607 654413349 180247227 757774568 175195124 773229741 234507562 996589997 425081655 976616550 755149006 758798409 297905043 563048885 236718363 678637009 107438205 109710638 47141316 295530410 251331345 680576756 134985260 144942020 44866014 148363961 119131266 432683170 358024870 713983651 256418959 503348185 442612166 641013058 32079436 570780204 69373349 822828359 342311701 535699665 42100723 605450871 350140866 419436541 107920305 909927709 260171258 958484584 793702185 990728579 873188962 881063318 344060424 454799394 367836304 473324254 178258657 607678047 324853853 599377538 319652260 662774745 358050168 638225634 518410485 671792060 563481107 917034407 110401184 542166527 35499516 484358290 22230188 421563466 363463260 550138355 478444684 578243842 555074440 572388229 267959458 798105217 266933736 716840537 396837242 800681471 173041707 384045202 353634249 661694553 634386995 716657993 203217843 373839221 255932262 518400848 152800651 282253645 108667842 877380915 115278332 148647684 109375830 293059091 206215770 684051464 591682233 629463708 16498877 113754738 86351115 687205564 155723693 592804050 207868547 700835988 196477489 471073163 185077277 527041421 56009833 717642553 367779233 654374330 393776385 721930112 233010283 473273740 435939659 712853635 463499944 474203707 66068571 83071751 82329583 343696566 262514041 776705597 227030862 695870633 140228744 167012952 38136557 112747714 74090571 964034390 727031416 776566162 282730039 874782564 812388472 916583290 803780119 898699239 33266715 826854087 93339193 547877452 69143498 126752783 17003649 61889345 38138367 677128286 251738066 700945768 229259303 561611126 204374588 390054792 231202639 802528144 379240210 593344843 91627976 377929266 235356849 241022766 151485053 160438165 68552329 394737365 84666343 659323498 563292247 663132997 613264191 951222806 399102987 692966542 282193446 711304307 492830028 616116651 206544876 255470091 59367865 100602502 80030454 180107425 43147569 623172648 381626451 915266507 599519411 844455790 268086708 424835397 2984191 843567100 648978571 998749051 346977102 540423198 10189195 354886636 54225407 205474238 172832588 379340984 298552203 957557926 474327733 711299732 623870974 975541321 14151246 596875939 186888423 520830890 140022649 756090996 156183045 567664411 20058859 20243659 16121883 199191932 117978535 546519853 47654804 305137897 90635159 606054297 212107402 734859563 541120509 609514086 589270145 976681635 776490530 885310467 348504758 369825767 306962734 515957643 265023348 288955452 52184715 619558953 570483886 725268746 702937210 888885942 626863023 848842702 110215817 810377984 437853720 609726064 520669024 865726537 530833644 896652105 466970628 852649469 133885015 139990568 9558641 19849698 18239385 295619883 229565255 622679169 520931929 565529643 362688929 638041137 181834112 347508032 134755513 393152699 365066752 457530427 257543777 742423639 657289933 974127337 637449720 660989756 276786736 833692004 210258537 581169954 283222718 794055484 301698526 961696103 878468309 895767766 181413653 475933032 235550337 569926920 55571298 75056251 57172620 793900633 526905810 887815284 99491703 902424044 335877865 476933826 444642211 562918284 453454307 566486288 434998898 460187148 154629366 640184178 557662807 570580057 134587052 276681164 45857303 748618048 588580761 986840768 470940451 750831617 38863054 995873524 671334164 864863023 136710026 346600564 298301984 636532819 187967290 424429138 337789445 461272225 7630831 94679117 40446352 253047733 136031572 295801769 61661474 160767184 115032550 511862583 10883361 737466739 724592577 919932778 38744330 472818305 163729332 166255675 4513386 689818504 509545679 911336933 604190604 752753347 657741795 962849446 803311332 813547225 742180648 845412670 455628184 772717651 193689118 879181984 571479011 803913433 178560738 567874049 346567597 660298375 632414531 822201527 58400478 849673149 439032919 533026510 532110058 876046044 189624964 423448781 292318644 316152096 156960065 871801534 371647538 477147872 329174506 833397525 331420431 696837443 541972625 911962475 27736090 988510873 705854365 757044724 130600494 181259776 133339903 292829323 87481434 869787566 543371231 726576074 134767328 430706856 78306281 403312771 206966483 503003965 39287568 221171146 216029710 959795212 384986448 421824838 411604554 934993325 800102242 939856785 440431381 753210724 322023957 964923486 875624643 962507897 30112417 965830607 728686065 830748350 397939520 406594386 155584582 986128378 971651989 998909503 126575069 889645622 629513540 749390710 550928786 978911705 901495131 971317154 960818537 966816195 803764353 926655767 598716526 820961272 515812745 594895351 414691960 456486208 338126698 635061467 499209678 547940657 160446098 878287382 516319465 519031550 269477204 745814803 315295155 801258172 566482956 959297675 347554806 612208517 577016641 607117963 576667639 835793147 833753124 852962401 552224159 991593936 125053229 898856019 777447663 825756298 241264553 395833828 325493219 548170348 52660214 491974200 446634519 956113304 395553803 941879485 611467364 747136517 644691511 672772265 401224517 944824803 876351819 968205701 495541707 540647709 446977997 757569782 361763978 993389580 10583164 67449958 52194780 584379242 314338228 574566114 119267302 211632231 153358428 341346360 67638692 485797332 485412505 788951306 469164875 602255465 306371033 675911385 186696407 256908321 225441048 870247620 725633787 832320185 378172753 536086376 34019544 568415147 125624744 434418531 365409535 369723728 239785347 693160524 480448946 903178755 807090246 921809721 336828147 575477684 3514381 129645348 19112824 681852645 546507057 823948108 281125788 300063549 3361798 145928445 70698022 437113581 248569259 526857558 273351016 875215098 654927977 818953110 678267834 893312791 737619857 921972461 195643771 966305458 308812108 920578007 48419217 484320539 318321628 961821544 126874224 675009745 250398916 620041795 566956902 742199033 356549709 951845385 366828554 665590721 216180375 258212335 25547708 667484018 538138182 943123097 615838506 887356106 105881833 876796287 776208473 982622342 917308994 954981853 175083008 243971868 58841998 573806654 127415532 460680680 458958105 776839816 135829891 194648897 118866080 208629177 76228641 336884532 108435505 863044713 488383459 606527145 31168934 433247550 428497153 922203392 558108526 785457775 1386868 284543885 207140595 550416488 276606798 946081565 749400428 802962003 79518084 374359313 152074385 879180206 255384239 684565618 82361074 606885976 258140684 342537229 82412548 657041152 10072779 231903725 81733893 281951428 30341537 326902033 137240727 454700350 220017672 718015790 511950077 768801026 195977391 835120370 142472066 600614889 67834515 806361425 394939182 854011499 479749947 508441435 4191982 200821188 199238697 258182765 254353693 933350735 455766022 914995542 131775448 560223815 293614765 772242852 695483966 943213533 621021304 968673813 82283049 156891225 134280245 321905226 133027404 842552121 391453692 411676995 258443397 840526359 54342717 281509311 159417964 305457477 249999948 518237855 112256199 686984248 176942659 757832889 439857912 739818997 203180163 856225016 533455923 658255879 412885554 525152786 295798000 899702371 169603305 224524166 178636525 876993889 273506860 788372137 356340688 889877557 783513226 948203807 368697657 829275792 49931584 485217029 413456791 469333273 296498109 324749330 66230108 370225358 318318490 884636592 333146134 845857081 572584587 960925799 31847141 700748073 41976540 413130400 43524309 699500393 517680974 784314576 783722098 863842181 854438678 985950912 88074115 357718264 305624030 978495724 799161028 886244031 438221957 709652462 677165808 897006349 746873016 753831918 404491804 545539330 358892740 574624390 337375878 522398805 423533078 746339803 293654282 977044266 80837447 843919866 286087970 499914077 415801129 680293392 510600715 636624434 239923897 928527422 96851584 807394241 578793989 595845001 287791190 295470740 269816209 655769526 536963644 926276174 742277418 786282901 492107257 668889833 341667002 671647397 584193141 595940023 204629085 874129416 185011729 863072789 767651111 985454981 211569224 889333588 32240559 117910184 40045866 209254287 114338426 213718471 58986246 364426292 207842843 216727805 16118999 976706532 98404108 129219044 55991467 196486816 79230555 250808844 235431110 366878217 79472272 92995038 39245684 675967393 148206548 633858610 341905514 977371955 532704146 882612934 474695243 541001759 76929345 206838626 33354384 596881006 582977919 963660535 189493978 960667928 343674357 526839507 137689509 992254450 428717430 839591499 164049396 295390617 149564772 434874628 384316458 659366127 634106082 807184653 234888961 345055322 94074624 670501474 449883494 650316063 633356494 694178679 42355374 476506449 464995299 647167945 637614907 644519686 510263265 585462811 119057733 769200085 281492822 986868775 851203253 908612092 297659170 864822255 554192350 775818717 580426347 766915010 450715470 640577336 44409879 218010649 98095688 316725535 211557703 734462730 453514377 513991759 53034031 904733251 849319059 849980674 830651973 918300847 184998681 565525190 427599284 512879810 136073123 649515398 430644867 937956330 121006608 459953464 379318922 662815161 373830308 891872350 471898772 791774999 37973899 607244999 440826726 679191537 606568844 851602553 563773910 818280995 609595119 817727665 496593788 858489996 525075175 580182978 501115342 569252043 492769254 507594428 319824911 326054726 224821971 850608973 705664971 727858045 685981127 945769834 437459421 616648866 88719380 497107815 96341975 282876234 219717243 849081500 528546 201091267 128634972 693160703 589804169 647010959 9515472 216318590 108957184 603782626 163359565 968547353 541080049 963844375 395243573 982244494 803992881 950682507 560370019 978220001 940873426 983017814 838667339 855501321 98563343 354137356 286164043 293235066 230628109 748523014 689288208 889550357 405750781 895687339 35261890 582077977 292384841 358763419 187881245 528632018 241648433 780733864 713753372 860447887 717163857 966806202 131595275 502364629 482347318 979226836 146862402 506347205 414126032 673306392 593637105 788324361 57151685 207834588 65588103 372059433 137515457 929545420 911283246 911304066 90662863 264289521 249523682 860771275 502120278 647573247 346176287 832193476 559639182 566301608 305886915 432064803 196661946 904915955 66084932 834083565 555249278 866671472 681978211 691351621 93479903 654656896 475818029 786267826 631961199 834376573 536078565 792012167 726814864 837620957 515323141 752533341 403248965 542910749 69369105 348814986 219861599 360242271 145373669 332627311 287484625 408310853 374294015 394316814 247208047 943691951 30203900 79005776 28756381 119724072 58335295 850569382 103696340 559918535 332312212 408307460 371833038 979996854 434938795 912521194 666864937 831593523 414930822 535452427 489613205 540703893 412235310 758742574 296952137 878312731 623283348 880729717 751429550 812470949 42193833 699475548 436764001 711835171 390938967 728487230 634757881 954510445 82897726 859872601 31553743 337507443 221652544 520735097 238624877 599986360 514581500 576765733 87195711 997978882 510747294 865161014 247800436 383433363 162825259 642116489 195929334 945718325 108479413 132987716 103295484 882998408 826512480 855466706 35910313 231057347 110121137 306251666 224937475 596290065 532112041 661477806 397822777 736743814 274759150 815673325 87580263 179945891 34602316 359690992 334674182 362169700 99743732 973837850 948359315 998268755 726924349 857442365 83976396 527400107 397215687 440031759 285026814 292260568 264615394 765774458 185615987 891917046 46520510 673246485 397981945 957683547 154544614 661055927 55112060 234151374 7963754 118026779 42537514 446329203 396274306 513078932 211339411 258034222 145436008 489025679 11984759 441455938 339600593 918154331 194912876 705867624 450832481 644939771 168611898 642532453 326671416 731967876 323519811 376781783 103536785 818952132 101573579 135991526 122959633 473920140 2973687 394457418 65197596 905240490 68691226 678155570 190060116 945893372 705894760 712126683 289119132 772481527 308532949 734837170 396800414 539425136 349817888 503431928 278873511 402419014 12079236 747666120 125559164 475546991 404104435 620743324 426301100 917612614 912094429 924426922 893270448 932121421 828626284 937773043 410215740 713967731 134193848 872952572 655051563 845647546 547955350 937023721 26618029 826338797 424921501 931623797 580853613 723600198 546967757 907515772 777274926 834476523 660007086 751548481 596630359 736135775 544298765 727232590 371384664 766140225 28860671 359203304 268283889 904900024 733291761 874980061 613043942 819399801 531288121 771602976 172436563 814118954 300666321 838933544 167708424 572047337 300662167 601515807 428749729 754792790 614344440 727058273 689914794 778041940 446177735 657056629 62874559 615986307 259104568 632410446 579324088 935815743 391110013 652854729 219342475 918444413 45925702 760709450 594356063 704775653 624491526 706701325 181466076 718234086 502375212 826989148 255587338 385253441 104544465 733697988 317900489 779610758 656152548 828894354 592661211 987478682 528447023 643029069 10612934 331842579 162483168 640604262 100649877 263903622 263232563 984373391 745345200 835422403 409332047 440322337 214247275 512150844 374225741 560217245 399283650 458896652 203865660 405451775 111469832 272076326 39642607 264737979 149184899 911397264 671107395 861704677 13901498 665720783 362776943 798977161 762749864 814079023 210859798 954048916 338080804 442456792 103373735 410754234 328622627 943566699 435885901 647597324 357992060 478733934 391325304 629823408 246135712 794717071 425097458 903771159 344569015 822719137 66499356 545677093 232726388 789083398 77104577 450634317 14020783 867281843 720451387 732242155 125539458 864334605 563289821 601717673 266177548 434156031 404070611 644169195 472823743 978599022 353290909 494991802 201450423 491307723 184751037 776134021 13981023 453527641 269379924 453270913 144983016 350903585 31361675 683428943 598414010 713939450 568258160 730926915 546004045 885338710 234236345 830335639 812307715 927500564 387435883 567795810 133061342 718757218 610635656 646113175 598822251 801531514 536699977 736822763 229328593 238535743 119572329 699149172 98758853 509427943 113423813 505456454 477342078 958699246 728981340 923678592 525926958 826288091 341957803 609840938 141296343 635752768 497206929 814963356 689764680 823390330 73161581 917275302 601569021 708377867 34218665 849976679 147082707 228884319 41983531 412353977 255628370 477709392 222988089 939528998 462299999 793105336 717209783 719860994 640114165 651777227 306545674 562642010 381238903 927503168 111812964 806021758 677921104 906689984 480160576 801710512 730310012 936700292 798889260 898000634 577638919 732055937 267836625 596588497 296684874 901463496 636255046 700581017 362327603 499607346 71270810 770515506 81577437 368442790 46817552 832284755 89409473 272057472 137582191 417136494 202526664 291187931 77670761 269327567 201719239 659654274 598667455 999699036 33095054 906424758 501764226 628041017 243119912 785499114 616998774 919873418 325796647 333873989 2808499 744674393 155411067 281509363 66342433 621023841 125576986 949224436 834259016 875340753 142828249 741361168 467725296 932895917 906371788 937652171 495142725 846434508 691164136 823934621 624391577 709240973 603040248 718940192 241987042 588774211 176558931 235247414 109088455 264057909 121126581 797274756 597420134 680833793 293924422 627118440 481689141 923929988 742462444 978629833 737737488 982342304 394719068 550583478 519070056 892616552 571656870 837003784 499183655 798364213 340355019 764655130 73736035 81698787 48226853 566852235 139028613 966088102 771223119 895945372 776940992 805113784 50536145 811798743 284621386 305119536 236272568 461844904 98275603 736188886 271445527 543410044 504943007 527220274 443868556 564579739 432210102 798439952 127831786 889534233 413917621 433168249 424297924 960184047 283339631 560050893 203189726 217993711 167164163 306446695 82171112 947676369 407621954 421787198 87797440 874146703 274183347 586822238 479380650 987965067 392506372 663923213 659502588 864924649 323590000 726505975 307522215 723262576 373190622 604274671 303705285 819048914 13081838 916767746 288055306 922035490 311266452 687764541 543240725 807904786 249730574 439452081 144020591 545249278 310527716 316551834 172483859 991889398 541037548 764947203 665506384 908651451 143688837 886764428 374573555 464716683 260223879 895448826 872236486 896737222 52970124 478130924 387408686 869734136 732664672 906902790 561546094 690969030 273644374 452509673 441380191 593815134 420284942 494989026 206159461 426175931 369499420 480641117 360220297 893097772 140625003 525854587 428550977 899064787 757388471 981061426 214048954 861613076 358128490 927692123 20447102 874973382 96776985 545035505 239740045 475846730 320741874 435082304 132761254 514988698 213765570 757877170 357145829 709941869 50169858 709937577 622842575 789420113 303738093 588967057 449918298 735290609 210449001 784808857 9387096 40826518 28547616 808625287 392308195 856145672 175353255 258635795 212807198 640949372 397985439 566693248 48883822 397689360 132580975 318953215 4127778 633722759 455993893 667284553 137855318 618660188 452768133 801826152 557545440 671693226 157458462 983506051 666091851 761566992 217333628 577588576 1910385 175325824 91440183 289692185 64074038 130109287 125382751 398347045 326287110 332016964 295302594 897395057 273657412 804110238 795430516 843939643 475825934 681976023 154769080 932905611 232446773 707672023 78057363 364118278 346118441 792901624 84392920 127589694 900878 740670583 581797782 798530823 527690056 639330005 527275247 685694190 90484848 942904003 815068373 945740108 136692643 935229545 583560004 865775479 623515267 671041069 670934526 703305917 9385146 712513362 388913355 670635497 654328469 715898051 654092518 910151638 98423869 378545202 329404321 906905519 798399935 809943543 759348070 830873016 738698348 806913026 805094885 828341888 643545483 881773112 354258001 940876571 673686645 785932281 350964952 431930634 225047762 405282179 261465753 682596382 151036523 351788227 260868764 432786189 35737510 298050511 207380991 609597875 11255956 171704073 155298377 925643737 754172817 973080310 334059762 901046449 384905236 544429423 257771551 566962917 166436805 634137839 500561756 758926263 248410101 337803675 93006597 407057915 42731593 352355594 19911893 47015278 46545193 928121317 673055311 901379782 411470024 627616714 447183451 691231896 5029119 90432608 40858705 405773502 102631189 975743786 390170366 652992410 72313445 345142319 264190951 473197721 420127756 906486976 786782874 929857074 591565877 892628869 325912844 404616252 68622641 116250150 17313333 374112561 298854069 804887997 679039942 906451901 401083296 874182449 729336878 926447511 275344753 341702783 337361090 589378239 148149 674824672 92514120 144565286 54982230 930071260 114041013 392811392 268886979 522369939 186064020 596614735 460934876 723622096 363210587 585191872 447724461 810615546 140333729 514395322 106450256 436529496 185972621 600218620 59784682 834426113 182105339 708280140 304002277 498947733 497428121 604730289 82456756 209226068 95253938 455150082 295526234 434722621 266922358 311960776 218638052 764135655 161656020 217946278 93760520 827917215 289550249 796188461 96663691 459485096 388374834 635670188 282846731 607541052 21882348 629168857 280718971 702748930 668131258 963247254 231770987 680352084 85235097 657157473 537392397 608378672 121885358 699873433 603672571 963698638 545098581 899884167 391637759 473709617 188813651 747493183 194807977 914091550 624462903 926148793 697123565 718741335 284520540 510255580 80049353 464338821 262981475 889382760 399334505 784796372 408106461 681818716 428621587 889396651 162853569 747964572 90472003 413696752 56940436 227751515 190778875 437166829 331807459 425455431 334539531 645768413 556440921 612087705 360492499 513785312 402423451 704056812 224930976 682916285 205537185 647072555 441100908 650855763 321897105 748190587 498897151 799978251 219320216 859565807 735854620 945191853 186093348 908617138 92490803 853737985 655689566 910035319 745189991 950440704 46662088 651449841 305827181 528969531 11265155 836694325 758797589 962671260 766828147 839589073 40709592 288105449 187281146 601704845 508382419 804098713 693732469 863545241 615245251 976891893 249999910 725215158 205156454 233279056 13702770 943431759 116789193 708575391 290401918 301166427 71962849 693009459 321073530 550181101 402700125 515579483 138831623 296733862 182888361 829525456 565730520 596392602 196022341 530846394 311351088 927514991 445958104 973643402 259696836 589905609 156151553 885259116 34843262 560281182 158200567 533285300 333330343 844778263 347225542 358107154 335513358 608214043 486870356 524156075 240581516 821604642 798368186 890294742 697732569 873358915 544153567 988167555 892307624 893161653 743739535 790543558 624508693 776423873 413334725 597780439 50048730 129788237 62629400 824362070 724556791 908272038 128119807 570404987 351819059 857874484 226066823 540197041 43542172 486292931 167391011 362817116 245166643 898424086 628707534 663151706 44485695 952776235 916983307 920070672 687770699 968043924 599132056 865798866 453468771 719191398 500347035 774088777 675111125 825566864 168861437 814275961 430817709 996181362 387997248 777102087 345900873 720246829 425827643 552796957 458808029 656715636 598008649 766138304 743245597 986064916 64915915 464074770 424743648 587532450 108728271 858485755 147952302 681862695 90091157 196963454 124433825 401260984 312564751 725222384 438017886 681294191 133383560 380401560 126082311 334562476 255279208 474580051 406180653 608828378 393298055 790807897 300952332 616729152 596708413 628296506 158868478 792046297 446627599 698122893 14862550 861670929 853236865 998988463 525137331 784666627 573934542 581215283 496102623 736764077 520583901 991325708 534068279 578254770 352266457 933996508 308829283 387927042 94195746 651176110 255605029 714750321 177623533 840523126 605605176 617288735 112804781 465385025 156993202 243039094 27242307 859347297 401867946 650744326 462020080 590779936 256837670 761007852 522015752 540504557 237018722 611669205 314453096 841074626 596923304 811977212 604404343 980154927 783755215 895874588 560524005 627262050 19658601 986676085 626863345 906515139 903149597 924780271 256148065 458046180 183502472 504165513 482792831 940909656 137099066 664355548 565551565 929937571 561244242 872300505 263151426 285794705 81734612 587160129 412231418 757143472 386065531 734771272 253444005 927458982 161115944 626092817 552792225 585814539 471277571 921556818 617084946 980337550 662262199 935153411 752112 629323486 139610882 624496117 290293511 510885854 325721388 711321681 356742637 716236284 190497085 566983450 371316705 868116823 26818145 118782721 101436175 916078358 710765373 786321092 466095020 991669333 91207738 183754316 112947737 945630879 312884385 396709080 299267477 968712293 261400242 531836959 297619390 752977514 65882307 975825764 420007323 542465442 500324955 607718073 517151050 718870439 38528385 596175189 524980984 603988882 267124084 880259392 769943439 827757355 553364520 614700181 37554164 199311802 187221750 618881504 163525859 254453502 62614483 650215564 95122440 566402255 443323936 773834907 90076875 732019621 60261024 402688589 245148437 697909858 360360328 868576546 140846679 155915990 112273 32543632 24288190 83279774 12346358 20132183 9700240 226418149 22931777 312955079 256084140 906261416 676943447 722780178 138852517 307467711 407438 755720508 621232955 672678477 162705489 883164718 249317148 683087554 84809666 113465838 51363875 286517102 158125099 649100152 250504942 541404842 502163214 878412500 253724450 537021449 154585285 417433880 43297342 532810799 285220522 368059427 19529108 375013272 72631549 973576204 549059280 703610252 377340799 877398674 480070647 780031701 187544127 312029322 222207829 240526260 48490494 312936869 114495678 503680254 101920784 456190242 161582925 830995136 221010071 298280262 147668271 530669152 468201147 758097825 211566678 422549653 97458066 440796558 16788825 165200517 22623054 163674013 136107973 430375224 271209379 276545704 268795663 706438784 413112631 726703124 424251949 513829505 106731332 964663441 581811963 885770065 102694442 201058178 79199582 991701393 755899716 785759409 392876971 907599438 823606829 931558670 660455505 820339356 341814372 516240414 393829582 636673420 412539108 547447249 179229979 205601565 196761819 359641605 183164658 594590233 212643985 558259351 140554191 631332533 558301243 985251218 467134621 697160226 661251493 833124514 716714195 902772126 4554380 215885626 140411974 351804147 83245660 982347425 256064851 337702991 146599360 995414104 656872240 993078421 493728536 894326520 607049635 898062691 105822318 419950252 57415243 222714883 120306485 862107910 111996140 623768492 128381773 133677929 99600968 207491899 135241715 817396316 762257977 788602882 136003315 165400758 113492635 475606801 322769773 503603255 107013088 126673736 115767853 796512811 528448341 842066501 141109111 251682463 211294704 434143575 57262787 749907629 410480825 687635033 523689987 566576981 396310447 893626285 858353301 988383604 862129423 980910753 561617958 658143505 54972808 406140376 14487274 703972406 487634582 588653264 259103643 387229902 51599110 470120934 88856430 441277428 99259636 240308545 105128443 158287987 145878277 628305276 383092007 386413213 334223596 746028594 480493215 627567040 128842330 385198519 354993260 535528472 116290993 253254484 249990207 855433589 351481712 705332187 313557589 509745809 232224222 427051049 362788717 785700255 145943724 845122125 517030162 553554981 285179947 529859669 24636474 385648974 116392010 485063335 226600540 537438406 133703687 214606286 149825869 933409347 130130000 152081504 109007525 803132494 241597928 342879294 190117078 896946609 786621290 962733649 365119319 439749931 305093258 345588120 323233586 991014429 752175936 787691613 756124608 859066796 563981361 682674769 627219150 676620924 546486311 651253109 45573429 124273540 81870101 741607195 354476825 911803797 128308438 787697873 217060837 966664109 912062954 939780360 719583582 790876659 113562600 854893089 415157522 886078949 140272777 153115754 44020905 375820598 314170093 845269107 453386289 468933585 460193607 477058541 459702576 756146524 405994680 563496717 295972473 377089387 258782751 978181383 702846253 896452840 840233093 977408951 921047915 972361464 492833682 614377024 72456217 809858773 656770685 951435231 224925733 556138201 468869555 749655919 46366598 901586555 427413620 959631850 384209989 660599581 235112096 634582828 287660086 933503950 523182218 968114032 202656829 533539687 281325146 992303084 128258022 735997792 378421775 897311715 388937087 867881660 98589175 213989654 25397126 445153595 262436252 433438556 216460346 348557761 35139137 65524383 18239890 157291714 87082691 435067704 342360645 371475843 166255984 828375915 228697897 505609444 116619914 138339019 25309881 105667155 83534792 408127228 257316234 974718245 915977660 927162969 383208243 730391068 48931392 490214632 332777667 771107387 702651176 945670702 860078363 868061810 69820096 630503885 174489747 557759350 240823487 389032201 211669347 346130370 119469922 696480357 99432484 130247687 30353640 257035785 39334138 896898261 453524567 942951922 906503142 924648758 147555040 856791530 654589077 969404296 195059006 205867024 100104945 223592880 14335192 787267909 135960271 422885875 142762093 291106614 30305213 265135575 177570332 763293155 305635212 927324968 606843311 686455348 331036057 581637037 148943587 455656321 199743653 884331663 878053303 894723735 343157060 734560074 555382635 940430046 432440127 865532384 87436927 948548380 538450560 896272026 340119769 879259756 41742703 831246767 415732101 443485387 309324277 475652383 424788724 999615439 787411851 937672708 170755587 558826167 407202549 449449802 208256860 649399457 553775909 797481193 413128113 941128496 649098064 728968370 304092162 557690314 70653519 534457333 414234113 589671788 65314864 105438187 44447654 746845987 426520715 650238185 225631409 551068491 396769034 905979935 397361178 702062170 500651848 543109908 59551287 931996054 548988446 644985602 68228721 173062727 86613444 917757976 849802254 993444107 924071888 988151835 847933408 979605813 105773986 838855757 347927422 827702398 320741550 428621958 208012292 838201205 681603388 871897592 817295277 857835727 614936265 643086915 379799591 793504768 779715712 829839995 94797613 748226126 91627544 567236269 83353846 127554325 16182946 871622504 54598172 824441342 174755557 706298601 417381181 713807143 241357185 388089971 255559992 479089789 440664030 714099658 116664202 915040633 307335566 831537560 224237276 949214605 444401240 814735828 319894468 911107986 397473594 885033165 12535114 968704614 335259092 866148027 761248182 852095036 673211017 774545224 639892462 895876204 306719853 343765013 203482520 228289242 87827773 258269716 221029825 799901735 91818444 638408909 602192966 789868550 318857505 407346146 110534602 137194511 63354061 237330280 143659723 591242417 55303745 655273518 69605567 886714449 144312225 510784999 140219467 741430790 22440611 625189128 398248172 430104274 99418264 131108379 34746395 353170143 107299716 926088705 149947308 888562630 90447443 743770148 245629079 347371225 87703373 858126300 36106701 756450826 80861951 166071570 34721331 620606776 167558222 429155320 176684349 328655184 189184394 626703181 239118536 364309513 56845576 643549991 487165809 671521313 468058330 476164644 231441991 586280559 280815536 611725534 277667633 437070476 414581204 758733749 553893157 875167375 530635268 689107280 668011481 783313455 534269548 790329178 583262066 673143507 53278189 837634101 559386603 966153749 774722803 906382151 564130990 793492272 70466278 850405629 737281994 841896804 813633128 883591026 252002473 938976446 424955985 458367795 42096717 530948929 393248481 604659281 439730754 738555533 673304451 918508951 309956222 953058597 366510318 372363520 119078546 600906625 239299742 756713697 277262031 434429539 106059334 482133492 449328668 980874516 337732301 568230138 114868395 371417187 207635391 282331231 63303261 506470351 224667021 975367634 850460787 913062356 150033239 435732748 59065731 177399899 71055620 500357288 359724689 925498134 184684809 293388882 96655190 955279444 865720096 966343121 80073101 188606779 153922762 245782409 29569531 477888521 439651072 683830737 337360842 881296521 866513382 933546249 666023884 978840417 131768134 627997133 601095946 974814846 386081892 845995131 438391562 649363074 513238691 741585930 48240977 175267239 63723196 677444471 462528477 494129411 488576463 491615376 128737403 143332122 27755164 503706639 222142822 259179863 226856617 291068404 156633844 161286753 73602247 735546649 507035620 960303322 756986280 955607327 670217290 819582419 175751885 513945328 390893017 889680976 811149698 999003660 99741153 161593273 37174215 338402412 280773257 284773696 218716660 329215582 101833499 810417885 449265185 593072896 125167889 860547554 806777045 808862917 542854822 983727981 176992903 253035735 203620293 919007873 819754160 911986647 832951565 933108265 348171611 883333311 635552005 788709310 708602306 805193750 305276098 853547293 819387224 909047101 328766453 994029417 883068076 884741997 569480575 822700397 141383412 590066306 273390681 505989589 475652918 792998185 635472097 797504598 185098486 391674297 118685996 889258340 562802877 762478210 735699114 739841193 197178033 637882167 442291958 590375722 186925800 491833139 89499128 574686314 257725338 692078410 331463320 626853042 194995438 404725123 54178751 440163995 429874730 450661063 78140741 313665380 142128940 562052879 505012784 911978383 195395630 784472805 418432192 914668625 85312773 579405402 510645031 881517210 37314936 206688567 33814059 296156278 115977214 429176966 47926663 547200905 59326512 222700713 164635896 758386298 318796099 876534232 625355955 983041723 153530295 806918375 699691951 766548154 116336352 352657014 272751814 301130722 287535727 420644082 255834787 882468868 528168348 985415480 241854935 852178345 654790669 929316640 142816604 298791802 71000708 731218903 335778733 417390325 325095999 810272299 370462995 454238517 10425718 384096019 197987685 860833372 141681958 785880539 716366330 814182255 700084453 917446105 627648303 756454492 644395107 915303007 718488277 958872013 229165576 731783835 625543348 662906923 225923989 686984044 405154965 932716729 685869871 830519723 665757974 797297861 554753090 697215788 296557254 889105481 87344647 197571153 50748926 725917518 298422908 768836301 181603626 597965865 254519042 599955960 507336304 888349908 549972441 685317899 600263880 952719928 387653801 748604225 427874382 800847666 543882434 772482755 587614534 710455286 210149762 981089378 835025796 875566693 828524584 924196747 509383074 826943742 515196911 843090730 187274107 303217882 229759499 285903142 67454969 601226879 308990644 976493975 165399983 353310293 151516498 683792945 611578861 968017928 904501581 986753990 116728590 210835831 86483437 449520453 73785907 754521263 250425323 770355090 187205164 678824380 650774618 881603889 615230261 894957798 756026185 842611526 602134263 625381925 530654232 855649126 62804154 804851192 549866846 926673553 373259042 803516388 711626980 771665208 386083850 742358850 701607713 887716675 12639676 961646913 892806002 999439078 27242952 146817936 17503720 273752598 28112325 654532210 596284310 743043325 668227690 845581981 488751808 719390975 469004259 802623774 24557052 744161660 682087927 928831862 77261413 919574054 908795549 916743887 297892347 460727430 245681897 787269524 559977373 662047805 573205098 623731216 416874008 496622275 326141962 423324542 303421749 417505903 167833580 377793580 270442436 788846967 186847135 786472007 736058383 764353164 733788269 858141309 171714171 511117440 383924799 751614593 679441280 964597274 60066408 979704317 347067059 488552272 435140193 665847719 427596517 493769381 321804322 599033898 103574468 935214585 690351260 822438543 638328114 645889458 117742980 812623926 127828822 506859996 126516956 577860448 406845894 711388299 32304431 52649548 22017437 519117949 328412627 639543276 7609485 390469390 29544450 161912968 64741528 135672532 123925929 964942727 498575828 986258292 78716059 802788244 79185899 864497633 753838628 981509983 391958766 533522553 371225063 539147458 173823603 899310572 136708540 369065796 37315932 947699777 793238861 946115417 245725499 871208917 640289458 849930629 229514003 808471727 189699390 938762867 669573742 898276561 686922251 738045462 127588876 736450872 308237556 794858502 665629155 989715392 357354959 515155354 39013295 704287220 217989307 588484482 581137697 966230543 662606335 921741764 189738380 966422262 176485074 671810999 222173991 251847891 213478558 862556278 662907187 849502425 708122728 794234345 696540865 784021987 522308133 950253756 599582119 937403789 443960673 654278545 464856566 510973419 184992625 426396975 416943730 737243297 445542830 938875593 274508059 984566506 526603231 995120152 702049852 863514081 823119254 891612334 224473740 442494666 272893230 365923838 149808670 741779915 716828465 980226373 682802672 996576127 249471805 781837592 475229167 968154920 339246536 722420733 256863136 421385504 61567759 115728324 19568661 84258438 33736126 891190415 129129138 490564880 450693505 860235914 560698470 888314961 211027471 928489111 435804252 480940936 392539405 727381335 363649095 705373970 260472911 342470584 171756765 288720919 201793620 856901695 235295088 249252814 61065907 976300794 955872475 998993248 955993766 966774019 783773922 805760897 742008917 907436433 354984819 910730671 793369470 995484333 701512116 775204946 251178886 771604458 279567768 452090327 58959186 571344841 180289043 337662566 278573693 760960326 483638281 953185177 430830558 707003479 625914467 930633404 578526000 819856562 445973464 642930796 472288391 596702165 342422952 378283651 357933603 377102396 225734540 683570902 575474193 601602664 324589317 905781759 367936192 748545525 301591319 537832483 31318118 913252326 166922337 622722532 257443163 545979902 72218280 659530576 102114991 859520225 762708652 821554324 648546923 692046763 93793796 446499372 319921288 676838698 521573147 831085536 512838962 515341305 381474163 861203793 105770926 758830107 139526976 926109517 622728109 699263476 658615729 743388330 311169534 824754585 413740042 836430675 836267636 962098289 856304617 942430221 105911173 234039784 188469333 545154179 111931865 634232954 85497489 988176860 520573063 659762495 555696265 666944982 93778214 941930614 472844078 705817158 72660218 721365430 294800790 695830164 431186493 691784877 614777295 622912955 422735134 971116148 428943799 827914816 487668980 546094903 488598405 865939627 503854022 845952527 373371154 729530230 325447007 438987690 575586 516045965 207113914 938161456 290056583 968325961 312714205 944062203 894036683 962524542 315562025 779546553 87756633 900325847 213891570 515664210 388652843 873647893 547039091 702643135 528116858 571468323 551958474 650966050 580538289 662094230 323700904 806822568 762802827 988247251 907298626 924350316 602938660 990522132 871965323 923339232 36940254 637372093 486673425 598898924 499343692 747895518 119525833 434834439 400448836 502497380 480744337 716766308 435905736 640585688 213933448 557702810 258932564 566855160 243993985 724373328 264497073 266436301 210919719 842650175 305263603 633863988 75014953 813534674 649913879 740643908 39888665 395565839 206463623 765703155 692068077 721776208 671568799 991545037 957177984 980298609 415004469 499193828 327812993 362680683 92431919 857691142 694952919 903503105 474337469 842008449 551936247 968096714 596796209 599948232 331488883 851228871 186494443 324512674 100415304 377618908 228564483 920441302 245697494 665789425 618935054 951019130 343866183 647647063 251833996 290442431 40437570 731781275 594130308 697595856 202392957 610276208 589369017 742078187 389659156 875984271 173039804 599544753 334363712 388642134 149725062 302503818 49871247 184053629 143319299 901824527 128068842 959379480 958763662 982059316 487513188 928062879 195761771 469022252 457340250 496278643 388205564 889767486 704661703 926187114 713532574 784070333 779862030 789611234 631337594 761480738 130015739 720059483 117261836 669961024 435747402 605783961 568806603 750938266 497081140 582082617 158203356 744074791 622702763 639543719 130929474 248000275 155817060 742613686 310824377 432775105 21169278 23120685 78281 900541156 578113213 721115726 567331073 802836508 345599744 981957193 55300654 857466589 600349901 921492155 226861461 510908325 266892021 316237141 104578484 117081324 102404432 940004457 828837715 983856232 812779261 862446929 307996852 778840598 442081160 846680712 672376916 804031177 648106685 841253001 233660683 756657929 178205338 347926482 32165977 839948967 400106106 994210168 399477834 677998811 676661550 854099942 18240670 109827404 84109632 264814360 45013352 328895451 234558564 819519822 96377145 336502809 202943637 288700186 235057959 359677518 25291055 893173115 682325170 863252934 436335083 881866763 436010575 698699083 94209019 891422523 487547799 889050686 201437364 438159893 299137566 847412172 240040145 628369646 427546688 586842460 531207124 872988955 80041240 747693475 20786142 134370041 59866300 584409194 396828750 701365702 151404121 982756655 105331960 438437306 79101896 638409402 563690586 680346773 367507645 526127249 129300175 882167508 797934039 845792683 675553347 920651590 168302541 918937054 897093358 989013175 652904963 699814434 344168985 517485912 434189135 471455585 166814751 652253389 65727396 505918671 307892305 971772118 338324971 415202702 395737612 797440666 633081415 813835907 646789966 785046380 697157786 769421129 725390655 911143704 236766897 801581091 352055936 542145786 324470226 819016982 254264679 825595204 8544101 142717199 103910727 882310192 430957722 687288227 191112225 317583706 118604430 319223058 195965043 215892805 49397268 426932300 303021422 493777201 461842441 704015549 135283123 671773176 627546716 731018054 334332458 792874744 677088178 823032231 37043887 116930038 84691819 990881860 275727123 860477601 34401363 260418312 124581583 969746871 278092456 497967104 71325705 897559850 78193559 365763324 224998686 615233463 67795474 800449685 98817148 949899286 743948551 763720932 685034151 767781570 36001895 183625246 121937831 327393886 321118826 883794468 187897219 277200505 29107578 357902697 226785802 416916661 8652811 911564223 204953865 769077314 577822707 915951470 830724367 858950131 154340506 236760349 111667479 382489322 377624360 732624058 732032144 978012469 1820742 412595429 346934077 722016158 671577988 672623565 171066635 806155478 458414821 943269395 320096541 792116906 110191094 689876707 410786513 481983914 244144039 575198520 220690376 651695354 559679737 876322311 402988367 456189698 274807212 857503699 841364243 895721597 189342236 675995336 40557624 906588492 469168776 760462469 211136790 765462373 192102358 862692771 212172828 760117609 176520797 932385757 265852910 321614780 203087052 852914704 807514136 974716245 211275970 482604257 429109889 657307408 641410299 750758630 135720264 287862368 452231 408787138 49137748 572373185 95273365 692697880 461666969 468221758 320170096 859377241 655472173 849808474 561438516 732155611 90204042 473402056 39542034 62537178 25932170 107149158 28085475 348063029 335911481 979847310 776111532 869361190 485995884 632450304 165292817 561718347 26000640 683133246 75230828 116115076 55113722 883705108 794025041 940370644 557942753 622456653 186405976 198869354 77220463 240820546 174160628 440561533 154261389 452487939 188996210 679479415 334553093 787221842 293599840 606734446 465039774 676842745 582495651 792324880 218091533 742177698 593608750 903294355 168176173 926943918 594940494 929787504 615704584 662869755 625227639 936542976 781553794 891402581 543342810 873809892 722782768 781209748 306175908 360903841 149388479 319399700 6149061 539696464 462757954 674484452 135475990 303321337 200869298 844901675 159940515 625281088 366444512 914246651 98151977 406281139 104697329 590476955 445412429 616402347 331142872 618657517 279380878 867547837 530255967 716019170 179514705 260362572 247018859 929250133 187856990 851739641 106613332 307218781 166191246 506558863 259644460 528668714 417884187 458055873 230558068 354340925 171870063 997304622 195578523 238066831 224107294 326429922 54718569 892680025 246139052 850253999 750974769 873712384 820792278 822002896 780082759 968597167 131294817 150641274 24340303 350514947 155801642 445164623 345784526 596087804 198646571 286320849 209042477 648292817 570316871 939758322 260941015 760196191 191773914 284453520 219128384 402932261 164384595 769476935 7408654 881947599 498041851 851409513 618460092 835981466 308920509 663457785 628507922 702661164 637855419 978413068 401750750 869977519 761516268 835788236 5257258 400995787 114425211 911518871 722914233 955582434 574269426 721164263 149040162 461656897 152743465 433570519 289808030 974222400 764428207 777329205 414917591 811156239 35807947 783484145 146951475 587414912 104584766 778390117 424711761 900758507 413247729 830614982 360059096 950243307 604471591 851459738 732762435 905833065 56754864 281267335 167834431 677949891 32839200 939178085 297783145 483055244 403638182 844851037 296351902 593001731 511179372 973103929 857015669 890715143 52193023 277044691 244846985 587405876 509937155 590602466 459083064 462148729 219313078 989056605 111872660 205197127 57208107 272885920 270823275 501102287 387513450 907916235 820688487 943486756 631090885 700544239 336614777 570826092 366982596 386970619 338825642 537249741 291796164 548201315 537418946 549783697 422679614 468007672 372170543 455592402 210247502 930224577 72851176 691627145 86676873 179961585 53753969 966567080 386088540 534352089 152131468 279307484 96626936 725501761 335358257 520299492 49080144 810745943 552019552 835912784 302557073 390932187 150266095 459043568 258497157 585840956 398814621 809572684 722509503 965700090 278684418 911432738 383059335 532233098 173811675 761615380 278766572 611254684 205216036 335168345 42788001 108525604 77475348 305890551 200658642 256037292 247488888 421312805 113327201 646588948 22677856 203649498 138554487 723639848 443396669 655860354 216382807 999947086 652021323 700658056 165153457 538235986 470465430 504327637 281793886 544432761 218302360 365403904 284651149 842106494 781687856 830772834 828788594 931137552 403124808 428679428 82238680 138566330 17616853 321968358 157327977 592319750 296507967 862700060 114802484 688220592 154328087 924513841 600052382 942302273 826232607 890815714 271244414 933408634 870199820 898257694 377292305 531650302 143716696 883230833 257476355 543768577 533604882 973761785 95117261 294690046 37708781 116109871 114465504 914361248 48235717 303549464 253032048 937379673 661503 97849647 53771791 185412570 78045834 107458647 101409081 169075710 107829418 845984768 570886698 637384698 541650615 820728558 474139295 695295093 400445617 958041424 827202713 984555031 182472543 231084158 194145095 901050735 493949852 685130876 471454784 538755254 507365302 993138747 397591956 794784209 409427900 468707339 287120592 441796158 297301578 532360635 375637943 893231798 62548335 948801794 477104051 979400710 235049523 321614665 167775960 727695085 551142324 887364519 424515282 673678228 473824625 527039938 81424122 342376212 228827749 244369592 115841190 741489092 623490728 993263929 884255814 927007177 210094979 262721417 138910814 806095773 557878357 672568987 28378630 648143022 348578082 820871422 495817864 587687835 290309939 688760666 570022115 748215120 369480798 907390422 85348855 245976139 216266059 592319775 537188404 695866269 239185930 690113257 614156373 774670389 774252020 992378825 57828009 906380932 215729471 943220376 117736692 614725711 532750420 693558407 2982741 349602577 143564679 394494445 172868025 239376737 155891375 364546076 130282875 225301752 83598322 625946738 441773512 787206319 485321824 794337405 211034865 361815977 233793837 734411979 639825852 643858651 617842675 655743695 616064451 712122272 595532498 841911931 21393200 397188132 234992847 295295044 170370812 690835682 667361608 734447368 586014569 996973985 432339488 921975152 595600056 948471792 559401163 861597314 367919381 662992125 233532962 494439300 450462277 977777614 441600113 967554107 499826545 773737654 73075768 974435225 749816703 892954816 245668270 855004476 203656981 386413196 305147959 688291205 247057024 929337139 640890811 931020453 370675739 746825977 39612321 766605407 656788182 966715706 786617804 923900258 154450976 757544852 167713919 357461816 89538619 836563255 388987971 463872020 190342168 830816333 614803545 946322432 164281387 334776367 38333838 464369147 116245319 824195802 387570359 788347476 387267064 444683834 152357562 479396382 42997593 418691085 146523379 215580979 6166448 70623814 52004045 257951215 68865711 532406947 312482153 930101492 450445572 493327188 232784346 650581883 211086231 460187998 276658633 323477782 297330478 300989190 202090794 285460057 10940282 626049844 424896995 500921803 123387010 303205922 125663417 775262497 451562056 519802378 160868409 631934366 70875831 454528719 150534578 449716556 427969214 499487236 316774136 377884431 270399274 540501619 330986227 903396909 462344115 463428241 247178293 774633299 723514935 783068906 360509248 454544536 108181673 741394613 223579918 409515013 32129054 154033523 82219924 202047271 11392077 762415647 665581280 837347012 422530625 470400216 117999128 354592056 334599660 523015609 522106495 682962182 628666423 654065315 397180629 825809218 132590989 692371390 578376254 641082510 350299621 449629353 51071472 218719271 90489437 634449903 193354272 330723351 165233056 871982497 188313158 780301191 28150589 407430411 79149267 916993064 114012559 540064175 193093045 620486137 175663337 280311569 201211360 839211575 553398254 819796066 572814369 655281701 198583087 501547460 320265181 485725958 366752189 720746808 421127362 864301417 612041661 973530252 71698480 82575386 13881437 162443705 5402217 869006639 235038868 589446932 403763693 997687026 972239593 986546080 699800321 790552220 21717153 782773095 667650769 966750593 603801181 814386875 801995037 844082301 223584743 970945778 408769934 984561691 240965645 852839627 49780631 218201881 52308771 231468392 27704806 310379197 42187166 204822275 120065961 408778668 135179945 364899189 270255519 557676549 289905600 907589644 386987697 551183176 506152687 750824812 516368843 517708069 302245489 354831402 191862743 875510859 103742962 298647477 165370736 741639269 175631953 969947099 110614550 585948293 306302029 742129322 681023509 906325832 428439958 756044602 619471583 759621219 326164163 706412650 507520655 603944330 496262252 631146477 411650648 429028116 324125970 829250566 532536301 852269905 67115301 836405859 426188590 823463463 753938899 868642527 708006519 970045301 129777475 291677138 287418321 707646038 600828462 772155628 73387508 133212028 100390882 930364033 63020400 457614837 264161909 836382799 815821129 850307843 636131489 839744670 160152686 669255733 90788884 332317140 21306471 566094432 204151851 406786557 384039550 947238274 464065595 899134493 344519535 994309390 819342720 890486024 572433782 691460163 535209980 632436305 39714208 373867778 168403754 603067492 463335125 520774144 212674948 667476073 277242156 714872032 142277731 628664873 434181983 574166335 133168631 790684931 601214335 707915481 685956748 780210403 202635829 886905183 98700532 880261829 451308511 931137205 275660209 434597645 233944883 345367437 250619409 996011252 934758070 942630653 241892997 944658790 845346541 960313816 701158972 966897825 694396565 842365331 395186625 459634606 105284366 328135922 111940081 711971093 645524328 748235433 82126814 506691632 500227183 819808761 252440011 781772975 704217384 933639492 494221643 789033106 712131187 975642392 599200788 852844223 198232988 489080538 145281064 165224414 138185192 954403785 122529770 481325585 122275760 946908550 830614119 975566200 57487658 71037784 69275985 701700942 471880119 879074567 234980836 986663831 690631202 749355579 343852415 479295707 453058110 869669196 406316960 547535323 70000302 90203533 10016928 250299730 174330085 848696389 285845295 593340989 53727160 604565764 604063468 663507688 419301456 563190281 153663057 813697314 244731148 838951142 57631491 197418985 68527121 72665090 16714724 763134413 248068950 830487925 812331388 840048668 123476171 196800080 70884265 624655064 367210250 419356949 124430466 263825478 85394142 86250951 73009656 205853887 40783100 352647635 330211881 382682290 226405146 965838595 649710526 840052787 415963977 649264599 545697248 881216096 437105506 551386503 424712100 504692505 370243086 589258326 232950092 705884012 353551024 724117109 14079684 400475674 281062842 847144425 714245355 935890633 363103213 714588894 378980031 911141762 565541946 804383089 477002980 980405459 153103752 484138096 281785426 328873983 288528714 447769076 116091918 477140659 376889903 847208850 458600345 855209974 566622791 734560340 390506105 847371015 91899441 859572665 532084318 584991155 525044311 998936253 874247801 886880368 361757283 577824228 558372435 748708160 495134545 883834533 701958497 749977336 533659227 614750133 310433980 376758171 168456590 225193268 145937598 939823216 295929563 731068442 398991484 743012294 276724095 600634938 172869152 265890940 185548091 948841869 894899764 988800189 248650049 475352427 184792877 375665349 282727898 907208580 756791980 771857424 685189747 755753762 180090816 617144583 91039582 809000555 541936585 862418424 707302667 952644581 229653868 482760082 118230027 952561169 657060763 867826819 714963940 730310260 456703734 610287417 402201262 660729494 269176013 613276245 477088268 829708371 421042635 688858448 580913270 744221766 717537373 854300657 526208027 764759737 79478118 105296980 82296817 480396216 479781718 871217387 499281749 572497708 147232340 720276618 715805911 883825813 282713941 794239762 567668806 923295800 696125797 992332466 66058135 148661203 70666296 247457338 9964264 856651707 727576257 932161164 923787649 952098885 339979285 851842670 341751428 585823706 41386256 151725623 137188427 833388192 16565415 214046731 173861721 184754176 36170081 719198436 691581495 916472171 557676647 634107843 304461747 347458838 48368360 477905855 36555162 718422396 111821765 511951645 389516706 465453885 362954782 606771103 260711152 922127828 715586444 868933587 817788016 873577771 183965613 565357685 452257951 639149838 330226968 483896185 211537385 850880709 830252124 933918305 5368904 661027939 429369785 779941832 702042706 923317649 749000606 781595546 152344616 235623163 185490956 248081516 212354017 278494110 116815102 974809915 303943414 570751603 323498802 953295542 102009110 511418703 86095360 660009869 157955773 507915010 338296446 427709922 166032887 504484924 397781570 507648791 148767343 226489218 197576436 913869561 871553730 969290295 124044794 821840992 166514728 404611610 352587679 688444088 103250449 163636382 117736813 180359746 10259282 872895110 589137306 734138715 415005533 694361896 34836245 450994671 353653609 880955850 385536459 385848700 175334092 912693000 507127053 603702745 438259512 709240027 115487319 765574131 378137792 490405216 476090694 536949337 464659997 515579267 461976704 947607240 359366331 768385037 459767917 919385093 570706225 574816393 237031982 530791886 23551047 691485038 486904835 772526456 275677391 920383624 891469096 945103982 897119858 983618718 470405162 729020862 684701635 911176181 457306729 990289651 666919154 992502931 11851977 311814680 21364928 510998788 221336267 222964080 44169862 984974717 358384904 785122312 536304921 697757276 672558662 676251026 306104831 858733225 759736660 950939633 132449051 748296767 720867514 854655409 26128069 208368920 12209885 217174606 181382075 787495674 164060098 360924721 241964445 860071418 364967537 485889465 366091543 661034506 597040166 903053563 608025635 959368255 814970457 973283833 760435339 886877395 768087084 787754019 630895404 828846628 65540596 947233049 444591267 525443255 210895866 513122989 340309569 612459542 118920078 322948842 101132047 363409117 225501721 670814120 307201373 809523096 328232322 812586269 809681567 930082865 286704141 487730203 350344447 617923263 75748963 885725732 139937381 484983420 148859212 931454459 130388213 432759992 218209463 532514006 121384990 999367037 909479754 932489169 826214735 901985338 862657042 995471294 114110400 452141229 10371908 11998861 3772790 327163962 242468484 818758172 367611729 389178305 99580695 187738709 89613255 168758388 99070687 942864994 61920233 383506161 296241641 323979679 155467031 414784127 193922420 250214996 213044937 631017289 323083902 646163354 612020825 670583527 150329651 907245686 822693305 971285131 894347180 895156587 65078455 131159176 122587317 649662342 308690554 392100688 255746573 742286678 227757564 614535242 433559663 582361102 30299318 491959196 279913777 898023206 419002601 885327676 551313638 655467548 591478450 825005295 164685178 664582148 338031933 438406596 154472441 927242778 805307015 913766670 516128427 565384067 450444695 597291334 465238643 682784737 344933184 850303415 139611895 191166564 1472289 841448441 413227425 532833928 382606441 689077099 150409048 628352243 3583954 196314141 84129194 981996112 882692741 885104456 297823058 353325388 327181002 859987374 272067412 628992494 124798078 952987078 81516389 465752069 284667744 526138078 318918848 589169415 63743100 576962647 491583692 690501686 391713879 777482952 474625784 614844894 514434641 939038119 475455659 869021960 612989525 700222002 623288084 650050318 266788865 570314574 78630961 239098737 160355928 427049111 333306362 846663314 436957633 527710660 523586804 942427135 477605504 954995492 945512212 991566035 419443404 828081525 760542357 928630488 498260907 725739391 628426287 964703987 272179054 973927528 190257191 690567087 188860181 384762662 17322271 498193996 10701562 433041746 326278953 716350850 700827928 991247148 175851155 846305113 490875182 949663581 675602994 983444492 661962041 710351363 254932203 986414731 810346832 915048181 383558862 840158503 519933106 628172944 360043400 949487539 905356605 947292391 42804204 651917471 43726538 358386629 160656998 924060817 137601923 214849621 208020669 215539370 60313228 74764646 74668669 459936072 287707942 422583290 404296784 406447808 330164986 814925597 569928770 966095576 253633675 721949934 404965235 989808404 68995742 358671480 348635556 487437108 482899209 986336046 481781006 606447536 546002200 916184710 269738103 604257647 287097033 621109668 192137297 351219033 147433978 280003123 1116474 338988964 34356576 56849489 36933358 337162652 99586900 968411572 605287681 901488458 542972693 924688622 162478020 273057671 135744056 247698316 179657206 735310638 462781606 495482746 311928589 776741589 285568115 533588658 389683984 912279381 798793273 813052090 72870424 79100477 62261299 253643406 220363928 325913934 56139562 501033633 462606878 490741173 439511048 783425439 751418822 899945779 663055104 903210569 138751215 737324578 643645293 964802170 713206134 909690954 420143652 881954867 368760823 793258266 242737680 743374927 424600819 515410671 386844615 691744604 117649932 415145512 264227523 958000049 593976676 594270273 519221830 815785612 745874361 797072698 779867579 925875085 409310336 427666486 126969656 688058727 457741280 703500474 465574883 553193717 142254763 479204230 84706611 707663367 687925086 855250596 58275263 648921993 155753482 847180630 832412519 947473512 57895691 695673104 440261108 665105789 129653322 954917193 524966719 545850031 491159909 898136672 138212199 397441443 226946807 278548204 154728367 470263028 267581282 502579191 399922966 507760399 278901447 826825764 327919702 737020249 324961160 890472499 404908359 931736751 454157329 643618854 265631970 627423424 404310360 795749921 163539629 966632065 405449504 840235163 510969726 575201928 170753392 505015990 477314378 905678167 176283158 872235325 610272907 699032881 208168859 744055009 503867664 922646472 605121053 632426808 489385722 824375012 86628769 854448198 290297662 455927480 225455279 983724296 242568252 737546128 483084061 949186762 13778563 495577673 489099004 935935004 74904534 850418790 471198020 521786993 74584410 464192706 303822317 900149067 472504524 945781853 39843901 805825593 659507262 843005528 165365413 631916515 226307148 895879991 493279316 965354006 961537172 991968849 186374531 199957745 133051188 748517383 355357472 592451407 418048827 478876864 446153163 843371578 672933445 819482051 778711047 816318085 214311365 855678563 531102652 540776176 317620349 753563777 716384323 918488013 262177448 884710689 759361212 937857815 860297617 874905936 600176407 841698185 656610206 732093427 443696464 485340436 175621664 386170789 10642487 363441758 114915563 708835745 413161842 536497326 493340270 937213901 761634116 924791555 582268097 957851636 836962018 921171669 524825592 767425474 314690559 933327175 865297381 982690912 310371961 472473815 378731451 710006358 384091137 820780699 458416021 783743157 735371153 957860734 788086954 888120100 368435371 942104815 403370227 791246681 727610234 826844870 644332226 729553818 58242063 656148841 539223681 614126931 310758942 526165147 123819630 912265279 31549870 658986369 468242407 771422093 113307877 365468153 291869365 540856510 173294180 229580675 229561348 767607317 760883262 928005531 163930504 941892502 468926195 904295181 490556127 697166317 634017840 796281508 685283905 791305991 679820169 758811814 537290509 779734095 481773446 613646674 483826306 810364953 437120726 671255485 418395618 980433407 183017550 219951828 54886079 689897653 470572436 584637980 339022411 781688750 385976680 939326595 298190987 982963606 64458683 978921230 511007481 905490715 40999497 679718289 234681336 289553756 204248867 627769635 48729844 629774122 73632285 449926610 228791594 419014141 6614333 658185297 391826492 572873073 254529964 745870764 540827936 807784011 625077887 960225993 720020380 790164725 265936418 527791579 176756532 850661335 28930614 345215625 177652066 334230702 30847965 360930541 76842365 663120496 620305191 690258145 634684563 784989057 72153041 204461052 176138230 729656578 642151775 788146915 569756445 822814076 72401075 525665294 109444207 122522755 85708305 632048093 122599925 565689648 57116889 865990258 303718807 866307195 136847444 144421745 125463001 680294976 170168985 177967202 175740924 640491776 244589450 556902314 472357494 816308300 550639245 803908569 616737418 625819751 226272776 650579233 647753066 702161769 44750053 724486846 107778101 683238481 453952598 936493000 157913743 345968686 334015694 882579751 634140391 792268214 643695300 750903587 416894101 586644880 227801219 483479786 479313887 689463822 252859357 599156738 65553264 648848387 3686765 617230903 50820621 297647401 150552912 659267348 408573233 421375273 392992679 863036241 629305632 751957052 492683609 610269360 509125932 560051668 446598633 648909498 389562876 843778928 333699249 999045222 564464509 710287419 43371920 538346608 527519297 777297260 600190418 658393791 449659400 640708346 105119775 206580327 71202970 383938755 174708530 457013704 124136438 392702551 148061087 592759264 120767799 907630553 873440652 898803669 700872467 818478695 9891468 547796259 72981773 105904695 94368991 581995564 339989051 924126815 198578983 294879597 293076335 561408147 132471866 710262654 251507191 723247586 397336953 453690310 257478814 599403834 494145835 551978600 231312893 837695487 188843766 525914863 357383316 754322941 75748645 594107975 479605422 710601944 87947418 91559906 76378933 678733157 305844995 686415052 130961160 153923820 24230045 99723256 43998052 736905314 288957523 656881416 178681626 236561298 51627982 597845076 68348033 471733472 393588644 963524381 683039598 914071880 601898527 711432085 343908365 616211519 428362875 755478864 410029979 714399284 183972616 838460328 355046837 811367607 160492119 920573888 632731302 699748095 273533172 584852003 458015291 733433145 601623555 686010045 620372761 816237017 346149732 964152347 712946286 758414739 463701608 869835185 17051065 353306611 141136440 441892370 1425703 914147201 241276537 474397146 302121973 325095383 216761685 838942111 507786867 919856389 365522723 611753302 85910793 412600315 365252849 492431004 272116074 899338018 236762371 284040470 106384554 864038228 616575819 634297720 345633272 425269019 126149515 333094096 145766275 858048895 405241205 762469182 422391082 946221604 146652745 826658074 124162334 793996125 92067555 262334404 103723385 690249024 400347869 970290429 770642539 867308164 671784080 918148293 808755089 973511843 545737166 643593871 301566315 463509128 341092330 651095008 338885340 958377414 98912319 260601688 232487005 951311663 230521454 972429259 543167535 917132010 321504171 932364460 348527219 839899298 75863172 568799788 520784734 803613426 128189287 960516949 90283992 538998155 23364491 448496866 55075696 334901212 250850607 433749922 298622515 911239785 583425401 771644781 99463575 865013310 144641215 668968684 67897750 741223702 688396533 890456917 423619867 853822982 543098531 612757852 603305912 781141151 528923392 754229115 699194794 782218212 528300839 913388501 418199310 817601815 503784790 520126046 256581470 363730023 26720700 975085495 615714400 795120756 789780568 844618661 596274262 972575024 748675930 929692099 908201595 934513956 77564108 611845250 154882999 524347598 168671477 886926752 456942582 978282237 936899293 966103203 684341453 684663593 209306664 360756426 34426336 579787692 125957666 300041499 45147562 900662176 882341916 944017551 40200564 811123315 644004398 980962574 259833343 772246918 392934842 439744620 75640901 421847297 62233511 92018077 30868858 425115777 369341099 908298860 23830698 123788782 119079235 689291850 156836248 340041466 232058425 550276082 238215632 293563721 50397790 275593570 172535441 813105045 689515825 806472875 779044351 870048052 83473727 778742681 335514479 499545657 380068150 854233446 696074749 888170939 343948608 652194987 168016506 774434252 675151028 950312482 283372091 373725375 286635153 589483830 176630145 598527301 7530208 50914393 25815339 639429416 43235674 799827886 389090899 837549665 351296147 758694428 48203993 790054793 277613179 370583058 217547540 661440875 614540781 691140110 472343391 873552982 41020238 699308755 113503529 937490821 449104476 684164114 26797525 148612132 128541980 735440501 390898458 860289162 511943904 870995710 376106099 572908715 464493324 865133200 372445814 566867923 213287750 401139861 204534001 991195122 406504788 488648054 204658728 973516672 459952194 549106273 58007645 873233716 725053731 795441255 202075587 862858147 149839665 716454287 59302252 956110851 431496212 790393151 741652796 969133451 149464612 914374495 410490873 600972041 548409878 832834042 459687540 518883391 238237085 909558157 395198528 518869678 14051329 996296092 515185443 925529449 369248040 982792708 416001060 718450021 665089189 945855542 173887028 313486057 43218882 587377826 134247218 623428340 200591829 461351943 25966054 451055745 348224199 470347200 203591611 443834465 238891289 335308612 320371345 864782027 247948019 381363895 148003517 597835661 167460570 360597764 342906913 350265870 306003036 339432025 213011603 998700919 151163983 906797931 745766013 803800350 274215859 397651227 188792678 330343548 111479156 513699385 38599566 436125152 288857506 559194561 283813129 825225709 778359875 931355729 294764600 821496134 137251271 767356158 628223484 734437930 81083380 329969016 134583100 286584632 65903989 607137993 459372348 612737834 105767590 171725187 147528972 647373895 218725130 653278015 390902956 836491762 418500406 650571774 436223204 573734431 171099450 795176992 476407544 962310857 446567769 752077982 475974899 610420029 134318608 728509511 220806129 231954312 231812194 553367518 388707501 786443822 523172006 744833840 511363137 522848509 418073231 688182352 569852576 835201867 427343030 739633799 409922484 896520808 353896518 527618454 479988086 896396653 853627331 894385542 97963832 667321218 448187174 884704524 54085679 881146482 510997844 960408511 173492756 679031053 28104426 68246889 49301805 294220772 32908020 830830860 481433286 879307510 449983480 975080976 821757110 833930186 624188897 882614499 177836717 908459111 356066141 623514476 562903240 969825637 547060456 694563293 557726685 687146425 109846214 448410598 328515623 733180122 569347386 989234784 833517371 861622683 335882109 963141623 555040874 702525657 243254342 403775706 195569614 945354670 324850423 336972137 120582953 601416095 18756470 922004990 631811162 751912313 423852803 746564338 531898926 880970173 654536677 853917221 232476050 477333563 329256334 656631872 308502643 399146825 1389155 450891336 352052374 635959267 277944346 578337345 532839482 571219025 270801092 512381762 61331537 776276474 491545411 866311832 346943436 498702647 180797715 741046965 474520546 786967273 182869852 350652131 98485151 881036290 227811503 689873214 556067443 628378130 28048489 591370679 134373755 619647484 154263077 576822111 559687078 931963811 280856493 285884702 225705734 877040014 633779564 843621264 762346832 950549036 26761621 184753561 133372388 784818150 481907849 627626140 39727844 707319364 502100468 615411867 572659557 996205684 627063865 839934143 741096519 940405999 114293733 589840888 364453604 436705583 271717048 616097388 411280173 641977186 423936171 643663522 220117791 568565317 76619922 77314116 29600051 41513680 2323283 395259916 215665834 373584780 214467933 981530426 661779730 817100350 809123668 985934719 476536372 876129126 663282898 846524429 36302548 797594348 730162161 836197660 705837639 917298409 568973059 922622861 778468928 937010209 152316304 383489647 369307971 945765370 27487767 483109684 438896065 606676634 501695869 945043589 84679674 806695471 772840793 930331808 227777837 272270965 217269742 239769170 204501942 454083411 70873448 966582312 197074119 974342328 418369079 963966337 616859151 959571573 294627920 899406652 96585640 707973240 509820603 966588775 38365192 686037923 676516415 894474039 19700227 432675868 291417755 358340863 74798506 747916165 66127497 140460118 81541495 923277742 529108067 638519834 46228619 78776966 74077967 138190900 121203356 619269502 404006712 583368587 527838375 800049946 453759923 510827610 276758680 401301631 82259396 484267105 316485570 961234792 926002811 997088215 286443254 540779749 399647054 939307378 484063303 691734410 256005208 699594057 522710632 661705248 160840105 890753942 186578598 962893791 923647211 990339722 373459758 788942969 723625978 977551145 291927835 303798063 262885288 477390105 200235834 282133615 280409888 340936703 33025480 814814607 370315137 843897008 92107127 903769401 724103199 981575334 200546702 893063988 434977145 523541571 445850576 458364826 208846676 314220928 260300254 479534361 233336009 303663479 88471881 647579486 105606018 905015644 37048829 990180714 754217145 877318156 92475667 826660794 288671968 834891710 453675541 988476707 966550729 985856060 25397736 57250913 11950842 53971859 32630642 193097426 191444033 944798251 17724259 781514878 699705541 939033447 672814139 846563902 81025181 664845379 118528881 266935142 111154158 340121257 289683864 509483065 13785423 650901229 135779405 277590807 8279763 556861666 403138230 787614344 427462927 655756599 505655440 957450985 494266002 999174320 252970740 818257624 25337132 538472579 530585889 675002011 647245541 768947861 563015529 767863562 583791131 864094094 661234356 791638771 702571823 920673556 681500143 806567776 311650686 900310224 13125581 20840536 7762476 207518073 25746551 173957465 46516559 244883322 143859211 985345421 912009347 974642422 740958656 900497683 184203071 968799470 429256772 790100818 172941990 875939696 662952144 677831211 417791371 553513048 227217050 417571045 413218075 720415867 75434756 469952046 99526677 605589171 433120384 849668359 723136221 832407656 149824502 156867724 76431789 503754807 345836490 700325438 19343741 668799616 243004232 476254665 265203324 304294773 113752139 200677811 17887852 439356198 21472180 632332582 328474380 505629218 381064125 488630074 461350209 995635986 392462569 884719920 153168584 635667125 310054152 414850911 23295132 294213644 32163855 374080669 314117090 334405016 55495520 384550905 130734646 842418893 192934849 416902718 226146900 577989821 570910511 650860412 114149879 881651719 871166103 904325556 659805067 701029643 470555358 629814053 127740849 181960200 92687271 709438927 103965233 493624080 193109032 328023196 77718123 846981738 47465791 486403725 263975948 912663943 307735248 433825152 386718913 740102021 381048972 993750072 550713966 705293273 690517927 703255514 627025076 786718579 409642865 594580271 402957815 805013264 167346662 499455305 321925510 644278409 44871896 456975897 66159110 281349768 66811558 298633977 173454777 316297858 146957811 255431793 45302292 151962781 36622507 319206488 77018225 794513230 619408222 845171336 567427104 661368988 96028460 148366803 141857422 586790850 267366494 551278820 531937533 674266745 627123848 788809388 384484171 859330618 356038419 849008583 162043302 916444858 879562138 921919670 608824109 646964054 249203546 864930800 547392792 747158511 511302807 620585769 62497343 236758329 67237358 882719888 757264368 951732560 231315441 940762681 786084404 837997408 520836204 755558631 381039776 704300185 352052430 544655154 114296978 772530461 521802307 774019191 212941316 920637894 911261039 975888681 258164246 643639528 630730498 933232527 824749150 889094983 802038113 873283594 732227300 912621091 563839148 981414561 497693075 942076919 864073996 927679051 339162824 653979057 429396083 851157946 608469254 774974548 305673730 447964502 10046542 366724061 60325760 516152833 468993465 899875801 890412438 916503275 358481268 711138417 598811519 663187798 9159933 779153336 211589766 713290804 223349865 744202335 398948059 638038306 198365440 834928197 504832101 525109418 308550250 529218659 244479110 506359208 332817883 532602168 252343571 934377811 467777317 612789941 262155279 934019687 384328851 748960839 158498515 473962362 21507055 673442734 131694116 149266658 95220735 97068826 38364943 888176340 799616203 807735682 213836869 498332066 181740396 610179930 260525478 758203517 261210277 429762893 308699297 981203314 447242333 960343426 462993984 848313909 593047113 877887670 49635640 702818765 75726300 366688052 32259199 877668124 200883853 253851304 154098202 689221942 305705990 730064985 294531677 614546091 110612189 807669063 349268454 863606027 724119977 821270762 497708614 817004612 380541799 909746376 732367893 817652648 333708332 808597707 563634969 729346381 584175113 853073942 512806002 645843095 17035142 461468364 424124419 745708312 346057374 656828189 379202317 384400849 107391494 161228490 132881537 233088417 23057775 212529648 19234503 268095348 159129735 528377217 172609863 292537381 8255471 278602707 162503636 492507150 63083493 292679479 45582726 971241277 70404704 259752691 219380601 636947905 530781614 719889577 281916900 471312307 390514142 561209446 405832794 421146419 320809892 604380509 462924598 810576320 105447728 781461294 719496366 830493463 757862 105421771 98013669 647542622 78481927 572433871 429213288 485561532 359070389 765129132 427776419 514161483 317936459 884404130 546322453 570975289 155750370 720418299 280098534 602538555 106965225 388369548 114294565 144485596 126251530 220767904 16041022 26280131 22173881 209979546 132305001 793085971 661359356 954549127 476666809 544797645 62810117 191987551 76069171 776165837 58652051 451827263 336927103 812753477 648330516 846099403 96744888 410077987 17552694 779016902 263072861 339038247 204857806 906845168 203139017 418629163 418171752 665851290 13495579 818094950 724107212 951826233 713268838 901331673 617367514 771656374 184100632 547486970 34357640 139379813 135230352 914423902 902492988 992354143 888300118 923719654 170956931 442398022 96667939 766093285 303695491 423063859 401949423 531607259 357136619 933993289 911890052 934634786 691413548 961063850 732788836 846174939 445146717 632237465 381268413 386497192 368163217 891437633 795882699 829405914 223983313 778288722 644722853 737108073 210054521 965385319 564652549 619065212 126940513 838057300 41209825 984438118 769857816 962100715 639122174 725797646 137321275 968065731 769405863 936506549 68267393 636042836 108052080 139464749 77203178 120092894 34481598 993916422 43565062 645550842 268461839 558083870 299537218 344492063 206219150 540469449 65668181 238868770 138050694 502217918 43933276 811538032 259633080 272109742 67325200 316859937 187084870 651752904 630380650 956276533 268073287 516408563 12788232 434443616 162444971 453645111 347908718 623281801 81282349 170881910 95477229 858068764 77644890 360567759 97489019 351474142 67432248 639354311 424566517 436975984 225806889 622780824 142884838 683368355 48262269 308200334 287347973 868074152 71775121 800268337 240593984 643169945 630499750 751003046 467351294 953607962 596964766 991799056 653892979 971312325 124517756 304937114 68750916 263506834 248276253 713504587 503105352 958893072 39604230 74663460 47589753 453798675 61320054 232371163 112415515 426241769 384851298 472755363 214899364 337897254 240119525 902371667 165462321 881952346 404852026 720675426 23221370 34022163 14581223 658321036 436643335 585173553 557969421 724596146 348334630 802047375 219905601 499298577 451276154 726494671 559251498 592502194 382733106 751574692 424696355 971515880 102292313 879619394 255921736 798837753 470402428 662277567 406828043 534070097 486598957 843993888 425289603 671663924 400467714 520878798 159499442 495185524 107774755 603818298 301727137 861764291 644597251 858897584 86094113 985451214 90052613 826213660 179200012 539350881 369280173 473528677 48316287 513383448 213537922 994706356 175420648 521752737 337248745 420190727 155631965 257908832 105358065 718290394 677499815 797089186 271227559 437783616 260075041 867629954 391092517 783154253 613439587 905887895 565165539 958492816 655695863 950888564 491356100 615651371 118289636 797835109 276389004 870844251 439346865 470620264 311726236 675716774 245773116 802729259 504761712 737668719 248297867 559620477 115154316 366331683 37513772 754078095 581288445 903967310 355913928 628196593 238184023 964722553 401086658 849240937 207808072 457066120 356592582 635589829 230213333 999938657 634174211 772499250 425598735 460645017 49044772 466180264 133603212 302921581 134370654 587382459 561262463 657733823 505129988 780202311 47805094 585398655 162710083 182136816 83013900 470448641 130615231 559513832 310389407 575542760 385251064 427560822 72391788 696318704 310104177 949482423 893088596 981281399 518471545 547221905 440973257 715290700 628011547 896295344 237658890 945758008 869796330 878528141 69349593 468026895 336280352 432168508 25514284 937539234 648553307 946569897 430496325 768265005 393576232 786009280 434219472 523133839 315955088 961963447 823129304 892004738 525938752 683050183 218186099 768104859 134161135 160889999 3127267 529315049 298862120 883449879 609311753 665650789 528789855 740683112 673829131 775704527 509748825 608195073 291350759 547125235 200043730 728974242 433270117 570251683 184929931 467494742 116796187 171341855 127696148 988921668 364063668 607531803 215236598 465452438 308561136 398855239 356164493 606079050 363804743 537699095 132098384 900004320 512171850 863378133 133509107 881044963 13720621 382656105 282432615 350432313 180829430 358913015 113323872 616070100 140848641 999254427 265226492 318639556 115753930 199966664 151621449 197197741 37565130 789779143 252419093 283276880 146410595 735000965 356756165 629764013 117746333 330958213 199324666 477046499 472941304 479989295 400357841 942940589 49973775 304960491 188927162 862394109 473772061 708474572 143091258 549520610 62935971 397757640 395131442 446472660 381416492 918917334 878157477 918997457 324408296 540185820 42664879 303427844 276093671 729844485 149038692 326470898 250971267 394129348 186408301 312627353 68714328 922473432 673436781 878656528 781997368 954170770 534075271 655316869 69707901 889448842 191487406 768949845 272302308 322067752 15025131 518873897 251870131 619109735 229330815 908027910 385864466 746325124 592388610 761103026 212326063 720807734 520884531 964989436 878954309 911507733 813086714 921060012 460037280 571107590 461603668 848829783 28170099 918877487 151139613 987747429 46141295 325810004 140729603 894655044 708850733 821268662 727814585 759399828 48771572 145806605 7774055 964536706 521164532 745078264 321732720 805079064 642974377 970722225 820918488 966003355 809995301 896950448 375985382 475502898 412751278 535246365 385402797 621000942 331421856 871330332 491532009 707966580 503539158 906539982 258962856 734817677 53357850 887035172 245690864 962553643 739960503 810771241 694945656 762732365 621792579 894197592 803228313 899914420 460768277 579404177 381976539 597380740 227356709 400017570 35689250 410857053 116806405 951762420 378996134 463350426 147065992 596212389 522831868 869349060 300268192 916202958 373492818 776241637 733768220 874723457 564468285 631934988 459365611 801566837 239404626 490783778 219715676 975597195 725930679 811350052 577955171 767984890 491905838 911240455 661587678 676610543 251517998 331521291 103584635 681683498 273044479 996390179 235453416 756364013 320573426 990105316 139469803 352700800 158784450 478762463 379354926 716555571 121603113 595201968 579339316 586781110 170996688 465201757 233613002 391629968 371473234 683361279 377603617 513269998 326976711 340475087 101701047 302623561 13338982 497265985 368720618 788113335 682278401 959914793 363198876 692806522 574730051 947459852 330274768 837429808 399127594 772365038 676021516 712537525 9983810 393647461 364113771 476584118 182185190 941679790 159645807 438571981 52745321 698389774 67592381 564160582 541373171 602330948 369528682 373831243 344844366 968494342 425327311 690301701 390095108 391650426 31152012 364852737 106392553 517995230 153625583 712794885 204497630 207637454 92922022 290027101 35276803 286166929 80737028 489857436 360604285 994068404 751854255 935345402 651580227 691222866 79027749 251635671 80843913 830778528 811498907 961410179 391053201 777042540 764422795 893657142 813966462 894958786 676636766 953251236 277493119 852965299 189845200 975489920 748085201 808557931 631886652 758189642 326688178 628644553 194507931 640360496 333351638 528782660 459623442 568201022 320577411 533362589 126922288 431973747 167404347 955697428 657624129 736609636 7445457 49651939 9668548 956955885 550703054 714358448 165026367 912874562 860697626 999696501 587192412 889447115 803198073 813662108 161880459 979342907 652634621 771387370 610231617 811123609 399930551 813487767 375924438 378029841 124575475 498224497 9542646 659623426 372392790 683064783 105164732 366379095 108615089 415386340 364005519 631284575 385860914 513683937 71105694 761781363 151851100 934074019 771743802 786511459 494697388 883141990 487357667 520076250 502647286 698983395 675242266 770536816 649029826 799030285 131673074 495121596 494908440 744365740 14134377 227596622 187128095 243042050 36144250 885737826 714604893 932527367 226925751 607344408 96005888 652416931 278566820 731015108 706150937 993290754 913978183 965405808 756254948 840983404 280640416 696772004 309081067 383195932 299899555 557915226 174830958 626503987 138048494 399537260 91192349 632801266 285175957 486157574 333598321 852553768 194688715 952839033 487432618 820431894 476340525 586368622 289524585 479263164 279060355 361404558 122545593 284992765 276698009 867780909 831318180 881402268 421443850 903209822 198111936 943958763 217432573 404875270 25210489 167946370 29015281 391701560 37546925 183661097 165712631 303092824 189751021 329387939 218326279 652382704 490877278 572975677 259792157 824851804 560722445 645855048 333978993 927933382 722170850 767775015 445883979 839929739 824706268 883467922 834841935 873489196 7696065 694344955 672518953 794015124 575951472 741884983 638578429 888081824 165908950 426495884 290630010 341620664 298008557 604455977 274153890 970746272 8163359 603752921 572631660 655590769 343468576 927008433 573715106 990521915 450895818 727762690 78765328 457771164 302543549 448273804 381540927 715507147 530875874 605681310 41781417 214928370 208909681 856983610 328853878 840422654 4657864 663004778 464774587 561007176 538588893 580912037 214433440 292140594 223433242 287969249 274554602 900803754 769347058 996662127 47940544 898535902 679066694 727989826 172440528 962883414 265829245 331520017 284468397 873037079 376418960 791993547 237305303 357490567 145733858 741295697 567757029 600111124 228126906 656718928 41946249 524734084 280261837 563654336 479760652 955578354 898556080 989917750 950470344 971986588 670949584 678350565 185833426 917790558 52598468 861093957 276698408 441312903 231023489 339350672 163931396 741458959 547563880 829414324 642225983 700252161 671968410 921797141 114193697 374225233 242831390 665383707 244907851 738386359 320258249 670293120 587659702 858391319 202458406 953774940 141049252 309510014 3132057 578798153 165369587 399879065 261518719 556965546 225599591 782273725 375408118 794641858 73265154 277686590 277119041 341093480 276270064 794442786 330936053 649820136 177781587 907255867 755328170 903685921 418611818 939206593 387930445 707575099 452774334 682061302 395632983 682432360 411802724 795236370 239152946 665748358 327754470 819462118 59745134 227235857 191577044 606402610 323486183 966592089 857869935 859952511 580358480 928723185 718888103 923042164 839979739 967694765 270349779 775903591 165767158 781350182 211785952 774399023 710782045 772816893 246210428 788523321 118121442 355921778 182717430 989269644 103120818 164652271 136224404 503753780 145939054 270823676 71900872 916642496 175538184 403461567 37655752 172022616 55247314 307177182 129094135 235942356 34526522 608193816 277083824 876480321 223283898 869256905 41760351 689301900 288101014 766525999 265880577 675048375 391362309 651402803 346410515 641714858 141464789 641994158 323960357 829689952 740913463 755354129 703859959 998777243 143406091 785902194 692202824 967164708 752825739 754143568 189437596 557502599 262744264 848031819 479119965 931005753 58790747 696032574 464097246 940310130 51017377 436244047 235100080 384190187 43760267 534641403 504319331 850730837 23641914 693052271 406413211 769296288 627999695 775792738 50778442 815619021 460405090 828785146 362395258 853284834 278561802 555215028 497403987 892957782 117272438 326180630 41608339 155328087 137527057 885200971 537072280 893504124 322503200 436406989 283281249 730621656 66629209 118018881 18727012 352857737 154108304 214724550 42223574 962816727 112266582 976892735 733170873 908811633 813081928 849552856 219425103 991745796 647404411 886570809 39209183 359849929 326045363 407263524 123991409 380908136 350694199 892665474 633402983 820986542 574888586 732089131 551111830 699090197 384839719 397025230 270054024 788831881 738557820 917356594 583438748 722606353 444700419 692864308 608226830 670568261 609580949 627019200 237019288 260148925 32823659 378606764 284711404 801203074 640087068 744859616 740269176 998612324 812538457 941403615 704067235 757088980 593715884 710425923 388694482 990982845 692430086 742550329 658654838 938925836 788736041 800345430 691234764 834170485 781326809 998149667 153512115 229385557 2945956 311915556 89576843 822625612 73623542 686273811 100123703 416498859 236674276 745466989 75363549 906220185 664956496 951635425 877262660 948690720 654056840 755816862 341653232 650970968 615363628 631874088 621163643 738501344 3660168 13878971 13116799 953237019 686918039 924156067 582408410 881113237 594576324 838330911 334569585 689868046 407031587 894694564 46520720 701142653 423332242 588637882 36529782 330455387 295719545 400420110 51699556 504413437 34383423 878942713 731097119 944558019 917574311 952348373 126955197 574158681 331894722 681253779 599678239 681946821 226250285 729520213 645793401 735927396 197889752 862765732 119455421 401802324 311333625 583016760 200240849 579210415 236916894 640562795 237129498 399072305 340858534 967645086 588883583 732649482 307919975 924326732 355137546 834957659 374117833 825265051 310376040 841623560 52586167 799787436 398469346 498782202 11086583 902107000 192151832 653590160 258785162 994116112 195632891 767733962 202797646 385733161 82070993 130238780 59603501 599238165 305177179 591193738 161133143 966274339 698948834 716258648 573574567 942288923 292355288 900820481 13134240 633362723 180251314 457872371 345441736 752653365 725750791 985352352 933701797 957846528 187485687 866762273 120301601 194125215 13974855 593755399 528523075 597991001 104759052 924108655 401846583 726865473 327139788 832569985 191493447 661062712 636553964 775276804 267687369 944624205 529350216 602278117 588807559 979403732 174139266 744482229 596189472 888284770 300670824 830891325 374511739 895426075 578802779 949636321 453603773 479284408 239839977 671216373 339792678 411310119 173053242 738069180 365423171 994732593 341724100 569197576 343549633 743865843 284530103 436030544 171463326 290570830 269436883 502373090 64813028 561927902 119669971 544419706 397065462 711263861 432949322 480597743 476918023 970082594 578519408 694782262 639673700 995571077 282532696 499001936 269528755 922944139 835316508 907727862 294153244 304331723 253938669 734233499 140906561 876054526 673557312 783416297 174029707 812105527 726159324 974699848 652506899 913061218 501652 962126224 816790221 973207774 48501975 257647686 146834732 386744608 140269027 413342355 304955357 559695194 88470651 392642150 340315726 725751966 540834989 618859867 367388454 996931284 203923248 554813690 438825360 825309384 641342155 994452611 441368640 981640693 15597018 785915568 228628604 913042369 793905042 950458003 479644146 602029803 577290197 604765874 253503912 935353238 576181347 787502623 145722562 545469515 465394072 596616927 393799875 465219923 273980020 858990667 232163030 429670124 203635211 934239639 871518121 935986167 23674062 49518006 6990207 412077515 33956852 861876015 667468490 824762721 735534258 792120097 450663436 617764110 142423724 483037626 118228713 238924968 128954114 752957603 297331061 583434652 510988799 847801386 631325900 898433765 831303388 839381027 360514365 979098066 250036347 724104256 331018447 880613857 272491354 995282846 177019375 437749883 428878353 528499992 157491423 164427691 1569783 994078081 116025856 208473122 192614366 677511551 614966617 888762175 882281365 926952471 860828506 939274636 328462978 339457191 39890122 333861230 251488560 478162663 401809637 940590067 515130363 555247822 427700669 655287915 112796053 774706200 457913399 689884132 160887669 867375003 253696593 343062322 76951117 753401878 154341509 928954868 806682580 889596340 222040538 482933289 427278985 928595917 33750664 91434691 38844520 434044270 122453084 568010809 187958987 657870171 222784416 781769039 694841070 937103827 392555144 761303073 645029088 713785394 150129400 807391356 473271226 498096780 438747530 508050890 411084371 568961091 485014030 570855608 254046888 431346651 77524388 701706788 459562636 972466028 859433690 955383615 294891470 703624564 101033130 755439489 372627967 871701404 338576297 935103138 286951999 666814064 194924877 582012746 325118897 700995144 696358444 900760660 314755137 626460785 415068839 718598498 376543930 818789278 266253088 654366840 53189726 969189089 864341563 964175375 826348850 871157472 413635705 867745040 148658662 213704403 145789611 620889020 196937647 924521602 129446880 957616354 936025285 944888210 1846631 52540303 40827881 629868546 100344750 509011342 496223135 715159933 107684020 511711116 7460623 63658615 46966036 621579440 442979883 668949893 483483348 983773404 882045545 894838154 185457849 661167977 4455124 941589344 72814268 577975024 237400629 429833929 188592059 880771972 56935809 67888416 24788239 629721043 201157290 597090325 214844557 828991550 110514234 201749246 88110446 588998389 32105400 327147027 240011637 986362582 599674513 614186959 536480349 901118753 2607641 316319587 213361946 509279746 85046555 755563528 462716803 653555669 144005856 991823977 347335147 413299476 127254120 477143128 393223267 640929279 177289980 589709098 502585561 552810675 117579781 648725197 627458086 889572492 792279676 965688522 492012459 868759506 605885069 670643166 79625374 388000050 238015390 760425117 472013271 736449494 718271133 807108138 729235509 886842783 477544113 560300801 389561585 653033926 342077397 575196720 413109602 616228483 341911231 364073540 222851419 902244744 603358307 796739530 296030480 743966470 386069848 594794263 289485246 621664430 184224386 500632822 498754318 662968455 350677076 907295888 554705249 862165220 371207546 577942888 421814623 753018319 434188143 890058524 809240265 974661573 545237807 556955864 122057336 412840068 203885195 463313792 334183026 709726529 94459854 439898664 287863961 562298423 310716731 382665787 205927995 744550451 375353454 628511463 137962675 178162616 3786515 336180602 119177837 477210882 16802364 758936306 683626494 863340329 650665177 828337117 700076261 950945131 311141708 709618325 207981169 270567394 12565910 301048170 4667698 557630220 238568164 810760597 198410160 539580199 451195348 608234622 93003804 708929202 89247455 577836746 135291237 460262524 250836852 349947983 341735097 654720757 520092610 670057765 184463023 669373030 18377123 886108235 36263884 898775101 25496960 166226897 64657547 571020385 390390728 968870518 228000364 350297888 49614164 343078172 43703205 976412237 431293239 584950258 503521963 914261951 11376048 982135625 620191301 639519325 632940419 653237138 350554701 958351849 496279842 820709945 270142496 279632384 14301663 26233929 3311614 227517473 142192370 255894646 33500228 237168979 178044152 966209527 759117268 795411299 539435658 606216369 411645869 962328104 447461766 487775815 209302643 853934457 787111013 933193235 109863681 696926020 55527888 130937226 56676534 645774286 314482057 437744736 173294471 220914815 196185730 926092819 63477242 465807100 67126759 519523403 40686694 723877860 599700737 733228854 295330541 741465269 11099934 521192891 218908790 947286807 155369394 262803095 7988080 665615000 217165021 788465104 403145252 842756845 553599673 611514267 501077563 650105223 493189304 996526745 91237444 139481406 68898847 418393442 298849042 905008057 495332418 778563070 176866771 442535817 38507739 371746500 114341890 126112866 55449367 649351798 463105337 912797645 320725609 886714643 325238655 933597668 364841139 698997156 90714933 631503333 444360799 648161180 300492366 892202451 614952315 909339226 4500456 247092530 89315223 410224983 92280772 366359365 204963782 406617154 277686313 862033740 786684909 880152485 417291726 614699667 278264119 350529840 175186688 513553526 308622532 815474299 611680495 686611296 143176615 295167941 238493820 685683078 590392052 831514475 470670932 936948255 117975236 599279742 80044991 242666518 44239224 411173857 257745833 691119531 564870524 846897685 755116771 766291509 323581594 801751231 195558728 327961329 236661721 251558280 229921163 506508358 287057509 944422833 323235583 697301365 217793631 744235129 606002959 942696043 196078135 361273466 127419129 175931291 81368389 283644592 32591235 533377668 477201889 765873097 291830775 773500635 424596976 926468166 495903997 892426604 28452746 431081758 2813214 862403288 20561382 330257096 215759961 518389047 159027750 445905547 234776780 466586545 307741274 713268297 373718631 574548541 151010537 899985957 534859403 630777235 500343782 722981810 499504329 828435882 815256290 933942080 511494770 661444400 643363948 991625824 175339380 290969565 280679907 735675205 554271015 728470929 634551078 938465293 494431547 672774922 223737940 669820088 319811063 818906836 89734147 397026164 206364471 267746761 242994 767109779 99746536 537375370 15928895 376065645 189049073 584243823 345269690 754938217 108751617 414543104 120892686 450411210 57363863 395902975 264924736 647115337 611780613 707491564 694947751 814007402 16608020 749207046 66163103 486744951 30931221 804139073 306561951 420069168 383013937 863979041 269267268 608946257 395738509 628638697 249499510 826501683 549007187 854158574 498460906 601228498 47056390 202803390 135596062 252727271 61482623 500516962 293057794 389639691 169299007 397661298 355846177 507062246 166144310 616719319 40489321 54638941 9476009 775192360 178407229 422437250 366313230 961362192 360249660 736971195 701682867 855111953 651129227 985899095 492783983 821389526 656701728 841451136 606756279 939140368 798400382 901020970 536031360 651154870 227922743 368134493 213711537 704633856 695302250 987063144 586380712 930990601 544543018 825882388 290863357 926945707 923197669 974291151 224583769 598080641 372482072 393078058 152436871 912593450 475279619 547881266 117326704 787687135 133737493 668447462 202526918 745005201 638515266 733565566 690812788 986064795 834123255 982213673 176266835 896011581 215020885 551093703 550661319 979447902 494500277 931584423 67803080 974514358 818423778 984059863 700218588 718442969 6097056 44576676 22269918 85674250 22921737 849724972 249200773 878840303 618031559 710411033 313346584 421905186 200061417 235973689 130534077 239015061 187091670 316188049 212251224 845965577 550194127 985194348 833936926 852035100 101201174 662692930 156950050 925280140 380471832 498666262 466614853 822287440 279717685 604367359 188441714 769743116 513708973 575959218 111976936 326033311 116910263 774540322 131500432 822130702 29831505 127033204 13535903 912944641 302538624 529806002 335073410 900262865 379664197 914676906 44388371 278845243 249335682 718590904 69844479 144790435 97261551 593911903 515051373 515379035 371188159 887492570 386844019 518544089 341042894 979695387 889971975 950831086 244669726 973482765 108736834 228519179 124259496 445071512 131914841 486096928 409925671 697466983 309299054 567317877 265925956 395648684 336485815 730059814 116748513 277988674 101944048 616312867 543454289 692465683 9257902 843599480 585207048 844296267 714357495 804223764 697892776 958426851 876825005 976260760 811739951 961482285 288106275 448611461 37767523 109337259 30576657 594185481 463964817 816981852 307467920 846941738 381815583 851937337 606297548 895103630 374189866 975101259 929126498 996985444 692138794 763659472 608440893 980639761 166824218 512414401 156282791 680691429 76758218 299376484 101716428 341250794 303575861 873081438 286354347 844294581 581749123 773942273 126901633 541821177 468746314 557742733 59631221 146406402 107017591 116594807 51352326 292026618 139202664 551555065 213808411 887748476 841509435 975098014 725461180 779186211 731833518 942870900 41337342 651874700 506836625 859817200 9598841 385985354 313422553 364323981 204695549 896502800 111123219 640292777 447262252 980479040 406436488 518761642 247185119 412004319 218138494 238393284 233381253 416325123 280661838 664972292 375033265 942452375 677462919 925223180 643363166 682903638 465499173 502878991 406948786 822230414 359537524 555740592 445024061 648938575 40574285 842851341 689723485 949303603 313989738 635654923 421815429 944587335 143814536 803465679 647534559 790011205 479447137 640662214 129758953 642060146 621112922 699835938 51329814 933842269 558378471 891341517 589339246 740779842 42427463 627622165 552995649 842585558 589388050 882573439 101940213 356874439 161322660 921370126 918638839 957453508 929442256 990974687 298222131 810191090 779610176 890206997 65460236 794165095 496026988 992546431 958721006 984106963 266278569 815460818 744561820 986887796 939349562 960956069 872463901 895433341 256460394 776030714 607928150 609904951 349085221 579511674 389275483 436619045 218212210 745367450 260813315 986437293 633088457 900623760 646539896 958956897 468880246 511329801 293986841 781968361 467537461 737437741 450400860 580425496 214619559 540775315 73418996 514434659 445906667 798785249 172221960 209696090 92650116 483181002 464669536 759919170 678414394 680071371 522444362 854386557 60560873 182599366 21544872 157292415 32640761 233117964 3981500 99235368 35192640 241182571 125078029 194935716 5007119 562823334 510724925 651852772 53458277 251918740 87457492 874812825 135734323 673111132 264495770 394881012 82955451 447871830 396701624 655697656 280594579 859558641 459194361 871756940 798109643 817231720 367926846 710008126 671495713 797277698 582798313 676573274 342875581 517275243 120557116 323971120 56046162 974315616 88112648 492399056 180356686 813356727 635587779 931806351 481358794 892682210 797054830 883070013 528495855 615911118 276921787 912139616 688185694 728648525 383661480 695501723 179016930 872636309 679569949 934584176 186538112 770502148 747635952 836028414 167815129 254942688 60296282 457862931 233169343 997225598 653173786 679066254 210585439 258425354 233169150 772249031 510606834 861451781 337432967 405380215 190863795 326564802 285478621 884211969 792415918 939471944 562051013 746982892 740740042 825646454 425682895 919088724 64307395 802025305 657738343 983296608 681609529 968210806 726776041 988470791 796480715 985826153 857251956 992517072 787228717 802582984 272374710 816614568 788713363 930187408 819761080 959606084 435064398 766810002 604601914 745901408 596432567 921331697 917959014 925530580 252367862 465178389 456413334 457492164 81525944 789044111 324605491 373653451 9201984 129345706 126576074 839275366 307606775 685233526 278039505 444604757 270309925 293661515 40723538 599704649 353600068 803516918 62304837 368260652 179837616 701613639 222235765 618304520 208333943 749958971 460946588 670919789 654803529 690870208 187132992 294099602 15116794 456765645 17651486 929166744 224115977 814189149 637518170 942651516 298488019 638162569 9671793 483335789 65132624 236139283 49914104 579733877 81390881 846109998 755337383 762835079 669318700 918274178 54006422 555765020 510083969 876600185 245001740 952848141 160735306 920712373 572261016 881727359 832373038 950107651 161513666 395417919 332577203 463834223 223413338 937897383 411135514 962907567 794186998 968064486 18345077 739887669 235227667 652866549 335739451 937624664 242363315 313592589 230389459 260329675 157525821 713963137 543545250 605725255 324582597 677218063 290286606 785907482 354496455 747967157 148917461 951180572 482755475 494096299 465753490 687674891 123647753 383731597 80589300 346903090 34034614 312989952 257696320 571705071 51797095 874006808 218265101 415530336 279898857 581261482 373343478 823465378 322031927 606818034 577285508 910621605 704095576 808145495 74115051 720158471 280702333 680160353 647757517 946444960 590963087 951793783 135796683 287652170 149007200 432313943 85148336 430138156 309832914 515751229 374563570 979534696 267287077 542256840 171543041 398445688 188486849 727943840 676342327 740978493 346082739 682245190 484963669 838888618 198606547 361405699 122443017 879556217 602211607 828661610 725970633 866366151 554063638 596356798 160488280 815950603 1674100 41619422 35391352 745128332 592060310 615735348 12979625 405474401 300890601 753035760 599399377 890637356 116230937 967456442 306032241 900820836 1597359 448389387 128921114 245175131 244035623 249668856 242264242 400138836 335052428 763043310 761880598 793740775 636936328 680190264 68935423 841094965 426301748 680846995 583924043 962747717 692985606 837939135 632244156 919945080 148934647 882374233 437411940 680402896 2754427 520394650 363916931 408395125 380602357 661627565 427771342 782319846 164704240 353777201 319957110 439570821 231270599 464893681 114466361 725156951 396304882 580493323 226767641 447483561 55933289 87504714 82725554 358957533 275162851 434254046 124138402 680258937 354054384 690270961 183693688 549353567 13593344 704709051 393543352 426318318 165316467 167530790 149682531 711616420 526356054 800115190 34970162 715482162 261096939 438786245 55364197 444731469 289071075 943336209 853535044 871524846 576540358 865034950 4425820 192826504 125941979 290333738 163177146 931304466 398949033 770225878 106101034 129502162 114414639 484307210 288002857 587436868 83902568 796997607 633097170 938858218 676992341 945421031 643034408 749316287 720937950 738578407 656347307 845243813 783607384 798797000 204054751 269702123 97714168 597075356 382653497 721325301 290199394 837789683 181413184 246570941 158455470 251746849 229386307 373920271 196203318 870891431 536943086 907844052 590621083 599171355 266247475 431330914 68112172 692887378 469469680 795329340 165003296 468378635 256690407 770576632 642438485 804706955 227109473 820040524 124794831 214227697 195104059 468990964 93937486 108815399 3832289 543659800 499924014 901137063 132165718 939794181 228541798 833988149 822929956 830611990 403603543 473499346 36362774 307066795 180946693 718883931 223986449 499695030 211903160 598561141 502518303 923502524 788031989 988088164 502335618 566586749 138515419 158383022 51868045 268664267 173059234 725782579 473565826 618675238 413349083 824300137 442378187 825757667 778286682 850399096 466190107 939937393 897023210 929562744 621411308 634682466 233626738 341065007 293829391 327880311 70390820 443651021 43308086 467073571 338009493 350518686 109589986 227356346 226104636 283371465 226451560 661519118 197315820 764083659 566942114 817062010 800672057 903559963 199866864 429616978 222439105 718806546 271022445 518151392 18152876 411595693 141010048 679166089 409492256 556378567 330939311 541212114 240473128 391628392 329450513 543584230 387080823 580522811 120545873 655918284 399527616 840591441 208516271 211623914 109303687 321764137 20225472 560324855 445522879 597342681 203837057 699860201 81398680 665481666 651690081 785224495 216382476 627106093 383165429 638653559 490627764 796936603 524220473 664323381 470627712 541185606 298695603 978311395 91423784 659660261 251851654 433150836 98549654 773117759 475529037 700154061 581754637 847608731 301498059 439536796 215928798 471048320 208143694 697565078 244844258 360208778 119511477 264525112 218201032 948060929 447519380 837878797 618792185 771397635 457402769 616210131 580162817 787963763 642360062 744997359 570674339 949841199 652488233 754991227 267844111 321025031 226716528 541989408 151383558 267473677 19083038 980033561 640743627 778099734 650777171 665282045 471292056 818458974 206740304 850682992 535709543 562600127 301940266 355497316 327321981 758659742 230603694 917115426 568471515 897365572 225873552 286304200 193639752 412648629 135181739 300190838 205642790 999789589 641337300 863194070 565929327 824244641 614089825 907546586 296344126 320892404 280216339 480144065 75487776 800623723 432250160 475046605 392164863 878146693 827325875 851111073 48932028 241746611 195560283 569857386 390402071 508047053 422730071 615930315 171561902 594666563 382420591 720290519 452897301 693890606 268175037 829108854 306213944 499852364 52067548 961738891 478705915 952394050 161871917 361463355 347500920 460306085 166743115 526255963 226857937 674334928 663874604 777455812 425350502 931104281 36768118 196136189 187930989 197155071 53110216 299187087 291088054 910099795 172000914 777505448 589096539 609005658 391556805 980810253 65997461 516823051 328731252 821217472 619553127 649899296 280952206 321741562 42442802 72653023 62096196 94999977 12742954 848970421 360586322 557488827 377594537 858267539 34270691 718172223 371674664 996203518 622286043 918450601 255357166 676314859 343501542 861904725 379412772 454727049 160106016 586011316 292826980 547627950 528471745 886866489 471493729 497927478 389784808 922935775 565455620 912190868 797801123 831111123 411851698 570509831 416097477 568835738 532111025 652685064 332095241 387428073 363912914 643920822 26616455 802941952 738261531 814515050 773472328 841580725 741839218 862118214 463984637 968254061 757355932 773472399 296576826 925421968 66761419 206022703 193608233 647491136 588217549 732542730 251486677 810052797 234139986 294075855 243206570 267558414 178494043 345023443 181666994 779911447 701647783 810738824 512458748 776655876 197524065 833667242 543865530 849203995 439494071 819268261 717688922 752976745 737336905 879493065 499463565 987642629 906919630 991047178 823301623 898961053 233235960 488515555 53733490 735341174 473327900 527116130 244543368 316064598 105116233 811613507 380926251 667791330 62951914 828468696 523171718 733418078 400963221 424254665 131517487 493315275 193924285 676840365 607534637 737505092 624496951 971646099 320162398 585601641 220817220 671914955 475418096 778425815 625180324 793960485 222248439 960634551 902968516 941619649 200200404 463769469 163870275 267760114 182575457 875030607 81280551 400748515 150268835 955792000 929475293 965627303 797990205 879568054 217943728 244902691 215912994 335915325 222257719 329656874 120630188 415785713 82900772 585831484 291704344 801496459 96869973 316824680 47970112 157644603 73722214 829269553 22902168 712889358 639760139 823915635 624257445 854126097 89805906 586977668 375910232 748786398 666780010 897931450 111037480 389264982 145103443 548921783 401924026 447492649 66643006 177848866 145856224 412162184 310466697 316560810 197857448 729670868 494023883 598198395 419460678 838730655 792033903 994976709 172045931 570570789 38277971 609973787 337527688 496539083 277207036 542121215 84403918 151829144 51710049 865881347 780175717 985492017 363166204 657479539 513307925 567949346 83707185 155902575 46313279 948119795 103727782 563845921 145252251 230295424 65543818 353043212 335575497 996077564 839270389 849855093 217349036 713543624 292780787 583526592 352408143 825689153 669433182 756031400 46595171 760344199 411678733 647568000 433693577 896479836 735034462 881126112 206092167 970664911 199923291 597584459 597214980 882773517 606263286 734401890 63291651 127891688 48826495 590575014 213503906 582794435 210911507 437062579 411561992 472749530 421185391 594049805 511332104 908627064 892716693 928920258 437982933 545435066 274588139 343184345 300550822 883568373 826473750 834252106 729753069 954290596 941690875 947279700 410622148 735139387 563799584 987436976 556892614 574541090 2888251 494901934 187440425 455064391 349494133 671480707 563713672 760672236 131203687 675015014 308073185 671272173 23816214 387733205 91691883 150579368 27166881 838324426 327268160 551006727 454805618 789119975 304117152 719956433 665303552 809777334 29593606 951355551 151956920 358602732 140360972 376965867 190373546 202710646 133408670 756047978 740572790 951334960 928215783 930305329 824360969 856022670 285513724 605400149 229425265 440674019 39477567 503489517 450725548 792138392 445582379 918361382 437590198 756030328 46814389 364684980 154744857 655243998 612982201 792023070 31738379 242858005 68206393 779499985 629472561 750172102 354698678 716124469 510583852 827137289 346106753 460848792 291168082 436683735 392238644 739382080 172315291 672520722 604430203 941699980 219937484 898867417 732719612 874132727 349443244 670219672 78075008 405901662 168959139 193555133 117943919 650085876 489516285 787542599 762193724 865729823 800964521 978941156 327567722 352350850 173001289 856027502 814094127 925885212 281578571 853261262 104095764 829777393 389186525 673370301 568936046 618756984 389553913 443772598 272424563 846118524 580994025 714039004 696304439 698754119 16414187 607113375 200411454 292112710 87126881 325865596 105959416 885968500 171495876 712841093 221030892 378802557 272291849 445570063 129286448 797094384 673765040 678774977 558294618 739119837 408334329 806891491 509144607 990516024 197096484 965969405 391821811 942869699 730711885 888134831 94287367 244959175 216941185 616335811 28820068 412589662 133962678 759134100 715253221 989345906 507430051 722367941 310338035 800781894 553046134 692050058 549993755 790665043 74424092 964622036 488462352 575477646 431550453 605848584 91421322 478753820 61322649 453476971 139005803 867003642 828112769 985942055 414369385 712955075 644957329 780428893 59626794 418921428 177838397 355395078 159131390 767986027 232858560 493067707 63205037 455566089 18053172 766787009 249682170 989831130 478594514 719390426 24659438 147273936 88435919 919968791 343894933 344744609 171540552 756636512 203306601 507208603 392284877 599764962 180703055 812990701 617484351 693815282 45350885 102336401 5191109 115866673 105964437 160571069 79148732 105133044 56915731 78735453 71918877 319043155 207377474 241475660 19446202 918456712 229653298 974231468 29679875 688331604 404345005 707556274 231970694 583675986 201213649 891377829 12538518 925436018 541854864 640893565 41196983 836246752 786794237 947460891 34356349 559383059 183931891 653766947 400316123 451428101 394106598 453048533 79039882 820183119 392778840 831847221 433590639 992705057 589579012 929997818 675319251 972997060 745715873 789435138 446500745 555426003 503720334 871764983 697943151 969401444 97847551 289049959 235904516 669908302 508389988 936574464 757655994 795065369 574501749 759423096 372768480 816724373 488434243 827945050 439991028 866590827 187257481 722863762 51062522 232881963 53636023 304222341 46186449 325897877 217794649 750897042 583616562 913882378 688570626 805887635 580954153 914917334 377940632 506725612 44165519 248124270 42712467 666283223 310273062 985822388 450775169 716326694 208962688 673176171 645769149 826577947 62720273 875176929 406843536 552414017 211436741 549459657 402233631 951990869 828589423 907577314 858839736 865468683 487636908 638608147 288749640 761506310 720136458 979223134 844218769 884097610 101339265 975557436 789144828 976430063 796952436 887024717 441234631 819332656 154638294 420368988 169829097 932012034 245947891 497408749 196635324 850292043 545681131 979408752 23242359 105614440 4721582 64884242 62925389 174759814 15145598 552660339 82325864 224105114 196428502 805089704 104849073 697666084 35745570 648668127 438021831 699032390 283063528 284565477 27305665 845362021 817936724 925418401 94666346 404950063 185852983 595060913 141928313 578646706 577462963 831924184 816763611 889352233 489820517 606244331 323382468 430143556 319985390 541478579 398630399 588146600 559533750 766594043 235742582 665282361 377017760 454744349 373156665 768395987 487814892 865568827 739448354 956576842 775309573 780088372 737723548 952396035 823961556 835002787 72195901 427058206 123133346 149218810 65380987 545617696 491833562 706969858 56543806 847170678 814730963 828043863 522981882 848113091 118501157 275722307 216185558 936209631 808175881 946136862 773416511 850705193 74991614 976782919 969015320 991370212 428669450 546170205 44545652 932545683 468979293 973195743 578097556 611956164 256752644 982207239 691790336 934362908 392299646 692304999 181253505 955274010 518476732 550289624 30539781 609046597 22209081 163741554 91681853 245282029 149491678 310167319 171011245 799500111 687394506 768380829 125434930 386753733 179472222 837194262 237632148 965878936 196123627 944728948 875362430 935279946 237047084 749878409 625825312 729217980 478284383 627477864 522457223 959761986 909106025 941138967 47836907 529290313 376913527 566465420 84314957 220090934 43481996 475121284 27532597 985043088 302904530 877439503 876521947 903534417 68362691 897289577 608662793 772085329 116942262 333593403 153036037 253083023 81826275 509025035 470681679 883938304 15738920 551224051 392852347 553306842 388228334 744495767 107058278 363344773 127490829 936296179 77655832 266686453 208350312 529822505 20415142 406714345 275405667 835342131 235578281 855735800 55315250 306100973 137076219 295258533 164882815 421516523 416367386 875528647 480552447 515865183 76501846 363842615 110616137 976222788 85026388 969227599 672449879 783415969 285692483 863027958 833820082 946769761 135557018 921402313 201541160 232987316 19858061 569135806 16090043 903658822 599381056 729037082 586393670 885346211 792163957 895598169 280263148 749732382 194427592 838919688 73786148 829511443 192937578 738473183 30603032 730690987 605017327 755982800 547743779 657780305 290708786 873724703 464557466 977415718 462347366 639508603 338877425 675492993 476239931 478975485 355494610 373643196 134304014 375800317 18336828 795380824 578224631 849286807 59360772 575137979 519208609 847626738 131401851 856401752 14754459 654150577 17985359 958441234 55989637 626004584 259154388 854047497 613005446 770539891 75673026 874068426 509046861 851499803 367168899 981594943 440286590 986424269 808367817 852968962 62084626 713593600 327444592 930018573 613650310 974070138 934951938 986898868 610517745 952801448 280691491 681992017 558633829 914203068 378761139 586486155 581497717 867522503 302169302 443727023 421317454 918805737 646580178 756693756 197417186 871283069 647853182 770447347 330955828 806551078 777067709 974794255 167880544 738626558 567060694 789532554 409866975 491974615 71918462 982152520 881880158 885625264 230307529 746453983 504187321 648779960 442307337 531814456 462699784 852707766 794994833 821492286 565331402 870290880 244974280 832081943 224771971 860203293 90761173 343367597 260344629 401590027 315984081 734474085 212116519 685817629 656245920 771331046 755851813 756431083 543702218 594076094 360453106 825979462 715634850 910966445 776966951 963662877 273178249 969736026 792190315 793889156 716314551 977910106 491247676 766693552 221574511 251883337 221248667 662341562 603484290 717735394 638802930 737280421 116686727 233190742 10421575 161146916 76502441 245466171 114419027 800313890 491984310 523442159 393812432 409319864 379420514 688844016 338963700 520153989 27964826 715285284 480699453 716469747 508471250 836651203 708124072 842842741 69973716 804301990 299085502 582864170 165364519 458936758 83279555 86828151 55473883 418712854 367634382 846219229 251130170 681785135 677974468 734193309 545771811 946829989 360612469 565589052 306548027 851231976 100539596 367752565 273169768 756762211 735235580 969136770 84425166 292877250 149847068 624680303 553537434 695047567 28933484 172435474 50035636 362407755 274397101 667200533 566153397 874906519 595728621 651281343 587930508 741926325 33416059 458299727 340756467 763344632 177211558 875387151 680644579 977232596 108198345 109313892 88964875 975402815 589901931 691612427 260236208 731050827 579536567 615090738 250287494 613278513 587387274 824285767 516967420 843058103 255049282 604868110 509590445 571998566 45107874 288594509 176134989 712210811 410264579 873233932 178548733 191504795 123173391 275392249 226652085 402254892 347220182 777755715 755627148 834834374 24129559 879831894 194013101 726745981 466083837 800776379 718440430 988050832 330559076 477477295 245638108 818979727 625581594 764710990 570015875 876104227 717759481 790813449 45582964 838827349 117498762 359137112 334033912 521795462 506342036 845887484 219050354 997817301 711706738 809916421 263524062 714923424 421703713 732580600 429961041 707430068 245792467 555479736 87872219 504372688 344540070 427217876 418018565 861931966 132073557 468454553 41161921 808009183 77159991 140295693 123211263 581112564 538578805 877999306 160467917 312060391 279223280 439602433 274276590 836503723 501787771 749712730 14280868 73363703 39940387 340186287 36938587 279115131 119796930 688740138 173192309 566544683 412081968 601773785 359260178 429392350 355949188 723656182 254836963 977640668 770475108 895820833 822170386 975882352 805839851 836519620 719473505 879944335 387742326 461947461 361108064 671973816 635444201 671854432 177673506 376601314 160202733 387530979 69509169 926894349 159863164 406502217 39844260 527083452 507652829 872915685 80868737 116243937 92887123 154846298 55945831 771913728 412661866 909802295 93286590 796686869 156038769 838836085 132843072 367381336 357691152 610180200 7631542 660989917 451572551 623111377 107084729 620609841 288732412 769571393 467819028 499717974 68433053 281175859 17490226 302408000 28259175 218317206 15799419 880856232 427070309 732949424 186028818 499937526 109114870 559951736 492958626 532787411 263932747 661157656 548744967 587296907 435728121 515283382 303651833 731419055 157583082 321813662 2204135 197297934 148358730 564142765 282043381 895833970 193061094 267894666 139564078 400035747 312637635 863701607 286788753 752854718 571689216 932612533 537765516 621344402 231210753 869938251 326344117 533133449 252153987 962917607 940709456 949931103 64156657 458904756 65864686 231624839 60955168 858469453 532915227 706462692 81102382 258172426 88377730 773817043 415173037 831733271 242356105 789847062 702562515 922310907 149292072 177826600 36795152 453986069 439499196 734535126 362206421 432598928 345789020 852163843 779769171 827601733 381541504 845177156 16754757 511534442 202534541 347636538 223625944 538460225 151024457 590233136 440447837 955205049 297049161 604119931 99862591 433725326 5253722 117740897 33132569 96647787 34835739 945651324 151582936 902428478 667502414 743620296 5211890 592004065 353036692 896287332 549173213 832423169 317322967 896471342 874928171 993415499 254671977 741180898 443481879 866935074 757805571 782271385 94536012 554259220 94524464 559711305 25211433 753880652 207579093 295151162 224778408 424382333 312356910 859034967 798452427 930410082 591081243 959608767 261944034 608980028 524469861 887444583 575524189 661342101 315259616 843863127 750616859 857239476 522546780 685621000 556739171 579422490 406466075 517518808 438360160 623777274 400779246 547477954 160677428 258207615 61908100 820788946 639960262 836169535 635454787 674974688 552364963 974284399 176019398 836977583 493823116 615813802 422949811 696817070 490281707 850270914 738944174 760276762 522987702 865070023 817460726 853140133 569829457 777637354 271111967 465762526 422984865 783404548 36435588 258500497 34426480 192481888 190458539 477744764 153021772 932985932 722076385 867561207 561241210 600848298 238194332 665399059 318948430 382432829 207045628 731965671 529803707 668737890 612884341 761793900 387809225 442905250 230073044 716723290 525544703 583301035 255820541 645886223 427649483 733313412 643603423 868645172 840635994 893867085 623216931 797293760 464898752 838171290 428103218 822030791 550673365 875800621 427684374 861495955 210983616 388016192 264429519 546495088 217777893 798398345 552074858 923609451 115099786 934803014 929968126 962423738 395758307 982522508 905403938 980224663 572195587 732368800 106259430 713133529 503491437 742988186 471290169 891165127 366348557 825485189 516742781 628765918 55240548 300679998 218179899 540672472 278467198 398520820 374575352 813722751 722457530 782415384 111713754 451050644 362093432 661481192 121636975 582061794 488130942 966306519 374668423 943321719 838446559 963194135 38155126 297054652 237513866 805285527 721802539 936159532 280637360 549999623 460395197 953716382 891796234 986773010 278406008 650967078 250528922 845253313 488536424 751682364 89995567 304583307 56651364 902330838 60607978 125138392 97949011 725791601 35044679 134779168 125311022 285203416 43080109 679449482 252500181 606256325 346151129 577741513 235111007 955073881 638771159 867108123 334278427 520543595 464344797 666858965 658929207 816803750 520806593 888809411 489259563 587668011 237518474 633841174 361060384 383209522 150408029 477641998 185609655 960316347 783931112 943508813 933922617 939076033 638549019 915289647 167994533 522456813 435889136 918089471 332520955 443814543 319652436 393744782 330345166 948813617 198425479 572857663 127219628 653323061 232678167 991044750 926609381 939819955 445963832 977900850 515346984 866585051 232320557 451456088 31990629 789431504 87357945 218508340 200904179 303738716 1895774 176251059 86895549 927885443 746125954 913623871 835720668 866477076 398686172 657584475 64256631 179656788 172604903 261451087 48729385 414442427 166654760 530255862 138444617 806235174 471593381 766443233 616686741 882222973 111467731 908667962 446187216 675112546 405268135 820726921 213106049 863102071 539687073 892531643 273367607 949663280 139327147 822475659 554326566 923724956 427553666 751144663 271352477 330255508 10937618 857165711 231684046 634372052 1348122 224323259 170334961 583060060 277929077 388531856 106301299 922775332 308841992 877187496 732247010 992852552 696331619 779321129 146468456 755351369 253825704 973731936 219163723 866499983 474329045 615886675 438314461 885607708 477712943 746644856 134577089 477065241 76948739 802432619 263038123 339939621 70707934 965583184 733922591 809609682 419838074 829686785 68794406 598891397 427418944 427589331 103943984 120404660 3934748 33091236 22140918 946339457 374474565 589079653 451159394 855532063 127986284 702499860 191520748 898450502 399067494 572690901 113339574 967231745 751312027 887001637 439056518 884732218 750527084 774749699 514216242 825664544 779253790 840725581 687092055 738727907 510597683 712940012 595032469 691734457 172338882 366432623 281487855 651140699 202528027 381936716 78471743 900931553 9883251 878723138 109322022 448504886 169515141 992461845 549778969 771865307 665424565 786782431 469188420 625002026 497839813 785317327 105751833 850248661 426053435 731193483 144375415 244534411 27026517 544930666 125707590 702757726 429156705 557415810 295321434 360031629 43877544 469396532 425871104 796723379 399892019 964900001 875645681 881658982 289029987 461661285 119417869 700976335 52520973 584117817 342904046 719746491 620908134 943837837 48151810 698263136 632194834 766749219 556313275 796264223 707913697 874582250 103157616 222549931 119032086 299231790 17165631 842463284 577885426 912160308 346831417 644803203 81110487 799711875 785462794 829175326 823758572 841300086 778790073 914622103 470588868 569063400 442380588 485015118 226602712 318105946 133651608 623575717 38432296 893928513 516992481 974509407 13105999 805087719 295341732 419165503 326316474 608429013 662269 777057644 645206129 805950573 761692329 789351656 149952922 441553992 116102742 707994790 476644923 934815521 757191140 804965026 591782061 768312907 224215194 660466293 104259114 540315831 123885899 494567248 396614649 417663786 325296649 458601694 168927296 696906670 438315156 996670798 993548495 995557602 167884038 941478738 534480894 599992676 144833137 163295921 9287277 622843236 158142465 913235332 164583151 256378812 50960366 898275014 3532414 526676451 306819466 376838161 45201049 413254811 62419559 997794978 64190041 249345937 32146223 94411446 63114212 522232825 507316320 811533974 464460005 617477991 389668467 839913151 595733225 695962283 119639710 881844988 522924669 597458161 142540285 395075260 288513180 571392238 66697400 485069109 294700697 518048202 378634095 592089190 374836545 643927581 36947255 466099428 354350204 438828158 389691930 392948472 25908490 817837494 648621235 833404967 686920144 985730763 806473841 956153541 446670285 639700275 513569732 900264417 389451780 430120598 325308570 477468332 107262354 345146915 120220893 639282107 400425122 643204631 516297213 565168814 425546371 929618561 374075204 675273044 650889708 911210447 267321466 466474639 375980293 785597830 652843882 961724088 307031655 412253767 375120841 380903689 193928689 257763793 25557416 229550506 68427680 822562169 264176180 474783869 230737362 691842853 156967617 726143905 642073257 860897116 456453608 462835900 323411330 502959909 341235428 444530309 230850565 936619386 633692775 781310217 543303437 889302030 450003038 489212962 131682329 212805103 77239193 673964911 50463413 468420737 319238491 789205170 403318681 954540167 719423024 721484672 428826639 691668963 646200207 758345708 53164351 550712709 438135726 540720330 51267701 270496434 126056533 513645671 237373901 796250715 661728690 929885865 413574312 457402563 380900381 464875747 290051334 333508560 271411885 491378633 393380729 916706600 403362452 751706900 589957531 799913139 650476633 677828385 163274003 868422296 331999391 688260379 378203681 753653462 203538079 377422601 349725862 389653326 248690021 331501607 78177066 363458555 218068528 550362526 299739022 703350548 223810763 546317803 261104986 697054044 493232049 685668172 645167517 904655313 49922464 417582178 251230636 632006709 428656350 694380585 637828993 929836867 531670817 845717023 166784536 651334692 612697479 747157752 246380917 832083806 711574327 796579821 725268405 847297326 94373509 435141436 333155838 539582124 301325253 698443494 655013570 807227974 144606486 989348068 219330378 605419681 339465872 558604406 534784365 969520809 613062960 758021476 184659243 810592193 530456150 879583811 232985981 620872415 403281310 939704496 231946706 579576211 509323097 939341592 731359735 871257879 168863192 751244843 563166316 993447953 235250063 622451042 9464156 50694407 39615018 952745885 391516172 581952960 365115706 636866814 496505044 905306607 560850193 645217373 267096618 535608216 154664583 748649540 90335438 748425801 193214556 806272957 280783606 975130279 951027730 951353942 41903167 975225470 768199838 959772020 410581005 543048470 24529812 88787587 50496781 975010173 624212827 882665440 280553454 390731091 199664373 229078247 132480973 406586355 330360130 754823738 567664390 989107585 339508457 907787718 487300306 749266944 88634099 778549814 462113333 803329873 69708796 846071326 654908887 677425001 624648367 856949061 180468697 773594018 184805852 571369094 345305294 692228355 349091335 820623218 586451550 614597395 320625448 353362468 274046820 387057417 41400832 873866935 275552397 540678364 98357714 763197239 71631280 382582322 206710134 802897420 321766433 812179140 685866112 712762837 237359832 728447221 531012725 751502775 302548072 540720985 413652297 847477990 493764530 888711763 352475401 454525127 304767041 822419412 273274624 849965995 804231881 855852157 432207181 846159414 100238545 539645103 172106701 954268586 904765852 978478150 613891223 900121030 633155120 751389592 471336672 570627951 331390664 545078945 319842367 619680430 343159846 390740647 35178660 40063811 22278623 294273361 58783034 344385449 300272940 516678349 330668770 519134428 374826005 644269702 354770160 492584408 469267414 778111727 577259348 678691806 455509802 994695207 499097383 912788119 239877935 769921596 358909059 646863859 236483219 542879601 196940379 997836595 893154005 993764693 446292542 608335397 304509428 404332791 214047215 450810967 355555972 838836230 744236788 965957899 440436308 992632566 386491066 664391299 470489264 693389001 262041879 405256714 180413279 824823770 79317472 376849860 106902624 733151826 630221543 719886368 44413915 844772582 287128062 922413528 277204374 687776595 51061092 408734936 220669921 604484392 238492945 460744485 10410830 901571428 873210555 908036577 534632388 735799496 55371701 459356313 437883338 976087706 182681272 862025034 349551126 405977730 361537789 626883289 503978144 508928212 140554181 983778023 217867188 369354918 168016103 920091449 63269292 506905787 303971112 393645839 352085841 424593981 368437767 933442121 916650415 933926668 530775681 774038199 94119766 663828063 370904330 705611626 68590130 764664256 497168303 552498455 350004595 994955904 654237507 965340863 665975619 964805886 272408963 410904896 133925972 603486444 363851293 500251292 255028227 643022074 524778764 645355950 445780061 593302726 318813044 596617027 473102700 750858144 463901605 546761884 443511420 832076167 291482238 999929126 476003360 721081936 137238985 227254346 140803534 605274879 453791515 874620361 271240135 515708008 49442440 538561289 467162209 479436579 379877461 876930143 620482678 924233438 529076414 903184137 475702051 491785607 234702194 723539996 446412522 823564246 201970328 750751159 336315647 723737397 106894637 572088150 187399391 424771298 262018843 331642891 56430431 486964615 351052626 925646762 863837436 974716523 189220568 480898761 249183543 940968571 486873923 792162559 97097483 352867297 234099529 783317759 309015791 374185060 173301759 637555165 536337985 705489106 238414063 799337310 335271457 748522834 570246553 859002811 523738272 869241922 69335141 159547514 159306785 374842817 237185241 269331615 18671928 116778756 56361070 454702058 258318145 949081724 859273565 910830863 391815698 595166117 447672196 495738559 474819856 578453906 244024296 501599448 134335629 611557476 562510879 803434427 249116670 798744470 308495697 797422279 178848823 512987850 399403968 793659162 186098238 781819291 503965161 575254516 112410010 693258061 43456419 228415205 21004836 668761023 587872573 686357820 62186575 810106255 723221837 866402554 122720451 711493047 378465798 759550355 689360877 702567091 266380759 653864592 65529537 671260872 381076074 667018650 395477471 845449168 840643219 980239479 361527792 514485726 241077627 425231703 385475024 773982734 470317968 953591669 932292158 975112731 333841474 395445749 308528028 725424141 27658984 991661314 623327962 740740445 207096617 388445532 157226152 995707597 332031229 815384060 235769269 666425079 485279508 661447858 387566621 776705326 758766255 873715395 210978542 398393439 306970886 593069727 99468446 830465480 109015079 751825206 644533800 883542357 695660212 865991136 590852468 721242522 689197438 853319179 649978207 957079141 894479960 950553710 846128321 865271284 70048711 356012398 63811959 936650650 880225883 957630293 232248573 374364318 41347344 971471753 174607989 937420268 485106445 807267772 33657817 441332214 406202378 626390550 172651653 479691194 457614695 706880053 163307731 729969571 232665678 293725417 255195794 313384170 27646979 384983803 190158621 822176369 783742893 857543904 441850494 811827502 489519946 927886424 600520815 811764735 360077622 877155148 813111540 969324500 242725722 735387304 492288230 753185324 186726983 431871966 356125370 620536572 64873934 702852525 657586767 993891014 918092569 995336096 90356374 162854537 58794369 987226725 381041717 771310736 226819920 384205237 277223093 879141985 867475849 895341570 631093910 796838480 257354894 299585042 226558421 927936764 829901123 837066841 698551414 735600929 103454600 465296628 94209685 905133902 442399199 979839878 784540714 802789344 289396268 843748809 316683552 455970800 96724087 717931690 388924284 827871890 130184328 696027552 396173286 808580419 284881334 545164073 463300608 907497547 508116242 584985896 583716530 640792760 244659077 334744069 269436568 365005116 282539403 548788116 521494702 930045089 70223053 614832288 397432473 909955922 324212395 413291953 361749710 402188987 200407243 434453405 168478527 559725286 350042540 900815168 638279874 849583450 696908061 798211147 203039752 999694340 76256210 578076703 380161562 912502729 140980628 763842953 25524201 77711719 66173811 609468300 358486413 500487871 139888187 878325526 665942423 716173925 400298336 812354685 48073818 346735198 146109808 623119015 181916097 333940667 135476459 397584047 144280431 689145816 148079959 478411969 187840471 892468735 63795324 632764642 594322593 827665052 603127755 872869936 442998344 894677687 373142042 473839857 60075475 817913469 420379748 619470599 148680105 645098836 337915806 487309942 305742235 791051787 311180650 727840616 641894223 677189924 2226669 558118720 316866544 518154620 275749587 439417505 187310517 322394088 297541398 859135805 5683187 76032858 30214502 941365122 62076992 320492044 238875545 375317330 242583141 374346928 117654407 499683039 184603076 850349103 828810647 891352995 285929757 293651572 257666140 269956772 151166614 553808117 178380091 488969399 485802423 644214071 39516531 147633634 71278217 961491175 412159760 680054243 416516173 875293200 118108251 307601784 247010296 619583755 358334841 671024719 304930018 916577974 833433841 918349480 471609150 908723214 616359813 947175962 340531374 647585566 427197642 629338885 247283711 993512466 210601562 839233641 670170924 995846655 228804019 599414700 262371892 382289467 80628263 713340334 582989816 807403674 206037982 575998621 183192063 403732393 23430786 108774984 25015646 867012073 212785605 226053223 61287143 911445252 257066351 739923905 436704292 756850727 510516756 513731821 376972128 414249072 284533145 969336599 946012734 991501332 829981745 866761866 482960162 845795725 578799276 730003400 660653683 866975788 533940263 962726208 34950755 855229304 124668916 428297813 58938443 798101200 605713332 805375948 605113671 615449436 199855869 473338503 318762116 416727896 162321816 546687719 365230189 741415183 593749936 854162707 709365203 778246101 372408605 416064964 259073942 738642053 410237923 865711948 115702823 278330602 192943246 317098690 117161214 589910552 261736248 308015488 182143452 557459337 248585920 449539301 15439881 850923415 521694231 705837904 307077551 607107780 260982474 710264298 257520902 921730858 16238827 419977714 208888158 712507316 691979526 944693400 724878782 756598622 297056358 731266452 552493051 678657829 434109858 893284042 101268189 974201783 915360019 926252504 838853108 874860952 6871752 597438083 262618450 552729527 345889852 525145588 250365385 299254133 59688788 580825796 207397103 292942071 197952307 769137401 627004288 668829372 246914206 852554187 696730486 837300922 351248120 670654321 584790638 619150056 167637647 840532635 27796463 769199872 386143722 804558006 525551884 886653929 694847341 839569906 727110320 799233024 460167793 819774209 695417589 741444284 82798529 841035086 294265224 887490076 585099579 840274852 484299966 670680422 68089949 783655732 707385004 840157794 586734104 929869920 743929989 768585905 531438671 828536395 654713945 713598799 277203204 595907049 294892546 385724071 275404607 633693116 472148928 895517014 831920055 883015698 371166009 576301703 211613101 603681311 587728408 946046824 788009802 798106706 450832008 699320252 8951243 278822765 246698747 700910208 37512480 527280783 215730004 914564489 642511137 997909541 718508053 830084869 142392535 188044384 36804785 670818554 599641730 918363659 318184031 667322445 508049294 550669664 257581815 931419998 373880793 776975304 284616599 901128379 401921433 893857628 542764336 770861226 196144230 964651915 794874749 888290352 542563238 863477768 594178069 863990840 590834933 798158346 445959676 874119405 312999734 902851591 719528250 991482848 150136197 278429058 14743821 610137945 97149381 960313479 174067715 425391905 118045114 164272704 163163314 360766741 219727899 914717497 113115973 393205559 183024471 875712890 653499014 734990096 166486639 691150245 266219741 913376088 440316236 519378514 16143667 639904511 432576101 520331101 460817681 821948012 765745779 984400186 191619311 826158877 588878815 764303617 276008627 676893738 447392309 701673724 408817135 828788686 426131321 446978289 92173967 596612455 243764118 919022673 585084629 712287358 68810829 931236684 299791744 325570390 212673451 498224050 216222069 449982137 273093232 968534479 756547398 995417241 658599366 808654860 239582300 507754299 356793724 745645550 473301336 537628711 91986641 179407518 117738185 825702526 322733786 450004396 359730000 778790840 700537246 943487674 206169381 250969309 180765326 460277344 304621171 995806524 858681986 969255635 187584151 192135716 102864447 387414637 103653428 766407445 199375630 986437878 966294257 977934402 662984497 767826875 481518014 980637035 137879056 387496115 322170581 437511844 420648967 718752582 427409349 858931499 184002567 988372423 818173072 931238095 189932310 935261413 331184550 920081789 202804489 560099711 244090496 523514426 191131879 702970055 312487807 520644294 38083416 798487003 154797503 966323520 489804457 570353333 278072218 604619230 167762568 633508699 337563241 470797040 20824558 587953370 248639352 375116470 49957234 202294620 37329217 783521528 232768616 598065001 586560594 880735617 843785121 991950111 579736728 956438514 189523926 358417213 243174603 357238422 132018868 551173628 99419961 954261904 254096706 413200170 355411077 537578139 5940969 587275628 37982408 935594161 539355983 974637110 185053004 975467805 853290368 983536382 29448611 392472269 127294959 675362025 597940400 621226763 8170616 472986881 6766921 878531028 328074078 767590668 192238804 461360065 134259716 568097081 259196058 706088624 662176884 822307518 554410134 936914971 878242996 892123535 810955920 842716470 310374400 312123355 232910956 968068836 778867725 900516490 186464413 579204371 296553315 428292220 415298887 986635212 510752060 725377316 442187773 760804926 465310692 561151434 244100556 584705355 112693857 939524129 166505737 738612892 302641064 979551267 35497244 506830757 2608462 344369093 303889622 921982104 67429872 218586302 66467821 178213299 128583078 578856086 532000849 606229930 260158535 467575852 226668480 666096810 555653485 727726196 670524692 889102908 547378705 806867156 550324756 991054676 814722583 935852294 179532125 324474822 48487713 912129932 591995031 805450808 794853462 986055193 928232990 978080462 379720857 508794511 66868896 651143389 565008774 575252445 528368846 744855325 16368436 532494695 30933223 712589278 537669058 693992197 559095678 933397868 669982048 818949115 763433773 960689084 344534895 939079055 60949374 587352785 508710347 796544339 355483984 648048752 393175036 405582531 325432946 551427882 440641321 850192163 600494423 982340206 37448818 631772031 191230745 830969583 257438009 514735623 83446620 577334857 110474714 165600387 16383311 665600203 153448053 292964968 236263156 245560634 214466304 399679224 233230660 921813827 328684466 545246040 269009200 376509077 338286398 380994708 368277949 464626117 341462346 475901051 117487854 860919774 818667878 910758825 786108513 933937819 863104946 910476690 782672514 903401413 783105931 956370273 297507193 316015109 267712067 371752327 355921388 388618906 12367511 377469885 194327516 419412572 20561175 977928255 572569011 702865054 289888172 428910596 16849498 657866905 340599978 910808528 197068019 667816435 556382963 600188517 31617078 829426673 348735729 519657648 334388463 627879058 114463523 664505003 577226062 873201912 380123824 898601981 539652238 690995641 191392836 608151443 35542665 88409583 12293523 761716106 49052977 95754855 78470772 674826152 126992944 848212901 415857661 951543428 641610078 999054464 682896503 856204898 552757159 965065956 193980421 924174549 102184750 246187725 79014167 672054244 201059426 421152926 410230240 860001160 785763203 790100696 16983158 938301730 214874957 593734995 239763169 522066130 277002117 871425148 507941357 604617906 338679701 696496827 143078414 740424272 8202654 974403363 654052256 773326944 259683805 794261499 47248392 948191709 765053570 986402233 683262069 995271363 80103619 246610810 16363245 509586420 314246906 693723575 498161774 822899148 6526402 332350411 193895883 831995380 458281018 609336461 46874926 350604969 272208736 353920754 170403935 871577125 260940307 424332559 42059176 650316091 589265512 603097582 254197142 406876854 37932716 917362573 138943315 768730985 204317146 972039367 474279895 954261060 492944031 563006729 56559214 826079095 9091698 262278873 236385383 646678177 67172604 604127122 446307777 950455432 683648731 826581157 522954424 622972352 123666100 759459696 420346327 647039362 414071557 679945026 41771759 518010173 72946762 394554247 18577651 652797104 229309519 975393680 882342314 901338346 37671020 159993310 136920558 941917080 411065649 784905942 165865092 372121651 105983332 138165315 110804202 879337676 640805618 963541106 431035933 914671897 371907325 615260467 30447765 963819852 602489658 996319524 487979427 936371533 770298816 831527795 188688472 428849334 112113187 924556272 823091795 985398522 552132229 587531158 219374488 750340019 61215961 79009786 46147147 520145741 85295382 947009925 606392297 622224795 92875246 904589863 94170360 139615112 34387353 909172101 557228847 700560292 699517809 835912965 182508088 484434351 92804194 226194395 18639010 473348388 368893867 701986329 700089324 733937148 436834227 723701927 264068127 512764731 27194738 779862495 762528959 975529075 697234882 733542345 431923070 600068738 154163285 166492493 92142394 927172463 300511658 824858085 679508023 813261974 141495218 669978763 611213763 812037293 792284357 889474935 404259377 745327687 412238058 538580874 535451134 875561893 628484529 688345710 530483508 950508406 222534747 899353251 395367190 800458370 233646696 452831600 419037703 810521971 555549923 567278048 408265399 531743956 387810182 514282494 403708321 900177047 129784474 890957858 16623117 101861716 65738006 395179877 4078826 294357748 32007739 360708230 126980627 520119581 407076310 784250882 66557437 748283110 114340370 926664398 913876897 956086642 58759581 607304453 278883982 692895709 293220083 559048598 114879966 604816379 435260000 464689223 231147121 997616358 419158802 933007204 927488758 991244549 728307725 849123276 700029720 823083612 594197926 877711962 848870016 902268875 831118871 872655190 721151218 784925849 440765293 985603271 924374066 988612568 501984453 873497189 618808073 677642006 182657685 299136052 47430163 410816455 7995156 931701137 324962953 834456696 732645008 854142220 741829671 960732475 631378389 824342618 539486705 948354642 185047411 950957984 477769194 720806008 557461912 842150682 125176876 976455847 717133085 760577141 537053351 990468053 156769044 486878934 344380762 838927206 739233257 886834362 659777460 801226875 519829533 608495648 360015972 718689353 99133973 177664351 69550417 201906263 156315917 296081071 281692461 634139817 150452049 232952791 143974187 226344765 172487592 783736558 113093612 755179536 579027312 891345736 56665618 354832629 345317755 357165403 289262851 919292607 557830458 691537081 156252735 303280764 81351971 873758510 90821012 152376358 136064885 667692092 24072063 962321386 823988799 998477078 92676473 502854464 105600428 867491619 699879220 819831508 794328120 979809638 771451434 881727447 547803070 609247446 188477246 463821287 9142324 884830663 804571549 876198337 510819698 960399245 285843408 514725299 497254283 866817699 809298524 967788852 172497070 204603637 169083084 555410292 294996051 784312435 437141234 500288964 396979683 797724630 547539079 622909476 381872341 542343632 293918062 799133148 687496231 730150003 419966793 482955793 94326364 613426605 100231651 453371058 415405471 994352140 507565504 777067615 700374295 922171944 689754981 793843061 229094447 725878979 549956751 755309839 281365755 643537001 601150660 700392452 240679015 258013207 117743470 142708272 94423383 885125265 358210501 373451178 148555996 907879681 86525778 234089590 142771883 313703195 271397220 288994255 270170011 298066779 223548338 865369359 333239675 922465787 784198436 993140091 728978863 828252616 422584465 750764130 556739419 983349872 10067857 553338694 240731455 665071412 569029028 600651309 527623869 920595152 497411759 730959811 282033924 396634419 344921288 355196261 91728604 166798273 114467724 488066539 118140716 172731097 42786548 355787432 127002881 155618537 27667226 377574301 182554320 404076300 272962362 963507995 385203642 738759494 94905390 95628962 42784006 721264992 317079141 936297451 142654800 877500837 408455118 902068573 73403364 899682802 834704597 902988386 140275325 161233843 73622358 644985773 596975169 598638567 199563316 676543174 175304561 712255494 327893322 948269877 630905289 707794946 603455248 859148845 505630390 961824502 430232409 709804572 688308010 906299774 58347314 78605964 53792899 62942689 14340791 977946414 501418321 609067933 252766092 956336201 129757830 664081341 269566390 723601049 275980395 736033492 13696884 157687062 66427113 511303175 353130463 591326710 425861516 811079726 55852788 697700353 663994694 771338530 315225198 747896567 354809915 388028462 41006735 106934812 81785574 166764743 55526561 134228061 116934131 708441547 47146605 953074164 733415201 769509535 452037848 951124657 579931428 800677663 603148501 827893518 300392030 758941809 303525439 318955079 212237968 671949192 654779993 809969218 275963601 562555010 387409461 740143875 158029437 477974708 411231934 704559235 674336224 957907426 938340981 983844870 746034488 796257720 681623514 929647160 868008062 876195294 565037881 840537445 509959428 986243987 427412572 801420324 616522597 621597125 542889031 742201863 84512790 282103867 92163108 824206938 390072623 948477654 636079546 717405050 620989829 646166656 355724536 531090399 37167826 773197049 507438966 909471534 521106602 719504851 114701623 978786245 770802742 885812520 557609748 789957411 318960738 503107338 101421214 832936801 725164660 766962308 325594634 666461080 340198266 724819049 715800703 935423347 523546323 774943696 66426092 615788784 354809953 924475546 764654724 807867079 698030271 830647959 603578146 997549094 400619023 569225116 464835346 750283315 117736323 154661446 123019501 682078496 577284141 950728075 37463678 393044284 139033896 612154557 582647739 849937696 5625555 401290898 197519877 665613170 119064489 468605069 354264441 830875011 38834020 506140439 225451505 748812972 6110419 166918625 130496793 560781683 28540941 581070186 566835358 679812721 448527608 600610958 336131070 997545460 770477555 815650110 176870934 709572493 541388805 708531066 609964039 649038147 624294427 901798556 499103513 907767477 418806859 536073977 311224374 574014751 293227091 552454424 204390203 858554322 177932835 593826292 509273913 555271843 21133847 522583727 166154479 903509067 163478821 341438946 127369671 816291826 388849839 510859462 107607120 292959488 51222475 620731075 73287306 932487569 426565364 789271487 596595975 750641925 116095198 740490497 609110754 981424086 713226406 742795359 250289153 352686992 101965906 618439377 278961005 682155282 27882291 828055849 440176984 560265495 528617377 656749227 86670202 413256630 227158351 497510188 448301495 537944344 288342950 518832003 483802126 857999139 759600942 803128998 210382780 951613531 617674257 741752265 422852780 435709013 191253417 560104953 222354932 908687461 580088197 825259256 113159334 966143083 486415612 590523566 141030556 564922854 500353473 523187059 442528592 919729112 358546774 726242631 607656210 839129089 532263672 898368191 359977358 703130071 277125207 859620093 116150075 504086466 273341926 985775134 499407905 601517210 379988473 525869088 156752441 211188583 153855648 625305642 485304754 996261375 772963669 819123121 393304757 449712095 241425237 724512936 181536533 271588328 191379617 230709983 188210901 465153645 365290169 822404463 166277847 393112303 368346643 854705476 12921584 448513775 204383273 329964582 92369240 967823441 297546059 955594457 454503209 724178215 338987647 572763538 511795809 936873215 701921495 868052199 634636702 920093748 310859963 397644750 244993208 585268165 561799172 786987906 27142317 862449896 401461794 648488524 439642390 727056786 59286163 214925724 171524340 342436618 187448161 773646529 379786215 937380507 509751296 569312445 22155779 711922401 655502806 733379422 545649390 684140532 156347533 196115072 106064344 733219998 645625509 830280483 43229127 631765279 499260221 573895685 520990820 701810260 208442070 545314479 120135714 745509434 303797306 600315534 248324242 762237940 759497232 996470556 914160404 946633945 490541331 617713309 203198324 313838930 312963085 756617801 119156306 221761173 19421756 701085514 526115166 688587714 597583394 887097800 296636679 906770758 904908638 964205916 240504697 831861272 725904694 750521125 583406986 779686125 154227947 554802572 509502154 937460134 730807848 983726285 659057610 682408074 676965159 882334614 796815654 991651106 853070367 964214996 711137970 979832226 768743156 976073957 601345076 726383328 333010675 968322100 562054048 731107264 482417912 892498732 872408071 914032007 725922134 773188297 489995219 548298008 523779899 850842818 73310010 731699035 604154022 655622940 379665077 642690126 604053863 789287733 141276613 249390786 67947151 78876148 33823230 586747049 432733569 883484162 361421027 924586925 567890858 874528902 645729112 917755126 166410349 684431228 592812933 797120562 641397822 671597376 347158136 453197047 162970551 469791470 255243537 626810062 138094816 715700080 176507114 203284233 160368961 567215017 14043894 898917409 236020457 306371405 252749448 329178170 299792815 405350239 355890937 365340494 341296035 412703723 289651781 495379668 443113203 600253854 351205632 371301743 88484186 615864348 381079414 910786732 433473037 753489300 137727334 527562057 117785311 973271880 126965722 740733761 70297765 250495784 138105176 319965883 236906375 714345124 381418829 629292838 354369314 519267995 398386796 858642323 392020319 930317500 33658536 273034655 144527532 447037133 295635268 446797610 20051812 313328004 204060783 999599463 3317667 328503116 122277855 513594878 194619452 941876842 166611119 616787295 595594845 657513672 551308348 735210217 373252285 580307589 422963379 748726535 405968896 844409573 361325102 998364776 757210579 781298940 316942122 709227727 461176067 831694804 365265434 618840089 440633193 523392043 381805738 631624395 530921325 776136426 667636064 941987078 781998926 915327120 112334206 907725720 142331521 799941438 647884890 930990169 740013344 861609613 35953616 342681618 62675267 358770630 107719803 321622854 82034844 517378653 486532132 526350121 273589902 359932978 171084406 919902212 732451753 931277296 333305647 895343585 55113291 854488066 460454812 893607488 208671185 261710901 53877864 500726761 361088663 389369381 181111404 195580557 146365951 525796406 18825519 557317857 135084160 892461128 156517799 888221146 883712552 962293564 486742241 637500681 238306139 511458807 37255841 950560373 725225494 796543285 101571924 877341067 365656764 884800468 324606117 480606461 78538210 631263577 406026779 436363572 386708327 518115753 434774340 963338167 8445774 259275438 231535731 786639519 516419210 982945150 864461855 956999959 928826046 972030365 676735818 849882421 53416212 386232839 219991527 363624914 102619433 280956460 32444780 196759895 85765011 586384132 224889470 967236704 438121562 708825434 241115057 654627418 414971552 819917547 452592824 699530283 310472827 586495976 134045769 776678886 770574838 938469866 391340863 865586380 268711271 350557389 35207542 58709130 40442609 494493426 400051214 701267733 80105680 85944193 12064683 648885976 193277301 505498942 295061827 610745554 16545137 50752456 7796402 745171871 305518119 706679365 660165700 681949833 182788993 899394088 333367395 712832619 467185799 745483773 462336329 858179864 289605728 412450177 190893490 985889510 865961845 941571478 806549296 918635724 698886323 774574788 682075953 917118826 811984734 823354929 647273207 848120547 691044186 898018937 278022818 372935478 61280139 679361753 361668930 598893312 432756935 468115491 171635921 542793879 294967862 358197004 240858431 269360056 24598964 259791476 214873835 843833736 533138993 695019265 631153172 755290582 691353670 797710099 661179409 718787252 477860871 489306917 287247764 764572501 390683718 539466266 484885062 588334477 556470644 899444578 785455123 880869426 362327631 788937572 765325913 779885407 292858833 696144364 112036364 734691494 643118355 761209959 345550993 490296821 418228976 537860437 323398482 909214408 177104641 260925785 209485113 933593807 139628706 667292793 56678935 243537297 129527133 235665953 69350758 843825750 601835137 791499968 402676682 866006713 82288191 941672425 279810073 776575929 85591175 811651821 503845179 608185994 445440127 870107217 652922746 908116201 673237124 995913826 761010631 904056745 901523716 936981152 24753580 198541710 43069185 591816182 470123205 674324098 192064867 965743232 606359962 847100758 456722804 897239588 242313344 420326029 259144213 284908435 94019735 487776804 460135461 923290851 538527038 823522533 96177967 809866950 493940760 549602283 190206168 811652279 257178061 627015966 140247385 471740708 69924113 414323064 122005900 559204949 364629652 967335705 34926728 998003805 378984796 918680876 645395522 810319593 76763086 308459608 209088223 511953338 496148253 513522287 106287067 407366352 59736540 164331564 162510567 474009507 205364778 507083043 97344542 451309477 6068716 110288873 50271821 856639424 563263147 953313973 53163271 428834320 108020851 574888142 430097870 983181665 223565735 769893487 274666170 622919511 619728483 773628144 367314444 500465802 168538605 395236661 341225835 472555791 116330055 177345408 31959669 658569686 311260144 423370996 279856563 833422908 236569091 260148074 93172903 427912946 38000549 641228566 527682045 886447999 829708208 986388177 391164649 690516898 199832861 440164380 425516248 517644668 95128064 222877015 198055915 780151345 682180481 737826330 181636579 440503419 212220021 941327708 10204906 877520146 511595268 955638546 53083318 280510523 160717737 536209489 439945445 909016315 517772255 634381162 180910179 386752472 281568172 818475704 102706447 671309368 177656396 584706548 555325096 623436465 305195339 536442132 506170762 770433599 535146973 908060189 776586737 930979223 358691996 944211428 26748783 670116282 335251319 449677576 415139914 596541215 471369275 551714805 156680466 510897509 348882550 979314451 259656578 501916434 76035126 573262512 80581424 306217648 49879259 973366311 390229033 611399280 200879189 731425707 525168481 992257178 325316033 725367470 65926770 612294674 141640001 704367714 264944965 868486299 384868932 452198639 110816154 904752916 701444221 890357760 565433144 855057809 723653879 976040175 854980173 959291217 771881241 954883575 202406782 743481178 693176809 754353112 210742830 473490383 460762536 663447790 272368571 581269108 568730491 599232307 244640883 596869489 564161449 901757031 93634503 201165711 51664683 352999332 109504032 397111714 205298810 230315016 42867489 737727104 185503702 398661237 211979887 888235860 661629770 859316520 462891858 705757276 420132762 442931922 212524770 767758081 531668015 838933063 219508128 724380971 594093220 876244828 637501254 641020022 152275301 828313280 244628467 823214752 578419740 997278215 6484396 636364327 390839850 992852492 471233747 718328146 574427703 670364622 264717123 864314215 250609215 567187562 215449946 435597644 327269225 562482244 95992317 405362598 14814044 903613879 668113411 693977883 520103717 593892242 175672189 786187182 672703484 977260896 924032397 970624242 632314290 699166102 299116453 695028599 175233697 715788214 109168486 720390004 572281207 917287487 607090818 894120035 396012624 944198543 537008339 739581878 37597273 48157212 44789358 650732658 114873502 903912985 719116440 795937074 499684834 501956672 277200603 846084266 700998085 801043437 487476428 573970340 498035863 583675100 176967911 987849949 216558553 795519459 164920441 622148449 46027955 518487320 162570011 959001200 715341730 958765041 10005250 199088776 156184568 297762876 131650286 299034038 242601271 581966286 118758482 839531124 766748786 955507546 688542351 699324119 121572197 224930715 94862874 624237490 505442558 852176489 565315495 623800993 37235096 359295491 330688008 400452034 243800895 514304968 105962064 985819670 505102724 649708190 120616165 317104010 108722460 606904466 268027783 386662658 309295896 669085631 476803704 785149901 673396842 755559663 193427052 380108409 107036131 655743993 381157399 446635668 252215157 379814041 151408569 923455788 641218360 941164335 177995110 754214116 436037104 722328260 532317939 676622450 472175685 713487798 663330709 926556630 126982035 611739459 513565492 844768119 790906071 929121361 524440356 859013427 732574056 904461470 803974510 866032728 710111100 893405899 131965581 904090457 330043788 932852493 497006695 588558365 71002626 835733715 346313668 425510176 156709311 647973120 115278434 846236807 555306538 714418004 33827211 584047770 175027603 862687051 663417086 886829819 552291868 613115216 523316194 720560901 444528967 805478390 356147878 719324338 213459023 420261887 322753832 582029758 129486751 658826927 316549535 631832618 264281012 277441156 142675948 526735200 285714193 931677519 853199081 853226871 61741926 714017164 327116045 491156344 205627615 644075579 591446924 876890301 262988484 353217636 299120065 717649873 708492140 766325938 366387272 689697112 86130839 415054579 183639514 565291262 248857118 379081132 322949524 767723969 615681414 727151197 299676051 748547968 122118693 165810717 85313262 562988077 399709260 812673767 561288806 627107215 342437300 537496023 142036367 616825019 278530264 475199015 159840056 914883046 751576999 921301037 899566768 949292106 772320698 935666532 137270425 195408906 31336741 758773674 268041210 293097280 273248848 818970902 278446040 802340184 732531215 943206008 175624418 667497926 279998774 525309428 298585973 999035577 688135741 969573676 474327757 932288987 260477497 520046208 219280091 291641126 91720303 744813726 142300670 179699926 7681188 93025445 65452146 620418586 506813372 896434585 644828590 874753492 227033784 873157878 198963847 761463935 164035665 523788119 71348733 940032679 789897782 861642466 97481005 374562197 243197847 866426584 312152717 927053687 740534086 762407768 378697135 696945203 148863151 221735099 175710577 872847153 182548573 271126331 72244815 434683690 242387542 384663948 297098057 854862252 180382523 715284184 532916046 921636514 418272257 560692162 288213908 873360666 630816223 765599163 282499901 633621161 578750755 738947423 661589912 874312035 289493548 724671663 223813067 937922222 329179069 476331052 280148097 669225182 502798657 530886288 421841678 504322168 207104821 493393449 313177829 827100247 679239382 975023014 211862590 421219239 385647773 895926459 397618858 916745469 89937860 682934737 597539602 809077174 383306589 395142265 283845968 285144250 236770018 757558220 202957441 244600349 30475096 487616018 151225552 901896789 146234862 562623025 159725498 175226460 24897552 278096143 224518863 651639089 606957314 729056448 364154775 598701638 217700053 327251162 216842499 389851623 55598439 220239447 76328504 997361690 174619129 457955122 88161164 918025075 413663934 929689073 807489265 841113443 665709707 773095273 87394117 973949270 349423874 558399520 118233977 771480087 100003452 745271892 98602572 567964255 84522735 321024677 11583832 29723825 18113435 24812988 5764610 173409518 103797350 594709058 389455606 954536911 910884542 938855141 274536732 950797641 521508906 930717578 682603527 741798198 222853802 406937992 326750334 478898424 237716522 876596827 399999470 697981674 508829011 695490096 527956050 844815014 192989390 289950517 46566378 864742832 32573665 237443107 2798804 165372306 58847011 120104900 88247820 307359088 244747571 363671745 213980575 870648954 293377488 931436246 722539612 839931655 390792327 957535699 90278717 401012125 352846336 435316013 393410066 777389015 753833927 901101687 896006169 950252679 51037833 718940240 90707402 691988408 121256827 898124343 795690267 995260257 226297378 967468875 369737916 899963193 637779138 936691171 522278027 570125826 403266558 957161348 286052449 762835740 276387929 317948843 16805824 885154126 635753514 727099813 170598944 717299203 71478285 824936442 764335260 851623679 257620623 980290086 948459490 963231109 942586471 985588199 622656751 922653933 6331027 386543852 185947969 394129664 119930776 202354918 12327489 216750268 100169788 250850050 59869427 826869492 581453448 916280234 38028562 129285502 36473405 341251994 158176512 966098088 856910305 965504393 311323220 484067309 354479168 380891988 363984317 367090395 286357038 618578659 224702374 520282367 59674037 688550840 670887886 976943289 967692236 968149609 61969351 778404832 93083494 774599388 113042830 805310786 460133251 843906107 286096610 480727964 157721960 258343128 156188430 578057865 165167684 971006501 811397788 859477698 390883339 913132763 861062374 879660536 43173568 48716482 27198509 869805091 751148485 890796289 803880625 805534499 708457440 898246971 700902144 819857211 159771619 197946285 17218592 349266626 254959297 813489493 259184733 836657994 414880515 789587285 788214325 938121203 32014899 564674056 499111634 650490021 463183907 984868566 383612465 485503259 283625669 921902748 354224178 753856690 143756786 943338136 44771623 85382830 82090507 899311688 837215067 961767901 61488763 689342656 189348897 201052665 109568989 922318515 673551436 705886477 689629663 924918643 706500414 752623544 293449177 412310851 157951298 656377282 147431890 276258379 227589738 301359937 230558489 407019646 150162348 740053739 343818502 844505801 805979749 815494700 244574069 852606752 747566906 764511460 139831733 464045691 87983893 349607797 243019718 655087900 606548209 907981141 316538110 669490937 68126439 160475023 36790725 52980560 29144910 362816894 113490975 257220692 14790618 854380374 820437275 943996073 38413864 787547064 588476934 997316358 530016049 739378016 511804288 593725910 428918182 702019939 554260693 866301940 776202707 978736682 206899860 601315101 288185020 461852211 245039913 681420213 670713894 948466489 308667760 615671748 470140538 666756868 60883083 63701382 62083677 666000634 458933248 754053057 702932679 904999788 531531986 698107803 649370663 953881234 479759329 727895971 492951948 541896363 467172341 865338144 464866582 737604883 128553887 581871670 227553782 840531567 820639188 974397045 836741419 951896691 495351722 937609485 12254909 91231042 31792701 399871151 156453689 813943917 658406189 754480094 579358297 682145265 576759396 731829587 705347300 833774125 508865319 846767443 171236306 890683834 483295373 884140928 256753783 822975512 576699233 585345000 187119202 412014828 118020961 559841158 503432964 908486628 801493300 871250705 406009776 649593289 286651463 781746459 633840710 994249406 712578638 952529494 62508029 796911820 672874211 804806094 622614094 638998094 460363678 653776471 69611509 457872577 130393532 389010891 324670135 336639602 293866464 391506624 161637195 201849204 73426618 669313979 584274728 691232328 361560224 997640889 694508140 892096438 218472145 632670322 29456653 420423918 386198441 600827455 96100956 441325472 168446194 276853553 22947149 323696173 107567062 477548394 400345203 556610241 421808255 496125053 112326404 368407931 201579409 863480267 260250153 566278495 173315470 678917100 228003398 513051555 306440992 866826827 488176668 657625100 431362784 597023557 548607887 846221928 55853351 237057970 186787180 844183269 200068373 475637935 66207270 404344858 78279181 812893349 746132846 990594401 655204038 858028555 352791920 717204214 559550268 771880578 42684654 557636048 383036432 468828975 271881181 891497128 734776914 845966310 253857489 677019793 7288247 222867600 176516927 690858200 570414721 930755598 562644646 673017017 76331105 78110269 70170147 920656888 551587412 769251255 64169445 463802757 64464760 170618720 44113522 239024095 135358097 653517410 191292752 322335100 278568060 915041379 556431704 690722924 388181423 686310156 326004346 614890535 415128866 501353885 238777056 483315903 208986516 656170782 503522795 569342910 516717429 715794130 63590915 272235626 245449319 400332551 169318725 382225716 280494804 964113450 175083348 748074072 448859232 927556331 702356093 780092645 630824112 900797006 753088047 985099517 967868856 986372143 569651430 982601948 185427952 363391163 169348778 358546496 62636721 754554023 538863300 954891643 836272087 971453229 724763229 833705733 578973257 600431222 63862658 73774390 70236624 594108462 131345580 351793967 24923457 248457325 39835639 56125255 52063508 482951453 123143244 360760605 257706595 515103516 459618744 559954122 292433470 554469453 265204337 585448596 541921734 959217108 152158794 998682248 338185935 492487891 226359407 659381907 477532955 756338963 647063094 861434985 163190855 311938758 164678576 765782319 40471031 497468761 124727543 237714512 27803904 547363890 361099204 612726612 417395693 910371064 483499538 684675033 71596410 713104284 673202616 679731711 404928388 533138077 367809391 584534117 66189056 654597932 414845634 604850534 128447208 269561394 133987316 472363922 136622711 235956269 134951488 714163302 356307298 614283513 75976094 243970020 198660333 843753269 838216758 986378774 2515589 145111338 41504634 160029114 68114184 275753671 153564701 334745893 79376277 366314102 319466861 416698783 137321068 468323741 330654078 474527625 53970159 992424790 350415822 362567905 231836401 312212440 71671061 613919479 325073791 566972702 187646507 455460919 394828207 608932839 147421070 750210950 529441041 728748286 694688493 913664550 492065984 564393027 536496658 959013829 366180970 592097649 293346078 878175188 209544907 896352604 819775315 896507460 198332524 846458648 726186991 821444309 795272240 952186169 545949590 971369186 813477215 962021533 157083180 903534979 652525546 987112343 204261661 985937226 890693642 932371638 157962511 939993979 844878088 986652355 306148312 516337544 395578570 598858267 515334231 672565623 145504985 819135501 502313449 867257040 113909953 652985820 114514834 490803720 334932451 879855503 273251814 478668057 377832198 438211881 404127924 845973621 628170500 716569376 301431549 683544328 257525822 604828665 438935859 920393716 408030883 684124862 37490439 230742343 92270682 937540011 469228147 744098213 738022140 959680147 530364318 982600801 840548973 992695867 503402540 619955090 231378963 432211835 127921292 935392649 565321356 595842070 336544922 491381248 25279578 730444754 161953657 723807903 27062796 657493490 277175897 692750236 554560278 574774633 212139082 975954147 203243272 584448106 178398496 231362840 57858351 247401935 204523880 749470482 713430875 878880100 376496510 640783167 488630524 946780274 670177649 733946886 293179885 960089910 236140761 880018740 447450594 462931684 455592697 760832535 230776380 471012927 466715097 732705896 5583944 763914101 492214974 568063299 388274845 547846999 76593466 286571852 86736417 924987954 548176432 837607372 572062128 819282138 685506040 900794998 98465814 561190277 37533807 437180847 221723347 521701528 151717266 305886913 203777101 254990189 135129593 790037193 246927848 462866082 366121437 849012126 428352575 442448706 211556977 770980260 695308865 846900142 671330587 867434762 231944700 781423191 678970272 804530985 735639714 737107123 49459688 892480036 670460419 787993282 552762025 886537091 261229762 625743729 613658716 860763998 524472282 871926587 89106084 209720412 393754 827578817 6544961 699844705 312393028 364816657 285976679 341450189 165547712 472383589 264967297 663166539 604682421 608453406 125700872 211868252 90990132 421073750 303582275 769942425 184025454 582110183 276716886 795712957 157472670 759698929 633938807 802051690 632271814 668357731 656147434 867733714 131509708 573641906 141732722 301490322 219613084 294299390 201524228 544356190 144319624 664398402 121543707 415702102 117702009 152557109 36890681 537098958 15960464 243723826 7522548 326709200 103326673 163276793 70569498 483695460 311809414 571567089 28932349 943100907 155066455 624721946 390757762 758732430 179024741 992257773 991976088 996363558 587760316 772885894 263551823 435045098 28220335 284612417 192598745 371795537 20056096 443431694 297397166 350387241 299765845 841151504 581183535 925131637 678721557 942741192 270514865 896412845 760606304 932355846 382888352 781614473 224749501 842989967 518948751 762772217 58783731 359138661 132092866 537622811 286566349 724958375 230429876 613196993 543193228 745152204 461932593 543976259 318651111 924294818 475240195 575811058 557459538 739385881 229845436 394618554 328074013 732933348 150765814 746046875 347178216 624263613 67523897 852241500 375319871 424538100 216738989 837620305 703345478 867304620 602057239 930268322 755820836 903225468 280855497 964199900 19022110 278185467 171333804 483032554 235345684 792238685 502211062 681947634 303141536 926473036 834910913 938098447 243530983 767483419 376848300 564269877 86700072 824862955 747373127 989785787 774917198 887193096 420010152 838965540 368328602 499797142 33799156 113912190 42539434 932316324 356400974 546874995 449743482 495455804 247069616 848834380 696619118 956099082 518580598 603119142 15870643 524378922 107899163 158954776 37295286 346080447 138666002 377779447 205793557 869756547 571886411 813174428 388103859 901848127 621705182 626645603 255788876 612595766 520802814 672447179 529238157 710133418 135633174 559649032 362273189 880129356 872976307 907576982 229597001 765166205 504207277 658987843 256274454 860242492 555300552 630095458 359976721 986921142 602504518 733694222 11184335 830370337 555654305 786543576 561811082 973704825 667995925 980955900 100222479 165317974 125804908 782917020 414692581 882312319 40732703 954257052 57418409 174021718 146979826 500328263 473804597 602475652 232602508 534918290 145051350 974891377 710471447 874242054 780668649 815037719 341604428 832597446 322656964 363227467 58041210 259984493 220007445 823849883 724533482 987212282 824607196 863620687 813459288 850766792 84092600 764831465 262182659 377788507 169646683 414730674 73902916 74612174 29830535 959896947 404665243 819039585 155030386 665294558 428929693 936256542 102399266 418103918 26672707 860994305 543510383 830373693 411943916 842104059 350465243 529794454 274015322 763920034 97796931 831510933 366318666 924940779 69813372 313837154 256050742 464662762 352565987 761747739 2308305 617701819 137939499 922078612 555765351 912547479 485971462 627853775 543578328 719028059 543132779 867401905 335893947 908285044 136431626 578248133 77199217 650900265 528519832 900914816 484792274 486440885 363226424 435229037 23732026 910701427 881586652 907546566 196307385 441810548 345967026 751389517 732631742 860755956 554208034 613862317 154798711 443397818 1609109 151099060 138014184 462371754 112146719 873545550 790790827 797515065 13537466 22592602 20366224 668414678 292770356 595021444 177417124 732795555 595280761 919053295 320478628 553481890 195512116 734082517 457163942 730719780 407762487 509731284 63259627 866891990 178386038 269036893 7063848 259634336 20035935 404368954 276934464 570427428 293906559 610918123 218870853 743772281 131735878 210580860 72984689 376510783 171236096 521133455 266244127 716481954 68356250 239968004 69434013 811237323 153860322 197570264 181520152 315466639 125744364 720508807 91254788 696024541 98592213 453490572 17954234 910958417 629350952 964784049 147161506 685718481 207058540 384622460 267476957 955859022 555693215 663180803 191336046 507316771 496029394 601795705 10159472 12824978 12084501 712823875 608409699 613354497 58873183 111547826 69595319 817656023 305112296 856472566 709867368 944521390 326290973 942399468 230921845 625122888 86472070 739367157 717202506 944173359 282437479 641869534 491127475 545607513 473970781 543692466 290025603 566584080 313584046 693849766 111596986 542162667 194835157 681333458 282485816 866305801 84948268 438162486 13724309 976064048 936953292 964768319 565198718 648658868 334836880 899369549 76520373 671077751 140233807 201975035 31734658 392997527 342928310 997661218 789972501 872498978 533361424 966530139 528571381 880485276 347102200 385168074 160857498 774043151 669720018 936648136 442987072 468206727 367809889 421302108 271283494 350298689 145737046 310322588 108954166 629885118 270936601 982356744 561609572 788996668 42868749 913319156 3729173 767530014 593142382 778547684 47901769 579334179 234609256 872094765 607679089 990206558 12004962 459619437 126421788 615749822 138930356 705069299 685774577 845211555 440265219 761403166 434188223 773206995 303245675 781011747 378072755 750996466 714236144 997917200 10383613 157702369 89842522 321083514 62768405 780865005 717035329 964236068 206981090 535996755 132066449 967893212 170758038 820742298 556541826 740085485 242936285 442405714 367737395 940495264 576693345 741541031 173930378 324141764 86677984 436870423 125738767 888501851 496549541 684824771 389909667 719195438 317402693 772170453 38834337 533374609 205896109 945572171 305121832 471495843 337104346 422730228 83710180 388086891 201738337 872432114 386405733 678192841 116034830 910206800 664171565 731953693 265916208 881466986 594896239 637266484 171077176 502876002 243501262 244575243 3805953 352271727 68872419 847057669 750729453 762280322 110183595 408640614 66669135 541301504 21911592 134626583 7389564 157470558 91319385 115766244 4469888 761826031 59964175 695974476 349387223 585579190 152485724 539869393 207367118 241907706 187675340 684310021 635237062 690162166 650362431 898737327 898663563 928593508 216628812 227008014 64674450 216661763 57352871 982614417 982511380 993649862 858655025 953409385 611811849 909224625 93655712 963743409 325043172 694058643 964172 803539945 237728958 453473844 10120629 869472474 783484423 855081913 826401009 972473768 666087757 747994914 197445913 374479454 197110036 656012009 52001814 931525961 685059154 963004948 682792630 937152521 666420899 713587496 270574877 357648424 309858629 534303944 60331740 566934943 311488450 883285088 322981996 402308322 396053223 587356946 68302284 651820979 69907183 199045165 69329330 351969211 160328251 798230446 387387116 532582527 359128432 501056477 411463590 689332853 255742463 405366042 281116579 808087669 61815461 805982371 763738731 860146316 744523572 765564499 684203381 835474924 157217877 547072467 86171785 584988160 187185164 324321480 84017208 542175188 298853594 921127371 307064128 637557747 633821402 777635190 749113855 874984148 485236268 559263599 253591172 897362879 416446586 538222231 65524093 320513794 18856175 159124143 86240730 657501026 147779994 495486262 216367517 498856326 366079922 547419341 284474385 703844514 63858057 747540393 747481284 921130247 918845160 977376833 165870568 498840965 278194746 992815411 293336227 853154800 756369127 884954271 629003453 960642767 270834884 909160604 515233341 818673689 65063669 165996943 81781538 495713273 371984263 376309947 270682846 934258029 4992455 926325999 580550652 713274146 30750643 718369490 157152333 881175757 47580771 515194999 185671342 568240173 178853042 271702558 116109113 645958873 206159882 473487981 340372394 545351620 536112149 768187793 274920398 316472912 48325971 589824985 57292170 211356910 86350832 839834062 605810437 794086745 778633422 851658340 500370797 795277738 358455157 948560532 72909551 382734434 274324763 527635993 294137466 890370309 110276743 216285413 162845773 655588222 414797131 747265148 203106338 344556935 12670228 969736826 478157162 771614781 135594764 747757851 575548526 680172449 606762509 847017538 598256095 764581039 53322990 265498302 140097422 760547430 280304950 648806496 522938700 704606625 309988175 386074019 167625716 677415602 90940766 709266082 215107597 715288528 290785769 489039947 302738492 440262102 288874316 624884341 79694454 429295594 84963815 498701193 248636098 566256336 519571867 669993871 232134156 909301915 881823759 982311457 511768851 979139799 889329424 906335129 859484120 909298124 371584820 622922395 511219925 573477132 360562510 916018718 767117718 913522908 87387800 906310510 46391691 338257716 214243754 440828753 290505386 632286699 431421637 657689574 377681831 930799742 537286083 690294220 613443278 950156869 330587855 392826170 117696196 264897123 110325862 703788397 557255197 681635266 181813773 682097473 154662803 928404434 795981038 891886644 101651444 710468692 272378606 549730312 439506116 717511249 401220658 413542796 195580869 441134523 152021329 938992804 646838283 892206848 441406492 808894876 614449798 648803825 257175655 328660556 153168358 469761161 68203435 137429936 24328286 454624614 231472465 710710186 159028372 215189264 63061504 758893666 348765370 834097449 774099572 954142830 279332709 465518238 289211970 619045381 326997895 488611397 470624299 938567585 751816680 865133017 531964323 994476971 631403488 733662380 504600538 579348433 235532139 285940379 211642464 320287811 108617643 164282663 134491306 188844741 85575831 804569546 694361905 946604251 261067170 901371744 831015924 875694033 125425711 312845941 101930979 414222490 250017372 345458620 62088135 426606771 63180249 369545148 277833927 441636459 233912542 440232275 119834298 990873249 229376891 511309399 290741191 900736535 13900512 681241791 406074722 431315675 417080440 532421040 295196144 929115756 653642118 801487746 772562553 782415521 207026233 326895914 104848186 413937891 207193819 672878012 130330233 893237898 703700149 917193675 474165251 588420618 103153824 900907214 888123434 999923638 788399491 899030256 662769392 689387405 279838721 953608076 101618771 135704302 8541989 233973688 78543425 859453964 675304546 857462376 719794229 886818919 739072200 811906354 256848557 438110765 83163934 331975547 75455930 451737663 15118940 273361813 117149644 720120328 558479197 731123540 258225290 748640564 231808512 681930178 182345617 191253639 141051610 882176566 426208234 533119757 451490776 753502379 452886113 920735302 570463901 724495425 694088233 958231949 229646859 859253977 722719069 878219073 753563986 780391826 438152046 672582378 247611759 590885131 40308336 743984320 627203638 937296829 536631203 964205789 415714899 815418016 604670339 648094472 193852891 524000680 112799637 731966382 443875323 822665935 179455687 971072605 921845819 926240738 561161749 695982549 453597589 779699179 111310739 819721634 622142097 762810499 300999860 814251410 113327283 165525655 150077703 457779901 346888804 504933629 486550442 669453464 24912598 599171337 23282309 861500155 196211109 446416688 138665436 951766101 337924877 469631671 458961879 653596623 430383544 817594873 403636163 697285522 514134832 996628347 490530640 531150569 181724608 805442704 250451571 785180645 732013573 993961996 393178950 789734822 648735874 933229305 103588574 724408688 369874649 649160926 587720577 765634249 137828646 472343533 312189689 448713555 385336173 879310993 605025559 674398911 202491441 708735998 339078535 468997211 423928629 523671251 148340540 881391384 745045525 855751910 208197792 549404578 390011583 819764345 272873135 560229721 152726246 789746221 73816603 336793969 292317177 307590845 14123976 994701004 761749806 784123177 399713407 784449239 720236668 813420071 728823071 846143374 442417706 924087832 155530596 539832625 200138140 818513926 306324917 558759760 248894023 978668618 876667861 988735243 628352345 903313698 480123448 789675506 474758066 535392028 83870512 191526617 16979492 490805393 191559225 853156646 68568921 831441597 740374914 740857255 27343767 526082974 275941326 352234779 140199604 676869921 228393204 755996434 597958754 613225387 437208423 534881687 296907248 413511364 192140001 961738836 186225047 897437819 686316480 908774220 786386026 914450717 832360767 852704742 416955787 695579097 77447476 748640073 396390347 881604707 321965317 957780572 504262963 613081029 124978145 870656954 331999298 514653740 300597068 593280195 214010062 357444893 332592570 821153556 40185058 614160413 238113309 463501759 49430615 215830289 187420123 702512391 414913496 621124582 367935828 895815488 57820863 108371139 10202984 809377064 626857458 884894071 779393008 836183338 266824540 757771364 289380621 912801349 566731945 953894131 763107567 767520182 685372021 750198264 726692697 857339726 93269204 582572179 320401395 752631291 274474145 866395397 724382929 891666586 123200299 504489469 503792453 509767014 27277146 29060031 27009161 916511191 363549087 616598816 348954640 538181169 208814307 974034332 787850571 917138389 330693934 834736946 508629126 671694084 1533401 828123998 388955319 606181744 525150997 893618659 231592205 627471717 316907965 957133086 219855404 736803158 348112893 367355387 116973327 541239245 215959151 551106369 150348067 995876095 108228518 796751158 380215700 911951051 532870096 568253330 450351225 721852571 281422287 736658810 187209834 993616865 722029427 923599082 505830513 760961822 531690549 567603574 107961308 203654411 86517518 894803707 118727713 930853031 922591491 925935506 786660040 946377526 797351595 921174612 210969792 508650247 476560217 964206043 163772491 861839375 70333469 841720636 207567576 709692928 518852835 995517792 960340764 966033652 684601754 692337420 106932066 351802313 174354633 833555853 316054478 844700171 86866046 342614425 157926610 930858559 32747112 893629453 664819742 739846369 670559693 905372090 26092339 941509021 670311689 990625133 512348684 945004483 570761064 805249644 645345396 988587980 743683236 762041859 438996354 977132741 103550546 557839493 167844856 312528567 212722158 605855290 208186865 978669195 142975097 306054006 67356087 861280412 413864151 503984965 394303184 637958772 614707824 813844342 551209235 853749740 147589162 828563485 413635614 495109094 88313432 153350390 31571717 522251198 38424269 408092564 326443220 894578858 850658915 963251790 651452862 912344357 319586390 553066496 252121472 501469864 497984825 810442489 770321374 856034773 838955501 959618341 31374243 875207479 111097464 783951995 322362127 566103826 281971781 377762601 326303580 426495092 106569520 789640370 58685633 239393727 145434254 506795639 267187969 356725601 324293863 598129553 158667599 465326671 395246553 836256889 347758798 744708485 177567282 936237125 108287735 158431764 54123612 690274351 97369229 179638446 126257358 130350370 31244000 688415609 423542430 901759761 277959336 972618695 52266144 607482020 131184362 922766921 647857952 899095494 744065958 753383222 729333381 856414288 835950770 869006576 749973094 895583152 604666279 828713812 414483252 859046444 785051144 982122150 779244961 996601553 139247629 910863673 202127479 706499845 135750242 872326365 187227720 303339446 54772447 324413113 3007078 304535204 10812864 809393565 749087988 818897303 652288621 656228033 542819269 768134980 684009436 934350513 41186042 685368492 519998475 914927247 711766294 885340793 709856536 802731083 176363022 961543773 815102276 858603824 644430582 646900387 489239852 659090752 447561882 817804963 260767090 271719257 18272131 677447746 225297890 885585939 799239176 852014007 457409711 920519976 315273492 746459186 379035547 478844503 246566253 687475560 164778631 657473195 437862207 443886353 234968802 519051267 132067553 477557067 147412233 691457499 649972373 858636729 646363735 821367205 481331341 544774835 220274692 856720642 321373508 753239680 154124350 228247477 218461807 711838152 483408856 617651407 295134924 686478495 671476927 744745654 690237109 730928438 564802152 718466925 332270876 624213916 505280588 977215848 757375726 857273542 180053167 331552433 182856136 997131397 221733648 685404550 496757837 732966373 349710092 986877996 468975471 518914565 445504234 939301296 759974162 876933169 415804003 710328777 191348951 502249552 34248492 244179595 15521656 707232859 98689244 266149779 145322502 874821123 659539949 950769767 702068639 957938685 753278776 823035304 175034055 926885232 276422467 755318172 654128708 997445731 703750940 753988567 153816099 558705818 142766566 911535958 12444406 547707213 370909801 427311720 369065720 443402489 318856280 720245959 2472525 27810853 1702523 957368779 761217879 962572079 257514014 990897221 676305617 847488727 795688060 925979734 727673583 834242849 351177889 794211994 83292339 855208688 761546915 871169348 632991268 849817831 180634617 657991045 552491021 787218299 617450850 990398860 590368808 704272946 222347404 847574569 637840377 869804415 380512661 789129267 171893945 324407646 312702630 805098334 741460743 884059026 350917378 727798023 258449496 740522452 110906741 399329578 35261473 791324059 373616498 585625594 120098600 288279905 164475095 732154176 63430779 275787264 162001777 216012034 139555061 505517664 489870791 680914364 639754259 861121340 213882785 461041826 310553037 925165769 616777448 940550687 889748550 997857578 106845123 246868526 201071610 704969759 327633209 992857300 460816741 887706059 604464513 968660487 444651588 993354125 972273202 994438273 555031376 871666364 603176874 739318526 322578597 428224302 53712159 561162947 273380664 933868216 354273840 532619893 466069032 951934624 355342022 749657351 476970036 544951620 214551645 237504283 228428295 595783297 136357355 778534936 607352515 659320906 564737761 602922116 387378333 957756240 621304720 631037634 201724443 323051528 131094518 641104409 40063437 558221255 413965814 896416790 617440080 996354712 650510847 688214149 191963827 818102748 510277041 930067093 658020100 702587167 62557860 378958505 141174683 889775764 876042278 977233743 637303155 718716922 468620435 668610727 56069437 104337766 4346208 163305179 117325585 592815943 47578088 332967461 275810615 870858196 749642844 820384600 598636353 756827873 434978879 467864643 381967785 846058435 303421537 398575414 192917323 936023685 579760929 685884409 390775608 411633384 211651355 449496408 382367981 439970730 147010733 179738626 130337443 264035932 263539084 682386416 531207946 659410484 526263089 891748220 827894155 986405463 588836528 988163479 318938109 714892639 74012195 77816045 7999331 865125318 594892751 872979754 404512679 681647560 661168632 953677923 658770932 779882882 614917683 728535177 372083344 478547677 451878414 898299129 665110520 687177409 99049842 427696040 18137498 849298278 313290714 513822736 217305796 469940658 266780931 772331281 26667493 792049962 11942004 161583332 140306357 785546038 571434959 860918051 417410990 615590474 56011807 59094840 5638478 733262976 505150839 722028630 30280373 302424136 271160285 995681632 547171190 897800866 315726053 461738357 180144294 298150596 87329452 470189056 47980266 792111534 611861421 917204852 914704812 941476470 555491645 962975650 531193039 711159465 119024781 275047465 66925484 601971569 12072689 170359773 7957244 906127808 339727270 798483241 42754820 667472028 57435820 254815512 131899618 394286796 160386544 676418507 118808424 645324677 501785085 928761514 735061641 790217008 32644004 593796139 555366207 827623493 749631034 776986101 262806865 770710621 200282903 703511902 401706133 823449747 694385783 983216053 875237425 961360128 480273048 954445657 204560705 940129128 188940769 243754021 217388879 449420175 125466118 312386433 268045408 515420108 333029564 696238565 565352657 695549572 319992404 926912662 287548559 360441610 322359703 785886434 249881915 995086663 427835967 498006848 358005634 529797367 136035300 473423356 185168802 287309550 87579311 502983560 142224573 836383009 201976634 866706569 835539334 985670023 853666715 865494510 426490177 639030368 591224503 955783767 611169717 987968164 662454349 948780287 312448565 456561959 433088542 476448183 24927688 587797853 412601740 909646201 499430289 988585335 795706404 802322564 603959011 612086646 10752834 283004132 168521999 796975217 537640263 669149486 5452919 144766901 12266379 944585365 36189906 236912126 71884347 872661976 563286560 567100933 174792447 466136870 27871422 151752052 66756324 910691911 8456538 983259832 633078102 757787278 275928784 621107334 43221108 486627065 9853672 135854457 111550448 739130437 421443667 752528624 682327437 851833280 596613589 861368967 462529733 822475821 51342577 581399329 247862526 465707849 242916462 825300545 648215575 877268727 335075546 744658512 49528582 558257196 425432394 684631453 679064553 859781433 458532323 967220836 915473856 923291519 922408925 935331190 285590909 871201348 662146743 906318614 797861458 857463375 482144340 967145894 28393966 58873935 38494242 685007262 107393658 703378984 177968195 418694802 332318631 824760285 257617819 955046679 7421192 574683502 345517292 938419316 501961579 575273785 168087938 692995842 459569124 780375331 645205962 978169105 639190537 726815264 195580461 671335450 559870734 845944837 599606816 781738185 690440959 886615745 445109092 679615557 531403338 884591904 419686355 939866922 570905383 986543018 154141208 724461080 4786218 420294349 303578397 750164914 241206574 917345595 277599678 472778935 289400990 476998010 173299142 695913185 504333765 795542513 453193232 585296959 518113993 557254757 163373625 785002215 689373906 817303340 371547848 881556244 521502856 842493462 794970232 796206860 10881902 444586653 258461864 645674430 204611951 904321168 319237456 982673503 3930924 977960443 431831315 673065664 211598637 365772565 362544494 552345349 448240249 755509923 53701249 992425311 131136575 537239225 78256081 938442460 562198829 627443403 269595222 522486288 161444989 172132485 167581916 409416648 356579782 909770332 498425246 565985258 268958941 888108972 588129912 653827312 300160726 599328590 326945462 578694027 396185872 548347682 137373257 146708807 29180214 656593526 246895335 812318541 767181761 871480976 603586800 695706731 31580077 111155286 33118641 278453985 24131479 330295015 205971284 836462630 529896145 708065432 103269563 928981886 356206893 575526998 465252424 747239240 710135377 737781694 455412655 996194110 554296548 680178865 370542485 716008697 457804451 662619341 396477597 703687505 397205194 759405213 406184018 646879737 445161392 970256150 815135738 830558167 287403353 571058503 76510926 126688441 41014747 673176563 83664025 167361922 129637666 800853206 200375133 659393087 393183212 629435629 6381527 903002698 27838321 524052012 133470176 395283078 35971396 484578065 126040327 688461153 372075199 686578107 113995634 749955540 513915993 597995879 348543435 358310995 132320042 185702202 66253275 281762378 88361346 782416507 378443224 379651428 205615576 716828379 597902699 662575196 630409462 666682919 23518485 267241544 249163616 525743705 249265583 942742385 363746979 676315609 490029600 746116350 142468811 817682250 527870820 942186880 526428823 734451353 144848096 769511460 522304589 872090778 625123756 847162764 61952354 317117360 10304344 991396996 914032233 933819603 616392372 671644064 342677698 472507199 145884520 236397923 197091179 950345839 734881661 942077787 556961496 670297113 643650186 939393294 163011891 744447916 638675771 699894866 651902626 810686967 147550896 784450477 268210528 715558756 342810348 508856427 224937621 671054418 202223581 485013969 52334274 935167380 155746448 638159931 448999151 928559901 346950551 446218496 291683267 399448223 304388030 449275421 290444066 714156649 415089756 628600320 628580626 947712524 379299236 699012694 209781531 938196585 409763870 697096823 68911720 229496562 24047939 371784923 279330398 624829846 229824199 591751992 99802099 137014366 44746284 96214380 68101622 292735952 68940944 445358281 132138557 208522959 197062120 910316614 696282027 942055714 436055436 622671674 274931454 574896983 227461948 326609510 175664430 855741887 480334825 778834146 305873798 649823312 522320405 619511086 609122489 840166377 775821229 957205800 207854085 757682461 108603721 507141437 362201460 580558848 496842423 611555000 217752662 991744981 453629846 478974828 294859501 736943820 355617869 979594905 496465789 982052563 901124248 951485309 800726852 835785708 301752396 393932725 78532767 900877336 349181872 792364192 735654773 980016199 54090262 837531786 670995318 710135553 285593673 306736993 229510888 813028185 469982279 808080123 316829799 774375617 24660179 426422899 50581394 141864467 23027358 94213191 89689398 617584407 138048242 680409331 652488853 743688216 498589033 661869822 476324873 980066351 726072484 999698944 80571771 693706677 539353397 644028745 194100071 568641918 32373773 298241794 60612966 736547563 531286082 775162430 743929107 940896798 871345303 985569729 657411997 795010825 566500437 570381327 155560182 421772061 351912362 827583309 786464763 889973562 707709011 862380931 609173736 657872970 124384377 744876010 642754419 942512994 503431872 986223173 549649010 748099225 582535182 618609889 459106431 482628609 362291744 785782477 305104435 459650268 345537106 644960598 169386787 720570559 379665038 917775511 882448663 976458928 668627071 703942061 698828728 866799632 636101002 792643255 138412777 976172840 231476154 760827997 461159767 865593237 535972391 785744002 141645307 437880934 100323968 904793383 639645047 938169827 366308820 878795558 529214157 543640978 33403599 217568098 65118463 517018301 423227696 579863469 325338549 594452501 95111401 559357233 490819080 982564231 581818277 981683119 745667717 776727524 719772005 930324225 240185358 258015651 26715150 368103622 202746326 534251639 191982559 492165479 110154848 141929479 86348528 666793968 177653383 661402627 305296018 476214283 115068561 474454117 16686006 431453003 98616314 835084284 291619722 716148450 240292941 666437247 115010136 840681620 597913877 710313275 673759497 677550689 554204536 694492854 633637758 950406050 85011659 98016206 25133995 597286675 154899779 889290387 445859009 665662098 74444379 85773380 67708539 762884044 36092717 421119618 261154113 710352990 134068722 954128394 217657962 960581088 114487929 488478186 324107927 528703100 224089613 603600905 136118349 217392644 132248836 191411362 88938605 669010408 596710007 788342338 465796482 672083816 390625987 954198280 224483996 413847035 343134233 704639576 70810016 800951022 680257993 762960969 335076830 892384653 710549825 778395258 63379765 871310435 71988544 896028978 86304170 515616162 255196347 547776871 438451187 648091885 184038097 468954850 202405736 612905644 424336792 590623577 134734436 425076137 221789196 979659303 367674196 853407116 545156256 839540015 531393181 697620366 2573459 491818790 168358291 366768557 243162305 347742247 278681648 354959500 194332146 555597578 398806986 450526668 290677585 865180548 110295385 634842022 541226384 918648276 134062809 630362167 258484422 669694797 578037764 734273023 320344739 545244628 473811354 976253765 414766767 608119640 366549379 515936163 316258869 740896146 489140390 747200289 455463071 811549598 106521461 779480232 660303408 801470138 539539413 740198437 566889645 951819884 699317478 850136203 779041806 837245574 437632358 741883758 276452312 962416036 751179735 770055334 329436029 856353352 345074662 503686972 4364470 585728415 523188751 984486025 33937584 526053721 293326420 986570511 133050156 752206942 352121359 857697499 474977308 938192953 325917196 383160411 321173846 978535570 378119153 843457039 709013157 893365801 538266323 786664498 605454711 885890115 685311876 864671477 803133312 937890639 366837688 378786266 233713339 260262713 239046120 310905336 249226919 663454924 633130403 975435855 234414480 651900353 72983168 624929873 503671718 759528977 82231025 942448106 448571346 976312547 693313723 814749561 21444349 755987512 409612044 872762347 317066621 683058554 350359023 772521250 667679643 948069298 712913643 884233939 257926294 993254173 194088448 487385683 344784154 773178457 493396638 972931908 765001766 990705698 443463978 987107824 81870085 917966239 566703968 704836011 658270473 984122153 922457481 990573230 748111641 934685176 70096941 464675536 7258765 785397321 642314656 655525116 128151046 855891691 149263216 999571906 571049268 691268402 351124735 555884248 129606181 599353477 163145220 451671418 7992555 729247560 54701763 655397266 166624484 501350032 401925034 705623969 300029987 426695725 259115358 575976735 490329840 879403875 500297000 973227617 448404043 918694116 455646850 708006669 278018675 527102476 108250183 591836059 105379687 559562624 454913809 682969909 534471141 927659768 520652959 994937697 550444756 999058255 499210002 706319252 188718892 927594583 909643503 971627961 927777337 929639242 848607470 865594309 560156400 773307675 635822055 725238855 293445214 929904906 812863723 899595909 763982525 958361875 159481271 872383768 544950031 986462134 316302688 831469769 730771126 805695147 451804863 803223406 349121557 929138881 621742881 922268959 22503659 645356676 32243696 188615668 37518669 418622886 312593627 787388822 514228166 703195348 181438041 296789773 102205013 301145071 211303676 647936962 8850098 590476040 588635567 802647977 652050478 875054929 809715571 822047152 381311959 790411784 205976110 741304615 473393766 627923792 226748457 949535616 459558880 926128196 272766960 925583838 684656989 732554094 720817170 723579493 240320730 618483471 342021202 832367335 116853427 823977671 411907090 532837569 1902150 307696174 161134952 325790084 121742785 633334620 215863284 475588530 403215184 746231148 682362054 746882746 457015997 789237916 55467465 292866257 31942503 862496037 354626022 579526718 537837362 653234031 196090514 586599754 500295998 579509570 550015584 890589789 86865693 749575839 667993311 787412127 546765587 725529388 336426652 928634134 852179732 930588239 112387003 572811365 444861565 850115520 848379343 868260910 377634502 771189089 709395206 711810473 266382886 293794562 204427051 289494163 63927251 502554368 10304126 376385902 85454543 384430845 86734545 489179387 287989456 770562670 281194479 799747513 333691397 467786566 72613223 701034790 324548468 541051163 350940439 539729800 107779201 859939053 517309619 739873300 479956329 528296973 232002050 261945249 131626050 874669258 264971525 719105914 557283018 793113190 484108884 923647536 884525336 915905782 622283960 772154678 56825985 689968349 259923237 527874560 105965374 373162293 353474753 806728507 421324250 487410295 259221139 465632316 50189263 682105761 126202711 909447352 575319441 772715428 132455168 418262872 126833177 823186959 380151670 762351848 252538490 899972632 775037046 786562195 652595710 665670024 109203167 576831050 268155145 341875342 190649302 277172858 230829087 528141215 284143126 949036546 212434780 682958292 430475485 542668649 160462004 632438741 189319504 559608522 329986797 574067201 129262573 384594385 121111956 358127882 351651160 993358834 336477979 877336810 725182684 769006085 168569181 606333301 448402112 525774451 464888570 531074027 415276866 991984470 724505718 794397686 232550581 239321322 150378818 533537582 509579288 999357556 610132523 907026541 299766044 699335119 479030000 739105846 459210400 798350466 501838086 633364180 228459456 396289625 314574869 579298177 458875049 492582814 16338668 176407218 37029626 251705136 227068003 640407042 502970556 862275248 655217210 904084690 676777020 880418225 521222562 586675096 496286765 678728671 554655292 727663325 129400807 469958053 307444748 314341072 77055830 231552294 167403790 865800951 665645913 695669388 387257576 598253264 94405236 476819369 165573524 398158873 167563248 907345661 329893234 808866875 133894568 982927419 503462113 920342918 849009564 996008880 303580117 858787684 820509977 968501874 301400544 693267530 690100326 949582357 28275340 69431289 63690741 96592148 2905271 355945905 28185803 804560787 209742905 315119211 123845550 725428957 344636136 387298008 309095532 386811743 285543712 561399300 365811895 913877293 613787986 670115917 547089010 931314498 843488948 981448167 629082750 735648912 415376684 705113188 245064776 703750717 316373742 840457123 537134456 819538127 396868761 541345286 478695438 563813610 260174035 368221141 318317778 956463193 367641794 977951094 103491517 590712316 398495416 857964024 660881002 742349171 428232502 953892007 485687654 561010638 55953516 967928485 9610984 653274604 643665008 808726329 639020812 720923173 682644720 869513690 306656065 941919134 2129073 143815054 17023336 396409092 106049731 677320517 265870748 989235402 570193517 704281545 66549670 393199768 305316445 638447128 183676587 958079177 502261577 591027562 50276127 702498750 115205985 282780595 114311654 322773298 286384359 616847215 328416018 769167785 308360763 723544265 529982380 877976218 703464722 776292088 104564417 411627073 167062506 716748697 681883994 793342919 376565640 770208841 101849433 858158503 671201278 909586875 753751204 804070131 590369519 794740881 118029463 292096230 153582051 386249058 94490570 214640991 10221216 315174139 211909350 384468587 311459618 833492658 246965797 801289372 599087215 930033342 254991898 423246380 258649625 434501464 311914943 379505169 21069236 411755097 395769735 664550924 382868461 896291123 571267568 651797113 648859084 743874922 357919027 612509464 135966787 536278385 124028563 189978276 159347128 594909691 332934222 986376121 678083104 880207902 529982846 895058583 371255568 860036087 479758208 768563048 322011956 911736700 803512554 856977215 771043137 891218422 884022107 949644999 354242792 892628982 770148451 823135284 118237267 404865696 147396040 566963207 469359890 753726145 304338386 726103649 681439644 690128936 545547865 728510158 657109121 745140329 593303486 973978006 672250949 815593564 198541513 366079010 293177975 868911567 323725446 698899545 632882028 990798822 981298187 986827748 894098442 907349996 270227092 770493692 412419398 795951068 517266106 913763483 360842830 382628400 342216501 412294896 131688922 628964949 5708321 355954350 70571237 244632899 2515564 599861376 86795537 183416950 97299477 823850288 237158073 714297961 65853278 281122450 66177464 363660042 105459397 337106420 6721596 260449302 171004689 312508730 252533990 565189056 536832939 863445751 619072687 984905154 817553631 983022716 689043860 939481033 683490472 872897194 325163962 913630210 538338754 642670362 496271515 900310032 439621160 592143287 93666290 318677974 15942222 254809235 149707026 308441027 25715329 868635574 667351457 907058651 655745832 843500319 572181786 616472975 393414492 987963790 354211000 636134226 547249211 905218907 224363815 293337125 120193150 256215938 124386596 437608562 301868004 479996337 339533900 869647896 253273203 661988131 154979981 436285038 131958956 948107221 804717386 849922148 661316520 936275168 538794252 978541930 584592524 927879071 183656128 438838906 337735005 492562432 164250067 932785442 166844568 743193183 101030901 344121217 334828816 725738131 22699839 917968580 58796161 198144889 140636075 941603783 362541496 574273175 125978017 402916332 381936070 783167600 42825111 435318111 270826684 616850334 464051169 997902410 205554790 693451469 235983232 665744821 390987506 789971987 618440315 823988995 775518328 959233761 171811986 489232826 280499076 708273702 355405288 966259519 225730242 835279921 526881848 682078911 248288152 964372674 71747662 299231509 77302524 798719111 211341081 316217454 224112267 259514394 69501141 513651678 360056473 509947996 493239199 927632849 876647496 897502633 558517727 746179996 344680647 618815297 92834914 321618900 246337183 850207819 164600247 961696307 879759593 891735064 725259817 726703442 36746304 132451648 7420792 187254487 180899680 231432440 204963148 279164601 1067736 102101202 5095978 738164761 132677091 529133817 6005649 17052711 13878788 374235073 139378128 333483486 69168112 118945694 10367098 850122951 593609158 676597515 250050628 959926784 722729898 796198698 399040175 945821251 185427181 623155950 567471863 764977031 273992390 821617949 155480445 968297545 530793847 669565198 7095187 191804022 9608979 365645683 321435407 486913348 43121301 212496491 192386239 300367014 57401498 665580904 427160290 791642574 737109396 858935595 491742288 654257520 103089011 552257125 442896826 873215929 728426279 747612580 112469398 115064022 11600105 411636502 294225261 858048928 138713060 326293680 85111020 105053336 17062896 782519486 321651430 343091823 48998912 276469262 197516211 199881964 185795870 518262898 81062306 277504367 21573544 695119340 475020549 956795630 415139604 446933024 3591166 744008262 415653646 653854744 547341332 649906380 146884495 521091543 354837723 488151130 402194519 586698417 82602535 892952138 47410342 424345812 158885202 542701859 5619478 429137355 406876010 847974598 540552968 556302606 522841041 844907081 14322501 371590463 308503408 728609757 404670560 901691580 884599482 992632370 419225341 874000703 227060040 864663645 521053399 871701582 638213107 811414439 28075149 337840642 189730825 962980353 320397978 756605706 671172895 829759593 302271466 334494966 117065786 994613985 592021521 680931005 535643945 776463747 619113378 923613457 19242981 845544888 830568212 953800581 291662073 505369800 476016560 961063820 914396826 986733525 395802926 483096570 235016927 751131726 644478169 869551680 343379839 651112209 9096960 469757159 137761047 344536927 99601850 479088747 405414638 466401947 203212289 443399119 104964139 589084482 491524992 656537212 231797054 961868752 213703067 743198288 461950097 777548426 732061590 829308273 256546708 661556472 576429728 686520989 349189218 614269917 562872479 787484249 732358008 801821186 730549159 988283809 411866322 624224233 259625824 319486438 282716861 964200542 359476550 566442868 497328452 777964240 546913113 785703404 722796218 966027073 295821079 618804866 567919751 998160806 779709861 889432119 421362649 978482681 742902496 956823175 450097819 694411511 457841109 648540513 54819825 794438255 350149205 857059331 556830854 971513777 499261451 856740362 628636140 857239143 461648694 968689673 283741010 310358639 154263357 575811076 452111550 993110229 476925476 957134479 862391556 998274094 784879968 900777463 351534865 779294321 597465577 780938488 520221691 892533577 819096931 992682371 400424292 618067826 257405884 361586543 325513019 572873715 293433157 984554813 876013748 932628061 837784254 921660294 63072568 508065169 845328 161000273 25534804 169805182 26416982 712571616 655458186 874395641 584359106 920874163 94790295 119660326 73846274 460269783 64965478 93147642 85439611 120150871 63633820 321027160 27263319 405899965 19193944 937188321 824280496 983463417 431202333 878928972 720106250 878944183 744122135 766750348 474756727 825877239 824630878 841730104 152304828 573468257 473901146 576975085 371716353 378941779 109965208 626021561 289942935 702086684 332365409 641880290 269305925 593202566 53380915 300028144 2260657 686124263 42612131 904548573 308404780 577184449 268427783 733487670 169842314 816016257 83956381 363883377 306790480 533209750 132989461 587234711 539602290 943743025 588291479 632671953 558601107 663590191 356861047 599206524 391369695 779883578 36471994 154907428 34787156 987493331 585304025 706993537 236900691 923650178 25016921 334483065 202174113 461835245 257786760 403584479 168858812 493196512 181918412 981901543 924309022 965197144 831338421 953920506 107937652 195917792 13248934 217844206 157368855 576567504 464328452 774694923 578714969 960285703 940523843 949888953 796062797 910160515 317001925 748398165 465921795 472237407 111898204 421203524 325037307 760264449 9521978 440832783 291123017 664603268 303394435 646128370 53245025 982762338 86902831 430915625 364626803 407210122 184532940 590782411 469239690 776393457 674709943 731105494 170286443 198281188 49258417 212372685 39752178 168712230 150305611 903921795 109233789 863130236 349540757 607682741 575470950 962404018 860862158 871693263 472610984 529888831 208561637 926678455 490376819 965269578 563274222 598212639 392219466 674945991 75247018 504337317 488122242 945150673 268131205 877213919 189637308 742919554 172093685 407908757 393999996 936786784 402392354 415988763 31664292 884568669 672979067 815898036 255236705 687874800 123589700 912407831 87911557 106111224 35661416 307690938 139254137 936931891 747578253 778647843 276928891 470326578 354194724 416099033 265213811 388781002 308236575 981842220 398095991 701080604 488204110 510506011 60292256 412966174 288610166 702563346 650930910 880644333 681790279 683312335 504756205 653635475 121866286 284203046 61400495 200407347 190112053 389572515 98646432 220162497 15368904 422775645 169427163 717798392 200288388 269850691 235744956 242533461 44791939 845235755 731821582 745861397 263641312 367072856 26051948 884714067 653197619 930477326 810519270 960735143 565740180 934503067 62601175 227924924 73722927 467039936 461676140 877704106 147379592 314598592 15006928 832157871 328161994 497074951 55201342 321095770 259146983 622263437 41857648 378198354 10834721 450652686 165817961 763356658 539847621 923263461 11980760 713048418 95573601 487385773 333306637 976849539 652372080 786276108 411195357 913896465 290734613 628512678 414883901 950476863 493432425 930506982 453647420 528979224 466884331 827048389 735282668 745221289 120890665 913898204 45479342 330223060 75451814 706668500 214708147 982664680 176415625 842535236 450818656 803190406 373736895 601919707 312881222 368036933 311578671 630276336 415478529 723176024 296415534 847415456 61873841 769446734 749987038 844306721 273787309 694196646 271108343 466936135 455040764 540781423 265474625 566489035 252988991 533084505 98379977 231910066 43030561 364094362 122107737 993119462 108325093 528220683 169780180 703562909 411719473 977875327 202742591 713086697 114138990 253129757 151846155 557296919 531383434 950406454 485961814 643133869 179066831 954575199 224886883 605196535 214934549 217346316 107858933 280495724 115690957 504913258 31309765 299755492 216461920 394267751 357238870 687419585 227367408 231670415 113416161 519889313 69865968 317172301 214406717 502480138 137581591 603079229 448434341 709871082 31400323 269207131 28806793 101609925 7219724 176284571 90731861 789938494 33599908 601054417 201972814 252468037 90699775 333137189 15022935 864420679 282846692 960199399 546926010 757584177 385832499 719669219 37649872 942501480 229537209 927137968 338226683 707622722 550008896 881831918 772328058 799396564 532231942 603025075 157275803 293861938 173193768 638442997 178394139 257810482 69161787 218571949 151633018 326154415 240922476 947549134 920254298 993744666 88527026 243983529 116737221 201189161 200395392 280222474 173732588 587579398 487161710 798641972 152891721 201773164 56037065 378181498 118569083 408156371 98094137 484468494 259776313 758470093 385633890 845496748 647344584 750738215 684870558 998356053 519208993 722302653 278355921 826830722 23647278 622268193 60646276 986050652 206498799 560073450 315218905 703119717 323628968 410619282 378620769 707532415 447114831 959833436 591878526 719100320 669751278 961185393 588451879 648669031 570697969 917230795 453702711 975786459 327956715 703993771 31650341 874098043 160702309 823455378 288295454 695312656 104425369 106550938 91798493 810763800 664559115 846985661 13299983 338257911 146800924 267298912 19285546 502596876 276918087 791547464 569188109 786893092 55941071 268665352 60134162 854457194 8526729 10584568 10046365 700548811 177688204 460764177 429268240 893142020 441862250 598181857 357541270 878074642 769762450 877810275 695090951 956244028 216222504 535163686 342899655 939674100 930895988 949032901 904372788 913315524 8829116 591258858 316000469 582635802 180929291 313845638 273834225 965846070 686652122 949271400 785568862 853240780 651936249 877608592 721277749 775350906 285780773 561957934 543222323 931875466 468814108 805406296 556899124 574893361 271110089 280792020 276791937 642316860 239082387 703584495 202932116 935476367 816215412 864705215 352446676 519466831 110185079 819513509 151700801 277198966 251006520 754538473 183470915 328107671 55494442 474082246 399535763 661287871 642067847 944001039 541468673 957413813 65945069 361638372 321509575 576951782 73130305 988697124 444901192 976619362 263047218 815539778 398799293 478836978 118295539 871165724 344493503 911268721 686923938 765430488 592149137 859400196 471102533 520575832 265344045 868470501 1486937 330342598 228643190 880681986 66511948 277229812 242751181 516820309 375628731 825658106 129380501 519887342 261309172 522391695 318189322 553101478 229645419 253554505 143419557 988264907 675366840 790305893 149094271 771534929 237729927 449129195 239467073 632512255 225218797 677284522 586117117 734232243 220022254 814677183 716300160 994968321 76649573 371783242 319409591 447174585 291599091 597013763 85885571 980472329 560992046 810510848 123520366 459430285 423437678 890611490 658338469 842325307 831566842 913706840 787334962 795091602 627139625 848049832 778681184 937876157 452312670 546119201 51700254 382367541 345818525 740213655 608648059 899074869 129089789 935462370 19374337 226024707 99262237 757386641 175452462 185450476 12901399 759560068 67155519 716713416 186829921 983147888 238801377 466344790 42831861 703851656 602841162 744357011 224858598 464604599 20565747 919404272 423969935 702456063 96122074 492861954 288018704 404506091 242558293 490845967 65985500 298284707 13334860 462428667 388243194 968472995 653100122 741330100 310138503 910286184 535933298 891619541 79617871 471729511 126794835 458603054 374989640 638518897 331238831 926369186 72247853 738491716 340409258 521101399 42336243 268752979 130569427 553395730 455507179 734929642 285582742 629617974 311144987 813059307 51373555 128199824 119093859 625035470 783696 959448343 343309377 382062062 117149048 437529488 9929223 836304510 502262706 917278531 36270094 689897033 288039397 967923686 458007004 934240962 268621578 595593513 367521958 390158735 174712962 428121796 135380304 754556207 631537448 653123349 484700325 966059071 336549154 538413350 112518852 240695159 33143821 298226739 269606320 303805814 202447187 211477739 133341071 452875844 229531257 828786720 378073954 446739552 57245112 800200605 57438406 169858115 94825888 459793099 409075502 440478088 210695276 415931331 349404374 701921854 357433826 411666948 372339211 433108032 413693761 527078432 145162496 345167339 146747511 504064479 421477198 524262040 383065439 792589061 638711603 767342380 435570368 841161442 837630093 989122262 314961888 757238683 443691998 569329596 268736430 305736923 154317973 310682146 98912694 663334236 391863448 818347970 404389910 785881121 114045248 174257338 128827984 442740502 237149616 634851161 337570247 809658669 717258142 731043804 454665847 508910838 331173937 732128869 23989972 142852279 64502439 391057301 335469309 634914976 373859856 928462871 581467534 938939929 202191582 756157830 473277712 574983430 292540707 380404391 161141354 684493363 24254549 870534836 471138539 644040080 575909588 790325207 784898508 816166982 439687995 558090004 200565501 576813216 42032113 149046110 26805396 284935118 126911644 196595731 98713621 132455723 2561018 539672086 306194700 979556077 932362341 986375674 278349082 755964180 225310357 591097992 537393616 607352384 323569125 857035700 512186608 791869616 735700854 991770938 682511696 978530501 501644266 923964486 500556879 537991545 425416550 608306396 561261756 938030006 782536117 933689158 399938086 677664463 23563501 255844116 53163297 368442183 8085545 55872634 49189361 789952069 38703217 263525257 256747968 970483079 722996059 830166989 142976241 773286803 429314516 955068828 71975203 705509198 120311526 149712926 20304780 625635313 213655399 527832021 120097210 460379575 366256438 473148638 237762572 431814092 200066630 226015094 90581464 148696031 81444432 147071061 8914855 118114148 64741790 869711105 325446337 966122425 529588756 542700584 54558792 906177296 627881617 976465576 587765963 914558034 691005851 957374559 860662505 928525093 527152276 536963552 105851403 936750684 28726611 575378031 431820250 504075170 393243338 912862740 714047403 843805539 722681450 844466490 838006709 931019634 634549005 784872353 493675867 854713922 487305224 750418505 705034821 909976870 841994024 900166827 851420550 944010296 535881360 859801768 537326377 688033216 238465856 772438486 476551558 913187506 785292779 788218975 2958036 561751498 381051198 872391455 516939546 847084956 394347784 764659022 239697980 919529605 677234668 861399703 124677756 306922814 199193793 821144290 25269879 593824763 498376322 616980780 126178427 906731011 323555292 552803670 341443930 545557176 300146748 731786525 301539321 798270755 48955662 801974897 678903583 739266997 550524968 575481188 207687473 498137915 23274582 79140893 50909054 709400042 316294394 795136911 662271119 882494223 302946538 750083060 444170840 766640131 262042371 695635616 335311243 977300144 539035586 656782774 584314967 739352011 540368778 853706020 577097785 661483408 597097052 907582817 342867525 814700592 428617269 718582746 175010218 841995931 327533207 692367689 52705730 690655763 81100818 542813863 435459666 926388355 505217150 610373032 301479894 483166081 115360354 342989816 190538619 402347385 115894209 193077199 40956270 43582012 18835297 796423135 15977593 641052121 359502636 769069810 288397236 982098193 959056995 974123805 164052249 906360554 431807535 642779317 515565042 674282822 162956294 867299268 128919467 366111779 88644528 160121613 1382787 888152607 130727652 221268991 95260575 526262502 89019045 908681883 796837303 906580690 354793832 795235846 459591710 647366538 416915383 650760907 614911344 960716459 912973083 964080565 130827996 229931411 47656702 212071659 146354012 794295316 166929552 760378063 396082747 598636610 398955686 566224790 177581923 616414124 121294288 577962200 30164388 75947407 13265858 285703273 69481791 965260456 864981153 964683191 538725474 563216881 382392881 801352099 481266976 789642856 599696735 747719008 65384462 707806740 175241021 844764691 613118235 916623264 259443606 956069910 298023404 404042596 28437986 753145571 22577125 218124114 217645310 987501790 938886941 983471374 177569996 723339723 508789778 596873401 136567586 378609730 95994042 418608876 144830417 328504789 296627154 477919587 413385184 468954939 449411633 733048361 405308816 947794775 827629518 929538731 389018293 673722035 80569048 81458919 27364461 581901424 575551434 772554524 631496156 784244443 590179451 753539430 87228220 565970766 356395725 630492948 309665100 897906415 268565949 471501859 310417491 580066912 323402522 489839561 174251707 360078093 263963937 543040629 97249149 782625090 570425016 813879088 588283980 883558532 366751874 952583569 54479087 909890244 554965227 831716674 201857399 978441323 944981353 948191211 788706999 834464469 176116386 948972128 896729486 993143447 193873745 413544549 108610359 302058118 80950559 748825634 460432094 671672785 644104526 795118870 23809781 443670654 87209291 395530319 78189783 138455199 136659552 794134255 757516502 997543075 818815248 930967298 514675541 768719947 759859364 800349565 87232495 119389679 81643229 578960770 95234862 383806617 1811821 437771620 113160657 849675869 848665999 866083617 491761344 649785102 399541211 769746201 550724438 569954778 420799770 438769235 248994990 612270399 184605945 994204086 65457268 219478468 195918178 217659272 94681679 600747702 250368425 499211284 469013043 924899470 749099924 768579643 531127389 607716702 87769276 105737972 30653508 965991731 796269075 947668115 742121029 752958228 642444217 825349070 744872491 840018515 276259839 433584753 408814708 886162770 458288370 765746852 240255944 943951918 847845333 965688721 107783143 706215411 431514608 475468775 267214572 837025534 223498320 625759860 398962460 570585825 257790698 475404027 457565440 955627130 50668476 547143023 110624876 422221631 9668001 355253229 137818444 735974972 403880424 818792346 273101706 326034502 54859501 525901310 352972727 486054828 202631521 214996596 120409875 326803202 124297338 130985797 81872657 970713956 113256741 782420829 335142921 745260874 537939406 903963766 283832712 954761494 954642191 987463176 447463187 920190078 689880285 865034618 839699771 945224417 799287472 988453180 139184252 487525835 289592767 715354266 139911370 437651216 281250599 922892490 884348497 949002697 788365929 842190092 238270226 610964699 591907074 800621425 501551372 980987972 383515495 797786658 155981687 637609683 78821186 331291672 141997549 390952272 367519474 387421606 350175162 872100911 750950285 884516411 751611153 814282949 321414234 819253682 76297198 644932239 270484598 322413974 9490534 92031104 49854933 717596284 14555160 765742532 379688137 561149097 122732289 363229217 111370092 265534512 134178208 253739042 235377844 425547141 92248889 826547418 396796492 598843076 444442934 959641097 470511653 932295677 698860876 753809428 731761160 798520681 608055134 644528569 494291985 532523192 319554215 722295160 500963094 802839128 187182698 696436229 211825324 339308217 301529803 732403233 448077630 872918013 809133528 949146767 546081370 803041843 764249909 889719948 349379597 702965109 529415809 699033199 255182001 745706320 291343246 859406880 208262822 343818951 189748230 917522003 517882720 532165008 116758837 470969015 110004562 128377502 19211927 767563693 451257382 837346537 814827259 858968983 76922950 875400140 173268477 679958422 519208502 685192540 253215901 372173017 333412691 985780840 310119072 975622054 532103407 659419189 296353380 441165880 399718164 599088187 558463330 853178939 354743475 803339532 132704851 849155581 391893250 721946319 417781368 568365987 469275730 839427969 103519399 234805857 70315224 176631647 27080240 763107177 741559978 917089545 532778955 577917299 311317171 567262805 388720699 897404496 853088126 995063762 932611583 982119634 788999423 865407202 94007195 197349862 25831351 198760795 117354292 418567449 354977472 401372088 169641696 455072241 36101047 638045085 487211913 978960253 779080010 851521632 146193260 887409847 247629558 601196519 33696848 447380399 210513696 653372745 505172992 885047494 202836250 315621321 127422587 331165069 184502722 677747868 646719017 680798028 523795947 794766914 171918852 649930565 137780524 858701865 841576446 874148657 370253435 390079644 273091 196925925 163553822 832624488 760703394 938422810 656839456 929504517 530691107 722371212 288887843 626353242 153116211 462913517 222032312 625282842 545491370 662761484 108585115 365731312 286299363 699268228 692529280 933879174 398427433 686538283 484357750 745872841 677320456 965842653 271977839 450685448 421424805 750300866 402408659 870438457 472775804 785221528 553216500 843461849 638395086 782125226 228856174 465132989 392688702 438797934 347973256 575173743 276569670 587396645 503304836 557875349 31692857 654864530 421371428 750280437 405398946 659312415 366781648 514504619 436406114 629394779 605590608 835742883 502805186 716762464 594279531 615169025 604075073 604745149 519540478 642847722 421737978 750387671 484838102 497855514 136734568 403059363 95745507 469875502 120980901 445797296 285237011 870647611 282032683 992620284 811721958 914230032 329454906 777207375 185282257 948778956 213932011 283846415 110678625 184033715 106852011 894911608 4768214 35806453 28143261 973018499 80859130 977031505 836789193 995040049 722464926 779718042 336494259 581502601 375020090 901042822 402989781 432963571 51681733 938834772 333414557 517222415 157592593 638164486 262070667 284134086 141231762 349066461 102395361 679488594 497197716 771298163 209646950 784846653 293734624 444395919 186922753 338438448 309383973 960176855 758242245 773982168 686701692 913155521 620171187 860805800 215517867 252091979 7969409 336524416 235319618 435050405 107717058 357886632 75988409 838529900 550952256 721256032 88056542 555690811 139832279 362396934 34642772 376526413 346853754 661739540 52808456 429049952 68523089 732427486 103897355 530457746 176186736 310270800 258972816 447233435 195945528 846720191 526966239 807462013 384859165 723405639 266667509 812650317 402095202 612609303 343089753 972044218 950651705 999324967 723685396 891421886 100121436 228348068 159241503 945341893 135777274 600691085 14868822 338958427 68890064 797636908 392054669 399940035 80189652 420838796 232963490 720223748 76389952 413760419 59376244 761191715 421844765 660410635 177290956 981215081 178651423 819301403 216193416 265337032 86433095 762230536 541203105 726576740 186858702 911915763 1406203 610254490 153955930 542532752 424935993 672875994 377877458 544106000 246567720 780623819 370614195 789446657 8253198 773922983 434355883 763529543 539075630 831610443 311122099 959949270 742445930 953326024 413442232 637475884 468504436 845228283 708613042 946288991 728564992 816167608 770053601 834317470 338388363 549953283 62146976 382161038 57827137 874164726 621022898 794171467 670280059 849240265 539635793 709481212 279687434 694026502 471407135 673814880 330410953 763961892 169789750 688250206 326931571 413147688 127365536 804944745 564422019 645745755 344746492 708775502 550562214 801135616 267911036 866334659 483740872 550874747 183561689 852195523 339305320 618220020 537804510 877639630 45037935 381463608 280454246 432328142 83635194 708742090 434138801 522570591 431617710 669810490 617806882 915381747 701383457 945621504 550082013 738591222 511917347 853911983 374113438 402617341 94788797 505183461 96058570 670787549 95823580 652041164 131407733 878805798 367101430 807178833 726580140 767755711 267440825 931791491 803129943 819655801 779673376 946986658 429306685 797531566 596969874 773869405 402967169 465606248 436731327 658633317 376555020 657220373 271958405 923470565 663227645 708765601 666547889 735765249 707551926 817966541 133110957 525738488 248341784 506990485 492943494 672803914 533716282 913822726 206315257 443279438 148209897 561632440 314855256 480254068 126165683 465935061 260085990 939830553 702525625 985959325 531037782 908910372 522182589 929226637 79810985 692134495 408317572 752591108 432677203 746268648 171576026 883910617 755754854 802553765 217023418 555505240 270067939 564751152 482571220 779860591 264984219 410926609 676732 38192786 22751016 961822622 407607206 903214102 200659708 632013150 381599161 552196860 525235570 782886807 764390100 957047012 286983014 521754063 395010341 457045421 167454983 273916835 174892627 396439860 33892298 414795026 174289906 364146021 253921320 503779744 96994535 110305382 29469225 346442884 81318418 843591515 670319856 782991677 660045567 794795418 550520625 907775181 424391049 647959855 536687825 790841001 230151475 520267815 339125519 396227495 363827335 948547540 383217477 527295131 506567270 890478766 381666464 932658252 388840124 637217491 47816888 294562434 184924634 548847617 510663566 696240290 289574365 359895031 249910932 869100463 457572096 960599443 959116794 976599634 653900638 882966259 532873840 849247002 390316653 668139703 635269437 973458818 2921719 33705394 14762165 730369352 10274810 382413936 72797082 685880386 81405263 284858572 176464673 298649337 270835500 623688251 32301154 37825516 20020472 511837412 383953238 904475113 520924329 549221497 223760778 999135872 386610612 853778600 68059184 392786879 232582489 285846239 259834432 932347081 238117887 597164945 401584638 827170580 528358430 546861699 478351160 966534972 547527069 870428972 778584736 825832072 73678921 100495721 35706663 841161963 178871064 517980272 425034400 769592825 470050136 841404065 318081163 838593073 76221589 628869357 178733339 764409503 396590392 584485722 344862349 386889459 73921396 972484095 136170739 348545142 300643526 449438413 49287660 995965622 624223543 938738509 647390669 988358082 224812535 900929081 603116658 672652820 302264562 731850285 709853731 837724011 213497438 466330847 269813657 656670751 532591553 910905376 97937272 581315197 469624666 795099265 750550333 759095515 246383460 796202717 410010540 611163282 404371880 836030532 677020797 778532972 83661540 140554753 119289241 509734146 229782588 955345962 26759030 82721328 16935747 71882127 31860500 350240092 60928858 585582289 518886588 910276222 494396512 922496307 445521392 829604099 300033277 846941543 709670011 830768692 300669995 964962186 889992033 965691999 325257514 585404972 47550711 546435173 51440503 524497068 246625707 711224983 551664652 770270442 188171722 840812512 564611723 571415480 288096628 710832328 438811370 761795055 535088083 823540750 597680407 914106669 493731904 688522309 513926056 758277537 249489009 374312319 217913153 345453634 227722488 391809833 64291352 151172276 131045062 398105644 151363477 825574017 513555114 698177903 106791009 481533201 422253713 483594677 1336464 662094592 413256040 693281325 654655002 886531534 480033917 561822732 361442440 486381849 60857170 383316753 52435516 901910561 813171738 994891527 969461170 987228370 466698939 655632825 582820002 981695482 324323600 976755224 551143944 834105729 574577336 840964493 536348038 548170397 443088710 907141854 124331542 800792697 782386470 923935576 270036530 950110704 727266338 942182268 414182726 457476199 372175122 559173412 455376351 678985234 555568323 836751485 588796314 675103796 314846298 323661277 48871150 528770596 302504419 330480546 117929697 992227003 315859127 806760183 663259117 941309272 242610541 460956516 273084467 326831654 16200634 266512871 247656955 458335086 337787738 702220211 220712075 538157653 47326338 378054358 192254277 694156167 279849314 302331912 37268181 432270151 102667681 492640062 103667644 600376532 163538364 317549754 292817310 946154724 765591290 858675582 479331916 857702490 296777883 655277966 268429333 499836928 59243163 371077445 353976606 521899127 145906722 937730583 692462638 740756708 641441195 873857929 407623564 780811545 473766912 567103378 173512105 517117070 15075127 492216698 147763549 875615806 534712281 739508817 6439743 486827879 437606142 521974056 458566545 462141032 24123383 486518548 24120383 568768258 516547420 924051944 462619432 849772812 492462851 752749374 40813446 316897543 204067057 830853186 285791057 302005458 62299479 687666895 465126173 615769723 54709958 660430596 286372809 456114183 346322314 741115561 705939182 791102442 779080117 859524764 248465710 901297123 607741514 624468221 596354419 961292077 291773150 485244930 64986022 763433911 219622473 645936952 95756975 811551639 679781850 733529253 318099820 422018416 5892402 576659552 73404260 905482901 253979284 858690889 495712190 961350776 902048467 973185926 958792919 998654176 95421700 171730173 47934942 885344221 814696219 944869394 560479646 581294348 182638323 965224707 312877344 380414594 287142373 505077257 355390390 906919480 554475889 624628352 98773110 165789340 40113037 524993670 308184967 521080036 451005745 901641699 118562552 597460137 99615323 978217727 970106023 973926192 646280391 756420069 348695089 785972909 284947729 510160292 158768906 808056112 321933996 963610579 163866129 401342074 224408899 947425604 27613117 156280981 118355166 562304428 249585640 779485011 437917680 896249689 548398913 961864069 243236292 939080307 732805634 978564637 931142559 967162235 430403810 761452227 662378816 944926198 555264730 911375553 283548421 30015029 896405867 787778643 897479454 428256782 989064755 679368158 795536936 751715513 886700686 326369604 905990511 580994275 970010456 860769826 966351873 440793524 489375756 301282308 903331941 39062472 843412994 115856379 542052259 29161044 399010683 40376188 594201375 590955242 669370376 457172173 724041029 438706636 853577266 194140863 999141785 640513476 890739255 652838742 743933612 21506532 397778952 22446284 588658206 449574676 946335087 247424032 833141710 499767066 832589041 756124499 929374918 563582357 589902641 458646211 870564679 120216040 622888836 259692114 873243429 189291265 251624590 5467234 533917175 240913773 975622299 153969772 658484943 65421997 428418062 382544541 392200366 221765444 912013704 120866450 979292950 900960590 906361342 196673140 258084110 117130702 348855046 211546329 372862803 285841482 362501770 66623708 135484122 6506692 630518150 112269232 702437554 97750263 243616586 238659216 514505493 288837248 908102348 409431027 917950898 271780965 303529260 26448401 290168485 61655746 166455793 165306637 460526290 28360822 296721833 214762317 365819503 342498174 410557842 199971032 543453820 496964162 628410448 219607387 361988217 237764092 619091756 385132372 392454534 268971424 434382928 380605088 898495530 234134386 979826867 732477418 857412753 27046735 912306077 869194313 998662596 403700905 933815270 674897 148697029 117668663 212450877 28011133 508636677 47005059 746218914 496054000 504868462 185737548 366704001 252789980 476838043 135294597 553104527 245205359 765579697 401904794 688143088 384488019 505231993 355015186 890296600 4132755 556024811 482143047 516031066 300846577 461960661 236441809 742587914 677399656 905602518 839759774 966895941 232078656 999994241 965729602 997824475 700060886 962616405 5390067 456292914 140468021 709579694 342120135 454904262 143689599 962825490 900738703 955936941 938986312 983173704 660824992 813011216 568121219 779476406 630422369 935990197 408524678 544041462 465684867 892636863 532647423 583750999 257449665 458779525 260955592 429777475 270549093 300682797 238987587 602783920 315141668 997407001 531180141 735958944 475703181 524146092 225815901 950722923 541306407 711046662 433755996 760909608 529147212 725119487 507520381 780232185 325132020 445899960 247000758 591630247 104448200 221111667 169959985 748312762 194261249 206259788 181664197 385289055 233780066 297976769 248423367 351611572 112410421 978895565 537401879 997216355 324352191 762191291 255551029 679926698 73691196 656070438 464140450 545253022 30569583 656691006 353173730 592388290 212572905 584443748 583176837 834847544 484877545 729385382 636910012 814378926 38066390 866482846 145662894 546033600 446272224 676080940 65994497 633094839 293504887 568253239 284370338 366434250 12496922 208396274 82937889 737535212 333586743 575974323 249538771 356484935 245970672 614645716 175872934 303505724 29797776 259517301 152016075 267800387 250233595 320429589 50945644 508833278 229453196 248203848 113445668 675219944 326150542 928725812 849177829 952497629 873324158 897585473 33362612 145565878 98060224 713373808 210115940 566233270 548373292 812605870 208352087 358486557 315164408 655875385 12287507 754295471 400188406 432130457 308656256 944021557 589560975 675665263 386466040 827262679 229959859 521645106 60287438 977105420 366195211 622097000 78890330 265851172 226892040 253531191 27433786 988571069 598629635 601979836 103325623 409098219 47327714 547227391 136417468 896985510 218319833 402713015 249737915 833129378 469937072 967701451 676807245 724048464 282562077 614058905 271307523 712407307 509750470 656053144 164881884 505290183 293991935 433904695 412739009 772071012 570182078 994703623 801573643 816039011 636456605 827654820 516394610 543398157 99021539 676668353 53202203 292172599 166843504 993552433 526913357 799523474 557639280 699386300 109042783 337387668 235660469 266593145 155363657 180035360 59477534 691132165 575348219 863173694 519699830 556629253 434205548 439547240 193030386 238644172 160932522 900220682 314872473 968119291 640174458 817654566 89054700 381910639 307275366 812748977 785683442 942683459 375317243 609445865 335227268 611767601 418904404 508485167 456600449 872254996 220847943 556993486 296803838 361569259 86848291 504347595 413815513 425207831 136245877 765378964 205497600 593365346 148299537 623755005 131872249 466114624 105996929 469395028 330329409 569105582 389086262 730933115 92917735 370869006 316965043 825633895 270198907 469540201 391521990 402582714 15331763 328910603 184484122 416259524 4810879 123037697 56463652 502921833 296062123 672508374 198987721 839071572 285347767 386610596 180116056 751553813 629901388 708336196 628165042 679672820 358988025 517667258 323267136 685507666 13679762 805324121 78508781 269605330 224706967 368957244 151758874 415311302 213874664 726965697 441249792 743626622 740339597 948965265 602762451 769000711 240737446 434242913 201434209 392916222 284256575 575195699 113326318 235861678 24933 285802521 159115223 992857392 723715668 751494111 528771550 733819060 431584568 837320623 48667530 731788027 29240925 551373222 19350108 301023773 110844685 283899905 61197118 866920390 22287419 398224408 109359296 878249953 123596203 944007136 133595151 219635229 206403359 680722764 348825448 427014013 126572614 834539316 401717927 926637137 99871524 438364019 319077497 399149913 159812810 199808026 26156770 163033668 11067747 385137040 315015942 653769431 354919896 636716292 104568498 630082880 101311402 505806173 254847859 393485385 41393118 915053780 247312980 907950066 225871982 568314827 310331223 693051761 46572701 497191283 206542380 344078794 205645568 213136944 32136727 973872467 113788776 625812981 398126375 556525825 460657281 605740618 393287329 994395615 304443319 630633849 205575694 430789845 369842233 370496410 265267206 923712862 166469051 231832052 230140534 602238581 432620642 990514801 948305779 994321574 493630687 570331684 249478669 544600290 434306215 630738741 95426410 788284141 575678613 937053543 753580413 808978483 578231103 651752849 463567632 704600341 475619638 888530285 810497105 974732970 266165838 540371742 203340057 351581238 45512275 897014122 840090747 893066742 44230968 759135032 355568740 716836856 273767526 336736509 255900965 881622035 806569051 879689103 412523365 560967102 57712395 354616069 10510211 240128598 168584949 631811062 139767543 402647268 286368611 849865913 302269780 367685242 343927232 908603946 673043282 820871103 763932902 959871445 188380913 766108225 165375406 517502552 302048361 809892313 416255214 953704821 739937111 999534336 684684597 851018303 310544103 902881183 855859601 865943433 767838257 854655890 388264883 637990934 403598047 645505110 172217132 488452779 191343678 522661669 409331627 459279455 146168016 200880853 76140594 557039502 534367910 744440235 672208363 886334052 393951722 498912066 165877537 607293677 293892120 897615618 49940927 853891831 591102948 741347835 601917662 688898559 213907516 429564270 396819822 478600956 376066209 792068774 523595307 612194138 398768435 903493269 736016032 961282649 639885170 856830208 848604274 900146480 876922657 930200715 447513973 898415271 635086354 825706836 386586927 466295834 391434018 731242229 357213755 702725600 688730952 735371989 319854758 737087801 395036729 727294493 597543820 697223471 93762061 276445012 183404805 438169800 177073977 396585940 297360399 448970407 388892206 488356864 387523846 578377281 391926146 985927261 847762387 944485244 384400308 788104063 188052418 520603801 316581221 699092839 290652661 793516743 414730272 634513094 148829732 763697248 303568235 421297943 120731442 741392405 59351700 570416438 478282305 843465537 662693044 794496681 786417659 940362209 444263378 548456808 96968625 774551439 11281150 720285790 521550783 567903444 69260276 246824561 116491613 925671001 758250913 990354077 299631476 540533320 214999868 443346853 225497907 744257325 539676017 835230364 335209681 357053839 284846559 881621566 835144109 918447140 106068384 538927507 407819187 662540476 62125565 675968594 355403958 800715224 759201569 982610430 634718395 989620401 309558361 685721603 631374263 710010089 628347401 641092151 625604333 708959679 610058916 973683606 208537165 509193642 407159644 915156376 373397874 478386524 364263310 462757932 267882601 795706080 392517911 656840514 494051663 502402232 143690380 250365163 13663767 905681434 893345669 945587067 238607317 737362567 703408171 899724994 849027346 970121280 90521779 869854151 413375853 555528025 477705184 870482834 181596576 396431915 335087732 661664260 429535148 517815557 85172577 708017716 655695730 722933253 163653297 195541365 106340812 914665435 274110903 444909314 51787518 527117676 394948852 852396168 94753354 709587298 252614491 265930443 79680653 485076647 42685469 758915077 451623550 991038229 218972657 966919641 901877693 949743606 320636089 791311659 615009179 653765048 331065434 567715392 214057256 534848503 510868391 723915612 253385445 896519751 66741484 380967164 266474879 593472104 370441711 455327978 67712425 870925125 345845415 750374623 737991402 865165054 146794955 733308583 522345080 543280017 169780935 833923516 368609894 735885976 347249370 694494944 470697393 673361354 660300570 818860010 703928189 777099741 273451397 808130581 374213267 402878590 304260499 887745660 416306146 994960126 364232354 712685575 11582072 26710277 15827695 418629126 192536280 253494161 40935829 318226652 173159715 764794132 353640015 469622685 275816778 976105608 707630376 990600868 746326893 757553892 427569674 482107842 395209683 892071286 766207580 866839847 184582705 241255377 52147788 614820151 358887016 675606708 257620772 685591182 191548960 975679861 352182631 629915987 483459253 530264835 507297954 937061988 9694632 901769425 43910911 428525216 33701920 120479499 24140656 228252287 33799798 830818241 714428071 956461878 103287124 733202071 638312265 962483021 853534301 884264948 395669406 910134760 764934838 893700157 613069195 729022027 175641353 354877385 243863104 280191182 256572080 999854395 239887144 379657142 84247637 89480232 36333334 948857170 289570060 513931839 183090271 756778457 24341124 976939935 278915941 380955785 989187 512569230 324632292 649777842 8758840 698949219 327612915 509229259 363989021 549264607 84511398 634478012 236927610 766139082 627745901 845766840 467382598 600036602 490134150 509489387 434460371 879461683 174406414 875333353 116791011 715981319 379305934 681296298 463584964 475316273 374030154 376742702 99588857 207904373 34763537 309939831 85371251 412180708 147760006 204329977 60377837 842365925 80106849 142137087 88696200 813608219 638812281 704796648 649561881 870235468 157154907 502185830 501368348 664656225 62440538 105998937 38112238 872001672 761132654 765826681 45819759 822982181 588588614 980270527 891985403 911877942 6371008 220550875 68013971 707375944 118261037 332158603 103438544 193133139 1670756 506094753 180845121 548112211 58299463 849355109 339103940 971548215 15733034 714842958 7006792 182666031 20737353 424709038 330165276 668194363 613807127 662670291 597067283 900786196 280014837 775637189 455226163 785472032 224917797 772813564 533607054 722153382 703788406 760941405 448917369 655543931 324166492 658872606 102941036 707446275 321420668 909045950 697407296 805475576 752527923 914956385 534479498 886466961 439140154 835754570 523841856 574862726 123107292 882835168 810695043 912407419 70716795 367347621 270273322 338494411 305487922 358833010 25276185 513948294 95177434 150012669 121504651 813225478 803612565 943487729 241530369 997374681 984989070 992672420 218255188 549035092 333614399 907567021 227934868 775802528 605806700 837073952 788717224 976757405 556794692 770985173 445542405 993979518 222617845 467433716 333885322 940447345 208393543 991144194 296874120 545655921 214156583 794530733 493376236 603248617 421767687 698636010 369467779 753045673 552540253 833797774 52157820 918770969 759813697 966231623 777268660 980647118 179854372 765148458 367063306 830666182 86298577 303238760 251140646 667745746 293629350 343494861 327321703 553729189 529574207 889414176 782870068 903968249 509327471 713783082 76755618 799239081 631690981 922569137 483170537 558319786 246944730 724232198 505420433 982164727 847576532 950968507 159081612 168291149 114555021 363918458 271847473 871734460 377537811 515269347 48513388 589619150 234963183 467082867 291813070 865678294 788027031 920993453 908226060 966464051 612239961 730413476 566522877 621881189 336874969 963814063 8961069 373446671 317173027 568991118 157584123 860737929 617435753 966646561 610600246 964560316 131354541 326839536 143888636 800158059 25972038 320526568 220880950 773214832 311262756 657700744 56843807 276789912 89473716 626359074 385386451 435762762 320556967 849623571 509677516 973665741 519685630 618997013 474764786 984921483 323010831 953956487 693827392 693870312 639271929 765789974 208581117 949367741 378540156 872948899 169523110 375033484 365467376 643021419 511348924 645112197 26189390 447251387 172962202 460819575 367492852 921007959 223587089 747533036 513435478 820682899 358815430 426793910 237495595 699307639 592211649 605605589 126087041 370152017 365143160 936414946 817515579 935387068 419655457 606669303 531635453 863895601 558071558 880753229 455360522 810835808 189756731 956971974 404560928 828046789 139333022 843743070 495896256 659361016 2627178 768721576 416629677 633436327 241098390 458922575 180897318 395300879 373829348 622063449 496497239 664455141 258553029 998617641 589490062 803665904 757880505 886496628 305950938 579454258 27249042 281196722 247782170 365795896 3948319 827870498 106338659 917974374 246702542 784340891 447604300 604871215 588953812 957543168 695772614 853627961 236530230 414332749 397831100 564255205 452479879 822960348 446574152 982445832 133657839 966266844 53515252 423781741 142756623 926229580 596075300 821407855 185677646 245100593 227365585 898480863 26136496 225065597 159973713 771384981 513800873 724356908 100884867 156387600 7071802 354258512 7401949 300259685 195994051 497061120 91106701 274791485 234907268 820252684 50036021 619660118 418942209 524977481 216682543 630182198 400025300 581488674 150896876 411341510 141046714 274378068 262192100 827226267 717647983 857286480 447016294 667032127 548278872 636752359 59570846 897282287 330004472 570186022 133812918 402625173 158869781 766799850 657928312 950827670 826115220 967044702 63370795 151779479 145338776 825787355 662599092 936737574 896487534 906021059 838876029 881847237 698037482 893579054 136787487 707053969 199953583 956072352 422956836 536980205 111635595 873622509 559141826 604169844 82000570 846196435 260848994 930290108 548223426 771225158 261447885 966771208 126257398 349996127 100909862 332159762 105772742 778201688 151899871 992935418 80821890 821818056 802467040 976922717 580373671 956599825 5711809 274138635 242963407 790210636 263018066 515690181 85543022 628186730 503407608 696218830 637526759 674164982 516641601 962370207 579323280 710097146 586047226 786751100 447290961 644402615 368519963 505491513 432398259 659442079 89679968 458807673 450733414 867800696 119809944 373643053 371674571 970851063 83485874 369730995 306980518 370559592 122318890 982871597 418449576 579470441 553710812 967987100 437873751 727073437 704130309 899160901 522244362 947022881 448514536 472885132 420567929 462356780 136066026 871944464 668128175 982027477 565340488 689192214 404098295 530181820 128955653 771423688 471511571 948076429 467781190 559797146 337070595 981636271 396588466 996626387 676679811 767980756 366860032 731136143 313608171 894333461 722011382 839922318 134539538 418824631 407120657 779876833 31169150 899461612 834263855 903321964 251223259 614933576 29775972 526291137 75955344 768363378 406239695 983909927 426572358 932142782 316790554 335014453 319388310 714818693 656067491 783512459 210430611 436797583 131249068 751112299 590685187 937094592 84373623 353613125 7305626 768045439 688727042 846758821 587558003 965095628 568887503 624784653 612701106 902134932 894668119 917513026 620064786 943897295 339195005 540304994 89921758 277004671 203449654 862554369 98228778 886034778 510515945 996087919 70453857 995295472 481133951 562634202 301790616 717157606 604847738 991107178 909075120 967303707 100056089 208323478 52448062 686783965 263280063 932695167 325235226 789746030 336619054 346425020 256519298 448977572 102551004 884907083 330697517 366340978 206591412 512297829 27507806 163906478 139881622 974661522 490515069 772984320 34764745 342640687 126966176 332768006 121144196 549206559 62620528 804400554 235750881 994472863 653821469 877707535 37547746 370472020 182808502 722730898 264717791 302993330 51330432 532387888 239283989 603562057 260355482 262723374 94994265 515650118 128120312 822910859 128591226 336984015 279250369 558868084 21155354 101160743 88617025 114396493 74899240 740420618 465957163 533116174 128604374 138184364 13063156 396974792 47471799 822205007 13593446 813241755 161373191 633577521 329668435 670437818 477568271 889043682 502422433 799714832 22182985 669951754 261553571 338962521 318933444 322470631 118371500 669687386 411186017 459821030 346436864 939416799 860631269 864004066 243940942 245242055 99130757 803037998 144999209 256249398 90522868 577042947 508157731 518337011 19004987 406496402 323351572 512393828 156412239 817097934 430606536 514619325 183463006 674908735 583913027 984124421 132863061 623694564 59692316 727662217 660828513 883873202 813464794 872400329 13643664 220604688 9626875 585382780 436702019 470964722 312576817 614079622 541287021 946231037 589664482 653990940 583405421 845280729 111203315 305588903 159717856 714608313 26025819 531663890 83961989 166747931 165346515 800889044 568045292 838230668 411610129 762932420 720120510 921949291 386519838 403196444 331951252 917207181 338176175 426305072 7065727 797930281 525538193 967806076 484165468 759583281 166045309 336943283 209225327 626047577 101736413 625470778 151269907 322777499 214710594 873943045 351996108 369473657 361612987 878259218 22009790 354021649 48776818 276230835 7477422 792941980 680475245 990939093 245942705 540738825 66755255 518743010 440618014 465181155 157441754 459124353 422441304 521248303 450679665 514089173 31911882 391021408 16871222 216353645 61290723 401852778 356811489 795134833 300375416 698099412 213759730 225838281 203142045 401957393 97732560 235729646 59713099 490095153 183498158 253824967 129071653 913121412 142647958 247004904 123074809 841516009 381633382 873605095 514009648 728762590 197387930 354455081 350716891 443420539 274307071 425187686 224656239 408019073 153338277 987015476 555842374 732370664 561996301 824895651 817165028 999331204 992311142 996686860 758538711 856547338 193122612 414693388 308861581 767572266 576890794 927712320 207325943 923997132 680026422 848321979 817506390 961886425 649498778 668647631 377028733 687840286 248249817 989566487 851199581 929697335 773618601 792965951 634756777 672265167 175076872 383460358 55863305 403540574 119262306 768181668 526248611 997905827 596367016 907081014 182558699 364681066 39669327 944747215 660607294 965627307 326659460 981080554 974660831 982614988 215959496 305425719 189948986 871094649 449311730 581194335 471131320 674107850 490985375 532472521 19245721 716667558 412708453 662730902 468684216 513350656 40351848 444757626 346687419 984120317 42514130 311008869 29176370 867204568 134374856 365919925 275907717 573096057 360432488 733367465 565485569 655175507 573179360 574007403 19252347 253555942 252018620 635446455 435700751 521236614 236969696 665786825 74618496 403315819 376429937 865142908 117552505 343618262 200727362 452233161 122996165 918556598 785369540 882354917 342813509 354427860 155096735 763805841 499911274 609861953 122543437 605855775 507623768 831510309 461754308 588101893 233659066 470144283 194437692 334374673 281518756 970661403 120629933 609827831 67103037 444394017 243470017 834484619 268759479 828240087 108305810 276788847 96138218 961695973 361084726 487117307 241368003 495083348 81827111 596570826 356248981 537287175 75498 752201833 212148144 775164191 231491532 714561605 550842805 910184646 734809998 957972079 293434894 510582270 502351859 795006773 253565776 942892097 253823801 943296598 717762460 973310137 348151441 539901826 180905539 978901459 444641158 794821228 2907963 652560606 127931721 529676487 313653924 682219551 402259510 858512047 744096259 845489820 448392483 783851315 561911513 779835510 237703363 557765400 488108632 932941372 193670428 835941883 527648546 858429399 6885306 760757919 460838196 972157257 142450968 204026288 114640433 202946050 95803108 495373852 424185049 771088004 364917231 815078180 488955941 623173859 346182859 628033656 298951511 462071340 72971430 182512834 143783034 813041156 431789747 677169314 494455825 776490801 30948374 632587595 260363144 839247864 129603903 975674105 616330042 717412433 395923529 985017310 91262560 740544079 369194711 734008307 292801210 982040053 277285004 701806540 409067961 890004638 811926190 964535275 478257279 917063785 151784938 815843740 719950931 760967825 567669833 962732424 4185665 849012626 5828816 908574607 516349915 923489909 798554939 904346736 557099567 802934501 670747786 790914833 625555219 930558376 587152889 971613672 264334947 521175159 63599260 70480625 66315445 81541239 36484726 995203056 908117204 984082666 485480279 962178342 213130105 578646418 540938377 659699032 427428074 723539339 250412810 647289560 272031213 363623348 224808077 233415607 136773056 282544114 227938971 669169803 212090226 939278124 245045968 553314056 205782390 316550464 39966110 47529887 9666661 761285004 502404063 669012936 313147977 507125892 135462737 538405500 182939139 884382572 265238523 303910703 262329050 921003010 898672697 921609911 598878922 826478554 175039190 923181327 539125331 752164559 125961187 923849520 164291887 531811352 352670055 680836988 408332111 905575268 565184381 632830405 342009726 611406487 472224252 894121620 402861778 815006710 248091862 720586716 358024089 612724661 188720233 331795341 219967253 333623771 227678339 536828593 363721900 521642274 246968902 579697690 506750048 768076144 639852339 807148037 285198489 973557462 158423697 668982276 428971473 799597788 406208113 869977684 680562154 950934478 412360671 880497964 264209387 960623878 693772884 762605665 267175332 989911473 313753407 582057944 234499289 559264672 494474474 888061576 712548753 810397739 345574 922915340 909200644 974499408 435884797 664687772 530970982 931134119 84053546 802896787 337653350 780354439 48869408 681768114 306218986 665175988 440878399 908419256 825060667 908471169 540117789 930924403 481375969 692707620 145944439 396004279 8877892 896852792 808534802 991780549 707813114 957813281 160765489 479943542 136069752 486594728 134820827 267100904 103442428 963509114 530643321 846275581 737989393 994022329 372962538 819168408 252509344 352520486 351042886 728109982 682637541 700281222 250661092 732340581 549737990 885226260 178579451 967934899 59294393 495869816 134918289 247329703 116979340 846245137 694414728 982846063 136361805 230276763 128251828 202438463 181563236 439674801 45795004 327940123 223694506 880660386 199898966 804242786 739250612 942468340 839265325 934156923 488017396 965310553 584688528 887709214 838366001 976137272 246090514 336662436 4238556 80771114 36547635 314913308 212520181 747542479 533185557 913049646 142417862 611072155 26961094 153342546 132474854 359747059 50709520 477211791 172620567 619335313 165452544 334304517 57310078 786075344 745330265 779783299 311939580 453828920 59322198 835027022 25892293 305509953 264698280 949363797 545096376 853519116 580735210 891856291 767239967 975646221 596518495 741201264 226551561 831983476 49063865 749346238 483676990 692291591 428315625 976011217 72594566 247472179 183226573 923383593 125736633 156430112 86215310 86699340 8125050 978246652 572193104 752249428 223514215 876610343 59775231 736057070 144153302 627448582 512229078 695690702 660884978 962477078 77972533 633542347 341114595 443756841 221857510 988043479 878969630 912287831 401114822 996105415 180758717 463806664 241511816 590930496 17978513 849281048 745020684 895305069 180900848 888650387 216903712 961597379 123913692 935992609 59491409 720573335 542601110 631764837 264287267 684341908 426696606 860910851 301447098 549153005 537804510 589601779 33118523 726133127 492345535 803089756 735294884 879874808 851665724 970926821 526165455 994951063 192509039 884464170 832109825 844410844 460421156 935716719 194962245 448576060 283629990 843421684 24228054 181913390 68915155 597023363 536848187 855070898 484928594 495297942 141352580 412551139 109761317 427189031 150169461 412075956 256964608 795305657 494295977 650748877 523588822 892107598 840334267 945081653 873104338 967821202 460282043 921142262 341365262 934156252 744035490 997039227 990986053 996874944 969834308 970611219 700507657 765922385 92284638 645347950 336874810 802137861 801695886 955504909 838800747 921802983 639585239 651830450 629649343 650249904 247200197 861225028 384208493 454760679 324087067 515745334 467376807 690672446 473710145 684954358 448925267 453160457 249769624 810652927 760776907 962756123 608006431 824323624 711749207 845101850 552869759 998418463 90004478 222528788 212819230 339465464 33442326 121381961 88895203 745367961 100481527 328179827 183176827 976245040 813288232 962492010 374307440 913093288 184160846 331147288 235166161 963835670 830129565 971537916 937630617 984985775 157671088 631121077 353496808 515155235 300182712 890747668 60840738 138747365 74120769 132037266 22742503 516028349 85399216 522698971 338339899 706266960 601372929 799453099 453722183 669822476 346477590 957191888 463028421 486271879 174237502 426794400 105650433 888328241 465857184 583325590 537115979 880098971 630828905 967017114 174027309 243550629 186142312 729718555 337749870 864751371 341150330 415072262 143030055 693740649 146726466 787092283 316701551 440564846 53215834 549596640 229359008 627343571 602504013 870939363 799773115 823817399 586417975 735674931 654741907 860256995 442745108 608795941 128574225 613382011 549916383 941065752 36344174 569665240 174772154 691941955 333254749 624279778 107083297 225042535 20337273 950686013 943924572 951150251 322325524 403634401 153415401 476678355 323675646 408795101 115844427 755385065 524293225 787919433 103750706 549150723 9630768 495398910 144228554 363504476 251767912 891974641 800479835 843515079 577870 64772319 13350534 692610151 577727943 726961887 458339711 933932441 524722815 845802608 290254410 568390664 562297901 790957683 585108980 943162705 676088478 873053993 530609257 803210463 721363390 937642868 881635479 909701383 617926924 640796753 582054202 764872158 636155364 660497908 124494255 676453911 423640468 533271411 511132814 735279968 167780667 267044389 179483880 308516016 151541141 196789667 11466676 703671005 232554715 600602758 567693259 950687073 172463826 713992121 117123753 222604717 79416307 667775827 579303734 616482761 54595831 941871506 519567177 913959320 309593035 337102444 155696146 913502846 679944926 718761539 174400162 200779598 55737485 205601877 114130786 885387852 405178018 777385618 549137499 674528215 53385389 899332318 72940207 185070793 22062117 761914226 615245189 771984509 430873590 482825991 195229905 519348251 131888428 559676190 354209057 796898388 681308405 879637997 227952224 276479284 25786626 328411199 211781266 525185674 226227503 624110265 196939748 899699412 183433476 558361273 79918977 382329536 187580745 828268886 323528836 324505400 98065515 973673024 646509646 737585075 533163917 579762393 508876651 645654598 386129945 850152419 846174362 973357639 354953026 864235554 486990685 775708483 325189757 542149917 540549067 994998008 331551107 851707907 234826513 954132410 594682131 733299767 134888527 487880409 134136383 385923302 296343927 823514534 401657569 807388952 441247776 465362553 114112537 178851687 28784067 140876485 12366284 478124583 376326222 827708558 771148864 969405171 615395735 777151984 709126462 888984082 852766235 956800859 338837568 373587159 63747205 600314263 124584740 709279539 417959520 592651558 466534309 773899882 575782099 901226547 19924002 573304300 22671439 463569062 376138335 730831245 47902172 990829839 56272046 575299684 37886593 467054277 155367584 672757390 655276612 835770075 459543296 474214932 177957615 237639458 123644489 969938670 553355639 778090609 412221715 442465631 386206369 570631084 309159127 434657157 252441399 621106895 463799149 646942130 9108808 135725549 54316893 848977604 103801999 675812201 665310589 961273954 150117962 999057157 181118406 252126436 122494391 922315273 848068683 949245108 914109951 950706445 5739069 297210120 77474048 645221859 214276076 819592758 685062579 818979713 818798463 984294262 633598318 982324828 289784936 886449758 510080885 594795665 343413396 761128346 435301578 516900249 61504856 804863800 573666055 692267204 253585028 681857470 450474386 558980314 417442778 699544180 454166180 865524667 440032495 505968418 62810992 404995764 264714615 648273012 558781047 835197033 166033185 623436692 192089435 457301483 246183694 946072936 54218277 741387511 308432541 804315964 585865125 793742149 344754735 789310856 67043621 921636436 345685032 371059114 215279892 327410112 224060183 390567810 150296543 531350984 36308119 472482229 12414247 144076804 94180533 659804133 424672841 699882052 375222505 560644055 227671978 783126022 25177282 623819227 13777885 58326299 44697266 808463095 396649404 726870403 210997073 225470981 205434384 814256101 156689737 178250076 49893934 433344929 113145396 492556549 387572060 618768393 545109621 880230029 708714577 777241321 152174873 914103534 472925692 925532005 639232291 762076457 684043859 744896508 570054401 659891612 293677910 761501212 461336891 683494301 463556358 519420704 361344002 775409864 552088187 677712265 383832082 636234891 293565042 315111343 238568841 713952183 228371693 299817432 234254655 618884516 453817699 481240259 172300523 456871710 102946164 398050075 211453021 371814345 155530373 307678848 202560782 911022091 9240092 977728421 3262014 12071863 8915397 523784737 222084466 404787985 277471156 941000967 648299012 710986312 413076419 726181232 689736188 851502171 301034013 837709464 242946510 401743371 201527966 866416959 356507778 979619392 702169828 921093086 650143417 753788949 512140055 590805476 501069425 516825781 464257458 804807226 379163552 696702564 554665083 640199570 2567630 420566543 277733322 694555571 649701133 781766696 231393073 246981193 173931246 574202790 359773960 659962626 313120450 889808422 598279639 604008372 221039936 464356868 167664712 525007348 48894670 623476278 381514608 989669090 726638415 876194423 639834975 669404711 237204188 277892832 166555128 364788430 183236717 835325969 258967404 694162701 429384396 851829131 595952213 719298072 303119525 328995342 225835337 659353185 349581153 381776713 358092064 364041844 82135122 835453557 753894176 774021883 203834501 332861441 9038314 87694941 17674510 644378117 919911376 568683713 715048768 525759393 768439531 107951676 956810438 165419087 566141733 532379044 763696790 550692937 761549027 270661606 848129855 788300981 952178476 144185245 809975055 756159206 894950654 319197124 497508457 280582815 487791248 181768170 862031235 26612400 209767654 154391264 519846870 112697885 724835463 222306955 372815310 33416231 738751182 494034512 909686445 8192604 972853745 756482555 910516525 284411315 365066577 304659649 345960920 339646225 629182077 245406675 506119842 226077584 264805348 9937017 899993422 147677093 211891515 115725324 472003058 356291224 511113307 278762861 392026098 242386957 428655945 102098063 274106059 110693393 802592632 461629748 854151042 408087749 833464774 480286887 983854851 865947081 906167413 713044193 811645209 197964327 749917526 53527734 970320079 406161699 833434680 798714316 974997881 568927340 857523643 279760893 637645903 331351108 811805061 729234754 938174353 53110363 946297170 423521883 823666019 186244526 725973478 259656773 824571962 620752217 920802493 569505517 601067201 426200712 764144870 366691213 901947857 865980795 927227542 287321352 697998136 330388920 621750411 385425784 583479974 533870267 900210859 570319264 725428929 499097220 759738168 574605761 951660608 394952104 783306914 449829625 499742697 113649740 256562103 173535208 776153075 650902394 908248011 862817285 985410154 322196173 616163540 332320229 443011982 11441465 798777277 454600381 973248204 42116553 631089261 291578997 584563145 530848443 920350662 815108533 827429471 709454721 779232404 378972574 635798626 289756193 467669262 238009989 440106789 220575332 621509724 309803484 763917178 302102768 988913078 866995339 890966683 790081470 961023057 297150324 638454019 239683728 656671626 560849864 946741638 2706265 361854747 42437537 273678310 171873423 220891150 61121879 707559084 537313995 784203443 495919240 732628742 682792391 812188628 410842053 827085014 398281222 906049899 163445781 372297329 295652638 566741410 566193667 728797484 202471519 274133759 198259488 474515459 137537083 254822817 234848818 844873514 161421680 738421792 522769188 787140475 124312269 990272745 563729465 950918475 358876060 754638398 435831461 959952991 248628924 499153589 194933717 265022769 216603121 681618468 391104031 652250970 475856651 562485079 171464957 932771350 597416422 631959580 502076513 643768891 498430574 519859245 244624307 382813831 252936575 592167406 89189408 314230570 119875598 197851296 74155221 513935546 200529481 700816536 154715871 344069459 228319137 745262193 450363846 763242960 585800880 852415586 534757383 694271520 102066587 878824954 514011993 771592333 44888493 644617044 552062592 674228738 108022910 147941749 76192557 667296647 332873535 957706282 580643031 708842902 591513827 949186718 559985150 659681432 348233180 530682521 82279704 866061078 600003875 780808828 619005940 855905721 423721238 872199153 245996658 465000022 261678985 420331782 93635825 591227328 186926389 515111372 410172859 473243819 346915648 908104564 60037507 866238819 162840314 273379725 238301232 972650107 133599289 432505384 244853744 341909088 240255344 536893037 405508202 789057753 320899649 539488715 517478958 739957342 537208100 970429392 257489340 641191482 561258875 597300458 257085169 288450772 194026941 275390662 195015740 600052696 440878247 975695894 141204291 590472149 468004927 940413941 171623008 882455538 867039522 939714302 230343419 618959605 423507461 529219875 344134330 657588578 225772348 330762692 226571319 850209570 665915004 853440827 364682739 857377478 812902365 981785786 565990662 809255012 414539493 817658569 318103517 771743950 597122681 970759989 861037286 949039605 454340715 526669165 320385093 842361894 540965840 951032534 328841096 333451994 321068367 651900456 445369764 508744694 220871577 457483513 249183903 918634725 235107601 294666865 128573250 306133147 60996007 726513738 294895410 432382857 223818250 400625226 261305103 689606484 465364203 635852355 439789 985818889 284537673 439374404 365047993 734253166 693212022 953715979 502658799 575774903 305146235 662450113 559635279 969133315 433817068 988895048 459418169 589430761 233680050 981343676 921503108 990636903 4787761 481940474 366938934 941113525 645635939 661260449 247171609 929232155 386936376 898613653 604237691 655559816 540734813 841416665 413028492 583567597 416709682 828912594 220445649 655914620 325219862 977977334 608672391 894820889 862526561 924375974 468270349 677275043 181741087 193404714 51348621 753134124 548953298 694219759 515261043 786771836 659245128 724315256 657366553 753800092 456492020 489780302 59727966 68308261 32448047 924869042 859293631 983900694 16517613 461289324 223554277 810912138 256716072 460624035 43799483 631629221 173319732 634633025 631869497 953198765 445632954 652008842 416533369 814149843 120963682 786943659 536135296 839964737 669036055 836485056 625154140 846155365 309314575 797149158 768972444 803282666 244111273 517314906 19819151 883216643 207399763 895355816 105030185 785799524 473547747 872302263 561285904 952092383 609220489 987883470 830072813 963251963 760811800 786010044 680531495 788633465 330749362 347823124 87137065 643194891 13427393 713425110 208141488 603173558 326463154 793787084 36371522 998158421 437053983 886140659 590689753 732167248 155738991 819832294 654701479 820980921 755145522 757693197 115622238 660559460 148407867 362502180 178168602 598689788 343549490 899845553 501535459 927586274 147957804 813727222 258863008 845151723 180560175 718089861 60889624 708401989 249100626 888907548 315706414 434939767 169463165 811743840 71363646 275315081 185338632 914173280 886933935 907580560 352617348 758793181 468779256 825904785 625853652 686672289 273105016 701170208 135709326 657234705 235561727 645472250 501166705 622949093 59606239 814156769 555092166 785683918 70805652 758134854 751231528 972490130 328026230 410711449 307676441 752022011 30625018 734955698 598618580 639303898 373526536 493011911 389873362 618830937 500724355 863075051 275548619 390889029 390570317 585637754 399049345 967731074 282751503 393933974 271735284 724598181 158247342 501927078 496303331 992311800 520722620 640764744 96147931 370691977 225864201 289776086 105234032 647875002 14479843 918954403 417620569 741988134 211423785 423313240 263940381 768849571 421151546 432421308 416890384 927486944 477730261 909481240 581926839 914373270 175603945 540566705 307220980 642662828 161213205 709517961 637018608 899938374 457626984 924654385 727210929 742759275 431217340 455589842 237091442 604749882 242990161 546638692 527511379 628308969 449215542 721634682 406004610 891424433 784230135 873858333 468133550 980664698 194994114 391686972 317038704 995977191 389079104 475662253 337113318 490558845 323080118 893351219 650618939 880995238 292623352 565301309 20507872 174219701 13563989 803769231 636744866 907572080 507315469 591837363 236554775 826067981 371267889 915896887 188318593 486265593 19900055 798051833 469271765 613666026 207704502 546898120 374676534 806245922 9014793 436642028 185885852 266791546 41998137 466743659 382016077 933032371 817985897 845944078 359034003 361105898 40210311 277445786 254404741 416331217 124731556 776095962 453453819 681718812 459469022 865833181 626003952 743303281 251467628 390339332 318625 582448764 99461178 304044000 140206763 502685664 76523868 895820895 725921956 859872316 200613775 867244231 844675848 986260313 28805882 36948961 26098766 792129271 561301015 951812318 584600416 986749029 820089988 862875453 738784688 901346183 758101300 894734214 290923720 878659583 667680896 835845538 92542369 501948031 483298797 821814908 180763285 393525023 71850596 72999711 67564067 121180867 56725693 623549775 592886812 897728446 30912570 844826183 459795216 653480946 533969581 559560583 322283677 490625565 102199052 416858878 312923552 587905464 168609035 693721777 278263278 979206203 563192350 906717373 133644426 937850556 25540407 944750292 587220734 851815775 422209596 589049572 384672572 417426506 97325012 983113328 277289787 958335270 489140173 636961657 143205379 188904670 184056124 779946624 378226139 441001693 173588234 830944169 417036453 660075928 110348744 560023212 219340412 440335355 312785222 496064627 180452376 752387875 712679074 889960502 580687670 845502474 520736924 625176545 175495751 955944406 341904848 698840413 149261654 799824622 157919240 375422327 360444954 614352089 139597039 208534664 189915392 821232483 549819884 963515397 311096489 883208034 769907694 896938843 406620391 948653112 135903305 714601737 79140555 784158930 58366209 591106822 86749378 367647024 266417013 866320738 306998644 586321316 570503613 906596444 271455285 794412329 644128257 839375525 250689476 594648015 477930553 725368139 578884454 906284442 715353576 993165359 55602400 810066951 698899010 783815795 354580868 773811861 686944232 765606565 96689341 292075752 11727412 582206849 423005917 767836332 92708784 881235355 677627321 877529419 116340972 772575802 16167624 817885571 112756163 676285043 186942286 252515888 32360395 156204413 148394628 357347985 254959393 279036513 246281267 749834508 184191670 809411770 222439372 982414108 737545911 960309991 115204873 244137975 224049952 617289665 471064775 675741926 320407320 627075302 457748577 520531938 41847122 134200045 110724411 913886138 849393159 942202639 213789553 655069931 45830731 385327985 71831046 824663283 735876525 878302746 262941226 975039159 376976978 512384091 153954426 213972651 6656366 325124299 323246039 540840615 431164995 574408364 537555564 954598117 853339293 905565085 533689910 822319425 195991260 612331852 392200760 533569719 91067676 860124711 751524708 854033241 824910904 828241700 198812190 820039096 91671416 447175213 240360196 830658886 111913277 470025385 236969996 737996930 196197406 274718950 176438551 868029197 548300386 679782125 645083297 668938915 364636256 592542027 300056497 597305201 387540967 648391316 88867530 766396792 98930318 314998920 227588290 828135713 516796566 904678390 841557045 930303514 109358538 544147274 78319955 801965273 711359005 878959952 262564871 464735565 201569 66957083 61006261 90529685 39224832 469260836 362563497 845892266 223717920 692238246 193878406 874590703 778953691 998871065 610682749 719445819 676899912 799472801 240385002 541524627 277273513 705145230 583430543 794013651 486611691 731031099 458950050 854128560 219067896 871992088 432989071 859550398 19537095 792233048 36215461 944483254 295923514 681931914 383917606 616844817 607371526 626411487 326620522 853173273 820757941 879838663 190763081 944456522 941448295 978715637 821789855 998935755 657748952 797044364 793071499 825440289 225281643 980310885 761796003 885721455 458326546 593809802 347679476 483724470 267540244 536365629 97320728 992504771 538787986 730718826 401228327 489719722 286737081 930574870 223304210 443141095 255433903 905679357 41958834 306758048 232206659 441762451 234810565 362030753 75721843 511737021 129550422 167223877 71215629 722150629 179664417 897847497 515886593 799818987 304129656 826324308 589959074 939503875 574431632 754179061 86447370 120992355 89472542 115996626 10589365 353612580 306450389 610756523 33689945 791101966 315253539 690616519 101731061 264445545 179178068 865865720 667425705 725981025 231175801 903723752 582251279 682549171 104459547 561619598 37824225 549059620 366962189 499178759 272974168 750593676 680180019 744986672 591107520 651600707 321272500 594765659 142441295 393251751 50157484 454789067 71812730 708691374 194423916 897261102 663038747 665721413 15140510 168653547 120796548 269610082 189256626 375555806 190559125 570133570 428043390 986665217 656874252 662278876 38995340 337619379 139322303 685118687 134534799 179537615 89214708 852957649 827935198 881677784 65221560 196560243 53301559 958043348 271727597 730926843 616752906 730001328 501959931 526303819 197380008 705940963 423214503 919145656 233909305 681008261 130873498 734109880 133267576 211290891 20236840 53347266 12052338 304099794 232238484 598465323 62380487 278756944 191728063 470153291 56212261 800051084 35895325 762333847 427462935 788585662 119643754 590208562 274051125 738298075 372037593 695192721 582665574 889425504 118121452 702603358 256401598 979472391 366848417 621317637 400681200 666574888 9733216 914354501 75383037 231745459 200249038 999750145 594472906 739672086 232478714 833540579 617571661 824359310 96029534 720932838 31054558 980679503 196722697 524343341 361611197 845762383 420716508 482328790 474336864 870631541 67879757 788611499 166301934 506522523 182388809 208325200 144012015 744444935 46900403 285254629 49597893 372146570 133858236 138668750 51013628 414560152 336455032 879189324 557563391 584519727 82935565 879464033 355483781 424112819 159469520 349237752 126889797 302407653 212575577 395882157 64149580 794551816 791343418 820666614 78736395 575053575 227350716 409249423 322903433 553446770 32602823 559852596 66789868 773969391 498399243 916594302 448111967 980155306 16335473 101424860 73401939 149912065 98661694 401892977 22428700 767807499 121890410 563271041 442984109 514123221 122688581 519093772 407526753 770869658 539817801 724272747 450103451 854090522 562047629 804867355 251918101 741871318 562050922 723850143 79073977 360412951 276909976 384707958 124890768 183568817 17400786 727284333 573023448 764896684 574467290 929078444 528555714 981150202 903096025 991781766 292524822 841251477 299007559 410865377 122894980 934283078 268264252 371846922 309732894 800909462 764750770 832859277 104394265 849350259 64284309 361670159 69570159 337368566 125701609 966598709 653691498 784506649 724363378 813711968 44764868 171725193 38802604 186173843 90808849 707033820 591526157 853606057 552528308 992022339 208681173 457443226 130683659 967355139 493475892 711837804 343626356 852341853 269029613 575116429 438703312 505401401 216444185 678394644 68175289 525540979 199241031 755371842 194681299 601556150 302981176 767436919 572188399 651656582 76554205 495594719 389404000 688358606 144349464 284489865 251645870 354825636 17089655 653610594 359575056 892164280 382277402 631530224 195413736 871116701 191627165 320769475 194365186 360864097 245876654 248904011 68169496 903865006 884464260 939263835 278567374 864078413 301734083 980467706 533584794 620559229 446951696 584398115 187275072 575036539 121652800 738827266 465304408 705075447 670330875 961793579 233843783 408239920 363765247 923007960 563606322 918518192 475446031 527768024 396949734 621155285 241869913 779840540 518025571 728987044 503795034 525970696 292920606 807844187 759707289 955373873 629371589 865066061 738541822 973519398 28334855 108603699 94297996 968321883 33528830 624280876 604927915 930401947 460163274 480408118 369742686 660663921 445970631 731107889 600764880 823215206 38755662 561021128 21354758 196456247 176910979 678461918 527445405 745852282 685569078 956021063 731349207 827819465 193393123 789433093 166400615 177703975 177237537 695033046 161521614 218118962 131404472 486053296 215449340 674562616 368209832 806544898 218729699 865320354 240605059 969301369 25013603 206603587 104608282 598459985 81647618 796192783 755083702 881214108 627879332 894933592 361302550 908893180 683397069 988886016 255272157 639097513 630935382 922070271 783616819 884935276 691187413 692021364 98798279 801065634 270848446 967019388 703321597 757092724 272420355 905690656 483829441 506832406 159885542 357353477 332392629 439297721 422764653 879349738 161879369 663505741 246743518 360358252 120754554 144280764 67838395 678288051 545096622 898773588 6353537 212215873 144910361 541452974 446586522 738501637 219122525 694750844 644945945 922847733 121728142 837927096 607437020 758460205 649956692 835069089 808479129 986568580 2155808 393464822 68936005 593309139 166393198 248773147 100546135 729242996 311564461 314012899 16128538 905096896 3341007 182742852 92291533 977799936 257927543 795049575 74647969 624482298 478223791 488925437 241115331 799352584 587113411 806614276 178048588 286968120 38740896 661035086 506893661 699619965 328017714 782169538 145305404 917629675 523408358 749261213 297993160 674032350 322311266 659999493 196212473 717092456 496789018 899028351 654126206 704200721 12222902 838333425 550510156 689719496 665592050 755277191 613975433 761204462 534876434 581294871 572552015 641138802 500630483 548819551 344642940 634649563 19851485 692944957 652820511 669405979 11517280 115605154 15955370 343532619 318355178 493627013 410917348 589080893 519386064 750842567 69969791 459729779 317355636 341497567 135065908 618377260 517477825 689685804 287920760 298963698 246933849 965929465 286385750 470466492 466078948 641111347 350282730 702930033 501652524 575818845 204688158 235389914 136024699 888689092 656736944 721218087 707850508 811728851 487543534 617863095 366322773 638928383 34552268 608840881 436417491 896516818 670236687 752255382 245341732 984695926 116739008 419422491 193843815 922186397 520524032 735712909 541075368 974561388 226518413 871656304 479923644 601365025 552070931 913044518 828136312 968028657 454718288 821877602 370327447 601335701 557751034 927368800 202429935 744764790 580443334 994040138 786273391 806957256 502872519 723435882 639712858 773799833 201478523 720559285 51064866 907634718 3692029 988511287 217868604 954188731 645765094 841845980 714878017 959513591 639729263 694505963 469895848 976389411 911771986 941875441 770277886 772423141 95267909 299366566 126990777 778706376 744754009 899391209 630625607 690237323 54958597 514474195 388693543 565209516 47805855 454262371 310050768 412251063 355570957 973133260 67091953 849049432 597145408 598388890 480324148 950693389 410700272 940282142 781593759 889892696 863653940 934815415 511894005 797071906 551598771 706935423 62950742 892961323 752362856 773085038 627084387 772316199 673723817 829222790 788956960 980183534 966519865 991770194 30975891 303782235 295007234 800174117 272368472 615856810 418474290 450564946 89884296 829038989 701032331 934504683 882115265 971677498 177757835 984029995 500327569 731106742 680920822 792725770 334409047 749077733 714928600 772462408 753178512 976409699 535822905 799358589 607179219 778297503 414293898 839541442 358727432 760439473 205011974 696471288 231017154 653453715 77059643 599063867 312414158 643192120 316422894 440109796 428430691 463699147 329397958 433872826 215756677 361226832 93914496 459256480 200059946 931631163 515441842 962602097 577057877 864562100 188819279 592995500 82064052 625390005 31371069 654872087 183555284 395907338 359502517 540913870 431635953 618390158 230523060 268386493 160321404 326263807 57423343 733209449 371114564 853767724 546700466 647200669 337880464 930111954 830899722 991163006 981739692 989394216 230540998 876021988 554525468 572629466 287369704 609250473 2551969 141587155 61623345 920745233 863927356 994834726 311184169 686108738 618578154 926761111 279085497 665403181 602116728 937834407 657952391 882633098 461618649 655286479 13178347 332503771 96008074 446129005 83599816 447327615 318356590 369364555 336135988 492989381 336121554 657861245 101725831 103162150 97014955 992912642 978970585 980192256 367745306 962972909 322855745 648515513 421928731 719538857 673132601 765041406 11236567 449628272 128403315 681243810 331616678 336218922 311057598 756271715 313822523 793968533 354941290 964683846 653184742 722753810 684500022 913680511 356013675 406138282 258621153 935492843 827662251 941628471 625243136 811064656 519943023 549006812 173628465 768648577 686079164 712653221 653968868 822631214 199370890 461421497 205240746 739225069 125757558 501092856 392088788 993406010 791521252 895273999 734865785 976438613 647574700 738875206 100175181 858005949 432821242 744765774 433509147 913597782 133872476 338554785 55227674 242856718 161615517 960662563 121842974 706514419 440652969 873062269 438830755 601384516 261229461 845196609 247668030 402226953 198661394 536825368 369047722 485968902 136124702 274327876 703589 868644244 598284248 836251654 419808919 699662229 198331423 727388191 636316303 784437484 52606930 99947005 29605984 287655288 120971288 136245952 18524283 96703857 32434610 858533766 54275908 826458757 109331003 605128029 529563568 657542422 491841755 733157395 188201723 298963620 4952310 863474862 405009839 493120539 185853566 931526893 185507525 822073942 344981879 399499700 2775138 463129056 146502462 940595124 758251468 767351943 380465182 476637668 194873376 235367484 58334345 659674937 415024529 854731968 27381152 244516537 19181649 531597066 153598065 185505478 139920640 430056157 298693985 401915469 138809053 775040552 74893221 765855566 603188882 845984820 49903883 376200797 54330353 379538826 37981679 621933547 68156674 896927415 283781506 615217887 491327732 938828864 384131318 937292600 202005140 762591445 673861329 871859666 258556417 942185750 274765546 367980202 174753033 497233919 441040178 767469376 692553972 891848147 279472830 383795799 284694337 991946992 36336445 705696022 38281520 341911741 42128880 444557002 355881275 998923135 662303518 946571264 509919465 568715146 150167761 273432194 269555226 604813432 450193265 841221944 530596660 698059865 642076300 807604869 538069240 929603893 221630446 552934234 199626090 419180564 304998320 631399736 560865074 756150929 673564729 724598759 270513938 738650374 186469814 698194360 151608870 510603578 478322057 767294055 594075023 913088948 239434062 880487008 768492762 810760381 665850340 734438549 309581617 857827237 251558703 777085618 22685351 492438389 4227736 184062920 102620428 578965514 30998741 322103742 195276491 779186395 276943517 868370478 314139859 869296776 131207107 741402136 153388511 805568436 173700416 943274444 118456823 438025880 167946155 763364767 477719441 763139471 253012242 590237815 63415580 302474084 231605060 368396101 89466070 545661724 522622847 576440364 170049189 250575687 164417222 451590247 404210804 674642724 453839501 662451910 159152368 474489193 337747030 669508880 139579329 170390544 140703769 790051401 49508401 993499909 220645494 847895784 605251820 686154813 262564413 856222909 374289114 440577056 270785846 787136353 554732591 707553092 307615464 758823698 537601645 787679811 583149357 690297598 322456192 970283481 40934754 426705303 414627206 687998740 515391999 919283673 727335348 939004279 677977570 701892450 167921757 536887556 381589836 906414285 153726848 681024353 269094097 383257437 117701262 942983282 760664299 922232378 615715907 803234666 730159848 731625665 694728199 940699346 163661326 966883223 48681789 345623546 86091360 237348480 10505328 735255851 668800945 733767082 319513900 589118567 432726707 952324621 610955080 616908088 192070547 984014296 513832189 759201528 478826653 527313477 407709532 899490092 206540433 650521206 143922368 175559751 70222588 333101679 195335604 448316844 400902405 693834904 51741027 607211763 600720208 819327233 787309126 962453169 114506829 698902663 451544768 954018764 545338026 704317802 142113797 246851634 89165290 334703702 248652813 878085393 598058536 855093039 744691097 840634817 287799152 391268038 245235556 884174615 78830726 243388353 192583118 503437101 479717106 706630541 115699898 518379296 426270936 983386364 182353865 309312801 164681195 281112182 267301368 737928423 379326381 659087928 163121694 553664062 218216159 893151647 60921610 206188982 104121927 288426275 268255688 961062372 687796937 717262872 524684541 945048175 520704858 733333182 72361462 951715961 20879511 334179829 198239095 802625735 117228722 896921909 635152590 770558323 83394700 347955779 261009932 545515214 188318980 264277411 187981915 254971297 101117057 183319683 121164420 840289081 345977068 763057481 536070369 791025647 504860039 610915673 318082283 780355340 70800466 582266752 306600232 578993575 356490404 836350487 396800460 467192823 126898505 678539440 637262699 731521376 92097687 833625958 63093190 671107974 340476748 627008796 259096410 497410475 486692108 722349730 402112927 989055981 586027644 636162848 611417483 626506205 565072048 741890670 670844412 817104273 161710714 692351309 136105865 292779168 52919628 214282156 10229530 225386278 5784321 478888664 4411780 206399449 145166206 343660039 146060239 269325810 202661553 264634223 199057476 663538726 231376822 559112663 449727366 723526311 216891416 863346604 127986317 893039667 678450800 873315595 311312856 956376837 160770945 522455234 310160048 389389393 303982544 420949778 285262764 481947214 88292978 718403186 538489017 878496131 421346886 848723535 803088359 917627464 81679758 475999599 406015777 517658919 168302369 268439267 240597920 695291367 3761720 609697124 60303658 580673153 569170515 990275131 211578389 718051406 129306099 588037083 428974977 456819640 10776223 522122347 451572311 632318971 341101407 789113967 166480375 637643369 348382501 809032386 199866534 773115111 390378780 476625000 154484831 782382216 274335891 856066930 116814086 129977134 89045426 722039137 114456792 449891656 90303844 757550509 293221383 877596078 760208903 798297129 60956269 468783825 270017931 497232747 330057760 665629037 382454931 575501546 80788525 771340565 103088007 169147706 102313437 350418998 86921516 956633854 863369171 867394854 479638741 754291207 308982877 496147762 416156881 830395455 675015690 850867488 677190686 767119310 79476945 165174588 109565367 239842777 103457690 692090468 569475480 970470388 605034456 883846541 64864667 600770611 391340397 425039698 365461457 740254603 263547095 756494035 664740333 685978197 107346676 139882371 117938078 226195511 106785426 223558060 129899159 973646121 67146707 474409288 174499443 709231440 633293666 915877775 724052344 822592938 789486660 939483262 556234792 977267157 223948275 437074100 219638583 925016062 422915377 920669039 548741860 851011605 560426812 586533237 32927982 766405990 737783055 834765297 17081462 531304173 103948768 772724838 641129394 869521770 119215898 356702393 307632561 754052147 39762663 515329340 317270264 919561370 639052568 983876276 376439005 871124542 712849004 718969529 149850681 737395695 187195873 557351916 88312063 730913398 729284419 930392231 783666069 942094644 329279103 477067465 438136100 786934123 248757103 928127811 178963670 820402878 430904206 790871137 347908064 849100059 356074619 441578498 440626620 605550729 82302963 197070885 168868707 946079152 653562943 779046339 70410280 571579753 15193626 450476710 111982543 795745395 502489311 827045359 418788055 603009852 423505003 770032448 323910453 367929627 65246689 847637283 592616784 665261053 303416889 326184163 188635414 754584914 500141008 854784685 225146787 695389775 441670768 610603540 108879494 964417395 558276127 619679726 160506184 357163929 218058897 819609596 218207393 478812443 472905261 667124507 109250081 560240602 276598564 463165138 43269970 614864975 578495893 594007784 89711724 362945525 178175929 965234978 400445415 555081607 227869097 524925755 245524742 372371306 182137 29371765 17486994 888724445 45609374 770986516 687666667 941196253 531329431 831136788 544151572 724431451 302975740 780898439 577669050 783773494 374424183 591560260 499870748 792475697 231137194 994153849 36928386 622819798 493297321 624656137 196619257 345987737 210485336 909219693 818022179 869654641 167853205 595653065 256504769 880044240 323357926 783778271 8869783 356161589 310137193 311611779 237178655 793055786 319826018 819271532 94630851 399670374 56075568 838368584 761279861 946596364 603145753 960871295 117730042 666832440 151044296 501751140 273276174 380142154 46911344 975393844 862833228 933681194 493579420 823225455 489768647 668931484 288858340 313815992 234025608 558723807 385655044 635815696 124324594 975563307 676133147 676502897 537720748 730340081 657697540 865032950 470560090 668151091 109013917 726273598 692102675 745426696 742997502 817788761 20701571 151683806 94014256 912968209 688040822 780927197 496145522 729407993 12180321 25794554 18288469 135370058 11086268 375312703 44135039 233675561 52487251 328294696 167618283 882621042 345303453 915240283 669852014 958613107 158143107 954884748 944466427 989887021 230093250 605153826 362076800 660746784 465994263 979772560 343477939 840630297 475422129 833217949 347355954 399528153 290926754 615288280 510793489 827126035 719116746 762880755 365086091 527475204 410932551 526093028 340589203 962538547 528527104 682867680 609110964 642066068 156655655 659226489 27311571 48327011 10386949 462039008 163840942 611236109 388183047 578325843 336668229 683387487 297480664 350491489 76799546 118402494 5644317 677301339 621959350 911900609 433933344 914995517 874774410 924264201 514795775 527091351 134547029 648038761 327488976 707679323 502592648 638008140 495848717 606362023 48719475 649850479 576112073 999420199 172832020 341050737 11122856 191385271 42094231 370891439 351744387 941045035 551143823 748888002 492262861 969189809 444019523 848448657 410009690 541213926 110462194 263953781 194183480 462544065 400920155 521364593 245934811 322402536 175931468 378275792 305641518 801982326 223238135 439661015 74655571 407159764 144769350 869263131 341555621 580087788 160807751 485905683 402236211 971361361 249457132 745831516 586855556 630048942 81492015 768931012 116259936 163502555 60007708 133241484 77686292 787218654 172929795 210097080 108455199 823629949 521691239 872230098 560221554 756995996 649525734 716314999 482033353 862917483 136503508 889963136 419826056 780336801 297209370 422240657 33327392 699100489 158592541 542821739 436040792 688899674 258498057 540255444 417954630 618117848 74304736 128648321 53006571 887293618 718508726 839217418 89303698 916946742 756055202 806482667 28214761 85482972 64947536 257978146 131900065 735078251 494229043 107361811 280560289 224228551 430088667 272749076 732992506 391689727 827640070 630185027 792069633 172544498 669878290 594659190 837298057 269438132 548176055 170464934 804373863 136736618 633281289 239975264 882680776 770856254 855586745 113652799 428578552 273860610 588399221 507996978 817421205 260760201 663236956 303895119 312470770 203067085 834639396 123025873 161857199 104329403 666047652 330502971 837448681 423656497 598469883 147786676 768128695 370595529 952136324 843967945 866691121 272751769 384111633 265992191 784337156 1542033 658052130 431872472 924114300 530256398 623903180 311863456 690664483 586308723 808603097 250577568 698570462 119602970 471444506 218474584 883845099 737197471 775645749 402739943 769965538 181528813 988281277 53238546 635383843 463562644 608043663 332397039 404104614 131161488 349841574 160278212 483618633 260767536 415898647 237452996 333351377 82681754 511211019 396367215 786093130 513877128 791978323 474912746 840307463 414701935 980336372 351863239 684880264 644870688 932962413 623644019 748016500 247826736 675312105 11296477 458171421 113764906 230477214 145126788 817941048 475848011 980242221 224048494 887936390 745032598 912792147 133190389 439355299 176226256 502720522 278660185 301681919 166987187 827353875 319015940 404152170 31006132 454029852 380536784 923184161 828772131 830222711 418117912 501947840 467400532 619496352 60190036 704287739 154502813 826776640 817978004 864028143 855066137 989320580 131425677 866838960 690785994 715250824 453622577 680601000 340817693 396841184 264238340 448430032 195973441 936940766 296355569 924443906 869640151 911523376 138925647 393849794 112999946 145886330 78710075 915109922 623558425 896234423 837283597 881493765 236991741 989792477 552568100 584143375 545613538 832620768 319866138 810887822 168923770 960243824 783662185 806696188 28301831 780568969 101089634 253291371 34398501 839849668 667292716 735056114 600168446 963021404 729840751 938406479 936321395 993869574 373607405 874397934 435123782 443903893 48657580 75842953 41585523 192396210 190404316 406244425 138505834 666850027 19610120 698992409 308959092 969006812 377198716 960708428 331918123 868807846 68313233 184450553 103602275 704223441 294542582 526197681 112431105 428260366 132909498 335096935 186083469 186858841 47570192 577926756 97056596 200274779 107197174 772987657 388605434 972294259 631492360 687366603 114404637 158180987 18890027 328985936 114163361 228636777 95590004 800054884 157033315 173262415 83181433 547984239 121752706 203011274 69780335 959078303 332300602 635792204 168935364 364781826 123588368 837080128 658666938 718655011 20166801 931946593 47173483 393295883 51408880 406776492 282352676 949263821 82044618 770258730 51801836 57215415 42014536 484003364 257998906 867630546 667558264 692497188 688585753 913583068 440196098 576094956 555288124 640079762 273988376 447043642 129518754 163926369 106660298 332213246 54511458 190916653 32406813 489603719 346906182 521290688 247169193 938283296 266668481 941099055 828174072 919743575 108070015 489316082 339932138 634862303 118976945 589144821 519112660 690107930 590152755 780843414 263048706 972242193 321413886 604203410 491856537 918799365 40448996 763119455 372998105 835613690 118452262 247720322 169180152 687070338 467918346 691158399 559459231 837750160 114328117 819481560 222945068 796881261 200207376 915090676 390718465 667909822 79723504 522803477 433296524 763873437 383099070 679780874 570539217 769211828 124135124 553540110 437049329 506565380 57916502 294761790 3653375 299298462 35331591 168598507 168322318 196090270 45084967 358715344 303872765 642642793 259560553 850555533 270298846 435845296 113401958 911860853 342491005 525260302 423940898 845402200 797287426 975195483 233282959 801698187 583972392 606881787 503316378 911328800 365819383 720989905 428664751 663089028 435117998 436896200 190485815 926000251 413132215 460584638 134315757 358421194 288170832 521421906 364897679 581506195 119304887 138251404 93938310 207365571 10072868 286143658 283483302 734321978 334481738 429407275 168649018 875456931 678536120 725122213 310174061 717970044 671143742 811834741 440694545 583176085 300301916 947600365 252830984 929508968 718058798 970132420 913847983 934782455 18751866 904908875 703414742 985343998 358648679 673099662 176647583 470528311 282050740 723452299 430201414 494909765 343836605 787153854 35187080 244381286 227736836 573112528 197466138 630623883 275084042 968253695 574532756 950661674 802324871 942999195 859208071 978732799 538367951 717641475 380980175 701522844 409331166 679405468 228328480 294064865 194793291 604963369 587365761 958873694 444489842 761037681 131312323 811248741 274097889 447998705 246937200 791082214 692783053 718225014 563900857 635567773 446865037 815699583 597937420 686661196 355761464 713278323 450539847 508876872 459948377 871279888 605667997 693303406 631673756 699767812 65109117 402933245 236623223 564009600 532892015 981083136 644713769 672244987 471955237 486128409 266780198 275472935 7724590 122604543 111382415 209676164 79148288 663853201 105749387 714217855 458413469 803849364 61660289 357135045 42997326 340034283 311584043 844075084 59702129 155269912 142774786 649061131 30189478 491760238 132570075 404440800 334513213 779162950 207267321 396738428 358434872 657039319 384929717 440447334 405848116 431335295 154303812 210508205 87423182 793097411 610978483 756760261 27697160 368907867 19143561 238862301 192783355 917806053 295691004 708837205 319032541 690770476 360971527 516210187 494033957 855285963 92724434 549737429 255653860 818178866 524286063 930453465 522117603 775501203 398521375 595657406 112111671 608074634 578248816 607555039 130614514 937315577 695665733 960435346 209400356 246557379 208321066 714505377 180730941 746261462 301716965 818048206 132610077 932249752 277562423 614226133 499003526 942555784 850759184 932889927 239311156 360677659 58538815 426040427 169009802 277612867 87826654 572301148 274227823 877403284 824751691 841690012 383924046 969612587 921949965 948916752 146574748 915322176 186081713 750769023 466685472 495079986 98444182 765111365 558812873 881261862 631271835 786294899 690209648 837508610 619102735 916051503 621326141 829840004 562977220 913976629 336613249 519451819 186924588 664507500 262800073 726782445 69600852 648223854 339199242 919550192 758176281 998786754 810560399 938710655 308302581 990221414 274104267 928515680 168307064 251462111 126123522 784540677 753695365 794040028 303368052 601136557 24069914 60719199 14476314 233238975 187219645 261390637 246869896 661268477 292169815 313898648 26172964 41024728 12383034 318656941 225297685 916794109 772410990 995377475 552036127 614525824 531492234 657726875 426671589 438377521 59040973 864260927 263211781 322641104 26375452 788887899 743037929 857739756 781983024 994796332 556925948 922185738 334760068 792938738 424506947 742342157 222230582 799866365 374836059 712056550 41292462 626421439 111860401 962509799 829600265 960275061 523891049 941309457 266230108 725125790 249223388 719881913 159025350 276725319 26737240 448332388 76473397 384895010 293208345 623717122 619589286 828646911 762075484 903448429 383831847 744194121 246807242 484159575 248156717 869237658 776398719 823752181 540136825 827201533 680786164 978285739 927035188 982077048 782983523 801075677 141767725 649093887 221615767 660107633 57471136 631295431 604886638 647251912 278963352 665428881 545339172 575731406 79351504 554400622 316915897 518063628 310955900 645200427 276195958 802714397 683263553 762110307 46931931 698278012 438347248 761798935 657576897 756071891 507779882 575225901 100893431 648351894 301320175 470941058 61618169 921678114 171241414 831454677 483692440 963644032 415119795 445441233 45101863 751223341 45453426 502301505 244494813 615032767 219232833 282591858 145033497 223902587 101971652 831548956 489063299 538415080 379258080 988108374 203768274 728090069 564830890 815345449 194258375 947272955 55046316 164579410 41268993 69716523 1125691 152629001 11108114 194787769 10473305 466274138 428908808 905229962 852050370 894654832 824319156 901724844 859053617 894976478 138676718 599554880 571509853 972074089 510981865 665171010 409081526 888548605 286847796 710822776 581531493 826980303 763449414 925401955 759815364 963309695 535241973 807891454 607402004 814947173 36654879 425880281 376195134 792984547 344219617 903413874 253507616 879986264 80174196 296610972 23129561 382386573 69950572 534884068 273817162 934127422 27601905 735855876 601256406 735019400 730942556 837516645 46081701 184417581 71184395 378578833 197966179 475834432 282633688 920656664 417861627 945690588 345389672 481688459 56132694 691565734 128469726 921544891 711431263 898051857 555489835 566105677 118586662 832286452 176650111 315569524 301241295 619579599 224715261 958075466 929149337 955720402 212962097 376894918 334936869 391426763 248559305 807795456 460332933 481340993 101958062 502678531 456894313 841176827 482664645 576099546 334120356 900007562 850137877 907489834 38248411 973915570 793305390 971001858 579939520 626523654 133632010 137162467 15114260 37738099 6378255 589579448 402994298 871215290 278010895 606412359 85399636 690492822 620706072 681610025 187110790 786310627 163446843 307106725 234200795 361013300 223122578 767796418 12167401 979509423 369714389 767608268 374578971 542917358 90501889 655317934 179344279 644632531 314463104 978373874 33019712 765584422 678721031 685278602 213074887 965712718 825324240 853335803 217943719 914286945 396987907 897646681 253304937 617450150 525076493 827636204 57723938 178401178 60655087 207001535 131081183 355796655 325815937 673855686 576761149 673624186 370055166 721622362 59512870 175272239 18530053 657851452 524233949 673967772 104357143 118670181 67728449 646562254 473835250 866758286 548739900 992066136 270468953 514850789 412560955 749542642 570681574 574308387 141225213 833895267 825638889 874399529 689146717 931878755 252652440 636333400 403492776 492867231 140030589 158423141 150821861 820987455 766679783 798262120 413349709 921950795 105536084 166170269 41190377 451212143 57520873 459125475 281705552 297086722 25499292 176119578 32773119 122921075 74485530 224899199 142336372 288368942 40377201 783584002 436059701 759553457 212413390 877555285 315846602 646736004 16836843 955159338 111681292 259483630 204166821 554060614 267517510 477521107 391915999 480426386 458757594 808116685 450103293 828485456 196245682 394401421 169270205 510236201 251302356 819212712 35287026 249987381 37879744 699816116 96626163 587819198 331644782 921561074 138774957 795536790 172640675 938178362 542070703 632312520 521225120 737490983 136381677 637612764 549445795 799538330 73118170 259164621 122352481 862920497 163100187 601463635 358561056 755707670 296148350 501388058 282231282 436214205 183920153 413579665 35324260 129218592 77815891 634306578 563811285 620048804 127333494 153223546 63896775 260902153 105710456 978390996 915784187 993640672 120811320 352624487 6291221 332390554 131601223 449642492 173620108 187418992 78956854 727451758 38480146 289670865 120308216 913496323 292106769 555506936 161972336 622561443 82195707 123031254 67669550 473224819 69576937 294113652 99464318 637496644 355065374 617347568 484282715 712102461 367158731 681010287 496686600 859325117 47939027 295637364 53966857 220384519 120710625 278747967 143718992 724339995 213671451 711584748 125319337 901938130 899303749 920887675 718508584 952371027 557781453 693935726 686805118 750204662 419950828 678683180 359087517 435338410 106901943 690867769 650276261 675807241 544821347 802112344 18630192 768210603 221671060 878035578 208770607 416220327 240921506 342904857 269727909 816222562 398951443 543203265 344002959 858795113 854298238 947843940 689399525 843777560 686047185 961300873 909455036 992612461 72269962 175578044 133539733 914969653 827210917 941080636 924831477 958908560 390122180 994655619 834746678 885235789 297548259 602591921 560071358 564759857 560545453 811914143 770839195 771751497 636154899 655313400 113582614 349073630 200777740 207740158 133578425 593979417 410679574 900400501 1024372 63183380 26832433 773193194 666347136 827779088 818457667 905886356 711418771 715257874 44685991 290632050 219080743 404640878 176143691 755380168 536137697 927576467 895787017 917332757 447725092 945132672 615267185 918542237 754962217 850869500 109161737 483403546 428302175 967322105 10651094 827261205 647663573 707282676 260041318 333167942 131743123 491135307 121519864 189977690 94625227 862673374 349138036 663393158 394838492 766797021 572366218 711138368 653416554 848671096 816435838 940273413 583136497 691802938 225245599 657758342 504232032 626745809 313007023 776732158 113955615 870247494 280047031 816216997 40104172 548271768 374767528 923808409 485268740 594210351 539007717 855464908 676174539 937345008 312356739 694863623 643704646 674110093 617394025 712479369 500911065 982790862 402580466 730864329 237165040 408580327 334971874 982390936 787345449 997794575 48113501 205748127 189583935 376398009 178848544 842235989 183688895 621531492 620730312 862608454 392916670 418632055 412021002 774962555 424892006 645024192 244964925 691270360 429021019 998942757 695278245 957053739 58353655 512976930 490452912 987392457 420307355 441198887 203257240 767963709 221409525 836354284 804652816 984024244 542560969 945186437 435998778 854026036 578851155 821683186 216884864 659577853 281522324 708590284 675941530 997316305 966906420 982474719 116058223 897425908 804486712 965498463 676052654 762065620 191750086 885837813 99583013 849811282 699497644 754239501 151221585 985528736 505433747 685659616 239272204 662135006 386559220 582414054 352347213 666769694 450334458 682773112 543392511 907428757 371435032 702092479 507947906 871613346 30489333 77361998 52372996 877727108 53891316 498293343 385098949 882625536 682636887 975532559 422030710 753747034 685599801 994428264 814574438 848728449 688480630 911001177 38112448 716243969 80584043 413657996 119175019 119698026 1012114 117310388 96998134 817013447 81045347 688033119 545960432 852994993 486770786 850125329 684453587 684638020 352705753 879781713 362801403 398627414 221179942 255228628 195298278 856261728 647884922 799029887 450632829 887962677 183798180 216507498 27382466 147232613 51615185 858198342 515338564 825476990 158709680 777510145 599302804 611513923 288268211 400110562 177502560 373583425 342981503 395104916 274063779 679588666 380122585 876452670 617542007 817494968 279314270 870343650 734648346 947625488 1342127 699125600 445562190 518402931 323723549 702325268 355612247 464283742 300886674 377084958 67116898 303884281 136668567 243433217 164372925 899304110 355901574 832996760 792777643 986019751 637561015 752601338 88285734 723962049 493383271 858417017 381246130 865249459 776867786 855936474 134035943 180236337 171737978 783121240 406041767 736145628 333203701 688985413 311486864 777064233 557535634 962458835 385555136 720309946 121982522 536187438 319608267 666328956 222217932 629682222 349265112 693537652 638500425 806589459 475880484 778326717 315677142 808266893 671504580 763513180 141207151 197439534 131355744 528122803 213209682 737114915 76546988 558432640 81173363 977012816 559775955 837310039 797758911 933126254 576534905 612549485 300606640 719547319 436908478 532427830 354516608 686406153 246703965 502821951 117655729 618303013 108610616 415085307 90696323 614062467 509164482 691103561 437756525 705623434 360081805 486792292 237289110 447251242 336078629 854331008 249319307 689247794 646694421 894334873 767827672 812192449 57596162 574351768 166933693 792907403 278760987 322458816 109504096 390703134 296475380 517179666 422403272 984322142 528937835 531473544 118551423 176863551 137389407 695748436 618455215 943754108 282242908 354221675 74630176 866815594 202516859 679923691 19569874 49150136 44175347 338592866 38276132 905726312 183377767 216824597 111367528 769846653 620408800 823545158 242007506 506036054 179195770 973385730 838385259 859389660 703031416 940515763 724950285 789671935 612047340 716571528 74848831 164400380 49155559 749892018 65118508 569755140 27360680 636416793 31978169 475064461 471604610 812756669 277199770 886426136 743421780 813032878 555630520 836201186 582533678 859766409 377598622 658747770 211411827 441311652 149754672 989533399 699782352 727048094 159276513 945436273 665972697 899657343 84201922 402955381 18576063 666470353 481237371 932607790 114386480 557861986 171589022 569150016 70582153 672571846 171771435 930847438 567892973 957049433 174352314 527990193 153578057 687442066 265519094 891169342 620050454 988447742 95092967 719928790 348395249 416556655 412374445 829284633 407994853 567744465 454305618 913681551 2334913 896412667 867522514 953269976 867313865 882043260 117246973 980027141 841403415 854849279 585595523 682591754 519152944 946003242 103744865 535852756 10907923 382585682 102356028 531811402 303108485 996582785 842714460 924354826 11279748 815965145 608719587 796335787 53222775 608998673 551729719 876664704 312539401 656350143 464841441 786804753 711986423 864267049 697588226 968732911 646136736 888732427 423444397 430455882 423866658 957824310 737334121 809752125 133983180 196884550 36494091 36706074 22372252 41057454 12980324 303492366 191061271 371304777 217638051 316113498 248830636 262028115 103952004 161695791 112071417 526654607 313682428 810589141 793968823 892162467 787013342 881476054 561031659 588529106 281715818 888788345 593564224 822714661 768257358 945517220 866139842 997091127 264685889 777560089 635335687 676164024 336230706 634838316 462603060 563887793 86485525 993539811 149699642 156288574 23288773 179162594 80169498 669453313 334048300 650499253 543538609 628879941 304436731 320593758 149787186 224539604 127113652 577506586 158770435 828189036 354100604 609026362 439002890 799952861 631109763 633819607 72951899 590098842 468937956 934591363 476833113 916045877 854127423 882145611 293168742 602971205 389701244 855342340 820509612 820542790 304410468 726864347 66829963 611591294 273332250 459058158 156477858 908799898 130689894 982281408 886187843 963512353 138826048 816486688 489839694 921159951 828544842 922915221 516668114 771951101 78955669 866021587 328514496 420907016 342283828 497407247 57494999 93556292 74003631 379106835 27149131 939806236 90683984 667145089 380851265 873399862 96040375 551872983 392919326 566320854 37286663 475569403 77839000 567885060 100001691 715219954 85401353 491130010 161520213 806137144 444806392 796000551 434322233 697468819 655369025 764984391 87849337 398932096 370951807 670321641 297309061 595533155 142891051 509432361 179112618 487095244 74890925 308366159 142479660 178053037 150723586 276799522 43748935 471308464 120760802 662763348 166872774 320949314 307452440 935813210 801149502 872191655 781420157 959134468 607377868 800600938 679869918 806344575 792097517 980952621 41443590 709238004 143089833 613584475 272723079 573420635 228447633 416533749 296912734 933625894 267299464 753303130 488418730 673057351 156722321 891664515 386047062 843340111 665813070 778485611 22214070 820066402 326399223 926262926 407559378 760819209 310645405 729992890 275405788 887495772 849599020 967151228 827589693 857922067 682876925 764657771 727665685 822662073 409954160 678007416 282666979 434685931 299744300 392740380 257715128 779489872 639282147 703466815 626456755 736722605 159177274 563296901 522533350 827301956 793168616 887748560 813067158 951972648 950043402 993486876 345627456 407140254 312680056 659227910 139422867 621402012 219437022 968263084 268876312 665949335 545628487 919236116 78080689 625426994 229989106 919517798 480987907 585268079 320582757 393711269 125390266 333848646 306709909 897987470 620396991 878831443 192575088 508131040 10428470 266308932 82256507 315787278 106697042 437334270 357107065 896276953 803693006 977427053 848619896 984242676 550477915 633671863 51716316 505096135 55802267 133808812 26769070 571504598 478074061 795637642 419746813 646604589 64013567 211421495 38993723 587986083 508417111 769475809 449939313 547765685 399809713 749224470 417196688 614811531 236957121 765187195 361806845 611082639 295892481 529088508 135644645 619883262 130680049 593494446 16008674 479807089 372427673 648216717 481513099 884376952 734505017 794907879 765554738 776939500 701314354 726384741 68955620 524113287 134766608 810071045 671466076 779646877 295898364 869564441 682363797 955356666 668749422 999915810 654511396 959609547 323461636 759385157 664055279 860808236 45596786 975388579 573012967 760275688 57811010 521172617 88245533 762296898 742647028 999787192 331421768 379347885 371175710 472311276 73109582 978905771 758801295 959290341 259740913 579785685 560308530 829352256 811506105 967045828 230626865 564144912 63211530 733145651 600065938 682680684 151508186 804550410 78296919 964694371 831277536 850122573 579112215 922147619 863871742 992670032 178742837 892684754 161468216 232134094 128490546 177857559 124176182 276263516 142137668 701376168 216513953 666225690 409278520 961308229 295700454 719694943 188288298 628211751 310791342 430217162 274140400 322222359 104342794 336273107 27216259 326807069 118435614 255426942 172348928 758914066 246438323 318970159 113562619 711994086 351074333 590767279 405969275 444831134 429279091 883828129 87119953 190682100 43112262 167108994 3345801 347547317 321187363 354841726 118342906 669488497 564765780 808965292 615009090 782257838 597453399 801587525 669034100 931116034 873584313 970112719 547881057 711478393 233228931 851482188 540970821 669796827 468230280 836866573 570057306 800700156 446788607 740757682 673926794 775742303 95889444 394515575 26233031 308414152 157785418 697282715 162538051 690627145 239804570 980775278 747135872 909617580 648735897 861718622 72287483 214830705 14246435 105637306 82690002 823188650 378414631 771391401 758359963 857802335 663387340 718535222 632166853 804366914 481600165 740003340 211850935 414529861 257194490 510032415 176607820 766889355 335910584 476868112 840653368 740236048 863791046 682785442 985285146 867088249 998099801 141069278 770603972 715804296 793208619 258940627 604149195 348697290 504835965 455513580 538275715 363043895 995231966 482863912 699051737 370793278 521723507 113962376 352246792 2428195 811512040 645017988 966030819 23052234 334200217 254356748 974817558 701606106 815730071 10549718 617862989 587401231 884106225 177667870 635574207 59484397 879933852 60855738 237237436 53036202 519460789 6969427 666837117 93795190 629591287 218839494 502279338 337147548 553213006 103907538 239602015 72742456 560351341 453938805 951411086 429147245 752114523 357316528 916704670 777262020 973159751 729535624 772526516 449321654 476104844 220449991 717349342 253708511 390204725 157643256 841872535 616059355 652492887 573503704 917117738 876277328 899554864 109344421 464949089 210843678 965966219 281520736 421532099 184941882 277870942 73301560 646556507 143223448 710471526 328965675 441730415 391904531 501097765 371949272 505624245 3427128 757313894 208931152 449338039 270951313 574608060 523605702 772352473 336757160 818850395 27283153 503149370 351280120 390538915 215239921 959644805 317846231 332648426 137513115 852984881 489095442 873375073 493140102 777447373 49671585 141806669 80681448 293075019 23018695 36993596 36596154 446413040 29638614 859594673 156576444 903996357 221163946 475258415 274443962 879212628 667123749 830603299 496538813 929718141 356007568 410439924 267909449 885791233 705632518 977914574 628527102 973072264 62720819 748581174 687571437 890376301 698020066 911781765 512188284 542889048 184665053 930552091 237998566 643438086 557916943 927893379 639054573 904535712 488366441 787907596 231928776 958917463 929095573 978885539 76622327 197015957 191563160 826920462 374201645 887497357 828421708 885141392 168707862 777340190 740420069 968958909 740256312 989887322 476358486 849918109 584589070 662332125 122612033 314427915 305856282 825406096 190127507 507348786 212841169 309138051 849703488 431636889 624135815 353121958 507906952 126172425 441672158 180300758 325688293 266242376 820803000 140814028 685794483 261020020 405086189 206209228 681887417 522870573 887924689 847934376 965471453 4873313 475948125 241155664 309233368 288483887 954077294 66601109 647039628 243063381 661113056 627315935 855920931 254354143 409272729 403289210 716201289 598271816 183576560 316475568 194242174 644217915 248960540 927587036 773635323 906627080 288604821 486429147 221526427 673426809 657670374 840199113 445794429 858929496 653224542 971088988 897083031 927123457 214983732 318301804 35619539 74727384 14776274 548933289 387933865 591727041 411667557 936038148 808948012 952901456 430004567 721684337 479779482 539129109 452219523 917194663 56733226 333272776 118129191 394887154 198521376 232390294 152000633 318571936 197381475 477324465 436730350 940379928 320141408 365281133 47486575 561633131 252386333 715599808 290199723 703291145 372403673 650656694 437549870 887224703 585288216 961110624 123573470 202733072 29250005 745601617 91763427 790737119 217192060 764319717 753449085 902094670 49657859 802857320 408337543 787379851 279412242 453986041 379631719 737739312 2115683 867271564 796475921 972739558 590728967 622477217 145333841 338259261 52854535 907387053 881957212 999876054 573341261 664541362 176516646 530608959 182708583 672837733 421621792 842895007 814167699 940798937 524419067 687283592 305348114 382105926 285268389 745805965 233737214 768336956 355163362 471954569 310403098 406349653 271947024 291388054 58857361 575953188 320483546 391668716 61854981 917783469 808511632 973697394 497581640 906466984 169267340 138189450 778125249 488557199 578850624 802995801 227228770 863564086 323667749 434711901 382487934 885761297 64446745 427674683 367026053 495391002 123321028 552827610 101357289 543352722 256618724 974759787 128911609 360592280 119539425 726820208 106121076 690346823 346309480 139397698 501038656 231247394 548343694 478001608 207744326 908836281 292611681 97982087
