183209
753097565 614040287 810381176 194702664 618954040 31964098 751165002 338903918 787935725 66070534 545017482 98765101 287669785 105836425 705927421 223565703 845826678 131232939 571268884 545068356 867554079 279782613 342161382 33272030 63704801 43031176 62111266 26318079 886837999 821121403 954290602 542948089 562017778 18228933 564978404 532163092 770358308 447606644 550113363 301062421 402539047 127897637 527778756 421410571 442227958 75630303 746972879 239455486 345217024 294699833 609155102 447302341 801629535 265159400 498697386 213142424 624827995 138166915 393132292 122245517 167709183 113842899 347088890 73234607 244048859 96614028 796647406 405727320 558940496 276059669 849527091 521770498 945954671 737794693 748964230 267086880 282930280 207067554 944437038 405777 678818216 262525429 644153581 108076398 319086020 248399528 280496876 112315764 454683351 44486554 381416917 346542254 770725766 156479167 224164669 18253848 469027020 295964336 649283226 341860157 604927343 159807916 307219211 241335139 720919006 426583304 682488044 156966402 839311289 26121533 369479841 60980792 943165603 589315447 886001497 796631204 830082791 718733937 960760190 795924735 923674301 395936048 818648871 423941450 613177348 150813408 321605882 19455866 643024696 232993744 687728800 349791924 841782260 58728949 680144965 26331812 390781294 102589581 405854831 160188019 397291177 328773986 460566157 52708463 675301738 466641911 857828905 699394730 867901580 444109532 990415333 688421102 848164625 323838234 459930951 438216975 979216720 573958704 709077762 621784001 755059497 265236966 618619157 177252654 781816919 519490260 800762406 557721963 578077027 179393234 422723519 401193524 971735067 369047375 571227014 60004665 881574098 477498826 822238742 622583296 973486651 606892015 655299898 213645759 476304199 277835737 901125250 200066955 223596435 43500742 687658961 585144696 862692470 383273723 807418769 389162683 918309401 148260754 515252404 446707246 816993514 696951947 954882482 553123041 591417224 241355776 945728891 620182086 759401766 739828211 935555531 426513674 523304344 61845298 469820836 432649 662932203 613022856 754837438 684136638 948298229 475266019 563226814 162890267 628911011 216854855 352153615 87367968 409297286 170038158 581242086 306820344 803556950 297538301 972964333 170064731 378357025 132002738 245046909 139844263 193459371 184968630 510768679 394877451 715031012 482203803 995165235 982410856 989279699 347330787 576728493 290936463 665193146 309865500 657990454 537937738 694533651 11614240 959001833 937954275 955064715 589861204 745634528 247254743 507395245 54491320 927812296 165849186 343255730 121530839 689787569 94094462 857272005 396899850 963174836 598170581 828860912 772121140 932279333 810623918 879400487 216817024 731588359 29829447 255564773 212595933 998678769 932009121 943214667 156402039 625050402 348231980 674365155 473332175 852616706 449748667 602699861 139853347 507756353 201148549 491966565 373567056 551943741 498898572 525034239 425171166 743632618 75116575 787007358 421625500 711448158 641016568 929980502 584247248 773265157 107042488 966621163 235502766 998420653 281032334 689179161 425360778 637246167 496464059 551202311 49335996 890157207 726159757 859867213 647698001 795399779 408372666 813826645 158479385 333386595 242440041 263117898 19498578 712901554 499316847 501669318 497601529 632901940 553834427 916504792 382630110 669950764 3469214 74175181 63006935 882562543 201611861 475846764 134247262 196849250 59263466 390852130 279074598 905088470 840703825 935054547 867420307 878870052 711814618 883106889 91575082 440903974 155070524 624081320 555946656 782910889 423731406 570475000 570022359 906141935 201420455 355905222 123461084 942665657 865271721 949792210 782877214 936831060 892199481 936876951 936504173 952221081 131496864 858659380 286493960 343786088 137051427 384474465 118382700 768149901 483888802 638287222 422421911 425280098 237753580 957640550 472818316 693996439 426105690 650161603 449370997 683854334 64450924 466185744 413764731 680446750 586429588 684331720 484340509 944754794 710767284 762381413 366625226 368093620 152310966 273632776 211633133 534309953 327159596 659714667 104055474 460109798 35231271 354841122 30891380 736335925 112207706 218341641 139429701 930862915 378629353 741315936 181315166 879993786 761852911 879851722 315445174 409433226 391136292 851525648 514270304 556802837 261821225 530289381 86725684 484693064 179299823 304952321 63555907 520534665 255731673 322192123 156054223 729741468 722827148 878920615 764672279 775806060 260764904 574350895 192571340 384130891 346844790 929139948 357746048 375799161 200647278 405187793 106771402 785365871 476564716 870861650 284717586 304135675 97913083 495705049 311714796 730929285 237218364 790698083 265967792 393695177 11789969 903766289 388473519 533242589 431744897 902446867 232334256 332457116 275481526 801886685 349907861 448680235 324482668 754872377 440388057 642391990 359100178 637463651 595741949 983523132 566157237 965821241 718090771 793549309 334238191 826630511 797014315 985274897 457337597 870695584 493165298 626153140 213368577 738585491 557320112 615754372 86361656 270202956 262751009 454537048 13748882 26920990 939967 500525953 200210721 967605111 48266265 404368557 121211921 367487038 39019186 701544257 583402217 727998675 544467289 770579245 270252302 561369968 267483430 302579478 236395232 564174976 300508051 604128827 394985378 866154771 585582209 826514074 131060999 479803742 24303498 329952001 126399480 280646510 260248331 385007930 326776314 818610886 516775120 817233645 632597444 778715822 620910921 811188374 261944345 566576754 215457584 915257232 669477904 864719222 591255660 778902003 83961527 753544696 609562531 859838567 38130324 539403899 29582997 900545910 329327800 815894693 96013959 806540510 447830163 736361168 140105605 243101230 190719090 613862382 565058858 968170725 228725871 560965709 499123326 588537307 269810360 967670716 185125607 252731636 215713365 767183683 646553026 847951010 839609037 989131403 599947805 925696401 836180393 903810204 169624720 876213569 249948277 858743551 838804014 945789184 862918736 961455117 117243465 586284281 58262342 770854227 584221958 865994288 675393051 752139600 106839440 986023391 745815874 760596306 572468873 980096204 308356935 896453694 251474136 530670694 108647220 771494983 112849659 473329601 352387776 522875084 277698983 964695413 83526363 165099176 140964723 845940960 462942588 686559423 450383394 581895348 526324177 723438909 27031907 863765408 461009357 730494893 415106156 600113725 466329173 815898885 68788789 759261130 161640799 307233695 83093342 131764906 69004776 147334260 107984944 720504242 295972462 530501440 383949954 767559297 200351679 915968959 271554960 779671207 363925387 829842837 692242319 813377067 362691735 758178090 598516545 940723838 165678188 572729509 109860116 118063923 88852924 211853678 87998083 645418470 354424947 632075910 404816835 823539473 523083666 596650848 485581599 686351337 655013493 699788348 136993548 448067881 369366284 527432407 277157016 496742147 104936031 980077674 534835292 643084808 376128128 499854202 490653446 694833844 669077924 743897063 410087708 697873400 60681355 167056197 36505470 89174269 34568820 827637235 450250367 795095531 588211451 995612383 453468831 583255469 511382797 620162907 235480509 641636400 280230800 876116577 773430852 920491864 191463703 767865640 551718754 746136871 735452579 799717307 742485451 773904351 370962177 406977404 351418679 779344034 126087836 809369986 758733108 876502143 735650168 736497153 251698951 804928763 800460391 990873191 729963884 885832166 746510061 921995247 449015276 715726682 368155782 708683965 408613223 501105109 419839888 810949461 391453335 563811548 73751409 783881006 170285456 773869242 726615320 958668363 68119444 754911886 656375259 699634935 333105226 930764812 729167808 783212881 243532693 442099019 238947487 334402336 137439246 213024704 14181278 813577201 385342129 590324015 129399133 478858277 111099923 587941218 368024253 899523000 129436132 557290254 457220529 808247934 146385385 268113500 68096731 673580919 527356407 531518289 181879574 986598908 201337923 586484797 545752013 917377067 420065727 631490257 571935782 851737550 158686530 287368685 209590705 362907457 143486593 990301596 103719225 561147566 84006386 768073612 225842471 644319446 184867688 881851120 483585657 866417455 649926485 663870564 113624636 289523041 197945992 588429076 196442858 427546650 353591904 937607328 666091544 923361933 447226854 592539571 561808687 726632991 632011182 827287581 312623376 355782567 221184452 485557653 463766205 918444843 487733242 525598269 436142560 637352857 5067495 851958517 484744784 863076847 100672199 455629520 56750099 222829797 14803421 721144146 42362804 565139140 424193484 723561427 609501414 752276277 385876593 730384998 638957347 821830551 649822413 834769523 663508003 814035663 195834037 970545573 59842292 149947061 1610837 31965976 4046314 891785048 562533819 834061564 518195456 939619784 104686388 952390607 910722510 960421186 12459137 647768031 283664369 674477065 390559460 502870269 50724027 860783458 568159959 595233494 235429607 971450392 525301445 908804531 281058692 347557511 101898785 691366024 296055462 956146135 276212231 866189135 743918870 804000410 390642843 723323970 16780983 144119054 130697192 476448571 75853995 333056389 109795340 982557535 9313683 973420058 724329152 966551949 73845778 381205450 178411467 539587374 471325081 909182033 635563483 671498091 67916333 985781552 427742224 529492383 483381013 612113690 595406113 736973584 429625398 993924013 242435806 987521436 174425536 501409430 346141032 902097456 862088354 988521955 975789853 977289141 28007311 908931121 364584575 680797826 491040086 627682468 413000824 756541816 80578096 703683903 498746627 703454774 550610898 854506978 539029938 675832696 236158221 934885061 663802126 838108441 544230352 760541384 657918819 693932822 249633058 839081371 278853928 590382813 348886110 737477071 338368125 861651197 672238213 976619563 972903182 986264797 208690937 968406294 632942534 905800791 150239177 179310290 127069531 484593426 39056656 251158146 93858225 727118306 5956119 975217973 736701224 867530682 138959384 730445453 51833307 862492131 38465950 908215968 49244739 998406985 785427061 879701343 169510415 988874922 187255231 627890656 128706296 422890556 174932933 763225509 292366390 544634701 320245886 566128347 544126692 704728010 629166618 804563531 212450913 516526015 408064818 950908987 117709943 744572512 699202574 726241655 392811003 838136317 229290709 716079297 444667567 546761474 134051423 660609593 630508717 856217907 696967646 900922593 187293587 455925207 194095628 241009532 15830595 732197494 655700036 800628531 666165103 814656345 400846447 715491695 118572716 453206498 78577354 704106846 157032934 667264227 555486525 764263137 569652206 666225645 363454608 533799946 11061200 220259823 97541034 909956011 543082355 987300034 280032594 334970674 217171222 551759557 203380462 410153573 138461464 314979791 169697087 176523287 93908360 248649858 180795138 446877672 328767618 963316288 509387234 902608032 587291961 643549042 488754403 696087485 461241922 533276329 291879072 382785096 45271205 862706229 777748155 853265628 77417288 786881056 432082100 599014952 61816340 696797757 54626034 825832116 321222250 978038671 750656667 752890642 161497928 251532820 1673099 716254161 347001685 640016423 250418519 535685066 108939165 146267962 73839293 765846399 225742113 654429109 595112201 851493802 349510192 370147942 26600800 842350857 697015774 742140710 541691312 920415394 94290101 725257487 441123319 729762258 693469424 766601743 744803635 951969063 875520292 998699500 498978074 505043388 436376413 960666099 143918537 540102538 45943657 223447520 11618705 714395032 528904058 829065165 116745480 315494288 272968199 920885500 43486217 277677039 211811011 793952589 371209607 918310653 620405684 856584472 631716421 645032944 86558398 636200188 302950956 445532257 88791264 338558784 280657223 390379596 193634751 340481573 152753635 691817503 25524531 716051560 553288111 608849509 54877624 340061476 52559120 94922510 40082288 706466356 56059217 960551822 611291112 961132858 752405219 771920269 601076751 723204996 302445233 558249275 540051932 976302218 397954636 705635626 485858362 951372122 332012554 641104671 18774413 390702194 64178887 936054503 608685663 973126213 387892611 814809339 507079030 750539111 44832138 91060397 69701887 686009729 262496988 600519973 100879471 700798142 48528540 149990843 112726963 332980292 172852034 839616720 254367837 495410314 356803603 878600192 97928708 790086366 13872933 200433954 189136042 371958523 252481515 625893425 492253102 502066537 499510949 865023962 309445433 758002957 332455618 845773441 4331536 873667545 44990521 732814831 125501254 808533382 350096891 975216659 323404234 899328913 493081150 842323987 314894542 885552728 381024184 736950296 569370997 846634660 137560270 876195982 516264663 916859833 1879832 3451197 2049344 409064742 166066540 366830867 470170 957072878 530002559 679642477 257693794 837420698 593251883 894621793 767299057 895590766 159250729 413899460 37378355 531301076 527516166 860783495 367978605 814577530 799056688 995303194 752461541 782279802 723786045 870870489 708735678 920938232 190815398 466413245 5924044 57213934 44979105 198907913 74641472 546287120 240081521 911108930 417475414 491320200 461849536 723502873 537134494 725274075 180286763 739654077 504869502 622918427 92688687 199825170 44192110 678401344 242315476 808681843 229559674 569817848 397727 533252804 36910752 681038226 265648624 320167968 153752820 280743476 67532164 75837866 74334328 980487711 327047935 485786290 89652418 723815727 489457616 724184763 491607655 936983554 798346381 955745347 823820314 997381932 674215135 986604155 106569142 297882883 89889210 611976082 98610562 452743853 406416466 481047712 211620134 297652320 911786 271075350 69523031 153974121 122149735 576517453 44659701 371537211 147055198 374221511 266875487 347658273 20977573 280850934 101569993 987902275 613358503 834786926 93729273 807842725 368881686 887089893 802757979 955105879 675314664 816519057 306097714 888175009 597137537 743486019 113027830 355019080 257133087 520648337 19164001 323045360 233435354 695759028 201662054 863451691 42600446 567094109 466282929 982089448 221775152 905357044 740197279 985732428 457923879 956869261 400993433 890560020 222635935 896901938 427319995 535188644 24290391 594165064 279004854 951561856 742694064 886926551 122872206 759567181 77916748 216000221 93991284 550230782 377010627 766430326 102413516 626005997 88258188 325650350 101271514 366209265 312440256 998727160 190328846 962184964 382880270 463279537 267962037 796400402 293367539 402091505 95635189 124289192 62422076 105105571 47249979 743800987 315102529 514500062 115606683 898802182 621194133 957059358 892011178 929775438 589206990 863329819 747138904 866993131 401781770 707655523 470861741 706010022 278302297 994112332 229877174 423444330 33222153 683024011 21405411 403490598 193054854 433506972 50617827 979536942 856703961 890915619 248949371 619688475 500866708 874633584 566373714 838579421 594473032 713307649 563246523 896373723 617736242 635823121 510721248 844105551 353432397 609776489 238558907 598946381 72983934 855006246 783721445 887173965 351045806 521984416 405201746 918684772 293046212 326358880 120517821 160577013 123507428 862001001 311897237 583258381 109609136 204208726 32514829 109676429 106748830 911227034 297331419 507154419 40559237 688950816 529488107 574593985 223250272 715247211 125898726 993895315 930809318 958569895 629471181 957044090 730266719 834599582 631054373 737346495 133727581 848123858 774217748 948098168 320265529 521804056 132099811 901900965 69878742 75965512 53786708 965526480 679610864 684773497 106546537 431976260 358215754 913658227 462747996 508475705 481406713 820551226 766540587 816596386 462278607 984869584 882716030 990293537 332401052 637541374 154969825 533651850 349221465 579086273 573324843 873117414 62982727 878374814 114281004 565686889 146305753 469008044 196314363 317707153 42291418 703146101 130761485 547312769 287120086 624529213 587043670 743661604 109469713 467871671 304638887 912419989 282183426 720452556 298408412 905631038 793760982 824280584 314115638 805611970 647358744 724598509 112558307 497767429 453677448 883316397 790190180 913870873 176055624 374934686 266967375 621356543 388680409 984003341 704651360 758385179 550956107 765510625 128129587 183603524 123026920 915639231 556662745 649565559 617783396 923511904 544644628 617669154 238362336 593601520 74099967 472861601 41729314 638008707 459480595 520614650 47313955 956487906 706897822 899069442 9267349 129937197 88712463 636316461 397593073 841395279 558677551 924891705 8020945 213656365 172778874 904467573 323731738 443411115 10629702 282355155 54933808 914761062 473455180 956179731 604303292 622545658 455893247 585911054 569885299 720671262 132590620 486019773 220582674 482257955 282533182 789624095 517071943 593046035 572001024 780714076 11801675 764727760 648786807 838447228 815688450 987455770 8916343 775394586 584668977 954507018 672950154 818855429 735732113 796399110 374503087 439726307 227573352 255118244 240930122 736376231 367158163 818101085 421954465 600799804 568281903 601075221 186916066 912691620 177066966 737849892 392657528 926325233 357808743 809774682 240780263 479441826 356639883 560304043 67600296 91853309 37625260 417480416 54362287 116237813 115361883 271360462 163604890 891005465 41291491 448951606 181398819 745171051 645545457 655754396 209683911 860938304 558492620 581926212 22243714 310471621 62266247 80000095 30682324 82181134 10531253 447658731 24716299 263476986 259580342 496990472 431045533 515266068 246642942 795836686 8955369 591112572 500080479 786563377 759496446 975844498 310879310 548985286 87872292 980041165 338978599 936102478 717281622 986474172 712288617 886591798 684838397 803773030 379421327 672615688 147986001 229362861 24025166 537691699 176231882 579162063 374455172 569960664 193185147 597197642 246922590 293315867 177840094 334211426 214379755 470324940 33650273 570751480 523292556 811701204 714948442 853685011 772008873 791425070 547566579 882306864 873279770 898883732 218530472 798947967 503736902 923040618 750967560 829374113 105832717 412202395 71170139 431772970 101938863 161558851 91609387 115405926 77146044 247591728 182024250 696474789 72565032 917401854 510444222 786091120 681225802 895372589 782664537 848783054 360174362 552292272 239395892 488254026 322686226 825245023 452676586 714318562 69168357 432568737 66462864 956690461 560541896 605555822 32227838 356550626 255378145 554583279 367933057 583267721 582085731 881112030 87184654 825001133 695326375 925964898 579051589 882184729 290507688 947861182 191988813 734644485 232270629 692451001 10265176 188381364 183717692 315922059 208831963 855226212 205606315 826289492 448783669 751646377 179356759 460568991 69068125 593848271 273080407 875507856 501980689 642232446 282158541 971531085 283347350 922406976 51422124 905253432 208971158 715769992 602148016 954299591 326911179 508231019 472912721 662540056 366700237 421436570 233695454 304698850 152487031 733613379 42560601 322644216 49514467 916949920 560680721 807799696 293831052 895109321 206429069 625183382 143172236 763119360 220730655 457602942 60670351 742766308 101470369 869329601 395617951 498655212 493061607 984993409 439293117 872106472 548915968 613821758 432405861 487150421 155038748 525800998 16061521 251985418 122526928 169317862 65948295 581999283 173711920 995238861 778780131 956915801 526519493 703720142 255192966 394622097 120655902 334211538 229023842 977712841 567856507 988272459 640615518 993560588 845283016 925651164 446432725 595292152 232305973 254612205 184793205 955251788 498298316 957762038 345380226 681756452 626288665 744927671 147138895 938940461 390196101 440301194 179811771 550097930 548906227 769473369 651010955 694868605 428943519 549404465 368883209 781572406 157435781 934208129 910722065 986072417 210808795 614081169 608067838 941372738 198732189 507914030 425224649 897408968 219427668 231168243 100297969 463329173 98439953 321280343 292495450 820216431 266780283 832963550 719079853 962609947 314221476 607962339 544799578 569134389 124523412 587655894 325815263 868427774 595373604 878446350 298061264 926820143 538713112 984378441 524580098 551343157 1536888 709418083 167830449 353751562 247523352 941615554 929054984 986520267 908767757 970400529 295451542 339309931 306344681 470300094 370224836 976209780 26137649 560358600 346470311 649353320 365862696 860966902 281312975 438014802 140046573 597764587 529669307 977646257 654522904 877352958 134175635 354403759 21638096 422415984 332105016 950293745 527049253 530810957 446140486 841582522 668649520 922828904 56553948 483769365 312316598 899696279 860786638 964181624 784320596 964802446 583032992 675528677 346186204 853062678 725000183 808032543 500926160 713038547 434356283 781547727 464169957 613066789 328036882 938657313 222085421 438151278 136989648 217263958 155628075 424433916 358175388 370401261 367722678 969432068 116682400 946380290 701768059 822016914 270318366 342364878 171936387 530798138 463764473 611312428 344158477 367777774 229509496 468050669 238465611 252701479 53988683 442333468 26701058 844660079 363988473 883931582 507066634 622919420 123287192 990628768 127548967 370265590 338097419 610872155 7617724 147814184 96627 417761088 85260391 285059876 81069701 805938726 622577858 839342581 561696731 910184084 534108992 747895316 354713319 598097316 46187041 318548854 261911940 921829604 188693072 550951599 24067801 599120286 411560694 600132681 126223804 851430341 607572299 641938080 510983968 609239014 92246020 835277868 767384089 777252302 153798311 881864172 101333200 397293933 49804640 264342631 17122966 538851310 366530575 831961221 605681906 803976191 550841304 586696956 138786785 595843372 494595741 778835289 621425539 890666045 95798951 805230323 684553345 898520959 177841726 922187374 645841365 903304936 91419542 209398365 41897781 794663030 258354926 944501623 410897072 896793867 457194175 897937099 209822945 483242175 245098799 902779254 524317257 890113139 331699591 484033687 1814764 642947819 611333573 730412534 4913696 869453940 333789610 815595414 290058437 447574921 430648853 746403739 729117022 803905832 195206125 969584826 71167418 922208145 61708168 449338301 365244817 847624894 399896862 570740437 113803787 358812676 247515329 371401462 246335362 780746866 425249897 870128149 637969251 961332240 300635208 556673221 57902309 212629568 67939755 736169084 531352200 655490202 250094980 275314745 255960112 994588941 348395304 744686591 433630189 580185965 31790591 307688714 85844155 618807120 460891140 929694419 27059380 194298948 152034444 556919098 393117835 586205289 418717852 932628422 836410665 879985922 222192568 856080931 513036495 545366357 150303550 821871384 109612327 815357014 647831078 815374424 259768932 666564903 97854943 205324995 26643415 432923397 10797259 251563324 11109032 272641959 209780561 878646860 499888241 879671090 706263765 892061852 478979269 646216455 408396600 610257356 558923428 738456731 378850384 642392625 370076785 689684007 10950198 114636418 5377094 961778227 59125 723205393 79223616 510376683 235022362 363799182 197172792 445831610 42691195 104174495 20855927 82775480 41873646 899635532 336240583 987643244 819373811 842800542 160258301 741375238 507592406 704263824 394700617 791546654 53980759 152997562 13922887 25357792 12264158 28774077 13846999 268768306 236797609 902829714 824095198 952287968 733421831 964754143 438275444 710949551 323143187 720263518 222811377 597847879 591702205 920525113 177783169 638442903 7597479 113198282 969258 644117188 391666857 562569472 378680808 868706438 186007517 645379692 527151686 982595787 170604356 576050380 19886070 27918584 7884433 382749627 294284370 891738698 565741056 920583797 834765171 978445079 199812391 286177024 261892191 752328999 438652040 922468435 815668487 944594031 37989834 223025019 22773378 326624470 210639792 920869192 537269655 610522673 188037041 356474462 246336464 463440192 294428420 480383189 38685198 318900531 192927102 220298667 120966499 800638979 513493629 979853273 126499449 146144944 10682824 534059361 44342000 257101857 155863706 658061684 287330243 734338923 478220234 683044500 241911623 655613623 253076711 387925599 81971940 892477223 871355017 978025678 66843176 489074898 85601916 819649618 530527177 803930954 149916496 314765279 87519452 829651519 436921667 905463098 786928839 877988692 143156827 503745665 380440163 409534036 273398341 947787531 891360102 929584216 600209779 675628279 511926565 984007082 649096449 840776602 238140971 650004435 458008706 767943511 261800368 578658742 171517573 846476896 820967613 874225512 497611111 783293689 688116964 708703988 363711714 464644365 34964997 117830014 90653922 294436541 204640515 430816333 205648625 313177785 18706286 652178806 445658114 676251999 503311861 784796831 473452221 617864841 219126480 798209543 783040548 831335629 219034088 771130297 149965859 922835411 161974041 397540859 61329916 977966661 82711132 209289276 157424173 373695921 25069361 457145230 140908508 371839228 14342477 463725476 37354741 789286316 447417595 968843505 604218147 631873611 221971109 984214381 140878031 869308357 268297055 542594716 32132558 603251614 517136990 857643256 530803182 795701797 546367665 936035902 918905876 920150997 213430012 679604102 140601770 578405412 141151363 710410187 676324380 732457104 246325680 395464079 205673453 530866849 170742100 522847731 78316607 937137401 114484450 136952211 33335052 601416809 295096665 607450836 187156761 743413344 525173958 982816396 577690751 837921490 186446243 213409607 172176270 541147859 368094957 696785559 486529053 956063751 528130155 705397659 320500313 752018594 328081492 763852038 428732420 967503700 284825817 433243816 64623016 239229291 19222807 863645622 335838788 956391132 689899883 758417174 732945342 774478468 304836919 949293172 901678934 999970611 460143638 718641019 82367299 792382785 325681627 712692685 445886349 499881721 94707070 567221830 346662319 348902713 319235068 842292545 475601382 647913516 98131574 488762407 48084535 182964655 71529413 831488718 630288314 977271521 216791242 223582558 159889341 486246553 276981198 904505465 70264638 245740363 124361121 382374123 248111474 329987912 40753370 453093174 281538513 705722473 404718142 965805718 29588297 991298351 602378610 951970700 517865459 906150486 488651412 926633126 811744619 931194552 291704084 511305652 25376119 998305300 271247260 668287905 246168027 757485831 311069967 778628107 564778935 742105159 510095040 801800126 436249626 760672767 15764770 284492227 94482114 915017283 855920691 880244542 685850438 897436666 208589502 212579302 35113273 925581158 505623384 772225975 743586415 755058891 282530740 394044248 86082324 346726675 193502215 348263404 75050473 323132344 247630718 735917238 480821935 752667846 724918232 814618957 258631275 789863837 226184264 748100393 377444727 777518973 671086874 708644234 420566948 444313920 15403095 804215076 1292468 352270619 99056099 719134256 219003272 382851509 136811757 310883312 254541636 386835179 49885089 675473585 553918065 594362946 255537117 372389173 127634677 637317791 591392387 711631748 139657874 729574422 147756409 880689500 301135295 679367111 431301664 848101079 345546189 750558098 206215071 544280163 331542806 573436466 517829593 887572886 392615648 977881741 118372366 638774311 603416176 763094304 682279849 940700546 508251483 568091870 478263685 889230484 871733467 876067255 60876861 469811732 465944613 847189309 256745130 327456694 311227300 854104737 478974508 492542980 492080617 847598088 656249764 767369359 128929701 180314029 24693129 965507097 526295044 726191195 353247325 684033520 416541648 520199395 362700634 406320593 165864179 990456384 806471797 916800801 328640776 612247850 290914958 365273936 95370109 926428153 813013986 985180186 256733207 386490485 214498933 289923743 257381801 826976567 153166325 833505020 519046834 637490032 164547892 513589568 197680072 430394161 119341320 892116852 556688552 598794568 163312457 647490648 248102058 483568258 317993001 717680433 338968135 566990221 551728952 737112705 514866092 553019354 490973952 499936083 372919285 536530254 292133505 551512859 65072892 987510177 403146173 754192320 392429564 991006964 979820338 989802371 835837398 865681496 213621706 651618150 340008790 645392302 187903950 706583437 196205594 626508596 181161602 877580378 170785883 291563422 276785355 631393106 47883772 537251236 265101578 464180213 205524783 989253356 831412437 854409521 385642637 676231697 424955937 472375629 417657012 959390572 20506715 333805839 124833 536499976 309759629 441270824 398463989 847972072 637751896 671438673 242356618 658428073 516312721 537938909 395681520 848173465 246854020 447031100 64486156 321057880 223501265 600324402 321523125 628624678 43687197 819166957 163112077 977453830 845975349 888372831 813492442 955285652 141069007 286668192 243126631 948241039 309201442 665309974 120841009 640383049 93346689 431044902 109054154 835212392 609759982 936971539 480862873 492038177 364911915 881902693 567950464 892497888 169894928 404745264 280159925 871852386 772356505 978461897 583379472 754605308 82474854 969536544 94049577 889073298 546607627 972850958 205047860 349444665 90973767 909388880 696774355 968365701 605416126 670779555 192691907 761028570 568665853 953478018 228021289 755956187 134253228 957667950 272591472 585449109 182230364 954570972 739855295 964722776 300977261 393909915 135004362 851911785 599041040 725178386 14796655 383619411 40535480 91281596 48772637 851487543 752831393 978539025 870618560 965449232 885218004 990276533 812166708 872245649 286832298 438632491 291777655 539123531 319544746 370193956 57267970 849547632 801754137 965394852 508661514 514152011 296059989 753096410 734481825 898166330 665044170 701938004 500950021 779054015 442800 831442873 170440921 974741335 909765205 995516371 426390397 800583206 564664686 652694564 478576815 623058173 576006760 939221369 607832965 841801976 656091205 734522168 23545586 734621959 83814388 308791360 71705945 95412660 16499890 655466072 80808214 739112156 291319670 972889291 656037730 766299125 474955609 751216622 420360505 849443543 279651153 962003489 65333985 456828389 133304530 614048132 433562036 638028566 551814510 658254417 38752232 667500876 250938059 274099231 7945561 680653394 199691810 844024861 683363292 951365529 630970395 826212856 824853480 837138706 41592656 420134299 145810937 539959962 171587733 767703373 574067365 703540443 395103089 930865845 61699827 667683173 611106248 772246687 48757012 323879067 115746770 942942228 294149593 479284514 42851786 354236930 333822247 743590670 669190092 700265373 660142007 718475017 287211474 515584514 164557198 926804957 531275430 822834761 680337079 687423326 253913691 650201686 497486648 907742603 115843638 405801460 125039420 766226539 527219072 754060950 752535704 879399342 833106852 945048377 335047896 980357152 820463199 966122667 555828276 685505703 414944781 503623442 258192749 446064324 392038925 980990768 90115874 182341036 68690755 117791482 37434335 318260833 122067883 650946974 125853021 275482269 185700731 494761828 421765223 741696048 176205976 742123740 602120755 864444355 140202575 502727184 379352238 605743849 147074847 197692942 36088822 122757542 82848352 99082740 56220925 163802879 19390645 666368718 76646911 305510339 247948719 588996433 518657825 584593056 577053635 775364256 720761473 822688299 128942014 273543226 213397620 815522756 243699513 834476266 233784030 605878561 423413092 795479836 639975992 865675726 226900623 530255112 87573106 748098425 592995553 819955607 83092596 268893157 170369734 502301496 10162617 526153210 518051492 662642089 436136162 558558041 61313694 653012425 101387531 954449649 771361690 978648896 843371533 900967561 669385370 707497202 129181914 824480848 202264264 969541231 126722310 764113789 334116255 925637051 506560815 634429019 535070968 771679093 336996205 989606889 578096759 646498433 57859777 781822028 755876708 907470144 861326533 964024130 303006545 902088170 486293679 558437203 392881326 509212839 291914304 853962675 374565110 922930186 298536803 978193312 789340181 992407466 433477527 449332718 315972645 669803791 393367217 662006384 540662210 811931768 562567692 999200702 464664978 903960775 524705127 755726471 259869232 908182916 834071714 998683973 711373464 973177527 476803442 493519380 314552387 587632303 162033299 935976287 679026388 740522569 665636224 741508618 381249774 828243067 235042889 912093118 540553722 601947735 101970776 192894034 63715782 946583542 908130314 954714974 720238571 991677723 164615637 865117337 407069933 826480295 82538429 598968657 212975516 305055396 230297273 283124252 249833262 271718680 35679514 498493668 141544330 900631949 656115276 823142887 330437505 776865404 561338179 846317427 19514615 97945386 54170802 890768079 599086150 621724617 564809062 737381858 574305312 929160819 463632016 992410638 952517069 991564773 686647228 986750083 71400270 829651985 179006331 278500412 64722762 151787641 138629078 311582758 122423900 178351756 132258193 557058045 365346920 670563765 510032499 903499672 129610183 452728407 345443070 443862712 416692489 600779418 83217033 865361544 275380022 732734964 384083975 743910574 440994552 555429678 208179031 490232238 10862971 414128713 374294078 623313692 598464647 978225140 205035739 989290317 582342743 845932787 353592361 613170562 112057977 543280666 500071898 688601856 178959755 353350034 152687600 791045618 631492733 917198504 819362782 860811821 465629732 516415893 236937717 257023909 244551558 836378848 673686325 721127255 444571186 960434937 765209835 769363695 84528793 431822525 241768035 270521956 221267505 659363134 17095895 826308528 107677665 808599246 43029968 305567418 46851834 915644529 819127443 880456793 172671637 775858301 357187568 827875461 333399192 769403887 387545983 610784177 388032176 743110611 616911384 838796086 514066841 668394608 60468000 944796418 291489504 508198492 195035069 215723519 92754630 695721424 268946311 661613474 495291748 538437681 434486466 633042153 87168054 390791865 337283516 918461153 465008698 874648133 813737242 819233926 385501845 548439926 174149467 925145114 21578640 587655854 509367149 655581846 16875396 619170494 462857916 801029486 706979550 963836280 779358392 909361129 635075718 909172370 907451607 949054043 115424294 880712281 673913099 990838104 33941762 626793843 323973208 634475823 286050280 682130750 95413905 918946927 515209188 598242074 322530820 873075647 545333025 875212612 132564019 344187154 257413457 364411055 46635716 415987607 60418795 862812823 585993163 992063348 343881505 563363309 481212173 889068490 403339209 872329335 170600108 316978426 7942940 981130034 239611523 927944669 565375876 776755220 334848476 452001071 118579525 825305184 786405742 873264385 333761674 797001771 319724990 351263057 320946341 556786139 446789866 754330748 578194334 984154244 271136457 917094721 318128721 419018918 43587339 521230552 215846350 581031273 480891281 594323654 490770984 865665427 721836549 807675298 62643373 740148778 197028060 467983220 135496225 540330833 420345766 768479842 629750110 920732523 501826277 607670618 32576773 941193503 238057668 716746870 599560209 644629486 154351988 503857257 280871520 357934216 253185753 259608523 117561907 559721722 10801956 830068040 324957303 880501388 663652157 734227086 217474074 547011552 62133032 936623361 611735442 740588809 629786070 805235257 365803850 756829250 100091007 733149201 724303463 815461607 180393013 568843760 456354988 884512583 333632436 894072909 709782367 852565328 232654371 448109269 412989340 458786387 349045517 513230948 251504063 902178386 70224832 164792593 44696716 248983292 226087302 984312036 91889001 298993911 30491395 823456956 759189728 793093142 772695715 985145441 472929927 915722470 724462118 940949729 492050312 668114663 394086829 451219485 235178283 850398639 572136596 817359427 439771761 474352492 57828470 907005149 343842809 863313452 593364671 814434915 720883214 723979400 245272198 767889644 340962250 775340364 489633643 862570637 733467375 789436691 24506948 280962914 246461950 646999445 406223599 824457543 29150746 197129837 43724018 267588106 249394656 798902163 564488543 703506478 423092359 729122922 211493054 542734940 257293720 990814971 276377199 302393916 64609679 648303495 526461887 548690445 83599850 260988717 41131782 526878801 454167030 942516762 338141931 372274931 464543 365718225 255080924 619309892 562388492 996056104 391516366 541818748 48949847 981272376 781998502 992154867 480161784 601746320 560001928 657402327 87585701 340150016 133303345 215849004 203176335 823967217 391264652 643973840 349860905 472526514 40727299 436619300 308600664 575172953 156736231 583704921 231802603 264845109 234757465 239916363 169631424 687409604 532281917 717386246 169367003 767474291 432406364 912340268 901901383 931999747 734268199 980618557 343087683 602441200 235021413 625666782 228520952 627011194 592454808 921421927 257925629 384746754 229872424 529947466 236846115 704772657 135768703 658229012 462403881 578075230 37559671 249057990 222710895 940479855 926523899 970396032 733255705 878304065 514683463 703625732 30774126 153201211 86778072 914810012 820558382 832613307 570719453 849235700 127699011 213028679 97715394 990710775 350539218 403526470 19738286 373599507 77300882 226846960 144835462 749344155 739371063 915472124 140513237 442314708 340589493 698601599 20009147 126625134 126569163 385138293 21794117 372361750 20715059 326900064 55512880 896993122 881735570 906579921 598858787 913737582 860000883 963725474 439371431 991233120 146962119 342589663 100915221 174761593 88667309 541156294 422165506 722992572 639580327 940922524 161248447 458318994 359533552 744969830 225626804 584513478 365842601 528244763 456429002 841526281 538419368 614588558 227261554 356093283 89606986 228172113 107372411 829824210 656787032 725706157 456653514 953358278 650871232 803474280 656310075 744042288 162064881 806421882 572362460 706010845 660943626 690731318 282421293 570062193 244674739 696024981 147211053 148344750 115145783 656058682 313960434 609174251 433856957 480809794 469001755 485185834 376878785 665355279 163637224 312401779 64247829 492584282 120363461 214787748 76662460 544151297 386526325 473139858 458262258 829388468 740757936 933991367 498791330 506345338 60681651 529900569 462617582 640628568 481488939 913714661 907175189 992486289 925497142 988640384 509029838 900574235 741119751 995071125 462847280 676212522 492113544 689997391 34774509 609549568 185571622 624014507 6606753 204651647 140935317 416632406 392964217 679797625 302044839 823172678 304319660 304646031 10660412 545996721 240013968 314298812 78480324 638182731 154591486 216033498 209589215 643814010 233390613 502927649 441329757 731786461 470855007 811913301 105674808 526983994 249383897 267732079 235332689 478659028 297922995 925845084 862372502 954935920 550652065 944523194 499149851 628024913 362128887 840566916 278015621 712443254 660686010 840600838 710316414 788120969 546740022 633774086 287011274 290790610 144937086 382169903 244932040 407241410 345815976 566544435 4807756 243021483 71360720 196108512 76243499 480953442 198728021 625626205 340549069 545470775 421700085 744400203 408941873 572153904 179931964 412206078 258928752 444235531 412392817 658596571 328096541 481914768 260651381 825372921 293193666 659910192 171971022 650877058 641185112 773089590 525343934 775141300 112689051 753327561 86635490 877395538 292185819 533358420 352315898 728645509 451571331 689100740 593023353 714965948 585167313 618929060 66265233 668608493 471623140 667129390 600758088 760792974 582178894 817087972 79244932 309903658 307307514 778004418 692766883 744637013 431108334 601299561 331004388 876615444 148286189 259992826 11986987 603900390 127479782 336437070 202567140 702043849 286902803 504146609 387730974 641378086 176143477 675781930 665947298 922733174 765232348 983220592 427009182 996419473 724282288 856687105 676384168 941153366 648190657 765239933 612633710 999583394 542320412 835405452 455525887 651823453 304316086 487816943 21504488 266992614 65680432 817176404 416835463 622979872 107423467 955239994 474570968 914957733 69045724 199468336 3383650 95221558 82906005 159810651 129631582 236597668 26147633 145950996 7123000 43374917 33175204 862743981 774419642 902589023 784586344 847406635 220888052 667442771 432684830 474648892 47624323 765809263 274098545 840831554 70334461 172700289 121416660 651946666 152908395 262763418 199452158 794422624 644092290 920646977 461055102 952405605 334896902 392402918 385887089 820119971 350087088 808163175 661473754 746902953 437720903 441767473 223641456 900413308 409084247 617190458 63441277 126774399 87029941 410487147 397542238 464461102 385143543 538004481 34191221 661893398 47529401 537023051 326326163 830289294 654536371 958878524 675763410 743135102 59244221 910312276 649598321 935205476 834163059 976505538 941103889 983304830 35008511 992116602 167239383 558712737 58210170 686313667 131665193 347994054 306129777 385155773 101468131 400157064 78130195 317787200 184547275 798876239 760700002 936296980 893862561 908718385 440679614 935548595 150359750 736071068 678627940 974419350 737901370 823457250 207577882 835001725 688307552 754171162 52101441 117418148 66814105 765141008 354785419 956252708 278782757 399393785 102861053 715007477 224231225 382931930 336253003 488022539 206481060 786820491 623592043 874273394 659345132 851754624 281332314 881329495 251993716 939266421 123577087 656618419 184334851 810109427 707387594 890791235 838538242 866872699 370221389 558455645 120578647 393651080 177283550 210809698 120496276 230229852 84453506 200007394 133386413 707020803 335513143 355459662 264906971 889929866 555439448 813535861 44230656 603084056 131374944 968651324 755136581 927018145 106568062 419652622 390375651 676883836 615657244 641021976 608073303 946233084 866376423 906775520 351075971 504695483 472299123 756255649 662913680 931870868 220127974 543961721 118187438 265986680 122111148 327982462 266009653 325085229 175288852 669358583 77218788 319516627 27538761 609850612 140042846 518950773 14721770 140435793 8447559 79818953 48698314 809104052 231852379 991730125 398590683 416564283 153699993 695407920 476342567 920903398 823119518 928085540 470019965 968053818 211178318 733306760 597308235 969745726 719383680 967475237 925625762 990604381 496215226 901759176 559449749 769208825 89176424 238850101 167341705 623645754 416985332 803440852 378670611 482603117 389931781 982351694 926218263 954968301 811071175 823560087 717510492 739914059 293905280 532918121 365536112 870765200 806660180 921064367 23314467 678698953 601815882 677934648 457809681 793975876 31042326 513147830 153213070 481644734 35667578 363578113 271958097 529173126 227119042 469722507 188524204 503718244 331067874 379132028 366358187 517616539 430309651 738841100 504040739 874526092 106012762 994763787 68360772 446521217 142719572 338718824 103874696 785782900 352465406 887980953 294629776 531962171 240702716 513053277 253181503 657057953 524331912 881735331 846553894 945206571 764374712 826425492 10094093 216520974 215153480 834412160 248738404 818528309 584064655 864392404 384615819 727252843 180143160 508542619 235565255 238334643 90401442 312136654 279304177 825795151 624321334 740283989 662482928 999808748 233114638 528488963 319146918 393310836 304261139 474054156 207469145 295235739 40542398 561158124 481096338 674259647 288875793 726437974 169560918 376946347 6091284 264136538 21621092 732649746 633150858 992559106 616535166 750454134 480268343 737973590 727569227 861739244 166587736 611662482 516021866 734130522 44812107 871052704 195732204 253106486 119016888 797748567 37713030 388454924 361596623 767396543 703846526 721789430 591053361 744037010 60031035 311921981 60454014 419972637 276506472 986013105 135847216 996841255 706682605 807342632 273128644 410568677 6693312 878449882 536249275 585269536 420765812 587090115 40474217 712766935 357121011 800451963 100882644 203027648 112345405 409023297 333211008 703287703 600091468 939680438 690775218 797391221 21438945 500521030 43682483 585814359 149313485 492185387 485016387 762374096 214541085 580674623 4126929 839672589 316426332 835459376 822259156 843265267 732932431 919544578 620125077 649047022 128871576 676489974 95251567 627288289 118358396 458601474 96743367 129657952 57376592 184038416 69331047 623952524 381935606 436107817 132928313 464483912 435342063 941114430 882265772 994944558 877867927 897270689 778511138 975410971 878866482 902881949 572751192 659374905 638861011 886155914 222863719 519938149 108162505 320228260 23125224 911243832 413620498 785237823 244968370 498605702 341245552 408990794 177037276 553292107 232438851 659014780 242636834 495535247 317015190 946467896 913423946 989275525 462333624 629650600 236527381 680068481 118130961 198390177 6617090 331416635 255625915 267912587 25094784 591645530 345148034 459276542 121448219 244572377 8580491 710605080 36040228 573809380 285859340 400607078 28203616 664303674 640239821 757562769 530864232 918178129 292040354 933470789 94565208 510355606 335360083 354115380 292133787 470944528 408936444 785030996 500443179 931688888 461238160 622469805 285487634 650275369 317169136 441358395 429323522 811265955 776702670 836793763 531700905 922214392 664396102 761635457 282226788 453951263 401082711 755972332 463159969 535299754 421569754 870894710 555242991 726699533 533169962 834375105 166186602 868866582 507537470 764016378 498366475 613983341 144547218 369487760 5688403 991525634 274256310 487299826 250571747 526770991 349149742 452087531 324125934 743948055 688563155 726089930 401186449 860646097 181782973 678501400 164716797 528208104 240208167 780987440 387851026 897501713 368813482 984248230 564596617 714505693 633861218 702084141 503991563 825382858 241203442 699308961 417865704 486680453 117479911 616486334 309387090 802013064 378653128 676508247 196471518 378718098 178217050 889576063 151744439 249079807 141380834 948059431 491143738 837013113 186870580 942530018 83494843 908023500 520108706 616156536 18348843 163507712 64877367 914397572 422858338 467728042 234018278 449278334 282413492 547067286 333151723 444659969 124159116 686134103 403430910 749935536 617818636 875562255 54253491 91888300 68840848 644856145 305506012 802088930 777405931 824086771 57248372 323346244 94377775 795989192 165334427 712138726 84284889 238603668 170529423 685901115 87794407 579076938 447938798 494592654 231277045 663920005 155172550 674395044 536434533 815846355 440931312 765912487 683818602 948656881 289393336 955853779 797647566 832080356 77515127 565314674 405589010 739538001 220403310 582339833 208559630 474485574 225822675 660969809 70358399 652639713 566511259 900764175 834439741 835261227 358762218 425956656 273978088 803865528 423425680 832881740 372016593 893809347 37953469 319148094 55464932 480688276 315296052 423220075 268269433 584345543 376670770 554620872 185914809 550398422 201444528 659615076 633888542 956567129 487823225 978622845 446395063 526642558 506543440 516340283 58994462 956842976 650513361 760644890 315194704 931765595 928871976 957285550 386082808 451931479 338267870 820355511 481553145 962117930 259407140 893668968 152138476 404194792 298942007 604666532 119976606 191828764 60238929 908574176 231330775 798867937 160837453 330376046 55427479 676524395 504520392 855465240 742749602 951996103 165424908 872859930 85281207 351083589 59215091 631469951 165986316 926647353 286699941 827226653 360860458 706805099 377644053 617032412 48620946 540941451 66182362 611998637 140095314 504845908 318625073 750593780 186726646 692021406 602880803 982294211 572615467 940933677 192005792 980575008 322852943 354321179 311860941 436142682 252535125 400100891 309956683 518315145 318009419 793331731 592913676 812644041 688966341 800516872 751706049 842795229 127095130 759889283 478798110 956671523 608427384 942776017 736807323 928177192 435455566 639697975 115661435 346452488 8232688 594651001 303486152 600371575 518122711 728836836 632584473 915254507 788019526 967761229 497489284 672044867 39198956 105858458 46710213 590133668 130708770 877453146 676464511 999034485 983322015 985589692 232289893 511936322 364448261 725084510 631919253 941965407 372710458 802254132 335314412 772657131 629705678 822271984 649301817 854253334 840811184 969351058 475999018 921885113 529768950 961134691 447497580 959873809 750516230 933617390 771337399 891955159 284681574 352399303 126927476 848134463 402453302 765158756 498716273 723594940 46300532 69383827 13036518 243866459 140691689 533313501 291521918 372204484 337151950 991331052 52125441 222459205 87160655 642484254 249851887 735687319 147445272 200528084 112374908 960726707 731099999 886547792 34130978 101106883 6750986 209998248 197969460 739646476 1394355 899881296 230980636 340057670 246840589 700780962 352599716 712275630 409408646 867129077 803755347 879498601 300808784 779481613 535042456 706596864 495066326 703655218 30000964 70803014 5156386 429803710 207366543 785053808 122614477 560506982 199075978 773868482 759885301 922963137 77144834 621004768 541996645 596550275 472622098 877081507 656408247 740503652 343139478 622267052 213539062 827516418 707534806 792624533 551574105 905124983 638694249 969137920 514840052 619748740 525335232 978599310 123271286 129456954 66204702 705007418 127551072 345929888 259397578 731808308 300653887 644586407 380462834 443913911 405427947 971186822 25943558 832420003 763024903 771572737 500570333 840158563 323568861 779137530 178933385 978802658 804344281 982500621 896352533 957425486 926674732 942926699 811222069 961290874 574551090 612612544 466141477 826927375 721847090 856357089 492639481 870951543 501714653 993284245 888582727 996786915 948603539 949645326 708324999 761433252 583951984 709526519 620992930 687498347 611787201 721804406 429808408 519454647 397527538 892170956 308865822 442796866 421212646 485694721 18711491 581698593 49276013 965650702 634290550 735412048 119356195 437422006 376428532 525572553 63189697 980291872 468430585 823824610 527942128 665808132 437083466 671275301 562102619 886233952 551014163 579250551 107664066 883161935 217452437 831753212 292679934 605456442 266796938 893960682 617594385 942966395 825411841 857040994 589144891 719631184 523812222 727954547 202765401 230912592 97839697 636586021 86147556 804457172 449316124 880722817 463414202 579167180 516828857 599658125 15604672 30769525 1574997 267496700 156103017 898526952 263295226 876820184 460044639 992194591 713141827 755823192 179984746 896704999 569522004 813448731 116579705 516255577 487752760 896828995 40934927 700079208 143656707 910042153 241896729 602620570 456825627 800927881 781891533 969259083 876232290 888006429 72548350 886529386 162228287 481391851 242832730 328942042 52249206 319389477 304507592 970964414 323296325 410777390 125490391 426571538 414372828 882690143 702832962 896619053 702009133 912198263 721590259 960335626 553810987 851372290 736010020 989785012 369582693 398597321 123890979 900601679 335634961 602841129 42871039 121846043 87957547 188390159 35823336 394015677 247214896 262807511 104995663 297378715 121418958 804537142 375646410 482970259 318014182 912722542 233350447 426467483 396268920 926606049 339173032 657257559 62556357 456295349 106344416 227063063 148242850 445809612 238282644 821775629 694768347 786700814 533936859 864267672 714626694 880437882 154601119 800145109 776816938 821214253 154338315 377841899 79777388 359669326 29791979 172813217 40120477 442259274 260924055 523085071 222295972 251725898 59505725 945810513 832799076 960710940 866780807 992527772 743905052 762570303 572026890 954268019 119274229 262558562 233335774 623397433 560256325 654715965 604445913 927987629 374711412 588872623 97024494 925398568 568022047 854051349 180187250 314956940 113848140 764774109 585071086 672327761 541997111 727614862 54531310 781125098 734251865 873016889 440142760 543022404 344480144 980677567 350811998 769593884 26941565 771056629 146745317 497974463 331868941 775688790 389878440 831478659 825348328 992075670 741512557 958088553 58445569 693819683 332563541 581572095 251546667 396784970 195469334 492968114 438378056 536802778 42615813 458345838 353945701 604920770 365680460 895416371 665061713 815751538 570104002 737226879 258248032 573147164 464969797 724502382 570250383 816991844 755966901 799260782 446922122 985603657 648832348 758269107 79866729 787757402 244318177 853593983 826803191 878371840 546127808 853618526 303564564 599058583 113015647 695618975 462283026 514420470 424273368 752031766 645305547 750456356 185714763 271876553 75793149 403235106 360250632 991451197 335480283 929683579 816044933 822323031 573045503 937541894 148404237 993859818 822275410 898748121 828794027 876925580 574982019 783221703 239894878 706915389 294113525 536807819 518859229 980032649 408621942 649246271 645536083 893910904 747533332 766615009 716109411 973888046 77735309 487537284 79953164 975130890 928715009 987943782 515775963 787202715 102043127 208803041 46012303 697605133 117447891 924932347 561859457 777239661 305455028 909311356 714791704 904484235 97148689 169806678 9192152 120192424 19180880 536581861 444930572 646634561 39759688 198392147 159316069 229394995 48492897 200604975 22286750 275032884 255814890 448081345 246582319 465699986 48086623 534897920 194176698 415193328 330642909 990942914 951951412 976878257 758880329 934315285 625181534 919434859 474493102 924309258 40480397 417520570 54354927 643086060 89126428 193800238 10372927 187728916 1066125 128647549 126638495 828896752 193494907 874349284 120874598 677768291 135390091 251967596 218929190 755621804 94722715 216219112 210416839 922867951 814907268 839310996 713056602 733663432 413820253 748172184 15129191 637689592 230841338 773853806 317153251 471887839 307772447 928917240 877880390 934583809 246096110 325390005 184708605 402086602 378493552 719235263 315297575 725149241 124986334 291718366 121236976 574102999 155413832 485826696 240477720 452327243 124770815 812670550 678709964 843986273 567375929 804858477 703714996 979574025 312203251 476233399 135018972 950708895 700603439 957549958 607659187 819209072 437958956 993395505 886866738 915935523 554896626 760516174 688521950 850903661 225888633 638024551 348642968 937324557 921009071 954903333 532175069 570675092 325318196 786977612 382476513 737647588 42208056 810907744 376633145 984602431 313121871 366418996 18435739 319539750 259058866 579654782 107068580 361086998 97190731 995508552 230315171 521701814 408346565 715850384 360889826 657010900 311750243 744610703 367983413 948579167 931040568 954954733 766894999 958589109 422523956 659425880 566214145 701630391 603025184 611228495 136756582 203176436 46922146 519491638 471757746 636389250 491618016 507594815 256745845 330521151 227127154 571743726 522490759 544007264 530165337 913031572 912222116 922912894 857369038 989561014 219172813 650021126 30507181 989312516 708797791 794435438 82500359 733920534 419046502 918443470 437869344 914652360 359886578 749367973 164101955 269972063 133002611 584152259 22354991 917452715 447743511 495223412 157315489 318551605 35835367 659605723 261792716 514651447 104450589 144743661 127485728 196065111 151403272 690724011 473191058 668133902 57719207 689029328 298685400 854390178 220719434 956622718 710546893 800796770 777759203 839226039 68772521 177761890 65118704 788084439 753733031 816249102 20161253 77905217 20935239 289817613 264011188 326465654 18173727 374888762 358266862 447238821 140948146 891855160 507731462 995822662 659884132 823343605 517161211 660176053 251558471 602946620 115963738 623835111 597443089 730328791 384821603 956655721 888066562 990052442 97598351 922334292 801462405 805263386 130715474 266834731 72230117 817712859 704379840 928913450 214152192 502035386 428586753 943859595 383381864 640665266 309427497 989155626 524004390 549939193 549272302 699390473 291021561 686893998 250755834 604383916 261397868 657832239 482493012 505259098 436366505 872949182 604031309 621878240 514271501 755735344 1631449 426998238 215774926 900015039 753194985 808824211 804779839 959928238 778359487 921114086 245162734 409453255 187906297 222617378 11031079 824356333 85474132 818279601 113100364 797993717 671976756 906885292 884314969 898648585 125723896 150803147 61932067 723706307 621444846 752761417 203386750 675022784 291595176 583514068 378686771 382045322 137470625 196347299 106576561 258025231 143177202 307211122 22235124 623458494 423464274 566365553 52540284 847280227 187114626 983092163 358216697 977800904 131422233 632393738 534350947 638993512 157301267 790527001 387993346 842088027 403486076 727279686 166895227 748683219 217405150 596462986 184439495 209152215 115575639 876938668 104528146 447151641 72631234 929106960 914234242 940491693 129087540 728039551 143895095 926611521 409610542 452901389 412935382 509291804 485484184 898813024 518748727 580293116 319213574 560324859 80450729 268187343 162805946 776405377 701814887 853157231 803348042 901368224 711799751 963270706 624950017 643141777 264734421 415601863 274542453 621634740 560587602 965478466 157791108 706382177 674398413 709988847 123535577 298096385 49041073 463562264 440944953 703197176 141530353 957940174 288651007 839182991 728188239 847109921 646080450 888278485 823335737 962081599 159423182 547028450 277017273 693584117 630089277 824428239 4817790 461593851 165343269 927231559 578860449 733537374 71499973 174345223 130246154 954131959 40557341 251968354 14874172 152769976 80160748 180387935 74092266 519212261 101769805 435003542 181088096 349108304 309216507 793024866 136655218 889927765 219605307 539407349 315280627 759648177 578137330 952215845 826128595 991493748 712053786 957945150 844866877 847037932 815491488 936293630 401262864 871898578 54684797 120594644 67577779 568336410 178626412 699599203 182835586 842206308 407049535 768717016 83169583 736584187 545853424 682223524 593303537 635761774 272902701 595465415 101544086 602642198 46737182 504163237 452402621 658157418 291166600 443028608 311478798 509761648 413026305 564536641 455473502 819140153 762350807 792370357 732023073 849584522 138786577 788223017 85088300 964123595 525879004 896476108 822380702 893362097 883649086 911497728 119744393 717097647 157745242 321511256 208576270 592751584 177435884 426280604 381417429 957303408 31455364 399124265 233227019 703819640 442280622 804026931 151897286 903575732 729959924 993900919 531559398 688154160 179812765 412771360 284854440 974460017 14237406 818727774 814765507 999395642 777051046 919359610 710517233 763219798 743239483 983913578 510565673 543957467 300599646 980398621 949186607 998075559 249719941 307794364 142840811 546167220 510328497 803203673 256362698 509023703 173092871 301664612 289968251 405205259 106007584 534032069 155016749 967062802 627941090 825082939 316597071 706124298 578190140 839723797 356831046 559932756 262454999 522167888 266459774 623591850 323300933 966293173 298144965 910348851 897947119 945044108 670484187 700074465 208857488 916265023 672782720 987387330 951405625 994216109 261852919 506989834 2188818 709844279 497070564 743168477 30528145 234777230 87744578 804090171 259475959 809905884 438267878 898844636 330277373 568236304 322875347 571638860 82097804 481083752 48901633 196375354 67087077 466215923 340060624 563349932 353604219 639501210 351950965 799225035 524649340 587661654 268393940 821885864 420322090 849344995 600098924 757031581 535314162 860264881 536162673 643622480 116166132 513198655 254242537 345649490 266995873 553023132 440240769 544484224 238076412 333919425 224981321 498090536 419017654 694869762 295231230 321467373 313058564 332818305 250362836 251518575 60942553 890599580 284466768 294054189 16800199 112572659 44737508 833991365 333204109 799766264 361947847 990288485 909727903 970824376 663757269 678529473 572369380 623200753 379267097 922639782 451167072 913987009 599077343 861938301 418407115 720644529 139358732 681186170 277469068 636790257 336485183 911103760 413862601 957618522 457113062 925911958 531036730 862324670 264355261 275141626 131400422 969280968 195855362 632500567 17168870 430197660 113014828 852272577 412275159 622118613 138687222 824700022 515674279 966776579 875496433 923068388 559387767 997866495 327985286 449023881 185046085 398898848 303881169 980536549 431683179 950091859 160184214 570479850 376895826 969742915 214192295 773573804 489596583 543235120 357949736 786900306 351534416 481912711 464892913 715040059 48099678 348023784 225832291 266779186 167278835 231347088 214076183 712617561 271949966 854500240 275015001 688403920 292745885 504264496 38348455 596212175 511132714 651786967 396912769 604768092 252871808 772638721 398253746 593711944 150650201 526181539 120950080 784148278 670895019 918919539 597054392 904793911 536066321 689289571 589138942 686270702 310433470 621204390 27125722 634231549 493953213 765429530 677216527 771215010 231606030 965235502 572849649 958093227 274909910 955466263 944613160 954675258 678746685 686783590 680200478 984747812 182957888 959103292 566089349 772157854 86907110 207711688 6531568 988777845 798363097 938637082 772830269 960620810 236988651 878360020 472230785 739009352 36846800 977126299 205220284 851430800 274536306 732614411 366441085 826494577 378624437 722360107 626501230 947434616 455407661 871483502 212555238 666396693 485435197 543794439 51069011 538467760 366078981 390795316 55286720 648363289 642258369 687682384 333031085 635255971 230232069 627954681 196791305 276045637 96653711 350097196 278673453 393518433 334742357 739607003 703766674 829276651 417678396 584387343 331133363 484881153 381366639 767039831 564363527 894027180 726824743 946447227 690129606 726221275 579774689 966547237 156523786 646178141 272007849 900922316 441891079 449054343 183266132 289012638 59909831 749581217 413051728 640801669 614126276 621657793 162763702 872512465 71926162 560649137 541803643 693481133 172596593 642831287 540298752 840383280 512008706 569023478 85900222 130963465 81106437 257293411 247703742 892827041 611130586 713478261 307765510 354882561 254552156 301434086 245406547 395063141 203850996 984383570 377830224 744904604 382230988 580138600 166524533 894568711 816947877 866263015 149714812 907541863 301987215 493883222 361985182 609011444 237958647 655884735 498462653 796463174 104526636 917205128 668375346 815546402 586362798 619433994 321524729 755383159 507571833 720338495 292868803 355987128 10397318 840168465 311668204 952894577 338121314 577933056 232469908 417528364 415682273 661189327 126811335 145013905 64390539 832747104 88715840 177874716 170191960 607354053 440647714 719804097 115434451 558928192 441820041 943732238 245126245 800165423 524024769 702678685 79277336 395477593 65245257 731538110 597310984 792457982 470388972 671076956 445070566 775061406 685074439 719548631 270573332 598360408 544472806 912396209 265335020 623335849 83271553 533754550 148956182 952669243 867899511 954338252 297708086 971349982 529282705 858872870 845204782 936840804 262249482 779580402 124175939 365589250 175091190 972499638 45866235 254910228 126268093 926572332 280858389 399121354 254658703 624681633 60219369 583297248 112751258 319189300 109132746 149614883 65607538 591982016 203958103 776200211 1856854 907175487 88757671 623534493 220166852 865973008 193917831 600366403 595267578 712045821 536025253 727764121 603114450 964613384 908284870 986118216 9547974 600153249 531509686 570804840 368801284 938601519 41115825 105635242 5169434 638339089 116073204 735253052 234446560 559338332 334842872 622663532 541989277 742909276 621543298 899424475 857984560 965407017 698896258 864515683 253722915 634141691 62846898 84539510 49091319 998755190 152554389 213855935 112682881 349275199 232215700 820509221 286266039 557838043 540525759 649291009 646651690 658769943 587951843 647467058 281224202 989382669 903929097 921064046 728090632 902939064 650522005 748152207 594504180 931389256 456527921 500018792 239454554 746176568 714733873 862645928 731939332 826900680 573494714 909423370 854966552 864876840 242457830 831289870 337420 344983902 9045485 975970157 564837521 773047592 446243488 579538892 254437111 839464615 523834993 649779861 508870541 910028251 811693074 946693886 120205536 403127681 155185813 808665254 478293540 668649335 28794484 514516281 410743184 825412517 306570837 945030445 614245467 970912325 708787106 970075632 610070603 675865584 483796130 783869171 495947638 826862705 112351649 731799191 3220634 576335910 266651825 702795392 557148464 813453185 15420166 428569759 338241573 675302692 396668480 530218256 206467173 253039764 126284810 354698652 337376502 836955971 430690683 812314503 751029523 858193044 171246940 860456367 809503361 966707835 759858778 832649886 446883792 752050226 644585293 693843371 535666428 703739026 92231340 361874305 307490421 786683194 451898746 453474890 383836791 384686806 88183895 464680250 375418132 398170163 368311262 939966271 554484925 912407404 242341510 348706055 268819434 766625133 73125522 263464560 238056164 855164871 336291527 400933833 243587231 604037530 26954749 782583438 345130347 853252865 73915053 839052444 333188925 798490794 465162880 741245962 653272806 776550811 774667485 847353095 542193087 827253469 442541350 533119817 43694947 514687005 265149110 473915412 307083066 319975753 285953471 291364252 130276007 907616295 260417750 643818961 413811172 525337132 308162749 825604839 616969433 921175572 339588466 594665306 594353047 626176994 542150837 772869143 746306625 932136926 453612924 821485819 433133847 684068044 313243915 533696139 135641810 913208174 204463588 472348180 59770096 233638818 107809831 185841019 1030290 60917678 52779380 481727365 42163956 868985162 548680368 858431466 298515079 341189442 79335189 764355642 670393438 928492394 117249624 617123829 560148311 954900190 673421282 862240913 686862511 830173499 161719650 864065138 649650366 867463816 290245612 604089428 211352059 895537028 444388138 755673135 630585554 645232915 434649704 485023629 409382983 538465923 150331563 794456464 284493230 747902044 389410652 860402344 718860590 954158144 653056222 727871439 643286135 915326025 587409713 645056635 52905039 847815091 317557866 870655575 346004119 968955203 793311418 821652137 218552776 857566384 454176220 665884652 232463508 854777940 19025258 675560580 324672221 546951409 427676769 562492022 199407009 953451461 582447032 902958967 463088706 475192887 99846355 491479770 33038546 488241754 253088399 259853893 40005575 538182393 232057881 731015661 353327300 437739701 46680266 120613934 62258652 554730813 156132166 473226797 104996334 420848292 155881070 336264645 26109441 685191005 636486386 791589213 12499548 718739062 480183161 704634858 306012314 686351038 371811626 392398484 252159890 817656642 553911128 726320493 689598530 748839094 515902269 715977927 480950645 810070088 780052826 808890623 636858504 729836622 644012820 742860249 488431862 705182846 634076245 943071337 725484950 816769880 616915142 784591018 310141576 327291685 34917961 566345089 263518188 827945892 586142040 968972753 419267238 870728623 59962805 820567339 67100618 90870272 34552583 223838860 134526904 213749577 28578870 219142149 32999985 417239398 319063923 432896310 197697223 726641112 697715881 948200150 638958546 953586902 250943507 712118832 252748333 477976215 333759047 417510947 21289834 31097374 20631179 240554425 9530935 653853000 492225498 850367639 1086817 191183743 164805105 194771412 14041413 603804577 217242152 660740729 330369456 784459255 324752451 729468368 403044157 746891214 165787838 233516061 226492962 718163688 669052091 716771887 474028185 546744587 2149758 532052292 298660634 876482025 84851731 880991191 541784596 981246315 227323056 876212755 315895516 963345471 685249395 761230160 528141213 948721308 661672841 835238674 500000654 846145960 821447922 896041281 42588777 538109327 327617546 845662468 79948061 570022083 37985352 711488185 233370191 804665998 763013714 787243821 281035241 301052605 194830310 280520627 234503949 259570356 188889191 720235509 637599932 909290999 12466452 762247806 416877683 534966521 211460402 541031685 168545715 244556199 180646280 387077047 176992714 946409833 865201612 902072334 862843537 891637086 705603305 903649760 571545964 702358451 532387490 723665094 353917636 836804943 387690725 413897661 270279341 720741154 652049327 683648976 344538818 489386414 379023828 607601879 982130 294072535 127472348 237193345 179132492 869031180 560183131 818748081 196250901 937977809 690619310 845136922 181849150 932006939 146748113 433155989 91609179 437034901 373941054 645438873 366039623 493548520 10190787 820162983 407402454 520507036 338114814 617918527 48267439 485714488 117713046 341050991 336904647 526521960 366278661 451297534 177988975 876624645 145121626 360621682 348536726 742115387 589519671 699436428 323309609 564153246 438454805 465958413 39356991 219063458 171499469 629341438 136205420 838011338 254520450 520201335 263786981 638418989 571722007 612316993 531346229 730920681 640049136 939109174 909033928 968007613 72440175 668790273 508846685 574647359 334205777 660701989 399536418 795656516 647971733 661651319 591505193 967301228 347724045 697198162 613677866 908313494 664883315 673463487 126155091 744662847 65637632 773916103 227330928 537665199 111293527 556705385 182060227 705822936 213104746 729321244 30958682 578773832 43824365 720530257 125610854 226090370 174067102 367515079 148889301 502254291 242401899 629540537 182046531 398314977 106914172 577812503 562941394 722345682 306117719 980903311 854536281 874604843 701443454 950184267 404032630 568570894 147161281 379054786 357578175 677506442 283621129 325362483 274252573 984810492 32672465 643710892 124279318 435927097 209917494 230675050 187548767 398860057 315748710 841684258 267787866 614774478 201225479 606775757 152715302 878889899 345194577 887620222 10522317 327405424 190961367 290410649 32353101 131941089 75556578 110751129 93070617 773227690 561738379 749163162 392717137 476485388 432890382 642600532 338493459 932693971 798070581 989975444 147416559 490635118 106917473 224395727 187489255 570078652 214033088 558054261 73372563 339566620 276012460 777736054 504540912 846130507 764163840 866892533 629763406 771579221 745941585 796063310 172776340 898032484 503789777 735650380 276880422 489664741 106856554 550085904 402374146 542045767 264262355 445592014 89647966 281089502 122864156 268841636 183728375 300811038 7709502 466037873 169716865 845945972 297481179 916895810 263688974 473467312 119193146 956385603 359502723 486830556 6492895 595235466 282997995 608310375 328128953 577630840 44659088 406625016 73218406 125220230 6966429 254078452 40413795 718717219 346255447 411993214 300020547 435919141 126354840 317501591 225607337 836864837 312172379 342537769 301186015 857152752 337438330 652455278 649274795 973116367 280848581 860105968 689344616 907551826 217746604 243963843 90418033 302915496 217167909 471820970 260767678 673792170 136817477 798071820 604695160 722303673 181673057 684209633 62317184 826239818 383911574 969818998 872685748 898161151 88377011 339714539 201580678 242687433 42404562 544987843 400772152 864209591 105292575 428490089 395632944 804151990 341615840 540855413 14192809 588120728 466708924 546975575 158390255 847475662 723608949 808584586 323243767 842921436 200249895 965146902 26347402 688981980 506323523 696936360 108447624 450098269 418583763 963416253 585791762 681161265 535903777 799284748 735147233 984305464 960260531 965846290 210935995 877241732 329954959 436649538 348426178 956647795 185027481 287950538 130340145 542343390 464835072 825065476 617944128 923467204 633955536 832462591 227019717 514733359 71755986 330229664 116159856 887877288 61867995 668446810 451421931 592610014 131976209 284309275 148319045 520206175 386712363 409133924 298079407 353283125 317412285 477815792 50612597 939037149 661180097 858429525 362094798 940595837 795149540 868995318 672372172 822686089 695883324 918588748 151632697 457592271 405999804 560403237 238819996 755920513 744376219 952958430 883008887 901839114 646818651 960661226 25287463 189378412 60284408 624546813 96096816 899334334 90598939 532944708 3151653 419093531 311342312 617437428 290204656 392024990 93794057 189407413 187061624 812010154 543723818 991288875 283802878 499742709 472221629 511924928 236040614 709412904 275138313 288457386 227772712 758577279 258423908 621353690 225238303 658811570 211011082 746906674 535400075 982206092 624600357 876666900 185277542 894825276 426736104 556607112 57667060 132579868 87626858 551106861 257073523 310364415 52481699 421108094 40089873 342734631 64734954 260790121 250825879 388054739 292786302 806890315 110579010 967168214 832962951 842287155 155295596 222106769 30685822 411045460 389007654 450881695 215768351 674429646 353426168 598746731 507063065 727179003 366741222 578499253 525970078 764849943 668706434 899026134 422171386 612283483 531233011 586266804 299102797 588554160 572986477 702699050 446410753 496920119 459165300 637447503 196183037 204207753 52730362 777932957 69095641 817560048 659540792 903387622 405099791 911177795 356588038 524154326 291128659 559338146 290751938 623931206 239830121 553153180 75181936 737706476 443100423 895326956 827631701 935551159 110477668 978542122 278572019 604056591 547005998 792662964 589714257 890634656 686450664 779790386 128259894 582761647 457475696 607188587 281237083 842406992 265501313 833765018 306185509 637648824 174426776 921102023 438576968 881085104 90295611 414069738 266314235 848719825 668569654 750959692 239162344 326405915 55402048 311833177 111739789 423663618 126637126 860084692 538726665 974268685 150968277 445248288 79719847 97564163 86464942 671620678 506972943 801008960 727686786 752261182 333309763 940469116 8952798 940790142 913585084 938000396 806668058 963783291 165405480 859733097 194470056 322805374 54969542 255438258 90449427 639704090 223567241 959706562 94664093 395738098 218978690 853780465 584578017 597156580 417719087 765572277 559990131 650956866 17781404 130678536 111712187 474915798 414710331 823501503 463044826 581405337 143116937 253265427 130008131 133625089 78465005 423206476 232900971 995834884 349504494 601745984 392427163 429927047 210519505 808526101 481334139 539640718 294485610 848055238 837536745 873411543 440636943 779505825 753807937 932438694 339984337 568065221 72626470 944787698 209722743 568636558 65622254 495956811 401039251 616541610 569656224 944951141 250444091 652099851 436054396 778955336 669359085 727364285 672342384 788382901 621473753 622812179 428323675 868493070 110883461 495857022 325418670 341985816 266538810 814349741 285760213 976338920 3355000 102003679 75543273 315219119 190563454 594188780 231603994 654883703 205209668 304009726 237284987 632040124 164460618 256389436 215768848 381105431 132853292 440391378 236735381 383814590 115474375 755336800 536700775 792525322 479400090 576600702 420540342 538608615 363449805 974357948 378538596 434485151 375981650 498264015 409350405 465244967 82069524 600459464 406248477 430763081 219614598 566054039 445837130 567929373 431486449 513841104 51597819 931027997 889192372 910427628 647849368 653100881 16148422 89677986 22448999 137423191 24283538 651482187 571649394 713655896 208877827 519064733 256497071 935026217 617789120 915880033 429914369 603158278 310927184 371766628 41461488 237348783 172530363 673311287 92180534 137861840 116348156 443712706 72527317 795746386 738112539 964473717 325482140 664662604 279899767 736074593 56579330 934189608 630820064 751819979 610715390 705353041 388093987 443343644 215689440 501395869 213537301 592378377 524148469 676925692 276738520 468689055 288096657 502804880 176751391 763321887 123461098 567967814 71211460 190431044 118083938 502948931 152499087 447054568 216452103 329281683 284387680 862886073 523623478 969439781 10024670 143457153 96533143 599284093 168985070 709906516 324204439 634159568 2712543 405067493 381946650 718802502 293910965 678214951 351932841 911440857 833147006 872633127 89527725 887530938 33643045 737407304 16694391 703255851 678844838 891222522 602215403 609735813 262653099 595901713 158512284 714506038 399275981 958449398 540952445 937704637 923870446 974966535 426843361 634163241 452778459 910655821 603564788 765759863 513672768 842170722 386022853 709405278 485307081 815943425 668991111 721324897 57392037 305799596 43013647 610884039 93066642 959859468 39905751 246769266 34284879 288015330 190480885 784304607 564500548 621325987 44617030 434730436 169335161 760100163 282627461 893616297 495310988 591868537 303681030 393816359 310600058 443804593 382188344 728054975 567666073 783700157 467985964 836579053 771339263 897600127 420063142 953853504 294449651 365280843 82372052 586694902 545555069 575226573 509572389 662835692 187694292 678958854 97917764 969525345 833817584 851583854 234642662 702930861 456435662 859025353 185217985 400797107 63782454 314454562 112746635 943068747 49313950 369412146 130165620 418202949 178502794 295848821 114529752 350893455 334141686 591407255 191915914 376442688 115531735 949309359 924325657 937641085 213285624 890548826 571130351 999998856 352657284 971373800 127765042 254759878 241927564 264995679 62916750 965763324 642412415 963109102 786438365 821289073 394250468 618507666 81959013 408768269 49205144 921164491 681933993 897129545 142622561 640780814 31313147 804858427 325426734 631107341 551514567 698650277 553540349 941365271 461471857 653497294 535437563 595009121 302533795 750345317 4823051 389428414 179160900 183673643 84529963 716160644 327043405 641080957 323169069 823657122 450524898 498970795 144924026 229843319 99391933 529895308 378030827 520581313 482170125 982601778 957602061 976309989 278251338 303242857 161846877 928789654 548044046 732855795 666500676 999424915 384597499 553198045 149363822 563455678 333135829 486239331 49769923 718400503 275128972 659302709 72586363 623259447 536606136 808234747 656095918 953603008 55999235 64060099 5315264 50185420 29645585 872882722 36829355 805989645 261695123 745426220 705966231 962486974 549990300 633694310 368466156 822744609 607148722 615681637 270636368 871295538 442033457 741107536 239542711 648851524 455810900 656051382 161188748 368322250 257794513 632859902 432142282 689335958 125818453 744572334 44907793 454314879 212146975 610627699 85294148 854219117 15055958 63611987 15371026 315689527 252513256 908149201 828531805 903107452 404914038 457331978 362840891 919024069 164522333 549841820 301329161 328928701 48562892 212423563 68276347 965227240 490747936 948681522 42695302 904772063 746860251 955388247 717663178 831640126 587063716 960020107 83602996 518475834 484304641 623202617 7397929 872791804 324797095 485602251 126429088 249158239 128359459 297576813 196180358 334856873 276882322 796085342 120589210 440590949 335932754 585074044 93583635 491220993 432329238 913975965 669536152 681164788 89470875 360216042 292431048 320130257 138411092 495712299 148479369 540647979 172578861 296541122 36930867 445709531 165381001 165417454 140816230 829292870 151894225 952721212 565236761 669168022 55676710 943779917 124925099 296793079 22265890 814856004 625880723 907902535 594953317 861229602 262169774 728851743 568096900 713607262 235679735 689867714 132615938 359863230 258793002 793495954 656278970 812934879 506409759 895620976 801174169 989880582 350263480 851011524 534869507 787187423 202459819 930632158 549274330 661305618 26530867 917183007 42090713 686438972 19151202 763478758 337979531 593721127 529028332 565690060 522140604 867790278 369913203 851640029 813960819 903676425 505592054 966226842 490861038 710730043 91772842 538772699 117793456 394305177 186268066 898435188 743145529 844495116 29463278 676526823 149779613 872504687 553904855 792577234 656913731 918466100 374613214 585904993 167436874 946435463 6824526 431535333 341104800 925117824 894659307 952476999 590625965 966507447 899455346 932701535 774132911 816064529 805460599 865940242 228096242 979116833 598431174 710335046 626096532 767017314 295620738 611058616 133095301 830320377 38184916 678050510 385369145 426491131 247676857 916586511 294552104 438965467 56052476 589482803 537216347 812045399 89558348 727284329 17393131 528770974 149189325 349017852 176018361 995883789 759182752 768729776 246888709 596589790 375307871 748005215 397466052 523673203 184589137 245643879 36492092 556901400 208327039 745560905 625802339 684063130 395376607 587611727 420214002 999851769 812371055 892726209 601069797 621548088 34906663 115920151 91635777 572837822 372431935 429525741 88347730 378751975 159864095 905875055 794918026 804382421 518090884 936220939 835310625 854477704 534450226 677300320 362104637 384133695 301340889 725747852 81958897 477627287 15882666 792145773 338674517 349998236 108858826 323367410 116479080 503436365 239583506 545266609 540642208 822996960 1302020 452067329 164524696 534256264 143329295 820696700 124192637 669820652 314842434 731743662 16280621 84684182 1322983 379769813 273661769 309244608 245486869 540435993 473227624 816407923 699410322 972058643 798667511 855509178 782421806 911372603 685455054 790309364 360052205 412256222 20508147 383995806 125378674 438745094 375646109 968755510 583375409 583508567 170309423 865789125 282470920 338908537 217928247 698298080 250930037 713797120 321965827 764339044 606016682 939187529 142173378 238609216 3350550 238854245 64453228 480300111 19384350 709268622 556529575 673470178 196175583 336411138 234541957 851819572 800351032 833115459 507625677 815198705 257836746 667679642 125567580 669050930 22466028 548093706 9615890 366177990 302068111 674746781 26265733 646414559 49772967 792258050 385220621 706868727 113538683 690248115 435336799 927934140 781800482 866823614 646264653 713183054 654762048 849021908 285181628 729712404 668500872 690839947 404168914 814134084 707935722 988268558 870018340 896859555 699184003 729798965 69813006 687729541 372246877 658085302 298817181 724751255 183208171 315410394 165183797 195722378 100693664 787841712 615306234 986389096 603879513 866665078 324918596 800879580 214121556 478018357 220808584 913729563 805558356 825360350 551112708 702293096 343264139 542781929 411365446 634009949 247624335 503850635 141206533 936714120 210267873 714505422 676462126 787996620 209555386 824502620 616669946 759684284 539870950 982914112 635138945 952967538 168814572 942532946 706828457 887412864 823527246 949104472 195234838 611217979 267524961 698658245 396714255 952911977 643922672 891135999 366068210 727971618 366409166 813461142 575410578 792264009 523984554 950663256 884244538 906608771 586704706 946993913 382906208 921584261 734001022 870160677 506982372 688641002 504173071 651132184 591389081 874347776 350209064 556802491 486539703 813603381 625486177 686839012 374345273 864976245 601850610 995250315 388208439 409047381 358903492 666945091 451721713 466986044 193938449 367358498 45816642 154624938 31676792 87131174 5458722 640330188 95548572 824982740 339702255 772005194 98601417 301015596 64437418 897065098 196720584 864512254 51693986 553078846 260834801 982194217 484141514 645081642 319007540 412286956 290169221 594295742 78643008 316265026 61686717 843656047 415981826 560294871 461244685 687547753 576751065 838893694 219192360 276300425 8820656 434872430 323672783 736001313 246490146 967714270 578184783 876656747 391897730 652703729 462907310 494958250 471010950 986799171 446900809 618029699 616984737 926621945 394219470 565870774 345313643 377983361 46976022 510532817 172320010 889273719 161047086 797563842 392274139 528290842 176972708 867051991 800542486 937197854 41312710 339218293 169762034 611309649 186275292 800560726 490516990 657909699 614436783 797669784 246393295 770858279 570621422 909382120 529911812 574668813 139034834 287558781 65367533 208034276 49576415 198164640 82885017 931473418 814576260 991447983 392876762 575784007 127260912 691361998 344185708 409720892 361815240 918186017 287346673 287465239 204970967 365793202 14732649 347188580 83654950 694061666 446233000 681712642 502228214 660181716 487561931 984986226 451139949 551905742 258996154 792740240 714116558 781307481 454998340 820071977 425247801 724996735 63294362 424036516 397624931 615221279 153610155 176678611 28415350 239420490 14493246 621997627 18518928 209236568 196883164 301364813 300215682 903665075 876005163 974463213 805735994 942826357 679671953 885107552 162675031 884662026 381671200 592058342 80117812 606973709 237559112 882669296 213519678 836093578 682823686 798738415 545253720 612862204 240093350 975683927 515588029 586723488 476352139 989611622 916868287 963619830 795563421 846925829 697140350 741687284 727430712 820443959 444979405 673617660 220974021 497218750 374145254 925191320 894104369 928895060 720266374 823842139 437081017 996370894 951335813 988871958 102209123 568881862 129846878 707211421 673916205 851252504 824732478 971915662 852213320 913733572 757028480 859119919 74332775 650277467 494980651 633705756 408166288 748057376 348490354 527836171 78023257 691408403 208978607 280614157 265272933 357011486 180660052 838125765 617283609 964839269 765249767 895407989 140684331 966682767 872713549 951714164 64269230 653240634 560679911 855070885 784920908 829586377 401321865 658896672 381130149 480403432 116029220 671677788 196738360 236922256 118150483 932382898 203134101 372414329 247753455 423918515 42164148 55945205 21268683 254262643 201970806 847745863 379480623 989495857 739960698 747537545 621255989 987153047 148358242 779242367 324421604 958017919 735204719 901265881 649772832 960130681 310625759 689276228 492712613 658322279 441280618 984419229 608398584 909538746 613134776 770279632 209699611 480788000 296005648 744966370 603026294 843471032 354634388 445632977 74356874 352198039 532687 188597160 66577429 134200649 83061637 299972896 33046051 242921403 67991352 437313866 300691474 822489243 122593632 145434241 115669084 714768871 53611799 509959575 323172048 549477710 463212870 901134162 271137408 975967356 156812157 624646433 592986451 707498109 280781366 590544923 582339997 844954776 527173848 640756345 584668010 819957963 189236385 902407935 88428171 876955403 362983916 824519039 568122403 920752984 911360495 929084971 10017475 766981144 161701235 489069869 472524507 589469857 530988009 712691903 544427362 549280653 484667607 897146913 643978795 837513353 668584347 920844736 581202762 947454457 391552774 994123018 430132627 901205134 21034147 896973714 624053214 822370529 392321749 999176825 796134880 938709080 68738986 570725296 396787576 719777750 215797083 971620324 65667183 141342526 90474519 665472931 409751052 762229779 221173009 786950477 196336610 580045550 87137459 705219807 369819283 415365926 365561272 758315484 390610048 717866178 116299050 963486148 818897203 984991848 34511349 629546638 351769105 888835437 530876094 687997172 554483999 808044105 525009407 894873638 141592745 271120842 120594813 933483432 646416767 900514839 238480418 855979956 461894477 678332223 66885228 424041081 184509666 984229171 183121937 359145292 160881694 552725504 262407720 475939454 381062309 855976848 836131906 937130728 442999025 879355837 721678292 806958893 758549886 913753580 828474684 979171829 716606319 779801492 386197511 744977122 732058782 923514062 666432859 693396536 6446753 502367697 311763985 941431795 866235457 890424344 137091751 223513610 68656208 239941439 114511372 631571040 613413735 654505165 605572056 793379890 580318173 634647072 384832634 392798781 348547752 463724964 447728660 987915739 919715842 922805976 25769646 257064745 134554136 277696119 39704780 920389748 681648090 991410926 902502349 983388932 561888379 814213112 66548281 758093842 92984301 901394075 246872214 962681481 730286389 990468674 10436246 779420111 556706927 574992875 414889483 890408198 295668667 396683730 51952982 725191417 116196948 510583948 341916820 550749929 168686324 882115907 15138724 699063372 416619238 943771046 211472607 806139342 289434767 742233047 413338042 775128801 415323236 640653271 574199954 877646100 433816135 606500104 187192710 208244816 90772345 466334902 132206270 525824573 252769081 810092385 408589974 433913854 77763433 272675545 158873420 537902081 530748890 715913323 51087479 701706849 63631108 763271309 595487889 616232045 321113645 728448796 411066841 902981583 55711545 810078632 286325222 737336518 698342090 970381402 274628571 492386228 132419556 357712330 338768195 760953646 345941873 496474952 109143078 834104477 749721881 955178573 471909324 888821291 111903484 853203799 232754228 844191084 479737330 944285678 362955023 941856371 126910904 568991109 177104304 905867220 68639003 842371485 835187871 895932621 621489255 958524747 192826110 979819529 722216248 724575063 560925813 829574690 397162469 592420700 75309072 247123839 128679323 708748660 300553380 840316681 277667849 682853845 169100655 290991541 1476676 591957818 65869275 706543947 20905731 513688994 429119562 727025005 96325361 472309992 82134373 858308722 238989250 306461806 16375277 553817072 404056355 593363393 390137855 780791223 627250766 863315538 145919888 881799762 459617517 986799651 950478099 978210105 636559270 981407237 955357630 984773152 52813777 122925772 37856810 44676320 44182964 70680031 23997861 702153435 669891019 693137917 236125745 509214523 30188614 762345316 424979273 937624221 818388503 994618075 870962420 979385907 863715707 998301522 845554137 987921350 290750557 791962764 750836981 990604231 987501141 992006890 1801368 142420455 73419469 896253658 447683261 895710855 458588234 752561990 300575057 514362023 139600059 798263896 655548770 832351838 81918869 641017174 602163138 784514886 375480825 916108543 709257945 884665169 382134656 930806273 61486450 298866283 74580750 376250684 232026753 689375868 265067126 514862364 503301270 957802008 570436234 810440296 229692354 866736774 423416950 630917901 579558234 636954522 521542753 974391030 188288262 852574081 636945171 979520796 77587055 718195330 335071301 969502906 707790192 979080973 832230078 842256778 568278074 877733842 669914842 808927454 513209032 779142270 232471988 945029937 316084698 724792981 167444793 920768716 141272655 799043413 574918087 912448413 888132871 937810246 410882046 937910325 263875248 526973481 159076565 815757279 681600355 695581940 79202608 645023672 302426273 778812058 557113283 923054220 108007173 307806268 212071989 762259997 116900696 122513004 114132577 314207791 36563140 904589980 507722583 671330759 542792185 764615828 305320391 615694521 263113071 895654459 13800106 856362793 482244443 772450593 364157212 465194990 141174116 594670383 310400445 398903474 163928816 988423037 256244079 842907577 702068774 945377329 222821651 597639549 159941874 513121957 309485447 476563346 365777837 697904475 591138992 927639081 395892467 842625251 548507545 923194958 483076865 557226012 351045401 650020237 329938505 417752698 315122335 843072822 178775071 800997790 512290290 541422093 306008614 988274798 708434500 711018462 84097883 110662626 37162423 253180316 140624473 314237144 287558737 895812845 345424241 558595093 225244112 536789954 404238914 821486548 147023361 469228112 43131301 305312057 298305981 562603958 388570063 408253884 124400104 159397538 97642535 517648241 450739974 602924629 594833219 792518078 646207802 824470649 474702306 644029480 97613263 569379658 427502780 927753889 235908643 625830055 158545099 545995912 310208136 721294292 178425012 718970901 234224333 943451638 284461400 781100496 741882286 758464845 208859160 451812205 202866356 309764629 284363240 642583791 327537138 546900666 218124639 829074773 350865125 814489009 322399664 931231694 694696955 937313595 392734905 851726184 515016971 941178849 131196595 546642937 365033429 679555486 485614834 566635466 101883441 782002983 10116377 238909719 123645634 493631962 69064529 168261871 24958513 809199291 589917655 721103102 580312415 694304204 177681615 310856160 175045427 887262243 5999288 834080946 545954386 975447339 42016437 636241870 430231546 922360493 327942745 456542107 102429499 340094087 296448734 649675293 220590228 483828210 289311479 574658557 499849640 549277260 497390992 943034511 10961704 734633939 612339727 769450350 15574297 556831643 306433980 973567726 188185666 803658966 415306907 913346229 431828978 832386550 191413409 757588965 524361203 735916361 357963108 506866231 122756689 723651639 252797495 969554769 539600817 735869192 645817789 723494858 641608280 681248665 408861914 972324276 851291759 878931864 176928147 885367282 22200138 732116650 694265390 933042823 219306271 817961226 677771053 719744025 634706380 930576426 750660175 825814993 694096252 755770210 293598331 630137308 76753081 207337628 194526727 588489578 65325335 399257381 85557543 845416910 589261959 956146017 118186283 553169702 310576157 552511885 461573384 683900141 458420942 732309764 553133344 607778830 174640121 431926816 322415914 375265387 105996786 170200011 56850164 661151211 117282599 944298325 661483529 949161572 804371097 947585793 113630369 594287282 529156498 764917979 651084370 949780377 512270981 825997312 644559080 934355495 419293401 582988370 143698090 933211029 878757062 969625718 391079873 945225459 760078313 933553683 169029129 739598922 178416670 317164982 13247920 441130382 104524220 245805387 162539658 437387388 139501416 241364103 210632342 394465287 177271908 722141567 100825520 316532017 267464082 923358104 898992864 976299932 742055406 990261434 40558482 834456615 459325207 767205526 747149075 977500891 348944203 589939610 542796738 666627825 665911170 836535735 150598924 611497353 94325400 584629021 397373163 971872159 751614701 850690642 316849764 846711302 128143591 805803953 121752323 165269123 43499000 418311483 80030669 754605154 562599890 916813324 756963983 942496734 200411283 657272576 217319573 393267867 33606304 112367434 28589580 999823093 268740470 540614969 495532438 681631337 425916629 493835304 262901669 628171322 3553738 531322582 499865034 851641144 332861582 824004351 762069816 927097028 617791118 747970613 244255299 649933118 591489669 927326608 530348759 728572632 716364241 817593144 436675575 725717130 291622221 935276779 625975135 765273051 249024180 646173278 503769541 877432999 202880261 677006965 651864863 984109101 3251728 541621701 306535100 401029199 81011584 407774730 275755597 355081928 196776510 556437361 479035267 758497321 418420936 531598841 306629530 349091428 127850743 584410358 128304713 176248853 37411618 375005901 114853182 913497960 435896585 874755361 854131618 998830240 873288001 952554626 90670733 127702851 89081451 136460737 3703078 490016027 248536526 534090637 197751185 385068857 328685449 437629135 185569770 927356794 543855939 559226348 508879194 962793160 318699909 387938893 107318345 763447467 737511672 872235710 685021760 931124166 517329871 639936055 96156701 305056576 36254827 742374812 697868803 736922900 730134093 840875603 132998965 364741258 32587267 686011085 394774330 395334134 325791087 706715077 370465671 520978509 227410321 651034674 560326018 983104800 208073996 218331888 80618948 658901947 429379981 533958287 179112774 647413398 339228106 485422416 75599587 806507669 150675967 963128060 336179400 844494400 128838996 928061100 108163503 221525712 108875257 732274506 669199887 921580917 268351295 706309003 487871573 725908031 482793299 608054773 267604699 951712959 692072408 772689135 118052322 844780955 578186608 905284678 481523395 642313500 146054943 495723973 220925867 398577187 215623433 845986163 484744067 532472757 465339090 517707777 502507693 620878086 504115583 746791795 417297124 705405622 385314524 998105213 135725996 453159262 153759493 268656091 126995988 324435095 320275387 776705910 482547639 856803326 827308335 892079610 401305550 614417304 163801845 541428488 497900540 815169367 525244569 574648173 394778842 960933655 802821230 850324289 218045867 522150915 51943310 526186467 414601488 594342031 425074481 761415040 644717021 877785620 805375011 817575237 241173246 601618495 293043301 689113358 317049563 966177576 772749983 880388030 95268911 286581516 186984857 200800999 112821185 820797464 656426250 941776662 538768792 591779837 567323495 958453304 884738111 913986353 727109369 953656753 663528937 890999005 404423349 487370086 63598953 514364746 338804394 924060416 638229973 688138764 215406562 571903784 181781308 361319591 16184698 683038225 455094317 876380952 314104907 915432885 747067789 883650343 258381466 296922074 28970804 436622393 370993833 475911612 330781202 890218683 385142818 566081234 86423176 777098536 679033793 983188268 98932026 165706719 159715583 781043055 106235893 805640645 727973068 930391950 409976415 474398509 280272628 612713396 537356840 583263475 360558753 458521466 245387019 963655866 58430242 818256877 200081017 422810567 266906199 811479675 408664334 939520627 160473266 178885627 60010701 955583240 737062261 816209600 67835393 664829604 254629196 270897176 142660163 673775148 594665426 631266011 175022129 245551727 14513672 428928228 36452115 55713447 16851923 86779493 52791744 897424175 575829010 737470353 428764198 673335465 487794984 548211776 295953336 826874761 295612690 496999415 408212336 722167111 484016755 809771108 150948321 421862455 97384445 715158864 605081517 807689904 358450481 756766938 223188636 601853664 534337491 724284808 119040861 806994372 755634333 842131725 501981006 581175152 405194486 559331380 539205168 994522357 305369707 942108662 80760205 186958010 134897873 215332127 3593253 982570891 698366361 773331150 49015955 561297413 318871948 948824515 543944878 547044536 67929695 804797761 605106879 691950624 249772975 815349505 109276021 182163595 9312917 582479495 238082937 729453729 330368156 601136707 350924613 377163145 260444857 709079265 595449168 812381820 320462487 618734066 424072315 576686677 532539655 868084602 72481862 105925002 93279513 327843490 6936086 225474946 82844112 976168043 300543200 647330736 307895237 797123670 482596696 510371003 257851621 717375331 615118007 746514942 629493969 734020041 170799913 455992836 173178777 735964682 69046287 287657150 223010714 375529672 350365625 518425899 467197349 846017684 512034286 628061007 468496425 773367123 613254754 862967716 238649625 803010203 76841941 340510360 199472821 536707798 535276083 717789862 385292695 958118629 361941396 852398740 762999091 995234017 696031214 819636504 228746090 886379512 475997378 528021795 345079845 850533453 829894123 916195609 249416692 763434967 250323261 469550880 278253038 461731831 98737500 518983105 183431697 257543512 210301272 978701998 772224084 804374143 511019452 851926112 434165085 687050633 379857579 842396591 724848066 924254607 847969174 870397616 143108803 291425324 103015075 218786731 152041731 820134951 413247633 759937100 376976880 929104239 201175639 465359761 456387484 509144681 115770892 453652200 248033555 313555125 10772639 418141665 145139874 944267741 913025769 968764793 92130239 642623765 398981298 970297892 902718184 986179307 911625378 942082029 555432261 673967521 489010349 819235749 151607547 706922008 379363720 887323655 187556937 538119715 143332392 602550065 144325216 200264607 38006558 366087581 125507780 826813380 724826129 744737731 9317662 867038571 465177416 921186940 671425565 880332761 569518957 889407147 449772885 877130388 43371465 343518254 174940322 298700910 64850393 473510258 60513792 124157106 15692104 366314404 126106463 141486135 19088363 806244150 247961948 628582204 9573649 99272956 16856238 581396793 550468741 765275006 312878543 500232877 385270811 603470628 392199766 442807250 230304678 984431570 298200599 318879371 22918641 261970170 76661160 137921586 30142522 897920487 600379318 801389010 439794811 929780152 208654240 641608115 487398465 987646975 204155320 594660664 125765078 203565180 95873057 229748275 133671382 431133215 62708222 632921101 458405707 883966679 870148071 971661661 632542619 812907589 14966207 414137089 183398733 575342021 226282321 645358306 29037420 291809514 266368724 502405349 266521072 406403398 270725123 996599231 469301944 962692370 440475039 526264351 292502007 685309614 604651926 888035123 180783330 187251138 76101395 629785855 602208692 681302511 258470181 616483401 158668981 182994387 11878264 986181213 194344250 253101412 2126894 609226217 407046106 831886554 723058942 892720762 198320888 864849468 708319352 824148856 658452897 915516568 186017405 951763664 702298202 951365302 824272617 856861284 640991284 823962622 649467266 708547763 33543603 281224803 98772962 173670271 92118055 347604658 197628065 581232171 397537242 858868172 95883855 558810666 652713 456112203 225901591 893360206 656820148 924035265 434973590 706086530 607929810 706104660 566568678 801075719 7044719 902698891 576316740 655551179 130372094 393102617 383114096 691148430 643675393 678278856 516902558 703467663 78895901 108580796 39336796 193906728 21696116 183665187 105815393 572275459 389939366 549805461 216311635 671841759 501540979 515920585 463308256 862594708 144648110 814939017 35254026 342266562 240911663 920156029 886003529 908420607 474089713 771759776 741521734 952500681 141207894 603237109 1751503 555366804 194000266 208124464 205232469 751447925 182205684 810456363 289751425 813592768 279089391 484040138 262638864 687488612 405488738 621765338 50224134 849966957 686726147 733737484 500322594 973388235 62956768 144630447 583129 476084155 206046371 584807409 385693680 559505463 302874655 845725756 834182764 946819035 31225746 195428819 50362605 262105072 181454948 556882925 478120867 955351014 290655055 610787319 607179780 974733374 708975649 817083894 135188832 443363303 190558080 495490292 6874447 785487256 278550844 757495908 576449564 716848067 223006662 303050691 49191953 113745978 43130805 203066029 170110446 473403203 73320488 171325102 22527179 664486150 214363078 832972015 355081994 933353839 622812727 842042903 398818020 466191018 379037271 463797991 290472916 587763447 289812093 406682358 331776188 944202666 602384795 694389531 577927528 968660270 297052077 903055103 98702963 853722289 55561401 644233293 551705269 889665195 17076802 112312123 37668781 823422749 288996819 970913033 344788611 876354801 73130890 703445830 702066170 725856034 503532826 738346829 330871683 771526848 75349294 438631409 313890669 462173098 119961042 336585158 128131905 929212025 72540607 78272671 69321155 909634155 177218375 521737070 2333579 990821557 731568745 745173387 420881977 667026064 308984872 820518611 448925984 734318863 721797335 960594161 124550355 806109409 99186013 864164871 166991868 832645330 761696003 934092285 51467765 608104548 296369555 848680453 9974453 316425045 186204436 877448632 348443889 380171930 179035253 639299149 375281782 615075602 108794511 824434779 763333263 960924003 164784300 745824295 504612480 528892893 489018224 504040137 18157345 786294770 400576886 595676413 126786132 518832858 50160301 367306615 280870854 604058423 350265924 440734246 384723985 904034060 825913143 854556380 234819797 902377605 91792133 713805427 307032096 534595266 472159701 499961363 148949304 392293449 82351717 571218978 210850117 643355017 267999591 806387130 612593817 921554011 487189877 712679195 297084441 846923245 183014857 925590834 234963106 902248017 743023107 892690232 647749778 859212810 722785669 858564255 546073761 603202816 239002754 459175192 234572236 694261015 5163248 401550717 152086792 455742585 331817863 386548333 115080555 710055863 474676852 813030526 153807913 763488566 611099901 884773463 731085296 771068571 733814467 767428505 765910573 767703538 50524332 336284258 99661650 734578739 582644733 757122916 239396690 905279910 283031807 642555580 367841063 667156744 308381604 441991500 162922138 707139353 140501488 828516192 327447599 742552141 425916910 562287627 395754500 856367438 851707222 978990185 633733658 964873802 402436229 854018754 742733275 927358979 216113372 958930875 307800220 737125888 55118672 466522801 65168646 713893005 446176525 765089002 554461063 602189794 463881761 930014828 495988745 858735027 556239078 790553638 307811219 368971740 33458680 271560754 21976165 666076946 165056458 522026793 97275362 650720064 48900782 605543890 212319415 306303168 238685791 613232683 325798725 807941185 203396594 387909328 185880978 399882756 39758263 197844472 25416299 178429497 150082628 691646740 516526646 715746740 244741099 732486135 252167958 628446472 486785072 643956613 527475829 604515360 250719595 297470902 157918211 712810496 618121405 791811095 779569763 809533850 333893920 541836050 64103719 399228045 200965356 965405318 538223746 721823860 365405423 549182324 381478797 911257270 849684354 898640481 432731615 793196278 482650287 539338129 292358513 553692048 114400454 236836947 66506263 893439758 283004529 806916027 313957843 964263414 439884781 557165733 474012696 474353550 330885582 614206955 148336956 866754614 814583751 817468038 659794661 692508921 226582885 853134350 532862776 673990893 221774372 976948062 155027322 715987817 157336353 545695813 348769063 775408932 88042598 663370918 268631984 399816561 191384491 895191711 713926353 986350487 4541598 242591571 28258960 422407700 232064541 248990944 157241652 484390860 183736023 763636691 182082058 253962135 111399103 272800660 190574818 425886037 322181256 420646512 306493768 909765639 883047525 906513522 897123076 946175935 798875114 940809302 787713609 986452765 244795344 648575136 629489007 753979356 633627332 985582905 912711473 917246337 286227972 418027389 389382916 518230069 498847839 857681662 736673384 808610138 143038510 527928060 104309552 193671082 91051675 337860352 321422341 530365509 375596703 410277785 298176775 639702506 75563911 520692675 486861053 715584920 25770150 919229851 583503606 737714818 552637967 972932549 836323133 927891667 27641185 876020016 351504245 516168500 483544728 896365928 570334080 615709881 160695255 216524335 159565221 159567163 99476233 561949798 281437608 286826442 15161868 964781227 679638067 708883310 553039351 934991874 36615900 87252485 5081951 94422864 62322819 178362508 57885121 714632123 487035044 538367701 458344039 514547006 273867939 953217193 594967251 908367921 400484784 718225273 93578369 181757942 83062488 816970960 281697507 604427937 344811568 527985646 194841402 633016218 460911334 839473054 456132209 965252769 777733616 986662604 758623390 786432654 565267400 838897204 590870316 766586880 289558044 997220631 41983765 900750376 57554362 323816936 31021249 379744592 129969173 396698550 66704644 495868312 305083566 673369449 240749337 696508620 120397306 674214515 664090199 895956922 31658263 725657425 474354080 552509494 35017198 398924048 133024767 649250778 350848943 677578315 336078677 786676744 300590182 647920566 73694217 477164729 427365432 737995121 167103005 683823843 138773434 474774135 328351080 974588231 133143797 381611758 353725371 763278355 163220407 320566651 111016801 907145389 42266658 513566547 437383243 686569502 414953861 585339412 283182356 512261249 185157821 714616523 688380593 755000420 325177274 713056480 164589300 439050408 412779219 714762586 143681383 864847132 290949552 999629107 179167991 624873433 494118292 882395229 493941300 908208406 12166710 694428053 214205292 822301933 544158977 708031079 57690250 221899243 37523404 358426484 212505717 594594406 506649469 996172186 798066918 967400465 808973624 887179875 371501272 632347205 217610260 541641849 341473384 423724781 202043104 443749314 170638225 436176287 334152213 742041069 221098377 323156313 105474929 223585143 154002735 399518252 334087039 761946797 203293286 928892649 51220006 486962357 440147943 846907392 719396240 734333735 557400362 880683905 704952959 941821722 840158373 846156981 331841121 588567784 259343221 647993608 245150559 877477130 561719743 816427765 272737649 691228892 418420148 605833258 552038591 916474908 616725846 660424995 264794496 894424099 541943636 856875027 170026760 251580339 232242294 680326755 385636227 867842518 314173086 968405079 783303003 893506658 239701400 900794015 162789796 420350271 380587241 946023782 459936086 832342427 31211771 692163083 258780101 426993071 317544484 957946403 80432222 934639475 731523111 804147300 492447205 834283477 56427032 853678247 768479536 960429224 840047529 991165929 822787101 866873985 813040200 930920960 352231987 672716440 431061261 462390211 295856428 306583795 5519655 214074127 196099253 375429414 147579124 604878013 148286771 903418742 133389339 626908977 249015411 293164843 157816631 781389822 287584134 318383729 240536079 593639527 71649293 670264190 185392136 958456599 463916366 660672471 166851062 189920653 108572917 860112543 359979903 824171120 505781 246834396 170509626 866846179 429907786 545854701 510942132 975214019 542615442 663995782 317625260 854069631 334143272 765621811 267318687 415003527 182868371 317121657 581775 623538423 359839963 365784943 239324623 363768003 112689931 200127014 16606763 954266852 230271571 954040400 223199300 719838035 595643370 906988485 775473428 843068737 521794991 710253156 20503036 456712736 32314417 96652700 31175586 670506607 643066418 719839027 437537811 578686013 480944253 532329958 66063725 129348243 28402228 362484810 257481182 327137593 303064819 978605404 121211715 466925388 156364005 323398522 268750708 900486538 654683136 695736992 249884129 833806407 739944279 844564602 166256897 575303767 286419889 536108064 355197541 827162654 68575692 725623426 548720757 933090595 343476546 545421426 341213221 618486734 64483292 735719919 377973743 883126839 217061150 585416579 334680230 637908410 58179360 863485740 106551292 523415702 301136474 921699808 696017092 866306189 284757202 533398554 321433925 431348345 35679195 843885673 796120024 911925068 879925183 921579446 796918114 989121465 889001969 968594097 815065661 981849257 892525280 937376629 157606651 301845689 37108416 408359773 317379509 981176416 303627107 759755782 291636598 541602751 52903762 173948136 61249378 666113438 14537529 302358853 204097896 641135055 489637634 757744365 437787954 613083303 269661427 915728336 293455681 648404153 635065802 734845243 297636251 864296917 157963568 322600865 313929131 856341135 338541682 805334672 34029990 474086420 211363745 419772035 399828291 990173628 244750001 252501626 22793591 703990990 106709828 142495232 81746768 585006960 26270152 845192252 48880162 856352260 824201608 869686312 741262457 793181987 384867116 944001448 647979223 933633852 193144132 708747200 44394281 418350258 273956688 483878167 336457111 832532082 648833699 750584175 129098091 273740698 151359928 683086289 236807936 891771092 468911907 634041181 543196803 660285416 413223059 574305893 424038836 986178289 966319372 973417130 460865735 680939399 596342865 874794798 744052960 841033601 360568741 896180819 776242185 879629196 742146599 944886868 353105907 590180990 468134180 870004891 105019922 317583295 35882724 697592326 287659948 339566077 221102506 508265106 281290994 373471862 97601596 842459488 408621508 580402017 225676028 428925457 22965348 500147943 483584160 644424679 551927868 754975496 167057776 918524140 103990322 818076221 812005856 993192772 550755278 892095276 349175992 366411311 277173532 287091439 194542121 516156391 187556439 526337541 117849775 732603093 428953174 799342908 636224356 887616853 26343902 590141984 358205361 922158463 823440106 846712512 674196969 987376133 66681052 206906839 724561 561819560 278165902 482328851 241603195 629305221 310532802 541930520 250992370 429488328 106518984 223026777 14245096 743588038 237601386 270277830 139823690 961274453 162701617 215278298 56743854 575189661 85631883 818039548 562974930 718664443 448686408 874128459 560950687 730401918 139591669 743456711 506745789 818321922 754480115 958708326 633607988 831526345 366135759 539524917 237463408 509582533 444353162 962768723 361095234 684625472 312914890 379778347 245207871 944135209 735775016 792749705 51560737 572838790 377652053 484507245 101321864 428455070 310035878 711817296 377648594 675288943 232415221 547513408 14305405 462610228 211375798 401353164 46625562 259039527 96379057 596985167 73823577 702502264 97665469 824813182 647422739 970187044 96586711 135483413 124795857 455080805 91031345 91687534 39179026 322217444 37290639 366223421 347914238 914331746 545474533 874907513 273845387 427072300 195123280 829919075 632879216 699882573 227195820 702143924 220526656 818923627 389672118 793228638 560994258 951577571 458223937 491133837 358814093 782457009 43453379 576014128 167951209 936010646 849231090 963376408 347152347 898889315 753228072 896586578 257525238 430585178 152670944 934924524 410332618 581843943 422786629 609170100 34066099 513324256 86573491 807959734 632884367 748048397 222263828 301403858 291565259 421647857 413745339 590327967 216351179 507391373 142318157 465596507 258777186 738051915 10872470 280288331 79332702 671203586 518499614 889347192 122691488 815083818 226424056 926336219 830689685 974486010 272863611 736320525 445792989 806216880 26789864 885050881 872498590 973178512 594602946 744565498 537221040 630281278 50053036 378038888 296862370 636794936 256285594 368127303 282219730 686948172 614592944 654009248 605315819 759768224 695209502 758554781 118721434 742452606 479033744 664277168 263977189 299002402 144851818 358195089 78380525 508325084 450503845 769657512 247915975 930797880 692367929 910178915 832844118 844132638 43977196 964571055 783053259 825882602 12424173 488575446 390293825 672159640 626251813 859813268 491545246 897205548 278053375 650841944 314692558 371700844 34675233 372342016 224698640 931697623 143654708 950048683 411635465 440381747 321951451 666765742 202128898 587034867 303881990 512362514 222862683 935673328 202991151 699355124 436338069 967885225 498466852 523771191 445483653 957561754 576600189 691981905 10707640 463966195 328518168 825649296 137778464 632936563 445808612 672870145 349428634 559046987 169669232 970240048 521453899 669901536 312519904 493573308 251603105 273407482 2776784 8887375 1218289 391460959 56281034 560886981 489034453 895173258 481807823 908828749 495472376 919389654 839931505 958095727 557959366 791357887 389059376 748072167 323122181 875999173 18605617 597880471 37265529 641091099 136178169 444345889 45683181 890965808 110076733 314868622 103573883 678403912 262810183 302240024 295704375 699119697 671506908 897237473 839816743 878144303 533458145 541609183 454900699 986901606 478817172 908100416 383346561 466153236 352342547 480884517 41403585 875955777 145139865 255477515 225567585 632607828 95509696 967736133 129429778 685158893 15036795 923412746 171503468 552326680 155863777 279512983 4403647 337046999 40922838 254444327 166025079 443630235 378344406 671011533 580492510 718171424 529120370 819010919 72209754 941626171 139741994 415064529 153376252 193240994 98076005 626067888 307388292 611481808 333155149 706481177 280378944 961450682 119280626 499771318 17619288 553265874 466234861 601046406 248947836 710606776 101317789 323385814 125587077 904146167 51911815 786147400 96655518 165710621 93096608 889123618 348697540 387375776 373586652 546595621 328148667 362724700 196632110 400909920 349307337 586753134 239596260 896564097 632216125 762567298 658027830 844137294 33153715 219877802 20583793 670636856 413164027 433536747 32269839 981037793 554531607 985777372 624239100 668077637 63019133 524673204 78784178 154133713 114589872 637483729 191301593 287222368 231723029 964375829 639973229 780605434 615081190 834834760 268154781 702886577 469498250 677503976 140815789 242308208 39943318 848893632 208805773 996275801 994489248 998513244 911211611 984051245 897079596 898664993 162063637 197206939 149502881 349819085 10897576 239119893 187933665 541291767 13411870 125355826 74917679 898573483 385047160 701711817 656303461 840030870 179046368 715409532 651106433 786992575 423391857 908741691 899465709 942452989 31280415 975962252 933711952 978274197 825796892 949032706 307349233 740157694 292801782 516193050 395937037 974991614 210628364 308768386 260965144 386581231 307363573 671172684 250500005 367781310 148479435 187472552 133801242 417176578 181838977 219533423 167746832 494280081 417071723 606444366 548865999 794867811 537856476 917224386 445117506 635825645 64904664 557153656 495757347 873791703 383824055 513958503 187485954 878978155 672811057 969819522 405621816 808274070 428111954 635842192 455527686 605939734 22213133 733247881 108355176 369499448 251294069 766633369 136794031 150457552 48787691 535080233 226409266 306961136 126376464 360695035 53084419 639710499 130443823 434580995 25287084 643865215 263548305 633488671 112506096 432443695 381638793 753771238 661161690 985915159 337126849 727241692 654186228 813966849 489768889 604536605 28447884 358953334 5664790 145159700 100182505 389492785 366603005 629338202 178411613 615198023 561146378 639480928 318890832 553462852 350018039 855120922 705145105 759269885 680228144 757888812 340645456 784243672 539289960 620686408 158876919 835945088 813823612 823102676 747255183 911482837 835946577 996438086 235867294 594134780 212942096 266207279 174790015 442362254 182807797 320983186 170256194 225407897 135766575 847726169 124605560 743338074 678787586 818154381 87310916 345617096 20875552 168538851 110565485 674321605 474494733 703150108 547281518 704192632 231639553 355964794 289934029 660706349 650085320 864890152 637189520 741192002 266992660 943412281 300923818 689780389 601052801 677310568 367487084 913940399 68787762 581338325 434581291 937176650 724992372 785387673 587365684 829388227 614347532 935191136 847577399 847902742 744136572 854359977 70917510 672678559 171761886 668945189 645635185 985379043 506437727 681468269 269132753 551410660 260908374 316567333 313018069 526560581 124327690 850436496 549475880 986575928 132476081 488903974 35539740 795537475 714261949 980162967 391168537 903573639 438996327 957036171 728125839 850962615 263307355 875562689 415584420 522854827 305459040 859979904 759054995 978390895 579493993 901413978 164880820 833268859 438841927 743257877 293544364 469521904 201629751 790651328 129039790 743376371 466482779 937832705 95687441 811508459 491767327 578112655 26670465 412749198 315429811 478543602 305787498 937720929 118788319 454402096 397217014 678989579 174071192 210608175 189427074 935451237 99761338 299488914 69103111 533200654 306263633 376931648 228717924 337523908 226774194 959253890 331288703 394751204 210612241 405139979 351255268 423137219 378424937 612570544 44405943 194571015 178309356 280037438 71519830 265466804 227633891 947318871 319165632 554048782 19467224 687891230 286060081 975621560 73554401 870303166 178173380 312770058 41770087 533892019 84826635 402282260 147725758 790097616 531612281 586234190 161778798 188263244 63540021 593292837 340272039 598608302 287526774 808952178 501264143 663105657 177153526 872181661 570927514 575564927 45733346 100114382 26379915 753015074 235136900 777240755 29869221 946631478 321883471 797873809 684131796 908843677 799799790 866187247 18314313 141542029 36667820 432932968 201767020 644554857 415825768 649604422 458195189 788294267 179862983 516162809 477547072 632247272 553404776 832647739 147139301 702354134 534098154 696447863 87138828 911128282 233346492 584606409 406695887 626608019 165220566 408019664 278926180 406564114 198607247 984604296 192125174 649186317 457995480 905038100 871944209 918717648 704991943 901051175 734909274 998486784 415536187 540950632 519762088 786184743 278012870 647715125 202664066 510947394 240377923 578881108 487331690 911025636 12137880 525695178 70352827 638983124 588806403 953151547 60990177 133133298 52537906 704698125 667574759 912122663 63954602 446305293 107176750 493216047 138360786 525155724 104614510 448411274 100123026 875356993 485141059 967091979 540094 2016274 1214985 889161388 750706614 803564284 706124600 979291450 842741766 856131372 726543152 860246621 846701849 967380061 309268784 342818104 294422017 974758531 649139582 726969648 726048227 882542962 416746883 965201813 119975951 577953472 123616166 467041035 426192798 535929789 225639507 512553454 336940776 940671826 641363657 937219983 798431955 891784167 194295879 367411067 47102252 823099164 197084863 964318276 448151490 734174944 420805607 522038318 22773732 722911699 109349431 637598636 370054423 635093412 613202307 979116590 945037094 957037456 469982206 697378904 140293883 577486204 455277636 767144028 607243186 657494427 28905180 887096396 879723042 907460490 475667528 478515654 20764473 996384108 30010859 56359436 36808072 80632826 5069073 488223925 429654688 723104647 533843701 704389856 537709902 664517631 544985320 867759316 218958448 657581124 401788554 973864842 216288856 494706839 355615982 825476687 682764171 706337070 424226764 978307392 191301375 454927474 279857665 887159585 789330139 917686569 743341875 803783748 285672945 982404452 386235954 610963252 888264 653794336 396269323 602282274 539646133 677876427 565941240 582435273 231914747 425094709 205890128 983458651 541590053 680471927 616753463 827357462 242579731 921202321 845970138 904729486 537548510 867406152 104998049 266608576 31109343 392936541 2308308 735652186 340193291 568926860 326249990 506585075 456577401 687795532 391744688 883096179 32285788 385471928 52023786 137925801 81796522 512935079 168735355 518967199 129282319 210232467 138853775 784623177 395767013 725524334 689606986 919141957 590199831 875426052 218640263 356361321 63797949 924808006 377039779 600972332 369498687 982350706 333739771 923284542 618274315 728169895 193140158 800049658 357872285 389307762 379888785 549604973 176762363 643427802 183019662 856597228 109394006 404815164 1934476 646401480 39259952 196814284 97640709 410289325 334556522 975058918 103668539 653204101 43437749 452678353 326252730 528256145 258206222 567635958 215426588 649979699 3286060 515902763 221747486 791997417 631411344 987608145 391654869 519646943 400858424 437244289 34164507 446624880 236714467 417077701 182091252 746064131 213013052 836746270 154108998 718850433 357708779 519473637 299354224 341607286 162464916 266844767 114191943 999297544 904219065 944706279 929981765 988354858 467058823 868710139 180199294 981963182 864148463 916889120 506901887 675891885 449050780 566125475 308629749 746458860 530652738 598914881 435740820 745144611 618895830 971905155 500749542 828226364 627822205 883916171 813125616 984582058 404709691 486689126 148045945 942463244 637605705 825888400 158600857 799887243 543654814 886555804 296832342 506875413 121594487 798354677 630139940 690372610 600959868 708001432 625945780 754403740 187761259 438031974 74038330 489978897 320382204 485894365 312354136 841231946 373988166 726524093 449160122 473162382 18549576 740142444 502533528 804206064 259755158 363873833 73894413 585116717 452742151 937867379 632405221 926059264 754768210 972471964 399940567 467096432 401774815 731340727 692157717 758260778 605407055 675246835 522622385 975414589 44599471 440039461 82251577 264581809 261467666 917093967 816550771 998836994 520708210 689458182 447439865 923790968 580935889 665994685 101896046 759276690 465029180 539172816 15722422 443480495 301327030 629714924 439952317 454718403 268993063 994915969 386104892 492277338 445640245 998286228 554927407 968507461 495049917 581808343 37216218 779006395 284186022 442066271 407080560 987644998 532328434 942804631 5936637 859562742 200544790 400254938 73860039 771867222 764803997 916738719 402232530 557483441 279186598 963791948 446365005 827287592 75873190 712091641 305994268 515371625 424824689 685447532 419727931 668031681 87555558 979782411 493161175 934802007 931920412 955932586 572866654 955325200 739295784 889066196 63367114 852165334 450646546 996355976 175754361 497070190 218559653 245925966 1382231 945205427 71778266 479369132 356472231 362993406 339695605 701479583 243886885 827612198 198809925 550456310 25892605 648530360 561415132 643363996 109920307 662570901 636561501 703104976 622662926 973337370 401926690 687887900 59987221 186613044 40920442 74534811 30115348 978308253 503541772 719976869 220825274 959104728 331616108 375666310 240150408 749667434 452475495 514710466 108456482 385739416 69199045 806718315 555109823 872449199 591802636 660534485 529979645 912004035 355016224 901281470 733203613 864780747 767922263 909530811 869013827 985672606 459206746 632870467 221781139 345761470 29986166 47592769 24833209 438929201 175443354 674766859 633696720 828294925 799129769 880613511 869744939 893547648 334684983 521680942 436483309 572264020 211237900 231025398 22048734 587173122 353860075 957619404 625067779 990294492 174025219 204761016 172610042 255241585 19808380 326426402 308964168 469455329 166071438 745924561 534846934 668586801 595959967 929314365 292080825 399951674 311960189 933027518 64339423 437137208 190873951 678213092 635713406 685481423 191429307 460578447 383644817 552445780 221244711 851082999 408894865 751806497 697805485 940748508 895828823 961921213 390773411 460313489 183960493 262345692 205668826 709895954 160069507 553659433 522665288 578586573 571506721 701586122 555369601 868368260 455873995 998661329 18076153 566385614 455630350 953195809 419143895 621831570 434876845 918470798 49911319 339417543 154908265 398914752 300508346 713677084 60849310 242628290 228695003 534728418 130226173 628454311 261700396 407617188 185390081 868642940 142614817 260368042 96342383 209933102 80364898 952518691 118159280 998403867 927997558 954083337 392216184 515811310 78282639 888558224 149269379 343066450 216007018 902345900 420218359 903973167 300830269 314631245 92760207 645819929 109305432 592787038 441663623 450218539 23719770 593469047 100425830 370345841 61754962 771220998 112515847 440191999 84972525 139596852 20750823 682756668 72911389 327620923 110894274 495617573 346084110 991264432 218271401 269535367 256730419 909349541 295668781 501609653 391237386 896333342 136160159 356095120 65231125 525012193 4635891 310230891 265596350 792322476 128202793 166017401 8689474 485930051 333025050 379767826 153757178 213707667 118958101 262836156 251754238 888300127 135330176 558263284 509917565 551329741 54749359 824136091 137844974 598502433 81749889 928277013 488325045 954488389 356026940 804934514 227034935 644716027 568447090 953527628 728579052 809485213 436019677 538962012 88477592 720639136 103677 871902614 255966433 720800012 141206329 256250912 56642251 560635589 99452295 610317187 341229150 714290327 114157836 278613919 206028605 560911403 491640206 900255234 403935762 801834115 284592008 362059450 114568664 126569163 103128082 417407930 398134457 611453521 43123539 931214852 758209701 981617276 288896167 551430082 88998639 509417382 26226438 849228143 725706039 752299719 291323190 601363947 392566183 411073053 55579712 391245540 275145690 542093403 128958376 763553175 249135009 255685511 181645376 560368914 529937695 571607432 113506874 658238753 290865927 709916449 370042987 574008794 262120896 675574089 58750834 839155848 461568535 603148035 375905004 843523415 835655128 924511106 836401628 916533157 338057891 962200384 546182571 732260002 463216761 780267214 514428011 579122490 497809683 961511027 478946825 964572833 463000208 982919033 737204962 830535590 628451646 974262053 835053943 908129717 134783384 890084541 478067019 842867055 317504329 559313914 385873407 872436568 289630231 704547747 254080722 485804376 72095221 784798877 121270275 770493909 304900657 840477612 359004612 602697856 464992352 500670329 340046893 852430623 177197538 312981349 133267438 268035305 127220663 595624802 76136386 593170206 31548114 483563135 318253121 834601820 472650573 812754813 343241464 447879703 97508444 447758572 125372824 997171711 249424046 784213504 247871608 339519720 85573860 337972812 173996908 552037769 210776313 341987564 124759963 553336675 151583032 358252671 199176209 893468218 77122843 342310906 54929242 116330153 98176636 697042153 354034374 856542926 749563372 999619946 775474536 975874038 742004210 890117845 344324581 945746151 941628988 968163142 747133731 756101018 562051293 609136904 451202410 961726670 197342824 825989886 166424236 362905936 337646826 947291024 149576688 166505142 18717510 236793357 167724724 391740911 78997803 924017843 266932167 777883187 270749676 617318418 322878190 946601217 547115204 835695507 366648040 556707196 218774728 766140824 709338541 830700336 574989674 629757924 586176831 951633451 933500591 935579629 340320822 724121445 160300189 916755326 755057704 813137552 744131430 931343167 292342020 581574283 33166832 236275152 152467803 309279486 50951398 449463121 79958959 329900883 280611554 975404481 897766168 940754468 736998271 942469339 747851713 949496396 611800047 860263280 784916034 874411157 281943310 473670353 312040337 374572116 313057599 857575050 738768119 806966276 170279924 873961005 265739552 665655137 191757308 711241552 615602436 655276516 88684866 556585126 335183356 359090690 17564794 573295437 559233742 784094031 367115529 431490995 53913139 628660040 581395802 616198868 313307878 877951623 653083273 931654347 485987488 856436177 582851543 701815238 596489847 784433200 196995394 832549973 474093406 616108820 510683435 591676602 44077983 864536967 39949974 604614201 162488095 609008648 446304269 905384347 139971349 553996690 252709083 939136616 260932497 324903604 323373174 358675919 109230517 186176953 51017699 980845999 532549999 606683874 347824647 377143509 59703125 860495391 676706018 680705095 608150072 731089753 168394750 402996903 116754726 428264930 377159152 749391540 482818006 847925442 131968637 767673285 408173428 868297601 184255857 352272547 52921538 905617066 863389838 876357240 775980804 913105918 575300953 739868310 371378115 531446529 6508612 915079520 853458715 855058955 605283829 725054178 310471263 415931308 105506518 230672004 222458661 623442477 52854805 824947909 395433055 495562451 354364884 687212788 258099536 360644494 229205043 708600400 27629703 410999308 34244090 282136208 30934809 316457735 5329321 840930593 80722482 508126641 300982420 836744402 494212908 641058058 489786484 523800745 467364765 482777609 197255329 212000146 108047436 283160041 86164565 945257424 310592314 844726509 414005808 982770155 192944550 460242822 399722250 867634598 797900213 863596094 278556564 572133674 151081284 881490838 685159616 939694717 897770191 914054167 13809629 109609904 6502359 989257681 621704986 681185545 276722581 374613585 179318152 913666754 505609994 854227358 297909742 858785512 69026644 908893954 116666809 634300335 118233769 536371413 53511639 832077213 711923378 923451825 586084005 984070537 809441299 872260274 352010160 398986668 383686750 788990711 660954782 664331661 368170486 449263592 145398759 409588282 299106579 988840695 289465421 428635366 194083647 946635294 792019456 984904519 75185217 120010856 18968808 102427594 35512544 294982154 123977827 973168871 810515581 854527389 714156428 723677840 177509077 841828271 137537850 220449976 202472049 610576766 580965471 787813343 437097651 555433508 74523669 969142064 43669165 205403305 69123112 771182345 456361097 783404095 340672173 540365117 472943468 906748417 867653194 935514924 324262142 529927966 512735919 762705046 612522974 675667263 78629027 360032688 191804429 776769973 744760528 787718178 153023045 688494801 98204018 578412271 406841763 846546647 293253016 848639232 264948052 537334872 340580842 484377568 30283303 574817212 542614497 969456839 549913525 599201777 480941049 714348189 71800111 311813643 281160754 597201035 130189102 970918847 754398495 886404111 506241560 750124876 266448951 798545913 748184272 885183486 545290402 852371041 91651100 789208093 199622146 342968165 115614176 204213308 82830356 103614683 52798464 189847927 65532736 751025569 152108612 423812979 269031980 880037671 275234582 337805673 173054166 224414316 86166486 458725406 98543209 865241500 13866627 362329290 250082514 308272984 55418201 806682476 397214202 635238603 368032012 717090566 270921347 646662568 76257004 331100899 326500325 539419149 385171350 948699710 879431799 895302908 388418597 800158959 293983268 934706482 806100295 995143651 980941683 983703086 959009412 969471507 689686693 805016658 782884366 841838172 651818099 933794848 232458549 674617816 565340415 718578048 534825516 876218361 66998706 389666640 81304961 448406855 59896362 239683246 165122576 672455209 303792522 668741120 204838537 259935253 233287719 687028336 551381238 966414374 703433101 828360696 162139727 815078593 186769346 631525034 254037441 877942556 182590339 764311105 663432795 840963960 776783545 889951572 301939712 649355538 462633000 833170190 794509455 971026519 737859020 868890334 151877972 184027343 152082664 902628842 266937681 471567054 332217788 682658027 34341994 982832091 25661421 448494965 364405385 923508623 470050888 849348921 131921019 772779080 658551421 690540648 228064729 605601606 129545145 542008294 100083247 701438792 422146153 710513757 114267517 665579155 432536738 973060149 960072313 968690549 213658286 987442650 471802832 852786806 563521221 899367750 434409127 656629724 565152612 950462102 589880873 895363598 761298404 867323234 29503092 181761422 148207120 227058867 95426173 905711575 130033326 419616750 187538312 209256939 83956808 382736756 204963016 693188852 305822920 522010711 71142429 623077006 446675984 807943149 515774989 684369401 542332902 633598841 103049448 792280660 466055725 592942691 218491101 600082219 348550851 723960351 250044374 562965956 155810927 758159575 594324672 785899949 705098103 903670519 469395717 599558488 485267717 725315567 671013024 899446180 726490975 772646893 44273524 380267675 367595649 780614706 225715772 925095904 17814409 327675605 70442498 305333829 142169959 892417618 23083078 232262451 32879747 347765050 137877171 560341375 58622342 529483954 222609818 928873688 245163313 943453101 601248693 745832207 352407275 904951870 81980736 602970245 46900702 507545709 161938012 206848012 48090439 624102934 132241124 683964407 334927161 494129366 405418660 980579615 567813570 839665315 582513008 934449426 327133922 364573775 265572508 929393351 777714697 990226618 699500899 890338605 278891492 637230106 402801405 842803591 20613549 270576662 173303631 415439498 20664278 892313433 373987050 471182301 35707491 84866232 13378070 120137206 107480685 510121393 398770166 525569277 452762835 985768903 264439915 302959772 182515622 265424963 2218368 33285375 17906886 346047567 16112388 753742345 168980043 523240649 46169784 713493945 475115971 576202695 137001644 195736916 61851412 647926451 222070406 728876529 328818211 383781664 330856608 556137214 101997666 160261161 86846617 684243955 339599711 430285660 419196826 553272436 414441793 459690244 320554060 808274261 579550465 761348742 430826500 548928150 165403880 527873918 442175701 963963945 777361467 800416437 473662257 756969252 211999864 381685164 174109255 459497214 150385256 571468040 443245829 736577468 680509149 770619723 558160583 781887369 470906110 739281063 37788626 632500220 220972547 927921301 785860777 941775204 223500964 815014477 159680122 836341634 399458499 714389568 436652035 687719288 375192716 539178695 55804091 719926358 412303495 885522537 743770717 879302404 436402721 603059620 248315479 298485416 93414234 244713273 21324279 904813971 84985716 423403525 16165184 236654764 52175211 943064238 79462699 941592396 631445163 675807061 544924496 658938291 125461361 766176518 239577427 392813875 167932257 693298341 264563191 337055789 93412927 995456515 699180471 992516115 409621526 422691696 99353550 819531959 307174829 746811912 48400530 753659412 667662625 851969855 375890053 668250808 41093545 378562378 143268786 751571280 544554861 784141164 550914794 749847740 465858767 581291402 393205782 617630121 431698087 730385796 453561600 732077184 40015142 601909867 194998964 257528472 50395383 996001753 178747828 523369383 383270131 617971344 612647757 840933354 783301980 926396080 483278467 987440596 286325874 679716058 414952569 733206488 528915968 941218510 137773120 811133243 86977374 717048756 571774048 627687269 310369087 824859086 734073765 826627652 102649618 118852558 22597320 276059743 269554142 661450860 6980526 137783562 36042350 860274674 415226604 775558890 574861985 864707917 233198208 579954767 399891512 613869875 48788796 948961770 247344812 694806531 230415066 810360534 686491061 897877773 451529095 833022431 47152573 660977450 533164067 766656653 634290989 752106741 655049485 915132181 192055532 420797028 333232715 333974802 152731889 490454737 343321087 424809794 406238652 908443995 638029585 959541960 842655729 943105720 67873062 463831172 234471114 995089975 431316092 668860214 612658949 893846802 619054108 970693637 346611233 971924028 215292575 457597350 423484356 874339473 785248892 919073216 42848971 809180012 660479534 720336857 676910281 725844381 298767399 453792800 169548722 411818972 341674809 432812797 176944154 307834748 167600347 582692158 146210544 476121683 23911813 387144949 192969543 639206064 627765214 638190163 268253885 527304391 507945731 612233939 37450317 373836007 63215799 329302241 105390631 111459469 107883350 495151941 414220067 891931672 13010497 525518345 205001080 252825153 125085377 256637112 39064542 362560392 227378847 698036873 295689789 845644354 213377746 638064640 258624550 608592842 429390650 930203752 311818809 865242213 637781407 952632203 198514754 469866931 207505533 349089569 204212355 380413453 240857600 527893421 219321794 782545841 615828397 852187169 223153466 542086244 457014074 856484299 804726134 912479597 214540020 528255941 214172807 903280323 81589562 404100682 56393755 224152595 205427251 916341838 500170781 699053821 351282952 891092545 341317808 834403335 433788423 545633832 69691241 105775499 63532389 496337890 239523900 742701983 377258968 466978791 213428359 378389466 281515563 557154092 259333059 431606685 376046066 488117882 53706358 383646272 263320045 754458233 67524623 833758757 427087547 429812936 169359474 890768271 643092060 939144617 869815399 934504481 53101065 688851334 423490467 794471956 527856554 536872633 345031980 606758733 268048186 723836957 671127074 708909676 601080697 875676746 54336414 218890438 112772478 471847950 451272893 553032398 548330020 929524422 366143064 407822083 128033418 609346311 473923023 748295339 436795376 452638736 165012718 223018039 123669016 486250248 304303766 648544450 188377154 333254450 156299606 623840863 112686645 767389296 425037656 476927581 73029604 542081662 506021815 604560538 428414797 448054311 433587498 996481395 896430791 990055804 840644370 938819182 364208789 794867395 371661384 827142481 780121949 992992733 11724085 888309872 185736239 580558695 231715904 764504654 79457836 495301812 182533787 936920948 859868 177835011 48074315 553327571 95687178 934639062 898279838 995527228 89127105 456803721 304045636 618141045 230866027 518326414 388141154 970510702 442720809 579569508 177261442 925535373 669559064 770640927 6172567 176659679 115420641 277877615 66447124 290054990 170438186 472923632 255652506 342514593 171478610 998518532 742563488 791033988 105216711 793454529 499868471 604760225 544647045 949613105 429647760 600636873 23904348 78662188 71823255 975127566 343563455 744202086 383057836 765658328 477140387 915272833 400503118 545240539 352942588 989977019 467850243 976483616 151452513 906616414 624016148 647693379 434639213 917533482 773319687 884583761 363985759 574924388 206460413 781832664 592044980 737005960 577238552 900279922 181207226 931522724 656270848 657016127 598896663 976586714 589115233 807678194 208148100 856465174 506117748 714900681 96484618 477704214 84025366 874608216 464111435 740148070 496471690 954075733 614860054 885303590 543998271 879381999 24514992 446403114 200507310 229400986 170093668 868997660 230586082 961453024 92729752 740032854 501225214 912130861 499275822 728953269 64256242 509591125 228841903 339376398 104800881 529737450 253599800 815604131 48753710 99831182 19403335 264983084 80334179 460028423 451136059 776042848 280817620 990158283 643607927 875979767 253029971 765780120 220354747 591691563 462639753 657237232 257023741 342881263 86634698 488097442 372591773 747460715 109627780 427466907 259328169 272331297 220067017 518526632 5103806 32466516 1158950 306412076 86868488 650047522 4261566 479455918 50208970 289059119 242786114 635941976 298217780 471595344 412412438 755606808 671185984 947174783 341911036 637498411 408352092 697408130 428115085 631108084 31388013 190792480 5254487 558506979 366239950 519248191 73864365 555642897 84567549 642212590 109306241 500374361 297247394 898744350 852840154 918099029 716753178 764775145 140849694 629859260 284028609 309685403 102457108 236498525 118357038 348151546 194660306 272458524 169118196 470076894 41955963 535684154 485485411 930533546 926196548 988502542 72480128 559934171 404286911 711165415 655539289 890395768 560163986 897648414 636059341 785283374 88255127 191822842 18201646 527022340 204327106 924514609 201044767 843619224 222418135 653952480 293228381 640321704 438557382 661495754 393092464 472226185 131521806 265934406 215217187 258785305 151383869 215764980 145125742 467314847 125630443 819788938 558646658 772648344 38115170 670338868 177388620 412423298 264272498 806609945 592780349 602247241 486329771 768406551 257128001 639343610 67579446 537590826 226251250 793026543 420081400 549910422 44400843 965268730 378883960 422271873 402037490 845447459 784047674 948907172 605018684 617941240 408211446 625246359 353140491 747334434 451202303 807306894 783364051 962127292 47565416 104492152 45723004 748621700 244976500 631829863 266886475 760357527 64730616 220462893 24760043 692851040 435881402 974669725 720977887 891073993 605040225 990135894 540580790 890400696 709396705 819592345 378413339 595232651 523085198 772807842 449444171 713784344 248331693 587062132 120531648 363978635 168599921 403930807 1514335 695742492 218761225 696458793 119583116 709952690 366591262 905878281 736940575 941473692 215132866 450123783 259209292 506168592 330624053 842756653 811225497 953096987 183655085 841757294 387065903 776895779 233582482 505805143 484992564 933278783 20677015 792427984 660490552 945384933 396693447 455846421 89513587 682829985 9221520 227757842 107962026 336859741 17390409 355246326 47725395 969660281 100663321 418627041 47773551 631809017 49992719 283761224 249587948 569259400 121458038 292206094 41502850 343194312 225572193 639386522 363213 234961905 213209005 858697626 857376478 993369099 934036547 938459536 532017610 552307002 267515309 950300598 853810143 907195587 825507791 870294856 641898891 882752857 280348754 617465653 423020032 901154537 542962225 850876397 124236962 880127261 607447875 895015591 549279774 740340503 476599578 940389590 212093069 574255402 95394706 124862933 45920332 986595767 296783185 749928523 291412360 820017532 631311001 654903449 348714168 778527552 475192177 732202951 550178318 649491977 388594285 762470317 101075637 148794001 2148661 883305495 187929519 682426878 395977978 917858819 244795215 901784964 301447972 628577872 59594663 452016324 334206241 409283927 66819894 444075174 167069493 841580098 836875996 850656155 80404971 666948376 646151036 747372597 552969831 760528508 564881586 859406318 558156801 850540689 97626727 859278136 175824377 199915210 13514240 968672753 618152769 876108082 640417918 895498671 222907860 859537293 702433557 847251816 239933590 682831501 658447101 792267258 268492425 421140201 156878482 558623442 495118402 642667891 423334990 642681089 558181151 749576791 90328997 732151254 73727374 315035874 167495454 209296315 192720458 548380240 221397175 770952997 202381163 210457785 6608374 612887901 490707187 815271076 636569841 962152986 408151732 989152859 473506028 649210732 528484294 794005117 159865528 170814739 120280962 144916020 70395147 477378132 310649617 322634477 253988456 869940839 823613126 992221653 485198141 761788686 325155205 856920715 660023193 942000585 395747555 701850063 314479603 372336605 301427641 847105825 792398374 889734472 334603035 359003711 328444454 889833445 562133270 652600818 260654951 861251721 662903775 684989625 72625420 659702767 476313518 724584805 210771334 678959153 170924247 319601473 269793024 451767702 377976252 502364496 335152219 353992344 11027536 29551744 11756251 43165445 27112263 207693591 105012316 519245266 46192693 876027986 109976783 501485113 445447869 963056369 353740992 692884691 180408047 201333684 95169018 495267593 340421300 682788935 110272843 697694248 217519158 881804355 71147657 730038395 82383718 945124276 293846959 476340715 366838392 495716620 479701561 721058921 571946000 723613208 204037667 858994168 816374458 936753106 676699541 773795287 405806210 572791992 105949563 596915260 290684969 628188432 164365768 684065123 301091763 689143850 344860478 649674832 296066954 848356588 385820130 711213929 165126653 247615523 112899899 493037212 340932724 853182712 678672531 810830340 372312536 571852563 121778240 748186265 190056779 730518372 540233382 927581677 671242754 699014239 144748935 561588013 554325301 794756872 272555330 805107134 33863487 488087714 315053406 745538274 248208532 883072942 145313631 486951155 134071191 824390010 701672477 945122319 22471529 980819323 347448903 424378843 380680895 998264695 883491952 976556305 829035039 953607304 931710241 937959278 845758409 920549185 792996 425509092 323483156 380324776 308559735 639469763 387492969 425795850 201284974 817917196 661679698 667628526 416587273 656764081 315350675 691417647 328379277 828736733 356312807 396809619 350655521 867207713 241181428 466840310 448729349 594478812 352052582 543699395 419390475 493580690 166537505 937174974 603969894 846450583 518650615 779961250 338481990 467774079 219757262 628277966 102068395 129045772 45068269 506147798 410577298 506918520 426729724 641902735 191656908 291088416 129710918 798865325 617975287 682470945 267103221 374267425 279023958 971878848 855534595 976113987 681164139 907789561 856317750 885145534 880141847 951590014 499784704 932691063 327279883 363405487 825467 946715587 662196281 886923441 27842995 442089505 318045580 501487001 373566742 665140266 638716955 893940905 2538409 43511367 30623254 366864332 92427098 209811178 177109066 456897303 172572402 206670998 35032447 750603789 548891883 563612681 114041538 287200281 14567282 335359375 335143113 658745207 241316771 694893866 202086825 773025144 701518263 796318589 489714138 546351588 461204699 593196795 95050016 412629016 274905828 636295561 31453414 417224938 151526263 903229676 306366605 641570162 556034333 697527244 591857998 873081693 479520822 646561476 111360792 388001115 161772364 790413349 543261044 691284644 669116861 909006922 127791741 725086718 552268150 873685069 512159744 678118024 369926937 468538298 447552170 836265572 657131236 906952804 145222360 466205000 294796637 805269382 162926870 566839155 261119240 366029003 310387972 335853705 300195939 972104110 454236833 517678235 278143955 459043024 30994988 955526171 363861086 629912120 559429895 739114720 112120615 545553407 448401100 659632119 266459987 556319224 159632948 893539964 245660443 486292375 39756794 520490670 331077048 591143236 581510275 808404908 199490850 349770943 50556276 146430648 33843360 806924951 752035291 785774612 197285369 966981311 832710613 892175697 161854236 899145684 725720731 940287803 527998199 738353531 524682043 899405364 175678609 879588961 610169425 803227505 577654074 721156180 260473141 548817181 60537530 177407938 132429039 976925909 676626303 830005788 748417145 838365985 82347747 650619519 512795554 988949099 782921364 824299261 730647790 781463014 316081636 942401035 107746325 524557470 230925509 733083254 352481694 353140369 300671217 684272518 228674681 893441148 735213261 911371016 289155213 436420891 371137829 979614664 772475862 916583398 584090069 653279222 301512651 703757739 698995387 837388524 374370190 947725061 168060441 606886485 266186916 294949043 128721399 419324426 374000928 706976041 423676962 665237480 316151251 597902750 120355851 332220313 152928326 221781739 197911580 546745522 321293954 374835977 136727640 999850341 585369972 856499738 49633654 166089559 115347027 996047523 607788143 608654853 454754211 750958006 164367974 463712315 430693096 960842778 48550199 716980944 678291134 846056537 495649450 749010455 363981505 607522592 443378768 686071448 18917081 513807212 98280507 167040697 15922650 877739795 189352987 865719256 391116719 668380746 70963693 254362837 155941174 569758781 334507068 384562882 208818936 870050823 155530805 433754185 298857655 813515557 262434100 933230335 881999367 953155172 546837746 743379120 730463310 754791122 352510905 358163025 302377998 978326840 374501953 527117395 110772256 368616259 285349353 988017609 233750044 918171622 525291293 721358981 645711104 915310495 528806056 661344524 527843246 583287399 515986211 910066718 581557133 796818929 560535657 963623806 412076083 654668966 538453907 649619854 517856948 975244551 811898596 934728351 690964479 988796326 586760989 870933019 94996711 232844247 122578482 299560387 50506757 602344621 477411815 887009331 338126639 620244559 569877271 846438166 112524962 333982732 171407020 805239563 692843033 798115652 779961482 835417865 756658416 878371223 385184556 581552191 195380745 574829101 55770588 946939090 828643157 974211041 399671994 536392913 242623879 565279620 500362192 722523969 86941480 762810889 106893556 784763933 723484280 820812264 768556628 851803760 285258626 710625126 662181004 788041215 289571339 698456226 334019108 444805906 408360766 840192258 407961413 944177339 12457778 143552979 87596834 346769606 115598611 190189543 104095028 211246762 66129671 890331312 681395720 743836421 346986498 578683591 213230079 461454050 173555172 552018923 18543727 758200428 306296081 449423368 219113020 834704824 156020371 984004811 168748695 325100812 319753942 914071649 235575492 788266620 693801056 844223522 671730580 725963010 263941177 267034993 142000942 819499114 288395559 360071823 23350980 905973940 68678640 450263841 24825006 985806589 405063073 723162527 103210319 283751964 12459493 955681312 203442227 364570028 8212166 739509857 645133196 947853874 588211477 610209095 413136906 695664455 411314890 826996967 496654018 989181132 355840847 567938324 348081438 492431562 1670937 632635761 535145930 709618318 486928419 755974291 509427496 787406637 20362778 622003809 95350433 300384115 17243637 919240036 681987214 784834935 689885086 974969632 486758148 924112009 222434470 459434706 255316788 441171927 350219308 522580509 33503730 427243828 74453569 667953365 318271967 812289284 601818148 849238011 223924992 493596413 14472115 722272372 171480547 482120391 11572906 180190829 89497856 209102547 38950164 794326718 191389944 857599282 368719043 946410762 70988649 80140029 8157064 191070389 160824765 478988026 399754622 630994233 170010201 576367527 458214595 708453377 527088138 569717781 315560218 817498662 423588120 928595892 99783339 310424923 109719046 500903930 258829150 344585718 15116114 331539425 59807748 431470207 378115856 807792852 510051099 622625011 370503800 990073906 565372631 941095809 638577819 663073565 153161490 895285352 706990765 986797872 428778785 865142761 501877178 643136137 464961787 480741694 406416116 793725301 353091635 526257425 49170051 252192421 24040780 169253588 120224758 244620364 164062793 422368115 408237158 422995930 305556446 978233294 728245516 823345838 275747371 399588155 372936517 416117683 246927083 778567782 341957239 350647944 218000865 915290132 385712309 592474423 483988742 747722465 361863759 984790917 302050238 761491321 578097587 825226308 669763326 955957519 759844567 863851480 648227510 716531270 113304206 770395808 421298901 551348971 150148248 421939907 34738261 56821509 51282209 122478517 6106413 621035738 334998733 366203285 108240782 936711988 551620410 994033293 742962761 773262630 140803073 303831033 135154187 769773827 510485929 980736094 630486332 654721188 166722082 529099893 126968247 689963800 653925969 923336176 870776837 934367682 324728396 690831052 152446605 501111276 222951325 843643955 334178642 649135491 83871250 230979173 133860420 571727996 178441377 517748505 273221663 922168131 807441215 971234905 772513491 928260218 36494873 799245537 548809493 874043226 163885047 659862323 410132830 685245016 382384707 473149660 465004004 567624321 407934610 661368595 9925032 599339987 534310587 619387885 278577586 384592042 360564568 666484952 177603234 918573547 279661034 829345694 755264611 902771902 516135852 903900147 283607748 938666836 394683430 892267435 291746447 932417791 185629672 697885149 656683163 694655912 362605983 788298390 205884896 452997377 93758940 275634490 32168011 907766112 606577908 619799224 192741870 308975562 69612291 242289371 101333719 413046703 195809627 224611569 167647719 891568462 235281714 567123689 334654847 341607178 285521901 630437259 592734900 924830093 854509637 922048533 826345744 948852420 393472242 598854101 221782898 970398730 910618206 934524204 64565429 604631564 559857667 579847344 458302021 670167702 462352722 598584178 335341094 741377462 326690165 811699345 666374605 925854196 535355523 647835464 380719547 630960776 380010347 990433920 397704497 701411428 116665695 214963783 196264184 873002831 614622585 679041830 303880444 999630148 420983587 560215757 486498059 952622052 466752516 889385658 649240366 960591963 357529425 683547191 583959402 820007627 577772029 745805390 362992118 794136127 295542104 628830055 8135231 570299201 273292493 545581800 505768935 570884800 198336258 756720827 395885765 812766675 722571515 991983589 531565117 821047889 539588716 971452623 250968786 514331767 381296869 834672632 120540921 331446443 129497545 490344474 344161510 676106240 449652985 797401684 756865068 852083280 182162430 307533606 250518759 533479714 93963637 163464920 133278949 246954985 75049922 774976463 456838916 541545184 39910079 938783619 359094541 775081825 579190959 683273898 528588612 645505633 561314933 884059495 42448466 646836804 178499151 863374705 82182913 571248773 486562097 664041523 22351299 751322991 389043767 541593232 767982 798433779 798409525 856006393 686488288 722442980 605240340 941309857 826450874 831207606 613412159 942256442 563212735 790411464 311675693 679926988 561582460 805381227 712491352 798876934 767514285 941873012 417727549 992953889 783956530 870794808 650005466 838654340 361359448 604575300 323566555 561956615 269846080 824356626 3078070 226529617 52605174 622623297 150092521 571467188 18738231 227453682 54651273 645961534 462289839 883531870 206797034 940420780 480384917 807336665 623933202 972114440 410387658 553560410 396733238 883336891 457906234 587624310 72453332 609213473 120363404 869834908 412687156 444498150 132869111 911354323 473092502 856570635 585436998 764925506 725960054 863494080 321506830 880413663 645317541 822522046 200276113 942405348 550775695 826387722 595530221 753490319 704708987 726205854 232250640 853505874 207811118 963307943 242131144 610684732 96963061 826402259 553748034 902376584 549277725 795145660 229456047 949192902 444330720 879339719 597329793 657403116 378655469 797888355 489939558 787803786 1704284 398528219 145344095 981247155 303483895 532098247 195582533 987985731 5165910 156218697 116886724 529630689 500204008 861726865 843684649 984938689 405556270 804369976 412358147 966709259 966273526 982076262 206091792 446120338 270729892 350865524 318989185 512920661 207634130 759554448 644621131 752773634 206163331 811524211 380419485 788728381 720053941 830901348 115065141 873797419 703337213 917173759 457843679 493629862 97748321 609139445 391323033 751368220 87148162 250162742 107748128 610497709 526263043 785878668 442000826 984981888 229563042 584471657 413269433 635168285 190856683 263209275 203832146 290426499 97326232 424163669 50177471 106523653 61316003 505715385 73408786 568688464 418147556 995498403 463403435 796189875 427224504 627968440 555948211 740078130 667157455 692334027 684753937 689573005 524849645 697876968 659197350 902137583 852085334 860620064 394503261 947021173 314818459 575436656 128145441 512946847 414357863 708462544 223988708 256002220 146639866 387840872 247880934 969388076 497937352 539004076 152644353 444892862 45066949 826419875 307827320 334303342 322005852 576162736 244355996 997448245 81384676 712861687 42911632 401549785 395392091 726049328 168184131 429939644 36834195 831530803 143582497 322843389 215217631 856390336 94180385 222732804 139865691 598373989 400807773 522338122 261998013 945370149 228835544 727037351 190094309 224296937 144891284 858336389 156815408 869492828 692607817 968923156 655568971 742525732 396811669 412103756 138025172 895495299 222500933 438111721 232352960 955322296 139656303 430613182 247688530 744952420 509312178 936866213 718367580 741555669 266484241 293294741 215717410 248121366 60911641 551751730 339061949 538861337 290578852 388690247 124393097 895796759 299337278 382358963 126589947 788787791 81031289 783811833 9450656 684302679 642649362 954249729 542776358 560604330 198295453 427601835 202385261 308337081 227714011 718948809 116818047 631334195 354557298 381112499 370934981 528885121 414074245 548593182 285589180 632156472 396448196 868001605 696026102 776044258 767815420 961090683 665068463 996471833 353410233 750306905 626308348 777387258 217373531 880533606 69424451 911589973 829341060 919081965 907799999 919624729 664228659 919574839 318441115 829426579 726963028 970899364 154775039 196380585 143124455 912749726 128063335 533809399 34763703 848019090 264768671 620081208 224319368 773977821 18342719 864993609 666646680 873156559 96423161 597208152 364732921 998862123 507694624 689655075 276913727 775319840 518751443 841234021 59089540 571637582 113979779 792271014 135970357 738100733 469195641 717716014 12305086 48108769 44411955 901081367 428593621 470764960 44724619 671811011 242236142 286235643 55817707 915678729 732958807 822597390 626899542 776905380 408360301 740913726 154573337 553664560 213105555 302756262 138150872 844052199 595628391 882817795 552976630 587257598 543325489 996200034 525656693 955643603 582340726 927647820 548237757 952923603 841770601 952225935 264726424 772674061 676056612 730134350 719833533 749026291 567461026 843801327 804339767 943311446 781849900 908920845 16968429 413302833 149053846 662340727 651885552 684548691 658175967 759134060 256165684 365146450 87840235 824464428 581456568 845386768 94034301 110556892 89255119 817210157 644790020 860620866 788284897 874244853 726605507 728504624 518271278 890190071 157922489 904010643 644299609 747957716 44169955 730650086 358184747 941136774 819472785 873738971 185534065 221914783 63113893 104935022 86872428 394059053 313002365 764191074 374617882 502683037 401612684 652056917 224335805 801187016 493968801 878723266 385370061 983200035 13898319 493245306 165076522 881125784 728112246 738105457 593107390 665053769 547952285 737457027 423104949 841983935 687664380 903765685 213720632 673893268 2830818 480468667 289971978 933837249 707097986 858615033 132938124 665200041 25952190 950179372 393999463 914543141 572733170 651646387 461296463 776561902 631997040 697464985 373775513 443121528 155528067 263390844 86810488 402274767 189176459 252129607 207309655 298600649 62143868 855280501 161085527 385449733 237434516 473618620 14516238 706345236 214408180 675654797 180739097 343191801 267254432 968203015 355897063 913395242 415133306 942494678 31027190 746907655 436260182 612991466 166383123 930862094 204931717 710735673 164230473 533304127 507843217 617727213 356989110 386922948 139625735 301251893 105978039 425493796 389247261 863780989 744368648 885947776 514108265 625114817 165970031 650200241 263227757 411002089 135177232 692207481 342401815 512198099 96167611 725949517 355969160 636011036 366446948 499793288 381948338 483234571 61911525 858983359 660858058 731954437 85042089 966330787 509504901 554777307 366568687 375831335 258618133 854298262 287190606 919775689 3387188 978751417 716476883 999083242 68217620 922869837 169988673 767706135 305662680 491474171 38201560 386189687 1445361 925526520 143410347 344286410 67013420 753497378 130434091 639512601 444237457 918594001 490125200 782698839 758770740 960673976 734696139 978189496 417925660 625483335 491822012 533299279 175707005 975699476 631919529 699305127 461827794 588058033 304066066 584698254 68998481 156465249 47162167 946619443 445590777 835390218 784803551 883814570 523608506 538083455 239282447 519288182 51773193 129829908 121696592 681122600 604312905 620058669 341560928 814751448 619919422 735512545 680379611 991579928 517694043 849360815 725466039 893213159 227368654 652599182 294405058 308560708 63820690 838240681 258804642 276895449 184430603 298691827 273275974 598072645 27832356 611930896 37358039 249289361 83557331 342561170 145483077 166052009 2704282 291231719 132086025 660106536 558137258 602319314 523294295 592571225 409425755 662024087 500447196 616886975 431466515 757900486 581869126 908520709 734253871 904710340 878496958 945610883 685777979 969078468 51108170 793708749 4485785 51855945 45893091 682637110 273176593 339483414 55838381 180799320 54304600 382220018 13469393 256976170 156472322 466718467 169095717 349439024 204175537 521823643 276625366 348543775 222359152 357081107 333283556 579561076 429466825 507363993 208749304 690591193 76714376 664430107 660266332 838688833 502054078 910302582 171116676 274043371 104660189 270153490 31777946 648454351 584046756 728410847 541697822 919282672 1687230 700299293 611241748 895444876 340513802 713665554 209789478 511513649 146279342 456400664 446426725 785738631 562995269 674008981 247400470 469542804 452402989 914907930 759006697 771032346 683732607 894583808 825460902 975908799 331908370 505182419 117090694 817821344 155295546 447870570 425188386 756421022 643787185 719034168 218690043 758650245 284237071 757245240 358226516 588334768 92221909 278634730 269679194 544034926 245423947 556076471 472965983 763029886 149762329 585610680 58982425 626357814 284831637 430457939 280156518 608073031 166008549 219906217 42810887 959454712 139522602 888242734 245819194 603339713 579884299 975178385 251261204 979218197 905770848 961292424 294916081 777502852 224965600 821738128 230732305 960283724 721239452 724855033 718713724 847682603 37180381 730050777 571006674 901630604 588710143 699420178 387296879 834567268 313432559 995946816 601653577 903127677 587223037 669415276 401888286 546411163 253970995 828949737 504913428 989064849 953278235 959895605 680660673 778237733 641457035 853200411 397079537 439660453 106393284 949529035 132977230 842947582 462624349 685328176 350765831 751949562 327019704 937028156 549748095 992337884 564346719 941538750 599687190 950253701 610134937 745305648 530410985 675773360 93756710 285495293 94368962 586324868 425412321 799346650 345028042 979575192 759737206 789005741 638636211 985337340 758635815 865370112 471138665 809775241 203825000 778497131 628357487 885982513 690395611 739231206 127664558 563976654 297110136 563326147 80062102 202854208 51401362 178006319 61985495 603869787 525712038 587228241 156927818 336127164 223356451 457767536 132218511 693479188 207211416 636331156 464226436 877884943 110152690 863204316 594823185 871561341 47508385 911681405 529232311 788098312 342681586 440261498 119162833 334224186 96089168 277453487 150822835 366518293 4027460 981322977 227598005 361395428 319161885 735024806 288469509 948606567 111207279 300367780 88238768 374001570 134151916 630406392 71176111 195458321 41340480 633577313 168800265 343686846 74979829 535675045 437160658 572199990 301189686 392064757 80699526 123923777 123646976 461373373 217334664 512094598 486428837 567595459 304098687 656684237 602963051 805915558 561302051 893039269 608214629 828180985 580554923 631036650 69924164 758107413 444928885 985141549 211118970 538734182 251050810 424349271 296316540 974788321 342135985 502785715 438293193 503088041 363475826 729699646 51652129 415017433 182413515 698610087 5933144 649169159 97005818 978405041 730682823 873810074 819961441 875809740 785428808 802325662 588064572 593872692 504678832 883850024 20880705 129378987 9275980 709185343 80283273 738804519 549595516 617671963 610504173 924645929 829402694 924805993 129396463 459341681 222921728 955054352 87857983 371714761 21683434 560118350 482823420 882558935 440743724 894512854 14902467 447956121 306798394 699806935 400179092 841016922 642938309 859005044 186111202 236176592 167878450 807235279 116326695 584352687 350999854 744173129 504029068 903645853 531822978 707266872 567750065 641124778 602010167 702069212 295180551 597685963 382656683 872158738 318037271 769946536 731091049 869721892 696801712 956550433 656362504 657392956 602361758 699082713 683388220 796708867 714580654 846151437 486865281 859010736 172202227 945705864 707765402 880923670 848320543 928399331 332920489 956738332 38833181 937971178 433747536 614481158 452916420 656332568 343471851 967215199 859862660 868219012 30891922 453265708 392343244 835610880 812670552 871740431 652623377 980703482 818412575 964076969 597367119 630474141 145571192 249136229 38775073 879549988 586014768 648852714 406649377 982596356 508501730 999952641 197062456 847930005 371802609 552286557 291618011 378281729 266917584 514259510 477537467 489500045 449197116 471330175 8520882 971785468 170274383 824159386 531709306 906100081 96968406 529775827 450454930 599894602 314092126 790494806 400450262 786470795 84902530 334763128 223950350 367553415 1727363 545380411 455742943 628834417 281761439 669181821 645620642 914797611 110199501 632367862 578359452 848004647 572093065 863710574 499653791 960058886 182254338 987170491 180613621 806409153 729008769 896477085 811090965 928677592 521341519 745793550 667900894 697236926 111131731 718505460 40360093 444781210 226881833 969427178 744898204 871083019 308367766 793926771 774784719 963493035 447126848 874608445 850317204 890577338 445517073 827427081 288685111 547502541 302255152 476451607 62244741 250647427 246763727 378149805 152356374 847693757 708444082 925062638 538337054 619485205 7959847 942889057 505517324 770826523 768093136 859343331 522362842 636058070 363811589 376758260 250791173 841427450 697922892 734149364 204793147 934679247 291749909 435839335 324961210 417383928 214424955 853197728 303763193 376843263 277785339 919134527 751723866 986708954 958795052 994140623 626965824 664250357 503275233 781921603 257783776 460541449 121294809 438586428 13241128 648741890 373300716 725610198 457980658 789998982 475778583 874635258 162255618 465293335 269543201 466148997 94724512 627916314 286455031 304774194 208191600 657585470 8127391 331052135 93567877 982965945 832454128 914103287 655210479 843781358 116850144 178497232 122612585 421188728 407567285 457611435 242830624 609142651 229180800 968928007 91623629 285396737 244160184 336851111 208655946 233358597 133969396 396688376 395518788 998059195 773665262 846080919 178335347 647574908 638899912 727645843 123710836 420446640 383083453 648749845 526058303 749972137 147458597 516387158 354578323 968989815 966055085 980056275 962562530 997220861 817529039 925689428 271066153 657747969 613934548 669711267 663831506 847284043 816351014 829337864 97304815 817049202 167983010 962503467 927559122 936555561 781946947 993605819 883724865 961198776 399775880 720969418 91414555 293128698 253380407 880704720 601461216 815271693 303176833 344745281 337635287 858880591 272833047 315657312 288715282 872374527 97035378 850345421 667633350 721178198 697624145 932762766 668027240 986162351 496743527 528045602 15303439 990447984 269736762 366426810 173487100 903716067 44358480 427016267 209219943 804417730 140740053 429922818 34470086 151665203 130465252 333931437 162605507 938713841 853500270 855129778 700299211 819438104 522955118 959009112 83342994 555979435 371391006 678145080 439661159 842123873 408495138 760834853 593377065 968881873 536389042 778096948 164511622 405750115 152822006 799122872 638176456 692662043 236442954 341677538 88623612 919904158 738777923 937017655 561459444 865839329 251594620 444616550 177221184 283807800 138973744 163136212 123632833 890168728 751523899 758759354 317970868 404258805 293045313 329109790 247976690 970395897 368406570 577241530 354374590 838562015 370845129 738705263 3228105 323720957 6126741 26413144 16761895 796926494 294880473 869783840 516259860 900011451 503376119 812280978 574336405 686379060 83856297 573666020 567066885 910583632 364859611 818712977 740049147 983621116 458980105 988848983 637673896 775304266 255858236 822282015 456503867 897653619 356892044 389956224 308308472 477498183 441995847 878333697 742932879 749839000 702737088 940558768 147271104 601348051 519365132 937245466 717839729 993562302 42085496 234374146 230023350 653159054 568355652 989247605 484871000 636857815 569325712 813947486 67816621 873274088 825380621 875013976 575537458 850887182 340068583 477189590 126354578 668361936 234890965 777599895 240530181 703194300 372232645 700475798 459019941 623698847 346073583 989813270 252240503 338151576 238845411 497198448 99803832 290358777 247252310 751774346 605165306 715810794 398351110 408917159 319188813 539158729 385599848 807042959 672690596 979585874 238488723 921000843 504706566 648448815 638124955 963152223 453372034 859333149 266549615 546888975 360136895 630867504 156116534 396323459 228982687 460776929 63406405 732265120 119223356 214558800 121336572 209417270 20202779 823832512 400492968 678796730 19494473 573569622 204993906 361397739 176001374 526547352 441835210 854919095 522320891 891531455 483914636 822175761 129324680 435950688 419235542 798991045 466712941 527057639 427074888 620753500 308010609 444561075 194434011 592255945 527306743 630413419 518502696 845223968 92878584 832296518 523946262 934409058 566290318 847977295 209785875 728932651 47386260 554368368 57949433 210995316 32367575 785289287 253847618 363262061 341658717 830576573 148400540 674089580 233311492 543767379 29361084 693525794 440047112 451108626 291722148 970796777 488611892 610763138 177654291 376074527 44561452 794304810 20781700 939932802 41829568 354206701 338286523 630234877 167777060 693773638 339752410 620341358 4985981 431273173 417911001 834576149 22882068 396383438 324194329 652540072 368569109 693069016 35709169 307411500 5873351 61329435 40615642 80317294 75838502 840687740 556680867 682316789 621818039 974499567 263479111 473101858 343353937 708913895 579260325 713053874 523156418 737025774 226356233 648371207 93150697 166842438 11004229 824046862 485553080 589332847 434329625 760441968 655951259 864584988 21407352 668632794 267749284 753476841 68812386 230894853 197831562 596262581 552210835 775658116 684759583 723087665 254118348 783729714 246287126 798970571 76672464 181718307 101501578 234095592 82910263 402418005 185380355 949742556 948980406 979631772 684231734 950683367 55925135 924739123 498985063 716667521 362771837 495624748 156818117 349071881 343017034 792326655 391374920 404357860 378205324 566237329 454364247 823683004 608654860 770062850 613131305 643185772 116788751 294084872 181480019 393543800 288811887 849165155 808446625 852994493 17991618 748227108 222133282 529341406 391125722 706070052 230209937 883791286 84226799 362252713 316682133 658427390 160229093 520453893 244266207 259818629 18600589 942333410 929318433 964172210 692461931 723470757 282159852 298980558 241071389 663582298 180697415 234848058 10285502 767446086 320388429 878457224 248472512 768750715 127850918 988419964 985407348 999990072 833028812 876062236 255689328 869255058 455171127 564632753 420560083 706747311 364367032 922981456 106830565 904532197 78135309 728210400 142198353 234674366 105834234 463838993 133014575 175140624 34491449 573178686 37438712 881793924 581072219 615328204 390187202 953694621 586682336 774751974 110771609 805105740 512167449 868787887 583640656 933697231 589039577 601913683 180780974 250176225 69414006 379292691 277540685 348302471 4635255 868649654 765531337 874852689 831635028 899886428 408451345 842248387 523891750 961512432 784022627 966576554 621625915 763051530 690352780 892514414 365825278 797413198 212519933 685898374 441735136 747350495 638534798 764952646 143046580 631942721 358586883 799712674 365855015 818893612 447351769 459198656 430278210 883492391 309197839 903045363 288913684 723076345 545858239 567479367 73320019 256531569 138422297 242705243 182579813 786029999 425124724 535317877 183809899 696016867 523362657 822208935 732940032 782787606 398686127 478112696 374760519 455911726 16567421 759667036 185199346 967647787 394936660 513008086 289284215 293421180 67981601 491460389 41423766 786847361 766051884 997560420 154182719 159576435 81660980 965462375 311552680 350500225 313852815 654989124 579332751 869074660 552499124 946503158 503142002 593644578 433988431 582773086 2765348 117300571 68501046 731423708 629534111 714404780 112076265 767705980 374191929 835319204 243409138 819618437 465168909 654338137 487708229 672864459 83180987 422892239 15840069 404127100 148975478 979360729 167646683 473436332 74131768 474313870 196182720 311028294 152831730 922641179 811756476 821038035 378244663 444352902 346947027 914616532 110922743 900726665 490037802 849245676 134578488 553843297 448245533 672254206 267891218 270232006 78317022 464240759 100667687 186067996 72099769 212020205 100465442 916573678 180433378 707733915 513205180 536304503 176700702 821756275 681947176 991477373 125263682 700967155 680486373 926868200 187491331 308209316 165414995 682584748 606424734 976624982 601133177 725470552 375105353 594642259 377819212 678109873 576947252 904607156 153033567 166169870 62108430 932876667 1341180 631136164 291824895 384687758 129450261 422703974 307562484 873268559 735041575 736213105 173270164 715710635 301559395 319786294 275463706 582338807 416909189 572433323 15103947 861544314 532337497 709683897 46295153 609868876 23958051 267378764 36336722 265059597 248788874 412872688 52739549 988871501 513896733 865118776 108383940 174543330 114161261 926886446 781062736 878180695 566594280 700800491 110500349 732097224 614796094 775839488 259468862 516080848 154425776 169224562 26442987 267440705 179650529 906747722 129387319 955072664 788526747 996540490 850265510 938396579 287949807 893182282 253774175 939039299 135088373 998368170 502932772 684018373 145712684 374434805 304423376 537038931 427515479 692623050 526221945 795722344 126097807 568169065 382915501 820171437 500070135 577562838 88610119 408420160 70372252 90076135 2575176 851064824 201685515 397281676 283418357 341074715 145593943 152001931 114538915 926385449 685955992 859188923 63611189 264008713 239267337 422185495 108241229 535579691 146687958 209539017 20431932 228463600 149013076 758544487 566418977 670455472 397158587 922829469 235489868 617544778 253125495 489277822 122102897 606321781 372543245 451188916 175975413 975241178 674017515 800473403 272663513 894095506 319478001 659784098 581212507 982007377 789125950 974567789 380473584 748036481 521547638 540159183 322024318 909664491 507959339 956401564 700561211 938451397 504180337 955574065 382235834 410183981 373342210 826919163 749985473 988694755 200727782 931548080 56287197 815574983 157216825 718894478 211814187 819981568 628561284 646086792 46236110 838146848 326029012 547231831 298865214 758090866 43691640 398519869 36265535 100089164 91691222 901243317 845247730 960100609 692788995 958643543 443801031 475465662 293954326 491821996 45942534 685754815 170666130 205155227 54436111 587433959 139179462 830674956 612168169 693512059 618265699 671357540 397512537 807432165 729364612 994471811 975430774 983837091 740591360 779672647 679591426 983296836 984338 612902580 33349360 79275245 73768718 407523133 89206715 948576285 205585846 242180177 53615555 60614140 16145181 628886191 627384119 870030624 336579783 493260672 219057467 823856904 810135931 891759664 164057833 344726906 156659624 459659461 191282751 591901564 187298149 304904893 169887037 737066122 123777198 989853053 447251416 599116486 411229275 871499329 730320362 857026828 197952817 961949298 628708122 666105378 101278881 318504021 256514296 424424881 125522079 598761864 71582459 705611891 246077258 279669920 149871820 472491736 416058847 728078864 662301598 899076838 706667394 777939646 123488109 402656046 324153336 631325607 199712913 487428065 333328495 533436922 181684377 937207925 658520759 819309628 809720589 953022840 636410506 986220480 567761704 925622164 600035418 800687141 758553083 963049523 476182205 775393505 178244687 970747456 181459922 536169412 515106192 722616780 29839807 58019554 54865726 761791115 701160331 977546447 203178835 658604262 262932015 892167007 327579139 388054873 378036803 379764793 369118501 942254175 543853790 601679381 49487717 227675260 52836988 276465204 23000728 207453668 43210663 868450147 109779153 852841004 95748841 274505061 180151217 207048418 62746946 447135231 410984548 909999915 519600502 788880544 283578752 502811768 265988392 289996817 24754069 554395650 398248593 752757235 407161889 903289951 311286722 580618398 569295155 848531219 754167648 971588322 721961843 764933752 3464967 288894505 102789748 931972720 807351418 947056930 52797997 724398498 188643044 572919064 541774577 700053873 695116068 998364156 102948216 836521377 726413492 968724668 477216040 734581032 96146015 373026991 104370344 555673601 486973754 487925615 14135446 715322275 610492597 826066606 180733922 343177465 309068153 501883057 58151161 303798631 10396094 984518377 355107451 873357947 816053669 990372178 137021126 961226979 804199472 874726928 347561334 701673559 667795130 797692715 76499761 471541617 463235934 789071719 413370249 662318892 341726499 705746089 186734553 399256143 64321136 906237021 513079141 670591578 396863532 558487547 294333452 726763997 429388641 895603222 743670748 782759047 400346982 792817177 668130926 903587338 65975790 99276158 78345562 303541078 252804742 817012582 546070967 635715006 353625587 636348371 632581186 913769864 423450586 700042735 640866987 673508261 662409451 849052263 104239153 416029414 245818037 948693416 32262853 713320513 88277464 383780677 226020151 866725282 304843105 834029452 397644822 882039503 798422579 861070363 265887403 752034462 108561446 650511870 427210402 868817338 754080068 959220075 774367214 887054136 181466159 371786759 165509542 490104078 125356046 686877434 48158766 815150729 285232282 720757757 93997607 664419247 533770433 887718690 183001650 474450233 25130055 174629072 32433319 973625212 326886956 354589196 95763382 220434525 34348213 706218240 656816774 759193552 337232604 485933092 238471711 896031523 709482000 764376264 165953379 547241795 214187061 395669017 196735434 783085802 530471309 906465890 114523473 232569705 115414841 929312511 177381964 961510330 313544200 879391833 176164291 602363414 497361627 893242289 130318145 145073514 62484980 177289432 136898160 888205053 465089396 483233892 203417867 965664886 29762588 904631231 567213827 997169522 224552406 610349925 231751092 340754792 239740240 508310657 339938099 355549727 250068690 579161939 222894925 410719234 239427476 633594361 413598183 970519134 16194304 425671497 36049998 94191828 53146512 953471830 232085214 242857991 78611426 923454140 658438016 703258580 72318525 292013452 129450119 186748931 79701181 321806382 21170862 921943246 469068614 850869687 47286190 515418731 305191847 964469032 473340625 799328891 727230347 849059302 202754175 999760996 235540238 893559404 597742180 725186913 269439365 782921448 404498785 930352177 122922953 971377870 303241980 896123735 409246927 762408887 619292547 854411744 388242369 923306953 814823495 930351015 367334016 531190562 258690060 894506237 516078270 684669032 541818757 671469443 453824612 581738673 469748724 471762413 189797289 458508550 368244090 824751688 535515492 623376960 442189498 949871645 733232350 742984297 607942511 742363603 410065617 549401575 60003934 126178714 19229141 685079903 233453933 929286005 925370866 973565615 564231182 818522321 578451249 764196473 727077796 871858689 414838339 956724600 864185810 921969867 616492966 853492701 130302938 554147373 357519520 580558673 100100808 432570320 259674574 637097599 565184527 674178419 373943316 929248023 659621062 888075525 373053463 625346611 559230922 939528705 922587868 998106981 338492544 682657058 51616342 289885657 183263064 322571698 92542188 227396473 112475586 314176474 289006833 866486138 802794441 989608072 395812107 851772840 186126617 423332914 239699236 242096024 235278973 695972232 525314107 651287408 586769473 948134899 312748665 885729788 108110765 590399758 478530176 564529487 326318533 506174589 409759869 768734502 667355299 905000648 161656028 505620104 16772537 91414930 76571641 983931391 464851219 976307219 864115767 867844290 323384104 732522008 524175277 945169245 322832057 406893071 163098227 608674704 92536448 801407920 36726990 267033018 198204787 273346061 132520090 793576823 73202751 452660359 115554594 209196090 28019451 232357850 108401943 319339670 142468162 581315408 320274996 700876869 519649255 733155410 120713111 729225656 118130573 226406874 220133887 809602507 376463906 748276121 368041612 888463783 580827712 816406898 202894009 428299889 73535821 998200283 882566882 890997917 94547020 357486414 1424280 978759987 690577963 763703312 558885213 760958783 248215809 668123791 473536291 562833744 51998192 751718319 540808496 689934614 450769188 541933601 298216837 509622088 487334248 776172139 154314980 605063181 271751172 340813938 127288880 808349137 555823165 693100655 554412841 737510587 218558495 833355346 111665668 402410995 52093855 292076648 273225559 593961339 469982999 534553638 516509784 901499196 70623652 423072803 329863675 720296448 549516743 785272174 437258053 592428297 393033960 592700441 164616698 632628186 198611983 595670174 562197752 993714861 186868600 613828573 338527044 388508156 253186601 656728705 632737893 691515182 89914693 295682681 192290017 791763831 484121493 968792022 208910156 982320087 195040368 195123629 77738762 832413556 664157861 777841133 254104080 547313884 463783160 518251012 480860145 736719434 216937491 611671986 362475603 998282998 419479929 729148086 382336342 441153504 149336925 269072968 126742363 433139083 139883791 971800285 939840114 942317787 679152883 993304081 627777216 663467470 362788745 632580362 610706810 664104968 612837914 686115744 315398964 857463379 566685828 600062289 241096487 743473616 563148094 845444054 554160125 577256637 256262635 347283585 74990112 249479314 172406148 340709410 317471636 644690865 478629118 834483788 659589866 825683922 636549832 646295083 219047294 645019881 577611152 837140193 244560339 685096557 266535941 831281977 119353837 741635677 556433602 805811996 749415070 773093870 555511615 627275285 333420589 767522169 281380884 420695745 6812873 580531110 37607127 846805255 724366164 879816573 628661113 727848059 464417957 724061695 173722944 613600137 451710290 983272100 790750017 931869105 656941242 864191495 680023537 826528366 164081757 391881570 290357348 403840138 254701553 492826536 369197021 630410559 103547971 185018282 176044504 319951519 155372646 849331725 337958062 366101469 111271719 506983274 331525815 736731607 474390354 540750315 108122842 918660289 72950284 866917112 725824141 777133427 709954750 770695470 81048150 211402226 89819216 962418339 383955851 459846033 434350437 828353129 188548675 347609921 7136478 543964209 74645728 707897055 449456289 574539543 286674006 802487329 137062819 942462014 866048016 958638827 257824940 399104702 298665266 808112847 728468479 800666388 589208520 848651483 529647662 968891807 1025210 589268843 354309260 460213453 271305895 564462163 559290645 697654043 275628324 517976332 472125567 529808747 350821788 920642679 467786060 855671405 77566301 91150906 40508873 338323265 83250784 203694557 78280233 836801093 511502586 768055132 524485435 669510053 214134183 967718219 256602507 960826485 67343590 625312614 78201472 864804447 19184886 526706636 205276757 228718488 174263098 354892827 162658007 735922617 388383445 641468596 88437901 162295096 146648730 742315149 231108913 597474503 519780208 669997703 197402323 948035996 707468911 926892537 632848013 697241476 93292318 939799868 880405710 995665772 354957053 791627397 358563219 461624541 186422421 264181532 147802805 247180921 235313556 701885066 320716368 708636478 510818204 617157552 234016450 816232127 262203939 519878203 10287947 763745374 695954188 949636914 312497370 345484501 254725715 540985246 478776665 504299806 255261881 809010632 168955641 878834093 729670108 934930206 409720345 801813315 156974869 380235287 197881757 360145638 7959040 804414964 120257988 887414699 539131416 762889941 241897147 319289731 201799559 390988315 309326764 842159399 608071082 792184806 320270901 409561870 16671985 966767298 917332779 973179419 489102648 994772098 752202538 801111210 761295838 831551789 682387238 850097903 602440130 783954807 440133181 806857640 208708335 253912726 166567714 655439429 464520152 757746947 383247616 873088570 433781202 649185991 216572404 343803095 270201285 480055586 404100695 797243708 99324270 769888503 412835829 967733646 9455552 197903839 75972914 95599081 22408805 617435867 104247923 327836197 286181257 785872441 1718909 59613774 26802081 464860512 87793967 759941058 130248541 159232314 69229864 87886911 85731168 222504270 89114126 923329792 336323979 673529052 440728182 623691418 465667751 855718313 546022622 815459313 329084359 959904617 177805614 537913625 68416956 985245104 537827333 558809992 102360155 682709588 386936045 884763768 424910095 499806265 210174644 672678991 519048767 690938901 552933351 665417361 537731142 630034509 365849021 590257781 304364188 336778150 221038813 446931569 412540675 749610870 44034043 251270064 4938578 128562669 25089725 123392792 5518045 121599380 67727425 297894643 198908296 583407887 245047952 420828493 63215707 473165149 48545319 657158105 279178340 959842980 826328054 952586389 68987215 452340282 42205213 123395479 83364663 288593106 58867015 220063495 43984517 945630907 44551406 781368819 279514799 676377834 347328327 447090581 110541601 776486589 441574750 798234206 300439070 645883841 615870853 984000848 456501791 890450057 371972146 628358995 485705527 820991145 285596820 486315251 306315556 392273883 81401726 665587173 633616952 653625728 8926913 867565016 17967484 476891986 182661713 544801173 531162124 661763685 480090339 643450471 204804971 608711553 346438218 511864540 273845354 458761270 53735705 135831345 43756291 998177068 951933715 962316958 270148222 865094641 106107391 654534305 83204836 366336622 95989960 359311858 113618789 955412250 868081503 970069673 876170909 948235398 737405092 864034948 844367926 888733253 696835728 716634705 294254885 732999327 572136345 787565115 400981321 921482500 871137536 983515735 739782179 885396425 405379432 899189789 23714090 76688971 39665094 926002632 160700214 819818868 355364596 971068760 211937091 538467197 181924902 450711577 243509693 318610998 67185394 671770620 86141741 883254087 3074495 349609611 259797108 562325418 228651785 373983531 84778368 536514708 27091680 444276206 413453316 590389815 442461537 524224325 103566888 851133681 520040241 521131923 47033913 337735911 231660480 571426023 435079884 811987860 724856388 803348807 14998626 743114033 146209444 345708611 16415106 204386968 40940319 172648511 145126020 193901720 63205760 324453095 92252451 990437473 329963341 428238865 77855410 571825419 248881889 709221252 535127820 841100739 667035330 744703097 360259811 528583087 157053818 464141205 202770104 695295287 673394003 886770732 649163859 850857720 340163683 965908267 124542739 585324334 185667055 735430302 142186562 760823590 65262932 645080526 154572427 913597640 600064676 912316480 808975361 932200621 673770860 706047933 472214947 961182890 465559540 866694754 214890663 433966768 257987131 488671083 454862254 683130923 20400025 57155828 54985031 763879136 335673891 902299361 861436609 994431753 630625269 889069174 746109924 999204485 680695402 851779600 111905989 483306800 397115245 703253430 282899753 917091993 54833437 165392984 114597789 317214059 134522623 471697244 228073995 259915540 46094040 275575928 229653452 304676858 71977647 360169243 321341302 499845086 469030616 822248310 239388392 908085738 587721923 679220909 184085123 616447307 168896638 890633215 210401865 561268487 496154760 732204490 198433100 947488285 690818154 875983050 98221450 324885380 145639354 981293341 224364538 700299385 123385213 420119625 13489718 603331291 407842901 908714906 287941950 464073813 15702195 230810580 6227226 579206815 204233983 595132154 448909903 515135589 129703374 256873331 220042148 503504670 200342525 543460621 393045761 584843749 209088184 850791786 566839874 567910886 64006608 457355656 73203381 121988335 78260527 759091318 42057638 92489485 44602831 478567802 293901883 806136047 636911900 910417177 511941066 924565573 444638723 460346975 42974380 465099585 361688135 963113745 54683962 112242543 111884598 329916561 115270131 825580516 357960697 799029179 187901141 933222662 359331810 600212699 245581259 710520532 352925295 880701746 154597249 984849672 457533745 764548697 350893157 558965032 1022790 649920414 346073791 859374759 484710700 799921045 497648083 604454197 577553577 940691139 473531694 527868398 466016409 670445515 459372843 848282498 554124187 966440823 551451341 827040853 758864899 927080965 228986062 275575437 98352581 206021599 192908863 669558760 134117697 180712140 41256035 221115282 197662262 426221935 118773302 770147976 280545693 609016138 73233729 510125283 24216342 147310822 69149003 584798593 51084448 851002269 548689588 664113607 5283100 47365588 23681886 530809564 212854469 829729003 707713047 912880169 785964541 822828796 466478125 863620658 651782168 720463648 308571999 903937236 662703972 980476066 479347733 787650565 556364962 940357766 707444731 982154509 110266570 738493956 378143186 982871639 118626073 634768202 77311719 644892912 120326703 199562197 161963230 987509773 668012589 985167287 880079419 958921566 37880112 873978447 531909 248510469 19567361 576653561 42942913 262737991 90630226 537140948 418008720 659195432 396835614 840672572 11243798 844901489 696481310 720292544 536561807 904773333 658497905 838715656 671376832 894984999 403898736 966367086 164759922 489485677 26815715 655021712 370902775 971315892 897779483 929929742 175184664 239525221 43974786 765786889 497612483 931621825 758965949 919171768 787937448 835952033 451477248 736375371 269744865 482606446 181491522 926106327 401490572 406590519 282305254 405795989 100524251 985183950 523072220 626280037 516437359 953599287 750093523 888431511 708529906 812776205 467960858 569573500 471172295 674491268 357959505 780103446 471137154 804067297 428800974 700760136 351013503 509458999 422103740 755810519 125294585 930996380 494738822 557946838 30417863 414889769 187955301 365439493 83676837 390308644 79202986 356190470 249332285 386830812 70531594 488244282 119884739 374276724 254733522 459524268 193672582 421781897 80047143 627377468 571288537 892462452 266127522 527366496 41001834 271083061 156041150 216151575 164550719 511498789 12006984 216553844 27183438 361397795 29703312 40539234 15911135 463226577 445724347 696986007 22693304 71505945 48550983 606748544 192107120 967397333 356234208 886856008 523734951 722385783 136532736 492848863 12810184 417827484 207081720 480395323 231735042 930525633 771089106 855384858 566792100 778187692 341868435 825948571 111445050 446862613 291244206 581593973 120513005 622870528 76564388 367042234 273441475 752965912 34240111 291856785 82922505 455319642 93527886 969438388 104367699 371410563 134114417 966132929 379841662 625374497 154622179 536607987 421215066 795274183 65499351 828431190 113942879 755179669 300552495 688252777 66553369 325094179 141898397 657168215 299009464 818340641 635539649 908106434 788114563 861899540 363077982 720714197 701391303 775397608 161115943 328086766 238855631 541864936 335329276 575198405 283031865 412981477 161947635 387030596 198637880 286692915 152268529 268489756 244190293 860819639 455300873 763418103 748163390 836859494 419049915 722890750 132148923 523078667 159287867 458318790 343670090 790849851 620228697 965449549 797832324 869040747 252523241 940773686 374926390 749422162 308921153 677468956 274539105 937001491 397480208 499392744 242128409 529541172 473975348 734918218 195336983 525014915 127578074 456257868 248652428 342733499 44438020 379719106 108989633 602943261 428205416 771488190 684548818 717066241 651837899 841801383 530340830 803867668 234314132 817741051 293090006 565870576 316282126 321151841 304686784 602604308 593021185 822105149 426954862 585364995 240457347 329926525 226904405 878781513 72871930 491060077 454866258 594854886 198069191 672171765 595834829 825899382 404453370 750540058 204324085 558666426 490040527 756554571 465786807 962659703 406466012 845925662 98917060 935040808 731782399 810851237 425665172 694417820 445981864 759030320 202751920 657312120 208714681 484037249 428170828 607194926 224616236 995232747 232203419 529819854 170831014 278130361 81690948 400440629 326762230 378971237 203851966 604871122 488616200 917972780 356808607 808192840 415827928 876808441 708224946 871321763 399088688 449574648 404303545 428429415 203305425 571930331 93665377 226435681 102380964 540558293 4166908 435444416 156211283 863265792 138022774 703862286 703467926 800829364 792124570 903392000 711496656 786698297 651232179 807815738 358482318 462436412 315322757 550096103 123638121 720524917 390589232 510659874 206703270 822574742 602591114 856912822 347188619 915411635 837459230 883191051 104076243 636940806 60536256 88618376 29625987 305163558 94048063 460341440 223821724 786378728 64215637 706937514 474760705 495370466 331198030 564653053 283348675 612172587 437240616 953872096 169525344 288742634 144078924 259999860 13207626 167789325 102033064 114691600 71473107 444482280 291133701 425574938 40472671 506735960 486913353 608929580 533857968 829159232 340003155 694702279 30322723 121684245 49149688 643781803 19635577 469203265 12245617 722455539 219154729 461700940 86025123 189755291 60823819 126870562 52747331 137317093 126660449 885375136 521615931 826606106 331649673 957726254 867649679 950923605 342840369 830724070 130652740 550843975 50393830 132958932 2252037 150199133 29663252 392442886 360096578 454572543 205705991 565616083 405775153 543624430 266473847 975393952 509521796 643056287 17339882 696711088 627351764 879324827 109112271 318138016 95788461 308505479 183142655 546069958 220211880 570434782 332115048 603291051 99416348 194608100 140607881 883214812 49752374 768782548 449641787 861660072 822416340 875400511 602915283 632229319 500130075 546851764 486709129 816143821 61195108 284271178 55283906 965434947 387263243 407723605 371083877 457477112 347379572 809279931 439467941 603970232 478347494 981657443 777293368 882091199 460140424 938396711 898683529 901939938 47630271 519873848 107911936 427635723 173398058 302106302 196280960 386178192 89043950 151265943 9458934 398281291 9650991 625193207 370494847 962345496 91608685 460635648 245829779 344448018 76579547 943438090 896290036 967192057 96990628 828549578 812780636 861224170 219871919 874970387 253997050 763421457 283725937 298995051 134573502 424264031 81732602 790230692 241187112 339028850 42381127 78771747 64367904 928527164 517200775 818934209 212024283 434297282 103243927 166383974 15982582 548795418 45785034 102802403 71628031 106159463 90220565 334342889 83508617 244066454 47714433 67696545 55935945 153517293 130427036 403298177 240224124 772687612 595007237 683652065 607326045 665121684 662493887 715998701 663547845 869823977 383750052 403709924 140612485 184883292 25036263 239482080 90915857 889954691 600555956 845956217 152977451 954148641 271244726 826770811 436943187 989160186 139704249 159423979 41212382 217957476 130393005 170037027 128316745 429508596 352126260 767343866 370465858 574209820 561845589 672525412 207279213 408091908 220434779 611318742 91664568 251481947 215570794 301180717 76323767 232670949 140076252 508994615 383510929 727287039 515711993 712276494 673146835 866505314 479447280 576531687 30189831 551670772 544879107 745501678 716132064 953870374 674867500 762491360 8877553 949674593 367429029 893565651 270644977 979599167 878889392 949486227 677650721 776529621 462649085 916669711 425750677 595774101 71237679 399095671 93113363 293082935 40262514 619594551 560005629 704469650 408002007 922396522 748177929 944189559 643462181 670753070 375975086 478932454 142047746 333789164 309086365 861382722 377244248 957825331 709120106 873173835 120904686 683563748 301266097 525099404 433195625 696944638 568016932 741753377 273112947 323030037 155868237 913083545 155242709 473102697 228243593 254400482 26228354 859027245 798912759 845979933 336851514 548708659 328292408 927815131 889074912 898426373 117628898 547636293 354124333 511938962 407696218 945274180 845823626 857863828 699814579 784423189 472018300 763378991 666994029 780333161 155452470 981640849 575370104 949569381 693314267 825386949 677599918 895871398 774020054 820912918 579649137 967216204 600084435 815159767 584832427 840978778 267673418 435315651 108439382 591935725 531041327 769412975 554468152 847084706 145858312 604598700 81215427 673955555 61868519 259652610 215683878 704462513 314215474 478733528 4488734 825814208 603678654 618295748 508937104 560104019 329095267 760836682 506858169 612749916 201108599 953036508 524507692 755385752 441871912 523745518 90334286 174305160 42000783 755983242 267087463 717083500 222027433 976772297 624647811 986773286 131000400 451554466 29004334 982571531 408636872 711673204 32609253 828223365 439242708 985848849 164698586 483394103 399908213 729360603 196891991 963216254 795220253 868100401 68194277 746590841 475519225 964761315 142182125 953089788 67151122 506030323 325948786 727948605 454335950 838187689 485978371 514360002 71036882 726565023 646917858 704926553 510033458 638036273 393520528 505231451 101575247 588838347 223722249 895573993 6888557 442259593 98964011 688297761 323853853 998941244 642542859 659983882 108897814 162214342 54500639 634671074 323079034 545867569 326232705 899673602 310577332 996975336 621246628 705678723 54399344 507686737 336945992 424620325 351821880 818386680 215808681 548331707 158804723 230372461 224842208 507895927 118992752 501763246 495357271 762548516 384744787 939337559 248873603 985708692 256284830 539165588 117895498 228751995 2174352 28721736 19781412 657376394 341436843 659985230 488034579 656811298 187224861 672503817 330083507 632890093 607231140 663368896 449394865 729477787 283571428 745238912 433809909 681250288 193007188 967308439 246311844 876507737 666341283 931429334 315385569 784215353 530953792 544224074 178373028 754830955 746925394 932776324 292756691 855513036 742473998 872476582 171965994 612609800 602179065 742635765 205357694 910149147 581107683 925687351 320073603 961352815 385434311 825179130 411599923 694123280 521673382 735493245 272135817 716130713 685580466 877426929 94718812 976420822 594167513 604889808 231116966 260239487 34169467 755039668 145812377 421417033 256023771 853154809 455435827 878860998 248335742 579960391 98541276 350636091 16504335 639283514 367499689 757626509 544053403 574399807 334586730 404059590 114099883 941132717 591608757 662432452 77457900 804183446 99836740 954199838 637086823 842948728 485600345 678852666 346239348 600060819 256214572 634311037 487569803 764978380 570462883 798341012 347397347 850138270 197458867 949500129 910933105 990233225 393037038 451049020 111848106 694578611 383135596 890156836 148922361 666533300 227250075 986027043 772580803 998304028 141293115 244081195 235909189 953446947 915133938 939301844 223284563 689457078 127223822 445276758 92777102 324129096 111052290 229423277 137582872 349286596 293373749 400230928 271193017 737456041 574883643 838400566 436439362 633106761 77332487 871766600 467265085 822535614 350770546 661755594 453016502 865042023 315140191 884883134 623070924 997632118 609213730 631963526 220549721 363403072 217059934 556247903 8859616 592961648 542191576 721065336 91839419 797393740 717419498 795990683 249019932 509189607 374061241 737472317 351246092 731006847 283952782 500005833 37416462 646316204 206089477 714379250 235735689 267787606 147498453 824607039 575996097 753478048 670681168 736077314 255191790 388517243 258462482 300395038 123685061 556276200 214790087 984579344 508155638 811192303 614810106 701108995 252376587 280012772 89480314 472554987 305147547 556679258 35718353 982674714 182170850 668939709 97571799 316636270 263861757 747970306 124947232 293913061 281216146 824856157 734710401 872734199 291481057 857915579 266174771 960788921 1423197 775824238 610938402 972319610 23776791 166079140 130406169 369357079 179968372 797149152 663849946 669895236 485484298 688565458 3497445 190478545 111822563 401384066 323293159 898475399 411246881 679123137 599862622 976141206 530743653 777305083 331519230 654221906 558944779 642378787 374532134 562878939 455990182 619303826 42786211 658766535 428574785 568353696 506218024 954661342 812844909 859486856 678684110 926911401 806991495 923477208 848459347 855411618 333794147 868820237 804257005 828949859 498755263 839357983 142071539 967792458 508404048 779310135 70707863 88268954 83496956 439281174 112006927 797307399 605042843 935191144 157020834 741424103 372217410 680215513 462274234 649600850 10750495 816969993 88453753 171418872 49825729 914566485 277281079 311598993 175738507 233900413 218209794 833126045 827278013 951562329 153377108 420662184 383953198 416633801 136878476 820594575 355859393 857046420 457925973 641474608 492746751 849290937 238570573 543444883 380110481 756129481 189856467 635301078 163863809 203559357 19829782 695810324 22587121 707531707 661541603 958611152 273935246 839853708 6331876 252477263 80942567 975855106 549801604 867873692 75115310 826759383 117637219 836756664 706346184 982156364 714948116 907781452 380917020 635024865 362239791 500089350 1232506 428456455 95036441 316952626 88926293 384161398 270992794 699427601 210590080 987773381 100385713 985408043 339537244 964920088 596866990 704566870 527666230 712109996 656010044 930754677 707277277 911810909 103764621 664658159 493833380 719219641 138955844 226698863 43089553 218436712 143198265 194550007 17136339 227298532 198429059 996372636 336297258 558930429 5376360 425856869 207850514 357269990 65954136 331228990 235270324 582672551 203672876 848579601 434316387 658252560 229666027 392358309 260545757 687354258 16376918 432249774 139900191 994512838 193088319 204014560 194394301 780951336 575609617 966209090 953851929 994250013 370532957 785662607 556871679 984399024 812453839 932984386 891062505 913013498 282170583 701223135 261168935 322733578 79973481 482302821 256153265 618382296 571448321 715587245 125994790 990101491 518732641 729596835 48902553 650551302 229813340 282647295 278954421 326874365 98618880 171911700 72758387 431429088 218673653 538044424 8094922 63282535 44375803 758494660 128639527 382006001 202099066 639933634 603729158 790819115 248065396 360806907 22279249 381283522 40949391 595188050 437030012 829754251 77448010 245105797 73141728 823569371 236159021 927704159 557326446 904938392 402810506 576333780 221568499 480688247 471825721 603014833 160698368 803918279 273362673 800398764 256241909 714814672 135636959 669342288 131669668 623890687 161739025 577145271 210058735 360605765 70814746 346183605 291244454 700000966 72763547 338761036 82647321 877781834 223517736 389653228 93104864 958815523 601337590 848469655 613556449 652908863 406999446 484367898 54645391 771349442 469375120 799611685 571467779 609781909 473516120 985152218 32857686 323003020 249860834 983647206 532213185 996537242 81250994 104857147 35891679 217877486 136483084 679437436 436795344 670703904 627648501 673363408 475877596 568875037 53002596 672690539 88678704 177472213 4586653 334536939 282714359 308445180 241835145 269528993 163279966 283222814 181624472 314764438 294347850 703783431 404076458 856307824 126685659 477611431 123685448 578647664 165040270 431228302 354379936 537288858 388238528 810290049 735320354 983767707 106085588 382549241 289536706 433295755 39965702 304238444 288921242 874280130 350360651 814102050 157767045 785413263 660007754 835771410 632934217 858213653 94591580 408076748 224565732 714676820 641320622 920251047 897513645 944915031 99048710 954695035 651863130 902399216 829382511 912500941 728136554 728395026 79634105 456177893 244253252 645170513 580651420 945331986 694891498 850476120 845398154 913451751 112534168 121748910 16403401 613273445 603836670 747701907 364523 759520810 746788792 811395594 804071119 912088390 240035042 321451472 112835571 987178855 59845316 621325909 243831660 876640132 790483348 833143079 492888447 713356891 597942967 727153236 34176621 335806387 251217157 549156788 60419794 508769988 234221248 362736059 113729668 993017820 318658458 447058467 183652569 409225675 406073322 436649987 1870536 2264518 1673113 232099929 53407804 818804452 723832750 890413378 373149781 766507371 8466919 203137726 2193890 419911925 402076992 417094293 325971571 433805897 387848725 536260927 262063920 406458687 186097122 952347310 176387003 435738701 169715526 599777560 482944137 872054962 573777963 684303652 239026840 762931586 613384500 979590786 753697333 940988673 498375292 776390539 577071856 986971404 873132538 979589767 753379071 973410417 220142000 576115211 63693534 380791261 318397915 424921075 333458099 710951915 198781014 600149329 438879738 762606934 619405080 624751120 342756345 692449303 21115768 713814478 696815527 959405539 740488292 795395735 775316869 806003926 654349285 878194138 608451813 877228792 350912600 515611329 202293463 878583202 237471210 612891823 497575485 525625286 203599161 736512297 519884061 677146919 132337640 203686131 197722026 543938294 12575971 414597109 135077982 437765813 233327232 781617147 123952744 882178500 24286656 485786131 124759467 442877047 84461620 457719918 372113341 523267774 237532713 294783701 201967347 792799922 38558201 824711319 168621183 697939302 256916800 725365376 105484857 530998482 204183159 636249579 559027475 561195315 315163370 811973748 623480797 789057235 483508998 639790431 390069955 655027718 276834047 625396084 315389143 679128639 54113728 631872428 454508578 898990667 758402471 770547269 197612766 620420998 453922569 456928441 119040111 729131692 120252186 212607937 117607196 739366226 700815485 716054837 95485618 727505415 349702026 894965587 672678773 712717911 257657503 938565843 244691138 769713708 119012228 814262120 106099946 478589047 449577010 880204430 620382083 731639861 530961294 766446712 291643212 795053075 185948444 717045740 590612027 670486233 530518794 720220344 716401415 859362986 731352433 777370917 34993830 297684910 212469406 860273674 671702722 983632469 589004931 618048021 881840 194678013 33095889 456549062 201014365 221553983 42720592 554620876 515779751 765625538 606980957 837775878 789435077 820337678 153090151 399791895 247099503 887399320 377914651 475519063 243344900 934148061 777824676 968591054 222539369 939053405 17987818 449611494 23425938 239749187 232036411 630391037 578050187 902854854 54452449 267809015 34705073 209630946 84037888 585893122 183748356 335723205 35426121 899210716 7527588 983515418 765963343 805592357 93196370 606266767 536871028 839774539 601597448 945656621 401672631 997412648 633201997 861594689 595344011 723360386 604256638 613980072 583150041 631224277 490616510 898537651 2846016 553039764 439211045 794666525 165966132 698489859 22994660 571278989 421020145 954550232 386879075 710857321 11706841 836770480 550412329 915743452 308934181 974830501 180908300 797363952 302090999 482414471 121235377 263277313 59931069 149784402 66565280 793424895 780119037 929906569 756119781 985840736 765961072 878682972 358135330 764888243 417967598 508594355 280114562 358907564 15955470 168112469 120375615 988659232 926244985 935038588 382927666 744413741 594172374 969821233 544155240 647490491 560315786 712419159 117142189 702231072 286795787 938618219 129071240 493811036 45779617 289067919 247605431 561889192 454498961 812960341 488484410 828756645 620247351 674730748 388188627 982746816 665761498 754202469 528272313 973250625 357124418 715837829 301207530 688581320 595205151 795072579 711994735 716135766 125199439 794291684 568242758 953048568 47758019 591211220 464195822 615353540 492741266 863836587 167589053 430625214 229623275 875603417 701022836 795775966 52851024 268597378 141164388 734818512 210098290 460805964 416966978 547382098 25593411 992154950 728633847 771582436 4849982 709582748 444240244 895716387 638349698 911372227 663246506 759469674 476077590 728328444 15235450 439707476 309348373 755777709 577856943 999009047 901301012 961432646 712877488 745735961 74896007 998180036 22086164 24761264 18700091 673604302 481076302 789868931 121024702 530586725 221345367 401722005 89570239 576210242 243599402 909786718 605329658 854302421 589296347 652545704 76145670 768532114 193949047 619621340 105312280 521557627 276852160 698091074 232933290 476006565 287426071 382819100 96688802 261950045 70163293 540459894 479984225 522094819 387215244 578062003 393067057 832650946 36603534 254600038 203856887 434938707 202547372 272540230 100304175 823206210 699259654 890900329 358118619 691397070 8715271 748446743 103559456 484872763 3342306 620449669 601419573 976663367 319741773 924730179 182625426 248088717 130706038 771404032 730578851 951555402 538500948 633308045 24884218 869008780 558197910 793059633 42084444 678026043 611753129 715223627 300164038 865753574 666825828 957655066 948617893 972859510 858053923 928225968 666151369 903565923 12815818 610420712 439927038 480010263 380506449 386303333 236388606 907704821 254500234 921949368 677405802 753862123 69144882 596208358 486595811 919617680 417498832 821602829 345952622 488966401 368310837 551189788 207494365 450027062 225170659 369646799 343655075 971246112 356867863 604497479 7579220 63039665 6597105 9173637 7391725 15308236 2304905 374465202 58908103 250274629 121446005 992074044 574708373 881052654 441200453 995952600 43392346 649000204 205614529 874484112 105538844 320381084 23880887 530068027 46647037 818811090 636098515 665123619 665066666 898345738 202829863 904578186 433482599 441702015 241253822 486631687 181276824 595848168 402591480 890577169 117204873 659442374 185424120 345876677 31388499 447936134 336739067 440252737 306552397 806734554 590614048 977835329 194751652 441662592 45281276 125222269 122812309 627353675 236465759 557991000 369892531 448585833 92595505 632612578 69851153 146654779 73406118 83195119 81092081 831646135 444757035 820903351 87583577 391730045 52282836 323658047 150154151 570418106 253417069 470863369 165932508 489615123 280798812 832255721 491852911 502665316 403501769 486722442 433593934 788296918 86908418 595472389 440008249 654821180 81082884 503144151 289336219 291984261 192827271 557822560 265751816 636645397 135068702 881990202 344327958 469002639 363684501 840897260 659842081 788007573 150351369 791420478 30845342 722986759 661472713 976329456 520202643 795479422 415456828 466206085 414804645 899644696 409142673 482667121 249828921 950220344 642208509 960147626 803742176 962541067 457254513 863173072 58208760 493133650 299446116 492948484 23542092 598027449 372773627 604399584 385172039 667542020 422287551 933563869 734471293 959114262 623221568 874626964 130744697 220333557 60001766 891840861 353523165 522447406 414949025 620070073 260586765 528010669 81128807 840543208 24171095 141535178 92733317 186549274 48284720 835999476 682786279 763930161 116173910 201281478 91502351 194848598 29213329 770515075 515231671 971533163 694047538 813281629 98635453 221219002 154114572 366009080 220237827 898662132 200154097 871253042 449722771 771506601 551713598 794718091 188174630 420740298 168065598 487543668 403735808 508745530 94743915 719257771 255532712 835688136 530053983 924835337 703487910 780169672 367014067 995330134 243196647 864405118 231042655 926594805 159306714 643827917 220631865 922680553 708149381 796746609 439837024 855629039 773258339 860732515 35251092 671480909 531889818 976256081 243470820 997795999 860741710 899934610 180778742 812453769 667187215 822421041 565319782 580889853 112082391 961412909 423297189 995468330 196160453 844813872 240236582 416152798 186363604 249960052 134241601 670810254 6267776 742917574 616396806 892479324 707165777 824881215 351557472 672789781 78745017 711676498 27290841 547549568 313451381 519830308 496606238 553278205 346035847 778166460 89671490 640134625 103347620 242600439 45768019 332821582 247327330 524863869 113452488 420117116 397552525 622339240 60505622 893715029 361631044 429490303 247473695 663134960 26512578 398196258 176477676 300363970 31809470 694175404 15445561 609764899 361975308 897441186 396890049 446564592 406896771 651956070 627855473 675074770 384554107 579518351 15817199 905846150 389542650 905444420 890237351 964695750 599493060 747549927 49345929 356225488 142837596 631950874 610872223 813954313 509395704 517370091 397021270 458897741 100476516 370541516 292029300 666871430 213281262 597651932 523257662 554312518 376800148 808927145 129163245 627510854 577953737 709274327 229192773 607030699 53928702 652714132 319702943 566017577 446516605 470776663 198586180 683078407 283896696 677915102 273764923 473348969 80397086 163129452 88388106 827228368 352300468 950207623 616246414 662403103 83092552 845765073 464851967 803228870 547104629 904710710 141081640 208839413 17327211 471623798 44231824 756792541 365252701 431292842 95480514 159390202 18205785 233035488 186805142 540625782 320411688 376459644 173788348 974197327 430709339 559619635 548727758 588090880 357557620 506433814 438073608 789579387 683696161 852367124 161955232 863003679 542462472 834795987 686489593 904321782 373530180 660671768 599085607 716361640 193501260 788332502 266083227 541495989 233448130 626606003 143551752 691831268 56775389 73248734 46635404 719242017 207166052 982232246 173156200 653842390 217843155 249113711 139778196 305522652 127214716 463228745 428472253 583613841 529593024 782268000 405970248 721968127 472406352 530557267 185795337 342618278 238287068 359680957 308520676 732071081 178406630 262927497 9373189 924201816 18877530 435944546 192436560 724907764 173933604 344879131 255007949 296326240 255546895 681243796 374171778 490211369 87777076 727860472 377186063 598717881 498422343 844661306 447546397 511707469 196588163 904034793 108260004 270906026 63362220 184813537 107997417 179475906 132382755 390540579 379100744 878698594 282430082 995677103 355844928 712083040 252673700 579607063 212188241 290425049 28255780 992761963 525376107 685187013 241750576 485136856 275498922 386499966 295626857 675556048 89204486 122925451 51382740 669243155 184023585 568335828 368246181 690777834 686676804 760515174 105151093 865791682 597236788 992178375 484032205 705041504 648289676 825308947 646311226 956185181 96073034 277876991 42436821 942059398 920517156 976787344 419637844 657001497 259081347 425694605 220996676 825536860 780516571 908906590 354727916 930396406 76509056 167743527 130936095 502887272 490886191 539597378 78530852 338514280 70021224 789432305 635919320 728735900 681500779 884309070 482086634 591929024 383400195 569030914 24170667 405531652 16767792 450213932 274868292 553131003 62551105 729951435 400151068 831752870 184655613 367982911 166144929 456811329 397548915 487155680 3433359 506622540 338657292 654527614 203754268 428674057 364864712 930880741 477187282 754858555 426700359 580862188 479191857 902527149 660790004 838221174 20741634 624588253 128738198 431854025 385922771 835600020 714304241 833271222 592742377 871767326 626458611 960610494 705507075 925849118 853828985 919455445 401616734 431090561 263341694 925498605 889629558 988974617 323391798 611426788 391000508 544244417 369880047 559774004 290659570 794498611 737332747 949670636 238481298 699581926 446116700 590363219 3164537 122966497 71724127 153602130 20313264 674365969 55669849 919750110 565685975 921318292 671630947 930654892 445758587 823935656 219925597 427946644 414817249 907782614 252206274 813778294 227446899 289730368 211532860 824338802 512381654 807882229 703639791 855589016 236162406 675050496 602693804 612466944 457414643 598006113 581642982 841237270 292367162 822522877 387298215 442585701 408272137 980681849 43940754 576182920 53444002 892896336 281836193 528887330 411280868 624845007 274504989 982592946 583727326 855987474 525870989 915474653 685899839 820530376 750315052 789346148 360562061 727886955 330051748 952517644 267895609 573550050 488354094 703342889 32932949 305615560 130778585 840536248 369983386 605645748 374665655 898749099 743104483 856369470 701808351 873455884 608134886 870961066 493420227 531857951 167087094 270818885 54095275 655312264 461238932 694691755 78753054 735940112 73651501 712457052 535434924 860220147 6072044 941146551 682137260 852987009 754615234 999212132 930293230 993834727 901429607 967999116 129788900 733446488 347358931 756039682 265397009 978673941 716106975 956087013 807469884 920735573 21629824 257953971 92645537 912684241 353103230 979847702 970100295 983531387 80239663 430241294 199874668 893288002 233146822 287437601 246042941 720273597 398421983 518967420 38134034 599345138 349817216 948195847 174637436 969297899 167236721 469276637 407952621 611687089 143168580 229873080 93425617 260536586 131309208 548051526 225299882 746126933 694587451 889519635 116196708 722065785 69273329 912930832 458373692 813827256 184569336 522344583 414734436 650478425 381514305 610536600 552493167 862811058 785705570 830554137 524317120 708798186 82240014 986312397 290537691 559311525 504996183 967904893 344656687 981387889 582428335 860071504 65201155 886829245 524756635 529946435 191510385 491898190 84266658 699775853 185127265 571567449 238131355 429980406 297152261 438351354 25648221 776751237 389534922 432680289 93067061 241395501 225223642 725030597 466832575 808890062 786056572 886532861 577016197 988607205 563538788 869939710 463239308 690469198 94070852 837992715 458236426 904168709 344080834 534644730 339862933 345131516 49691302 922593569 750754733 807124887 268291119 992948022 193366309 995742111 169582067 860705981 700350072 771436093 503861617 978499596 691459072 982162876 185521926 497111401 328522796 449817253 431644496 546436534 84476243 482642687 459278453 620441655 332111675 436644791 32448141 570145997 334860618 661190047 549705814 804876358 714038324 778480963 413872501 674158270 141366636 588473001 269192984 792443311 732425199 843458178 124055932 806108512 577372526 826136002 460821910 653084907 70038412 856145357 708653522 913574341 615665809 979272106 270871853 509047575 327834543 552111389 346316264 585633676 269968501 312886819 39227696 224795849 17588675 40878386 28598857 181303339 135578604 652175306 133878971 544738126 399409421 532495883 485496680 642717267 386878931 659332070 188831205 730481395 211180204 464994666 53917419 53964944 43587647 599745007 523713357 606965332 91205523 414602256 45916824 978235517 582811419 889994478 317504818 775012334 315937418 925954575 866752939 971988158 292405684 695421370 413577182 595653386 472632930 556769842 94872830 607001533 568537110 734530308 407844021 604827529 148624728 438169390 138058840 499650727 258381352 303735189 176425387 652116305 548963549 773313632 274440185 716190641 669934583 858901116 58568332 971325781 621952568 731666363 437242380 954082074 23228851 985976295 977168551 994140240 980942770 997658239 799974116 989120546 425153588 874405932 348316615 620366992 286931436 542209221 209068520 486166757 8729047 474678888 256768845 579946853 234243933 956707829 656371349 817630834 462512126 685534617 397739192 985713086 809241753 811578958 48672413 492133128 391015640 465520761 414928886 466837639 350017539 353156119 113348014 631280516 324598207 630816303 27121539 625438218 224195828 595802690 159329813 905123503 43223482 891028425 382469673 511079844 47642295 773904813 358339534 677639264 453074995 884370140 223977861 411593124 62150236 425464743 194279407 497417005 482649575 602684833 174907398 177776463 118274555 157525448 118526134 787707689 189951264 964079117 498956383 795526025 11323428 351905670 273769538 665839868 621255910 667220510 208732448 255256571 28405227 875634409 293339082 622762432 558631368 993898848 214432919 711647481 706652828 980256346 104608639 464714458 381500609 701721513 185486309 555007266 91537112 210705823 157370201 540483113 415456510 744765039 199612169 205824866 7993791 74786360 69850777 628494737 65140638 530230184 321911933 716045152 134884533 790013474 655915133 978736697 388339307 533177611 386190522 972752677 248509250 837671823 770299965 802136397 267488592 798133900 320129669 639758505 311827398 473933709 327023216 516583489 156222033 728445639 697130043 758138540 122113579 455044545 188823202 981347017 647910883 953831308 717709738 863008858 115526358 402493696 64207511 393887130 255255094 500819924 288445306 296063669 152945006 250477492 162199629 491898501 486764241 732548288 540379764 654863424 343389039 689692174 626151322 660594365 422120265 721552319 555883531 846376797 134780335 624816098 419329870 592025568 113189779 278436323 55631413 206703957 40284043 388552400 312437137 447597206 110622398 805894903 198864737 442919884 136009787 184998395 64563316 653969675 156782759 373460972 49465752 318348905 300713726 492572180 322298018 451619690 198441690 367239373 15882779 447347569 389841674 688736226 19088508 818819053 595123807 706731367 549539853 977706620 675019646 724499203 84873984 518722514 374811208 489910850 223368512 626559586 491441939 890263429 213938397 739983982 479308871 515190070 167301844 436735134 398980330 445510843 86566972 599293342 486834677 904299792 811917272 872105624 413667337 443844063 261352299 666562434 61256642 595739301 496738200 933072237 35712962 442158614 424613010 641401993 486516702 607378340 250216073 620060846 507300649 509727666 50501483 206009373 156128708 481161094 435468400 878220704 742384717 860694469 344134786 957362058 85931457 753798014 690473314 927065631 882114682 986342585 150488367 442123234 406533272 644114770 583987778 897656716 546704904 753462243 138143809 353568594 172937979 791928323 523631662 643233347 244038750 286190225 118263534 990839553 567175763 639303084 210585545 971757792 817046789 972434604 82784611 539964319 535033038 634994350 408940687 749151622 743890843 854675147 383538422 558928800 246429648 817027890 359087767 520457348 147420702 260044884 70457304 920070048 848810600 998414318 775463874 941075814 869237015 928200242 433131329 902955790 690210131 831062717 408726805 448728110 334803803 919671725 739680612 844521724 247010460 286468056 138652412 847059649 669518416 812207951 357882654 607156120 347618428 736900867 306298947 536087511 187300126 337440801 5275572 292937503 50996359 239279054 123081815 188598818 48785877 57519367 55736350 258638760 116497076 690268874 339659929 409182120 282490885 481165350 191626409 416150745 348914902 695412773 71320415 472277197 230010381 997297321 248904013 386217023 150917737 276391698 125584206 885383281 611907650 681106547 188539288 696385926 165664364 186053451 17544327 956736198 704827706 868881577 448863991 588942660 574037712 913209711 435434962 585543516 445686037 601294899 250652152 480140412 342972296 650023584 550711072 803565841 122512956 821352837 18178434 525817055 297897729 857395404 130600633 723002612 670119860 821484564 83526026 479770318 188979240 620105374 353647845 847894568 432969716 874646275 500046819 694952261 586132153 737715463 391795015 477185770 309578739 962900107 626004642 801075180 27206306 941173392 3888946 360229474 165850836 572711046 95353603 587798939 313193347 500695045 353612486 553474848 410109644 737656529 715545417 943672767 260087086 762490700 177257860 396505372 41743579 556006582 484178061 667081336 344384044 513327168 142867645 782903321 63123899 269675274 21566664 436878736 65125687 810736414 552322433 759057514 225998596 472591807 69436728 689359849 61136834 357715608 280199753 762429898 399413392 831276772 624499241 676615524 477528107 967404810 222389800 937471595 262915284 642028062 427847119 623835025 430695767 760379243 573124485 685922117 632012834 926286016 430067535 803537862 213711434 635210120 490964178 752662617 562578596 954323859 175784638 263419666 216496324 605718649 101144302 969966512 460346385 820076242 449448984 939369931 596539795 913814922 192593580 533317097 394112105 782877294 613207669 833854488 347985127 877039141 115348818 999018201 613422890 718670239 602353655 857405386 768237058 991640761 706146818 824872213 680125259 940584130 266675144 297848978 265052305 477950925 370290711 572651382 489785961 779271587 197313233 966452443 540002408 870121953 49533465 274690184 50554174 880097308 356220180 914602378 263964347 277569162 229628410 539528689 393539357 751579425 675216272 765635597 479242095 908014120 293155501 507210927 246528105 531007825 202721652 451662302 87888742 183385754 55180439 857797634 835450808 928828478 451496981 733788541 513543075 932003891 247321477 579560160 354493597 817932441 105585343 449670395 263455419 979498523 590749636 623308155 427827522 809384587 771423708 848171588 154583804 488349135 429958391 966516625 7855121 45069892 11415988 451996832 361628949 832079621 154835038 586162726 163171131 715407711 310133188 475943359 244582784 315848305 31489965 309024896 61902005 747685933 135799688 149359789 87343343 494119289 345495435 522764118 86123733 224203010 220509646 309936152 36684650 706587823 535191014 992430974 588472999 615545818 167161963 861106544 38921453 512173137 141849135 363486008 294224836 600974302 496578906 737687515 306708581 908891369 809082587 868758681 348008474 632907125 92803665 505545753 293708935 778339104 561436095 821850055 792231615 980423144 482896175 547130617 92410391 254078631 120547296 483205769 32830152 737225553 655377049 668367718 299999314 466477004 54791385 314189081 86996780 91907164 11286371 161512553 57862890 745071811 405424934 554401712 307031057 390995285 103325347 480685215 29983338 745898941 321846738 624863696 345460113 893021671 377062023 674588871 177889861 376614927 132866569 320839997 155040855 226120781 101694341 196567674 45626846 440390377 299582746 309555914 44703024 514474595 471851631 622380163 64430053 946850409 567688273 977877627 799792647 834179505 690665949 925662342 763149892 912714240 468208400 566632147 182514868 990186087 855842734 991343396 582791673 796951121 363358786 457665837 94917979 121235387 81328612 901494092 768948303 851222132 571612731 603795361 599858681 761180594 472591292 860812387 373781731 759479819 571965013 639273338 530650747 672435059 670196783 918625194 83403388 664306199 55226249 561789954 169762748 287831601 35749308 536225907 465928621 720439711 86071026 537629437 519582422 916249668 135875029 779523541 235822433 300232658 261174542 791779443 267294658 727897654 196607440 386424122 274169169 648831132 640319100 641629531 54219221 420287646 66273315 747459657 297783100 753753979 337396868 691987923 410716184 773114487 299986305 426813095 420682642 890048511 515488114 877014235 469718566 816084024 659038283 967752805 570246860 932527690 883075283 933951344 457439717 974095728 207957131 970823576 779097899 982590443 180939752 726236110 342448287 807340087 241496255 441474772 34905166 787425689 42255336 371856080 144183782 221712854 38395885 225987161 124316837 958179703 303610532 691971522 214716180 931573384 369380976 530454163 866408 46152589 43492028 801636737 105229944 834184753 293278575 875607992 178232092 383256729 148857323 372908670 144479137 296975143 141925731 320288869 141166808 571987296 551195665 697809975 366679396 409328754 339995743 839601088 425831749 970006258 95938116 985119337 147295793 372792799 96040070 818620393 434870086 697691601 122597112 142676554 51284657 983355826 33697630 302325557 80562551 775325043 199616620 276994666 164069234 205984053 55056480 952532683 627404822 843437941 749357012 994384226 209380971 237501631 16251948 719642719 443940728 779288775 299863013 858772759 79715088 473593358 316828187 754237233 197301034 934004533 747988607 822396942 230516147 747536544 574499335 768838081 665266686 916084458 571627753 924473713 709926474 957047602 591431520 926605421 142262270 895944675 91811113 734562016 397184625 991791020 773827813 942304383 758362236 976025219 632273477 970754935 625961395 972270893 805317126 927323861 767741147 854670021 24823155 680573671 168253194 353939243 181588281 893632395 147914526 712899884 302835440 811043370 334491031 656917773 44320204 107595623 57125725 143351064 100898941 471270929 320842996 961421207 912658416 969605175 202698040 790595529 54404582 95910498 40763137 703525889 468518520 613762069 86456164 787570429 784070227 821730417 365644025 544007626 507263127 943332024 855997012 928902649 297695096 621383948 72787515 892140193 216287234 587428161 351589771 820404383 816913648 893656747 817163683 855580643 470953600 949827425 606078367 969437681 101834174 669808365 569321168 572807809 505041270 769286485 538422671 739404237 196224115 969246564 440567842 637647009 535378574 630741216 189943681 922188971 82840152 606301975 47360469 259440689 235639561 593873121 221228198 421977247 164988192 474836850 125294740 826189341 200251054 410491160 80571180 640564005 21808552 722307262 10116615 905968012 253402874 751087871 518403799 939570596 858792759 999521326 514919591 778892921 201800401 785458877 328398507 761973606 436027935 474477010 318325552 334832646 220591310 511253038 357903324 973869916 465515833 578898874 194534943 280937292 88705180 310302121 139519123 926699265 495980280 855577300 711230953 747837998 183188868 576098161 462650687 729183456 135335237 417223728 146691267 345663724 279474358 708433480 640856416 808131739 301494382 322794358 83617694 641192130 61584235 678634481 39907054 957218823 535183541 931141087 541251841 737910082 542895019 603038873 572723673 625771304 239336286 326359414 261450069 474897338 25559558 369015432 296647745 870067128 185865725 323426183 31941297 433550947 288309012 528193538 179918391 392244223 151417067 870916699 322871201 634905476 160529770 645991418 239654786 940572462 20899515 655990572 331469776 364515568 359468018 473356604 443920247 557068136 400487684 825104265 654357660 950739011 770066920 843661551 674159312 946789819 115401887 675810536 548733334 960537968 422405247 729676815 481518627 519465582 473754917 732246986 700745928 935487421 473186389 963815022 756459413 801334173 794406346 939055893 29629107 434227231 88521715 165545410 157849582 910772294 375938285 762005032 649624557 661983930 515113090 740123171 661243585 930715544 289139115 315255103 260460411 612437323 281188900 607699940 4573809 657357209 653933628 977161996 645953569 840230463 543199343 830628285 406973405 474979430 347242528 622585525 117471887 475876030 69384146 889096111 515397368 941657289 540605423 615167970 454006367 530628125 486277573 676479992 172103087 863080799 637094387 887788295 126957201 907484791 573633304 979578166 156078609 848541656 717824659 807130707 455363146 765093788 500466089 634559194 130092285 382348613 8667503 782056787 693643404 741269467 260773829 717171566 396742716 724702745 39921123 160784411 4502778 46739697 30094271 273688980 159044405 515878721 315419064 740694056 226103676 493996722 270474127 550221388 532780420 772397061 372752213 935997881 895543829 999561291 854006608 887666425 565067984 767283828 38299851 188973357 148995342 801888958 599527627 691548686 405764101 445408618 187845248 471714014 63137214 395707392 356398306 442484765 199410920 312574443 226350475 865243655 781200903 889887996 886607919 974269561 347536099 877869336 614961305 670580196 154443841 500170714 200003500 675717336 141989762 807655764 6360577 473743217 390764238 623512864 4789529 311113517 216243241 951529435 262751296 325476536 313531224 516244815 212362371 331745457 173001659 177244691 81414431 158902328 62457897 530228430 90404535 856631646 478153307 874618640 692610073 846873519 538401074 582968316 403353563 996146886 470212054 907720338 148769675 406925115 119033101 331693800 206020222 908958932 323743766 394920352 379956213 570600417 227329763 286232082 152719812 573797033 53218993 296476040 250006082 923759237 785457597 975774403 475857256 837915199 381572196 947338754 448341088 811422663 718903170 878732430 564606571 651995819 303126135 859651562 97787127 964539090 614441336 788998284 620102897 832505899 116437541 863999409 301058559 985417340 874308121 928464140 362913999 828312337 399532607 641442256 263273641 281362291 265476028 840959202 73476132 186050096 154838195 434766505 323146612 736890195 169612240 334979273 69613037 670133660 243542602 895720659 570996317 594790117 435586364 651817176 602430137 933775350 729234387 957888230 505867991 971523515 46826730 828434708 104969116 513192615 163910279 353426887 5081013 794586330 642853187 747517436 641779191 816984497 47526453 967674709 936321342 962659658 438677482 714375148 593187492 796323559 426414296 986545997 606857903 897747814 124473775 515871574 376698121 867001803 538073470 570142839 82351174 245803284 180417084 329943496 16571237 397044108 86806986 443026096 63357144 857704472 170967991 673494295 39011321 39195162 17812035 46508486 14535458 490149830 79303793 468060266 121742389 490000576 479050686 896406292 352407048 777661130 119508852 972998951 190115702 484610598 328267504 505427975 373322994 604470925 199295654 735151674 648539985 722583035 490048593 665266535 379436371 857566113 719717203 833928279 334736532 732728126 541070469 931032760 536078285 716007174 393672905 838836254 345551823 636131836 106359200 473829366 67213555 800768824 218178703 290268097 163312510 341709537 78117085 360303408 194671897 999804582 371949493 673416429 83585864 178214713 129510962 418708722 23169118 395614642 24291640 716873309 675254088 893106456 7945610 34423139 29601475 965746654 255353510 304056066 259542 173906149 135647670 384056732 229452415 996151915 516672532 849958332 760579901 997644051 627462514 991140934 689470979 923650666 883546454 990911171 237131857 687162207 78836035 247805408 153948589 381156237 214945031 988298152 540800129 934847945 710477841 831177908 784990845 834234351 186075198 405362481 343322779 759893002 395462380 905093240 65931675 592782497 407370336 552212294 89959931 106335339 88183079 735823980 664719213 917805036 420912133 656650170 49755546 568381077 11600069 309250325 47711312 233597636 220803638 924935918 820707185 991135153 209098514 884293927 530925780 724917840 49114262 412550071 109498691 336631675 65273889 368306015 114794886 588211051 377043611 577502165 369305061 842322106 379142743 532316346 3241952 808372119 521713866 784349717 66600192 675687198 42411532 366661118 115886729 811491423 156729673 249947164 131052064 726441077 693282106 799063167 777539337 979828333 609268640 956344352 855587907 877675015 568190188 585476190 526922364 811487714 393370373 801774071 709770866 861667193 270402902 615900775 395587760 673393537 145098193 562813532 328255793 823482291 345182193 461021120 336830405 810419671 678797275 785020950 716611343 818197574 180504308 947675309 30283706 326731083 324012302 710623501 505158413 708427702 532223004 933326628 793470722 987789645 639217899 735839771 7350962 742257480 707542455 815125949 172606256 528722734 327154880 647398206 305158561 465066563 190065029 958321167 861029237 953123355 240947116 781391707 408636227 722735604 453460123 472545848 408917920 962857849 839573311 936932301 467067248 695244475 322298802 852964557 278840809 547180833 543623984 650725567 349917689 411370433 312241710 626357017 447824508 910322522 909304707 951665884 774146341 789349634 547539719 820505305 593877815 690832610 61252017 467768093 213837232 264255754 204360559 654043203 616119210 747087015 24071642 211758571 162832736 587512903 180286234 911796559 503052951 999590345 323258300 943217202 143310450 853819811 435728299 961316435 390731130 941384016 179870588 536158870 369911817 447612095 325632015 372021466 28862640 698367406 688505900 865558428 686618397 942759156 849189853 988898516 747077552 983145978 595400825 732306915 542145535 723857956 435458916 720336871 373486056 415547792 164481474 732081023 21239787 241895068 79413564 833002350 437670194 971303061 495363 171437738 95407264 707834318 671208229 885637630 443648149 922012071 414246103 491534779 100861769 627731880 402783428 774686965 383832713 725838033 103185656 338494072 158266051 878161742 752159741 851037191 249922002 592610561 382190607 777529515 636785552 639635121 19098093 354700433 272862286 457443363 208604260 630187014 491156641 918533338 832542055 907907896 115052381 540869758 319982554 627805607 590377546 708884690 635662211 645934991 525053818 677463792 242862015 937089109 84422633 921594943 373842793 576765365 299207008 588006855 175679430 562752873 319401404 723621216 2735862 90457125 82249731 785967949 391591511 527110195 420005237 895523488 130379277 573793539 261343784 970786506 465030601 947429494 677910574 734089129 304195996 579040253 330291921 832449641 424767312 716828320 704591922 978511160 418450698 482719667 250943532 364360690 187281182 376225026 175532415 880489840 360983755 482305660 19832271 346100665 318185212 485990322 472376721 974419832 923113729 980903927 789627473 800490267 456612801 972064994 381083428 533578135 344736170 687477249 207015213 856816627 842777946 897029660 244734108 387464318 280097423 609329081 225634115 446982248 408151800 834426722 35739505 467926432 40997515 588844769 121749450 367755598 143307561 433468669 82204905 416443192 183563459 454588783 92199634 270956431 207556571 378008947 338214152 965708960 430622568 461268850 422111877 575628402 443650446 797165179 76551532 380308592 705940 50014582 34737928 252247322 69694314 576053123 573551837 908943581 741328082 900079703 578604788 914894868 119545276 988412579 119168776 245532889 10207044 464304170 109406333 908150719 312725237 769938953 55277625 559838189 10808311 586145217 388826815 605100796 423492858 898883831 609614442 866699688 333276445 452653554 380813397 714529102 228911929 572861998 130984758 894915766 59674673 702434503 345093676 569769231 178166615 505708419 51354932 982544644 846147565 926925302 736808503 859061747 602841627 833576329 132243920 582539400 580488126 773396024 575983369 850176283 36186706 907821255 365090918 701653016 667348255 704119055 639736120 766045182 214637650 963193765 476040302 781097710 533947637 923694353 675283720 786512431 118747957 736551319 143810470 620093711 89777918 785836475 386783146 773226834 593632235 708164474 346359047 768455864 350568484 417353544 242651242 390776156 155923241 692067023 111274427 492854482 21040774 71658951 42749660 539295151 142811831 629981155 315254433 364575301 105237019 949588048 453894470 619260693 491535926 850982697 699736764 867791528 640564799 829365390 738339862 886457642 190542293 378250476 62679582 838385997 582957652 975905420 720652674 913948117 308154683 473979742 295604486 918467678 465299939 695634426 19378605 871309099 796552708 861743962 558631032 720897364 666131021 777260762 497947327 623392087 140435365 691891290 293680164 666467223 382404910 832564403 461901236 801789915 386205418 597046663 569386012 885842245 527381396 850286278 138204852 587462132 537711777 550874841 225200843 500031592 175695372 287740950 91823302 869820284 869412028 959887784 781414472 931810365 213952152 438562433 170249555 305340742 253606969 895802725 427651547 942594161 430174015 643619957 85319035 633453902 325862749 409510525 60858455 803394189 440712135 583905620 560011055 747538382 373189566 562474358 279966184 477313502 213575440 491758593 279884 273515180 182546892 895317011 454459894 849896945 474078689 927765065 153354380 217432904 184506082 769782095 559269306 915270245 632050736 983952039 823152629 962444522 110015255 940756397 193263071 580740627 432848036 987998459 751660052 786474374 543472546 549678215 1184491 946224508 533195771 948280936 234156711 348791691 344808899 540006533 308593017 907165299 122807080 231202797 175284017 965147276 318677973 423347877 24970028 822310786 185607978 819113039 54878266 177066828 148644924 782234463 306401115 877530009 788416852 874807289 305279887 763894389 744992405 893874795 328147752 459074842 6955225 675861422 225409510 899919893 161731413 316908967 142421474 863687837 544033534 714948232 136804566 395952794 219234639 987933149 401729036 778415734 533251609 776717245 483696832 976953064 476258420 545518007 156818360 319988575 279514891 646004433 220784369 455233067 329773119 330963770 220896352 353304305 119458707 972190878 306311100 755502161 427964109 840643958 620209138 746017241 347155354 834911751 329776251 635845516 35059950 241326105 41143699 243217679 41469416 68539930 39349942 308291811 249264131 859682354 672827409 894417659 120162098 177351040 55169062 254428487 18548332 658631874 68480601 597544758 330889167 997141612 581121563 790592169 349804240 964846831 131830453 699781380 428488406 791674608 115666548 720209258 571746603 677992190 277710270 501700741 47103050 75331488 70080332 695800511 314423695 456609402 290370440 750265392 186137187 557703092 388131050 797811725 458222753 930458677 307890329 764679001 516116405 999419092 926635581 989447252 744384900 846844301 4111573 632418295 59981726 479731526 183650397 259545542 96243274 988142141 53600548 108146395 18085610 784153511 713257501 720807113 138357294 734449084 340015680 684258167 609242938 721474848 700208883 800867223 402548149 734921210 207736936 828332458 58965124 80210585 62401063 446288657 418207530 564452716 373806082 802167820 727446820 862882739 798588299 838792692 11333032 208077096 65646093 822993802 28135170 828265758 84187844 308926295 283270150 573555525 568926886 725764075 214732593 626913750 616330061 975559213 237302295 350911864 13345496 475087164 105612736 872772420 491642122 904737792 895808684 899334718 115720576 955605448 278553661 799794597 339686632 452317850 215184168 672119055 570027841 608661930 257886156 296201647 40798311 792900943 326987013 862038685 411313235 539220976 277685813 938860069 316608585 465497135 70618464 195748360 46883563 616280327 69249445 395333756 77485569 628460255 270584018 931361250 321682644 538264493 450068868 768130540 758958675 870418384 160426968 708706944 703952546 953881393 652249097 825250943 700927848 904717322 543088079 840949608 209243625 217539149 136884247 963769082 718768394 761220560 89837801 193777030 112277332 900414788 381083663 435309917 248064333 665232023 366734609 435209042 278728664 968018288 499517286 959460815 186597339 852087876 257008840 435377012 49268790 57763634 52683209 523088903 429755903 748296793 110329578 359907988 36224468 481312167 71879461 961546812 50486768 235350069 191425979 513174169 493003310 792512192 643514205 883391476 233031600 982620992 426136115 546867177 316742882 364982439 333145331 499455528 290748457 339259138 75979952 905933698 361318082 606997118 164648123 776904339 152161717 633090057 2612558 315223522 161348545 302059182 85648808 434733818 296355816 612101761 408328226 644522011 577338134 926223750 386403928 576137713 400032508 643247728 278766670 556278094 441126470 616031902 77798712 728901207 1953964 285233103 22883127 267592845 216583128 402564666 140348771 750714002 50676564 678338099 8742437 226845889 20245308 890811129 777517401 897320527 100252335 517755425 19529534 151447814 32550915 955084253 648340211 874245209 193309623 960162673 692629189 970689440 431796143 836646349 424255841 769482420 621372223 735230362 250511370 477750160 360813340 923960681 39183558 545698201 318113390 997943498 282875200 846219904 390526465 483190584 45288840 358327805 185540793 606528750 328868530 747469643 233333712 509653449 219082342 628913081 236804028 607382864 439068724 980275792 634031922 648988001 269385221 794158056 146793626 871349543 68492390 682574588 479788983 950392373 731233917 938781919 614307246 807514347 585758266 774939723 507962385 828532173 597375208 648384138 466803829 742719992 186061272 940494798 729502008 852406724 492275154 791929324 704380117 965911091 350570479 904595495 698801396 809062329 67545604 464979199 225672854 293673894 92845357 704314083 557070911 646688081 586007319 769357225 543257382 734814965 650098901 650436177 398645257 885995140 671535176 996302706 660867252 745506053 210101456 244059078 134926897 255151348 151673508 891015004 331752910 608703399 472629120 830911440 233815815 347503029 247844176 409449819 300222819 730063854 669621843 823656533 64024447 707428988 140687170 882924457 797683725 839658302 476280711 854921353 205776093 294405697 69138601 996842365 89246716 988842681 17784274 81185115 35073830 731947548 211068348 493292833 82669653 948087763 905232716 935294354 352245227 684377701 60041984 493693855 12002325 782054018 603894852 687032955 440572918 589234800 245642707 601284767 585670178 789174062 82741809 631452830 444231044 485375440 394653400 564149863 145407868 200764409 14206530 388328030 179364486 723453139 99526181 992048380 206633433 215484259 159688998 335290993 233049995 387823125 99858606 468304466 214283533 335749346 58081129 823915969 143369712 528202149 501946229 871364575 203414670 476912026 205259587 346903032 79647180 303140385 275666606 814343027 707523665 915283992 354965021 831057547 497165670 541098450 287607727 829482511 583735844 829698856 795580733 803219302 770206398 890497914 273543615 433389024 296951759 743030356 296270419 769252889 357073083 758184517 403012858 589898725 179819786 823718524 738022033 960341832 676355039 860923551 236788186 339426439 333911308 612518270 221270611 258653400 19782089 612756064 269760892 959665294 619372760 699839645 30136284 631106017 558877782 596355323 322453832 725220231 147941554 729911847 208646059 289851242 8776232 432266057 167628117 556560521 5708192 155981787 81931114 424176117 210076209 515960622 294326617 413947443 241583602 394113763 237797249 633232503 463553098 748767440 73420357 574778662 549164976 600055227 565779161 931035344 763398390 987064755 950526838 981517371 874084410 926572377 20477626 72890731 4222179 403347248 50813467 894025156 163151465 599717700 317000213 352324133 307483449 727569753 414742011 676330064 139882564 764329176 589547721 876522034 806100616 900498833 183773787 723958570 427513001 887413290 287444054 960716193 74435982 802855007 421939333 837269215 508207430 585945677 110255233 785036469 41279043 108772197 59201907 571254885 60734241 644070204 408513687 699063700 556019951 863075746 2444112 458421866 38325590 748764765 644375735 771589071 743885000 878615946 650906852 920698690 871466842 944029580 23428516 50777338 18302727 423335018 37964932 717495083 380437727 815231628 66165781 964380425 879300068 925913184 853024170 999566384 184128322 308587343 216300692 565519362 327213877 881232628 247822088 407099482 226034552 634243280 306128808 478952705 439696175 578333405 166189782 879315490 696456078 705497198 341246737 751361842 152451875 291279651 145728764 536340054 162379438 174485412 139282075 382278674 364219472 485425922 112820751 343024192 130367259 169539985 55428551 230758031 188117087 966011709 51374103 994890009 208036779 339095477 302926648 996781957 712444003 854716233 442537882 825861512 354156398 570589477 260372547 383754165 250789946 615334611 429418006 447216119 440027621 878851937 715588847 788812600 508894455 887813222 475282655 570069404 224950559 374591693 123918406 772578938 489215218 817593178 446173883 567500366 30310527 181294403 567130 42674897 31160614 741268753 723102946 973291692 615310884 875303719 197424903 870510038 733338260 734276853 529176144 530857689 364635071 709151599 231016289 618854032 466963452 488936731 467208733 845636518 13565229 659278209 126024444 885004247 639598551 648751073 215248755 291664138 152874979 822109905 513215665 564961956 89836491 214889929 59587234 327895737 128707244 618856766 406400080 468372204 249817067 938154123 799941309 832055239 462711725 665598318 180828771 210432361 164729007 775617484 71779771 453352458 170048888 961774216 845249306 907184721 871914362 886174467 546322721 685995523 664929747 791542424 492498004 926398228 867800832 938892013 156381130 512951408 314721542 975862988 884156046 982912134 180771416 366318916 214850908 812538331 425161868 929742577 473557844 654300276 433170181 475309730 129148674 864010377 382609179 990998552 174208255 916943571 140639870 155676884 146952277 545719432 112196794 946464070 745912305 827180052 736502380 924248837 613301906 835156083 707020439 959438509 410670507 997500498 803169460 877994110 777237248 793567159 417659111 973647570 355909580 807171548 795140305 843584278 570896182 776969003 626707368 902758155 645362951 930410195 809164582 989271912 514461205 876822461 275373139 695620972 503168290 709299850 395023990 808232634 579316658 909399568 805633248 883380092 718942501 764488890 560718024 795695941 486235235 596265135 315493948 710171734 614415881 633910102 121383949 206209438 58991228 984015256 317758465 437447508 173400683 456538327 430696201 870593250 58726440 426316418 404112527 880099486 221878758 883329785 663759017 879238363 375093852 774943276 402301960 581653896 437192614 881346864 221112345 458028429 29972882 392670199 188072841 766930274 382367614 708126557 261082560 284227074 3864133 532531491 320375720 742603618 460574430 483129584 445201955 784613881 139262945 810708156 544242315 773689563 371695248 685867846 491470029 850477883 497824691 925736681 48600069 164253836 96561969 121973322 16137212 602733067 197895090 609954370 242274188 861997715 650842806 840725970 23677701 286975052 192038861 320262821 308950428 346913194 273128352 953895433 75735184 590572876 335033544 410468058 173829850 983406269 124982311 268174130 172993488 946645146 857924422 903131201 766212877 928933060 551996066 990104528 675229063 876727480 482045913 690218138 305734932 816495766 235052804 789187110 585530255 975060434 221138475 490157073 195126622 925289114 750391976 932919227 899580220 929502854 812119671 932603703 193185185 789359484 691584303 883142787 261338557 959906570 799323675 933771425 424491942 526741555 126211173 692518927 619803903 994696682 691968492 878760194 305611015 626896278 550950645 888057835 513406625 517695115 418129689 970827101 569739873 615361201 360065179 372021803 99653614 714866752 391202543 639447689 14629264 627087141 544148296 883167210 423433323 770550473 744960015 993479194 869448419 973772149 414033145 555234162 325051828 761646203 670800768 807324528 800366516 821399316 352036444 597504289 129881624 421762967 165027417 675777160 215798756 949025619 357372294 449935729 321281888 727503356 470554932 787845266 694352363 915981141 410820128 853619565 413714935 792170943 260391562 606567757 192680366 369986047 135806421 430273382 128179378 350283961 305576079 781399844 257220061 447150578 78339497 847955151 736246504 775571109 166489459 586585015 533766756 641532221 564491653 609227399 434691847 663352728 19505275 62250435 61403192 253959647 251333659 944845219 892678054 916983403 215096351 465993593 160433367 502437422 81573897 780152666 102915743 417881909 68920811 943932460 542655372 779062226 167903017 551058612 536489878 780627958 208850159 835078629 818202887 905150072 798384680 814326000 668060769 948501600 745419690 775754758 504139771 727255398 240609462 991655152 513255483 916718949 483364418 603394614 294829236 758631600 192910485 871032674 266352204 896621999 153185060 469121865 318051092 855266645 742121437 966466892 646812855 662365565 250450339 697583368 2245300 838289401 183221142 406598417 270077778 380489258 185075258 367183849 122249644 975192489 969291802 999542100 944078830 976579294 91242327 94194000 81193074 723215239 443912752 863938736 701359943 995527012 529203078 633928344 321114485 481448097 418613718 828388888 35449983 936590769 662987121 689348081 683031363 860463293 110840039 250145719 10000741 351312032 203099767 738035745 648987334 822313598 188453562 992192671 763440920 850307208 619678585 994166112 289408304 952155537 873692847 980356499 731070832 821029277 432920354 554787453 475798409 751096193 154073479 849037909 343388265 597092443 441637045 960083480 631210386 921250839 540501313 812674648 470111673 746055970 64039419 788547954 291279306 616541764 244763200 291456467 79695298 625003907 527575084 802585101 286573682 771793436 339139227 520836034 27432772 912552751 307725886 830100956 646204975 946330251 315064107 392585896 70864892 731892177 580085536 607669214 503896428 679542255 507082422 639201113 108958239 827207870 280693651 627441411 252502880 976731859 687961584 816751181 4145909 137256934 106281138 411383859 375540773 861916236 59178957 870306731 57761265 789383721 678773111 806448130 711637262 864663624 695811323 978723395 799258511 960525394 817623791 932037808 706796378 798226255 672080716 690018648 167944410 745851882 338819343 771845722 728396530 833932339 253191789 707029902 419242843 939625960 144335440 545988125 460806348 787376658 597619976 991632356 606643375 671111534 40821960 946085506 558502172 901441174 279810333 467897636 157681021 647140565 382809566 839167655 619125684 917407296 622108389 784556307 17672137 942934621 17096550 536431185 468484963 813989377 214080067 528442729 407592301 516380559 147608145 654364056 262034543 264491802 137717512 654342182 541657064 748736871 378899383 730913589 692157490 973549659 430861964 932703387 847357326 890423153 376517997 840566962 710873686 954414122 854278914 929103740 850907041 934713373 787615045 811583516 265042470 672582244 147845526 241406472 176463860 479457449 404929503 541112587 452925964 682508384 572143436 842423867 259956347 405458590 61385802 980754728 775284964 975581168 690611800 917306936 585563506 617389950 30240790 291469675 211042206 670979943 182894510 812313216 16034005 894417404 437473072 999441265 697616076 973759946 521109856 617140604 440820067 735604230 57881714 333811821 167391899 620755955 542371170 782227441 422635421 877503972 36965353 456733681 214858098 500456675 151685393 726326478 455649691 724795884 167971528 927003314 904991387 965212910 708318850 925664024 186725179 374595074 306699131 762610924 279580955 993752676 695410847 772893613 214741210 889627395 707844419 993985306 192249450 432070768 397083679 890918608 558872445 734765257 292986284 391739133 183032956 406372069 61605521 686834424 403446700 669925564 648803101 691773081 30810844 221917834 38216471 644498829 141040505 884357610 472791688 926481255 655184810 656458954 581775147 810537279 122596747 981377625 237026963 763662284 490512126 547733242 450049287 979384972 361801729 845251962 127831430 373134547 308776947 389509623 5723050 707056607 557540596 662046489 637208069 756328855 157861546 643914294 255110330 590216867 40362902 161405068 106002870 937752088 269337950 360089477 35663865 554727868 545739546 748736914 651099822 839660579 440022357 501407938 297896838 965077797 294264666 958546413 132863326 375469346 350687670 792642377 571595712 710142753 375685698 731788441 430269278 551445135 371014624 632722223 189996675 573007339 405785718 777163202 546449079 562236230 53976571 783527987 748081036 853369354 529363526 962286738 288544449 718196425 418593999 947733111 853153946 968162995 71337751 88650183 54264529 260933828 158603044 633199469 311431174 604650314 360384560 841551690 50518624 243017278 82479314 982848709 69871179 683848296 594607124 725057630 281069474 408987879 246070160 893312555 474313137 977943324 614701093 678002246 533589807 627162909 407893091 620727351 1635982 23538978 15364252 137511826 11470409 140599814 33972317 204921821 83679281 878929297 866761389 910899926 880173482 881355075 550987088 757502296 159693059 579736344 488977585 820137656 394579817 646200375 635931781 877734521 228835924 929758226 528905077 654576085 482069669 711311968 684420500 692185840 324839957 746371900 396017394 741056585 124142334 591218839 370956594 396861549 180448777 432741677 15718495 343996044 248875528 798643024 768212828 952699695 942352837 996473776 785544527 795873459 794318677 909560005 390064550 765871274 764010303 881879517 392287311 992363537 107306406 667111399 49879790 285500523 243828516 783762442 36547245 732868257 379637982 627875427 450811753 837523373 718062868 891022749 320225661 395787589 288527785 727586582 720981214 978071520 937064240 955033164 292556461 482122320 334943458 965653941 816623697 870954161 140634414 690079280 516367903 519780850 356222624 504188393 352468100 802450868 150449990 835534508 5088894 116567732 28579676 381097749 312611557 636652591 508987843 627658985 79963278 973609945 596169527 961637891 396427572 648533315 535733059 665777633 310526846 549716005 466623563 492628562 295707353 923630633 201738959 761403310 571312429 695241859 685867642 913088685 250793058 987283234 797592864 821456997 740344718 971226598 644951300 716813274 354207388 757428203 291661335 377279426 168041724 282286037 222299441 383478213 182395730 239127935 70487803 456569460 2247177 292882289 159209121 577533939 459361361 669800609 499130934 736913975 177600626 667207280 41498246 802970124 219765664 654555439 637285181 998948405 265673909 442665702 408661847 896774660 359509824 956419878 780978465 886364682 846393438 960050583 954734133 974589177 252645631 813482250 35472563 602339194 325049941 487592973 457359988 732517151 726618917 989124068 166013494 851684313 813953271 902393193 410305205 671605557 590581310 822101575 270985596 311632383 116849197 742878658 265745485 913028929 335332526 416674761 161406494 843286181 787672611 926180809 311729023 671550790 582999975 683717254 338386271 560987151 73530382 772072010 761805695 787567098 555355103 728606960 260811620 739561198 396248752 884186995 283837404 541459121 285147471 556648800 37211896 618624146 202717076 722012682 595599624 821981194 235579139 266888957 151049818 230772467 176411995 941768982 478588324 808371782 176875708 260912485 121569217 892126116 516303841 887033908 253512413 510468915 98411907 787305873 735675287 869107698 506368589 969138401 180042893 989215377 545751949 643000685 256504631 677250123 648567594 810654973 502329596 690008830 110737536 954917413 360162866 406095461 187882473 319986012 251820603 931076529 876844247 990045836 298144195 781777872 548088724 644079933 435837773 772307091 205207242 311781853 196951364 447872705 302050257 894343054 753607075 841087066 151705715 308021002 101102229 374844271 136132477 376540969 234193831 974450688 554538897 631485381 450976625 729788209 726532347 976585963 858134267 896780933 663401867 681060280 279899392 542205023 233432469 828654103 402935137 700932329 660384361 835656615 528940947 762679203 192435753 787838069 307417977 418148807 262206666 307631135 23014780 178035725 118184381 328545306 190553450 199923053 88070653 206225734 46886787 300518801 240335769 724966545 22870743 69070629 66962423 559301849 468652595 823704844 538830117 697132018 380456922 875681463 642390690 658305166 926064 113323137 66929941 103733486 85410982 489467879 255466240 369967445 344392472 761257252 587703138 786691676 442354652 979052624 492281370 940029420 525207704 787424157 45411345 175563765 129222025 866851148 4682882 553664129 132747657 460017666 269253038 338003796 44840563 304726448 25636848 538470608 90143355 234871285 35010752 754533968 197229447 463604472 301888088 932951109 15676113 361372394 124388715 751363813 702379578 861667910 284727030 290431172 114000883 767163963 333504394 792171998 695427010 924493581 433367710 999167189 92800961 720332444 118524279 143846835 40762179 722433717 322770927 822523785 544290547 912618478 609613198 688880498 426478801 982864762 201191883 612545875 302341808 440023898 82065140 977010280 550311407 668765426 50917269 359458679 56667510 460902270 47609893 899731428 652414475 753211194 359203052 913005070 174825138 795921561 659485872 865064378 676851993 799472796 394781412 920542813 521052393 894666531 511967190 804378868 324120168 872140088 725054901 946812775 545720682 995425961 141609745 942873877 599332637 844892473 93618309 939340695 730827662 935542454 394923190 555737163 417809432 538564103 380218903 624375855 13178477 916302873 445782066 834507092 283017963 657460561 509734090 879334325 609064352 984401364 79898084 844985176 380416242 650421453 583940335 917676299 519485406 622484828 92083584 142746299 43694141 642428165 572316549 973516497 280697069 447760925 182065902 430036391 363077456 385977781 21304328 612971056 81027900 381232799 123117189 310950488 2717418 886092672 51833434 904099875 71259841 483981807 97383345 940827848 508912405 892247297 163427646 461011946 410398248 599375267 95167550 138432307 121955848 620547038 226452627 992517168 257782368 921963209 453480761 622366315 6982721 615105168 585165421 621978066 600214635 876031401 685758339 762639247 353303751 519722711 170139495 824117096 151170776 580144214 477085048 769498455 740023524 866664778 799788367 931209594 266708994 466172676 356990061 387570702 114379311 432958839 78843126 271175708 198259848 342772976 297094526 556057391 292884014 830281524 719673018 727759320 187165031 799051682 584765444 599437279 544514145 749836940 628819853 754415487 694170726 944894684 67632054 394509199 241505501 827796565 227410910 735492679 513301770 595487897 356802088 448543965 391734430 961031304 86684680 395126029 282383458 335146066 297465854 492848391 483014416 879528715 127484229 705183003 407617 501326653 291642422 309911788 112224289 686131509 122818597 748715703 425058376 707995321 40130222 429749671 254949676 744867884 481296513 605635060 60180967 658844142 420250771 618298603 105283627 312146787 285622199 754812624 389298778 995686485 563282818 743479121 380420094 428593407 427531655 627198597 163930045 450549003 219980292 632134993 615039563 997044924 964971352 991929074 504744170 745131973 18440140 281140032 262629572 925275695 451603972 857835201 423128972 588691958 569815308 759848528 426851999 753925349 22385878 854506506 474920604 814006461 43048535 993166492 181927015 648778645 312641032 706731844 282425791 738397127 253576149 669206072 369221910 967669571 341249940 986072854 394572622 526058687 175422073 496300627 460835248 464366921 336768578 700544079 559407656 575382145 181551432 686085708 146978163 634583366 122111758 188742624 97534323 821534088 542536642 755195493 538914185 962078671 796140321 928594064 372707884 508064898 331472733 609213181 6854922 114990777 110095540 257516447 158344583 261258327 68975327 971228597 454028795 879198820 803019465 931304101 264325089 911889115 81091089 450261314 23281222 115504603 49916003 74289890 34116321 516729632 309532904 546799838 203195155 652115530 251449622 497911425 407524411 973013584 532682418 705838165 628729652 898451619 293052632 916715919 501390443 887985059 325520674 753079991 40999089 825264917 178101216 532860616 116444449 533872083 181956854 924884655 504885919 977213720 131611553 900750588 858536399 865672988 90155640 908180642 134966893 145936520 17199072 572367309 292849854 981858535 359355103 743212725 105284011 498917160 236171605 909770117 791075160 978951807 479052300 729842991 484563796 656163635 646378500 826565200 805578472 851045577 354649794 731995268 149758142 182090646 136196776 797703328 132882548 164755418 80072534 279044435 221603252 435486453 140790601 311581351 293575330 833392270 650666631 677111873 652944791 733468299 230672921 320525429 219433119 238811695 65884569 807475835 174765326 948626405 817557108 979170737 855608023 899823067 298763255 954465668 766128269 805148768 459963142 960534956 310560163 783083528 55462093 881982495 146771242 673708082 637052559 872553842 628198726 766727373 699089931 887811850 820792245 883781837 388655483 844794279 454286939 793297507 77536676 278666328 232731340 449353837 67083875 145201912 133335552 641419125 588121848 881878838 186845653 613609722 166674539 899252029 811393782 892583645 76251662 98832202 61777643 114475982 51896856 948554310 855943470 873163359 501481621 828815901 556387338 749094436 107549105 530209608 208795947 495376911 443613703 648407586 365464303 713047541 374424056 947061951 71069261 420538716 20781149 762658118 621162587 662810843 578038696 658605515 468839731 944477705 903439990 936560163 282455511 514339913 52412052 843736333 752896444 888447771 186437727 901180643 368497516 923748523 41730585 209336595 74303815 326709115 257328482 783917649 526518405 715664469 324672193 857464772 805956417 836101791 19631526 816747502 808470464 892032686 632020498 940579313 901391607 998137375 320794975 383145827 330102352 736993766 571310418 975808242 424042735 712791385 583270367 703522582 655734405 796364606 278204886 437978467 96856659 862259591 191060583 409899970 294347264 907961489 704124191 925376193 431943398 487766738 316752587 676818355 71648102 915246285 55453561 74808800 70257414 241468907 42907213 879329940 177444471 812748806 190576960 301052785 23081091 803317373 527604212 710390844 31258626 492259158 460116526 775906953 338678218 934574534 381950280 823348790 105730864 161394290 109047612 469221806 172242065 864315549 488334215 584068235 546611109 907698335 610095033 982952801 689601994 851453571 729671253 731797496 508575282 767208548 735971653 748126625 17333115 691136601 638468310 716138715 256529620 335527807 138571646 657949156 87858191 110013109 40310489 517439338 504092591 878850279 193804495 998141474 369775524 436679617 294087795 527790744 102851877 966694313 134597507 990988530 799956228 981455431 437336529 807747860 254339451 888089995 644653263 830061340 380783490 743658068 85030426 901808311 430372742 996781997 901993367 973821861 352149528 930584314 106193498 231119101 214225754 673395107 143678693 603916881 299882062 421461037 15817779 77487226 58572433 903125010 515124270 659585935 66585180 961363417 848256895 938855934 8962265 288671887 230112038 832733221 202220923 535208311 207342835 216471200 177569146 873603480 116935406 425546805 11998903 436060382 412241133 719102526 407202622 735309573 81900759 914593054 812207143 903301073 390335340 474895580 372826303 820835593 8316137 990357046 859404572 994792301 440705299 848849476 494601447 895485275 41970760 760470373 718658144 789070944 443687886 854691337 493762908 902309297 615699390 861156644 744494117 963247494 677350235 831761620 248752212 499765468 128538605 994871420 185665967 933253972 118457290 788125885 332833950 613750676 237852830 530603862 179388152 325432194 313891908 414887990 357058583 474839016 314817216 356608671 143661310 913356468 357388616 381042722 302119541 821955402 780091563 795407201 17213031 495222049 139603122 392338911 358602903 362241972 295221096 909575380 185662957 766303904 122831289 555087806 42789594 740495352 120068278 938990169 917199161 950306875 299063537 649193397 500785656 944349545 365284096 390071116 226680313 427244870 196601778 748610947 118119918 412095407 46133313 799223996 513857180 970132338 413662503 606129982 230892677 280001061 56880867 758929923 595537945 656212445 123455242 189030490 159467890 273972182 90052287 579393352 457792042 712554718 288660772 564032366 75017998 259989029 190811892 600940390 436438517 493759849 408328403 966034795 320383956 608713502 469178686 693849310 1945548 661501021 261942809 773499306 538708577 680988629 292675002 919863557 850864639 934541447 436231421 556965543 234008153 533255788 49396535 831030237 8018590 679650191 472627994 632891596 273893423 993687957 184487363 621423435 399343480 424630256 95552411 928694153 873582304 968250056 686874372 803089139 26253488 733322861 310013094 601590213 561466070 766004349 261445517 568870442 346112124 448022458 127385781 306351437 28490906 933382446 289462735 388781517 101631095 371186800 53040871 714482366 495196685 771684026 194890788 649596624 518419958 941881437 639823046 984430003 467320006 676961848 98164780 109459442 90344248 296220413 210390704 886893654 173474668 504244766 111037531 472762202 276221570 403756417 38204209 558729866 368648568 438025348 410617689 777792858 84008279 279999351 95801676 326201193 135880818 627394496 357123896 672452259 238847332 613168191 367620034 910912145 900523877 984878171 877903499 902748280 399100039 774222940 48073274 886683750 245303264 976866910 872608988 887452000 143989179 605180032 428679592 785615019 492173981 574247268 515580493 599822194 329076043 579065748 356513836 374738636 66162015 195040683 66297674 405456095 64565587 673425495 456650441 598236530 284053133 448821936 399225368 436788146 370780777 947330275 480535004 803448134 427468965 569740211 111001738 990447782 602161152 803826715 595498904 877344376 746866153 885036200 744779579 813865954 170765278 744333736 487441539 985029270 870000635 872846209 294713471 419286029 273337052 768638409 112424513 922318827 14753903 747486138 102139399 720129416 696817436 842658682 560836930 722446381 37791649 630042971 205302397 922132294 423384343 750398025 246936630 371714122 239570180 927169120 775127900 945409420 192511243 272161755 78207746 266157810 54133710 222170894 28574416 738528023 157948228 351949369 180197842 552972141 199664430 887065158 497663375 833173280 576765190 999247841 222505999 565087430 394691473 650998160 472544979 657928836 43409303 949646293 505825204 903632023 442254821 766245525 20794747 693250157 267428677 354761116 146704656 395858899 231175345 832492437 288271066 515170784 507770042 993197254 174399171 202828904 63647901 609203593 580669865 846787532 121616837 558068693 287453750 375579450 123570506 685416822 203874687 268269645 225049909 426585548 393682200 792069416 454075017 542892169 458105172 633541870 184304967 364348525 6398336 860043122 412019150 432060439 109338147 473032402 111644556 800895164 365732361 861822053 800193556 827058558 591426831 993214163 887917466 943370120 673984202 798082345 672199984 900389853 289028792 926457802 425904752 629540317 12402048 367710277 338577536 696715128 420168644 757964246 318127024 683118984 253984419 977774963 296340958 343926234 95498343 367594754 153800102 630997320 268591782 669497545 637079005 661684575 254768986 848842087 773981062 809981258 89162262 350237999 300434848 962211592 939689814 970034813 645738055 977315735 373740677 992647999 892219943 955615324 21666564 924894726 889911048 966544533 42389037 899248226 82997169 883711508 175638737 884159789 636339844 964224097 240025334 739620774 217872167 886923287 649550974 804327440 24326104 268877949 228369567 770611341 167184986 837441075 242362436 597220989 545046781 973329708 840394650 918681662 318003576 637350834 618258274 682372623 218657648 685644107 598910444 868981604 735579084 783259238 426296295 782157071 180902355 590915125 311386494 439016454 281193385 353927110 179497046 771495886 280571190 528646990 412549639 490604983 408720327 985633946 258488330 861265435 845970431 961032495 680914295 827909544 190148797 617907617 496537165 895669056 120005403 516449555 424922774 589675460 18780860 40522958 14791118 132037495 53724553 959008724 898927918 927383895 796130780 936869677 349316917 938792777 598318467 695337701 383827039 718989701 401638761 576333282 408279965 913958567 143973187 289086137 191285527 253010530 89077087 697888542 291460460 736541144 625979748 802581808 370885185 853779392 143984052 852772952 520425675 799267726 608841431 762299366 347124770 814774566 518406446 861352277 821263369 985211679 577195875 625482170 308098753 537537336 70214020 809294952 80436737 446533524 405752428 481637183 117640207 767776023 216663524 349946047 177759757 951039662 259444043 687483406 521724375 899383623 146850248 413172763 317867010 929693357 866535420 997303235 353069518 844512093 189027321 581481283 442631886 838561020 288754740 905270407 338506987 838235426 765718540 877203537 657054765 747826129 41277892 707227436 465490332 562607589 363838520 439515015 21896855 537326909 335780000 665757686 114487608 148382472 135493877 219367113 37135229 893808355 26993382 718894390 97188921 101068216 8314943 451616726 16959400 76240283 15395455 406903016 309428275 888961440 546487238 666825650 474385113 929903893 587275295 896511542 254576283 641982159 222621183 396549633 371128735 938313008 799208084 981532110 754448222 927041316 408125933 540909569 281688226 764095819 124766245 985313197 639613346 905677403 66894710 568336350 42650614 509845305 268973542 686612876 570513196 665765887 282172948 469332585 377795900 946940174 683736433 692663858 460310610 861186554 681054463 753078142 293288081 593271692 335984026 869097550 525426572 775601338 444808310 749455739 21610415 574722193 354129510 614192032 350159181 477604590 274490430 674803743 186886268 293276259 134292602 884613467 594302656 835121590 327655185 620071454 583751296 620529611 304683456 533004586 452469911 662248325 351181961 512956681 309759802 471123748 119857602 434410922 212475097 337927337 263105703 603616295 274253185 648105129 347321779 531527932 404660217 921776362 144084304 392868402 139147038 169308761 164641940 856809503 574015031 776973462 208326080 841982107 195625318 541462838 304375600 529456166 506307577 817685255 816726455 974738677 835110304 957781541 174785378 387032329 28923473 802413665 742543214 906572201 680730396 901300071 546362964 553178290 247280508 588619843 430583028 613904487 407902614 970091598 124729935 361476283 64146856 172617831 79192876 458933460 191353651 809365020 203591384 457401330 371951336 535449117 117561900 484258839 366496452 545997031 202411341 680617215 555166813 896767347 688592938 924852312 845277551 939386466 170698663 862211976 378172592 889442160 641173268 676786655 232151687 383251376 52564912 552725966 234237377 408848088 275302945 792141687 455279270 544301978 284215123 667707173 230511466 461621596 426161604 562813155 66127326 327519025 65644815 263527605 205867603 306400493 5895251 155474253 131045111 534870484 288310117 854497229 10875114 954633548 293820877 876141278 88806375 721458479 448970541 993679762 943416911 949743811 745794420 954212517 389417384 603644129 26842830 183648921 44124616 503269025 232088679 292700167 37387853 802482131 110097909 426236084 397276055 409010912 211540489 696874585 182452408 370513758 39440875 355777736 182107848 474714648 70549349 870201702 685465826 926198395 25167313 924575815 243909746 732010272 350120170 877765470 195756815 710088374 558978593 859399846 429696250 779491859 257167243 854366093 712843732 757791922 165230151 620102291 558829387 750345416 326571958 406613119 370031201 619305869 491753078 725035970 619202888 897896148 41774563 450398996 116079058 935162704 453212494 772990702 162662617 665695971 374671635 713375655 559848118 862175234 249512510 495586433 325344442 521141417 143774272 852559875 87019971 785767524 679684859 735529418 537351831 843469002 206634093 592369434 295835379 504257212 2055316 537149001 31983655 355916286 319389222 478684587 142179247 285142240 239095878 417163452 109461654 880718790 212609328 577200880 204024118 238515412 34000287 526815788 424429708 436328353 177616439 880472811 512217405 930980457 613427016 787013938 409820889 598106081 175089531 779245815 82887171 343756848 100322678 318814937 140736203 230589263 31345853 292929908 128202363 715468891 663111006 922516089 616375894 867508949 178418194 199870038 75903154 963851803 789302396 921551018 511715211 810032217 365744870 503886213 366099071 467315633 464398069 997435826 346300865 352299830 333435705 478210391 339017489 891208097 631561926 759008118 108470835 908330629 97651094 905398713 86429372 299202595 62742028 485014400 25144573 655590139 41833505 48262647 23331922 576243761 269824676 862024435 763712914 877803498 720041108 770764540 83283850 534943821 362431424 367648251 153034935 497539917 133850479 981866632 594975721 964089368 504147922 663365268 497810892 766375485 225217552 244558351 58427393 966815878 375994922 667557891 296108348 581076781 17426804 621702574 524638499 887216829 288950413 866959312 325012057 990582549 593319506 933128392 234201452 941072793 81171430 714995102 270087845 734281595 709239590 897145838 328696076 644080327 538440445 875120426 485547180 674213835 92102173 655068653 148024043 542404952 471175049 512257929 389001455 801454956 556578615 932568174 180987337 372770160 159238629 422758365 49501588 672831970 193106905 812495957 102839411 691629485 480588344 627466848 561068804 634835039 120216351 697419083 302218284 959627350 116290743 767479693 48110023 127174321 89993640 662862069 657045319 673628999 449656671 656463056 419867076 668635721 389888271 785470324 650628178 993601467 917114487 997204203 178040204 567398335 53174181 572834124 190763597 455713372 386380341 433946262 311443809 456355198 32766962 462481535 327228766 569224187 539279667 792135511 127268163 853650156 761430047 827393513 653844546 976021351 13141094 319696309 192644312 313010784 300956399 951308540 582210897 720379392 17438942 687742561 533812418 772134066 717108641 902061236 81089672 703723313 599594797 769699194 224920418 459100390 292996818 929843380 16307013 784824399 536609650 903904957 436940521 481698194 152091510 308081979 221577522 533641069 302345066 623110889 588306353 917497357 716182024 975733435 188724476 769872823 409080120 613478605 39924600 107888225 52307355 963909068 400258752 873344449 501937306 635000361 184185852 346233438 167427961 584923243 236614138 860045499 511118145 743703898 528033164 869793173 555539433 830576726 297999719 631821241 424958789 874563409 218571108 433077057 163033291 590839570 3461244 900930152 510078525 608653598 446622950 583639253 417147186 958601882 147192524 305491229 59089316 397384952 237362767 634004763 283489688 629206984 40306371 502943905 191631408 352716975 32957164 527866579 172027981 607770714 351238634 736880566 443546543 933545581 915263339 945974194 280514662 633285286 2388759 549247283 291258982 545048285 296201227 931350214 366181109 697674885 235029902 945982778 629342947 974880749 915657526 922194436 548744382 820822772 374562103 510086775 22133016 809327305 451915453 709262819 524338193 712896173 455177028 791580957 286416223 716325579 93923941 845995438 421475722 778823994 357391025 757943391 550385713 854140518 153693732 521902943 203891964 809599467 536175710 691515116 449350539 586999481 144582118 383795389 84399358 202138601 16134770 816291837 395211983 962003493 741000803 834563363 211755784 422401965 116743908 151025760 74953995 520740214 454248234 699798887 199380617 711124195 250908019 865274174 477486073 908567048 737852802 838090162 699660845 701296443 339815449 822349515 259984183 820559614 784158559 868119637 189333456 607120031 381268975 694265857 133556020 323393153 164862100 248049908 217909827 314947880 3953103 907564056 734958685 846425833 141878556 392874886 346430641 841292725 497355975 963849176 597136493 938409755 772091680 817998286 257093003 463643793 377482077 424338698 398972815 760344968 217632698 336089828 145555229 671064491 60394991 606215249 436155943 931529122 678273393 737897273 325300922 925825975 909792361 975655214 176236768 886160498 858208098 932607919 896245612 991030181 347800492 493931488 230986737 251896965 154480317 246780751 696171 336695030 10315028 664926560 232162485 799820281 150282661 934675228 737075083 957387805 601056007 852244663 467038329 814812591 626674964 891368145 96834582 272518141 246471929 281399161 261439996 292358411 149639042 670769496 273421416 612449007 19505949 593917260 158984405 835486105 331909605 514607252 31774950 190742306 50314429 464629849 362832229 448762616 80287390 950994541 594832875 856793575 82181137 420095589 199462583 912944476 834511543 867575911 194708244 555290355 82748964 219942331 183855138 405218825 108474314 974797673 670438636 968395391 314963034 725652003 150843689 582637702 117549286 721119521 588845828 787916915 470104277 924937192 86967632 846475784 344529621 885718780 89360139 897577189 607210924 867334730 417284556 754544614 702359144 748656702 24892133 155581945 146469835 378185424 346391556 682627098 93449902 253568302 222927138 682840773 270536035 830308455 1909751 998642652 997780290 998822580 931618381 966988338 28289049 675782261 20448794 42088685 1938601 932403611 508671215 777100224 68287666 332034405 276872060 339144460 56261653 847254261 22054580 697724930 240785785 267297470 208679115 518585319 357877657 983080583 619777609 923406544 577128235 724033220 598823223 861066483 427413755 464906197 355558064 888053501 373104498 428040231 311911998 961323226 921998320 943452952 259558211 620261258 405859792 580932571 204587164 316298887 244008977 708597461 105442444 873797296 779845828 932973881 550861215 785885434 15031838 818280988 459440196 690602060 60994956 516956436 449165593 562490843 84442895 624850166 275605170 869691515 624497745 968828178 719922462 722964407 547195016 785204569 745491586 804999105 587055240 893416688 189020228 563127602 399635999 510767888 342066951 482921075 300665616 835083337 286815329 633578615 520839138 991440689 394593276 497353121 447049355 901640174 744854768 795781712 168327909 886310226 140316350 320574283 140791406 938927979 175187934 725687803 11409563 550896328 315819269 802784619 713950245 818469151 489397157 947744751 101826776 324495006 88745750 212235641 190809109 890013228 124758950 706648741 444756268 723203654 228308644 463678336 393111512 614459613 430836062 853317325 690368792 733527938 675998641 800470292 377758201 440033428 211057228 950865719 879551300 952710288 38171734 462929373 336901400 493393911 362853206 562151667 156512546 386784445 373866239 868621420 556282680 772072930 347854920 655299724 450429100 637159561 185163999 875091540 313322548 367243695 209617174 636299055 559653433 668626950 105643041 413220073 309814082 872011945 523241482 566554388 286917665 291796562 146049615 681208671 143266043 312315437 304383467 790581807 435020771 608611743 158277263 201879172 127545873 344980523 302911688 887946446 234469525 816741973 217561166 691675932 97673803 163749666 5138930 433977463 397487127 404798115 101441309 382610611 204442611 267363761 38451658 298503232 21812326 231127322 58339575 602285107 457448591 982067938 645198484 978106190 499707639 838051099 647481096 699217476 385734616 710114117 264301258 292374396 99796418 707725416 501822889 551812586 51839099 686250784 30567725 443104077 307616815 381825254 301152947 936737046 605931671 848777270 545102500 783635186 118845360 944715099 662978226 927028689 20558184 386828754 339430236 477761653 226534146 358884206 265780047 983262289 619826751 918717386 295572882 521452141 248591227 376634128 365495375 454964657 213926772 983458680 786963213 842633896 349346958 357742360 63385618 517174666 193602877 779671070 269207012 926214650 456549466 796716187 538219327 849791433 540542637 815226499 27609728 824776464 45041915 201345025 84465426 276046937 188795723 302745643 225898860 636789859 360863831 767907899 682165782 978933188 846338807 872247802 636612548 937208930 670240523 870149816 163720696 717408793 175753347 269425465 227742257 623487984 443553180 615404971 41700764 444903081 397827585 912860759 461600224 935088710 867624408 986161523 540639104 703397848 205650249 478116485 179145446 811046719 207248319 281621889 182469422 426827515 48784496 657982078 431222223 479612807 311854078 921009415 240255480 670423748 176781839 518947946 420903173 714052746 167774627 746381813 328194260 843819153 483174033 516856643 224111262 298995160 215351708 854716556 507042464 883344388 422546820 914765167 914090553 923150814 774778044 866020319 129831686 372930748 23299722 61615803 1081162 832744301 775836912 874936422 182700914 464363203 114786722 992900698 757091413 965190663 683062969 869419304 663566668 813015176 62526167 261964049 159272730 540005495 396808512 744666707 114605717 303522836 129307905 547588862 389734031 818171100 24398872 684075174 321459614 996312144 967400382 995415150 962537583 976424217 526092008 614119624 516676819 801397128 526897884 763747734 39432783 704100432 381563558 919268067 491685876 865365457 726360946 817550193 151262183 816151142 518823059 706009054 315113903 325879286 205116213 784816314 426757131 929478192 310673547 705915239 65487878 511620457 353251377 960370291 43541821 54769075 39838536 882959991 231910637 662186411 463327868 930282611 216306420 809854062 395460506 775804795 490512985 956103443 185831428 700693588 154307350 917527763 185803744 552103751 62675958 235820787 17217719 549940293 211436010 627190132 71999767 370691569 7872774 390795956 287578715 621982034 495350049 859072440 848249744 948089154 332779951 660665706 15887002 673228866 173224988 555369230 202833475 371536677 56665247 333521643 22711750 935951153 109637977 869079349 33596778 577253978 113560980 643752882 585494017 967744669 231651604 746878751 155507870 286415480 204458505 914958076 266622568 735760357 540257177 859323865 108695275 647233962 490572108 797293508 453792813 895956109 715992378 961732068 923975875 972127205 863634913 975825530 438006293 709372805 467798792 983641499 40259942 895366171 64257151 523225137 228510185 961299674 922148326 987432481 650741050 737659210 364066356 771397858 608541862 963563601 189159261 897514914 63747385 803190140 109368529 211893739 140611695 570523093 346153943 561246782 41177050 79476476 23589014 807105246 293059106 850051832 383238097 732420850 672643160 741014408 376825419 554536228 149491728 925953649 872526291 880608409 836207631 980880592 670255532 973152702 963461817 974585478 924268611 985401878 156255000 449020451 297537029 432423352 18391161 589959037 581325527 913713761 783590699 893532648 460928080 768303952 421000892 770744781 594078660 938875378 347815156 365915504 17403248 876397861 732804640 929605183 416088189 519635296 198073740 775156871 582070303 882547344 490995439 797998584 386555904 605328911 309900097 787111598 187587425 360571216 44023797 97258391 61512739 416915426 229245429 965145882 190237370 791982400 486441222 488163223 47245261 469707284 268645442 507795426 215727647 447691202 387469405 561503401 507740380 983472126 563806133 960647568 109663567 572882382 428849482 576755920 470983763 558298268 79742282 920349216 740529433 823265879 109219085 871724382 602402487 949221084 309385968 334050003 36952388 617786725 536203384 670963175 607324760 784860719 711810067 930424507 52367937 343612349 242463194 366365854 114871501 529559209 493733753 910617937 784689361 875010991 840075088 966990449 751396234 784126111 369524445 404169017 42901788 409486128 53014819 961503386 430253057 610826229 508745317 875960582 749291867 914841117 381406701 447858284 297070666 345082086 271880912 313653194 292446740 941145654 387198392 960698022 633585910 908444571 856890173 951553165 466296287 878147116 696328767 710512119 391049858 463024901 406419724 495179749 3524465 400657810 77129589 352849869 131527355 875124509 78713178 200891291 47953524 801292674 395220056 718134282 690840951 951363243 232614675 825276500 123435945 546122248 53891119 171202981 50385285 822515669 234054582 690529016 75510751 472491009 450502543 884309097 526865051 761923098 727284135 902355893 900248571 940239462 404514840 973093726 46416895 364746933 289452702 737535778 385420399 472233328 101105560 688031536 545129190 794208532 146464753 752337139 392830741 813814052 402018137 968600801 694553207 842273543 677759332 855473439 208913321 480982928 307993691 543876811 283905317 662239931 396288639 501699056 480673224 729695878 354260022 491249343 55766263 737937104 226802172 733628325 586438804 975788613 704463848 794699096 612744426 766175925 692743968 718245280 70289530 813540330 477422339 818048596 487194786 945793174 629867997 909936475 796397969 796925475 496454109 706098809 157253819 444270495 240608550 602269165 599133280 907210988 740648226 762854100 735584702 764317824 433940779 909304943 833209309 919104515 631843120 726601172 318912971 379909286 94725542 822104651 627460103 635026503 171031784 796376763 622580883 634256564 107538856 398999666 293351486 432759782 408874241 857798448 599927786 947896942 695695334 763215349 365301410 907434288 830913565 993931481 761664809 790555879 219180358 827075348 129158934 598940285 501048987 964203561 788113272 999276770 22280713 261983502 4764236 315205015 67509526 801427169 338750345 445524635 200100257 306927526 78293977 500136227 268078850 877627925 241779765 377013847 287343750 459208566 240431192 804939542 532139936 782929604 644617256 961917292 277382364 285489867 153490846 518951510 344595072 800453378 436865130 846354798 334543389 755927678 673709136 767349884 464262236 479298949 250133663 532722122 254485450 460844117 126252416 682480294 597612435 685190285 575579411 942689015 199970481 730924952 725451753 887164984 191670821 378043779 81065390 855066512 100617874 654073496 75395947 924523689 579471174 802703901 25515513 257859222 129420709 398397532 158618883 325113495 183387593 320900993 113131675 141366255 1362445 603593426 208171206 428204158 204828988 552839462 459028672 495236758 251126386 569220921 447690290 692938568 177833028 707345916 563932727 906723875 903224020 986815764 884057124 943976915 25388868 278362308 245671334 551170746 57274390 455932179 329415619 755952677 30320180 951760040 728863648 898138928 582583284 841622250 193319271 475478443 335551596 833786593 193346349 681285348 369016351 921382978 654494655 665821698 344777561 854330745 352485078 656089902 627258840 666402534 595744868 980044395 550583333 666608749 641914794 873583606 561261263 725316769 565068129 902819400 803787921 908785971 196077965 662721701 422278522 517602158 59486262 753834618 394159863 545671072 354609132 887713330 128354363 260797160 95967413 578906504 458156984 898615986 565099769 614407107 11250773 910974715 298191109 466943184 120422882 700308603 544812644 711548174 37426015 934326584 426571109 592031973 128696352 155791229 145994791 177190689 59315860 257824156 173465251 188931948 119937530 973697502 475150768 869796102 12021678 411126557 54766489 669233876 511132025 534923098 194013887 566981900 75453921 91339742 22716655 897531368 779821147 794402757 404773567 968934566 100959784 314047383 285801707 381321686 212019344 613753959 526206890 945340546 252368622 475795864 356414659 905456105 486791928 897331826 851449978 852907696 821164420 975028596 945067978 997754900 174708274 708859472 517996152 849769842 201104917 935904180 439475038 725616199 186261550 354948922 235450152 785045266 232510045 564328269 502498576 512256713 86662261 396037498 317488425 354054762 126960170 793132867 62316831 655801169 247974791 274904738 104795658 807012139 585459269 680383225 219401043 941434565 380377879 740866535 338418814 963190840 2971626 279049637 48771776 311498107 279762026 389675176 177532288 240170533 157581523 450836721 391775606 787890613 533193968 740699731 565559504 671420109 299831841 430668890 218196647 826514674 648771545 841129311 669879594 867106202 650621966 846141794 759303982 810151245 26331209 567388773 527559064 535811365 95150081 315629223 263094638 482204389 280905049 390121616 168216674 328806852 281252487 339858017 232327944 363618994 46710210 506411757 39074852 950108116 402746218 936817947 403966442 819607765 117742764 336080391 214289259 942412410 453762213 867808831 719849433 909653146 796818813 950360208 385718892 833479984 45198037 300044602 271015247 747247997 180757450 493581527 175374491 187979811 154180681 542229467 462223981 891375389 49805667 471220582 361221095 992255588 395857481 821325213 598567887 848449864 717058982 720297002 140163675 506860213 73690815 401077691 99618252 545176420 317634513 906683587 247410952 285861863 279844787 597268504 125699587 585469316 425099020 986238732 366552886 494555522 435834564 732212930 667819690 710081455 270498778 288748102 98717717 173662300 37824569 147383726 146892178 986720141 1127051 208231109 185496917 234090590 173703676 693229194 328794509 846306081 497022140 642041610 208220020 945545056 601307510 774073375 241366099 565515522 280517400 402562496 291191991 616274766 548967046 635510266 629586311 907361325 548574274 822573121 261807017 540174904 231813547 251385673 34455600 763707427 707732157 874728725 277067203 923869314 421035039 978344150 66658384 715243741 286048921 394246740 391589843 652640361 490425681 832793465 355172071 478050647 139023629 546990707 365428125 599563923 104192208 528582717 326894674 706528927 154976563 800928241 513326568 711951301 414757173 824601313 160904479 950744354 633733152 799065348 771381503 868230044 774538583 882865310 536940057 741196543 529612682 915232725 497894705 514631064 193455221 491492546 47469498 384810359 185180094 425729271 184055413 932918507 394209497 794054010 604205958 613213522 479591891 552336520 459695737 530348682 479721650 692529093 530146294 673902111 30298716 463589127 373692857 839437783 14649009 278484970 30019574 68926737 10819906 415756160 237259713 627787896 385186163 924791807 142364566 861854557 600298883 834342137 661748982 663524401 243283718 356473154 268934455 926537161 651242385 975261642 179183843 856620135 498557162 780112939 650420461 828879431 319085200 997006391 408567962 469884152 171370727 683444214 119471379 771390041 354769198 831228664 169966035 295754625 180810258 315005738 26340013 929212031 352477205 957596189 496526400 540220798 481880574 620326499 3863183 538654202 388465608 717959969 456668810 488135278 448892170 634155591 335714668 928122171 510776153 848535802 401277008 648720539 560501549 816441363 430543488 915630241 744656986 819798682 172354310 353252524 93585760 910946732 552792637 643909619 140965311 463367158 395277121 712591668 593476326 820964043 770010797 872125680 831818549 903083597 847231741 954344228 588180212 792959881 496158312 888947287 268535507 417910256 732108 344132596 141956979 885817962 745241226 862903581 725091465 971736548 426222288 720887379 20811933 293369090 91692024 247349459 241499831 673595429 1244818 443552831 107066110 593973902 174065676 452231054 275685124 662306772 512875638 963067330 278714165 481174032 256001626 585758178 48228564 80183546 49146943 916958882 620150205 842014060 759604463 868314703 463903549 882657423 590722111 759100822 357102710 743022475 44565594 467603248 176908132 654327518 412979247 971594038 133436286 669053044 213406997 484284835 389455473 685068490 534343160 820831606 659833455 991010623 526813803 858674321 627765681 961955799 693265283 803745963 376838528 706938462 156351545 456794300 428946765 976310145 155040258 188990821 58616412 887676011 90696740 241715237 223047093 430400581 26581290 422863094 315846573 543219232 42052481 89318484 36993280 361604078 352475792 734037555 62315113 961012220 382223830 440824596 36801483 196735295 61977369 811158920 28563955 522168262 49696585 422724147 143891346 245379330 188424453 575634757 31570282 623169459 167969587 599163844 252277591 916834447 625102195 688146776 381436374 772104603 751245629 865696901 791342617 894091602 158516766 983453803 721100322 935592129 751830570 809790348 442447286 740409183 356270649 928583603 138755496 838872421 553811816 825139492 260990509 643620278 40407896 890640025 579504968 624139713 177077509 234064644 181375383 793266930 734650638 929997344 575399111 791755632 268095150 982061679 687608685 702381533 97809228 955363057 538805541 858853681 18937354 385934874 171880039 807712283 210014415 962270296 856891922 886802646 627593645 782642066 660874525 910809511 127129364 853031221 739521988 913869292 748910502 957353182 576776391 741025943 147105736 930073306 404825154 827391173 73378724 148898384 43378438 696641106 553294251 629457312 396336211 917666024 386388774 400932138 325110853 377773566 320984304 785141906 724246356 882776808 793461195 979955609 179949205 853111710 402757353 935378346 440910258 973457888 275973544 644260338 609229802 741258974 474548745 632217933 169621471 201439311 178199439 222114121 182930929 743797238 708359338 902703608 483632223 902063343 252869169 853829409 755987484 855656614 127760529 830287932 205170748 733713044 98859902 282602469 53926458 664668893 380991695 790626555 667212324 718976527 536488821 803994454 355559039 998170324 548196207 792405019 724997164 797691439 352949927 705932532 562398320 976007559 422638403 988072323 117368316 444856801 211854417 724621571 429139194 611752524 270742305 765388674 547050739 567771709 381734710 607949841 223412776 855905458 96580652 326778472 285312873 858685967 88358841 751340028 627335161 920489306 229820776 235142544 138895695 504965472 452815504 658519743 385752521 405678624 70656969 586185178 164278037 301911784 119954222 363525377 124919234 326615745 286029175 556814818 106600356 113907085 25013043 945291161 406748799 965061680 209504991 251819316 24183146 987145714 128705450 348738849 56195495 838724649 191280875 407108545 88662887 406977976 90828182 969635051 547740803 606307585 582406457 582723358 16881072 886937728 571518190 665815979 665405070 697561293 188569331 593762646 90379633 855769260 722977615 881696520 156953178 510123927 158294279 537465961 330228434 600267719 547862040 609633609 63542593 371835068 195931441 797839424 742418636 984316979 117620791 539041511 374914833 829726829 405754888 658364894 131201207 789108256 123625195 263875005 27456817 412514081 181496401 720855783 597989255 955335122 950175858 975889084 580235663 924532098 96146455 507076685 414865922 598642809 29479711 565765512 493361790 603541147 518007505 640165893 162911856 223586878 205053744 847811565 296163910 334715863 246353570 699789135 112310403 662542271 372709882 550981420 403552895 753991607 642876396 936198033 935763988 967645856 254796407 267852003 244619869 496911299 218283543 916439322 470435394 560880615 141135088 270514806 156546598 612248933 355618924 565093004 204502863 544361548 55754774 925523312 813619198 910683143 632578154 670971791 266555840 458349552 120988442 485279958 64177103 954080654 892028706 911541085 427160497 439868705 158360665 291426127 67584387 971825047 471035652 699086029 684356341 710238526 459715208 962914800 648770313 926817323 734590500 957124559 614730112 876601528 63987488 532221597 420241187 680002479 74644033 911043760 86937098 520238222 149634278 692088152 109547891 781249088 390805451 642531126 43236330 773046109 217013741 592177811 523669466 772946049 561964423 936009033 697228584 832803067 570530125 586212278 571946295 719954369 87178929 517234727 65954175 723741858 616757419 946006822 388084720 665846774 586961771 776806752 647102778 792575596 266537895 947520980 946214941 976549622 407976823 978949542 621869463 724738650 171366498 719505257 98037557 678384802 325846969 436760269 84675829 566510721 13088525 373376088 265629780 321460384 303267168 828343354 516703720 991848206 90897405 560655635 109349283 241733658 68847238 275504689 165782864 600062042 506187462 564728802 453664875 510219018 402544621 622739976 547029869 952845485 15280180 951043412 944987832 994746269 983801021 999569953 460546944 983535318 860565574 959235031 376140792 961334821 273408361 678669897 206650894 678880871 40884176 826611290 512120994 661284887 392285644 814824781 196983793 223775950 115442484 764751520 509902917 928528765 59434435 836974711 795903611 951542818 321311348 537869012 513670821 837254896 725135360 747287140 150396729 743680596 479911771 963314288 636676426 767927782 226930786 648196282 125471366 457130817 252370699 350514803 19741703 376080955 308564122 774020670 3515141 912696414 562154114 871634376 120965937 720369718 565585459 777619756 263835802 570750118 430292516 652844245 517890033 796271999 235712089 239034617 119202168 232852931 79204940 623226373 213905938 232701908 48273210 697418899 266332444 387246420 79279787 513996635 383910102 681048271 404810850 866865988 176593133 613604663 154021896 180034390 96160479 482138313 225699052 280500830 18519708 273567915 113311654 297410324 177010352 801051365 74471217 644035067 223908394 593713572 537322024 777306385 109161120 523875159 435795435 622442121 218063944 556530291 121299770 949697896 664745060 995759915 108631101 831418002 12113927 565897195 120519756 993035905 834478158 913454719 472135664 562758912 183253427 658326478 235319564 755868157 121741006 383831295 280949824 567256558 482558273 657430861 412998300 450948121 389364953 485468560 75158417 494940962 363501092 843417708 376616835 670535718 134440432 538356436 255611599 997339565 164196633 960609754 498112951 578928717 574088005 945022831 911164526 916102745 589092334 844411752 171911491 431011115 364737253 488799631 27280155 349524608 20610089 112678289 12765172 235044220 56289911 773495068 728560096 912489802 577219340 877495534 194451201 866173727 136335836 253747541 97236538 946523372 384284320 913972972 711283318 711392004 77497527 304165657 127861466 271719783 197365421 409847747 78064077 766149059 211159118 616760959 355454719 670108474 231538749 902535638 390714317 632009442 301654470 422287552 245251718 835963922 408286517 571365465 412390697 684993006 581439469 665778362 394651369 400085948 344014078 772783679 573523402 874734563 672992188 921354185 537048664 877812576 439987431 988915776 232841457 627529117 75874445 727149039 686854649 886031772 739152425 891572122 633682670 768077966 350174062 723867470 691233088 987893066 114134722 561860164 245627016 623720556 123019102 139699464 101207236 759257661 172792665 464826548 255219666 960692550 563932227 993335720 934666943 946932422 286683087 900005771 140691926 343308162 338817320 524997471 268874366 660547449 160678261 453093508 371700006 412455737 130573913 158639560 75847097 760084179 41679859 911406311 725346208 727646774 259632738 826387239 200328831 487067912 234904748 253596299 26722436 793207088 491538931 796125649 474589466 593493007 87393580 938056366 182370420 355157657 28380741 765855447 644613189 657670139 2878453 209538065 40171527 736227388 292653352 989408794 951733262 956299492 598431918 661476508 291256932 801847205 200637620 629311640 336228718 602577190 511108027 567017035 272816103 794610342 615959566 805632460 406261825 539785639 121232060 526059226 249686860 444994450 78243420 864919478 176890784 967144450 205778368 568082916 133196638 739905896 172341291 246631392 20489439 337310385 171881072 455895540 293906259 568849945 899964 739755696 248558784 487693863 355899328 941360261 23622057 745361493 258277917 522574316 247173218 284533460 195481668 957346862 31652666 845159083 527005502 771470340 266653903 953058878 837953302 913392119 112411231 356750285 74747138 279187512 177703220 511067469 401038862 840088970 180307898 915861659 735461187 948743078 105607469 284187950 58130661 295886817 62936199 519573318 239084969 417699796 118488021 258628483 174046608 190184196 164465832 991480074 423021212 679797283 381813350 948415734 436323242 926653695 304633872 706435765 425398730 489575506 331760283 964864764 705700989 819162397 159870477 405463553 167993673 320760277 184449279 493863448 334521797 589368635 553848846 921069117 42273861 660580767 632062700 920945912 283815165 522263847 372038006 821910865 427334419 650925033 198956536 281464765 116612053 860207268 690607663 795083520 195727524 292617708 103644760 276580560 107259314 692257405 45987631 213611637 212818607 742188675 577270941 661840729 185198277 338498244 330072793 760592218 172828096 519596726 657979 545215616 148479582 219086423 207876107 560421316 94073894 654911971 468227232 627765963 346663737 710619145 536876746 664456102 618303588 921086561 917437007 998555304 657163469 857405907 252048299 803477584 253488128 677382465 137853083 575652775 217425190 847120093 280809966 739038376 81185056 279901408 41782471 106965406 11484414 631635860 529246096 723745641 579489088 686707251 66023254 960040246 495250178 774505442 7099257 828554804 522467765 928578298 192590954 621495247 542199899 580585931 152955872 734731952 624221705 823221742 399583811 708055564 72794619 593575219 309263523 352302980 268048622 808295975 125200598 303227856 257517895 531540151 440310780 980929485 434148451 703660922 2579650 406391341 113394067 488834241 231408758 335076169 133783901 448401779 439315895 702053743 215650257 839905596 799693018 881119610 147332001 668175124 400309102 727505559 335950306 832552071 188062324 257236832 54969192 451937231 7201377 672159824 180957294 550768351 372148460 414173459 397946961 726990848 368368682 486216740 448573211 491033297 18812504 116503934 78945486 246380728 230629388 841133686 790597327 850715298 503838896 613973255 100285835 521135851 111007408 845458014 584492268 701059595 533274298 989857109 668410267 872882488 749299352 919011148 59680742 346541348 38740696 76749327 49839128 290995133 225219350 639193598 4658686 325541824 152431762 841194128 60480215 998408072 412834114 833859750 371784703 417922805 401103079 427681439 342598918 689307089 256792237 528003864 317146963 922441166 355260198 998999761 261320012 347766117 70792316 748434740 283563944 940494957 347482112 388734605 150130507 784373343 325030322 997623714 624672190 955782962 591354713 728917319 694077085 843150375 548393154 871081558 140008726 817586304 624309583 680431042 422197018 649594893 532522315 718254876 670058856 850984452 623126102 679629823 331951480 646542459 330827268 478148809 195302303 381237337 279577427 294285681 35652144 900093834 755041716 781660404 469133638 531049338 181458132 685038918 540563319 607597557 42872844 553515484 257087110 993181723 797539732 804406825 361613570 389875494 319693267 629749279 355879523 922444951 547404260 883380871 22641312 958450894 804664329 819558346 293039096 825295328 477850208 542938443 11121239 194847954 156249314 578020458 307364482 594010355 341122464 927799177 560551470 702039358 8156500 950688403 769670088 862242574 411150880 674610454 221475396 685794857 126078484 474654164 203012949 365283595 84901934 870478644 845739617 968785592 475819697 873777178 416278584 443276189 21046942 192757295 125319230 570420172 374627766 567460856 281969351 895712834 578387825 919612527 313879863 998237704 798774069 959896609 271327400 505904233 227380988 655435823 516589175 525495432 373407600 573900378 242034860 781446730 123110824 174271796 102665411 797323677 141670700 926921202 661619353 785055996 539712232 903779521 240772967 488130001 29784064 580975040 381342395 847556123 312167767 859463305 659366444 687349472 624038445 868905856 555816655 924372585 307843530 995942079 63272381 680572530 587359266 983861294 881066641 915752000 757826790 888880816 730347472 735957294 646030587 673540148 587486179 957791726 510886859 635482920 329370829 545662974 127706680 351859858 232028929 719829378 545897090 812896996 532887527 801342959 317512885 525564832 375646533 565570623 515912072 863763253 544829363 729463888 208566004 965696837 410401541 767850412 69441580 139122844 93274603 165449894 139140050 925770265 365053542 950656725 219658387 362438348 250233271 568764604 379974085 620734442 544921903 968798875 95274369 595503058 84546559 625020394 445791258 673231744 482025644 773579369 484724637 532797602 477945209 717434959 8691841 224249745 26129661 159064786 67638724 850264549 637015626 883913043 354074229 939930432 691906971 748853571 551867372 720283871 589706797 792177054 610016684 975788214 750444892 874524793 108066239 978887830 566799970 784189469 498846651 631593050 92134801 365773628 343871662 546432865 416385346 798336838 135617878 757142917 598494752 866602752 741420594 937486434 302808082 515585551 131072660 301060459 183478682 383212272 109002954 757347736 391541275 416643087 140442305 754535628 726876253 914384810 491601377 813807594 596847029 678793857 420392300 974990278 919579757 939670369 13210628 529567933 38707299 963863058 331927715 424062810 400678636 986197073 276933940 670792633 151845139 620295182 93399192 542259572 239125917 787415846 615511420 715182234 483455968 650973737 357974764 965525146 646804761 907469145 61740421 285834281 284971086 309001536 63389919 472552818 375506715 866399083 322562680 923518198 786858347 835734738 520524995 759982165 226550731 480239118 321221873 476796946 448717317 740816384 559860604 577350809 337365750 619591565 586085606 688692443 326753970 434702062 342792218 923025641 434896020 978765003 66509494 191092330 169407601 605046106 70945748 122790068 14934642 957186979 200037398 963105009 786822723 832287447 425757151 819937437 350134280 709740604 317297639 457263914 252865087 834476686 492874389 879284166 554398463 891332064 625379158 709766231 673061369 804815071 65722968 265666216 34732656 969423726 730208156 912662831 307206947 898055793 282895515 495793620 189766087 709983399 478488372 938950113 845025484 873469908 570077264 898300461 234040854 780702696 224194024 994861182 261410868 346775449 121880412 290752475 63339973 194185068 152316155 794283842 259899616 639941108 519870403 990857230 436218058 982543356 56343072 996053360 366049860 681049149 78273443 119638947 3837665 555189560 109615562 735387595 547258145 551407338 508561932 806511022 296548773 660710678 631182249 712640489 219209468 749145275 39559675 331126600 104218404 671380083 332447322 594643703 418978747 959196831 686852608 812405640 528083108 916883891 50535678 938905128 659162036 971685529 63416331 377401163 318897383 673530115 423593208 715739941 530048502 901459945 586504335 908844640 725277565 934934879 539664405 581404105 284017851 570810724 270116693 632409218 341199202 867022254 437618285 783130082 396734185 925952444 574439056 883462166 656276152 787960283 288512053 294047639 14471445 565945018 475105841 822930172 61419201 438753245 421536611 663183350 286680491 565923050 374546999 967835973 862588609 975047816 25723779 258903273 8432038 66869606 48677425 545456025 219940847 493554080 128074142 956961895 920151235 966612020 324041590 724743817 106705056 373563783 21398740 858738750 101742975 496607767 189027496 244057851 52535672 481801283 129233985 991933357 122387707 147479615 21392481 377493080 2083449 21376013 7991970 599453687 142215436 450133339 29341031 37874405 22581155 984104766 807569612 942893687 148122241 949587860 277025146 735929074 91532918 969693161 254491878 732846968 179939683 728549351 236353549 792212181 716870240 778694399 505693871 826775549 789935637 968442882 500006466 608245543 383611652 602234835 530392370 836632190 671202941 744572280 393829491 738970436 120473800 158160592 153092036 187363566 180772598 455697638 244470769 288439834 86159154 366094201 45561175 508832167 461153540 465230433 295730453 347500501 178122877 464159435 463068234 900712168 894748412 957088517 257683379 616543164 201641194 435339399 300039679 421765084 84657322 190874731 174029752 758404906 692096546 766831534 365627214 405074212 348617795 895512068 828173994 910842942 446434145 652106846 350380234 618929520 499453041 776973136 317541730 918410892 528897201 565345976 381820272 809633602 518485191 752249082 56590774 665243908 433058524 647063555 628847095 824847548 509402215 845233696 290323929 445448274 68176107 168413759 35737498 731067295 276790499 365435335 84078312 444172210 362019832 624340770 415065902 683189739 622002002 636530840 629272587 866224170 179709240 901759751 289295346 601862879 570631899 682523478 622246508 853091726 565896613 988297871 338283653 882833950 220492771 314557661 70003459 389576841 181279965 471215674 286756188 910187209 691145786 820572351 451184739 806871585 799101491 860472492 396175312 814816149 532148709 765805582 379505576 826851584 761623611 786614376 726489807 901221644 646236369 845800265 532931815 819965990 723128221 939064905 365734606 781820072 355441022 779053443 472112989 912993848 247256046 345983109 241986221 379010787 221181407 320636898 149055079 360563521 69764978 476929889 290981439 516240609 347033102 722006375 673750042 910888676 380038831 633900410 297877255 945539276 158557130 912350457 200544909 665022237 195710379 202648357 38324915 785951136 2815872 476518648 182205049 761701165 93047693 783760862 755703046 831818488 427530353 442270450 308871617 976248526 488717683 807462054 687481009 690690934 340484798 354665378 347064138 665628472 580442885 601987270 185967341 851469495 16536373 543966692 29029513 410121741 274820727 983119388 625932278 924486960 247972932 859486720 235812744 993576115 617826532 691722009 544420490 689850329 158636623 997850217 914383266 928313473 16861275 450101137 171565014 208240671 48930192 482550396 303839095 962545610 118184262 185311343 113244718 583150221 249071053 541874449 196833093 277044758 267253465 271339801 260353745 734374287 584879549 602446500 391540298 479230765 41312955 633872357 266250378 477501113 37203173 992751998 705262543 992925318 817937867 826700558 228693119 646971141 253861304 286289174 71691885 361382793 36226076 179126825 154377726 261120624 257128052 852951088 112200258 668896466 271880352 431715970 96219334 349528618 256349255 918651574 452344192 717980929 539688542 822553878 120914796 823196201 804282975 853878335 107724803 723714701 307670824 565741672 201661431 604238471 360442822 771082095 403803907 453166933 90754316 165133818 157681121 432748065 8570236 879129527 562678640 897142669 443267768 637877811 322130869 636474532 494143116 704298703 105994203 709045460 468405305 709183954 385784730 902994349 758536030 787211725 277310923 645881909 312791896 588320218 312305782 455520676 245327386 424162853 158555143 967424355 9323957 224431594 164217413 166565209 43024259 397665758 338036720 849651346 512609320 571254464 270042475 702890344 495985011 630033600 556909771 606813819 248711822 818730202 725005387 761619242 588747482 833655506 820526591 896392920 742975001 751570919 24193861 425387266 56560618 128330576 114559107 992665524 79457404 171433801 77319567 150602782 51502774 182484425 121199921 308437830 294705876 296568332 162086180 826281431 718742607 943564862 358196544 460425693 275663518 516145222 439911215 987161449 174845562 727125819 691349295 722307065 400975841 676052016 74951840 330899509 74891787 381144579 369087626 404287558 324599821 867144400 793800925 851879132 840212622 981490435 919496179 963002358 845945058 847446306 175524374 841477713 388246980 587717540 18046091 625930552 231004759 593713518 447587052 617895496 157026824 392274299 180113202 573722845 190126337 499721705 408303017 651009201 473238021 553086061 219319059 399535185 63234744 897635527 311935232 835358224 510649004 874763344 579362370 616956753 235313569 565079261 170217401 947713874 41219089 111328178 93306236 502577790 59717053 906345445 185217983 398457664 32198952 657506612 331682431 765934609 658878369 911782926 721538728 934768183 743839192 744405965 123204654 471474180 325482886 570400710 262159799 412768935 123906281 778384168 297487193 395121248 68069295 933019175 183560936 559026673 518872083 756068009 496293369 651443286 648606221 824745769 220915571 841737514 110558870 111627135 27574057 582087435 205312082 741689158 718653220 907616590 180947561 685040880 47672479 294606511 248937747 436480299 35504005 205078845 70923078 114245497 74925596 646390416 271760270 862387612 224283732 481313300 19327602 469881682 312718530 637321372 54456060 743242803 438070547 467501291 271970338 706517034 314599739 898548664 526800033 696182137 650525328 724082992 287563371 566387311 434989623 817536382 700444981 835631217 291555283 560240903 244171047 748898162 438253180 742155289 145113411 564284639 498587356 610336198 207583761 859310645 37509917 919584394 231782998 267064527 169473865 915519196 276900668 536395074 233686853 849496289 534232172 929759823 741605260 903690956 512078443 875420415 648325629 680835131 298035151 335677306 173034619 795515986 486262631 926709188 323040268 971555545 227356408 940651275 202455472 402021623 34477014 451309151 38774624 389237708 152626979 513151981 457703096 519797776 238146299 422142841 187001709 912945218 478041059 563302481 154725351 643028590 464155288 705122486 607434124 962003602 138407279 236653827 173752778 390858843 116966233 234125535 36079237 771687481 59498701 746520837 163925876 780979515 594327514 990051837 630810744 658822501 291840931 638640089 462750245 789874975 682814956 903902157 328147450 718534925 446117903 627385341 479011069 891937188 345107087 946283369 349534918 928006335 267759751 291212245 113903252 425350814 294567635 782087402 483902051 752603500 23833566 877804171 334966243 700762832 660487353 820269012 577989891 837334322 603402505 761483282 367909696 940812561 837140295 888953882 816744884 902739949 437424887 868298926 734274412 964326733 792203234 816045632 693017491 742697490 306406404 947902820 701157250 757002302 401572325 985282625 865949798 880789195 872851803 921507415 377252 132580731 48711388 119708292 15615806 733724194 34856782 912382857 227182761 307500710 304011502 881247086 650857120 922943879 77651182 478542493 34177749 111888425 80651368 85907770 31512988 324395756 304114757 755678672 117431889 396593710 328276843 821987835 585097076 824752310 587990988 660870715 336011472 360919484 187373687 672206906 91058167 648758892 418613402 960163306 724734574 755363734 563909986 648840180 600398185 678716661 373982867 545733172 529001169 820711276 477698806 632030175 606268842 861917273 289503415 436060277 99012024 762550457 554579235 569083358 567396534 722493167 642527458 993971837 449070785 660817522 153892865 244774474 224282089 617563289 200542647 975404299 785717757 871933363 52788534 523623009 11937912 937851581 815520979 974779566 414080432 484940776 227641216 476829484 210978196 316527294 170656841 879515466 732852807 994239066 565410845 764917747 537620060 922521180 465780756 991243684 147109262 794223049 770442253 967263679 272865406 599266306 247427223 806257547 399999466 693698761 286675922 615948023 248115602 818789995 349377323 837346516 35706448 958609510 259980447 778562515 72521932 646322745 312051852 517056749 501924502 796117110 674545678 686554392 286943043 825056819 610522627 612093737 286547515 642572458 552421174 588998050 262463445 609117305 415746733 825466205 532698670 758662501 412560767 551010307 535273512 559213288 455300126 745841261 450277397 849336910 95501002 308640115 214242103 974515901 834375906 998369063 580080772 968850041 211677943 639009951 438476636 776134330 324131915 666259932 121036860 794998668 20524827 532150022 304606423 441418180 211781615 583233797 239774452 939086486 227253336 546327326 261397806 528485324 481973685 771509201 584416624 962431026 425872598 635889549 493832285 907399650 718621214 793086289 408568053 625517893 349773158 594808395 448028697 633313186 615393438 642116952 171278051 204122418 65744248 956849812 437904117 874370068 723839111 993237589 936679275 957200954 381823084 451639218 178118574 768916393 458507595 830310107 780931960 971046639 450409815 844244666 152501144 376851241 207921350 970331760 826832275 914022832 211074763 696860906 21917377 516710020 299843967 814371510 113838034 533689257 275643318 846312696 792681631 947263359 275503203 403826817 33220791 925196272 892003590 935062396 900637388 989359485 84642950 639439773 514490593 750658142 151529806 238627636 231630468 803816679 363327065 853079420 396535560 734042821 31359934 195232548 159605815 956067624 601229324 635480526 535547839 684359120 2019473 358015751 249284237 992342467 860432225 872345552 380661482 381624056 127973528 854095387 733811365 876823246 629333147 889351406 247922268 964565011 64272538 861035483 372380487 854655789 813838798 820502209 71949867 740482459 106762628 393305582 136630429 666752728 436130390 980257204 660290315 934602719 627905080 794565316 42774737 290049204 285531801 433746983 153466717 652134857 411181449 877221656 693893613 698409563 669037739 959670319 314879325 639716299 59981518 987292711 825423237 881968403 313137835 404966791 288896257 828455745 710013367 869235865 732806015 781880826 622585263 894909602 97254590 316401913 309676769 832510884 400287925 886323597 355516166 443518901 402751666 716976751 109060471 383453090 57900688 235024659 100636626 999271155 72365761 298666050 265880912 864613458 439847307 958588778 413714594 744318278 123889536 668171128 563213684 608165589 392203325 822686365 259399536 588208160 568839660 899035434 725585344 981309193 946016113 990786351 636845896 983511849 668899701 970651356 502298270 954681587 375238066 573211115 117629737 250122399 208253647 811248860 450498198 749428364 591225140 920785875 810154304 910722743 243486101 902854733 32458008 490970104 92130737 795368933 267258577 977075685 757459250 998659188 106619813 931773554 907238938 910399196 667470812 935488145 600198590 780591222 260365827 581442466 188632335 372071443 195454428 299340756 284952467 918032225 325373895 462870201 428313818 920326773 672562654 783143540 424394158 706502816 676987568 871440717 422504594 483511741 71775095 501343297 206763438 998514042 56908501 750500289 641871161 789447434 54501639 850749460 394053751 410031977 318275180 817586586 458546668 464706213 367769335 861150041 37636494 858862464 419600451 664789044 196217416 304963194 189436471 919762320 596023319 623544404 104990663 235805861 224799599 897374281 31386329 194501764 147274920 482437981 431461594 452813075 114512831 670842060 310241321 947555678 543284430 629649961 48094966 915583106 620299390 636539056 435185617 764460978 554841112 753118201 537354488 998646779 289896848 304166844 86968990 341246867 143486604 432696649 183566107 947235969 693411757 903197902 778598504 951941141 751980255 845738219 747587698 926416045 447854630 999690088 151642650 987979222 867900507 949458420 712594212 762918212 74442480 828777468 500686036 607927820 229472207 908078862 301005427 365360005 193965094 282100389 12089708 526108484 266986271 619159249 516938861 792032019 427466459 906862307 321608056 953421116 19010584 501473872 3603518 51434370 43588623 368964389 280152090 328877934 101940874 632461865 434311305 977379096 836199339 951273358 339120568 770085445 607917261 778204261 492073391 504962960 355297107 930753191 304721388 539941600 475466155 737698953 625525070 953031799 363646420 522902627 196033187 702308635 209679507 887841543 185043938 891322108 164069435 790459081 597101764 988485969 462051375 997511776 568503918 599037662 228578897 748887991 18612755 987200493 462879805 857562432 848593680 916068421 481945664 775023265 711507418 745574907 342969394 410543066 261694481 554093239 382160919 823597267 33642857 735762575 47318591 713992002 528545092 753936114 508030992 580881852 560577420 841359489 215704999 904884104 762868303 955907505 804634046 826024045 309765036 700413475 474402725 616713853 14455619 936234886 803422028 922049878 653021916 858618164 855516284 949022482 359033577 599078069 454693375 842289289 819477396 978322203 379032575 835254105 802595419 834543189 122116666 685266403 340972953 653957573 540837155 947613178 32474255 833763565 247927568 736305172 716773627 857814006 15923395 710015931 705082572 716128141 695508549 971068983 47096991 372824491 136523402 328533328 303103750 431093917 69204544 750318571 129862639 647709636 254252373 379678766 217057428 496842327 400159293 928485000 37070072 140701628 118981454 228117505 101279108 185787350 147224693 562759083 443414477 464035257 7257836 642756170 5479535 270506871 46308658 818152052 482281866 650573060 252897853 703046090 433000087 609694153 483920373 786136863 261509089 342716233 129728475 923335009 292175592 616722558 11202686 344225671 222664086 644176498 406409412 617488408 142452981 518422874 480446152 899356025 32831568 546084838 244969184 944309577 19316724 332551620 26026961 555260492 277285265 579296637 492485485 948966279 850082436 865466142 811328581 937218657 256001900 842209754 355323113 956462922 936023379 939277939 363507950 948911776 926353972 984338764 625163900 681479829 322567225 779078789 334414948 818867981 733683310 862048065 92597157 958454884 97834863 905413401 289734542 742824986 126448836 765607511 645466867 908131021 15576979 739103697 513330567 673323219 432689216 760111525 660484293 792270764 9768792 279996647 106906163 509928121 364900462 487936043 459054088 985986900 924684424 967288963 108699560 944481599 662770345 896782434 448216509 898866388 550853038 610202094 231035006 928112769 774710316 984218872 934691688 983224041 869458398 937522138 625256505 830108205 214699359 228122668 211478712 678559835 539948012 863664601 165797022 450351078 402851991 464269672 28198879 605718180 20211235 311296728 14722210 576035944 329574797 620752120 531414845 620181791 73034197 236003279 22140372 547945815 138182634 719406232 354712461 471263149 337993794 856294257 826630319 835777580 208522966 628132668 478698686 624760036 9675080 860344867 524198042 711914261 248594283 640438962 69313763 254909370 53772426 483211970 278333007 574195381 36004502 721802687 225836109 273312925 102403665 847233278 375107585 536047889 378260595 406124838 147325024 593060869 121537866 902871215 899789595 932893754 668541296 791719909 727970641 942223534 789825792 850489446 313384476 615048671 91637442 472718107 360042669 540855368 401638661 732996162 243446193 306876986 221968857 483310337 457169704 834379424 45056375 765694749 714783621 833273376 568448070 781549750 407487741 833878323 766707464 838486272 28938208 440647673 346624845 579153724 294582909 450796010 231207020 995065831 775995463 992244036 970203482 979073475 708621631 727418414 607792513 791317647 311629519 731465617 393193632 673851071 502020664 858795599 276890597 398022440 156386193 496235605 148634121 619717144 239299169 676262570 396565595 685493831 242876945 459065432 255017001 717199622 292221441 569830685 245995756 538232301 333165369 857788704 657211245 678566853 560714664 759425971 46205522 324484495 45247954 927612484 505425451 789126818 407217279 589694617 450181988 493654009 348802517 510921920 275532985 344720635 274022750 700385833 83320097 998680126 151246264 203808667 128193994 916756591 2232398 998354807 98633421 363319746 16839415 818455562 663646335 783811231 389837461 526919445 504222532 715603603 413077361 706287816 593627052 877096348 248011282 868270072 798917022 806709786 254167101 781253407 400078233 657627493 365020571 384503454 367200881 749892801 329654690 880105296 719134160 871749391 706244262 721509246 162445738 990882978 288209941 723455658 585003236 836779462 269037241 756607282 697867251 944106846 550329306 779899957 129687636 278756430 70980804 977756241 255367134 697111321 527904806 976544268 753527270 800929238 473953463 851594712 172546081 634243204 75429472 536858061 229890370 488647125 10368184 407402893 388791889 630072734 294733428 865120711 91643713 361286998 229958772 816041120 756846012 971784655 184936653 734670363 671487959 712755213 405213463 797308411 11702423 793229815 556855936 612029332 219471591 790364854 332627231 933284874 175659251 858485753 520758360 995819318 46067731 523849233 88732471 468139917 341905440 729873741 723142296 873547536 118959993 143667094 127607135 456193111 245991228 661747768 39600976 740840260 44960177 94657286 30072717 66913093 11465088 235434540 31462609 96492586 36422672 543846205 34367515 398571877 288877173 667671206 115895836 813680255 173477807 689311652 58132137 416580468 314490272 421574164 185330098 779811405 311542453 353594528 51216685 153310436 139359820 288486660 110442230 463206912 288095541 880178804 108719675 405125472 288984165 768629781 75446112 281814668 212216961 644788520 482127505 758527130 230360360 938312048 228082309 575652125 61582526 906328737 383222867 599712385 87450646 527841261 18745372 966520990 315873589 766596284 22962186 883026873 852337847 990252279 698579086 906316249 37520807 247996356 112031600 499693463 345684869 809257292 95702517 122029732 102320104 408486534 303078175 859599601 738673925 738794025 474877537 878865890 806836169 832918668 372890839 572304277 294539007 678776238 353693323 367449885 117441070 522658894 260515704 950473252 515542678 920854121 889060147 957249664 842536978 975242410 879426632 959468755 296106514 962458135 770899805 849717119 4439208 564998129 280782668 642213884 502684960 912867926 485404788 506719897 13926259 990214201 848256720 923189547 86949124 338853028 181745246 289528417 150809798 497161393 474897414 729393241 591416518 911624248 836040614 878456417 247445214 430030269 380595902 808236918 167305516 865172260 163293902 423724935 381386823 608565358 495564048 723095262 185558686 720041315 7894048 983151625 803027643 827108765 127233046 752345237 213076964 921564438 654979209 822395620 676253931 811129279 299072161 956682474 777741710 924613144 719388158 816810359 814551205 970824647 598587659 757278033 279180923 379086604 4429926 941367392 870992946 923558182 311488627 628214761 20700024 747652902 11817701 811326068 154230012 285438868 76056668 949493697 603044186 969897301 48053891 916523955 263423731 586357834 32258237 593011911 50982295 324488789 198457315 984251161 706278329 749646902 701685029 766648073 352862460 443193092 158585492 375027821 358513846 774464017 458586842 807760507 705464186 749922521 200192891 821813686 780374559 929380819 78187325 330585763 230292925 290333284 137531716 693545916 307599308 925246705 163629430 918866315 752750821 991370025 195416413 593771910 42611740 287435782 173880493 708716449 170102384 457551502 43169556 85456023 11052058 71559013 6237752 93863157 60823219 343248613 174087992 495871451 360469248 862351992 373748402 849493966 722637792 950589194 17228670 924618993 471716744 613212311 486618301 606423357 334412117 751377889 114338851 378948163 209584448 527480346 387744859 906381559 643801277 991609190 666122845 963987383 183148610 693207690 565241233 906891582 902057898 978987501 521205358 548033847 8055551 513144394 494514291 605041546 299978063 762688951 103587445 451708262 9575914 650051795 309934457 833541884 460043166 574467516 69772597 952535212 531598523 698781749 233335061 499599293 383850536 787593782 493915704 942930033 543081360 718304985 446440185 682808123 80418803 213323101 207960806 550715619 318442611 937605579 755238755 884903747 120228458 538827968 444833204 986224078 134866709 328325434 128489056 499283644 132827468 976469887 116652130 120523651 51128258 311739426 294642042 460361337 342613418 655170232 381834489 640474332 333784392 693103952 335868786 833818705 12802055 902244543 69534628 646440767 505696274 646895058 118668018 252115693 132555138 748453200 168301849 272449573 151190236 783634478 315687079 947845787 588844375 685498405 536070194 993588778 415013915 722782573 465757826 481987813 121597538 959380250 481346200 570923577 487998109 882175824 641467972 780193766 776190087 968863856 198161390 694348609 69471725 753514013 229074912 604810142 114357813 746736527 635941414 775476646 492738743 925093269 153326633 954332710 31369744 605187438 251423950 320976530 138564923 172445937 103942286 397050434 90995922 116396115 20743821 99487208 97209849 438269117 431289494 626845923 5841844 704713353 177782184 460531226 346577783 828914471 247650568 285007360 50238923 547896548 101897029 176575090 7241204 178040330 34138259 492300387 129601689 992091922 763255140 831689750 519142187 601635000 197751220 555646944 430924926 963582130 587975801 678615345 671184195 811279139 514483639 838729405 120294346 538747128 70649964 420493539 61599671 73111828 24755666 30276073 29088730 439317884 190176657 634612391 88709177 685710382 168875383 284356180 242628553 405298534 105236304 264831420 122815521 226164084 181350978 344301083 178386833 928425217 696284716 772113050 341057814 844613158 58673872 397528243 206948834 330271223 245304854 997242210 671985601 961247625 454609101 814845791 211444418 906727273 728637213 747969945 150959498 678013461 423770620 706315404 158170146 377948095 286687035 789833682 585100377 932833209 103566183 746873146 151725761 972096655 384139779 422786553 399754393 769030848 259745821 762752001 143388664 948585195 734824673 970673739 861798780 965493840 104160560 820187988 644463055 669876760 572969944 579618784 179642359 773138912 238059656 671875693 107408019 435957399 154816957 400617042 77856788 681880174 647034238 869379630 166976895 883002908 489444187 940318114 59571265 568510957 235172974 501807987 128278931 148808307 8123625 738068568 152121304 609812168 474019503 850467854 514004609 786424577 637251173 881321804 642394327 780445813 434188222 562143812 140506804 942246410 57062872 681951641 570044152 808301718 552583489 585775159 413875002 977037851 332907659 643649152 245810495 383625600 40542237 189513871 143369992 647658893 636271985 774364634 489178702 897602159 27975367 477270292 223993146 564714580 272222051 971187766 496349837 986923469 196418952 508844681 295983538 677829479 511267700 627207447 97670399 495209727 283617968 429175345 311045629 886322879 65894082 635571366 199618236 884127477 676536605 867093797 148975478 734641653 387949076 957500386 15550861 786592680 685191245 808070945 567929914 823956417 572779846 663590434 46188400 428561044 197013756 594349114 375263778 455363112 191854653 515817281 481023516 617329984 561401630 649503675 172972753 305666334 37462600 630041752 406771718 967256247 402763106 756410058 447514704 825506015 649704207 917129555 778519511 947002042 925352947 951319428 429604828 863727474 740004685 866299959 744295386 924626130 395072785 472906448 315219357 547371330 544178576 908994525 333343209 768118876 698276976 720958393 150742300 683064293 85857313 279914750 236087634 408135365 2446839 985129790 1771481 879728010 696816453 901733289 408033968 515068343 319474046 824278969 573103633 715952865 146265916 592722998 476710999 976157987 351683508 477996437 338479071 738244210 182665903 465629196 64194604 553220181 382946518 819315476 310563362 955305558 319134706 768796998 49882221 666083417 455539726 457740022 435068103 813860107 185473341 773985012 455773659 479339574 352555116 459580572 357875451 561714340 62155099 859653847 726752972 806190903 473107090 793047643 405024153 906674159 26836311 300375866 274243634 311103205 203507101 496534101 170267376 782921752 722985221 956512038 405360314 443302314 190843246 395172078 289567223 862896734 512008177 919856712 527347658 728454329 627303415 977097158 79808773 521832999 142189198 159752723 105369001 678040660 250643011 786714361 752163910 899231259 64759446 206111622 4986312 399891552 364962623 997418454 414815543 896989151 465471359 485225253 442244789 513933523 275028797 467833780 368029339 415653644 382157670 474697806 185556630 652822311 601681300 893641717 819726747 983355596 502058902 991979744 34808138 323474482 247622847 474196954 265514056 372304629 132333802 866782690 296934806 825382091 108973819 852927967 291504778 984413368 248199922 444559166 175928932 532515121 191568625 938007610 83952370 415107639 136957030 962353882 905010705 971108147 808620522 980249961 100882716 140009737 70984447 310621503 259808340 673768226 586885697 792843355 16960448 478820519 366849969 509500416 52273604 379150013 69646824 841544183 89169153 338516489 201670803 383405780 182049083 531754027 525096420 531925089 168156128 548363808 158184145 232067745 32697119 215171196 31934112 263232301 50537748 807434990 143091902 863498599 585884731 893050237 42067864 223029043 195338568 740995820 88078453 389928832 68107943 131449973 28913843 589662658 448463012 696821354 455184075 881470348 1579576 410038282 248743244 941220401 881720857 934097038 489543218 638886633 413503470 628843681 532179550 744213887 93718447 263309557 231397727 880985850 724310026 946231234 481988854 500555243 71218576 276696733 81136768 354195037 336787440 720642529 189658297 544883833 229656064 919666565 272998226 389699548 189787421 681345990 461638262 469876005 52748173 68799347 41869287 615080797 333514067 986835137 935523442 989648294 398824360 505049027 115872994 244201708 229074037 865750405 179585283 840002584 45599528 147619790 110336968 682034497 172309106 492666139 283416092 624356587 187278934 769139164 153879555 596512470 464650623 752012504 705517146 823930535 238356086 430999113 302545703 820595388 752596972 863779862 653893416 807673218 743422941 969810590 194049433 758192205 436824841 743330777 222513541 878558174 449146766 909725946 587523214 609292980 510300835 783658451 80016059 967171905 292569406 660097223 335907163 556959158 299579521 620522856 214623305 874616178 215458814 502702974 418836493 568659946 107521791 450322834 124942894 249146843 214948410 620530784 487928059 948615983 461768652 803869467 406781764 680929855 662598908 798503557 115850919 700331440 207529804 908913824 449565957 611159878 526619584 554775077 237905954 596908595 56047014 537897510 370810748 588234569 10620042 740029775 242993699 392793414 94147837 240771040 90619010 844847090 668191534 983512822 879933371 947551903 143644891 299101792 206973256 491296347 135815021 403982039 154913220 591489134 567817392 651180208 535089755 560639014 296072674 479079362 386382502 583332897 575830972 664833298 464610020 893782625 860960484 940588658 166664535 423886329 84854533 187342912 123342760 482330358 204146026 325303156 19764488 682342405 182064369 650398149 153882204 280595343 246083479 948742562 531056974 805108846 467593528 878716966 545340758 590554743 536089531 718503704 692361846 716959534 413939114 692370824 648055652 944588866 554760664 970889830 303463869 802145957 254828126 668876415 56989771 296254942 95595331 228472605 34723342 278394459 277328730 947576639 496664408 621281197 539871396 895376954 103944626 134005274 27505652 518306457 425166946 961080544 392856353 946526998 767865752 952501116 169298343 909969525 740449302 992712568 136959764 162934636 131989256 182597552 27160139 573786939 563113601 784528819 707740189 859295227 712408361 847743691 793206242 997390268 434199738 479436737 337091397 838795282 584459881 946265393 71346275 138445791 3300383 456113086 352311210 634773060 542147077 561295467 112944807 865755465 41463750 512757605 175018209 603347495 443427339 446878295 380393898 730423720 480627708 909269514 520672002 823089869 429002766 739042697 373956570 937111972 382641105 423838651 421794036 425931794 61721539 69975835 11029091 32862313 9040010 495601076 383011022 935625661 126990868 276635018 108188115 651325493 288595560 670464836 262396515 876587484 188148442 938463133 632398382 688656353 387424690 831294636 410302724 794478885 688006394 795746300 342617307 844349414 663427579 983814657 47453930 310642561 20697849 359446176 183617277 654223037 179585043 337876586 178603792 925943202 851655954 970304031 717637664 879669278 395650173 507206890 336880802 846734879 697284854 762180268 418644045 630161513 263826801 399736846 397178070 779678597 620406400 897738204 561341080 766901574 378009957 772252488 460205448 673158288 589929759 735332961 425818810 831288721 756257739 990551187 134695555 194136672 138063120 935408891 601897793 638302670 526933798 882566064 447907252 964691717 71058299 577220680 301545834 753210243 110568436 769428002 651978610 937381054 879150912 894050904 143470073 434641260 232731516 694345615 48749013 421383447 392481466 498022572 477405260 765378732 591050930 770915148 516805844 864955514 765542620 985867904 523528068 895434161 700060317 768048497 427741703 695088252 635039788 692762122 526179825 835662001 433439771 789652530 585662021 756215135 35764942 45051164 26857696 130683345 104857931 376242612 243252326 324443868 276465410 525380286 491725919 901222476 471168538 850652316 635353899 988067168 148545446 930638306 239012213 654891392 559881322 985554974 720853771 886310252 545051795 861992130 715619540 810317398 486496013 946453841 174727828 611517913 429142766 967331178 237358070 342103227 78126182 581079889 298313886 798296981 567701409 816762732 704023555 914500752 629606411 733181736 205019445 622098755 151377310 929208759 237231139 633714158 22906465 157625374 154830010 924898671 545072985 805266908 708446495 851909026 599039285 902503931 635008804 665865849 651219547 884050257 424940925 992628356 627887048 961730928 589146528 726144130 494796707 660495573 247255 332096891 295947432 749447829 153884307 369128241 339886066 923887624 325926536 943760228 160303826 941352391 904403771 917039693 219780804 302514568 99468152 832229897 152002502 815833428 772046481 958320480 312249986 569042780 456979006 800222554 47053738 468587084 63890021 108419206 53645313 632348852 493771314 884939264 297962765 427036923 239376577 239874684 68040739 932052421 634553785 991875607 852793236 870814624 447219571 737118408 482767873 720868226 328741288 348771667 290444387 772607605 294270903 573889332 131881683 292271025 2693720 878345737 830725378 859557166 367057152 888274215 668967690 953023515 35859059 692739275 74384936 980629710 939056818 951528505 356536846 609070520 31835318 733286317 696963492 925032674 764069934 940632552 856586345 973159357 466643080 837099160 617476980 898934283 827767383 995378375 107036487 494851438 61007037 180726829 101461948 442603982 132323883 736274820 338961763 889772692 274836801 672183921 275684073 290105680 178893041 377408048 240638641 597285473 466662702 571717719 469728715 615476059 308252801 717182966 318329790 659610688 646819212 741030363 434354272 561713078 150050218 398746047 79141670 619783921 27719696 637489785 516020746 865016178 658332129 744815965 220454886 272698464 126879796 177193432 137369437 157127888 125973970 285875453 80573053 852640773 706020016 844729293 736554007 768559043 556820073 768101233 660127073 748005363 558934722 814208922 230921269 985483854 886522510 921843078 362263603 635843154 389827762 995180753 581258050 986217479 267617452 805864647 9091530 69655297 33326378 483450624 438143445 909659729 474331037 782622659 298643827 760919183 484068707 892213479 554599948 916004515 736145549 915683394 698660758 827267538 199246368 596904007 7869636 160293880 153666371 228572623 67237663 921595286 233384694 854407490 509839656 569579147 45097810 55091558 51202421 864976676 655735225 727002069 689645308 901745334 356921068 360142374 197649627 493659070 430891377 581516294 108284347 522684456 387468673 823360920 552989703 715562550 696912407 770226645 641967560 687372053 505266705 851867415 169337620 616015155 27661877 272553552 37852909 891317951 89145376 480261097 205524518 608010722 83735171 181682956 172667048 769540883 602303589 958426157 253509089 481715215 156086041 380743897 25027998 675474833 507835767 995206783 916371203 927091307 704802426 870532806 262967658 963408745 154090823 533646925 14574327 643997720 463791913 679057632 256096009 486034298 435851659 658623065 477652240 589017199 321211488 327405095 232305353 677270755 205717954 674563047 318661772 852524025 712603612 925148627 614942658 616676233 453355548 975052999 346358519 562722910 138806221 310732594 22733310 844281679 332440863 541128617 498157373 632508217 137816809 507524693 7418128 917803071 906775803 995123237 773335286 799244193 468904831 479237754 118416898 238872389 237339858 477900776 172726037 951748994 26455745 935637508 15489764 832115989 461463648 781405310 631427223 953515003 868314498 868360545 736107149 834870360 483094904 485382940 130696851 773468420 465274237 791276340 662827301 951423133 384853862 443144865 147756343 693870525 161666329 919778549 821663047 899005458 710181641 980562673 528887269 969372270 935600466 958826609 954171804 981528754 566259101 901695194 49449598 258419164 178866193 969181793 5903124 223802583 71094295 959589949 146566219 563190814 341532058 534505694 164918466 873488588 409331297 585775595 272470926 489273182 242443834 309997073 64652283 747539684 699952897 858509917 108845624 642925884 258223765 938072895 322009215 688599754 68637695 816722412 522508528 968575363 692801945 990882723 329624405 793577409 562935128 698388091 249034828 742754896 363754479 536378210 269711291 436976286 57923218 80479335 22806588 557589993 257526150 667938031 171165236 508749638 33746863 633975187 120444556 458971211 426092398 451861302 173043741 416917070 120769773 776220130 610525225 867242491 659807114 979339147 885642841 909813059 376636287 658609731 645493452 852088563 598743597 694427251 281423041 780696553 52907354 537284420 473863984 600693659 178254153 572120676 150310590 734222476 410093263 424949972 342778552 849414110 620153411 665624513 664193937 968736143 633018414 928448502 113104583 589897041 145946984 186947742 96809356 730246264 440677899 837628035 243994871 865010350 293947809 665544592 538520503 693301874 169657018 641855038 9721419 248777013 24625603 672976444 218934224 263727019 115597829 406388333 336959635 820674471 45688468 427658440 169392939 883211446 777689622 811767589 195102228 872215061 130717192 163295099 93644075 509183876 398301489 710556468 471381345 772842500 480900966 829650321 543542028 709208399 183632360 480151930 24974050 525333242 300093921 873631312 404996253 576993671 504752235 806700840 790620135 799277892 395642851 963732550 481434034 761515859 647051400 829385642 349042756 444762715 233749195 319666517 247567194 530112205 419621501 993966040 251466932 453805767 168084173 997294979 463300023 589223320 96091544 510880708 314147248 320128438 81138194 687610273 547173655 964055020 893017208 922434314 427683438 934562371 819508787 873268509 50342536 552486694 182004797 536267898 1092708 329717166 252123370 669013964 77512791 576445565 318501794 550886385 394076297 465304274 95953778 157942798 68246829 126965512 48026687 185631840 17272005 508785423 56613772 557296110 94758951 514785860 424927316 878552986 842370098 942132889 885265429 918033478 288705581 932429918 899339138 948209809 189441464 718711645 652106350 667985000 137334249 718181689 688958925 990909766 647629807 916353844 468317512 878716788 749675456 862811276 17255498 726723267 111028709 260110331 175984083 600348621 105505060 878334670 752305273 929233426 857446646 877459511 378000668 797323854 21768551 898152402 120742518 432148536 343561694 405894936 87353920 737056480 197909410 959261525 1840050 809947241 149175943 806795578 317156328 604981392 300931843 306636421 41792195 775348609 770890274 818860868 700697030 933944420 130941846 544188067 67324251 273460412 173638791 757948593 443474898 772726967 432148018 702054479 151974800 416711022 343096979 534312623 186685136 800641820 447349812 726576390 83147921 532785377 226061403 951750653 712902306 906860450 862647988 910415410 712514598 743105832 416335385 852479278 680978062 913608779 429903779 595538550 587842234 905233587 676045512 840895571 389695485 482079771 74902091 251551747 8390737 501376116 292024099 589981421 411762546 866586795 791277824 915373774 406158327 580485960 479830959 572123371 532586383 979336760 905095329 951826138 300552669 823651446 448340583 862114036 429125617 828633294 199034557 887939226 835066162 972684856 492080619 751622455 689325863 873850100 709412523 947240943 199646285 703442510 583759933 908142354 52249379 83472126 43529960 577327721 230860487 392052106 190473015 518140730 202219592 719753399 435175620 957112967 124193194 639659504 358972417 885930456 732188264 777486957 474065978 533004781 414558816 739165231 318310924 865495675 733406795 935908339 272474877 401754274 65225659 830291249 468124536 957010197 735199078 793087770 160046750 362580031 159604436 900204288 434049818 514155854 115596327 163381804 96986958 369359148 100383729 965097779 764617481 939904694 571993265 715892180 364986671 922573283 670121628 843389418 303557160 669705564 272072660 571360408 299708942 869344144 745153165 997679555 125134773 738145457 62479006 133512120 18881837 80365326 40876495 974310131 432095342 777557644 360270594 753732933 450736919 462952740 390688475 604240422 22361386 527639195 354736085 753084426 176145968 491369563 241884870 821295528 728596752 854967774 368191909 616396595 596457762 926739068 823006000 913768260 339044999 442797340 192629584 968692043 567661877 936126259 26385149 58942839 45237840 391870737 134658009 250279651 124809313 292602210 9042711 624226020 308384669 507616025 182259197 873082724 518092784 566109452 132265735 437634170 118695295 192621254 47816587 703479170 83947154 254135061 155801531 909421922 598624744 614470329 252225094 455254423 89827715 261531086 98567673 776692296 700292295 901683685 504658311 633347186 97531273 523415031 17868597 818134252 419700179 464752174 41606251 919615925 895216429 958657355 172953263 240225523 92120878 665621597 91453181 501718422 7313901 751743875 305971468 362941716 217702207 838513634 160906023 414185102 92167325 182819607 129021920 719928021 478490874 578050740 114461921 416038837 327491853 526189874 54506050 83035143 15664805 667705728 312051817 628079313 471483739 938465883 580954667 842764328 446238691 871275469 249431601 807461550 754854698 986777698 726331195 747822813 321702160 337248559 18795005 451157735 311958661 976615823 764029379 811397527 773896011 897332203 411166303 563904480 206836879 468644472 459802572 522725770 342202863 428932159 44838372 444973121 390508322 608041942 134462241 621669204 237044811 239227710 105287283 209564164 176880422 865435431 9381905 288332175 258260076 501831313 9377163 851932579 384330754 552543680 201101819 335241294 302258313 693502736 598101755 688737503 549858164 854023948 240083858 340544465 236369151 919538183 654751658 713788512 162885594 327015641 208936297 259313418 202079447 378745298 190937931 655246270 75709071 435021903 197071539 794176517 64680986 165999027 73752093 216398336 40833392 344891572 33804788 195123628 54661272 341138425 171993951 316940616 137026612 581083346 167349720 212122332 75330934 639129725 575877808 758228247 373863289 483110994 241243058 958864116 267775135 758503135 740772091 948248567 517290797 877863071 777084413 937279271 30229837 423428304 206423891 474734013 69309195 760088433 292981280 356218495 270645066 653551099 600573959 801550767 374574442 537574641 49100038 964515823 116718184 878363797 683089559 748878879 227896149 598127714 63144065 931153415 321897339 850084553 578035220 733389370 385419902 564383404 359237379 493365247 370618552 915793717 80633639 967351739 764655014 986827829 447598354 759087666 171149318 454207022 403812887 958832258 654422052 999039862 84139192 639630035 311303393 540319694 318302061 992066543 346072564 591417271 152554921 616832509 105499341 349802315 167266593 802757494 21602984 701337602 312737099 861972523 839174865 885819143 33443676 718489121 125384923 412575413 163808841 606017891 68823943 952354924 153175402 335576167 209035617 611110480 336760951 802477167 82691418 757420560 139933722 882452827 27823049 459002061 46073290 638455492 219972963 442560038 176759682 520749490 286093194 331301503 304335847 507209076 350921997 756670802 571450952 926531755 534668113 741527702 383066605 613109443 286094597 541455131 258743773 768500406 699205580 930107843 690451042 968311779 377712059 615393590 49191551 66444579 45209117 920274349 721239252 773770368 112530793 721218205 635991823 964589085 857021284 863750610 607523950 700419690 393333220 393812520 300874782 313647304 95332596 640155331 575550909 764466119 400930044 994107300 720536379 913338729 166931434 646627933 270526110 866240254 588447845 626198074 57879644 707303464 684827606 918964592 247065852 689032642 455728863 939943415 711842552 772638175 684814175 712641773 389809921 726066538 364478226 367388851 98769979 300567965 195933755 800766375 31547186 52909362 36115534 854886207 528433440 632157921 131099495 540291044 516447610 599105013 317512423 473180267 358737608 990362006 149099277 311640805 288083858 842546846 454217451 497426549 424489476 619591608 416036335 792415553 22657945 942860504 570649058 999002393 885713208 995890035 928975784 937910591 147810974 779210629 402483526 572119231 375689794 857895106 571869434 907515103 837999739 991312645 829239269 836007051 800803449 812537134 597157138 895426746 135414664 690075956 435930381 586328030 141765181 918159951 250391207 551551386 92551907 638251441 137961862 540004579 93943555 467702797 171170584 423416527 312486530 314532011 134687767 370347001 163818179 663528063 564755888 888070897 280619567 369432990 107412070 382542652 204470155 245862982 243226965 437131749 55711460 457248334 224890966 703249587 60822445 827957432 642925179 938211633 184390970 473582507 276637102 935173092 14152038 695611080 346486254 568326770 1900004 500105550 319121142 449020713 185280014 265131287 25246391 736100896 96357610 165752059 146243515 221792650 13354744 32179071 29413021 971528427 316456449 667010840 36924772 524517883 448652169 812324834 241828488 506156577 439542732 702707503 396691920 994310727 299152663 784374275 595179443 950002417 633859217 773872452 617399498 838872595 63767310 353338447 234355539 373126341 325821315 857633033 307132272 562987657 511481723 910077946 430203574 780649559 469775835 647921142 153589557 362354906 50596218 545060728 458152125 576302987 409675696 791190869 630642656 711718263 535296676 736453563 92477156 644067309 352954836 871432300 733301900 841448220 728460301 991786574 72235749 269149173 109301351 973606585 508265450 891143309 459705377 899918138 739991972 828790340 400835998 891590955 274736539 838637599 588852421 644638967 321399932 324200918 241936919 684219284 107927165 609923445 484338241 634258634 416855415 845783951 769374666 900141040 572154893 725238519 704777248 806677232 736747092 870099821 562430100 863849258 34197205 336616865 44823782 836311920 52405170 141254111 3749870 271447595 68265012 279315129 96540489 241473042 204770984 935916879 384886589 614878576 288019349 730694109 231199131 425046718 422029599 569682574 312256968 331510868 70051269 580914223 457366710 913403883 470099908 956411097 748983186 800829670 777244556 794634565 770674625 982871918 578250055 739645506 185696049 539307309 536842719 674113614 21676320 38290987 14208830 993683101 116863889 784232547 406105447 644241515 460592242 755435105 77663863 588700015 335851510 861366387 401259031 402329283 112587567 337565875 185605277 897113596 229040192 665624947 255988289 450038464 112923838 182238290 131520291 755661701 26553133 46905912 35513285 670073516 628237095 894207866 454919635 556068964 289948554 548478289 474351259 795588686 791202610 985330472 675374581 874765880 240990818 920020045 125162303 338566561 151732311 682816280 446877464 703444529 326196155 765526271 192323598 270159768 142248196 143661667 26560749 763673693 107841701 817820903 384469809 816672791 288122851 540705485 303380138 624149624 575445150 835969125 541601451 670042186 401428845 573320028 88928845 861199690 789300251 957777614 523432755 948895104 770902578 877472820 536777119 865736278 535496557 553050758 178233320 311151417 96726634 407658427 384213306 927911148 108886470 338116384 227196978 649575021 67197704 931430138 818068303 928277164 377438474 865098160 172098630 840582714 127641422 482758307 22460979 58420359 4214690 225421878 110905573 549104011 529496693 841945633 79587247 642245387 616500160 937509690 648097108 959953979 646850100 957976766 137694852 167049613 47556613 627336519 183396132 765560517 534727440 567630275 178941967 548338186 528155716 556985814 106120670 824752984 381959832 732459530 371617141 781461300 535599970 967175661 89740220 367035098 75053702 271611500 71796230 115994307 97357691 140768096 53173122 91229408 9151967 521365186 381375034 592843521 80502998 459928094 315215687 804314316 271719400 807640187 362731682 792986591 647562969 922577262 14730604 417844300 305939810 865670670 640010770 987947960 219722328 834075651 676341569 785870141 257876073 876716665 329137479 599498387 11112729 516973180 289959415 526500146 416465117 930520955 148988181 792104225 589125021 717809519 315438448 675173829 61918316 557422203 305072812 314343123 75361004 768331630 210517148 872131084 719994362 932856347 924561221 990749219 758900481 883046177 629739441 958749700 328243628 631590424 143371488 190460678 73627448 218808682 126152132 429145053 328812686 842356183 835574309 887799229 596176497 602407441 226743383 366867494 178288721 197795773 53227127 90549093 64251557 267168262 9217075 674230710 505542804 802778129 734601651 868626264 852899493 860429309 281950767 920665357 685091022 743945489 622950241 871754287 315189786 844023057 272749902 811220543 165662901 250485144 146595176 513645149 255491884 944933139 105782254 745428533 634249505 953303479 355601573 800245055 184668039 755273345 436587035 663245287 614812903 803277792 692815766 940594905 360464959 977757553 571228111 737669103 86271817 644517942 245356420 246599909 105839667 851424395 518095815 884654469 217919346 903414823 3379023 530784366 101910123 186875584 185673670 539987818 199092285 412242350 106562571 408529741 254014267 677895467 381121309 819076642 277226066 973397874 969056916 989527512 967917156 982400010 22118221 344420793 5488410 705498162 131539248 283095960 235346541 557247644 324755698 747793781 371039510 695134536 693336449 853921413 728414079 781283851 662167175 835284946 823803653 963586072 233931098 243211870 196618682 334112554 306873289 942394150 916176626 966358884 459700101 964701129 712440398 795964461 268592150 327521612 48224313 726658908 239763561 908444998 146611017 624043599 606896552 849383523 251289084 415448025 368369787 537699266 526735041 749914917 321552741 880503142 605038781 785910492 85043094 616049335 415214742 557911038 98851574 377477911 15254204 756498986 501550930 912253143 783016353 899811598 413523216 800006185 116563623 787227102 509017698 792274479 344211879 743480524 45705769 282177176 177908150 407988237 330098293 706705426 638900289 678551705 20550288 946088378 632785796 850049761 547240308 958839185 690837009 757544329 62460734 982911096 625806594 933355992 7143494 458772019 269085936 854478065 237947009 421489967 176414648 727038465 269187833 315002258 60038211 637418965 80161112 564533794 421915083 435140225 78029895 230702619 154704472 415109128 92637542 430659390 30792260 477240718 417927707 824089259 365559470 965670498 799733259 923731931 414721709 516277604 311631335 937010015 401488603 660473709 488962417 930604286 160734515 277419523 137209666 566601017 298955114 382582432 121918575 282175208 55778006 187902004 140505675 643983611 90789103 204788265 145192871 838695985 739924225 773804528 196126381 372456337 264596185 590344792 332161046 594048440 374296264 988419598 168428558 411033613 189552917 581221057 409309248 681108560 546932787 873647916 560751513 865061131 759956455 833607731 22397152 718288191 500602607 549811002 90065991 649397445 66147690 833584466 544583947 703240250 541926400 682209320 271960729 632497497 498032485 778779138 399833673 896024132 143849212 329156160 146134907 314145973 181749826 678811047 96826862 235998479 198718748 763767637 484693433 575657229 205707900 245829671 34662737 317941919 237317844 997892739 67937412 766438743 34962678 648754690 533030339 584692748 515618189 536532005 417167691 676678346 447593281 908864058 199244659 826282754 326312745 524578596 357301599 442420938 86978463 773360250 260817863 951242584 874342765 959985688 549806932 648882611 518555197 554825844 28587562 82674694 56744055 571085102 10958439 53197441 20677307 193730632 186156756 609778169 297078641 959847435 567512987 638118145 448559017 898454560 74972496 790119878 25399955 572673478 282357148 410909872 152571022 472330758 318289289 377561034 131816973 196062326 27210036 770122702 126784419 441416969 249868699 437322085 272664634 540260439 254273991 632813260 375333691 961381790 755214491 785932651 380978209 708382714 230843047 440211837 292472590 317979963 88126372 425980443 334784143 430390332 67916279 786727487 515416869 585986770 175196998 766966056 140351354 944525467 503826260 802844316 330257867 873189973 2982784 117361348 57394257 157754270 111607297 660658186 492789186 777251309 162320041 971290418 652550978 952589555 222889049 950270017 708913066 735736931 127405030 532035290 38998407 909427579 822339198 861477385 591952695 654956025 554679474 707408814 702960503 934057612 635112429 823361643 616737152 969702043 250293445 627906712 19207884 840460845 769463621 821415442 325114564 867185335 179061849 925206893 744021065 834289909 594087381 796642267 135620102 662026856 39735632 903586187 617067178 803885958 471836873 506991816 196778009 482487146 450779612 525563461 489280199 913405521 230567041 243750946 8454858 918945027 671434120 847395410 519485276 887914071 847233266 951394524 264083083 451045457 236400409 341624829 229659935 620358253 264759334 444860916 245194576 626367492 602358968 939817208 486598013 908157595 800551146 890893544 814022254 864930060 124734575 980594565 247234249 598663905 577223846 832798095 735611796 756448128 724531894 862541873 388610947 450754342 220337542 728903167 546186272 565054863 86828264 162635105 104970950 297057831 56919973 474233430 467544233 484388072 316104634 535521258 7539372 763781765 91833561 377587657 220874362 615195487 213600752 287370426 67457407 995122793 193705114 638594598 579598464 784861866 190290778 223965455 211395535 785204210 556033670 910178871 255230969 718535578 43557421 139684652 113769070 486940313 374812324 498327955 97790570 345333566 119020596 924824292 453086503 902714073 665511723 748553294 227341003 477119163 395481170 734231916 87479180 575969556 517741596 973456279 435872931 444712663 147309913 747666818 547583824 918975120 774066461 961679911 20612956 575965874 318764390 486751481 375188221 736347190 229286763 385948072 106367135 905827324 564865901 775869974 610399066 994834476 678572295 700325873 212979083 540538590 362442083 676939542 211193935 233291020 82867913 123283692 40364814 694944523 208018502 215154418 152978221 597437328 30058122 288960123 198239010 479977751 292276894 713269090 89640373 556772867 188066971 846822335 694749964 839467505 760984474 921212585 4842863 230724054 151816137 330210305 216985053 334119373 169236881 350122724 95956507 956618138 773510321 788871970 219780137 710451736 391094697 933309257 249701869 331259677 224713358 451839734 420097631 698694385 398809865 457724710 315257851 740503850 352635851 727486658 384968685 467772256 439738222 789906408 124281600 265846089 119372754 663355331 139222879 668190790 653714443 763155449 499425932 807236201 437423144 902792627 493733227 798681104 266121184 472269054 428735023 428845459 244561831 742524638 304919276 464987413 150037005 749443696 360630029 836446953 559462746 681905966 529256978 643381751 228436585 738323528 712217919 846443538 215741132 702927994 313719050 390316331 66192539 189272552 101306208 446452968 353802588 803943489 572423374 754368063 568643906 860322558 12830780 52989845 31745528 675677767 115610983 314637266 314127819 393004334 61048566 527780110 228021040 970461587 780494009 907457119 687815932 888197069 812333473 924493849 775795359 809571011 340146670 898906535 402540779 771046919 641065817 751061541 134155626 934780218 885649721 955738757 664263053 675833078 342435959 845000511 118694460 731567245 666891898 993509556 423629354 742101585 675056552 896680189 356262640 797335662 64251323 430418060 77386522 530863691 499363131 630828332 451940760 906527649 606375019 726720046 149434247 367457154 147613607 486498938 332134871 496676422 231424492 416266665 354046921 938431559 364914687 694767634 458177548 790565854 577594522 679477216 422848687 517884767 354257142 677725513 643159270 744275658 25958026 956142964 526626567 600249440 48489982 730394267 127420825 328933384 51236481 224086378 54173130 73063005 50019621 208814721 115783875 929931129 696063026 996972194 855096552 897091654 404835555 831392505 720600918 737047515 714943008 852466519 121286695 948951233 753197505 828226978 214216035 730150642 36486161 365058172 63362622 396915205 201068103 947018586 333403922 812029368 347232512 638902104 257684144 336357451 48048801 858682856 227440906 374113019 323592451 501911452 500928645 919424683 773076634 841224003 482952511 715043058 343325725 566104446 386056552 897282952 467730705 690005438 367726109 369534264 52101765 202401487 183680373 481881804 2627309 28901298 23950 754449417 581309269 843788714 437954580 909445625 587770682 873722488 376586289 497625908 257650320 859357068 476720438 646204231 441346076 958602901 457207649 686129730 609284877 836761183 810329428 956609062 656417534 680808677 402485939 667335051 87122432 190179164 12950078 645308501 397550083 826330698 694498141 750730706 380598856 862407684 88047269 472597817 44023442 968809786 4977984 658078727 448092411 996453763 509772692 705443723 652551475 711441823 497620810 685212612 517557803 793731056 368030761 671467955 662743383 868910625 408336912 444689955 80213101 411472661 9635605 406837029 337752318 402665757 80162579 170110399 57343460 513783873 107075035 369390681 351376512 901142571 730687388 796072989 282362390 342994536 218990426 898946780 376875026 460634156 152628416 348351824 185046906 271180964 69838411 237963436 6387947 118587841 31535443 957501519 480983033 975617956 35366018 493115813 112617058 358881623 112510473 725214906 556064169 609439267 179834691 478176456 250741022 830398197 442283973 744532747 540526953 651370842 578899921 838391338 623579112 893731308 410527064 521160421 437482395 438486393 7825248 258650501 207608614 440934681 295251668 772413354 472882051 631014738 607495129 670790809 474683313 541098105 366107788 575632581 262887357 914898751 379026063 696414557 62939910 118214899 101529150 119098657 96279474 626606783 616724627 682566391 373845037 779739678 254742180 816967609 618103458 781858453 367358692 940754758 98742428 983016947 801862685 859146723 696151796 855727967 693559156 897089688 610741228 918594317 398928590 499883979 390341533 503574802 177807114 688989954 405037872 578316856 85460073 951500669 560157085 929355391 666754491 970480135 890067844 902647461 438348113 974468789 220299969 789201468 160674711 723555435 59742037 486841604 325617691 949657793 551411714 810709585 125992661 722593877 193875197 505715740 120764713 636742587 117256089 738856540 146100751 606981680 461853397 832599499 823910251 966378862 326126293 381917077 306867445 615186410 296473070 853711279 735757827 864448966 11599472 708468748 248689180 977222519 135391897 962745877 595574271 924117727 480257612 984349770 238463200 347994264 296488474 785962042 447548839 939488605 153745410 705861197 393268058 408460799 58627758 445988838 320837535 448949054 27910781 702488165 474374110 609258720 361312210 431251717 302263112 483484871 324462471 389176336 28293545 191457624 177575462 545091591 184209356 947427182 514169189 643995999 641847415 812676875 50586527 302214083 11822239 749927958 744923726 982557318 396581888 652706450 424217525 573061684 356786290 950154442 779090723 955545949 291157490 570544919 289555722 935663772 544866651 641593404 469993625 605736729 466412189 568443067 223591585 546930649 99407607 491081001 119327601 430174238 97414259 369263020 347853475 686042509 58871226 678081023 191896321 759311770 308636353 765200496 63064428 778180344 460056554 836182743 49301120 679360747 312677337 383960669 32466158 456107212 150705293 928895324 293166797 969918928 465706878 686893854 90708922 459934015 11359683 643894633 357369380 403639967 233381083 961244206 625732943 874614456 412007354 597560216 24188126 690248415 149843191 270656140 127232785 325570708 244625631 897408998 665063981 944123707 459310182 677073525 651225444 846442984 246152265 405364775 295120711 318180991 121088546 417817793 396327764 828875025 139890196 311572464 269469303 479606866 311352858 735460281 144273884 642684649 251988374 331842907 120125212 183783519 63596744 784266179 217767484 582118548 42090905 536961654 488573809 788014525 132481755 450890366 235384218 965564524 716907577 791595452 532490335 679262663 652569669 757717296 399878021 504796099 74561067 677934165 367745209 397705527 275272780 632231904 142666011 181939538 97321511 782394822 693425983 869758634 27880311 375367614 185668601 469193915 469076071 866049793 421032364 676165927 134677905 986123658 414771735 967707806 872094808 943537652 887433320 995328478 45601532 454533423 255184783 877270588 188900554 887870494 17211514 980712607 674408438 778877740 350157233 410643115 250636040 651339243 562320506 831198885 391702157 454962880 210458905 682140943 226817723 409418920 138005965 704983218 267378062 992940414 757059856 991399839 217106830 934380014 31496426 765451246 451405535 741662002 688922136 727732080 518212622 662463659 46198737 387889369 10825320 66571359 15025295 779568183 741301628 837723795 83334367 227818222 218749752 822000495 173389642 981650919 601065326 768990281 508108097 597057970 337593102 436724647 306970467 372826459 265182121 352251457 221172143 294648834 63643669 110368300 5536170 135107785 124292738 255829965 82066878 510661824 93696378 911320750 719493041 817566752 244843986 370795310 258440713 800832938 162830121 742914756 156336864 196666721 192603799 450936869 306671497 944278874 63339448 679420144 85071878 486068366 54224163 495176993 74483810 749066532 681969811 798781493 673965947 835322679 185541911 493875219 76072149 612614232 246629693 459196811 338790803 837788291 716746046 865408498 822291844 845489008 815690247 890259465 499936611 811234214 786262895 911065098 738544191 782418035 523769721 912541868 449215476 646854887 178936845 849072343 509625021 974183770 960647037 974172539 37824776 730323555 400636813 455865798 106357503 270587125 2332571 310704514 86848487 154482828 146668306 647320788 280711964 448100654 287490175 694189702 297560730 567532155 25418772 866092551 192364626 578102145 39961586 457991842 314035503 482755988 235194254 321679850 300100703 900581481 449137733 701457589 514367867 613128365 252133303 444027137 245221286 344856720 325292945 369599348 232324597 679349972 524002639 811689107 243659163 575023053 510086512 893139196 870875691 960814448 444063150 456501661 190839868 791860103 531924994 749004227 386497178 518577109 171351447 208188169 105853937 114407143 83175026 929864061 476595842 664026704 154995683 852248056 326963716 728184244 165911558 615472357 13402082 940703025 662258727 850525537 691146111 774092861 75540228 847939348 603385383 807367151 206434312 774982099 556362568 760086643 403955639 686713779 153796710 804477006 357333820 743392121 96636476 100947478 90308166 932156980 319911929 756123041 509879946 953364422 697817445 978642402 819088911 906777074 146240463 310760965 307581344 553675087 457076301 968176560 827039469 955625496 549129557 660834512 354353250 826669173 334823035 899388448 233499481 576421844 406784850 898880428 23916166 55802896 33499737 587386315 450936199 936679215 146426347 171335240 168616742 388642496 116557245 568405069 169231451 251074511 166491371 384896859 188775985 993806119 54507361 92067097 38922630 715950643 223213865 586474980 451719230 699991356 363129177 699409856 681530651 703122461 461433365 571400894 518601256 845907559 256547458 757832982 198794094 915622610 447146218 590575356 239633346 536829014 191130424 868133122 674391885 968385773 144463039 596944334 147164267 534164803 473533751 596451101 188604821 465730522 216767543 744498276 717233934 842826688 578681129 835574698 566843658 936996478 103419175 983674315 784134765 998943694 267118451 441473754 179596371 986613408 539024704 794428424 192864457 308801122 128618864 843769582 781120843 919159043 409089731 932927924 13896464 940867669 371898909 605964943 90110873 144896102 28666242 581373585 322962984 348579762 56488540 325652397 34475008 796575847 15933499 929966959 466317653 552736866 515233928 978542373 203042336 440898852 252325649 970929961 365979464 429310663 329539239 659763310 246948065 922065027 20792872 91075887 31198957 966898884 510094572 895227221 165231922 600547844 449339112 588596978 197994053 433300646 368981612 571106426 196319980 847838679 416257394 877120711 117699137 487455988 465078565 736282726 123549048 342743899 311826264 757148332 252853039 953778877 114043441 697476585 208767633 925211609 754185331 881785911 119485953 227872655 186609397 309838969 228339945 821110852 662439535 750529759 335120797 898655296 646574728 873197362 371162721 850439633 408865588 715850415 498765415 810525083 453765634 671204493 14612906 274161552 35235874 150292366 65332460 73883667 67260295 700894768 202597103 903450800 671686581 995668457 211293890 981976607 722988602 764988207 594855889 974126573 30257480 476015699 267256165 941974497 754870329 816560906 632730007 688863116 251046191 508069481 15028837 193482257 32667169 154847637 84785701 473735941 138014418 356372762 202403540 514182576 474679683 947496939 155302 174465399 22540453 630129568 86186037 588957982 445928263 887211996 343501951 947671834 910273833 946582818 435364849 823056716 669067628 905491558 380483554 395612002 82795622 200963085 149297223 198321938 123421740 247099560 240728752 667296824 332392869 578062371 85940182 130602410 1188169 794657654 219043359 532368291 449092130 609349007 551549084 836474004 108038440 962861103 807826420 953679109 318638016 593376221 259554829 602883442 355510076 878228952 10731883 384529935 147051986 342233331 202382044 549082907 26029344 763966827 139492582 690711077 319082158 884458587 85279083 239144846 34655800 570675928 384786518 588129339 557951489 571240422 52301273 399975452 169008357 241209124 87186116 747569689 636966669 972772595 273604111 307857336 46195168 203167641 119980738 211779710 77187882 251192454 187822998 611226107 289815802 580071833 191751670 603882036 484953863 771422837 498418517 810522273 505747318 988306671 67958063 343102659 104258687 900039774 120866221 395154650 77480862 260427154 111502106 793096663 348264938 489388998 362875623 956437572 305480032 605976900 513403161 880159881 393889587 952718201 773388732 781579796 557386984 744561198 349989907 439453995 320168732 583348914 114936306 426248270 266670092 874330569 106265274 737386994 590665677 837390910 392900410 520948068 232421706 740992112 466535404 597477452 69933470 255571210 32850462 510427578 341746590 956794803 630362135 907878696 597507392 878904984 785172578 974648375 62505141 988140047 152235387 679848826 613597893 766164939 159657641 811728644 11058872 505288098 238660528 896784071 825468485 874403062 667000248 950147738 548815654 790976847 729846896 762765976 280009051 683218833 99481673 387017409 192845305 266765671 227542385 686659297 602882062 722437863 283544327 406547336 214704938 982961151 280163602 726667036 675537163 870605267 657046077 766262043 340961562 482246393 297838274 367825904 8501029 194705737 168289391 287885621 214752246 514172464 241329799 726838617 190793778 406590081 343681952 503320446 496369095 830544080 366684397 533087539 375388279 729526462 541717800 770452783 415612175 419355961 293624236 473528214 294085642 875493303 530401210 643712997 332940100 475326739 37196978 815908037 388023221 855357282 854657763 882143402 21865945 778260394 655669137 812013580 561991899 852582255 681537433 869899795 494895185 982334165 359674014 546767715 116979145 406449036 192150354 728902129 278112905 603890340 296280925 456417757 158787883 845341100 744301365 945025205 147584559 317529356 232853651 258583531 253960773 411195411 29766537 316337708 293082980 376499811 327347985 554535813 341076934 368446371 74401354 261780601 3534886 891301959 329214711 567619387 397347300 915458845 44331124 426325469 49423505 861327243 516342045 653614972 520279910 752524447 356792553 800716517 306501827 773020546 390175959 930423240 713258826 750248060 394520450 659920411 365351525 605626356 521113439 563615577 137538755 754819019 228326310 465097407 209021613 942854936 477885239 622976217 46177669 345539711 71595812 235956279 6406803 859269799 269605235 836347465 202515757 338596629 30103231 71832309 71719439 987120312 924435734 933815803 757856620 892273802 24895506 192488080 179288497 421522323 387380381 881416143 308728688 640337761 480930081 946393874 124111504 171736319 89497242 138437999 74181293 921424241 558001419 610942740 591347361 813889093 414417560 477884524 32921846 798047701 456642071 847688286 259100816 512761181 343477564 589618008 342250634 532025940 244761843 787725392 220392826 821330790 10838551 988088611 598054220 889363503 125179662 232582339 222358787 600308995 536391092 701940483 460564716 796337222 323415577 390778693 208968687 439598276 276567906 873529478 805908550 880769079 490832318 791365469 144038182 175036850 152086479 586159643 401434232 903686188 373428117 780772958 518017814 659074720 383966807 885327281 797728023 823586014 84089452 317047062 182360933 466587310 386021553 715718799 514630245 630773421 535974876 828328456 107579755 889700484 708301632 982333524 899539673 977643105 647693450 864966404 72169900 343583293 49119921 376590054 200537897 310418024 216382752 777854858 25216163 957503421 174042988 564936553 505048483 859152816 199787066 858529499 226941727 643753497 205765722 519409614 120354015 540506465 380774152 770957644 180947149 710303793 17345366 531754381 397047715 803360090 2070526 490722736 440377395 891906272 507756418 922050455 683896444 949927237 265889276 629323233 433357546 541961665 320714726 782652195 438790707 648712727 105385857 804687125 545260005 981287561 838259194 933860841 129544506 844691628 699609203 791476602 596208882 868709498 216665302 894054293 473975250 940894870 470220862 628992896 503651610 867465524 661335592 718296028 55307368 761762856 626201888 818865475 182157849 576416628 156374723 860226657 468210913 985818573 774847740 798406839 683938522 935264435 754778024 833963345 523388630 900177615 688570683 894741103 866485816 945706508 653297075 880355807 589382783 712272435 514446500 766804355 289336180 710099919 416910582 986168966 124650805 342218798 341590134 370448891 357598531 387874301 285667606 858244648 340250394 830759732 481085511 562640657 534381345 621453746 553930875 625513766 60570693 701810080 399802523 817656900 481806102 658804510 344352141 756198768 41980574 222033079 83108316 192790399 6876280 931029559 611163871 678193885 203278284 886487321 362986631 506645569 166304219 307628364 265812686 636759397 237118289 816657337 155367533 875076387 521568061 762512874 8890693 748085042 223345829 279323340 237321410 889460813 558287535 561545828 524847287 526073571 228634642 778572319 703385456 973112724 352530190 901545572 315482199 478632667 266854883 604064611 544236203 817398267 582969203 732608087 265591313 284992976 80310118 367473210 288600763 970058752 873472530 893295872 742822666 875563966 41793340 760926168 425362891 822222829 199943686 480919788 155580766 511611186 45754416 570694652 276913586 978268657 59370007 93406141 81934442 381101263 252381653 560172730 536372265 695211949 681020191 842313945 122033114 235232024 27962825 475587782 163098158 690480514 642906166 988070391 448692924 512690493 182199335 869358636 758043812 973902236 411089895 851267376 817542470 821591629 682928896 907332126 632663684 811315259 506797031 766576323 347552605 617897755 555235552 973076966 210440432 672844343 611890219 994990188 742756240 994835509 731640867 912833902 343913756 442430611 331505222 908292823 721891477 951257395 813820671 938249681 55702394 312981877 2319755 373757149 83003277 377344398 308331011 546049959 118556302 249283417 119811908 460378942 114045843 275742575 96798455 578963031 340209886 914705380 162330008 730229642 175862041 674136667 408644488 848530349 843711154 977774308 583428866 991096498 196716254 879715204 70792437 246728566 102319729 542849761 249157697 326389723 251401804 620682980 454151535 518850549 343388126 345016763 222450057 437081120 370832263 591004096 165467125 826095789 118540535 801727893 441630247 775392621 638220447 689703578 28709706 263884054 152791288 816657562 467474725 692530642 28128257 924758844 650076628 901520632 477760761 886041555 411533484 812037601 570271524 905081711 230625005 517999016 330247436 507113003 414001375 656459718 112755254 305173243 292527210 420255936 91228753 320708002 239232984 872695421 308665926 309440428 89481187 728941774 727073602 946109576 384597953 639161462 513424183 972925872 408850183 569583533 460048154 805963762 94932849 977738803 550486952 985493730 247475726 539854094 201391148 681122196 95535921 672698619 183962841 457499654 362211045 510066352 262019501 357668612 156878940 210360613 153853268 864712702 838513652 958634888 44966137 611645149 527368651 945561119 664639825 837000762 556095046 753315736 502491206 576007107 40695420 74702044 30274496 453535393 266723821 870551612 445121683 824120632 210494440 578277314 275989429 477013769 164201932 636322859 284965247 875394124 374707686 580243282 452418414 521234676 9681438 583045834 211510045 984084403 682953502 949931437 408729389 696520070 592521060 759375399 27955711 347801124 343065929 457601039 189724809 876606502 743227647 848559520 297378435 994315286 226753562 995500967 90407487 976312017 404402031 811317226 370228331 728462224 653947811 745564862 235031011 394848438 125633263 871069327 30645478 164087314 49307488 547874590 21429334 240473843 56834200 786141102 112826686 259577739 58735048 706848121 249312288 779811735 592708195 624302612 575718321 662320997 599884615 935758607 404997414 665975562 4103503 554988162 255452188 377280016 209856457 779904804 701026667 733797312 525704750 654134108 323147671 529240627 174829825 957877153 334448757 906738303 43341104 659048936 510766284 511274106 302677918 414204155 96337120 449864239 135369376 217697822 53813690 450205629 52481967 235216561 234418334 695247932 460587388 526788160 350089875 492484369 411662836 728412860 468411675 845477172 85387973 837056494 523318377 600801863 9450293 419184954 220228006 743872996 109767738 841074122 637797795 786075061 552050584 704430491 244362969 687301932 438597305 930218234 210322323 221069393 111137962 230411180 14038374 174292434 170035242 586549495 336397808 794964914 83132046 396034081 224899300 898557801 281829105 616271047 564474207 934636927 425325869 664669118 347385822 923225332 818254555 950041509 129026989 364743056 94134980 701981218 391780486 952445893 737823702 878886106 721404708 772275863 130423167 994539615 235714216 511579771 368402204 688588079 175179038 592317716 84219686 797370174 197387820 317349720 83120679 709174037 684546370 737710874 337582740 466557198 180971800 744507553 437923827 477261541 374592632 548741062 49228212 515350923 327785127 359363430 209779376 842734239 464264442 892227100 423402144 992855470 938032575 976614969 553485778 636383972 341153080 361372188 352008953 753329197 514420487 796517190 473683316 664338186 604031993 740407959 167830267 716498783 291686223 575196816 146175448 879876935 335300988 558796687 76033876 415322576 229595548 234567618 137553646 566748206 552817366 981918920 8820686 48988800 32360198 571139821 283721555 915198559 436523227 688171127 79546493 973423313 343271520 658245659 370657969 415847181 259496790 314885733 17125795 790956361 403625331 682901855 629533268 679006453 287886593 497262620 33886706 101391068 58186999 492314268 49444379 614536450 545517814 579831400 220242080 878822781 435407536 749029449 272721160 692621288 658099085 747248447 90733624 440893956 199711376 343372562 161182206 966340473 255794806 959419889 241599040 696456682 54744111 834347550 638040198 884086533 696107408 882453389 830886301 849570149 219757870 788337268 240884499 999846409 72474355 455622065 153607121 267364271 216299147 530214414 505724688 670031237 347176239 351301123 303330930 894069130 356932942 588410729 414484542 700080767 612049692 787877904 4264332 760408351 524468185 853207506 826472144 966310363 130063214 436904843 315142604 353802932 111270154 461993137 13241171 817310484 769106489 980175968 633603977 775067568 754605938 791733749 78876941 505578242 468563870 656197778 470594305 950226941 273773354 823772585 702999769 841360154 338835285 458024954 22033455 251200974 234163233 393681429 297015434 715296886 499285907 601641491 352897216 631080271 425393646 914000250 332408711 411776351 381255170 741102053 730717174 879410158 791506595 967385876 22328603 146453924 26180740 842779882 224100170 597743162 134641280 766863219 578192680 904917087 398285318 940386670 831576500 837756890 578680743 775671521 199751908 468785166 278903063 279054564 162066425 867207226 855613135 855961148 542420606 961053969 388646289 910214136 305393705 804825936 452395100 481738820 72447018 497157684 289520508 890459267 587691137 903932368 783984281 903116474 552351320 619190787 244255695 457758964 361451701 545765908 392501393 670591497 544412832 928834745 668813056 813524758 811785950 988837484 499960830 832111694 403642503 782717665 694171611 712920139 406357715 458512791 16365003 957342333 864863592 938528356 193016464 916540933 230325117 778004258 728944862 906348817 151035166 414280528 357216117 859918464 787210922 835164679 469434215 975135063 441480769 839643423 177053120 293868925 225171372 342673721 248076023 572425760 187038127 919806838 667554177 845585377 577879660 756814250 517907870 724568587 198248648 628691152 20427306 945125851 774421163 796357350 762354434 933600220 505704207 837536466 85866667 627304098 493687573 843631868 275519996 644510024 89502384 818717483 661141924 842048561 728601227 854098763 115538656 176060550 45186333 713106464 550432354 632627869 209454124 628093406 535602860 711084309 535315318 595539535 574164428 895078204 648028171 681194206 175316008 674596273 120911737 423804384 83791730 460439012 335391979 894521467 215410559 638003338 293352030 609027937 213510482 863271807 352363459 926849263 231727926 660871934 140840289 373326124 169280900 930536199 661959918 736939703 391814064 392243144 232850735 703855468 694717855 997188205 748336781 851884561 243974737 716405442 582433705 874646713 106814801 744140259 294105742 502693094 9435570 419006480 277331535 303297960 51110161 612434747 545115671 858232793 364446158 892568046 147777666 186331905 10602589 645254315 133714062 355018546 261213765 882829313 432184238 943261976 908576867 969770820 199106301 648004772 416578493 589592447 345823719 969699734 290661647 950424558 920876305 942521831 24857150 621165785 49022118 827417063 369138578 412261484 342674509 653501397 14319464 837445937 237021706 316709592 107252316 352602936 217600317 271328736 63115690 963490540 805440261 827660958 584396326 925564074 583860106 765113768 320250197 656585445 204134758 323423557 295156608 792757354 261490302 279911532 67614490 970513725 849376163 890041284 416548936 741667201 163691997 924042438 462226704 479347098 374459949 464706990 363568642 590486267 272996883 521004849 309902431 760756509 458515802 648000306 287927801 741976203 677884073 742843867 234774555 773647231 724268090 724383179 182259940 564028481 121193307 735775436 208687003 643434297 609060649 963604222 383581894 642234276 237806218 294417371 77338842 199485826 191399517 995497589 784470235 819044394 486114898 718408571 360895865 749921849 327962702 691911979 31966752 236043810 192960039 199993786 52860593 961555766 857224803 975767103 956263826 991749213 57412677 428506666 400069248 878850754 438152548 709446172 437699551 778191705 332107343 353034823 304409915 941514481 188288641 990035656 772570728 946936908 750452861 781309950 148000999 389027149 36904568 469354802 329292810 483234480 231009441 360005381 329990724 665427863 122519837 547013681 82520404 618375164 185019973 973328893 536276323 931618325 529446542 573177426 150504514 195282051 57360575 324546985 214266941 996822259 56459045 911767844 569910051 729175595 126373233 723297910 233405423 607676844 15268311 226312788 83918751 422205033 295394611 606711161 565907702 665246722 552253517 667238584 168279946 626391270 68902395 942311560 224857149 752532191 77299266 760226765 293661756 478482038 275663091 306561245 280800740 959438520 926142061 994353511 784185714 945307507 159343988 500938262 156072546 638798252 227847907 328280766 253200858 823916867 644147290 762819202 361816922 631003682 73333401 358866795 87392788 335230120 105837438 794151929 111979234 572816879 50885747 178479215 139548471 917736073 787157037 982029160 360283810 993136007 906577408 914499800 418272122 896399713 682162775 887048922 385324163 587603118 22406753 814874542 238642389 297047954 8630422 337126939 268032685 556949543 147449493 389409636 263061423 296598673 176999165 895285458 300943725 736014722 191560663 215817237 76544326 849444957 640056359 646459306 458383609 974997652 867423107 877595730 5382169 336490385 322977539 474904241 287482979 708115841 192105514 570383264 289661720 672155761 306085588 922408049 683994091 927420886 32623332 489409001 230158309 954348276 96754900 931508019 595726203 605931069 231842368 443539387 300137804 537836354 355590577 951021718 457610013 722741823 570942849 767201071 641218821 884005746 40161900 193338399 172569999 329210529 236615266 672092691 216137362 606512270 538124410 639078681 82610970 251084059 97936320 241569424 118078928 569320557 533234947 730621332 666586592 724446015 69347093 814805399 235070634 288441510 277315594 620300541 333018566 569216256 151312696 886581511 385949665 923461227 369053891 704827022 230491928 284383243 116348129 876094893 810964884 945473663 224133259 757161477 93058047 520818095 240721910 977103469 43485564 963617027 697634956 932301060 83492906 517812665 348295324 627954990 385538400 757927610 548569400 775537994 428163837 952449003 340283807 354137062 173291800 968758379 395353019 672313215 155200839 405348900 373833896 399894305 241935688 817534361 485507047 837278969 311824862 429469537 359848427 840163022 642723127 713478937 393346475 901899623 784902153 812825159 122445766 792925732 188377130 864008687 528475663 996760713 828919542 931842742 556441057 905140867 577561797 625980816 358205640 710540512 412243883 879230184 174244494 417668960 413308992 663454199 164277175 893230718 378929350 792274021 126523672 571116970 156597395 187587019 93756007 114571009 101146908 701303093 27165653 774830890 255566945 744441667 6521327 935820904 206201067 826473343 791824924 832459196 379912034 835122144 757096855 775956339 417153884 864725360 646541704 747329135 89848192 434243931 210825442 390687993 300527207 348579576 220208778 954726903 193217244 885742180 427350501 557136037 528028128 953125579 110659426 821346973 814300971 980482351 386303215 781553268 512713284 704981014 357895657 464055139 348970847 636610005 539641358 555090919 345394850 774599330 770783659 801348705 261346938 299305538 233881969 714832431 214905815 473281985 296100 555272253 413923029 762456672 64192045 297193297 52885331 391267385 264601896 491889633 326161253 800541532 625672665 839842018 64560673 477682678 52583962 610372531 568618914 788752983 180952158 714182804 194944717 621343619 500510076 885809268 375634650 800299431 444992051 619373177 455527921 478901444 442362184 586290364 584599959 752852054 375030476 836573186 802040597 917813427 868573991 885716724 610229953 980689339 846831831 914336772 514187215 547904969 433513697 540525776 368559642 781397683 386731606 493726650 302324333 789557852 1806373 879584742 757983728 958966592 102254659 526915080 79724717 384082518 340613501 884458429 392513653 878664892 272344430 957104095 492792156 729187544 618608879 656938563 207006087 707957788 546495619 591106244 13100803 398341187 246284843 507209115 78397054 656662076 401734714 773775947 616347243 889223253 293588022 701150803 115686210 846355858 319262805 714060414 593111551 815634342 165673651 869403418 731249624 829425692 570527237 681241744 594474886 742717562 106595736 554146939 231860609 971328815 277799442 994130017 115769530 669709309 219594984 853966275 654920266 924866297 75445127 915856052 843029103 989360815 309955415 429895502 209566342 978396170 120671960 551393939 205645276 377994247 256026107 623086097 87070801 560941678 402948786 952843771 797812655 870804197 697508451 887178217 578403081 739696964 448079619 598050074 590460974 905623186 1122367 222407389 48271512 122497572 35832630 637090019 526513214 736053287 712279594 809771959 796858438 950611546 947538607 955948817 807633966 956733298 740402553 945190800 638988653 833417196 468728595 656986116 219726529 342519782 267041878 269113549 255374016 920791740 478658105 681644758 426044851 623663129 532147004 752599433 714464939 822750088 596192615 627145914 395566525 927544364 243716658 842217033 179191138 869545446 138868102 604379012 79906271 882873924 295436248 594031636 473112906 817538184 307910999 685884565 171275741 256721293 31215316 471945623 299036364 538544067 252475292 735108548 201462882 323449892 302988640 930300814 102358613 861539201 16481204 209030352 164631474 509156806 254534973 480546544 86384729 101400307 91131088 469334988 45198620 276035936 201604526 989704121 160726253 720285694 169414935 559036938 386215644 699250884 100158410 265734037 191650991 868038521 539661461 666289894 632613383 684402232 249687200 482991418 35789066 688102714 101845091 700455614 469480352 748643210 619099498 622567586 348869122 648075988 168845195 937687022 891427136 958179408 147751090 428027053 316016727 635753942 26936449 453872155 309611758 454281404 22850775 178271761 15765305 470602032 159096676 416432003 153884466 305826789 67264719 923150651 108015894 128706615 11082867 570966996 476439506 520059076 364768796 690717874 238705055 883477091 150136990 758166664 179079579 326558607 21312747 270115053 128455472 444940798 134182543 772872295 280767641 654550356 125196462 518961911 303371736 919752418 293612582 771813968 696365573 721931009 663315670 751526304 200530100 543067760 539118542 712623299 217097209 829106376 289023893 302800669 280693993 872316043 244275033 311639432 41635913 961065139 183710728 707714832 571586674 601338732 385123233 608257189 298435784 735937583 704455961 722708172 561602345 727379605 648191112 909521258 903592448 918285276 671781209 762574399 493809956 916106676 678944357 818912106 197512170 330629768 41622672 677425652 196168892 792166975 432390483 483775446 279233841 427721863 301837034 557011107 489268609 994255487 141882833 866275456 716662481 818739262 552848282 607722100 383925306 804316615 584686652 666402886 540337476 889856739 725650054 773733668 33559163 733127414 109277388 199814163 160400737 166346392 2605708 226354441 154773575 968532564 583455175 631715588 318285239 929434425 493154945 732138125 518762601 653112736 610699058 731056916 230008066 305099749 169349382 547334823 365714408 981801945 773024655 875456941 435229444 478395096 398824217 493149101 315824625 519765845 304503267 320923038 280345325 513948824 16667391 914771991 193498529 762548769 88518037 391664232 229177993 485272495 62526334 855568628 579490867 997637023 970454514 990496468 278644073 733154402 188442668 562095603 306143653 728482546 29106239 706692578 38371733 984513006 913498757 949621757 500069276 524509452 2714673 240292456 134237887 839238897 638789857 876723738 457403425 628735707 179100329 625156360 132899840 776473104 356082839 368964636 145978331 689395532 565482007 590543943 11555461 145091705 100055456 283630902 43164779 519895921 1957964 841787452 557253486 961914494 153592938 579110316 354060554 381400907 257958463 618026505 478199883 614331854 521022784 822781173 187779205 329690427 265907954 591026210 527570794 616272471 83209779 659036947 34375592 398953056 284758870 701747612 376780972 661894202 453483159 818192995 588023688 765223881 302974783 528708019 66579788 931332385 876593835 999795726 126437943 709936898 347481920 521804358 60843091 805202878 208595791 956715495 933106424 958250132 616119741 889430516 773958801 928947076 844428635 900641928 397521616 658342239 82324959 362129003 40584278 210725480 129642030 964350688 713803404 885577171 660252683 800535690 148681632 175748462 82274753 398657646 141974423 453652667 290823395 808140083 536542289 852580684 529578408 962119514 211788921 300686151 58938040 469947683 394010673 645245982 450470151 603695849 575897250 748731546 674414866 881352472 403392845 651258474 40105239 573695131 244508340 655123907 551032978 671383742 77504674 257527269 173443852 381010392 283275825 608206101 330271096 899285276 842895595 892233328 117317820 284747356 192989274 876422095 355856223 689959488 326879219 710638222 224426212 414708909 22437620 480816395 300233964 790379408 370713232 489920622 213047865 307022158 251332629 837067558 651232668 755684802 142303937 223999673 134515010 922268574 647714804 998495819 836496298 945407295 306667564 366337572 280246739 282720425 17846842 255333547 80208187 279700725 238286318 983879107 834274193 897033191 620983459 696973552 258942002 790550066 361431368 665358527 334693413 966671589 319236540 686732440 432605107 483518461 265857166 393959706 310446588 470689124 454512988 528861968 389925169 676972894 644778409 950554711 55192510 354332647 314048310 528738858 9991431 205831811 123165836 464943700 433072969 798343805 705282153 828164102 421919227 599760145 386490344 817251997 382557979 401053576 62579132 475049574 216126079 665524756 248516886 315970753 76481622 287420152 64099555 338197833 144459062 620754459 525292788 600307496 182618365 378572970 298820375 845232136 593684647 761883732 100359615 498600984 22007802 200634843 118677846 995388300 939081839 976975461 456399085 945548395 355272046 748646161 715953408 743399794 85281739 650629297 539098969 763443052 598590199 705390368 603716707 896925143 330173041 986074468 61193178 718997214 176766574 726032972 63728811 488909806 481186133 961350245 761437840 933196796 766053961 954994817 222707456 653172817 587918468 960847047 925451704 973753114 89264928 905546702 117915545 949362401 31853414 539002876 165712302 361060995 173954212 857842881 393111958 873463116 578703199 748732011 389884542 515085345 227170589 277735861 151415627 900928629 460143584 705732672 293457596 349658741 328226076 530758451 299574796 650207529 88598386 724998813 229033427 804101419 395662292 689587283 529104436 979372878 612938101 815608796 69040593 986041962 136134141 430310044 115936791 398865623 90539535 780014878 439279255 680290166 636793889 777550762 451293361 901599349 704554169 815091018 687960142 861122754 800063584 908175811 594115685 981703674 339755949 878750336 829198783 980687999 793144443 803454075 614137233 676109903 637285158 930489970 802062835 816629063 498625401 815519932 589366818 604624207 138917486 360572336 108497181 564593051 532276402 570087103 525627106 937228398 533062146 934075286 198387617 875166169 196311211 626340888 357223795 858806114 691246316 997350646 264502439 608271673 564699105 987967289 797429423 947596239 471748604 760892973 415178444 988466866 323877487 391692893 18742431 648186004 305894001 573530235 358628365 565253489 163901600 668199088 315059420 484466166 82129988 390113061 326363160 481096132 369495559 509198268 383894572 496899768 112224311 513473273 251156974 591889930 217820530 489756201 8238718 230175621 73675841 370442104 103576632 941533490 224264754 254871312 97500334 724367767 214745769 666994582 352212942 384930315 169116862 649617070 160383071 578776245 394215821 635196449 632290326 835007708 684163541 969273044 510516952 931738350 106393752 192978826 35217015 787151369 271771729 303490255 23178253 333030097 175248747 458104848 82912150 532465953 109831419 425465706 145042464 845156791 67967722 367228888 124040503 395445227 15975350 120396625 98088585 418004632 169998754 859565622 552392687 841049584 754287030 806666412 650811431 711873835 375376751 714156753 643630361 773143150 668775378 982831939 960985685 996050891 697401651 832782105 6378755 219385065 70524383 488596885 278913982 954493841 433097385 928210990 633778993 704947011 661939236 717632131 330236451 441958756 436888654 758958087 299176035 962289800 907264323 964101020 767953212 796858460 778801904 796309065 395149208 751364024 144991878 724738722 557226503 824973746 512134489 724525859 448601630 880292800 263326337 931964112 655950418 873826639 450464028 467202481 141890675 462982850 443443365 683899002 532875810 624251238 4914553 943603455 624226568 633694706 135427222 512047395 276109910 834842547 201668628 422485042 131628355 410070961 84644262 564008808 326880696 770104580 25208361 938958055 679117622 866984830 491630346 916483699 818097707 848727102 455666815 887372383 546623726 971315541 556573560 818671033 19666682 503572572 123360459 699940642 501932567 602747501 182404020 844664901 657727003 877282378 456982724 567495439 76977956 200525413 151205776 786381057 7669985 342902392 321365345 663443734 561219460 787327967 275360676 276530463 171670663 759850877 698183634 865366122 113575910 444478484 400544574 841289226 131794549 231948719 74537770 878397893 377007315 441515485 110577802 304790590 295742113 693532962 653585407 918307419 11827932 878272309 645307634 914378847 299918690 721193388 250472169 869170147 442522435 939210266 117933476 268087617 56651135 902287431 344606870 927819069 804483810 834903781 779762146 784978483 234989969 465758395 104570380 899062488 512139992 957352823 582186298 677816099 564866174 733111562 180913358 832775934 249598778 516947605 51460885 180261580 176392686 225383649 75679345 696464639 284246647 881924045 461415599 520261092 139470497 358949718 111243910 624725662 590011373 671380679 439525174 744230636 609537805 862455855 654462216 860641043 840051042 853557984 502574215 698392844 626737170 665057835 20475060 899358247 105020240 680209742 320695934 794284617 4555964 42983032 5668576 587756701 403943753 794829400 482929268 985847072 714079567 839544021 492704843 671946664 658572469 977644525 287147508 640034447 276352291 527026704 505833770 913672837 684700293 895366087 308282578 691368888 510340100 609647963 488614696 773043863 7744892 745687898 512321739 963732483 289730458 625501419 134405634 137210505 76442324 334031537 117538065 804084330 634553374 817004390 175621421 449913895 279323592 843649005 492128290 767312941 217017900 837956813 661410807 843340420 695282683 774715047 330564287 508191762 270548251 422392979 390142730 928259946 550793539 768593261 178345141 771577112 461330024 502616316 129059392 519001580 281773377 547551267 94615635 818179057 499641532 512531168 56137928 375430592 255651090 566039680 513969927 870203082 97458109 149602774 32935034 473299028 211964615 803205785 412848611 731407725 667407729 837073507 299686648 446822496 290335358 816406190 633715317 887749793 217715335 981866290 668443466 883676757 322276306 966100303 644524933 942362951 795062901 838341276 41605556 473800583 91977246 101282206 61140763 397018935 345484395 732823692 520989800 665618943 94714406 489422342 380946376 959399308 239218116 311198093 214822871 317147260 54701034 518780913 67023777 513058836 162310737 316739337 198546209 401064251 213211176 772048791 515071696 808646836 23629471 413527867 400567103 413473428 176478421 562717059 251516816 266448768 4970703 835977357 904024 82537024 54592253 221149826 197488454 770288967 535339784 867757250 56751216 704215700 683662351 757113395 517479582 980827176 421155674 443094411 260718425 465936737 226589007 702329632 327557888 535651307 93872334 222205590 145280668 732040391 432527615 689934612 151477803 614041564 62582438 595712502 427168495 704145210 480287292 703872702 522459424 884150484 152314346 798194390 601882921 862090551 15785106 107535408 64974580 718379125 251406814 923906831 37507290 417826508 270694141 477737087 425808104 822597668 187242282 795301747 104654891 286009847 49298088 638886214 512497214 532514284 327329683 895628617 28867393 517295810 232132453 725575937 453704368 601705332 338325507 453495517 207184359 833934284 55977671 699184798 96642684 809630873 375058153 445077555 371209520 445575196 353731810 702372995 473388865 986993158 855278542 863966321 459564291 822924592 315070840 689420684 667492325 823439374 90536435 166607707 60498387 169820117 19378555 900985399 355622587 907825969 256722885 995892836 971435640 974193223 122668864 595907449 576580854 878165989 40122744 714808163 71586271 956774033 250688768 704820662 6418977 645425153 622796544 815808057 217341051 507481064 425288249 678322281 593215768 857939260 759054502 843991912 773455801 809296107 302189440 571228172 418413617 868830998 411710224 638062914 187501239 287487729 111995070 995685906 216190447 530593586 439420649 705006940 205809845 939857359 634443644 685557167 669578373 867863857 576840763 894231593 147926571 635026939 400050132 578881080 250205754 586782237 412328519 960203473 617250688 951658312 406627979 644811724 135855438 783634689 657356749 792710010 682044811 819880138 184260358 404636467 186720092 825183804 65214929 238859790 64169440 308802136 38769639 705354553 645680385 757523785 229361606 816606319 442825208 444961158 280683592 627008628 470582200 728581842 98308312 337157226 185668062 576233504 179089430 232625055 163509320 237531099 117890150 572976942 288669779 735306621 511320324 518605713 484198954 713454709 176920063 994609015 815304581 965692770 234071486 860449385 253323919 423897292 400337175 751540699 34275012 36334064 3914390 540943340 506813112 531724970 15533403 453093080 397099348 604807522 221606707 260902971 57938456 467050761 208435891 698532222 140042727 183703032 176924044 687131058 563704343 600444504 441026111 647130925 336572229 975808802 140130494 337760898 257294581 767368907 405978183 613648673 388127979 410970944 290219338 873293360 640865373 765150719 727242716 834354753 749584223 830110844 654869047 712251612 245980200 293060720 183044255 911687245 349516421 851150244 363867706 856892895 369548900 786239869 122369100 375155302 332303274 706953320 390241138 528048323 435418403 978645933 668951216 890854532 196968752 948863117 704713401 756983670 216918652 257371760 183114725 460943424 104361391 954130424 247406963 891380843 684858902 945737712 889823880 927847127 397837087 722487555 196587240 875617534 396848149 598544545 504836914 912430561 612253368 668131958 222641397 651285364 171331456 595053734 515008479 796917783 622755923 891439414 803199511 846189353 188122724 212880799 72942470 129691361 44047524 495586708 261654843 587684119 288318811 523460193 203331598 366344072 199138255 852801242 470372825 595810983 47666084 826065071 367278535 565274584 451996127 865856226 467604494 470997935 219970521 883987082 520909365 709245813 16793841 267913054 235938221 978338642 876407549 923568655 453462495 489195857 246340818 521218503 7760850 750311446 155652252 563399307 385605406 469566249 340703837 527773348 428555246 831601070 736853524 926929487 329935466 949804568 266548807 362354241 182126541 410672430 48725862 80877879 38909518 430993472 139353403 874297688 509629372 662950618 329400380 540058565 465461621 552374463 318888717 819929472 278120239 665606693 344105591 397567221 171810829 868056960 845221487 894503044 7184033 732203464 353374274 584751201 328793919 647960678 66042276 791361293 162590193 656620391 114908401 968343837 561945435 595229305 69376262 901729955 849081391 863399051 94452123 522194300 487804570 704041462 250643868 675597667 207588131 269464427 176760963 652999279 183860783 886737625 765110671 917168211 154432356 523060972 39753868 566119982 79486378 363022278 98347893 989401749 229553234 985399284 981892826 982992833 753711783 928284497 93285382 512167491 243005772 424892413 246168462 457740690 249950496 969273177 221826377 452378278 251522777 371115174 81503465 591622833 414474056 715269963 332752657 687391145 656280638 731561586 122009638 476170243 386661285 573729407 125654379 926517046 301627196 511199559 260580488 654266479 191988009 464761237 7457752 17763009 7047852 15585192 13654579 734921491 646762367 846436578 699875179 970888255 369151590 779619455 582004087 765798702 11443444 15092150 14261012 993052115 93367758 117280785 7417534 553255787 97407980 789441605 235450612 619712307 10146676 635323087 327879651 447410098 188140275 494134575 332347936 925144568 536582203 960405821 329194280 590095768 580912125 686090702 433587603 878777150 168889189 606894386 575520158 888387556 291961181 535670925 144495851 271714110 38650036 133118195 48185830 701589576 608052614 908929525 414475824 744422491 729571033 933111613 441346681 802513729 494836726 630038228 33958924 270136481 150267785 994414537 178669540 378352324 141073127 328915062 257289346 886270806 100511853 231545127 164559645 845819138 561505514 832753746 78158574 856199032 304101444 453632654 265823769 689973718 125748156 229768666 102238983 579525345 426447030 471863726 4305395 484468532 158495767 735192827 37248040 364184083 297412649 376154993 277245253 682600784 568829225 978160106 445937898 606265690 465490545 720345338 541106139 677533293 302609929 308663877 78867679 729098483 430394938 469153302 161240495 417565623 258913074 987556095 428780582 949527548 318507956 466560738 228706769 255824081 125243778 924140592 730460728 786956833 601395972 863852920 239939943 849836911 14910051 298427440 252027804 622369373 386023083 545182457 329742045 876785739 421529183 669157858 613045760 999795088 556356268 635609171 497062913 652438690 38464431 222313560 189813172 398219015 26011326 487374681 424806631 822869918 411118627 416489844 169740098 608342839 29632835 647889111 643747092 687090880 181738222 319216691 35398607 344039405 93306211 567580757 42427564 127750064 115043744 243289208 159192459 699190021 197742112 292428614 192363996 823687934 81877866 285233832 44757797 793313414 657276961 693186879 408670763 686110165 86988315 275150896 138018383 995195717 620595106 705012206 29042325 963122861 315611925 859014355 853521415 991489572 737212805 865056309 545571647 760634191 45678682 554730376 5962913 127075846 109823227 659783551 87016440 300823968 129655172 247542454 214635855 394415820 22742823 665500675 102785823 670421510 591100573 834879409 258142457 460769514 404010630 747735422 54884343 956659158 525989828 884741089 827611894 956893313 650560107 875782375 449699045 582730903 339369759 729489247 450461743 734951700 179920188 398827362 128072575 904819316 96995791 956284978 170959804 190165417 66994066 712352556 415432538 952386159 313207072 551944345 348729179 442643043 6884114 697595415 122305360 735383820 687482706 854759284 295005331 838069919 453175458 550879830 380860757 850137881 381116993 826240749 575398853 923118167 340002178 928208278 189048350 979019831 174208270 510426365 505316021 964904035 372146208 521910479 488910717 489001525 146483630 436137889 269729298 541462020 393489327 644808454 73766443 981627479 796709705 970798314 440810995 628070034 553649391 763517815 417213330 654161802 309497385 849479378 382487544 482655281 255781111 494603347 353503519 812178691 233620729 268836387 107037069 764773839 144007934 727266704 26760635 606704849 532908735 649334861 66585606 317121344 78595310 272351994 3499836 557455395 3257997 883125865 336511310 959661288 945358142 993132906 474126350 887506017 714299822 953050587 507627609 872239692 187977310 316024914 108873168 355360476 334238047 826774989 648099637 955269123 276472656 928034971 248285383 727354479 356388951 524913276 464713733 837412703 84281264 169517090 145628208 956130252 829963457 862339464 489264962 866541000 531907735 658573640 604517505 867658027 144961086 995380852 373707453 763581438 259239990 597098464 452488962 723978512 139946531 542650711 220616621 968475329 676643845 933449026 219493114 832277034 140260113 690612692 461967587 831210671 64466071 992994578 41229878 394292886 186755796 271723871 44930905 927059956 552626193 683557135 376856099 831287308 501110636 552769676 301407752 851665100 769963997 988309029 794229628 840210283 130307340 568297394 548388726 620041416 614933431 981139529 118196554 468528994 23390861 69700402 12353303 874494126 751021566 808572646 247346272 971381850 191362741 201010783 58952619 116328406 94320508 746549441 204025 863927928 846488870 961605268 367405203 700925637 602621345 866109334 16588107 322639371 77667605 418784000 136980561 379459977 280696680 590111545 33345452 644652239 555596477 788619909 742262546 804215327 399711584 511675808 460487453 572920999 218521466 874345726 449393441 551083795 57181220 286743489 249865906 615518238 49497319 381863419 377719857 905162108 397184916 968963336 352310406 791373544 14664146 392175518 202322759 820637652 530585694 783807007 188621978 210927101 143046828 985336398 98737717 655452167 175888896 452317527 20477795 590799589 471619664 644951749 612128379 641487926 585733947 714612294 486437904 547732744 326146347 394346584 355679765 515652442 332095570 500215171 221814 63210805 12793269 236268310 48288741 817877497 275809468 788903999 499859509 792262402 210761680 654466450 260922860 387763774 302361123 437905773 34684035 505214528 465342665 577030413 33494731 263811679 254153806 997951443 677929729 853453665 262579352 551303083 443585868 731340637 397033321 790854205 481333053 722719602 717186022 971769442 740466481 764942591 339733590 500774836 333662905 504236883 263928186 735897703 223908258 914929257 828918312 839093722 340788409 344698893 62205845 263725717 55843933 590836363 129124216 566132745 203528626 213189124 19796793 893345325 209448260 371982833 267894339 947638223 440466039 767448069 181755294 761959660 102392866 278742297 92369552 169662559 121538566 939888662 705842398 713721109 637343076 697485740 476898203 771118563 695434011 835290954 771770639 971146909 89640720 162771508 93635518 560629746 72643592 117677019 103514338 596785587 38114297 271427572 208842136 707849683 447959101 635141692 610316919 674651464 483313460 831284514 169835697 730622048 518780639 862124366 814934576 840757660 753430698 921113244 419600277 746290741 104822078 338029971 231880063 427330112 59710247 202005736 139613661 753857473 78646962 619960914 403697096 811346320 553780054 592901177 71832034 392475208 160750418 657077828 540774007 864829531 209202068 891421646 528262734 686233970 459815565 897721014 92661197 674694498 634857475 793718238 118196314 513597058 258629960 895802343 731213536 912333148 757436959 770341100 620288531 796869808 233915386 728050206 41754925 174187786 147632205 993655722 214891946 543010293 532281338 931982105 884303859 992000139 277912126 302208724 86056568 832687127 256636466 404118659 138409155 595847195 60354659 982350818 915871812 983667513 167029502 580964540 348350963 791661863 432240508 671009761 484376927 706678148 319537997 486263575 248910937 377221286 64639021 628796728 440959746 773825092 646100260 723452386 458265085 561976179 521732657 543258403 456822894 529246762 247938589 371799514 93036438 999501028 169615406 173047399 163057783 435048370 37290199 205528772 191705772 354225798 310541809 816680346 608940678 924033283 268934932 401493413 287847863 843126998 224176319 915091281 658654478 780056731 4944264 767232181 380943952 743984666 46509825 770118109 91900008 289525848 81091523 414282791 269492383 512027733 195174090 397766314 201362261 566006390 251449395 969981980 652562290 848120520 575502511 931504362 658350335 950964715 434485077 495043441 482144304 899716576 63299022 481661854 414605360 478308279 67511695 274483920 89511553 226231175 62512177 544524723 458553860 783043965 618285405 757648577 482345713 699562963 449043569 574806631 493191605 660908633 223850859 461729178 341822870 735204127 168299722 265197475 221390715 910531391 312354375 416891565 232929294 793127928 288168395 371088475 231836103 561363332 137813206 968567434 925335729 991926170 702179786 879514957 711920284 776851945 596095105 904576783 365268226 762763520 531833500 868995473 765338387 816359060 33791218 927868643 596144907 742225766 228227977 285446878 54719342 829747023 632127799 656651348 486851386 895719086 371198914 564720519 342229586 490108223 312512409 719299118 151232565 533267686 262490140 531009295 62621082 989120126 903581233 915838649 721371747 868304799 821437593 933893355 56197438 262475155 174081581 698497342 302048861 307800044 267767394 589288077 82201920 467818074 226133191 286909702 22585664 483024926 261519881 433727702 21005790 529679593 17288899 271470689 251749385 580767898 275774671 337378289 327363746 676341170 465151874 890391851 876595986 997841906 202487194 742435787 709081341 816446220 804287787 954594162 673808505 841948718 47058711 658906241 386179903 853880876 641166729 828391240 62382700 324426271 248869316 428323707 111865290 438105196 168562562 520784902 284432476 640721657 285172763 915622425 411851961 718344134 269271572 440428217 34953630 155070299 150019383 556292788 342272596 737776450 12791766 755703874 452351853 521253389 102563751 638654871 199548393 489454591 404023799 793537914 2387066 49537154 36907794 269760093 94709906 673895842 194102032 974437742 884607640 912326267 33519447 468983738 450185359 934695084 473496936 564581792 98309607 282334230 271456911 826472612 88765155 671168863 243657563 508482287 280101701 441292156 205043492 439491602 422799891 423084006 247180232 332740127 270302303 975037662 352016989 660566133 721569 602018662 475449779 868606608 606987993 672577017 220438913 255207532 173801098 396786514 264218792 933901522 412974673 504576049 432157592 577427152 340882380 433747274 331595716 688636350 84803840 133161732 56640675 349420332 227326721 370575782 310407467 781616240 601309698 708230309 251647563 477032916 306473129 715262677 330894758 342095687 27041704 277105603 46431152 909618173 297579558 376326470 107798336 166623649 137861368 876453412 485225503 527430260 459167791 801324948 715422150 747457976 509085137 946809056 499622367 818470678 51401723 708517578 298556707 883280474 827968202 993232532 855560140 991321190 855396603 885232543 220388727 755431685 158382488 755845582 510563562 833212985 152623019 554988821 46081721 200671853 113314401 432362301 371467399 462745852 308833346 710042930 209193328 989407616 65277518 341870864 59241244 500935072 373038399 746154267 366516105 395313747 24313106 953311030 568457964 761635797 358261859 645393805 472257317 938996051 772064540 780217878 695254422 975769823 461545994 736791919 392804992 459004002 387674345 515329443 287005219 544679211 466773853 884029922 696735086 851697311 774863835 857998337 95427703 345373037 16957236 654430142 232067424 632392983 308807884 998035220 981735570 995612131 548041315 674696141 124648015 886960574 298178087 730906497 704650952 961504358 24064823 834951460 635985136 930897223 56410519 224081358 144070942 202766708 15389196 438160292 354390907 544211779 498882776 945312217 523146373 994542649 217650839 710603961 341582026 863844300 48536528 331062325 9647499 166625615 164798599 253545198 53941095 824344427 461028856 960929263 690947028 727991954 604784176 673195907 323043521 856172725 74912084 981636235 809890702 819155392 534399012 693595212 465237236 847800469 391105456 865395847 323903115 896534338 883648163 942676964 182966170 827656674 466951998 622329029 497972139 964665561 239914797 675643649 429293677 745577800 696069940 918809088 246587824 332868853 265332664 269377535 54943669 776510241 735211611 777437812 180068875 538600732 227926399 830517042 633327564 659427710 213631351 653840699 248627974 653937381 384710762 676925722 303819450 951243804 26002086 885293086 420374546 971937332 212553551 635020294 341772854 612461187 25315535 770661571 554713330 939841995 913463650 982962447 872473329 952034205 186887939 699418916 594901774 740591824 385186613 897936758 613917021 882894115 241587025 618804573 474942553 590846649 92269188 190182966 76673714 111656516 41044677 647213506 447321920 631390268 303944868 332933010 253899540 714948243 341345485 817556928 783807369 988901257 391240721 886480389 6339728 121193583 83996667 285491600 115113534 900291772 809544969 905852965 877030450 943461898 792370959 863622330 829405585 842884225 368530829 814827861 77987762 786806168 215590148 540802131 505210846 794811443 695423457 937170209 614441831 748608518 479497616 830989932 204281445 230103502 174296128 943157877 103251438 702069440 506535733 540397052 141754343 652457098 609352697 959894716 504008000 877973794 428161778 726742803 503983725 637009789 611502604 998496673 801501684 872360169 136412177 164759439 5274303 141209557 64824411 965719770 341945031 539886762 73687986 405496560 282164903 872350100 308630272 730400250 56734066 777697634 573988684 602118450 250402070 724587624 470690530 702075497 476194155 800419192 486621433 687299264 674774913 948379487 484754235 507798576 54683771 203757438 72518879 913955309 251268493 290585975 142741896 494113487 449651452 900723899 275576613 928528551 259320766 741322984 386582523 989634763 884507109 985860528 44553353 949149696 154017870 556638331 308989282 498193097 61091138 380508719 46587016 821164627 652371218 892996643 680597146 860261091 271220760 496492548 406680393 775353438 608087870 737136066 458313830 690667006 142495322 279595137 116633725 131817031 43834319 408150982 332299187 362260541 157173652 245431461 128147905 688578369 544809228 738654545 77221970 203200345 23213061 595501491 513124261 847850639 493119863 684652743 512200717 554607668 150042549 854993464 49621040 127291679 71284502 485884736 338284228 916379417 711805527 909765105 89244118 393825038 295284443 845161109 179545972 208700633 65758882 613654630 402896619 785309676 771438650 885970308 558994758 915088510 58861256 481775274 14719961 732634217 307080039 807801116 562015912 894512881 370280441 810702092 210562814 894419920 195466569 648648274 446517627 494606534 116186554 376657011 190730079 872853467 117846727 641886867 463333815 703247478 339236152 916282319 710881634 858250877 677028043 843911731 512186564 587881892 90595072 735696502 694689381 935532096 546132501 943522597 59847053 377473112 162469504 657862021 191585027 295111971 250937711 621452262 476103491 873707178 858819145 935837273 729528942 920976392 868027443 979283469 761284204 976338680 666549424 903704666 427487052 522239699 6972043 984838896 75774640 935336783 351232370 544987334 33699171 654234486 259909003 800513947 285712865 863855856 626746782 703235168 535046898 677316102 152889275 984573175 900871574 908859656 505449510 979439300 476215724 921093014 524189347 881546109 327936472 582627412 51358627 822766142 280834855 467604609 224322324 569760349 554194620 954514912 139952637 517444797 453893997 879086328 483194962 917384040 629276956 748869268 199735431 902490723 203463621 465591229 194340959 786591861 186787378 943380158 551255671 561078955 175185219 785438542 733474556 835994076 302302047 681071083 56836712 177227139 57856494 506808876 315833183 954745183 628350784 679885545 345059851 653591674 563783221 985314219 138929555 894076925 479832394 982231384 531255775 553789348 523902331 972058916 282060405 527895162 201273121 805423293 108244202 365242776 219325873 438913928 198152110 209146751 198403318 684975539 295640407 569612064 167716673 787590029 662504582 718966757 601608384 708161862 343731086 483717684 229575315 607026492 75449368 594203179 509304573 801422813 418462771 780759017 88086149 835319393 380390185 449093558 87267789 390125555 137882055 990750842 647338595 790731930 694792984 900101554 547607442 828326428 578484586 864071013 147356436 564064507 306751794 518872554 343295339 392011885 161736087 666652702 614452519 754294658 209516666 625892175 78385873 841066793 21912232 145808114 34324977 663864998 602021545 922442219 482692147 573803498 246521372 945722162 32499048 950132353 666761795 726829800 669605233 894804181 448994758 633387730 268293538 472386479 203328366 410503005 66169819 451466917 429703234 833880406 531370896 910230393 792189531 809021578 758107874 828882202 556450063 762547298 110841408 664748637 262019132 338573267 330954148 634222151 181261141 957001654 194417702 686638064 164692409 871728514 497844803 750188322 57887093 945487627 788627536 998851717 11595847 840195750 618220175 698911316 63331529 124530564 50046212 532667347 142657671 927925593 280489126 659422658 310746575 713156967 448138865 656313075 127161939 980635657 186427676 573482674 102385097 510470341 381761368 446025066 6192996 762390798 422280696 998352014 710202539 885927051 266507639 303179973 102937448 829760319 135813752 348666702 54491430 895654486 569005645 967251614 369194579 897592945 759436175 792436812 335299909 701704044 297098414 495344139 45392272 840298821 463205821 979483834 77127749 362558556 93852827 517915496 218789663 895383202 470459285 981601688 204189528 855023894 141675205 472385928 92326892 366616683 167354518 591428044 320184172 842553096 726363377 864742500 794736653 977799162 550445244 788482912 294933891 725588169 525356281 602071718 117114788 761889468 165575305 251134095 124792536 125843497 57525577 990458972 158577525 699436036 538713496 895203594 554396995 856607919 26034755 747704452 663652216 760980088 216073989 833005592 438927492 882670600 505579688 641712496 278406929 871453789 583499730 973892087 563565992 740963196 443635676 811615238 400025194 937272660 374160186 961840020 362467446 684727721 496800981 853630475 304464641 908127250 833273282 852565382 350335417 362072039 103098009 641559275 103638282 621891666 51891388 277754632 114852689 540078374 186965214 856590782 187928423 237878658 38155663 171396071 164674878 418690468 185867760 708198632 369159645 418243274 264918704 308750933 212383465 309411247 53350432 272495815 168601284 236447018 104594816 436672006 103696233 801517374 713017281 916183908 383524980 664432524 420140661 559899003 559409972 917385436 586785107 731497013 537811672 736718011 672627691 981503622 11434933 333723746 213502874 304774246 29009127 699724043 58923447 620722052 407712059 977655131 496732534 714594508 284526135 976971618 186557587 298774869 146644707 430092384 286959494 722813903 449161771 802464176 530766851 822561210 82744938 709123184 8035919 627703839 249047490 742748312 93942488 418255992 182857287 264566709 102995671 937988512 573213644 642185225 636190058 963144145 465344341 567264315 393319120 682940207 13801882 460443512 412436979 989458018 276560286 488277250 40764982 239229958 66020766 569795185 524928778 577746267 88244105 497242366 373665371 519219744 427078845 633148162 470601126 656073818 543818739 979129238 524088597 692119719 104606368 691511504 427070885 759103526 52283447 301588048 177540673 187793936 54447030 716959893 507888071 658235584 540613635 777813089 515490518 901355103 369907392 422611590 268140564 887362270 370220345 377136247 128711233 798512753 433617956 874766596 522116871 670056115 222688326 523969072 83267993 110386878 64879552 620350854 123202241 956833412 301376396 536850590 194162748 406604085 48930938 815557088 537065783 882748329 524732360 725859218 307181796 713224405 634748264 957074316 22840355 295534708 167600049 665261188 21849727 834479764 669670765 843427864 739256573 858567942 740034511 908456904 288117167 346980343 96833637 991041751 420171119 898978869 438012919 796408637 246927438 920579965 47396982 532255275 111923912 910320309 811674364 925841691 105867991 609190107 235333574 275557490 130085842 219261783 196418723 607924356 590604527 718074323 143351226 263889276 150751347 241769156 116515016 747065654 68497886 806152493 380510529 698284017 526629988 715214556 129933812 914580017 293688841 348108360 193811603 399687179 175658761 650855926 443346463 987359478 634488778 693705593 24703276 955321037 586316831 703794843 161236976 473069933 70518819 985100362 669436492 817446467 543817028 603468635 148676083 761688217 57428661 945436825 134991256 470222309 266086829 545235040 248008494 982731190 276738714 785071776 725473834 942068145 671542689 931320463 836988727 939503967 525095454 722878984 617967811 680394989 299956372 840063812 696157283 775139406 561519369 721189169 398272715 692032016 151191822 835221051 162158127 905261816 42250211 335529188 82604086 969695148 820565180 847171461 328943146 926254312 298119092 569400288 142738899 303814701 250124836 832521462 139994 244023007 153607845 273805771 80907456 460670404 169809231 719549759 16762008 873703502 447910548 454925907 379716182 881828986 376639005 970883180 421834157 574733668 286434439 895887218 212327522 287925397 33037019 876479285 514989295 713860795 301705134 988697698 56599350 131788132 92873468 253731155 222139759 694211169 368317312 443413288 209703842 487908399 366137667 551490509 427249487 457000250 108646707 479661187 35753005 782669075 223971117 717141876 114810228 696732616 311323442 522458752 291706793 363559772 175720250 356249942 129259967 277789190 101327664 871220001 513842286 812651666 199669558 928306990 552845515 623339452 214501713 636051376 443751792 840890761 165646750 976841585 801387242 911821245 780193296 804872232 130156218 894125711 142729412 694736502 78766476 947614827 828973722 883329181 689864138 873596908 672836321 764913228 102299486 716525224 497491730 878437433 91886795 122331556 53594041 589987890 568455339 678363350 385354807 860639715 472297171 858591560 47782189 187285648 92872008 174813733 91410843 935866044 375998659 706289902 541557130 580482107 431456664 886936850 561567769 982777217 94407690 798745417 505490345 943048134 244795853 539561595 349825496 581214239 93318718 225735631 214501811 293560134 105316244 907380932 815792350 822449956 246417078 496317076 275590550 639295978 122607331 122837121 77249953 571391336 265687844 567931284 367459653 956985930 339389458 617375603 117668721 699128562 379407254 480219840 140162394 907136640 826646082 840791771 8849292 84708081 69689960 435125605 15139552 700820772 580188969 981905120 327069827 902356324 802318978 996006955 10459268 775307533 655849133 928198105 712394149 919606232 474349609 590709109 110382973 294212437 182308599 465695474 200103942 584431692 48619298 511052697 405804985 436411139 404421016 941621849 398224957 707539217 6706805 708928292 524328108 634048602 144678283 299141243 295592573 437363979 310853921 987689918 405636504 683477189 123641855 925031668 463091325 957909990 614740509 693598586 449108255 716999194 201733692 311668098 223253912 950396180 457937043 479483847 145351151 385925505 370907195 654783425 27616091 77468422 62146682 981157906 47933033 638048579 63603712 770714454 104034304 492142390 228212612 293974412 74946187 821396390 224326882 390170661 61199078 516156968 34085181 602345404 415470279 597600616 450862665 523014459 268670790 590852781 352349139 497509099 134845513 743626584 536081054 671163619 283031819 424753702 36538930 116998141 9235887 94013323 49488683 887655793 664577340 703338951 424447149 917435518 100789842 156782359 130777743 611740754 160881195 650605791 497737132 629048594 37732840 758797907 239755895 692604821 318953068 659282269 63190815 575537447 224318747 333378260 248384273 338911579 221655840 405598963 267727979 510783152 177217143 275735744 223876363 664307994 121100174 737231738 567933126 769752935 572502450 738062375 126733632 337005916 11626228 72634986 12389949 933953859 185335290 214872257 130512544 381788306 303051259 598028554 112988781 260656909 140188021 379521632 16592101 899864160 29580865 116843813 53617677 437385086 119854586 435781117 287281295 976804227 171477486 464497505 102871169 228904563 166638559 277711170 150437194 514373891 194634782 648218969 11330065 533419701 257198347 638049137 590972490 890350931 577557324 600790107 252521468 309090699 127803071 977544606 459153184 677586577 347854004 623919533 9503741 871206107 151901113 338378134 286583231 317043413 15900932 738861036 247373682 261190463 175119980 251194305 113608074 703938559 332037831 417482857 39769224 655047700 250536048 949638147 448202964 841734711 487006866 553913306 209801081 907295381 564948626 998723825 721237030 773239788 14202209 619062705 356646079 402617235 183516057 666998970 481310575 976292131 460604957 533865720 107411289 640672907 632466578 687431130 317053382 459432488 148774894 264028373 42174740 253005281 14838754 338058771 323472822 371581417 300427265 637693030 514169919 845691369 25824895 498078577 342966153 842676425 563025504 569974811 189440344 824264088 265842019 980039651 116873587 940263819 84229678 568818723 179916777 535172878 330687622 996582892 844591950 954246665 556747076 806485783 243805994 544276493 58879296 628597293 260265502 836097915 42097434 206767570 107527217 589099921 174938325 556783902 256214564 618183220 366774414 654634448 648863467 795924091 146392425 710638518 622482453 683382363 428032398 851394905 351097108 691157657 508698335 762978028 419301426 651608435 383153332 581059829 435722578 783077077 706484487 789445859 546587689 709897607 473928022 886835641 15367420 394951555 234814297 554570622 131610462 228993135 87266155 528147661 106247150 967344823 131644066 360276694 166556465 883855389 193076695 586207755 488508346 711535626 156058041 215947587 9289162 820167155 643461244 792402864 646146144 872324771 670734967 822762971 271000052 717115356 349983928 355350696 333607515 972137044 961270087 990542382 689109971 744496531 62489452 97530308 16027567 996741281 946121695 976967222 389483140 872660790 266431465 413773417 114461272 860499852 738302016 828185283 784709972 858265205 679839915 913518307 609356474 714412501 608922043 916323724 819135814 882612426 700081557 823564523 31267442 356027660 269190503 277471545 103065370 568818984 523988665 604740527 202483337 794494427 175324028 335724515 198176040 284228602 90062677 344416523 88019296 811053344 658548278 660310047 178716948 255070319 42641462 389708878 301159574 384407469 272192491 525116002 278442514 779149262 457949326 962873226 706386314 733473512 613565550 657927097 377388683 418673760 21238438 61009295 8512654 386580012 55225107 986800735 669341918 942926134 596859460 609392637 14691693 152344008 116706854 531053560 244302790 822391564 425681222 428349359 322331796 869159294 286713201 545360907 447346030 935889784 603770906 952614420 453847673 947550158 511964584 980890883 952855252 975804667 80686211 135859128 121075390 188666433 66317011 664936664 142132267 479032156 263650837 348232340 204498565 503144324 348309907 780477204 116910319 396362208 344765400 847898110 723588658 803324135 207646177 679282197 286602101 925157546 30572919 869440565 580240943 734090602 568173469 888918474 38029988 755501082 270702921 629632378 78453716 496062653 50105957 348526785 37606439 362970359 222315241 481440973 127587099 748357373 437635142 449082539 82842161 321735970 284331547 867371654 483027971 683024278 645744333 873249057 257687243 328228481 29229413 401638453 126760641 721245800 251875078 551081345 527825566 849673733 454534792 923471630 39992985 173748328 61777975 205477602 193019839 321596030 14735326 754953083 196385151 654819351 397132398 792277964 459419486 592478959 310022952 444080999 135884819 241576126 147004845 620360345 137633404 195289557 54764971 131963557 65744538 657993560 220843134 400742558 118072288 219258106 56674539 959058717 308021764 365333348 314437073 814269560 298765269 787210701 540756692 858438705 329567476 543087472 253000977 778621403 515606573 605469210 284273040 833971007 51170189 674325047 34511161 431918773 248447452 380644460 250783496 356094577 248514189 567208830 362090944 790339990 406384730 985878400 160068801 411301414 190424501 653605586 295309903 476276430 208512743 854481305 817747888 971081627 650463509 864445020 265226365 786479074 126794054 949349030 237335069 691711772 106215458 361413294 116016301 646217801 381570631 755840990 45671225 715184229 295029461 609621029 198131736 987522752 933451623 982530699 608208237 786489683 356213636 712452931 696073718 750603733 161438396 583054920 563288570 897145555 469066180 609549759 339429185 762886746 33112970 78241728 73283166 157525972 89493443 469217274 160854413 630900809 387354889 855035140 351801508 389120968 283885162 378943516 171362719 271855610 4069740 579433692 378363765 769271060 271085807 839828678 836872798 869840166 130801858 175772052 143799754 296864044 232010599 665887796 215476832 545312688 308496746 390815379 365021609 559059394 176414326 228196909 128811529 704083503 519924371 908954683 507020329 994838485 619938698 689415332 150134086 874751797 324394002 402119214 44526666 591492315 118340638 231931822 201701140 692385444 313291886 973845531 817683292 989534581 187572197 748371129 177259991 878103103 479173897 755533497 580907709 778006456 420326041 461849629 83240056 352633616 21613351 918003975 118552037 698168477 243285325 667320165 23581367 673386974 321655686 584183517 374905835 915013421 27687899 514573519 281641042 952049814 378797507 506820141 18169722 220062753 7416681 275903168 117881010 483873019 303841173 818340923 748320050 997496603 232094174 323634092 105737080 878940027 194981313 835736630 811061344 853717867 138238633 609488510 452166480 505054380 335680737 544883436 363641272 595834868 129292139 227850518 37987844 131349600 99742867 794833720 92251304 256274495 171826271 872236568 491581349 931427317 768828849 931397684 799123700 977751539 622543538 762466514 325081871 418778887 146460230 744943143 218318338 404239466 319690004 835770389 561220137 849938491 319476275 823075017 165228192 292423272 113888109 516113341 221201302 825750754 487411016 856524431 171150804 993780940 451350091 546071451 63263079 376702102 76864147 960070591 459251548 542966738 414609833 847238375 636577908 873097696 513496499 870572248 698687176 954463082 216540521 732941872 605978847 926376648 123916618 652312203 207819927 637909381 212019892 272036753 253002922 354246488 14628526 310586129 251323803 924334128 155511899 953895698 589398594 996841651 584818905 909668518 27155138 142251666 117688969 727183450 429286425 954168779 897809289 985160574 913370737 918739438 809526402 953858657 837686865 984363692 595351525 938481069 128352378 204932468 196169110 909261203 881207487 904700222 898941291 961951343 305376909 679576513 545181019 548933743 511571082 758469357 403930798 465751549 312943968 721198537 10935607 666630955 660023226 873181480 207894947 851843091 6827875 358284961 176678130 907742275 147649255 153569971 47001073 922545513 412216222 696572154 459641599 514202285 502474933 941195947 772433580 993974281 813123582 991757171 159404898 401053702 154574169 610816187 93698544 571696537 570654873 644887765 300488213 300890206 252983995 314074828 266487027 526082218 319890808 837261459 778522793 828489026 550656446 729202266 226363759 372468332 8859169 766154565 688981888 759086139 544171890 754581915 372577167 404779160 85093689 330588115 148159486 651697384 8860676 885642926 778597066 850868961 230534605 429286191 348875315 484103139 467644885 955792677 539509515 948570112 574424684 862863129 202749877 656188123 86274593 589971079 81122842 620204267 127905785 711510949 103777618 256238056 36428476 372748344 228445195 703920238 589450520 820507626 404720494 682252589 331832670 812683462 167027127 511475452 466537656 692424017 104326024 806801856 707692735 955785884 929376808 999483199 866362062 892781804 338401662 854547932 690168611 807488541 185565523 848372827 411902380 800525722 493994144 518111236 440356770 575496343 298529564 456723505 169405330 553391926 405115033 845854369 482197995 557314739 218919017 453703783 130824091 530546567 113137494 213494132 42746100 138513526 136689962 305998425 64927057 944154595 387527100 457536333 336501897 427183540 43211842 549929868 461266669 494668394 334467404 555814653 553907398 620625074 414024309 844237044 219763269 902846169 92109511 805777808 418284484 423811058 351828694 496314140 315416953 400384774 17010638 615603087 29191895 873520455 214422852 511175606 4699894 577264506 381437275 937834985 772325499 823092470 581660728 962628979 730511338 775003115 230157996 574825284 474948494 841974665 306530270 402363470 142822000 986653313 441197791 620726944 211356997 927414625 211806199 355401760 141353208 448209013 357777720 909456768 514788445 913971650 800959731 907770494 759306887 909990431 396861644 693614545 145807956 529967817 511587871 975326707 414399187 747814273 277039197 558766345 399620189 433812548 53119685 816644418 733244683 944704638 819743748 951388311 840038877 876785344 218335742 621789267 515977318 633963538 322220337 462141226 227245093 768288859 294749024 586636958 320112524 558666858 281878136 924177790 124345503 592986426 118048394 947684741 804127083 894994330 880115423 925328638 467311 530669648 164044623 932760164 776430513 824906279 824037177 856646857 134214432 925306980 799827222 803552024 772672157 812844633 331194944 802371282 793138153 821437508 168893745 761279310 315883895 905644033 769574905 986685617 156621854 272412270 163112627 539886072 59671774 111466613 85620443 752032346 554785166 977723699 360866937 925781886 649850513 792990873 241226696 462412996 332714684 356366333 24054206 603392141 126853220 983769747 242475185 449971666 349795433 926303455 235594997 969175786 392924077 412470738 269136518 385549594 173763112 518860673 291028018 543266786 372178804 825600313 653581738 711248541 603807902 906604850 103719149 728842756 530232451 786207026 619908354 802405220 734897332 792694703 304207183 660091131 481594897 591907230 121394278 801780606 186678455 341035687 232574522 543127150 194524138 234852758 17872889 313580107 125883594 613743140 595360144 960371687 247187633 594218849 312274081 606892936 468603184 777389878 602395763 633634879 477987526 674743857 420420426 815322205 810917660 932381185 41232807 157204244 86329396 432340463 172738444 416038730 402976709 970366582 325706989 349436007 236090744 392855093 253183146 718277070 253754713 324220184 287694855 604338001 594989590 923403735 114293177 382019106 303287899 342011429 316740236 595238002 484073606 984600701 404895045 575398874 282514832 392370769 112355260 710729121 515470814 965091236 405053230 727403430 542920660 740155806 52352703 521949575 59503888 136346866 64200548 965513738 1205429 815556749 35687390 915486729 120395232 962718983 660411316 742088816 735269804 840484409 668231208 839891722 202644454 379067703 47747245 184404334 139727455 313868255 94303177 435600507 304976615 764659451 285668050 409693871 53171798 451792467 56037494 674204797 189032681 471867898 109786704 865135745 470648096 691393879 278341756 378149009 307165466 505152445 262085730 689688341 482446042 617110223 271200249 917041963 127614983 494269143 181678730 488733088 197526028 813832143 356560171 664006226 256361842 264660479 139814711 904830325 159653334 542182782 110140324 337645096 311751860 805571027 786767199 968564468 565737325 567246240 124980053 450644041 299853173 409349868 34744986 858275317 169331808 298847791 153018296 725010591 385136390 407126283 31722488 466984853 458159941 855143325 377876292 517751147 344644031 362437229 22913250 820708371 725259548 872524961 151629763 468712663 136430188 547392125 247446864 700615983 46127940 696684730 548958356 571616630 50186544 724584924 310890361 812009681 156678755 378020651 2618101 471780673 415870945 898627837 157851208 223696473 19515811 885013509 713461485 989363797 246197685 343349762 83540005 684225249 619821785 736017317 171143633 859722158 395023787 463441531 149663281 508775066 339789493 946161002 341333367 384518801 376391792 815465863 766615492 932426763 298723770 891855900 510377813 743646694 480684235 482175669 400009144 971247862 967552801 980978248 969945915 978293795 50141558 619957619 307206652 557858832 490268330 933672534 880862021 963462080 196865586 305350008 173322127 769434802 664872918 726378415 679570462 714202143 620354070 950650103 222360815 787597710 462946856 543841081 241416517 316526475 213070068 939250839 493613443 821970848 800768950 824786517 809189033 875767524 445530310 704404713 288910984 835335072 208679087 756683061 716327145 735806651 191437632 501625834 49157525 454342674 123549567 662482822 653531533 883359086 649196932 929566231 142774513 754265967 720738676 808166323 225278927 569464481 144902207 916823586 161930499 254743665 98125349 307325408 232494497 880610656 482964300 895905950 462675264 600459124 79188230 566048986 228867305 861849848 172586919 425218844 346215079 722983730 219551634 302701805 235093696 885673967 427715457 771374599 176030086 275509862 97830342 213514045 62757136 722975667 708288272 744318531 216475425 340375498 253170327 937761280 636448591 873833466 67958464 836310423 690913932 997278170 152805114 681129584 473788895 866241890 419460617 561355970 136673983 474277819 307066415 783087632 229026739 420156909 413749948 838577493 325595194 415854714 136209015 934716313 172606390 290082358 134416136 801294039 559927318 561492478 108715221 804222109 672646411 719435326 33738701 408158876 282903932 857033080 345765053 728576299 98666859 383542471 353564332 990868979 135854040 498685837 178260542 320264778 80332513 422315218 384546514 500699820 18075972 948634189 754870986 800625591 331356817 890977188 118612746 305503028 271017667 500675941 344408807 923589004 609023535 621403053 56149046 740334188 185034594 223460698 84971830 249199998 162224015 712094863 137129367 771394618 367211047 987242376 927801908 985185356 483727763 860731966 186441441 875668740 343070858 989922064 806840404 926718910 271727249 831264088 148499385 558100344 191923940 950436022 502819626 769655002 612109464 915469717 789736635 987439236 529502326 850839782 844186975 886396326 176842495 595697379 585276833 885108768 586644560 588462206 26491367 362293769 37501492 818000301 17481015 395023598 202928628 789460320 180963503 767927625 94520104 644232117 550670851 589599570 514702285 998044450 691031851 931082295 436452168 892151280 435219675 847833023 6441192 694126900 194422004 720165797 190425192 490174433 343667901 955751030 99918168 340795807 14214252 475577257 2250717 75737870 51580707 735581227 512033263 928273141 386049992 520561511 32358473 803615778 302331538 530080840 386725697 581215911 572806921 688734438 470449592 813785812 84799413 453277762 349165490 496317395 101778067 546449729 452603447 837273264 244251347 783825380 297685228 730880008 99368237 658850226 458308154 987217416 403669645 618875272 162036679 875323161 111989661 580338305 304199259 338889589 14965828 761150927 343190017 525614780 485741015 602755503 287604887 334696653 185344074 333201675 284717018 446023243 405265155 797609212 590721933 917078975 413566810 757593599 95436043 750567055 111941843 860601145 480586952 555438097 341894022 830997154 186768473 350094029 124163836 176685431 78529672 511482065 326595717 766217161 205437322 770887851 419235356 645240586 338233816 341099911 282481788 314157100 141704320 374300501 91556671 856692882 296197053 494110672 184453603 421273515 226648280 527106389 96838218 882070613 871350144 982644904 393221810 814509758 654823818 759691779 416192421 850348398 432587934 638713123 281818431 380293706 138992285 853001043 677987603 887762764 172820996 916375540 469994250 780252010 526411136 645133933 450580601 937449080 105929538 958787718 565916075 784928065 311622765 370287086 134939848 773226979 461975943 825754247 228161441 809039859 518028807 717791655 265842804 421078587 249879817 409827714 292331760 848357504 253293 557536707 427936057 596996233 444154397 875166521 328880621 622292850 615323757 623059722 368150851 752134867 688397389 887266500 287262617 803636079 616971143 673560982 603630574 789912369 407423647 893821044 630916326 732311502 481990805 804873936 720935966 889512934 789158840 989429018 764188232 882136000 611774762 876618554 729750176 990814008 294306770 917099453 796175833 825761526 468411219 954200575 39619532 665923971 528365089 865761843 471317906 848344410 781768796 802285593 267366712 712851518 17854391 141564560 34491292 377344144 29303268 661812214 234271646 422949483 52289796 443095405 357181779 450168602 123026117 278808923 135318550 180675791 12489108 970115363 81206830 544508237 159908621 627682557 21186373 71632046 56371316 679050930 514080924 745783269 278342828 847394360 802631751 917672043 122203868 660965927 632458164 777313905 630464742 974952656 813194189 838088446 212685414 864444959 222991639 691083098 103750255 217572571 180282966 642562401 348401527 489167210 381513787 784047187 407488594 703623596 44489823 352825647 157965081 396812840 371844404 443006561 112876899 931287715 202336032 791236531 475792501 839245343 754433379 802097752 670037131 986663953 154486431 434102316 193368073 511265456 38790899 336685500 200908198 814519080 271210997 358411390 143353305 254367103 96849802 540642089 268684830 552009340 233311430 397111410 363625222 542549204 509203808 800823408 118893114 605870079 460695075 991310025 151186427 215770035 50576015 611724127 427703597 620452514 388824097 772116426 134427423 943251214 781013882 814885289 538870449 618200469 76837752 812574521 675698833 946565574 503155768 903522433 448423150 921704242 145231609 668283562 509285983 798598103 478186252 511220655 105666926 545610767 176817754 287740805 180030965 502768670 105661621 429836397 296993338 491654479 205608346 282724756 88731814 585174455 210452694 379873629 358980732 628617600 25112094 142605504 134755126 355304165 237349954 525953966 417301555 527314700 146129298 773606788 307695498 585217532 254689571 548536935 213716988 865055412 23538864 476159570 429025020 456046739 157779404 173204150 152817320 284957338 22462150 524589746 288088957 514714710 502277470 648261978 192372393 588262976 112661284 632952300 522385137 528743919 488388624 738469787 537032221 803526858 164283979 924979233 875154593 925887613 231571764 884823031 431291169 486925962 127324599 484588933 162971950 718789883 678348231 984429698 778956168 872085091 314745243 510196119 349288983 992411234 421078566 658643255 504473051 569308144 295969323 806625266 172044691 458412797 15825974 374739593 204111175 618455141 352883699 459673330 14941370 506862947 58891478 246421500 167289685 703567873 236000107 828891685 519789768 582386295 401935807 691178856 234440027 549328138 444924138 745877607 16770747 999933310 283735672 794667320 377980166 395067047 347469070 813749086 604892930 668385791 344538950 779465677 252393384 504826535 11494358 927202650 370016998 525498815 112802139 740818303 549632981 811904485 430370057 832750105 564213333 824077274 330962191 860907914 159701973 301473013 82768247 122129386 24182391 707703884 42993939 727820132 521475015 900627520 590190318 902392226 410825449 632462021 378706579 681037251 475967467 874476375 17285868 858924855 280837139 806289682 738589322 806687858 758516515 927024061 620433412 943765119 298748027 973919802 934224049 979605967 671945727 813264663 279591508 934829572 389914665 757328827 559551462 579850373 760253 467994291 243130349 894785494 478212622 743002408 111171621 844592310 28606412 573216396 381485936 985286147 43396857 233819512 141011146 918682939 680186115 755024510 272636873 833906863 29515608 479219269 297648294 595068667 143248432 766020080 148511510 609528917 319590147 697738149 219398239 954629062 671492762 903056117 615012297 647887834 471489312 978029470 913392924 928217590 919841813 949427583 805222987 938152635 899594555 944011143 625307438 701447407 365232094 489572868 31130803 556391022 333378496 996772207 913420192 974501539 75703481 418010436 173841717 927010154 704232486 839027830 518701815 703945153 605411563 729658176 508186679 508372243 248424452 969432459 526718862 538489119 318283340 896641847 750549560 855147099 171872097 283894378 143589855 652685539 596257455 769953352 325128634 711228889 165465913 766982637 286886270 422746352 323793882 611732698 563466108 904846915 827969962 938471328 610971358 705996349 120382852 754305150 165318728 322241533 45683423 144354285 91803343 524917726 484207933 662584966 160723138 849491565 747728995 801780051 28236490 793308742 566328202 742816864 654648648 940374427 312954611 464167706 105054953 924575700 490712946 998338129 886223861 928809346 870158669 939627335 397650765 927907293 605265451 950713730 539522201 777618314 638179032 955144848 335257646 691222394 379416392 561243128 4248194 632791044 231670144 448797899 30713033 893884714 314239133 360768963 77759305 862137892 580394345 766221865 381780759 832049927 68827345 708669823 211344086 730934103 67163602 237022536 71745681 542584471 189406915 739479922 390665942 747458514 289001479 660757821 536409949 608515830 34257394 214692618 134927655 709609391 561068387 980654697 866194902 914545157 301752178 506541763 386379472 965673180 179242041 700465955 279515639 835810222 250075840 398834354 20605984 337613434 206986463 742576355 423961010 459041887 228326466 867084390 526767759 600529062 526027306 655717157 642298607 906960015 768837351 948835470 895283752 943185109 246295837 859327032 189770097 563614633 367729982 814705377 75290609 341910050 296464652 575105131 411480185 621916886 518054140 799809344 558190704 664747432 661231619 729157013 366886627 439540403 27543729 566948128 249974959 762282048 254468047 467983137 308194129 736724793 412160552 756150627 244455816 636167357 65263624 125875381 47004578 410288368 74575919 153598927 41995660 808057917 797236097 874175589 258512358 263708930 127560031 735170924 290577111 880323351 625314419 759550747 86677066 290332166 77392759 438472400 415190534 939957262 371461275 617060189 457987200 639293397 159817840 680413011 267046619 989154823 946137578 971391088 603140945 831522084 148386891 188141343 3342277 738288771 459942044 855498626 135292278 456465249 253464156 736553859 292981017 516600577 114420635 615798611 310649738 367760041 1709890 403092596 272689221 714978349 357814680 927815367 581591454 870005876 38330135 991560795 19827270 720126242 584710847 739801550 174801914 911064625 184951703 861838087 711337480 754632315 301889124 540661416 421963873 465295776 338902829 771431958 291889370 795254282 245778337 305993739 186186981 878825191 198335374 415678096 395986665 431475248 84014921 865479873 427927380 757653637 751094669 781100443 219761981 942570864 865601562 918569356 451016945 517530005 370007325 866079586 639615756 984939219 775160971 876154898 750741997 894316613 338427806 842794912 760015037 932097452 208770666 739521910 427892776 605832373 432510228 710813425 583306308 589450819 462498867 561797924 211618280 724736643 219518653 490317772 58265554 321182733 278227431 468807736 226480857 492274120 3734470 698942684 270176748 519011946 6949640 596123843 510332265 777778773 573393584 804857886 749716975 835922277 821838272 916784931 591279272 956529781 803218977 975784862 526452998 721744299 293944138 823467867 398635255 767238926 584200410 854774364 265070298 966761195 52481862 307592384 54643925 467384981 305730258 763536358 641920330 993312762 957790072 989918397 497218084 848095962 541431170 757126248 220372790 864450839 216275888 630169477 498840038 928862599 61505604 976164969 39651934 294172435 216270220 710771124 563478892 956174061 489843747 776493914 649191723 652633526 257274352 542127501 184506701 188605858 151468511 318260117 179485048 401179533 324079885 788298506 338773792 496070588 106625451 404038175 53233511 75827503 56149661 744941031 543769648 849568758 696634802 923097066 683758411 888181122 308021645 803402245 16159050 168522666 7368470 775920878 255846661 722117955 253351082 585647974 372340859 553660434 30254462 587746349 348309592 690384251 332764355 826939384 672986011 709030758 330584356 978542818 309485026 374173780 271933640 889496704 675921177 989416320 166492396 817395086 64223367 175153049 53488153 913463481 429722887 633888974 58388642 616082687 562751899 567068218 350167501 898733926 164072241 452815176 250468332 884386854 280095346 385475058 128236537 295393412 225036359 265556052 10911339 914213344 316246120 959987935 878647594 986942026 224609424 451895761 24442598 263887447 198067123 432691884 159397375 261874865 175382059 924359568 141797874 847692308 172180009 459122037 1427061 741053811 80088902 716285914 623712336 635771811 531969470 916181404 593457141 761710843 183930946 810104800 254839853 723116791 645881291 894395511 777651115 818298061 418794115 572810952 176108636 573322749 526422425 554541403 471978310 623719094 402362559 520423481 234908393 345626407 268354901 961404484 769159255 989821177 522040557 808715441 700013442 782032628 769738842 913968909 645097757 736533319 484811534 664134748 231356793 907695707 428551785 792605142 717355132 773168704 607731264 995049257 542610307 859003795 156157092 335691687 320766885 802491374 742470715 868863727 494456724 919803250 310216521 980083495 568840697 871305231 109093174 612009691 179064117 712207853 669957196 727898144 202845030 362265935 178337709 210951837 168987850 586114668 337803997 578654205 569873346 863120008 61530334 568783475 120001726 772074131 440497943 539229723 136184614 655585410 574242239 635042263 443047348 446239883 347111114 475170218 9494405 882600922 861829491 881646679 637601680 660430152 199948740 985968123 629543815 765888504 281860439 677181681 225678488 873356894 561168593 672439582 453954723 585799098 128873204 387625966 195199820 753546387 362934522 970624637 844780688 960755549 138140514 323265369 59034297 567776902 130264541 858206425 583963353 852935037 662833698 901190537 637577055 844928361 719806914 830719307 504461862 558626877 177786726 434878422 254039467 964267514 146031638 192866733 41762226 669414952 20270270 336167721 105157520 138768206 59052160 247457719 139122295 142900902 73484404 123914858 103547062 340788341 129082412 168453340 13999999 41150673 6599977 549240262 289167560 430271759 52226642 58965708 48730913 928187410 393685962 996583445 730395895 992512703 886198093 964080516 521678301 819025613 784501533 835398432 176298614 793403898 446114752 880848924 845430273 873131213 560499161 887153943 57174818 345278068 109247366 746563518 590813102 634657127 190113635 989460406 591993163 967021392 58400179 845934553 532689505 555036207 390581427 515261655 433991464 644067706 590729345 885057388 801394086 926670951 744150664 875347508 766092177 980219375 474456804 823369501 593896877 876586891 428764394 964546665 599296447 623259597 259322062 473595675 63264126 741913294 150203856 937068026 668797777 939649389 733860624 918346533 78370535 956670976 524099263 779969425 70577965 919176917 400989895 487606923 435795845 725170747 521181333 667765477 665833612 815620077 285564525 833796538 267580715 532464390 224502005 433348864 304253862 840733139 362358469 960780429 769084816 866813473 739121170 850254379 38403444 815925312 79355198 436235496 383152193 883434553 570863348 822282017 710065683 898104274 712627878 798223636 615011354 783160404 459645450 684280304 83423293 865076163 740000951 809893474 282197741 328616907 315085462 920264993 735162919 945404831 827603974 999718682 882486691 944667976 217644888 903534859 843162412 891709977 783599687 910014569 466644404 832681910 123563971 168699844 41798451 356311687 97614612 678490641 303058841 455613695 420065537 615923187 97079315 227826492 132502197 287024762 59820861 73580943 24343064 908175433 685507192 772182528 458641645 861998243 445804486 875823761 457432044 689567357 459581182 928277389 308438433 489766501 168139220 899298160 657565337 998386316 567474533 733264861 428454459 535896219 343171172 794188032 219480803 298118412 70455483 855987034 75168280 220721673 37822590 190096542 16107034 677579132 588165262 631867831 285027359 647911922 542226308 806691648 174706651 569520723 287161349 488569537 233984898 407417347 168621710 368945974 230714171 979752554 798506600 871302087 591093814 841722421 289071672 678776590 542698618 815659985 701751840 769145650 276913873 667584368 303764698 704147424 323233816 894590826 628264749 843824068 710268248 868596611 294176741 400654960 184289556 312370879 262910836 411936850 157126185 628202657 482244538 896130906 620920112 953111444 433882398 852583571 845750031 891663327 815985972 992820284 943191008 961499176 184316998 913398874 590419553 642967227 219976343 644576531 179300075 997462846 18699600 299761700 173601361 702080714 389680823 525954899 142797722 383821213 264358354 849065425 129750620 244965797 180382873 778694855 552319521 923139765 142989934 613699085 358786726 569856357 400509320 586626761 38398925 985023569 12285096 365949037 123409331 858933662 456126422 814186810 319772454 758306367 634606058 663247696 100174545 207288639 78376844 922781849 509346075 935280210 434605673 893755247 842681685 940950871 592720936 900545671 858461254 874652168 726707264 846595006 228124282 674053620 55342318 384649532 354327300 896095675 415028036 673283031 203045296 993883522 229140262 876819375 499133460 515872684 201802490 569442432 153073649 268234979 244920346 667124972 163331011 209530949 29644461 117201592 15283732 986661186 958747688 988246031 570166754 776353322 74063661 279640896 28220538 591215251 452192503 575991033 492918994 627913411 136204793 566035357 313027300 649199864 470382768 613758082 249552104 565503333 99173840 372381330 260350132 855690250 288412357 354972543 338185781 437952689 350629515 982408800 912237945 932746007 55244456 194451519 86939342 681373720 503229689 935567938 589287575 595940615 51765858 557274831 368382230 941117199 294025033 305617059 196073718 480596602 231326345 563514825 482470411 537219448 353949831 370483450 307535735 614623054 89900874 385583064 336449407 840305294 211694580 255478574 95503354 800939632 137995784 276319848 203808777 919956669 40844748 396985217 345216383 435473143 136491395 557597755 266575238 672634492 605940535 870913925 693174402 703140588 287819252 984765559 678754705 794731232 242095336 540588746 104125581 126428753 117050768 413083359 207324299 626181791 295294724 495680819 200928086 664419589 542734820 949916976 102398132 574158476 357767353 598477937 234540795 919005931 717601390 970394881 330082477 733992275 699019770 766519070 254301836 560875424 206243288 468502179 351993302 799702345 63354570 898550330 803415992 976823166 832247543 991004318 892172015 961721298 125583835 836479490 679153030 950974522 689823281 745005270 517130550 775166704 331218683 642618430 367396178 378573428 85856382 672125642 466198680 804138169 147193624 154251493 11395350 63802330 32409949 52798408 20613754 219391331 16659516 619570594 513910913 969680790 126731114 302086497 98462184 657036395 467569756 524809680 396161493 435939253 76320709 454981533 114172618 955627384 872988513 947015374 655068810 839628641 48937497 85569052 15693325 839038114 200286117 223235930 30985125 815711306 410944547 606907692 269440743 561157735 224502809 804739287 303978584 535543908 525079639 608708713 550098924 596371965 511917562 614895686 541816882 612618852 26919414 680639915 574937862 854898868 352014285 716483877 11571614 223242266 16197664 846545640 76176050 634945731 546070114 726846904 528523610 701466074 11541292 53056766 23903217 934915474 341093466 687574814 684317848 884785712 260200259 791168785 516568067 808659255 217272401 684836033 235225818 933539117 171464596 198235965 30415697 963159878 250400280 766748176 260980744 886081258 318923166 468587134 266694615 389895483 354860085 909905484 352299150 778955013 474295618 717414633 163615159 911058736 706109990 973180710 922145033 965311235 342150767 856610635 243503082 713969696 259681637 455531774 4296806 213035351 136472121 370802846 326255985 607174856 588222002 884984670 221836781 694231246 312892327 716823502 163512872 486363418 313750854 576242731 473056031 593927938 292371549 875819934 85370724 757760786 340066230 939408542 658829620 783043482 768163402 896752094 47638227 246161542 77789659 891961501 37523526 878301365 298074193 543328652 375664026 499879075 374607159 584342961 451444994 485640743 341122755 358042570 291295000 597557683 176850667 204240402 61809184 715435014 214089059 853943777 740623592 935197301 51126541 644217383 147170718 313924501 311681750 915827822 384111953 926454019 860732460 874230588 732575602 917080380 515927070 819796334 400922402 718278167 241906691 813574639 38187193 944413919 258768380 639020842 366158369 486592868 79177002 658203762 333327128 712831537 232348039 486458574 256932443 927041664 283888429 634090655 551285383 733552192 264802972 708429637 435939067 732749873 348598958 673611481 579081823 976103627 317412552 991373510 557090593 639657724 138860227 909244951 614048324 641246969 270195073 896642515 291987576 871877510 51352365 716291952 559343530 852342321 118625655 294855995 148761759 508970641 153666160 604836633 442279097 908267498 217685699 824449465 218697176 526279875 295519154 724195874 11335796 333976111 85259980 962963173 203531929 807707134 248313995 580870847 431426886 974804793 463570742 589397219 554761420 830527754 609829542 681984321 175411873 721412710 373576490 962648407 419162585 524480686 394577214 435463395 374071893 611311080 499499353 905688738 476197070 503806915 203298823 835209469 107283019 461752618 37428005 849310669 509748884 709044820 615181741 691051702 300795456 638684223 530850773 916308689 299037637 660935579 436628074 693716959 259383260 796216249 635545340 662260216 327725581 369736769 342536093 803092659 469957121 749492599 471459561 606717967 331892308 560656216 14358777 796689995 605792804 990204763 410194025 593790953 426548951 575670754 513155485 680276765 208646890 502585971 236887726 594271012 55910788 362603880 44686693 398293874 32863402 675368113 449602871 639486023 564685935 578261007 229826724 630207731 159979204 179222041 142630928 171165023 31416400 771377843 124927089 410577952 410262696 798570172 651189762 657900253 219701104 858606202 401010237 406915953 339813862 793940943 454482462 664018706 494378705 936249294 533036567 889015495 614579618 834735165 777036672 907967333 666807858 809051657 311105549 457082246 443875154 749300633 703679153 837853168 27799470 284581494 214771413 835754584 400806054 443508895 430001068 800742720 570056449 850091169 383304640 833463515 256189600 471861170 90190291 334334516 13726056 76606073 10186165 152064124 147701180 940634505 413767427 853881192 340687701 515078541 468553048 487669643 207069798 480037932 164749387 463788101 379334893 863413180 825194785 896497605 138128369 912066401 29927280 193607492 84027130 858528691 324849404 351114496 309285247 533154266 288296482 496934041 92712938 171379165 96790218 465443036 110271871 363492129 182162453 216220149 154635030 875966841 412493693 823751554 324424681 631882385 379995758 862683931 287857798 828538683 12225385 921993849 122260174 948011012 441991813 518431779 234009238 613328200 147101326 854167753 560962117 791260338 396746195 513677911 511584081 831798484 152510374 197194340 88340331 658376043 591789219 637472674 353166821 918453671 440008024 719641501 708684689 881362105 20870967 932756098 210289067 352271930 94430327 105937674 29737473 185444771 106209505 622275042 587696976 839507676 698753903 951276625 947009388 951010736 647718595 867954621 576639237 748379433 746004119 938034200 20836486 911114070 211830414 359272882 317731633 642263615 183936425 973477338 533029152 671673565 165118847 705254658 226723410 568698332 375591243 931078714 819923347 905301675 167608814 250719879 46534181 493501997 294163227 929152899 707474131 727932992 303258650 341325327 188342680 231022009 92069905 192746427 90752250 585559699 302552194 449509922 395762548 602187774 230604940 555120487 164745236 870759821 305473752 591080215 308462325 449428956 372685279 504220466 382133844 561960117 332163013 852069114 262233587 636562350 315443377 433665087 274938388 916250566 167660995 628982381 474900060 675839452 446676202 620458994 551095922 956691780 196310400 390376602 243106074 445083682 93941149 266538050 119371285 140789868 66181351 72660954 59070394 197656961 26662871 672343351 230311236 981008922 776384213 862006093 315258866 733798574 546489732 846895836 671699935 976430236 762473653 789591094 703158649 756841486 258644233 925380514 390629595 852068952 765084106 964671639 452400456 762975070 218376908 673457514 183251863 197960656 97007093 604351092 537173809 916497562 355255369 529414635 447689816 976259227 838472147 872358568 35337192 691801432 613730833 898097912 17243230 413182209 81617903 333519152 316064707 401236401 294891834 635429453 557718161 810499515 393575317 517435164 220640213 951150627 464282076 709400505 90625096 889924502 261285513 959577201 938923351 971453859 248446716 752127508 398899869 965186430 805677190 980469193 908863605 957218358 71683387 509457838 439125331 840649643 477589806 925670330 206193478 322219484 33726872 106756546 3726727 287138305 98562812 893402981 565590246 613763929 318770976 524182929 511114242 987407007 340422394 890016032 310986291 904133951 635312001 858272205 222802282 775524786 677123283 736225535 108272744 789373220 264899245 444368262 294539037 645522201 264021496 873331861 735724506 742163869 344675518 467027835 394687234 700715959 350156396 943701562 689212112 918631623 136265371 859298036 344282880 711360785 329406377 854821418 93955779 548843057 84527107 589268718 106268833 350920437 162113738 712619915 161577381 668081921 2401563 9104651 7131324 211633225 4476939 429916642 304916265 689007973 94589318 623895050 490967525 640313698 250882982 364905699 304191593 773549221 485090621 786125241 694767275 753081250 405358714 734723671 384587049 760120224 483431010 944437880 804158729 969559697 112524910 655714187 372719069 532849971 410048384 924114121 700730784 964073231 528921460 894684621 372636333 745229498 729084147 992234329 201975110 870091597 461611382 500072036 193836542 290729183 173609333 868456821 171657648 660949780 410383209 705034590 325049047 341263799 134860044 420217486 293201382 441920423 108223301 621363587 440935638 869613206 805154061 936139493 362991677 801751492 522644235 916340131 401783399 981817270 937373544 960056377 392965031 689321770 611585026 941245736 496615826 603173160 181618761 621675364 58292195 255880266 68628570 893221465 829022167 930868654 490443443 937530118 108908342 924143617 594339089 625823178 265913078 480866050 78991425 449264811 375489353 714259383 541877477 676078280 561522193 896121217 530482322 850588433 279939129 339993156 275072580 280612970 200426948 957021646 851209907 906864874 408714001 638119588 578769816 621071832 115135726 664492583 86150944 137899404 119058177 366739432 11343771 50327793 226364 283121502 56286697 663648893 54382560 591167494 385734247 952251131 731918576 869531661 208841659 824597483 777677744 970522785 784109159 970532948 130388815 560167325 217966839 324994992 283023226 510107740 60908396 856547601 816038111 897685970 195498128 205445107 90664808 774449476 502816763 834821312 190917166 230610384 193614935 564175942 477479754 491501025 331171590 762490404 192782882 619096406 273687990 786833498 131709337 843904518 75169977 314255044 89895916 553773798 264398898 303516858 252840354 878975934 422849020 799900172 340615273 736183833 257856946 796174835 644444470 989702300 607788591 782730648 455790548 462165034 196301637 501720117 121614932 937773104 168552025 755448670 25082119 596797752 152868174 292774375 1155942 797872466 622519604 913067751 90257016 766061965 494798788 991475638 126168836 317183687 160151203 975422375 783641556 932099314 20272869 832005768 720463786 737597765 23128447 784925921 233511813 348612135 334934857 466368159 418498329 422443950 291019314 688155719 21647599 203571303 195180860 380387321 2763511 655673766 620509873 763496675 498873460 871651470 695231863 754206984 77356587 162790090 94890902 477231349 432120668 534524033 241637390 415123687 302245164 993481390 604995533 947966502 900296285 905573136 533346821 708309143 428310723 821744309 162172695 349860180 13979670 786749436 569317404 612677256 593016442 626472952 321457703 753066978 375216214 511108905 287854313 987238887 651107382 658778985 70878293 508579886 93422652 567623484 474928989 807419552 638092425 809161188 716906271 768411052 672505233 778630992 164125488 712799026 109392413 708989388 23696734 677128905 525896333 806310854 339279946 838501487 234693166 363747949 226854058 251963440 214088219 727499548 374839937 761342334 528527376 803584536 540814616 631770955 524923780 797627583 64125592 867116166 341946220 783586258 398626780 827623498 105647229 503322644 136339900 476844879 45118744 316980553 153321645 280126068 40113635 888187892 735897793 940861286 837175402 937257284 161344100 864766021 708902389 837090051 628945851 952445093 739440392 907367055 472588519 997701804 577173785 656179005 168807238 714717007 455625111 533653528 486106603 898765595 242514245 643354189 239752110 510778918 210813534 481515526 20887239 134818671 44231171 481599128 325090947 946981661 32485831 198328918 144775560 371434317 172687396 490912055 297757488 750332513 558504867 838695607 81227785 418233685 201332751 377006601 149089051 926489454 299939240 649337380 313195602 831274371 827125434 861081759 819406686 822670148 264667547 727526672 581194931 754742670 706348103 707376339 270404293 385220813 167776970 973616065 51550242 543797289 175144526 217784952 87205668 190622173 40166642 590153650 323165338 910469126 730177553 777721909 599962865 785306157 269444589 924079686 72625681 397300143 108401927 321188196 272616708 314921239 37381874 673957740 370622718 682888380 202897046 465681883 157425477 790002993 372134530 884858870 335683829 542341298 175990011 736519286 520738237 556660114 488091116 702225518 371667494 377655968 190101292 417929193 91484381 200482355 48967934 547160677 320929089 744351933 200293014 402365539 198502479 785146891 176407771 481815441 430607290 827041414 459854427 978067702 173239928 388788667 139309381 404274245 66749475 943034032 331109520 972194318 457921653 947043827 837201965 928200750 175596284 532681355 255894636 682625405 358208431 711720047 579102701 598122158 237070498 497670351 43347935 375770593 211143324 403085115 144861751 590799327 274084431 460477267 117322911 492473098 284130726 976381639 426649659 663392281 358505371 919694543 627727075 835785819 352020016 463813492 384473027 559252616 488085779 535528724 69261160 724553101 378864496 599913606 589951455 702544062 160644076 586446275 436819418 777604895 559993518 571450478 26296143 988097541 591628895 667248166 625657964 802522836 379617044 919562209 608011199 662029587 369550690 973872916 868425561 991620170 650824969 668565276 356651741 903579595 356288357 575733504 285974427 783574776 246588122 900651132 700487001 805726815 255492749 991885051 770565640 916663906 263987504 546425756 376261980 579017119 142253569 650193706 233486200 963826710 649233926 804980130 392413930 818068645 73074050 984803370 57096708 602233618 210106878 662774767 584612824 788886464 511186345 615523635 258953940 777781075 466498278 863538787 90486217 360152416 317422959 742560493 243970677 889622055 75622067 583263636 330737718 752914647 358122820 626416119 544957798 618082953 103317397 824041818 774386019 829172667 401915480 524074212 52976197 857027173 321884702 973504113 809734923 919590557 17835037 104027941 79125288 561610238 369600518 690731397 668770422 930421275 58128552 549209139 493195475 510545695 155814077 929158877 754997548 908365151 722336057 830908008 448706070 870275399 722922047 736785674 351021159 540714396 35244402 359259199 49517260 443109184 418341223 696735006 86120211 618498909 108614619 690124688 652033957 678725546 21988975 42028542 29252841 854322961 681980649 700176007 518055953 638806475 287519947 913196050 567793610 761683732 371212000 471007580 294209741 930085412 739315251 783385508 37034280 514605115 348781362 587203983 462735925 610900677 405392007 514866642 267543561 944648351 55429380 561167150 197789415 425705322 94280063 932245603 349324966 692634234 159593363 918864081 372323611 536300542 165696697 539173982 314634688 842042770 701953498 768419403 218480633 933010447 856550838 971662870 403688215 603656864 203276310 522619233 4073475 39398613 12930963 844810001 413604316 467679379 111972765 681518970 546893302 658253739 112535727 376495513 155906513 925606050 859347487 901212917 711329681 933011658 668665324 916668119 863279226 955985551 566436827 699348765 593191821 743936828 38740934 740022606 467257880 925782033 777648198 819631820 173470774 396110494 290177262 409630019 44594922 269366681 55755345 318945212 247638897 614811259 266501767 379609186 336017762 788072643 470075496 518647482 450387505 622755369 490327313 803329900 94392375 344898141 209155746 589348059 57839496 332397746 250433446 964274454 426215660 812833377 137067218 362783654 203637797 557161551 161347470 793376682 686317528 925306926 817426172 991383200 606187233 879124738 315410212 492926967 292292394 645753892 86129166 275026232 261020123 916917867 354576078 624868756 590815447 989791306 237380147 267260915 32470069 961401847 351829110 579296642 404816589 482931269 97556214 508839113 415101603 947552122 80114727 405545839 84057649 941526924 303029442 747581041 104752000 243577230 232392760 308886463 69578976 964809502 248557005 820323804 452376593 707072237 581539800 783717045 243263957 587471168 252855326 733935489 278669643 465303359 283215381 371266708 306006485 616710395 157792547 344946220 15067401 249772765 200035112 244092437 14192805 181905090 56821503 544751608 102455122 479524700 373259849 485620649 237556110 884034218 840890214 930101842 353207527 963535352 160778031 161499568 109493337 733798334 160789933 513812131 379368034 860120044 275490532 523588865 184048598 879114805 150297871 650426516 610975182 798085727 138264737 694933092 454918535 622211609 125108161 181474272 26189885 877501215 753279057 988915410 379451397 831150473 727743469 775105043 202693661 407145142 317737457 743165924 629771375 935216987 378981280 552521776 270191788 309364862 262962743 475608756 290331668 717473047 54275336 246314234 15374718 792378429 308044563 821793846 268958279 806458034 571536577 625151702 441371826 486491585 404338301 834607019 364318064 679856518 271104160 442475068 153116337 899689273 94171597 492304131 212155821 307533729 76904796 120297225 113177845 970213865 956697417 968577322 552393148 624274652 186546117 362735241 116508742 763543823 276844293 284766632 60334929 734457643 406834366 838657397 285725127 332604505 172785435 355471152 175777874 735207804 361295038 934153407 378549508 443029156 164519510 479610864 3909936 154843736 105571141 227360459 162691369 427390740 272343468 892666944 146564612 206200031 85649455 583909000 318279367 407183754 288928515 683926374 510425822 786294155 50240955 535297490 295473402 800467660 469636541 994145531 317360796 782506587 210038765 379974995 231114801 714357538 377046597 951477503 837560885 957757456 910945554 983531734 921950354 975955046 190606751 884336779 394968400 749840506 383476681 686198609 114153855 458305123 451653559 481732995 377472764 425391288 191371426 537479724 162256406 748644602 600715562 642890243 412106917 559817556 203514470 342867359 66268726 890286044 653833805 843630161 469441366 858067725 373593858 403087046 220131503 691757483 17271416 685957714 258804584 657117029 57879326 133100947 35235392 363731668 324841882 350575570 45073767 249455156 149501714 671579426 396428086 756588151 517967581 996852667 406903550 430209339 232614884 969107211 317394298 935467216 421323876 607002641 360011827 445720024 343105619 498631771 257853507 676990101 616490901 718477407 685183328 732104825 479432740 900537097 382052712 830062059 90562171 859827137 150644191 860533864 496633499 664920097 267410950 546815727 539247009 878791286 515317560 933054183 121012136 965316003 386951101 492995375 169395504 227887706 218697122 664450503 658000676 820419979 718600736 930886180 233772712 389172511 101907863 778095966 691513061 863360566 239093797 777587800 86189603 749541029 65706757 442322495 122928755 339755503 281351958 515204702 315821960 440475940 402016756 835781941 43644923 71061052 23719224 983477462 404210723 642869328 482782882 498645666 93597850 975270068 254765790 276912992 2859586 207997513 183631086 431731934 7850202 223700116 21709969 250524809 226362328 683447243 509406873 705025438 198582140 420139143 329689306 956376338 680342044 683071539 38136286 77377516 34932778 176631969 142993814 191102104 181379302 301465924 272468641 399768518 261375506 391711307 321696118 690526577 239398046 249874198 81658843 529479738 324012139 602396759 445324242 487568486 12538863 620711258 563226501 885640196 195172921 744136383 391180792 969518494 298020245 427230212 102463422 517379381 400711252 749735056 94227145 979049630 49439400 629693226 354013016 597107274 235114027 255666505 122995203 629857173 531094790 951969241 873657513 927443849 591772960 773511876 567064474 790379152 703238743 752617620 527884428 873470618 464451409 978207021 381072047 741074538 696984175 926388621 620529562 936402323 671427141 757882904 701429661 809024959 399072879 992434339 875923651 928060726 86241799 271521719 116118674 380444528 370499838 951590078 249177198 561502347 545458053 707265170 48854215 518379125 98549806 614496018 463400793 879008798 337015650 705256364 381052683 573113141 240891141 529352619 35960755 914683898 698250639 708271212 112139989 439219300 312480926 531562419 52652768 255162939 121689889 506885476 142264446 239197563 12074821 904241638 359580751 713195198 683027462 840075138 504039915 856975627 626794341 944154543 414433717 634652236 395983593 813061564 268565775 339643430 19405288 563774845 497949591 925326823 802751065 912846778 612268156 815096373 68519817 397100497 329109096 744266294 75997954 738439914 635977262 721309251 327350947 632088628 254880956 484437258 421367321 532589709 79627419 430561251 140785760 461190381 228635817 276047447 185284422 674870816 443491555 635157448 113674225 756061851 565258834 888866152 566725597 771785738 376947036 849775875 165418837 893416812 55897924 741469303 540041753 565556362 390770129 410928053 352636070 777881283 130315109 814512442 444373388 471569425 232437667 496849447 46655105 102826454 102264414 341438652 4447124 720179255 228665298 770241804 44099647 662122914 236611987 374955376 249330656 317764888 60669922 443509927 13611981 185510675 107043299 730944867 696173422 821475513 366371677 397428969 45438324 270083718 135367830 608718288 559965416 633639746 508757142 944540269 373645679 672885004 666286568 759377488 607227929 765983096 1720922 556803715 185099481 806761188 51000708 795871543 112666451 901286310 136898109 594340033 84850896 468037701 164317497 843468816 817414773 919196732 757712066 848245633 200033101 844393227 120312047 814654241 356934465 640550210 53802173 82316769 25530480 203884343 152662253 499580456 196463890 750704957 206778963 294734091 54853061 972590002 628761199 705952500 462985255 673782294 671668772 712750395 439619154 946743257 711936264 736579580 735777646 944294270 131112781 727540748 358064649 842958457 223110776 250295842 215730403 485720075 14158464 817586126 420871014 432037698 14214713 571999419 188844019 968875805 342343237 935242121 683372052 945918374 352434157 405139469 364541722 568155264 528109170 987539154 764100508 828190366 204932128 371333796 237781855 886349549 246153906 547468075 196207151 812367892 699929843 874672891 758720430 793615841 394190742 727028215 635065970 635146452 518441052 611757443 115584066 317729667 287522134 869613400 40239942 579572167 357315149 543636459 441568027 758483671 543936337 869144902 184904851 528871240 409685710 726357600 397293655 667667127 23401361 418866674 383282135 959201470 284384137 749896094 591343905 633489132 486503392 966215384 563019590 645078890 254145742 923717058 135727300 838454166 484745448 504107345 127846216 555825577 531298869 894812286 132877280 526310875 268395559 568119459 282306279 313578968 163083692 923599144 458698455 544159787 66196269 169727264 53855124 778572773 154757568 723928444 408779570 685781394 549039665 808383697 566327986 686900451 415654636 718461420 370886457 524357018 94688490 318214653 253850155 775295029 563819408 808664540 548350881 945889631 697971863 859894086 593807389 870703891 44714173 901643808 580832848 916323486 613984215 940595049 258879114 456735654 368222538 880259768 603254834 765491550 224458003 735043964 244202574 633300859 510511059 840112745 174910352 583551808 176362579 308555130 147950013 657554226 39738307 204044852 89657586 930502576 76391924 557360488 507648855 650315484 110226168 755155985 693309900 896894848 76920290 781184586 58717396 778789291 620860997 816258104 794896992 919490688 204920667 228616050 194829061 672450485 662176618 710634080 522177731 666146729 110203907 288205916 158234847 801585713 34359227 972138868 51518907 501160293 445911144 866996858 437063919 987462262 447630667 938548167 66936694 919451757 907914333 922273665 352476723 630340691 463476361 938031681 121244631 626680275 340186007 694770576 644354810 955041199 610607911 870312985 386806773 474979655 356219693 444728507 278750505 749193820 11169537 269381394 16111884 994543219 932518617 934933301 906667444 963260241 176659350 593256734 294630038 651559636 151526845 410730413 367350806 997267506 240841059 914436488 276214451 712374491 662399957 946307511 648793909 934422484 753400852 890679556 70149909 212979820 176577667 798204815 454261974 980155611 58175230 271704859 158993754 827586055 131125663 339008178 23563057 841567059 9022869 789109656 486543808 912037270 464919661 863121924 190555157 291559653 37802877 997445477 324862286 643948259 229455223 986944770 34079024 668525780 538491866 844863795 278844596 656567810 321982663 732695390 209414288 349681113 210432201 866103072 423644116 844214359 397068777 961213883 171750733 603829144 432646249 549482922 429214551 974243993 517742626 595393097 388739184 850547741 646381305 905722617 316786432 748938378 227485450 483284759 285493873 665261546 434520082 824618686 744260829 910528309 55761728 915176373 835821227 901354358 568237547 857299389 13877987 621146521 71282470 379326466 238515308 621615278 155066236 570794006 66537527 422512084 216153754 434147665 102969831 997804003 590576874 712169831 636260978 693541468 214965502 725132622 442192969 535311517 93912300 708377644 605650350 890637212 400636740 473670214 73736737 366598569 306159545 345639048 263591355 973278943 260804347 524337773 174045130 778479306 157343922 991622023 649619445 735002911 318097235 960283805 360425235 721348969 169965180 212486773 105926336 750433005 255417568 899006912 55112229 179489066 111211965 696275794 465565077 585798772 312123856 352947897 186925349 339283360 250000320 956329291 381829766 807581426 506915932 514270736 102718823 990543001 755745481 830991085 179862692 633327172 10326350 465866472 376373430 981602330 874439998 950734710 365638456 733557690 683566488 721910110 120373817 508100512 136430726 529894517 472873332 856234562 192336919 990809972 914336747 983649479 479580634 610303533 236522375 677793416 488134644 830915949 36675828 651245001 485326173 714611131 542676900 570615447 261461692 622558065 580660454 845498446 625295734 942881965 584119915 636491645 503732301 857559554 208353217 722791340 337296145 489412991 405147259 873747522 172108737 469829534 230642596 631901797 444073971 676046238 619633811 843002687 554403268 561869659 319390909 804353431 461386195 908740834 171323562 365031007 122850279 774081402 122471220 166749850 100592057 941281630 908109553 957703121 735604651 980161678 846791420 907601244 849191661 885019708 388648338 616796858 259930357 841195010 742705810 770215530 174402333 829351668 19610789 635348029 534963380 970070096 794796370 918490537 688178298 777377641 228432824 889370778 544636919 585422099 41856416 375344003 290232207 920904117 651210363 777540208 83486491 557900652 503438250 822353077 789312117 966588095 629152833 790089479 330018732 870402563 614229163 926314069 361847183 772767169 250234654 745422874 174665753 796254911 387660833 720098459 73178393 635768142 46567241 658085046 117941586 672454379 195938526 734471865 428041156 928326391 386745005 412610343 260509515 481370566 94749186 113747938 85049729 630893393 254491852 765093718 723846228 925162533 575159753 591074437 134303548 415653917 325458604 329663830 269100420 791943864 491909127 709394884 367622034 947937779 233808659 740679693 53126891 711044228 553753411 765644167 340600409 398787728 372074363 525136625 360746786 610948138 59077154 913118007 333358115 995475124 99832704 850315051 849348032 869468256 337595248 950064481 410508931 920525201 241976782 243603938 165847181 795978637 388891467 502830914 113723491 212908630 117901418 938917858 443573893 812576344 698729354 976822408 949813511 974045048 783146244 984143156 184496763 967713102 779604406 900006126 284600353 745586537 590519661 955022416 67945789 69800302 65687177 664410826 337161763 568480096 209693949 349155704 143435824 621667022 535446537 667390738 79757602 652214861 635937414 956753588 508533949 600853547 67976157 651842595 111681263 723957811 321603141 461672202 166317491 297937696 141106433 152369528 139797046 286743092 219094271 432397091 3087290 864955549 410669703 781189933 399452107 878006642 281070310 866375330 701748932 965043177 769108886 793571617 290647737 640269633 365931562 661497330 559248975 774755547 174519343 371169409 91960745 390076587 41132536 380713707 111168322 225450678 166123632 790096061 785960063 799417844 498577736 625294834 574771668 606758293 102807917 403933493 157128951 567148548 89451051 868042937 667697092 854918232 687590919 858705274 410258170 991960944 655408059 763286480 385782507 898437733 825068570 946715069 1062464 84811867 66980377 758860125 577761818 653620269 303202166 308724636 144931101 292097629 3016645 924157485 673802399 873590304 1799702 923490227 536902172 940922237 312457399 531780711 418428921 829953351 450699093 966184114 178287646 677779967 573429222 639239438 255687668 987137907 437371255 632685738 174660558 570880869 179978157 825606896 344642971 858623110 850547401 941818447 141061000 415162247 197862873 389883393 181082451 399463253 84542746 930995954 887265724 897252062 327913771 924932502 199399068 704850939 608340408 662116341 342200740 813277031 199833824 229751487 59958851 957077236 916474652 933825893 234384852 756342033 67478042 597226742 318454179 945009230 669210831 796068039 547495343 958097801 52611116 977228446 595392527 994608754 895777527 942079220 33894787 243359178 172150831 220744764 106348609 441276909 295407047 416955522 105177653 573724794 564557857 835182918 400736867 564923798 300662881 534402287 121395563 426672969 215290653 751291811 434960885 567243177 315534910 539003147 77186162 904952703 844583928 900663107 890593897 928431118 346734115 982969049 579287710 725432467 529469197 693614590 113318085 139461042 17427627 730633101 208464069 914537355 532884172 549505594 347238871 807150501 482035795 977586132 635845859 727051200 185061693 233599954 170263032 674182054 495946900 565993928 179433056 348985438 173989732 176818438 47521538 504573030 100737003 429513182 104047901 557086279 508621092 537559736 59493810 668950896 145899693 432065405 343410862 575023149 76266896 642924938 207658679 505110780 341009067 385505400 217778136 471526028 439241601 844260804 333399721 643697987 442298421 528796911 98961765 522331788 352276826 946712997 23747607 265404981 260614140 624061835 37012385 782703448 142656802 388524384 345538868 830920107 388399851 459098896 230434101 411191842 366399178 407408465 323292096 444519391 67344242 633140307 125974230 730243449 170416874 291672365 236435078 665409477 41399946 576885426 559409222 654425425 538975348 765753223 424331710 464289638 388292224 434216432 431968472 916649427 404429915 531103720 155486810 371061146 208273473 817221417 502246511 624093548 485258875 917812417 528188536 930955095 200835104 656727210 629592201 682352383 21722156 919003828 597453192 869994949 697035273 960843606 416278790 457943816 314690716 517525180 387858235 980767079 874281289 891013776 53063368 822367014 654844027 657633886 242607018 824078663 239803917 244641979 163223065 441222956 26222518 115633872 102180553 992297625 604069657 797840315 472064906 970190595 615390401 653496980 602252477 728884969 8416676 794923781 740873467 777734471 171319888 916124317 711055920 803801554 507930875 629224636 291917396 733191478 400349225 871227635 779583766 900666104 621343068 659544742 218735339 375569921 152584232 475725506 317357983 579034852 41094443 531791403 516981960 559934544 180351632 987022295 262011719 933845485 763651516 940916792 234351126 732942639 151221677 423217384 196988451 208945305 39391289 220695687 216447542 328772826 175611124 794804061 417974010 725953104 602732970 662371627 359003412 905635636 186187431 257937361 237487775 743569123 450983143 856094545 793136204 967063522 578323444 773613485 684560939 784603472 377114369 705497323 174791302 348622801 234803129 659916901 79750105 305392554 146315422 425625915 236152778 518948867 127625982 717373264 442433532 652276516 332233939 576367787 459335644 630562234 225829133 793593559 349603241 556528719 71283334 550513020 35892712 149329319 46763194 328496016 207594970 630102777 533022605 542770469 285943256 975256664 316146072 803299739 411846284 694308698 362991824 681274947 164989428 440997349 146986530 974705105 564947154 715383428 69603218 603710330 494594384 506438529 289439388 335853994 186312076 270043927 92284119 365036648 218858345 808390675 602183240 637003973 116205220 777648517 678066000 701796242 587028801 675566187 103607362 284770795 40350805 635255151 197840583 824223583 264768251 454818983 78305802 101989467 54612619 380725731 191681651 771716836 337948402 486414803 181849049 721357470 588838093 908484265 820111045 833728335 213741877 826118359 428128818 865779886 587411855 954345726 204682857 741197722 384831777 540309127 181718758 335135079 105804752 939026659 162496966 374861274 92619119 869093342 234222254 320598556 54178275 358533903 209059085 319722171 130872535 473633904 582012 840802696 150742185 759819431 277494986 277861548 222750030 457815009 425499180 447215735 158383924 961808048 871740516 929825395 259735393 727171484 5856934 41733840 23337165 951601485 501499228 719902009 22053947 753526165 73646124 268584550 12272820 257838717 2226520 679010965 162073216 743394518 719988308 729764536 82461442 465421983 367181995 673639724 16625388 212229642 139429349 213625281 96133576 790093627 31332814 778548188 531610441 812645143 500652708 665519644 660667779 706663061 504225468 558580644 278338417 932411505 639794677 873156713 294718552 580859041 237054916 654031023 639559667 720950553 551689060 772887286 79631715 405794705 267261224 850763571 754479794 976263413 244556436 992281152 529422009 610191291 522402599 537494685 215610393 501002633 125872614 592292083 557437914 726102047 35501874 500925406 389557868 877777920 471251279 556563998 415995536 475243657 406073222 724473591 439923356 877950002 797391992 882992628 738992663 946362950 155502615 915912956 51890390 253092519 146963570 443018377 186357068 397829885 169771784 671917339 665141038 893056465 325291919 346332853 24472479 96391122 62298962 427793831 250759694 334054818 44362445 871723740 765900380 953980697 205156708 735158195 265255763 287534123 10634045 481284756 351646019 877467638 337554151 753579635 356312258 853665587 655068297 703171852 271209393 430070505 35231153 441536451 32301541 135345801 48767678 757663725 121829971 408386019 350502538 568207357 154586046 643199906 580004195 934479670 488317408 629840576 463640672 990698761 366217220 928795844 904825209 948435875 72568630 160003378 141061038 291936897 185978013 415956025 269304137 778235440 398166296 692826592 637286482 821299687 691571621 802773890 660067218 824146985 570309705 671282674 629419009 856635133 16467879 532892075 161113553 832525469 125183968 505465194 88649812 578244217 388118536 762698850 4869171 451059453 450236270 516445093 24984803 212418013 179283571 949478713 13136967 97610864 64054589 628346279 97499505 654662790 313791794 940937314 668002883 757592318 366882461 991860540 420312703 967104989 526424905 821076969 621542872 689092386 1049940 779644281 257311777 891028185 296429843 707219033 703676505 911059126 26027213 553853033 476707027 642046546 16255416 659991073 596076182 868326469 107110949 454456486 92627233 518498217 116026810 137200238 25503746 503669754 422393877 598446723 502482807 745469244 407548852 481931752 277997988 915013477 24066866 895264195 845016488 992647205 78729461 630418478 43551343 432917968 279687266 992531036 615584066 821525938 550447718 577074199 180906910 998210385 994776733 997385677 800613249 845221423 321519637 814464782 711152147 854022611 822092904 893605864 237427402 254666817 129550259 396682421 105364714 745836402 625315114 790429539 458042843 497965569 191456557 314236888 136478658 866919301 48820376 230561199 47783462 720817380 257478242 525861384 236805556 469886480 217557203 377646056 60947434 293203438 248316901 745300925 678282647 972482540 105383365 388249451 126603734 850136913 412620078 551273830 397706985 697367704 119391241 254206382 44757714 229154600 122337635 418864382 79002669 728041519 219420885 930966814 500687890 634504782 518803154 789084256 459798301 812962652 411009054 689540266 69198084 338902394 194674382 995816680 128011064 993711671 210355034 615163477 275967549 548776621 34473657 651771051 211823925 663245287 146480336 707417923 695183891 917318559 635593507 678695480 542271187 889903497 800299730 877503460 542440786 942634820 456363494 744441572 718321372 996271535 295908212 488814350 420145997 489874593 351290965 989744045 486961568 933677310 134583368 723417244 614024001 908220024 76131021 375641467 171981981 501684336 347348165 929832737 100633605 385606800 288649348 471385098 457464068 793695002 160053381 935751355 99590564 245342558 15886558 788469040 197706018 481781156 322432113 636926373 226357566 532328503 192700662 537998549 125141812 339336831 278124528 739519422 131070985 958757738 82892950 945132018 11507252 751019143 54153200 278308248 12371032 18849507 17777755 260379357 12845337 935088172 741696383 832393616 387952712 548925646 153318429 773964562 225770875 304721895 153656938 642704459 175124676 242827238 132151254 405385832 296141547 866685616 337589943 704808658 611182422 853387024 775577526 864957812 617433614 709957212 398320598 691446423 289254419 373962852 14145975 18227872 4797258 851649646 428556507 914108651 484062390 548839520 368913367 884533843 810986023 941332103 871387631 955244428 930119977 987219361 346462725 980026137 432259457 572776555 393985139 799862683 181110994 188798607 59911504 754933801 510839077 903252769 562888766 904015626 757328465 778832922 77688502 880420518 394053783 404659431 319171117 824188499 674881784 900133384 416517447 700290180 91844428 632162015 338721945 598078406 199098156 330449933 49100881 922482704 895589306 986259669 706427897 979847336 538760609 869148959 46101855 392016793 229256407 467367542 171370484 837588710 429477578 772184475 363349245 638145234 588755904 651033899 118158692 780601438 758660172 869268465 699426693 978157550 678782965 763997268 166811602 368468412 112455492 381116320 281882473 770293818 702718121 977600155 318317814 733816644 529897083 936338361 428740316 679495965 214906601 385169214 168617062 418847736 165542959 405095234 209278560 774135839 612841730 727463047 360136120 853921200 806714260 908964885 46467426 259792695 196266922 207171813 29095966 747166063 655208487 749403072 231398862 666805563 356525274 822385239 727030571 987648835 485683053 689567044 641818623 755023578 543410628 585583611 294505834 443586925 257500271 660005691 120358544 580622885 339961330 349514260 635646 272329678 39909423 369975170 131748970 828335754 599085094 731687194 294890880 793532916 501331914 948007277 549688953 643533815 48788663 386031079 106513261 429934729 272224562 717039705 335311559 500866626 318052349 667786071 548153064 792545080 234616842 800552447 529367021 814239482 704868506 720462300 383241954 942486128 486312661 745171517 179051647 720088646 137192320 882430082 580713874 750799761 187553872 574471005 242837697 713049856 386936655 446717234 255988568 544761729 75727164 999680527 247753398 290128652 234468853 554771235 368137747 841693491 528579893 805887780 161923408 877332483 282879850 557003302 300393645 421342706 126647226 441564847 183817747 376366156 275442197 275449804 24541152 868542772 851787562 989926581 452732541 637887020 280347454 961070948 792657721 920975169 879205824 943313835 283674236 858146732 583628445 909869713 184226461 546966173 397145458 584321572 306474337 429677600 341643036 794918326 336617887 745397672 529380414 989326609 153683771 404928726 57701333 883718690 534260150 996681077 193871452 917202085 343602244 678528065 575225712 860535615 435653342 853482949 680092532 831896271 331417984 386021508 153779878 424644430 148240389 271110731 240695966 247459506 218509254 379046505 209633497 716399693 491010485 720106420 418111679 492493042 5034094 527051457 222057325 320190955 172475652 919037022 629221941 821999064 104536206 262738745 107283254 382733907 348563749 480960285 476731065 680503528 5037460 513990265 471356376 526934908 463191816 743165801 548247212 634873569 253256981 642477836 216367356 245770129 190016755 412016847 102880926 521330849 32050054 166437797 19109526 905613219 24656147 841202240 716124351 733583785 348047514 644304956 437092633 483146872 125594569 582636544 345285397 838963360 538618391 648700159 336875685 454680004 394215524 639582131 452129785 723393318 307049614 706097402 43490427 647195741 454164136 761672473 62827392 786300178 27126722 165107153 20040972 578972432 457477071 702168430 350329536 955068848 362770993 959407586 55818056 356677830 140096405 245726388 242418608 542858687 315012246 655496711 145254530 336876702 307953088 713796410 304450027 470660761 456189298 847877858 754106087 911512446 885133009 963268880 288848688 462983628 150323937 230712860 30607335 903561044 288250220 764899902 621079061 773349316 166964087 201613621 142024690 683835652 322303652 805818500 267235756 896148624 500450207 634753591 445076850 832047571 523508671 929372293 178356932 204582450 27759604 946002367 536167238 995601322 909714194 986657299 484501492 987473393 55625090 848154154 459726852 613033223 590667199 868608432 235502014 954876902 940532062 943275193 651728791 750167715 62368322 737745991 520596251 627162908 319521337 989633164 170484668 369201487 145551253 961748330 510425156 807528792 729063198 750601006 682641300 924249078 31331314 827006533 332380140 461710524 124532875 478484206 164052820 542228656 363187662 771416539 379306205 810649232 266677329 867844745 735743638 880109541 63731251 444533981 86240427 868992868 622002767 751246937 17986353 147319790 69192941 193757418 80809543 120117450 63004614 353530978 209140342 441658662 35763850 571707416 492934369 984202435 789564615 948628319 452230779 829680924 520028274 653069910 126346238 864203518 386560926 466421803 350232204 895281493 115560895 145178202 95512054 543435970 270666801 616848814 254150407 821366222 496631716 922536941 817147153 862383887 747516000 864962556 330935545 623984932 597083878 891164455 447893548 513975409 372671326 474181271 465830882 807309048 674201827 870712763 481752341 763766498 175389456 451638904 281785744 722783973 146338953 672386704 633396945 644911161 638494737 913562829 460071653 509225679 259665242 603045000 248535434 763316249 667696731 820996413 500958868 923132804 525333842 625473285 556096998 747460393 236731431 699399544 235385859 315442973 308711657 331871679 98031318 903185636 747431769 950335133 361240995 911568794 865809742 878994581 375221116 841723389 572444815 936434505 818626942 937843100 822157879 951500964 106307383 891136090 801080864 938061978 413497553 555127995 253090201 264658045 40954879 377944349 349160655 550198337 469695563 892358222 122384136 141435246 45392852 647361970 448836859 943417246 313623731 962197615 632996225 853674240 564369904 785177897 87764754 862978280 479863766 776975164 214617275 512359962 346231180 911047222 683046555 931634735 666482023 757994256 508842486 758900837 9834433 522821590 410410344 700085776 623639972 736146757 572122025 594736723 380148279 609920658 349331549 773925386 389646507 607793938 75201070 127519434 12065447 135948594 112310682 837646790 550927502 942957717 790424893 821972550 601501824 729336442 166003982 507268615 96980711 396883850 355297230 960571283 869625317 872684763 233177150 805035046 349432188 643457069 82016744 935855939 447914017 829450273 142382706 314673899 238039918 750881654 606237038 756408341 413339556 970366788 264246928 871609267 365125162 852345651 21903727 261796841 205114543 529466356 524663454 597577650 160941612 286618513 99206788 814038104 109371771 917863267 20068654 910621697 596508194 838570139 634811841 874926657 111970302 666464318 572838672 939270397 703406208 884645344 708218611 756141384 313883720 459467221 449918869 511750860 499844992 559984070 233120 882386059 122555986 693613458 315615871 801211371 329237753 364391934 352147210 364708395 70896615 838831664 117526281 834554382 536533286 860930075 48617271 75897008 18070876 732369397 673315323 959933006 923293460 970455534 641651968 682717551 304739770 496294960 325647051 931542994 405951494 699136207 547547322 888044848 115097723 206132957 89885801 910484056 83070480 268748910 102564870 802427801 556374603 625085263 482120776 760942197 159871313 597558159 370567384 895099808 367382072 943321723 328772149 672501257 294731016 548838866 375612041 417548974 78236336 451729672 417474304 712751641 381456786 567871449 243197237 968841766 836646750 984826817 652633293 838072987 674828309 916276715 13934493 608260933 349508321 944130783 430667417 631296464 181109753 423478409 281292 223656156 54762791 704505688 145168637 877553344 362449297 663878115 363444175 997828126 95029116 402145291 258000973 835899065 141263963 789448044 497864283 538153094 114939598 597145827 242812029 679955075 376906562 931265535 831864972 944397924 283449949 557430272 62833024 700659994 463168748 770577836 536244289 541120393 22121040 450965172 378108162 915244485 176210614 684841097 126909311 192945316 139144016 198059405 107304314 825421858 590859974 745243708 227630195 421312982 214447712 846920131 340339988 828848440 171027439 972823706 240828092 502190003 292305592 941283270 75285632 312285760 235420935 809109286 674565020 702815808 225032335 358538067 155508678 415273380 110353034 817756952 181028889 702107687 20624393 972162628 530881385 861778231 163072843 434000289 359709579 415337886 318969666 570313785 207157282 920973114 598100455 792846560 475446185 934976050 52890776 549783203 269318647 971731086 109105120 453578634 312113529 960548537 570120565 719947334 284020437 759971819 493793185 761950662 351021314 860331881 366302537 409949540 350413317 695266510 583236331 830263388 471177570 898610515 25070851 743467264 105986015 524190381 315423619 768479281 343314604 603962109 192302328 646975320 180961981 826115239 124226327 461159843 86732170 312319814 285914953 367545673 318569598 400408394 4632487 217175736 181323622 347657183 154662277 838970700 195966339 886897043 873871577 919536854 214966530 513740111 83622407 233316824 188923025 845318808 312913848 370630750 304336857 779903727 348484752 537399204 358825723 714588765 219496687 468752502 311859509 589836518 121128045 431953462 243602979 324472970 129960955 961474250 607771204 953355234 883945639 898879860 393689222 943947759 580380340 598653745 307037970 598824542 115313226 767368794 26980646 127287131 23838426 732252043 112487577 131776593 15324467 266040132 160691401 300761491 171319199 333523941 270250863 805258629 31667828 479587209 23960752 253965234 183307439 888526551 549757369 729973269 459132032 743156034 259712634 656540524 131747106 278384065 106292803 152910298 96914300 274191581 259882900 872514909 200460376 226086938 116554802 363841654 49684956 593721297 121015371 821334258 736053740 748994796 398865352 685689243 331016132 671960486 586085099 709929655 432746558 518010651 267998648 807676686 207858275 796294366 489205433 569435338 539902828 645818635 546237103 583000642 289087421 424572831 364788446 964938407 550593542 668174264 225367567 371222908 27045057 382376465 286141082 379879707 48930540 864133925 604687920 877422920 84067236 110861810 82859009 484101151 254747656 273901341 190222138 587771082 10664090 118185019 38307447 199214479 2359567 221776016 199815158 734623490 470755270 511760097 215448722 561599555 469575557 561168550 475457547 755878966 81383023 163055042 29674291 936146803 854313616 933683587 848782375 881323950 527704956 535489997 48286953 701655290 670257797 845669373 462836788 958580760 307240578 547805373 502165752 533198339 358820707 461367289 438236653 656614985 138275464 202437443 119984057 437609017 194753661 244145343 218281628 480093872 398402275 778049837 75809379 468369057 173832658 741765958 623124271 927753161 706012899 921156704 423495835 608657260 324993920 707963135 259399234 278158683 105864019 701799440 339284 947181021 366683490 758299746 664000782 823173187 247646597 896917113 472128989 909899098 367820103 380826486 218570251 308872308 77229073 151656351 107971027 362036918 286989433 940943946 236581017 593041469 6759555 551201418 252902012 855719690 121353682 204372673 119746168 477380343 421992490 629108069 476717095 973108441 643371408 938666814 646924316 899903479 630339408 898402457 248910750 492705095 16271857 101484347 61107628 217749974 182771546 602192463 387989199 510829602 279000051 386214143 271781044 492097897 144928828 414302085 170401454 246780231 25820940 957161957 761828334 872295274 27731178 504920584 251909938 745395796 139959537 392757395 327214531 968454163 784758557 969598336 877259067 884891492 866329350 911245343 441853317 500842288 233868248 971605862 922608748 978649548 9070759 351510533 112376146 130894511 106009699 978010464 778813277 788105764 270976845 776533364 540413250 814987982 651550144 808825332 56807556 115236847 69828030 153781533 75153211 949671683 850416496 920183077 160928523 936438857 472622059 909036160 785902059 862029700 244086813 374504657 74619914 549358788 115685221 949636870 50562068 562111675 334082375 658414320 642086869 868915819 37070169 858711914 857845163 946584033 875467194 955718287 349547796 384180155 307848561 318919177 68738092 647877923 513855571 713782243 320682990 995243631 154189926 987848388 804338754 872870258 526685159 766315670 691086721 717896186 510770045 676112344 68239005 781636125 443687515 766858078 519265954 660247965 387698962 551407826 289644611 421766929 284837622 304214707 118405150 587686641 82340043 961615913 488259789 957803308 180235413 228401753 21358580 758867715 470051256 615870394 371577820 640261243 598837023 832692004 37732116 449847203 39346437 506933021 417594632 482925614 226123164 880014756 162354122 175697084 449081 644535735 332115247 901295380 633453927 902415072 198086932 204700555 67725746 131391256 45086204 188388803 83439784 595201204 581522203 748608726 624001120 638218673 212642020 386439623 280668379 608952029 398922237 949742339 663690038 956455781 947304841 990817954 646824722 721082119 408222353 502110449 85956529 953790531 496718505 927376626 672204223 930053907 201108714 237138797 149327837 700899078 421747964 916884224 41544444 651296046 270791551 517353157 286590147 949851347 921430515 985658606 892301106 897297817 292225091 381306099 256210653 774251010 489094379 702349979 599503715 855538950 613646628 666155510 469541948 985463743 360416166 468877918 241455674 504061531 347946417 358429607 114706692 841185901 532710394 679052789 88595578 769473294 548313110 552789723 332299258 413299418 127554669 166782025 65936657 718726323 129828645 634214446 398063709 758642386 344342395 835686702 802651046 922244169 881463666 911824081 789413767 952902810 364567726 566110215 145144883 853500758 376563678 392986859 135024505 174272554 28354008 839358393 715342222 910550064 515565848 962430811 294285747 626832416 522873947 851559205 520000197 743226981 435063958 926656270 121467799 546426785 541121600 963246992 109866641 583036953 413800026 981491104 726591550 874673981 242168657 571580675 119884367 540971458 153304638 174489858 141340331 365677405 291132636 299491771 298175554 327952627 198111744 267965333 27968272 269352143 225697747 580062526 292212290 342824230 173844420 916338271 415333275 780783933 93553237 370051737 31344893 968878893 415778628 535358275 84411995 604080878 118206206 163487114 126021699 748415206 659813820 910972276 397709984 530763797 396089756 852184408 606276785 661770212 642999489 885864323 500285755 515832676 404584836 431482168 171217733 322975143 192544715 384162743 47509206 883604265 62794107 848119743 523744945 941497556 188346779 699388021 475577880 854701094 131679267 217110743 45122824 634827028 486938398 823073614 438143398 781104085 688137491 865027252 195135195 431542901 420329662 710356508 430615019 731288892 117015496 941834729 16366433 357254671 9157492 515493899 160924492 892173565 505699063 687570887 82656595 996570800 475551766 829299091 153287781 958984378 70280615 104213586 85464082 331227793 207125821 539341444 454504647 847149350 129264537 526487587 321098577 888272691 278192112 441368195 22481911 919803049 114836912 427858103 351349916 945949447 769449182 803273258 513792044 926154586 400729276 574056106 350409758 727195082 438084145 682314033 504150474 735642298 504390169 986503785 971996171 995787154 271569227 613822506 209812312 211913088 99537189 450904013 47603934 263009132 242817498 915644588 409570598 549232984 285046538 404289710 247910163 350656793 63252308 66216170 42028278 156721343 53728096 526693618 901725 351212205 63078142 143776199 120954329 956815783 313599895 495439907 174615529 329111457 274538240 980284117 484352378 634964434 443178364 732218744 309093851 962207652 705355198 823564735 589319604 745398424 216947263 432667443 64337198 836815221 834134399 853881709 489805781 771342967 137081430 344525776 213688346 422684776 44915585 440935561 332981342 577119094 251449147 941033328 233103504 265204916 234982535 285651086 85855295 246271420 46937128 916090579 657311510 858922008 820947935 868298469 667110877 878018954 737922780 881305006 539947992 699824446 45191959 196406199 49634542 725589603 667594984 962461958 433209096 986852836 436920938 857199548 494499380 822203602 169819076 591664699 448026242 803748434 460840961 634177011 458214139 711138185 398388030 825512664 792246644 859483011 369441254 815287691 302075766 542879606 216196437 419487564 347675810 575080070 161088183 396597029 152890136 246245060 174273797 279309229 188053628 895596072 346648669 701575017 446019098 856304602 452998573 829913071 495933497 999162192 103338561 528362876 196570820 227550168 213566204 424214303 36182899 527364439 87465673 195937136 148545461 474115079 76613989 838384670 342782681 425409337 255239305 732035708 311326634 571474210 473861322 923349444 343131394 673357927 127962297 685179431 264798443 473912543 278700293 970198913 444163010 974982372 561985323 664909445 555146459 843336121 123491569 609857860 2698221 762682541 153262477 424961690 229400730 928878347 387506132 401985645 284169853 411038856 138097972 891662456 234311294 503647315 379056957 812306402 467424615 808554981 723832819 738356961 730816905 857690186 177778756 313467842 237209736 383159464 336053376 526381179 38984998 960040827 872342226 986699763 128062688 308433894 211822797 838348546 317992008 929163070 816935940 903954525 800861682 946983629 732145750 901290906 468198666 480706259 319510683 716913552 146527142 350341450 152825237 779254692 94820043 919112236 202358012 829025410 588712879 952699446 724857303 958458803 109658210 307702036 81978831 952595759 793558190 827131338 770473791 905068173 838161128 923694348 254418111 522298123 365760735 802128295 631803170 900261763 752549016 833496010 619971048 695260444 312534833 411777886 276972943 486623797 381859056 569106182 51518619 794615789 602811151 911494154 859496245 984593606 975948508 984436695 448905566 453495082 233918642 934511460 625091737 812126538 326101903 804559988 777689618 834606694 142422318 153114064 109470898 646530637 632141761 785874287 434411945 812450870 776364362 831513000 575114155 720515842 272321523 846733577 756184355 840285630 706834684 763102720 54045899 605273838 458932022 708218595 699656974 997021731 724805141 987840549 927422833 982681244 568513677 588972211 479260556 777967362 721728418 925639392 843934126 994225099 2914675 540990610 239527186 705206720 585196015 876466974 262180317 718917244 414302481 980714628 180932524 791980862 328065505 542022578 168429521 825271330 195036896 714748238 161141001 266103712 177567858 293681418 21112317 797218411 280667790 521489264 201350823 990746353 111226376 280688047 35250525 131376033 17172026 603309435 147186541 626419425 173221563 181406472 92364204 513964505 70818104 960063218 104229001 114485355 29748644 538578909 277577299 953261720 44783004 237074176 120540170 529764950 335847000 364076990 264408001 757722651 720452136 815224165 410600003 974397622 552347316 865345531 699848408 761959077 185264053 868091280 609350904 718029164 294193209 347806102 215002817 700671469 426445700 670012540 601687584 763539430 283054134 541101201 231735933 890039795 44763339 235988120 120266729 327118408 27208315 159048476 117470931 230351445 50307 934724332 930612375 980448312 661403474 929705752 148787412 886872599 720852860 738909517 89475755 938003570 575224116 886207306 827442980 838343682 695159946 696427858 421933468 970148526 505790999 768932461 341654549 668875682 421438597 428993331 226526861 257212645 57613733 642006180 26900806 541163456 227216506 657626676 607875027 706431085 88459972 630898921 371590259 548159245 358145909 826755963 339436435 691836129 454495703 870636636 492404902 598450141 247813166 727792260 419630364 755453672 511690922 918131511 226071281 861687163 104157845 875072936 519588121 874417439 328486249 574026520 289003942 455244479 61020489 134677835 3991649 411367889 297873720 598332677 414661348 602764306 217990563 820967580 25172505 314683751 97412155 997881339 777234168 873543111 316841107 492409262 137276963 923112084 514604498 977764793 948517973 952620312 202413223 684310690 173613004 255961127 246595899 918820132 503910112 594026209 455097706 808224268 346983752 905320626 516660605 920601287 589458247 883861783 847045653 961655299 307949144 390705673 186764828 674452917 29260489 833748240 721285468 814297325 365454066 431439856 405979953 573034534 190674998 458796950 245369142 626149148 207441342 949025996 237755099 615747386 580509054 843645542 698642505 725718798 349035263 741934172 474345513 489804241 171204215 217868405 71762462 614918313 216359108 866353939 67778729 637206738 358092591 801428179 618045633 949024699 486627066 887740451 661384251 986797435 482439696 974856057 102555397 173538676 93714751 957869770 492884078 648923655 334230747 809466716 176663622 430899992 390164618 908435582 507169231 885369853 93666485 959934727 527244095 902227065 170327559 632827124 522368789 846144284 420006455 512814827 425200175 949982549 98396083 778296748 598760098 757183179 373750271 725264273 176674283 318616792 153818938 788753943 136036748 818247202 374426327 607308602 207893835 422365724 15761150 550512251 281503524 640689823 15311327 424220190 18622202 450962872 302033167 923144172 70379601 889689652 97106540 629472337 84894171 434226728 237320106 473821571 441229144 659044880 643148459 857809532 666732876 839882348 13693093 679947276 579089498 780764348 500428372 559792009 212716721 394272226 127336788 128529073 43916089 760316861 162049136 372017967 195664388 289533635 32670480 34996896 9842607 437876521 309322042 909970051 499700242 639343630 619483467 708062128 390183729 609757120 472041312 586564946 154621311 906941675 234630297 613060079 353798843 717817814 115117175 339546152 178243499 593668108 444083439 891133768 746956623 822480084 705204886 884340672 561909573 793541429 349680363 823138950 804154791 951416669 511053965 874889049 666257161 977346230 347122325 961529413 248829100 308033779 304989416 382390008 371618607 503274797 356931663 677083747 210970470 415522732 94576327 858199291 595521504 681616358 400565997 703870225 343505516 428155358 356487146 472638032 46119328 859974973 264246968 607603810 577642127 849515163 165914948 981131526 281204517 665152790 415114961 753661913 289371936 584804740 261967957 846053235 1501130 337223574 285732871 542851692 359918292 757022459 617815805 811582673 342134041 989986076 647108897 968769101 254785174 943970105 166907844 588014619 84714585 560789149 357670881 708255650 625762063 937941054 301674837 845667175 41345864 426849299 253999533 447445924 272835486 491427661 98655409 681615395 600388579 621155443 431189243 749134768 714830155 973721390 751574757 840980567 627055157 856882385 153123350 262677122 84088909 377044307 303706954 390781545 195183193 501671901 336817168 878517669 834438814 909590771 883156338 957523736 469996407 848784725 475266328 936602646 848586457 973184994 105269517 926309011 656231316 747352363 674681898 758486890 431453180 673860439 397582725 767619340 306597787 509106707 402694550 446004681 435531464 913669502 231931184 330490704 106889065 159399055 37269822 410206697 374391005 613943105 151894157 664603595 18555917 167486274 161443154 489350690 32184721 324884992 113673139 606322173 31508358 840356181 608260702 905920136 433936713 820392987 223906803 626374510 353028920 518544305 423957447 876448135 295497977 578027156 18508255 832347084 83408740 656751458 545293480 836555562 740060179 875723003 670654925 822883256 520456284 608845940 145240030 610355764 201017200 608907476 45887273 254537129 226739345 546988122 410531748 678620821 553694318 872950772 131851040 391318871 375513148 803536980 793089800 825086698 610657009 790932910 544148423 695426961 175775268 949049211 114197424 803821544 727375191 734350480 673511057 950350056 175510491 619255869 147578623 753013927 364674800 768488424 100001340 973106384 583681871 819199921 762834123 842507875 191119467 832086210 271956096 688128599 132267501 792312833 403241015 586720271 225559652 575312907 72440638 915663490 398905280 676852700 222262147 662170580 559951844 669853653 215371031 723342892 708799485 724425058 271620091 801181521 7508869 836853193 742586804 864213329 143143654 526040489 180172135 515876420 463730638 742334312 198404760 913609033 355837958 710222519 207952721 833569477 76244511 688847270 167834863 358575761 263233242 826538242 222317537 519926992 472872940 903555889 533757878 924287410 351177835 629023968 436819883 882698073 566137324 856574936 768543850 885894408 608690243 618605906 253118539 963094851 766804805 842501252 448593649 968066979 27386341 906293409 718797986 829649116 124837094 590827170 59012773 140843373 46369428 281843394 111404336 126816569 90261989 938672254 109398229 243035963 135834769 284222840 266589767 661303308 37971816 669397267 23791615 950691881 700363757 703528377 641708214 811761455 512730998 812855886 349029296 744765950 134068236 906406488 891495937 930452116 600933623 788523640 105142442 255538979 226421774 849275071 260842127 264350101 236676210 635204013 224802590 573643600 206461100 676818224 81688096 662800903 130459446 293647427 40635046 72767386 66085055 265339872 240400244 953278309 445853403 691470079 83425484 963705791 933958975 959100473 932054857 955954763 844858306 940865269 32138137 850127478 233156546 727231514 414059569 644109440 194355911 428862748 107063092 823162081 463719129 611120647 301243279 469927230 241518829 780692605 641542604 937278958 699343892 913996340 364768236 749207204 141922229 143348543 26449 688524297 139771537 169369955 15262195 701954541 501640266 527239211 56643255 394005079 1968057 827666978 237508813 412371540 230459973 996160854 845866298 923613651 37591171 471302934 228575662 322774455 272690425 643592339 224079564 423613070 171358119 973638426 456421094 843085923 184000345 589829237 501494828 541458550 47692959 623646033 159143659 252915856 180194067 950549155 785093931 787542792 123265790 931681873 99523890 606494848 325678746 729762524 332705439 797969837 528161902 809485642 93772572 134748707 115597149 446264599 441048482 957920622 648314389 662446736 338138869 589423455 101461505 698236674 685732137 932466664 105003212 889184196 451181913 795528974 436088487 696522217 606033179 913835586 421663021 823937196 69223761 492115143 264229651 932827413 228268510 886505397 249592439 950335182 419783589 923984005 502108607 639926193 388148422 598457419 212242966 275092265 144957905 289677822 76687333 344881048 286280206 908471938 470941740 764979240 396773635 808454383 196137614 668465880 278321281 743617489 569596279 803634292 702222931 901908658 377260440 564504413 554176026 978709804 971021757 974610325 212457665 533619130 242753150 604598263 504427693 519902160 393075048 652523652 173647921 580425790 510919488 536620748 56252553 943981710 773679690 906049288 38383275 884055286 531666306 532853956 355491874 795017455 764615801 792981762 176192452 866882025 161987715 857886648 690742118 916483282 890963547 992610286 133367448 611804166 353424180 371630186 48672990 81960324 10878506 52995695 4188025 4288495 2157031 476667417 197758854 401835408 75328685 742224046 82029672 250853202 218715653 740948210 406452269 750859821 188000063 388385866 383917867 629781778 612533987 875423735 265640071 854069059 607680977 729673830 242865987 392957447 364511466 960044062 127990341 935665328 494211433 941198311 871369636 879801782 619591629 863435472 89244872 872621197 114769520 983253302 37607015 81533232 64642345 709754534 5380950 944415912 33679349 955727997 737230537 856666979 838129254 929870060 653489649 892016746 142404702 352653079 158540285 673075851 586581048 762871316 412519564 630836327 402145505 456599638 401438569 596865220 312960837 708091342 180806441 474082237 280425434 967535353 919157879 922053276 674921630 681525333 209803067 347670788 48733104 911311924 854194755 864467449 455506331 677077305 67645071 371802918 132835607 983365800 860998842 995499365 142275903 281812449 160405131 260728108 50835937 495334231 29872872 461874401 101811826 566053089 449894063 980580346 545082034 649093722 597256588 972788751 452798399 757910866 470903471 781076565 771621560 785545610 536780502 781512877 41698533 151803015 25564786 911114638 676131100 788622984 142484274 816255571 187705189 377089305 314235046 962891690 642980125 699297585 357450504 423595989 234294441 242419480 143728505 249353682 77462344 369756314 48808965 262605670 110167785 349415057 199940393 829270933 660137134 922371058 308804973 432502523 107967546 108851248 275578 32033102 23835952 993315955 359433333 901664728 147421090 274422306 176517842 296249203 128214325 644583390 622398378 921549661 805776342 836688337 362295448 514416377 429676103 574524013 65376123 995585589 373653433 729027357 98212951 544439145 491839057 835756688 585257268 877975445 571772420 915444741 684921392 769375971 516037497 768312425 99709579 679996763 632135370 975543891 723558758 990475933 341094710 616728926 62096988 204323017 86056254 148059233 68268530 766421146 24781421 40710516 26805349 321754295 307436583 490513708 103590186 258579575 15904368 67616100 36537481 368391058 338391267 470088726 465671160 883072576 469156646 966551068 556612279 955511182 507715141 796518883 718264547 896019799 128580715 783400641 11802038 539647797 78599812 349315369 260415655 891565947 777608571 905510153 407427820 758526888 284659868 695354199 495049092 554197174 229158452 652871391 525285792 959882826 472426187 820981365 143014824 707828292 436089507 791268695 508037964 606827686 468952998 864199033 362226794 564034825 428081152 899219376 422566105 874525802 523625661 939624596 266637989 383843948 139810665 215658352 118204082 411014876 8205771 665882036 288243316 973066073 48038476 326180349 24077013 217404574 104470667 648281404 111147326 469107518 276990221 701672777 675353948 750377327 660025084 731443287 189233021 986804281 557153682 747669384 209527257 853103680 357561535 570287978 299302634 790355159 789699553 868814061 575236682 893012650 107582909 929843305 875380791 928469174 490363370 640835463 118001882 762407391 218686595 660539915 613729175 870894064 12701331 764852703 607473500 860240509 170063324 899472547 593178850 697886764 334838635 799166016 185650283 894440460 546903393 846639274 249624457 300684294 37010758 494360435 437716673 741377869 536586300 643333425 273044633 365963333 40407485 835479327 605220391 817171151 148782259 895992065 486939690 623596708 169170303 437449122 351253148 956875662 465242656 550822202 104462718 198539668 166704409 506195897 424620390 546485612 509694466 538934149 332319146 881251364 695647139 961679422 210104282 772920872 257912074 764187628 696039203 980374990 524721637 734985511 608842203 950957018 321438059 916414983 606895659 644561334 208851876 792932200 558378681 964907264 762132061 888967022 798459409 981585107 424303763 608077633 338259634 531732383 37896194 746966867 610528912 928746012 778040129 930570348 184526283 309369663 44967953 711112193 698593454 964238563 606262731 713987255 317729417 914186463 629750674 885189815 285355583 964485883 792928452 979202880 842029910 962637898 320113328 472819429 8691554 58207425 15550845 70277947 45436736 695043844 651216070 926771363 411377402 803602177 242594450 529990545 404647233 476095897 106477367 297776408 134236823 977982722 119096985 310954965 206928632 532240212 299792115 723273531 402910912 950027283 169726434 623514150 388494081 786832156 279238751 838978406 634793080 862422705 79954024 456592868 371764650 534866112 411267412 501865645 420067185 927173116 390953400 661539092 376560153 612745317 455965668 856542655 789020643 797661322 225893162 531547662 310269543 804253830 4882310 72526704 38713332 344157784 310468538 728939844 565907707 878180797 560274105 688745390 344458843 943135427 763628897 775635310 448250604 503697115 446582392 851694939 178831152 472899230 491111 917864291 684990347 874270465 218249779 834267535 53370249 754083701 360322367 514338240 8325123 134242025 2121698 605726792 260060981 787070251 4377433 344574036 293601748 328833981 171167110 274654812 122793824 703650288 682744968 973713489 234637673 876460133 762317545 960086567 291198344 850394819 607535589 665573781 402222413 579425231 532613426 877916701 238888868 491917423 484165700 999720518 775299304 926006367 221597105 888934049 375022258 825845917 165193264 425156150 418914154 434395768 62748672 266904368 104070173 164219896 98138161 475854368 347178705 867282352 281313180 661327342 362854168 767837448 560194784 632016909 568217957 797626972 432943996 531768490 27526191 828460009 376694954 928104260 491862857 903321224 299756643 375162660 274382752 490737495 399383820 618792141 406687569 670639167 176321863 338485593 182330378 625038100 108850249 822743273 715858062 898041357 760121172 975763544 441276234 786545858 65979475 349204454 134384969 778114876 703268272 954194970 198528608 891458782 467496515 901349146 562628441 709016681 393215003 715978494 25806239 851943550 568404865 586110461 276411478 378848537 90456055 365937321 206783211 543549913 178840010 824016009 247836762 807008307 474343722 969143268 419871336 533033518 219065437 717896551 540182866 809534783 144302457 609012153 70913577 193082763 74531289 234326182 210874952 804257247 204858584 925567862 218842707 575483635 271057359 304814742 121123736 440863424 223814972 811998093 753072036 823238341 609506675 858963917 394024924 855167925 424315526 779218852 403315355 661259440 193191030 843985955 173848915 817836186 172101045 746637685 412049701 579202912 536216723 994828239 994609268 997392113 218110341 865357444 502201808 550024066 17726545 463033180 181659375 587533660 57625647 277296659 191550445 816242652 59758989 377739547 337922828 684858819 218572806 444723725 185442510 358532401 308721910 881064266 587491496 851239679 307093956 980043761 858412264 890989695 818660899 849687116 244576744 283871256 132504046 689250781 674800549 985131962 181986387 857442656 36893585 724906409 495442025 918582279 694420280 934474204 467788294 649360432 111060633 431077865 161958734 493720531 444547652 805429862 560068650 669651230 330108540 508884317 306907395 826497194 275381230 333121755 122856881 632297172 542281507 578835196 384162071 547857860 413541096 991870470 637262890 969284858 363505652 486773196 166605607 841865564 387170351 711706853 380161043 571971758 560242203 922390748 705537161 857032689 240102260 744592607 298900810 996916453 189034099 244068607 212363888 501556382 90366511 801601509 273779488 551538601 94094898 456856805 174718723 897408025 128446300 376727975 105656948 391748786 73516269 242190921 36186972 483390516 114555910 302884442 148123663 544815486 390143680 415841959 309960267 878536328 877234903 955616344 229003738 929873399 566781367 856476598 351545176 589019133 494760245 821043024 116324809 128569061 113619031 923303867 112074837 975835192 846158250 897508555 279044335 507180793 98268501 491316343 297049352 845942198 833631534 961131282 706387827 887571231 530133081 762169164 394966603 480584494 55048803 913102234 486301964 982692570 329500823 918556244 786541072 981359713 118686173 983209286 395482910 751224169 241306865 972828695 891726171 972662968 169700804 669864699 456756807 908168052 834441001 954805426 328240490 971629930 387160990 794038159 299700369 481010509 34454217 54286712 35779289 642134539 86015437 334006095 246555021 511123337 155562414 503380054 316826105 447532867 407880452 730149068 260717023 710943851 80719047 638993586 319812365 894098585 694558157 821252432 552641263 982779853 597417492 913796791 291376801 943221577 533585438 568693024 508317878 527077989 123298294 671861385 650127879 771119669 473128865 994943082 8716569 969552603 444760842 539483565 33937336 614930824 279979376 979407974 452121349 825026421 196605580 974082999 939665545 997001553 519343989 738036129 198983566 270413783 133861515 822903566 185287672 927262703 676639368 958717626 752828644 913535649 99159904 412765588 171112506 268388359 247962813 855123781 287375215 477572020 314846552 735311229 58649758 191679187 89870948 317308423 5647444 798083149 771941780 846992718 302331070 449293513 374825006 663723478 580237637 685454843 179253171 671490536 118387387 724505459 541632052 879067988 119209584 780636045 293049650 969640804 534265593 745601978 108647104 980279939 710818264 868613059 280097865 699053252 642234562 911419668 128417684 732035025 431548778 853510120 13056679 143470532 92300645 740093086 93428777 763622044 372917488 382198151 169478921 230012395 72742270 238915298 41136392 824789597 294450844 932504598 260886854 493861155 149100770 436160131 89588368 109110191 93308614 472474120 380431926 804628747 714204040 985613584 4095889 205578617 47104854 878981155 343899360 533954367 377866781 895718382 393295845 670704501 388153890 663512758 171399029 493211446 398097175 557007612 403945473 687636014 597759436 810851813 776634439 888079234 526140317 628058613 100383968 928703607 84086289 656216405 126637402 436187056 76454680 436345125 150514028 644025533 146265933 467807937 434789456 435965918 207603886 999757740 672941625 902809744 313393271 455803415 452438265 727530966 692260496 988453258 400416012 730599239 11942415 387812621 118044237 438699402 318188384 361087257 297696568 886846821 710104441 725343492 195556115 262756638 105349421 298679955 219003174 295122525 50608888 783005780 674588958 885990036 415638898 973309442 685041004 821201758 323506600 335012818 67898858 328752997 62478091 985092091 157005305 670767628 116547742 724232270 3460695 804403555 566778176 862511497 72842908 825744055 328978439 645391220 435090987 713933465 698033170 914593194 749840807 888549536 298704443 636211052 496809399 744798486 2327028 524780642 166888824 829160195 394980393 496668791 221273899 264155028 194693985 522247922 300617981 439092618 219182421 371910771 276418924 708960834 637587620 668718661 226404254 983239978 626517344 929753065 488678894 733342408 719901660 735973833 573906380 889962300 843681654 904375388 192876766 380249112 234879118 324439541 62843420 335696380 20406162 913252324 596169224 651103934 451095028 656928237 235644050 988396453 135287797 926137619 213139496 674772206 226207493 992769656 219734137 401882701 145429848 672522636 197367346 712458542 202262242 374952367 330804997 894100804 599860535 651253502 432751088 919015343 314864096 369934371 162007308 695186631 270384564 763888868 368810933 906613864 738617577 797373922 569098844 688639675 406159790 568713426 96656160 475834950 126117710 433252580 370697650 722772954 366059834 972029356 706689049 771845752 210291085 730629530 478952785 646415101 565544339 700839324 168570498 432522188 9853501 961420553 593203762 765931347 619700857 814874321 279631085 793793857 303404808 646901325 298858331 575227944 50404267 549932173 353792251 420466768 92977972 422452485 199331831 758668926 278580624 480239120 313987145 907940368 201058916 338491731 35760471 249750107 27458941 246601963 36185804 138452001 5908420 553034954 32961318 940559902 173333686 350774043 257164207 879517895 594933750 951873000 781870859 995987188 44810539 732936510 130813459 978451858 395581062 647986430 465141403 563602564 204690031 566007537 255519845 385440665 10345854 759444565 644167836 969701705 369947030 542750185 288834529 732728283 75264322 192280127 42736929 54541551 47100591 646478974 516030811 974852216 885436205 945988749 485233793 543743486 381769902 402586897 401602036 431006498 146176133 400706970 384179107 609280984 48762580 446913821 120941015 497802181 483875124 524947614 97043961 927758550 124252 466240166 228507896 426082127 287951149 867439000 280327235 640284291 17593337 611662950 24337738 427172745 99689031 430055508 226668733 996707411 493385124 894064876 161122470 588292251 21376047 184886438 6364257 197684998 136900311 980951780 174264142 586912512 364004402 597040652 264508241 536892487 112440028 866556010 247872106 393703416 254531670 795240414 333020195 350672970 40563789 550768701 237884817 581738402 140502434 256307154 138548284 927112829 372594275 379240262 121850054 609607217 543645801 748488739 230433965 278670035 238395089 544087770 419218378 446945373 273588154 962441466 705629085 764921527 629122161 811698934 470656834 764406023 55825804 767225063 631717285 645323215 286055937 350601097 25801333 919264486 306949973 698777473 67640757 249252357 15070103 780328998 659384359 904200324 244902038 285953415 168175326 611674712 326472197 368670864 45536787 433326647 41361174 696162447 412484807 950418261 531180795 981724282 622667145 749972630 172317332 639164196 306545519 483647108 104929400 770394785 109643651 772263847 304526548 383753868 364849185 384644990 127933220 746280745 414768651 670689665 395645399 714765527 55941979 827982172 72130779 794053866 45770463 956100303 590847390 833691191 548806655 562330329 304753339 699925559 633335419 870875067 136428809 858283455 355169879 852758489 4827693 739507685 271297738 346451653 33120574 465944944 90873115 266864880 241245544 973154069 76375007 879839625 32389702 702189499 449688738 921713081 141861674 560373497 24877861 951423859 872386140 886967925 410457004 524420459 348860970 841636079 671679454 702783238 95493592 990897900 193166524 992127595 365214551 860758100 661945334 677659914 385582395 482862220 122634358 836481834 27142452 741568971 269308929 423118990 274380071 650158044 462210433 963944454 804238937 883288901 183498929 331301275 136394004 938745752 129855125 415580063 298498688 645172366 549023333 650995657 96441177 802374884 122610941 629898652 574401608 631663502 455075538 964617022 700604593 861143999 632108066 678373613 661015297 846682381 691329632 973538255 446540287 983462083 204964696 516037764 228949193 651118329 420774407 952329667 566226 490423515 167410557 582683031 433965208 942207816 107084165 753338627 405499927 465234417 274603872 976522239 802231022 903070888 581047551 917917690 808080695 947611827 234738302 278992540 207395160 452086149 404445664 941442054 715670182 758532398 275769360 819955279 398551480 994951797 778146152 971643187 14629449 755931888 433982835 843352312 256507615 481785943 287483033 365736031 98752295 992717398 820226873 887666613 808824340 880278197 235258524 573604938 216266711 828039507 382362665 521862756 236927875 963608856 91605077 186832530 65582698 176906436 131996948 524491047 469765239 797419987 633096520 923057584 418090205 523720692 348348020 771521524 354975183 550392552 413641585 432501073 346946166 816883123 705037278 712002138 570482821 690927365 138032625 564382800 163333638 231182737 36053420 202895717 167560031 255384648 226875495 681600813 67993513 577871389 32403162 382890665 96267972 166393450 83448782 822525775 704992119 989878971 376809944 978645519 530103379 564122212 424136120 594999369 465939282 845212087 659397539 957786046 867839026 888228836 373072617 735818379 254845977 576426818 313223743 743246878 382369503 765739451 99445029 284975116 196251010 957786705 611013631 834210072 578812760 586448308 25694225 203015785 47354264 933895573 420177461 724305474 276783642 481190819 301114161 695990591 605365012 887211688 230566974 609208643 394333687 846682423 197508284 360693015 193419540 326610525 252562087 594853386 108561058 826057815 774893814 896039542 599675488 709144188 298135293 692249920 251022617 537377648 363062964 411480870 99942505 453102291 360040139 945549764 796974289 857548683 488446954 717506536 509031012 714807800 209934891 319180031 206895695 435620369 306257179 370572426 278017097 597120975 152106298 318070171 245191797 646378384 632940299 726185821 552656773 977282062 473852438 527641535 276107701 571451287 245477227 618284429 37654741 323473023 186396286 679663736 270733585 687378289 671489905 969579541 604847318 829688795 577698659 781227815 335884835 573819438 449539330 553448259 250872920 776841242 163047700 677318290 176959100 322201127 174243766 426472781 335036916 361965288 25216632 158377466 59185934 155941738 88326782 312190695 7681126 882005602 83844027 352277883 225603882 992565169 569846390 824869917 98420445 116030889 14975753 353335832 195295373 498441585 330675801 936846570 430962868 715647845 145911952 721680597 527253949 687268022 399785961 806675096 630216833 855798923 172001429 778534451 644487421 827379673 713019695 877268366 56199379 662364084 227095785 676379649 401059861 802797821 30757118 982731605 696642523 726791232 199660979 306944840 158220042 577807694 491499606 585196531 222069671 797229268 137410697 844550392 807849926 941959887 797894782 951407288 57503903 79069722 19117791 119275850 56092801 192256256 36547404 867321487 671590212 736986619 625401067 864419916 615483566 711190538 490747783 821258411 610356733 948786587 770213129 974653763 883435426 933181609 641798313 949758594 341944964 524750712 431256180 443039742 310662742 662921510 232498031 914941461 157224143 468538760 168349459 209000252 6736895 667674546 629752551 978754386 286255808 365379150 96720259 138758352 75148552 291296275 285923560 732093678 390193413 704328928 163368023 519043097 361527149 618558695 565076745 867753885 479946461 966776833 406370257 875948519 183460096 852034480 454682484 888271084 389017171 979115316 699989224 963747473 330327022 885717320 228453248 986654873 425933087 902002063 608703280 708248291 546365881 852709998 417783980 545677810 297654420 541404160 71345780 264952884 259252299 686346449 159015987 877411014 543068206 577042506 478134457 852490981 452315092 894919760 532841743 676892533 590937004 968273655 435324695 560475133 507808354 627337644 328766082 660936222 644381195 719654554 376600985 623575040 190059853 297728741 237779053 674496536 270280899 524944545 48792236 511893559 381322911 763276239 236777957 906094690 123621015 537663777 256638709 638161035 275537141 346601107 45980501 423058454 84512576 142158354 56018437 729852490 370500625 601176636 586704475 929975873 646293333 793048651 164107176 175845547 159992254 407916735 108239472 245298040 157939006 425399935 101691222 204496216 130193493 739290040 726251982 769129079 27629839 405676996 255256885 790560856 502124938 882967875 804021447 872279990 290226447 762005262 367197092 920781033 439258384 490317396 403747243 502983689 342230760 702458787 485568719 965900113 716839719 850752078 702026269 936349456 12039269 655438709 39042378 197293382 31931091 991412667 828897545 945331890 596444573 680958972 70396933 742948937 86954555 300114759 60142185 710758518 79995666 944420134 207548764 823636227 800469423 893478798 732985467 863433647 271809237 817081092 240218004 857626765 793520461 809874280 121789369 513751121 46703272 174538934 36089271 45270432 12562662 525824373 316459907 909972901 218737940 454293575 99519861 641208611 182083635 586322727 581023240 691461066 24165681 379642808 259735479 590443666 231871842 717354841 21513463 756404368 267240036 822872814 204728831 834994101 449683712 505468436 37795512 894324913 245597167 504329170 329829173 855153799 414614739 789073289 592031629 628673526 542567911 546148049 244612844 929551976 206678628 731210253 39727466 307339210 168290736 829410023 768117453 885094721 204014153 860616092 409018977 792741046 711731138 756246418 252423368 812176074 14859524 218535788 95305762 199605943 27843361 91026805 21805269 627944701 62354587 368627962 57575310 330488245 184885003 998559599 878438459 986143990 787446443 831988218 11617446 511794661 258263787 580997702 567346037 567531215 181454252 230147581 49091952 698351732 472766595 524128851 206573189 393337226 180521662 407397523 376833408 389085052 267152590 683735244 51265107 222249998 64487177 800353596 536482140 713895294 56265659 91156794 13604452 426433401 258684253 549674486 93760598 960209486 196894642 553814199 304189091 553653628 75993039 995018307 120122957 680550277 128110850 989860438 607986831 838243941 364208004 950411403 376593700 954845464 447602390 611680083 502013890 525264771 218932561 618871933 69708495 670886926 91811462 373092370 65615874 157820281 45879755 892519332 255074103 787211730 102305308 223605450 33939591 975392450 293867281 886485019 523124032 825699952 737492000 954315048 935118628 941297781 334096340 725017298 473836310 971140189 419931604 608912564 233967017 773782061 59247878 70786091 36317378 258089569 68303386 824850459 6825824 131620334 38611150 693679512 199602800 892978273 395043296 858906036 104784161 837199174 648577748 677094519 213165881 310375765 188031522 758058625 459368972 503316067 325314884 890543911 281664787 680310876 416877935 914492155 537618126 636896332 496873076 566424014 192162564 689047319 86788782 208436616 116549643 574166614 521276541 727430542 245485422 666793800 166679929 272908227 245578672 998092959 980307051 993845421 107407224 543288533 191849035 651159511 226793311 907008377 366865149 423588973 184470604 838653271 670743126 844341083 405980298 753493329 390595187 580942217 545682099 940322963 242118956 988917793 708100882 901086790 564833303 701104730 210182475 942355835 232229573 743605369 504236444 838886319 400167244 579871861 119460276 658957698 184647266 642345796 135444203 413776769 140801868 469600600 390351272 725017491 613533148 926836973 310987716 655666004 289439033 712213319 363167535 822476620 178549532 473584250 227357024 604612005 32645642 817793707 570600304 591440843 202857193 660424689 170676259 770645731 312659203 435847689 126014395 759498174 752260558 928136563 682819311 824913745 703487523 807377803 3060092 633440860 127568959 503512446 405986645 868532147 586633145 713407159 155351786 945052346 890824295 979582368 434859990 929457535 26145798 655054676 508306953 582255426 385311816 628589733 317306807 653725780 549540795 757507652 398679329 884647318 581606298 976439863 149358988 858614953 246773060 799560938 334240198 348475932 269373981 678504319 236799976 848040495 322935352 643936730 348636230 349570427 224369422 311026946 155930585 581962725 332558505 623891192 555073788 664832065 188308975 737460591 578427455 911013428 368406114 711224957 616399542 936831758 771024123 875682233 103465010 582408143 126029891 840433229 462615779 512757692 413477349 947721992 306124315 742688140 148658722 641477335 536746803 948259461 845229149 933227691 193231818 222859537 153170033 618963689 305022122 591779489 154404374 505585195 86993580 759073892 230366408 606539630 136887075 709050637 59823613 511921181 95241214 356898391 296387297 363243065 288380305 587108028 59781763 353347915 121773791 448886197 213865336 791592669 502909193 575221677 287119438 324103031 214305089 937658830 927348899 941396052 413652750 606830359 250145641 846689356 53530212 81348648 28133739 381665413 133979860 289403268 277520513 648352493 441453605 832542575 449971793 470511779 29345206 462039646 366887269 925292585 25306872 255408347 480173 309705717 204305360 289487247 67156649 319468228 3225093 937496606 735409670 746212905 679473283 844589764 613061898 829571098 360944118 833472255 326630107 404840139 183301150 434435955 272426125 806542265 637999909 760735711 123490507 776371741 628504688 733601775 568956217 883717270 99674273 821858302 698183129 895145217 803325366 974966032 752196890 874679310 84535786 861834087 99103211 596715026 299779958 684798429 260552101 782255872 415089403 417280171 410735474 902972819 216295164 475802462 353855025 500547939 111142023 889357073 729725788 872516251 489919899 891326000 26634643 944700400 171958474 221357225 159331308 756784985 146445625 880831651 764173598 947918947 523635947 938475919 661088831 963833935 668538243 750515284 5083059 263725566 88627370 675834499 390903325 580452546 490308391 722958847 212670792 481275570 101575865 527175740 50525944 568171559 59064905 877304169 872286078 907534064 90198020 361311474 141816502 963040130 677754742 730128732 529701872 542683983 519848440 633070398 179185246 878826725 6509437 354230248 254541550 381146956 81666779 288301128 28469944 811405581 674727622 859815818 673667093 907957373 147804924 520097040 122939880 644315018 369732887 964475165 673901050 926804471 32058793 131761032 85012590 381913765 341226928 546094405 304541930 955205133 659345968 684786737 633950781 882582973 519481333 584882117 93628714 965454955 597444045 982925411 529408018 785979737 616083909 776857791 606957625 876629193 873900058 879735156 142011286 590969902 363408661 902069951 643919764 802540467 148738297 983637597 490101011 561938275 280936031 308973258 20184273 553480178 397680396 641155384 244054837 564415463 548273024 592786996 84013365 865906925 291775553 397869524 44118291 998305456 996862363 999556264 777829752 831853885 744481785 881611593 751319526 918152070 188055204 935440126 284763411 965311491 830762655 932509376 839310441 958856168 403664998 435647574 415311394 991719728 109938966 740719999 411706563 444057667 611906 431098693 12042539 72732455 775377 676047715 193120883 538248868 357632839 567920311 513359078 752944255 198633767 232057337 158293857 444788022 197312779 757135004 755358678 946504812 28660816 945498187 688385057 875183575 137235480 876180122 81917784 572322852 234233297 544134715 31410948 403951025 333653505 353903779 327925863 667857312 185018578 587402864 281673915 990281546 707700965 793101635 535398944 723853864 178219716 874131120 783399072 952059148 866365247 920042253 29843626 399801105 325380353 637946804 150717543 661663844 428636412 685562869 676831156 979895245 24936482 952075429 877147308 901978690 586652490 923242288 387441283 480516465 306842303 506391480 24286862 143846360 124343391 595357749 485192806 827567277 54364133 194616969 24079705 536048541 407866627 538471868 289440679 311165489 150802670 620518321 250567101 283655025 58215088 370940891 32304102 798298754 45832253 718900004 238965603 516533323 451723024 623108270 453883117 553965539 218473228 519379556 218483013 877396549 713775676 890458383 599639591 869072411 349761326 875911069 632112340 881889609 272065740 368757383 78425933 382734327 141946500 565412721 50240673 300201828 236675858 585349626 7161135 309130526 60715956 460732692 80973774 221997636 158967460 429087412 73946361 564284810 182806718 599115691 374871437 893776711 330052070 496530203 105381011 777540052 458351064 659879058 416141193 996425986 789798641 836162433 627284459 647861700 357084275 616250914 12390032 932446382 675748737 782716736 667359749 917713550 216266853 902410168 770770105 938087809 40571236 588104730 544465941 952976996 384889632 635308857 176978612 981531639 671075842 762382598 759321447 827138637 345330527 779846244 522010243 609492398 488947826 970252450 558446224 895776348 737980651 895902683 678635759 842846801 161439344 308551195 82130077 611527031 498957893 921301949 568113312 630313380 562481310 868590825 543382643 976072298 27032422 505830079 7014102 365165998 106836137 749196821 144647210 459578848 244223224 279873371 137745647 157394782 12267288 967374855 811456746 890382223 244019632 847866126 739222574 742935414 514867948 988115876 851933203 948368162 543129697 614257911 551103935 865521759 765975218 927755790 512123845 558746964 228634992 442285609 5286591 678927496 623628537 935235255 519773624 823821383 525566040 787364277 136276971 960087862 301950797 620645972 337332504 574348889 277207071 536864903 530366196 921334974 115148370 385627355 91807252 425633934 83295137 721729954 60583113 459746727 427454589 843253572 748544294 971240403 820270051 823930158 696938957 733767634 180551741 641996310 609017937 611174327 233481884 614825844 250472831 945332157 407136588 802741982 633519644 940246242 256395009 829381005 386395283 724182439 27158161 395138359 326475930 995046734 231674030 475247805 365463472 382637721 217431659 909712016 393942890 421361417 250858896 944264478 529236042 999237885 735458825 753034767 735976351 943652413 851492735 922242479 848286343 945375148 365346142 572991548 298725281 883946923 779324227 875609364 527506877 818654544 269076567 346789737 94174925 963517486 653752005 981261625 510029249 841487098 77240118 99674524 8578050 705030110 49950018 451686551 428611055 983872280 584833432 888399968 3872370 702331421 636962577 746377496 227602021 543346713 227577545 782393827 398970278 645656196 219148755 601001637 359089430 451505099 419217775 825573068 438441633 571423288 289100569 868675527 738811726 857950991 405580400 968442007 877080265 992034753 25702451 475624856 400949313 889762572 318237402 677317788 274346881 625037773 619821208 670378447 474849758 556062806 155283405 373437113 135109660 535040381 489703836 829763048 183385273 509848074 480727961 482622669 278444736 710938578 662020824 897158365 8934387 570888070 197224376 879760152 849876447 956397619 195138501 692557730 477157286 972821389 805907922 899730849 699819058 750663787 131511845 532969880 522506104 541297987 309495263 475057802 66602609 662337506 182307395 756417366 457428689 862915090 845131549 903659581 591329018 963886013 457456376 673441559 507785214 878663664 494617729 848322913 151556655 498311169 35376160 563676542 353117422 947784433 917381855 955041751 817458659 851750450 353558716 427659863 102155375 963776648 293008279 921256424 694004851 695403874 67310577 269724068 115152852 859124911 785590014 817066267 387906613 874387911 450878618 645562431 506430293 543270343 216716812 314070212 245344691 259349655 198158899 732818273 113313261 838654491 395547089 908414424 458188277 962488225 519782239 612059256 292051340 555888468 197132131 570733806 246134355 994463299 398219873 744437425 653346254 983249575 617528784 644491625 220611564 851348384 137960195 293531553 290932373 962244311 507465652 628073109 29722793 668251541 581914283 712323685 176892663 567146455 113467257 188209098 82566717 977068073 900031673 917253995 623951544 994722504 435488587 953723016 344996550 618927240 531420119 592682983 370432731 717648670 451158723 788757193 577339834 616728944 118363945 251398330 6554140 590831705 76817759 849063657 256445754 823859454 214219890 744572338 119779153 468864921 242203413 602241589 380664372 915321595 340155542 515445262 184656551 896191271 764720369 833552348 620144094 863987327 742630798 931555678 206918806 926516628 429333468 977176100 78565145 863294313 188225275 596867344 141468015 788745061 358155230 404129898 133350300 839933970 541657935 713417791 249568450 567988879 245552935 975051944 947724876 998867684 189509570 545825326 138458004 508780698 124453038 292859793 165501445 567223612 333996082 648020665 203481764 985474607 568091859 629684910 154780292 309711211 105635136 378996040 282532364 650028605 191830571 306995415 305104635 318419201 135341392 595862985 581233537 628276830 152271002 977929132 803223262 932726705 613720865 735819883 82657708 487491043 300634009 497517560 178077586 867916988 684284279 761496723 128359418 654339782 69641093 661325549 415964828 797981613 445708425 936837813 674020381 906918990 807762058 841148074 647232177 834302572 444534446 573934621 487646245 544895234 361024231 654293643 315613352 872181544 265453567 532826147 160692657 227151025 95826794 608490264 516008500 735464680 98881276 526544850 127351480 795485299 341938849 719590427 58554042 67871326 34253193 350182209 206189498 995057966 342585777 818412128 712056810 768427348 492103472 706932080 688772143 943425688 471731769 829345085 623772647 707402858 622164442 645690151 634337588 980122751 938038530 939581582 380521533 801471930 76611795 584076728 140144903 171895183 103039783 128575249 126295160 640776356 404150163 734938308 226647969 566777857 321330781 469561121 168186461 498726255 432117115 831522630 209143312 931114824 756773444 902605574 781945272 944725666 532649994 885454464 298467348 482908583 322634898 975278189 424238197 513106410 249425401 312030102 2751196 779582217 471075089 834401184 331970377 929259295 513845445 622018643 295252067 456615164 330021181 896610923 141852259 684365239 130490965 456199155 249379815 565655409 65106821 240548129 154762506 629865137 58546265 950972009 264750650 786119157 142783388 500118428 258211977 716607363 193176609 814378341 262325374 617950236 577888199 982403387 731590386 944506600 78552835 776586780 307281032 405752136 184951432 480671833 154540404 450383013 72674639 569269689 299586072 861621195 11089453 347017116 76406179 820464646 66979919 964391621 189578032 976987517 110017974 821862137 187115520 214748245 111331248 322283231 91432282 713073239 552681449 661744841 537403831 909623477 641418569 925534999 759273868 998610505 801015512 957648538 429787846 707737683 539822442 864498548 662433262 864299083 30450629 909182030 399908217 671072757 261012590 843972059 818583851 861056945 315668635 370260994 210291640 452919827 417960255 596998801 520064154 571813005 65476639 465661444 53867066 229405508 62837276 541980277 167946036 446630947 316211649 984938205 453201084 859585870 343284601 651208435 332041975 416273048 78360720 508348582 213219146 914568462 625864561 750163271 272599111 969286863 638681209 684761902 55985811 825518805 475227208 518159062 147838259 578948580 387630295 575941537 207750229 848256331 442487694 494176893 9408316 809191147 189147037 740307550 395830507 458276926 108681673 247949507 19494875 889141460 652911185 846180447 641568663 988672492 615481483 735112638 445413816 703817437 402863610 789891838 437236486 553647221 453121458 909557407 146423396 190201764 20954798 634090324 12917852 262128447 78690262 370335247 304453866 633311062 231595831 321684114 112508252 250940005 83163343 227830666 5550481 407939147 31791422 605427861 29387757 603213484 542937848 858354730 805282205 838024891 108775049 372178802 38987803 189852702 62984557 351083307 117317942 200614271 161904256 490945426 483958659 780918931 471482066 912759630 739234033 879661088 228492391 341580293 163693655 250892572 240293577 610199082 481842425 748894365 231174745 235784038 21842393 301245349 231881554 339505048 168866064 533230485 183682116 682755234 612471946 943123030 325119634 426321454 375908990 763959909 681519748 735171578 471751840 867201188 748410245 762373195 277774044 967240493 886271392 967836823 324683980 664123285 186067184 273582758 262736696 868064604 649055500 925262195 924371145 937929012 827869016 984542417 938497860 953620627 952981063 962083532 20611968 338265333 74208770 505257962 341069685 973705709 162449960 609561615 22898468 931660385 573818578 731432897 629052984 831750369 232145011 616184469 365190499 456874984 23867891 404277418 56251578 211544245 96655669 259501443 80910271 302998885 114312317 593850171 170520460 415345700 52612655 576227794 323653986 994560185 689247129 743615587 339861282 580149437 512947062 888097478 625843971 949613399 767685551 794558763 525750406 865328206 472370306 562988424 172550050 789504478 241530473 910202965 517357488 597730335 351298084 719187270 51016665 198851405 118525889 283405297 204612160 205636428 88715085 962212231 345647624 545675425 527313705 662612492 199923165 338809750 220446126 254114989 118942917 228760917 135273652 938802839 673459301 687202301 84904401 245341989 105365990 262231077 39297517 489997854 140810285 552223596 85798478 335610618 46165995 280697878 101722549 822021974 800438498 979262749 823851000 987838399 731613213 953441246 276840902 848998268 566803940 952920635 321166865 664439391 241775983 843384970 398459690 963792960 440404366 745572627 66777036 504005401 501456928 558161700 195874323 497899396 395721209 591576911 540694451 672893029 474141733 907937692 833648463 845896928 692850400 977863762 804513462 859235933 282022248 504627532 165234752 739845637 363587432 547929317 473726915 864557487 13634556 793165749 205804792 556040349 58571944 162266629 54034730 574929583 352299040 889285288 369256338 473217959 141030374 401891171 15941886 935169393 48073176 227079655 206602210 221854484 205354209 705603215 510043655 531570913 35843255 699117937 304869526 810341591 556900073 624603754 359336643 434228095 310000348 423630458 160028588 249077310 213629514 941197871 444743395 554608238 331299086 440059169 361765948 911148704 852766973 933217422 561852817 957294049 454478728 538168325 333775077 388981710 128045414 629055242 159634557 262425086 38297023 595942007 349227339 418526060 207344705 819234374 748977400 958859059 431107426 528357450 164459730 847954800 44496104 90870864 90153977 486220663 196490926 536084138 174185870 778240632 93539597 595325652 42280120 769379413 241495559 623427105 499514722 533533438 81970319 983329245 423104055 946355737 571573382 731465374 328023235 989334870 791835278 822979066 122568057 661905662 185048823 241929586 13420948 273168451 132225613 478106671 469142455 995137024 331964973 768308143 324896013 781257394 13013674 674590268 91893999 218397523 40670989 758482733 220528184 518482842 103064979 612205627 497260708 972854913 396699084 914095950 367025464 528496099 137392017 312989409 140185274 984321844 775546369 835858942 165890107 950361726 507941136 956397321 418508885 603234991 436079902 912045443 368722816 733236958 31881810 71914857 60696102 557828017 490017791 741801250 190444279 519471751 410979794 733786503 221715216 737394293 645850337 731888203 167639775 418704369 251325965 676430169 61164913 284142349 141215791 868342486 414416706 562107666 265715037 987538211 660661945 759509376 250431064 555858716 4402616 977697522 762816654 987299110 391559031 479297042 103311181 656155074 88406698 446584422 49954823 489242685 436463491 635796923 114559356 170068272 133374646 154501910 35311316 609359659 47106500 746113537 100015445 581791983 333382638 689401081 512374225 811529019 508787990 625083550 608913292 860250967 269919741 840311128 596317708 729628793 220380591 667606307 129047198 554941096 112123132 398360213 44209637 324840545 256912558 769030621 434572497 671505973 330652055 399250553 353021117 850216762 732459692 898128029 614200501 795591572 716905106 851093850 359382990 589757452 205344032 753057900 635260072 996425002 153466704 848828560 53739255 999090361 682543844 767050844 309611998 735759870 5425856 43609675 25079724 783961875 304867891 307887976 123087299 177009903 116113013 218318953 119177152 383309701 50409190 208782717 62335590 189770388 7476445 299466910 230802652 890921692 379666386 905150167 430704021 960682724 940424573 990591936 776668064 893810783 89920523 611394345 204176660 989629164 47254071 413957824 338549520 779925106 330209071 966051906 454361893 965598631 608789262 808560881 566368619 588498777 236711176 613544478 299094696 717414242 556549849 938416956 827172480 864295088 489545895 601833391 373337136 625599551 311095715 532954839 257150667 324355886 321609976 788596458 321128217 493003802 288599446 632906485 401098340 666660477 13679829 822516412 408854455 951904739 670005252 683521232 645654807 686995047 226808429 630781756 609151545 778132980 514780147 659931529 311194842 994800650 249374367 352991679 322239990 585958854 285880725 871755645 722260274 879526105 353973568 807386320 109802435 110032682 69316480 854427088 127555972 302771930 206456494 732421574 143804145 888263040 739473260 761838663 588148627 770295364 48853840 788547307 512652063 761051155 687960703 992678953 109712881 403572010 17350390 219391227 63417198 564510092 307106131 506657193 287788984 684476474 675504891 732136430 37365721 964766618 238839148 466220983 228133048 494923461 308510580 489379526 381599016 934149732 526159837 534019331 387588988 793345279 456766236 461480969 444602256 886064262 865410026 993239824 772805264 853919092 380827759 452586469 215806079 909482924 35081644 690979438 12821094 590903016 475979105 580027892 162401995 845075861 129162571 798515197 244506981 517987561 29883420 458998481 260925660 600526624 138592610 472474774 185859798 371921839 299726388 401580266 92078016 783177196 184685694 928545081 830618015 937760512 110785225 306774120 173762667 196589169 109689982 964711426 778093558 969127435 554291875 887093753 602931056 868703655 73169716 432758113 158318153 464220052 329020333 451791469 180882816 472904443 42397899 63590687 11334059 916119816 873626225 960168441 929930075 943327022 69210214 811513736 420396771 614304301 126991356 897939801 139689985 812659017 321126162 753840806 179229491 181462445 5849273 704942798 114486049 125950415 36756192 176914368 102195332 206228414 163441264 915325276 587932825 656251102 467814578 849922533 22915431 305876378 70923346 238843949 224310080 789559305 494245365 862428357 168396834 333952405 158072061 277861491 180186649 797371509 430406199 515784903 183166069 442400154 99882703 512245955 333399671 751823850 503043796 994731197 905369558 917758656 295409800 888510865 604064054 917342719 399712991 651764865 129369455 243151261 215262457 602023990 472732807 656229700 247854749 277659825 204219909 404402714 54314192 725458380 499217577 810610992 715439137 902970294 113333458 229923880 142745214 417940056 298018680 604409365 286986284 567130816 293935725 307900899 48504554 360962959 250748246 271253317 226842060 456524591 162859379 304296878 112026543 930257304 181609267 700798409 645871504 765183994 60369036 340421867 244507761 291717493 144846563 608763225 208231547 507127051 205308842 344217378 220346298 285608799 39866230 340111736 170643043 617714127 309920185 473214147 97747507 934264480 276187515 492190916 406989097 713694789 481749559 699596877 431143834 644976245 553622069 604699778 148010123 281278051 42671 288477571 213584798 808389475 505618178 527114674 121908014 572431599 507293282 985091119 321998781 718967290 85169939 789781078 584870679 873054313 157196457 996896907 553097095 591724130 149195221 266103047 209702797 482705963 48115713 650149072 292014261 292468767 92559914 970103732 576186696 898078568 363835163 888146086 80358508 789600979 58087160 526586880 243089011 284994104 26898703 218618281 184372636 590956397 536939432 623851455 613673516 748479891 334175808 392402066 82603345 974224684 291779403 923369149 665835574 929938172 258073598 972138884 117498046 711489330 376678451 545633272 223906245 435619263 78264835 657417883 579418839 914530311 889992515 995528003 606509024 725655649 333478929 685041005 392353055 727706909 541812068 562246684 484635265 615311901 603409110 822025763 798994158 963552124 439559404 666034248 510660869 933813960 917920825 931607017 364306790 890826461 106567460 598600240 50433269 277336722 10974130 372455561 326739844 432588734 376756392 448769969 323675073 661426887 36593223 736624890 628644908 861022229 53209607 343197787 82941445 871267175 229685845 716773697 264924921 481076299 134416427 587728740 381487323 745413288 484982696 552758859 326419587 330459002 327777667 988364846 700156579 924810058 746377573 983483443 169522290 548263575 294026862 913595327 782112517 930700890 3732306 819156620 286065015 632327700 66809501 538278884 352297478 593459159 367062422 658635439 576421656 700944029 336948600 404386467 28505771 270500501 11434207 732835478 219092734 446713835 194273170 938055212 928816540 933583028 849975409 999873190 906505264 956310208 495057027 823709181 406087240 428680964 199905162 548240414 490856363 625930384 28608430 833087981 817666301 961152792 19550192 200855520 89793384 135743288 523287 898327303 268125414 824127913 151982167 727644702 249329407 716088226 424874805 643647743 100751096 535521631 398116361 763252359 411188886 619342472 215849493 542443062 24359132 382005544 317562686 838965742 652388529 796533011 751103259 933457828 607144515 858663998 617701086 725524192 700863709 952911030 645921466 773269512 575046966 705856185 521318103 691308814 377738503 530469400 330395505 717316840 459622139 948409270 791494468 821844340 119417033 694162174 375844387 886551091 376012926 823910402 26639659 287751457 118410656 837830829 654097386 802176489 256180980 482239931 129535036 482119058 16949421 895657843 56572807 480755709 12514482 625971755 57172242 767670391 60615167 768481533 747225724 937820879 620739 255524475 230029185 411787929 210258365 791469371 488846889 763924886 357446621 897200183 505624368 535226297 349887071 570619872 194437645 768215116 265684757 848812069 619511010 772791559 103994533 942659063 581050665 747283634 637456951 699974768 435523378 770374931 764256268 895879240 383980191 955082979 474799609 499414408 769744 570236527 417393131 553791317 508646818 571666829 139271548 823103810 485390685 493057912 9682619 840173373 712218748 994965456 317059242 756015726 153554834 496333661 54761505 750673706 5335098 567034993 21658911 938750066 500166588 965251547 875474917 900078580 783543039 880214409 466652378 571638069 106665328 659632697 347214045 698431810 459721980 685759572 316563649 688416972 647882380 916798544 840265282 990408390 704484613 842057888 88899313 221805862 158472751 544065267 200348302 966798080 163774954 769327092 160218522 334045723 178478514 401485310 393124387 543174365 256285754 784447543 586946501 932520735 96546775 289565851 279339103 618934976 277289994 534449504 298829639 865985998 782356873 833502353 709648799 752558221 677939073 919315073 331043720 520445199 273707202 854089845 518128476 586025713 205525359 579156200 50558995 782022104 476193037 572363366 456848811 655257537 16428119 659978821 385814447 980391573 306110817 678133756 618542695 942077586 288630046 499744263 285826161 577970016 499397640 870644980 171006429 417983078 315124972 546653750 11689603 804003220 580873019 660004674 294791040 367932684 156763916 684520970 601196525 983563926 459446791 466678220 112479454 870308095 718649530 951102752 666381876 696296396 571618628 773622501 402262851 582826568 336760004 842908093 146494396 959516373 476504828 737130046 724748434 751038168 636736173 650367924 447472839 830888814 494178705 878453312 678717200 725501126 47657380 384694298 323918048 951824831 371420525 836466154 631062075 639184984 541613032 648325367 620884889 661945894 438569327 788850496 391758324 764944758 48752410 929693606 711005370 786307646 537442132 956517817 289598106 405733857 24351365 628082831 513895219 780343740 361567143 567705459 39973416 772692111 170346478 663638778 302684208 865718872 468067550 634324216 289695432 617283298 331620733 954073661 139612791 392196663 282072617 770526864 477950137 655895530 517293135 893161065 769306437 884756213 298958863 825696722 788841935 865283073 487954303 827522198 298171543 823289423 740839924 807447032 3291896 899082351 148190712 681038801 107466202 890294912 436889614 736670159 37999009 472574042 50078134 257625052 202092903 806416073 152900229 713393230 469583255 931187981 605487480 707049329 704229167 817982354 440562855 651063947 54707041 457889986 66650730 371803835 360389132 516076226 354265108 410164572 194511530 236423030 89717556 561755959 337685110 733199847 17071016 49512361 22020702 723636745 331690014 620852125 220296057 432966497 99687254 577948934 476137415 862563868 741575903 828584825 36966445 912309810 297107665 342954148 64841121 142164170 46812728 105777938 14049560 380331634 3376579 207809338 91357691 654963126 108636530 190617352 188178090 772605065 63085041 947652290 354511042 729944289 364818109 479487812 177666796 750501741 699410222 950554787 426236722 664363163 307766609 457135830 371834206 762717766 516354680 658828313 48522072 365676196 106702354 259996513 138519999 661868277 558215177 901874920 450777607 854408102 364424253 575393890 516813154 990080079 339938774 635815759 220482074 804209771 587165938 944882558 656348662 850865465 756021012 895613680 43220287 527632551 273297518 453602607 41553294 578329394 511576019 671191864 50447272 72769543 38683325 651010758 232975643 248732339 244820535 718671214 190697243 547113617 232272209 677328890 535536549 727866624 180834035 447063738 174121985 712724490 292259384 970119332 830548743 992626238 270716150 805328079 770949609 843425462 763738522 882889686 851532251 934879239 532851756 774366988 331637801 642195674 107004194 930453446 504590160 707513582 656589436 765484142 96530447 757444600 514339791 793142118 298768724 582897767 253064133 846007008 474163743 995714650 705562399 874323490 452191294 510988039 44192242 189668598 19492559 847605818 386818604 851197072 174293269 497576663 311688702 905880891 189440665 465848310 387196828 580257295 184233567 417755263 46301313 398667581 382757523 989373136 448620313 743096084 307633522 425949712 349833002 482360161 9964324 195763525 39127506 352677765 338716740 423395457 155155242 753776119 259916250 359889317 18618332 769380558 100696831 695947751 558842686 611577782 438591072 657439243 414364272 985840677 449784799 953381591 813418790 879047507 466298312 863760402 826229752 891160936 272672115 902179752 559650008 958005317 840570759 854727749 106010221 904631558 559134621 733856546 305748498 600865462 87171307 505319047 112090934 279952876 116207090 291104320 239069068 282065416 82649755 773108093 714472022 908717209 731353680 860164846 83449755 182660717 99092026 544569633 174940538 723240329 194560298 342252304 305348007 480241959 51739092 902135083 188681555 354861053 254572554 483197679 312901686 368525883 329814217 357018943 249390455 851083806 819298870 870186526 291168164 363930786 316771594 338448502 195704643 765375853 202285224 601425954 404399410 429830534 414193584 428813513 293377671 995529718 709687049 870057058 570038979 635860539 114661035 476349318 133647559 787788950 17430604 625125094 141415605 475333965 160758555 886700057 453287025 593535906 40345356 738865798 178130146 225136654 170680553 809916916 407488645 506063892 450530181 688017994 346007431 544133125 541236899 659320951 137454535 572968112 434934953 574962762 96128401 736584895 330433649 993219130 351275821 497912882 373057781 958976842 878291047 896377933 527166 918475883 69912678 637769841 121045647 843462886 792311443 929464498 463526261 693039292 225786487 803739340 295570025 971850097 313307215 548554837 152633735 474223710 109410945 340659164 57883655 440018605 365567526 569244952 32580700 598622630 341407244 483865882 214219269 530074709 96516566 672184648 117051254 888830102 786854364 993887201 548724413 921450601 676709924 797911870 547391311 998090007 642607727 873750161 821677063 833363767 470800026 659627665 643973003 881057365 838140989 976961490 881430828 981315943 642793955 868452488 420863221 689473705 249876259 908883119 908027202 920949979 757272463 817144769 324368370 904878335 266779989 943549112 106527222 109529146 14783055 24791613 2809343 246665119 177128550 996460510 364821830 735859558 345953920 384283321 79431520 723866377 566382863 798537251 85757089 915753605 697139079 726379403 257423760 505462998 30905626 471456866 303774069 897336190 787220834 937832100 618705585 805107518 571761080 776902796 61905960 985136651 145460386 737828917 689221044 740641353 237540996 573915746 399821736 906495709 801561883 925630093 824821702 907415304 260964028 995412877 720021528 864075694 479022120 718866333 374823227 501580696 473232167 796880555 520698345 651366618 391446961 643718507 205071440 878772076 766842404 773639937 660075666 960304928 42436460 501065637 131091139 495462370 297608240 661221580 419555444 726286783 374184186 803393340 47080552 83444611 44447312 49020711 24952060 850416106 694795687 881421716 687556115 968541633 936997526 959598236 148891067 970158404 786318023 787714357 5800733 145829185 34529874 345494085 224516868 628417635 413017918 940633384 8954079 369723290 35014405 223128132 220084645 767345817 396670490 623362051 239395055 738017473 389394044 982366774 381113306 923130684 766461954 848088028 207502984 759651831 276398475 658588222 35558097 96356889 36052139 235894944 117577521 500040713 457773658 790818594 29921282 956928659 451300298 942096200 8351834 648662257 221384364 888038572 760220651 922108879 12403394 261940319 219437608 969453356 442855002 726730792 695770797 797398824 146157943 456596463 76175063 471053756 407464386 793466408 385497348 574235030 90811382 529443003 278620623 941796118 489846101 684725377 73600132 146553425 123860414 607815255 143286074 950455247 283041663 699633846 566189612 947391217 763680445 795459573 660720149 854237455 224435030 975894302 211120784 828653885 188512728 404467549 202275525 796139088 322437046 811121875 378678802 440639498 352059195 747254009 685848047 964505325 426485976 890231367 348111544 593235629 573485659 863816251 579785423 868785796 48790479 56479822 9444685 202956092 199765136 343949065 316508786 554811030 360162898 954190504 646172510 867498393 788471192 973020892 339675441 918993291 349697741 602721633 166392380 276026519 219536518 757586285 123833868 617032988 395653220 909381886 679585548 756774202 541910707 982517604 504272877 605702918 340278608 503081191 79533580 651041452 606529191 996054580 334713502 907196543 37696015 736962533 419350134 446922330 372542596 698907381 682456397 792561611 750380452 877333526 221792122 291740939 108530152 595162971 78327464 130479257 58797141 278234104 173384558 726700495 153877445 329859217 280804892 763366852 50735642 270458862 233461205 723804060 683819279 729510767 571465810 738814467 60718773 919874581 19688626 281597166 145577068 373101727 362779427 971263851 145010411 911634916 457753738 530608998 117088485 191912341 43163440 583638022 205652199 453113681 92863412 832486131 591845811 633587226 628963503 846347523 228468246 254992157 227959135 429693373 205979394 486824895 155876755 711686343 92729296 565290804 463695085 670028497 129526897 481168832 428872390 987046455 795023108 989759969 439173354 912789892 870101090 905201332 789954164 824442044 546195286 857308432 174428766 592166720 321987752 909966381 893755895 960320940 761504970 941640370 88981784 719554762 214186703 851648799 320331636 929946048 309241007 345475371 168190761 661827404 194432818 904380327 160309049 611254740 411648960 582666550 390450263 860197379 499000727 624274316 244651535 907877271 512882910 814465287 554087821 936209293 878358521 918537073 106463328 243866778 26291500 242111801 193210918 500832322 230262574 521548052 67501304 104314840 25509717 535740930 490496891 739814017 95800683 801410991 195066551 758285028 131975144 349423557 237757470 553115386 357416455 855572208 415242793 745837848 560332558 892677990 577444093 714172053 309145409 891605586 349838598 856752487 625077293 990044047 582852223 721241925 161662688 377651995 249142684 557526150 262383775 689420013 393761618 609953777 435653497 495500144 145703338 542523135 342117956 485113851 52283926 183399428 155591651 168749684 160773410 573392860 391825620 784867328 267991596 815959438 580500869 873799068 333574135 921065167 65530135 784060388 667539292 852649315 685676452 965893648 664371441 812200895 370256942 604642458 408784772 993053933 724511415 919289399 136336836 989019618 15731532 548796490 48048596 393371459 272862846 758105017 420885848 588062741 63860664 174409064 52834485 891514669 362779148 746703295 502206706 815692312 130133308 706866798 685501427 707598709 610093650 717253910 214147631 565470649 476295491 616147807 605825402 981663277 242598988 704115651 159225986 914456069 613208883 981582012 302751147 972184011 624008767 679015971 91094833 125669140 5421808 966828336 556914470 701017399 241119117 694467474 670698794 830786593 484939660 819802457 412982276 856387058 31468099 272225529 265929489 911576745 208465975 572267121 146669491 453608411 303279246 753923956 22192808 616794440 475223377 654476551 562818511 762246004 450366483 464231035 453750983 477246824 394848949 748746848 162158086 890875795 637008140 839183407 218948610 467662756 135046445 693182590 379893033 496610314 288672702 627011086 385356942 965258904 351136620 700046036 332176131 552313844 366057299 456408434 223567239 730771045 89242601 850806831 297052944 723567921 701074991 756944294 104738582 519028268 484192430 619094366 291012011 528111004 280761504 555844018 380064154 620843830 406240888 990793280 325440393 684957134 252719093 439100698 93701274 797542528 698600624 910055673 543021218 889284385 332457392 458747952 138027592 919600655 56944131 975773606 87152500 680773933 261455777 716997771 290174936 587580824 504867313 619631998 232606072 352040960 345432756 842417096 275972597 864702041 730198467 920705515 340605129 411851420 245751464 523041469 311595840 486835387 189357223 254409677 49994719 299799810 265254805 431288851 402992834 658135828 562395456 708434586 501337020 970977139 334658171 783310620 46263545 933529118 434369574 527539559 20889414 751753885 738316872 830685362 49369049 347398159 147692158 910675896 138309761 373062044 302589931 905670535 624048417 979405871 19333811 302564143 195599572 997028063 941314510 953373329 660231435 694226988 64499451 566552371 501673707 881212465 330486683 623705159 38436300 455981257 404755231 789345346 504046661 504978415 471262024 872331595 5830941 90538031 3648635 986818473 180607552 773902531 761645800 884032565 274345400 301655392 20988228 130619850 39056494 895034139 353996913 935568072 794965253 819802026 634985077 860226583 473326868 929781738 98365370 634712425 91361552 767534966 418730761 458506830 143083706 890570535 418090022 454734948 250038534 598761335 57251015 649853912 216694381 538295083 210189446 672848223 515685773 832158546 365955137 974887461 162228415 557203555 20296878 61725195 1455619 902433339 451781015 597483191 251528344 826707743 341109138 490897558 236337301 715451419 237859582 296119325 88772068 980906920 815120701 925901651 237178516 439532680 343632481 947985914 66054151 563944438 559537109 807159660 660982401 727441428 288032560 905907382 8069423 299049004 217755994 666547287 341851585 780984712 724419184 847797882 558262451 796007375 381662099 472056814 287435042 367341176 313803922 995310947 937592628 988641362 774514527 869931748 87362124 106606668 58222825 628751962 500282269 932273401 593710793 813503535 733625745 748107767 185692108 706961615 480277742 808405285 458701189 529009002 476201287 685357039 345600868 349316909 296441614 772057008 155564824 949977030 752421436 781159923 341719350 852765342 346589982 652742286 431985956 658534609 156781817 820766405 539472352 975747844 84030905 572142039 238545673 398694233 87882593 178522922 65384363 618542208 430776855 873212349 812668366 859595903 590381449 902841966 666856170 702230806 553497959 667113203 655601520 684806755 217220355 462519977 386910006 939309225 501507724 682698203 491906605 636553344 589872216 877146967 491124395 832172446 205181374 422901183 116301953 364231870 272227277 548135823 358703752 975038962 345833153 482633680 386256839 843577901 710634816 947748399 198648079 753016908 552972228 934689005 623652626 981738318 95942154 276310486 5691634 501978766 487706538 845775375 66824834 813234357 652501856 740402994 3090417 891653005 552981506 823629069 467189770 786762772 196060845 674096289 309540775 963440062 70245577 805295838 245302285 960193425 23932390 322494726 246183996 939790947 775629334 900855050 730449831 830432920 436218558 564126538 158113482 622273642 61687122 243944510 160323743 939318045 796740006 800043679 281998450 976132812 413118251 943842932 457148424 953140899 301617653 444733740 73992156 296862530 81490260 899968854 454561440 984619899 408808614 427556116 261095856 658362689 557347676 597027989 241083443 723197473 556361291 864921760 735185816 875728953 792147426 801726971 117075719 314743013 188687230 824495277 27305826 366539966 67141712 887788275 269056555 634487853 90184034 482923392 246134762 968828788 898776034 974749078 888732651 926479702 506495119 994902916 106871976 282527140 83501328 721981546 42905971 677119982 492495832 659041545 20064895 971741251 784764424 852379179 287646425 792251541 290853845 906304008 348440454 619388819 533423923 559305338 515845522 735872417 445907155 921044698 895803273 994493591 832812829 968361322 537832864 847522867 314226302 825941107 707085021 846378775 169176597 873704480 617269116 980685091 764389508 782158748 97737442 260257327 199425962 477182423 468498318 542707873 517133199 978128936 515984873 595723490 472367402 746078376 31188343 654948917 434776591 460961761 172118823 173509748 16162961 346342315 130126781 667031717 385182243 924964041 843816616 848668980 826124710 838442910 51129675 722811561 690326300 860555695 814159237 846710491 43953003 940647928 680279329 958103437 442237387 869551267 864196029 926774481 214220816 459206483 95619379 222693247 150626400 764731355 693804256 721383299 373730324 468577635 380383690 549497750 237463498 778157025 430254053 890906084 432381859 868848579 570108447 646871119 183643342 184706597 102316611 294171698 243009873 795384572 137791536 593190497 257747064 293014935 63829239 177491859 141864457 926248267 248505871 819095756 122441567 173214319 138244758 713704591 202953878 663184783 377222108 814229859 638198811 716976812 447083791 753168197 647148175 892568313 182203412 516913925 219938121 968067208 157470152 544632714 270330910 866670998 831221379 944658032 203848653 489753496 321317660 796066550 638458184 931770801 469049025 579381390 337515588 871663589 331838430 638171171 229669 592768459 107442098 908003766 149817928 292638930 258065196 264935964 202651728 641718215 511793640 782568431 228392414 688669185 632749557 665744839 33245752 631495816 448935020 846037375 461351246 958265515 753431540 768240623 608955079 955698222 23504197 723824993 243576910 401042399 343014368 503993701 352832812 770690751 262722340 470065672 358794987 710371304 102745260 997515372 824844715 838818979 121371623 921189552 132813235 581855039 555021105 773440416 51800718 428496484 256834709 262844136 137697878 389273517 253258587 927983744 340783044 802474513 494289280 559554100 443807100 568426227 482661401 861912116 679302922 932138173 62026268 939397399 906384107 924116533 886731917 911128374 49054948 58869148 28968010 510415025 108954682 825853374 632182257 967148533 458387336 904765550 482093947 982784119 922647287 992957689 316589932 488462131 46072375 894168298 161590064 758345889 229986469 403391368 261358540 451159626 380152208 829577952 584257505 625930640 385694208 838562926 347208485 858824627 756868947 799160885 242885930 830670292 469686393 471789899 6522002 385124409 204104787 461464598 236524931 297084042 243499414 419605730 223316896 886102868 412184989 960461872 674845005 934646893 150826553 453071556 231016167 763779747 230175172 447247840 381439760 855551388 192825021 992434622 967972275 987979912 516720691 651628623 307375573 953961176 620541800 961073331 635628368 996228791 557941602 957337158 448212480 955759835 436831181 994820895 53725952 869862351 868272832 938039450 398819155 611080207 174306060 857680075 378610170 436239389 177481268 403231789 6963037 869936966 751811594 982819772 511658503 866871693 553353104 611069703 18587958 190726775 172118081 561403306 111656958 540560185 395269230 689019144 525211640 531311546 183170663 545077796 364903445 917223288 83101204 192562560 13067929 799952249 335950540 549471260 356118439 360153870 304318266 468502104 87931135 775916639 634584397 763424442 628418970 662958045 491023241 721694847 30578172 595419262 449548379 725059881 520376996 745524467 655453141 917450691 380873116 525854932 224275317 803251282 714860819 879809874 579243969 671271984 411509827 737957659 332406488 788815641 731166755 894962387 634807180 930392365 577454570 676349189 545818487 840467960 781343111 785117258 729433989 814076185 347836600 774174595 614359169 659156377 31259600 910170866 516647340 523091050 234336180 404567729 56786671 775133156 154927360 551015866 253605782 639233848 30532989 970926274 382267036 496131898 377867950 814782791 48990697 235306391 225658274 839485659 300742264 445663762 209071327 707276995 340510950 859022611 23406569 493017372 365946521 844481108 614820913 983540142 13662961 204551415 94880483 173136990 141800449 266166838 73431293 751877722 613471518 664909127 148794398 918009141 281817428 881709520 85806206 393095541 42736730 74492070 23622694 930944492 148003151 193156796 189059497 563279106 437535375 944441874 234633751 843785608 675100930 819940512 775129163 989439393 81948310 257114004 8246731 521034807 269984625 882238022 210759466 519738150 65891155 904727678 435602917 978169107 265450290 872318009 214360066 345509887 303414395 442237519 356111164 684115781 120491434 515401999 161643322 458399687 23174696 565237692 7736645 889202955 784051086 836702666 261222015 491375052 193939680 778818825 205841670 903815227 633306775 787281505 412477946 538061834 317469687 910480417 439937916 814937295 232106703 679682720 188599385 618380830 585848414 622239478 339219438 624021427 406523148 916794367 148522996 227383001 119918982 694572880 245282581 702772977 694801789 854718105 280010568 845996917 233132609 623558436 378180046 982622667 485327666 825072055 169905827 235157966 17787356 926690238 119078502 497807073 378547812 976362187 183715038 387647033 41744955 732718463 410738967 534342867 530823679 738022108 137751949 227709703 20235756 236723695 100046731 605051129 362053338 865801747 43795665 961930972 133221447 464749130 16163997 148374978 60997470 372938179 93959384 336685317 316865701 357996584 327118463 783315001 37363397 829814795 24788713 212303369 178556534 572472821 50169432 407245830 215092136 895261011 878916549 974454683 265255782 380701689 51773171 221062901 190950291 730215436 605604952 836018786 198467878 640084457 427536433 597141944 262264903 581812939 29450322 388390847 128228365 719819450 41778456 51115697 7171310 519961939 461298485 485915318 24995283 789383177 546912508 933289739 840877940 906802719 807485051 808853260 397963470 903638046 351903093 476778946 162816548 361114594 255852823 405260116 375708550 814138518 688939450 964111253 88343977 421228601 74421535 153193432 51768910 431926419 80959288 847474290 194284433 228020849 197875374 991597341 902956732 964819618 132698598 764696791 63903311 535066277 73781588 104323194 21096909 679386533 272988017 596067568 340497440 592135809 301198594 657742705 281725975 823142857 819996697 838515624 375416806 799063811 341877029 982122641 767249298 808316673 296501647 417751887 183505278 345664598 315271914 663392682 600816939 759298689 578960661 810078799 636502341 783513007 431448878 486866503 48443230 401346025 288871448 318701229 294319763 965654031 893771999 950291197 441531975 445802347 352248068 527948329 2335219 383597715 176590144 800399178 554096326 602436818 404706401 923173897 697517576 852812184 374086253 635793027 400119491 865973916 697594927 733812978 281355214 770108246 138143899 372807991 302183526 388175573 130952795 718019727 548473705 915907824 350358264 981737471 894854235 939595359 786702507 803326716 655469043 922986585 698019266 766798074 480041529 505021466 363138632 644667780 321781455 920869570 459068622 652456683 91841264 462603207 51961487 119336962 44642399 397761179 99021008 617014685 443386763 500716560 353001567 649607907 101018091 687437260 481007234 481366255 334065215 822240308 206970057 262433169 154577198 600704461 283854278 503747070 104247733 574495426 333282424 710067199 46504832 364726037 8375316 164500313 6642622 594948669 363144162 450770322 22846735 323292515 218113015 343575299 308060916 521419445 89378990 556485844 36755384 232675677 130505217 608714451 59884570 740754842 443170256 629185938 280762471 927755384 558877267 743606909 488631560 777911018 429664731 568039207 191001618 431001003 399484075 490801580 132688701 363840907 192424802 523870286 344453983 526681251 44726434 458106178 205254550 360527294 151251194 269902629 173637675 682929069 385809621 704043886 325958521 439246863 354429530 924020440 337572459 445326707 324866068 392394621 380534439 880568951 152509965 251929273 149235725 615362883 132303057 540295721 216341275 623291420 251468957 893023614 39517686 603714146 74780433 388840102 359405211 897338324 584986837 794152277 457818528 688690633 15175562 268708178 230459548 694712666 471636505 687175957 383676581 704540280 87716490 202520351 119997979 656386254 569245937 686818355 256420413 778566459 222117905 377842022 328204168 341519113 331694751 866340829 305216038 988269749 34910986 496573831 105236461 734627908 110692807 696423551 179673267 390419192 302584047 529956881 95530489 625588722 284620375 580993061 329957023 417417849 342662903 585197260 473094488 795297688 440931384 681800268 629278464 999640819 395644124 422559488 48948561 326458349 28093788 849188736 373583811 381788411 239546454 833854682 134964012 528074623 224723452 476693870 210236084 564881609 47870325 889134542 293987114 712296873 584349266 899625305 679574409 791052956 686830170 774458878 768545438 962593403 706808703 839824509 61143929 585615910 159746321 663535089 321831086 752809561 732496413 971438845 667546372 771648614 305532397 555836148 296055213 756796339 210855835 222415331 74253975 664170946 519284784 652088746 191389382 939794466 585704032 955973267 796379144 856855258 520000382 598074268 118791345 231009937 166580974 291081095 247264543 636344519 482501183 836988517 68248218 427427149 245226023 809068457 311486027 439879338 361860119 658479040 426089948 567221725 93800582 757943829 159996071 268715238 240226332 473394438 185685431 425519229 367339962 485621730 348505384 403391634 144133655 840326501 561522715 571595158 570068781 895163508 461716891 612270069 560034564 572661829 354356307 965636145 235559499 816680278 426053359 857457788 744481448 815949492 480832834 839658683 758206624 784343271 233810616 732912426 615524502 737532954 312246611 921431451 82028784 910205947 305819187 547712543 422025031 428071540 275159952 718677954 600282676 924267761 693944344 952205609 819447365 884806421 231175247 900059740 200517958 557322298 196567505 484694798 474868145 592563125 396272243 423136134 59573541 469936595 114098326 607295760 311318592 608739117 260950616 319125707 223457259 919752605 174286765 947227345 211714657 351689302 235169543 293714195 68473212 327784234 123373505 590377038 450943869 807342356 432259398 803173498 710393699 954191328 113176315 174708600 142402547 898289018 164670605 464868822 193697765 946429077 652021121 791939358 644650500 913415886 267306679 488586691 439846736 974336366 426350922 904045083 141992388 301814213 110571095 893901120 515401340 869297319 692662173 948419496 881569449 963107560 807387056 990310464 982293992 995096999 257306741 821980797 641802544 673760219 327299454 431125531 36832543 996104207 393749120 830028275 628172731 770512501 97268348 673883144 610821604 939057387 618771434 990021241 892351880 927635413 788825397 790906453 645616928 818349109 425703125 948702029 837400832 840436508 19327929 785389071 725892941 898829471 424454404 974278906 702414071 750114977 153331699 412119748 212635603 937853545 826357729 988874302 360763163 743569497 698816554 879887161 694506885 958267720 683783052 871199513 812345779 842005788 704912575 735351768 69223578 259413119 47614191 116947563 63530847 991139139 938318621 948390501 919447439 956147733 521862021 816357303 653962697 918371171 117302812 877001101 325865189 745860177 289858178 757249085 97701315 382722635 306683281 613727914 594089572 935008548 429049014 890904964 670891920 900860355 562130395 590093221 101790418 964343365 781281419 956099142 199357444 245108729 7875574 142950464 36899454 102447182 90063689 929010614 403254894 690308910 269722056 940353003 724294732 848347730 622117817 762158658 656853703 870251684 703879861 901882115 218639979 883519130 268801300 859000303 730523960 964778615 956692939 971258670 506159376 851971389 202279346 833518802 172108906 216751995 200368570 980455698 209679943 278778166 44502941 216071487 44279576 112632695 55608175 740040220 255641565 699402252 189273643 875894186 802433623 909603401 294491557 589596303 64612767 703554573 441662791 663997345 642576372 966849159 120624620 344147077 202930154 448331592 279903964 547712234 303072457 794508004 347757771 648380895 642889156 911472023 180910102 285016732 157612301 186054205 152351938 856569952 748348215 814679819 791238679 889249665 187032929 250583046 40697849 154408126 40586436 817670445 130083811 668740925 72074583 869063535 842975622 850205273 244968480 624601995 589325117 850742878 545093788 847978838 606395821 810638264 262836659 684679985 11126802 838502795 55232030 115325665 56491257 333802061 159808650 934184610 772875836 800813177 111988258 615062772 420167063 630160060 149021962 824714190 562208704 938082099 513895247 528184222 297654843 989800185 562340560 987810942 895536263 899758319 778755713 799874810 50531437 768758849 273512590 323857614 35708351 402234065 280720078 430153435 355380970 930028036 517696388 736044563 195935267 704890254 514325230 608299560 262164344 651183858 69433874 364077757 341156492 466077460 23161533 812157890 529373781 961655269 828992330 989576091 444229231 670816106 530472674 940259354 676964801 973999942 663283905 691577306 37913098 997062286 739112415 838142324 170014502 599501322 351626817 471890022 215876304 506756527 365783538 765108262 70129315 705095734 423140988 874789550 573203438 824844200 178810394 901191299 645373263 902238472 858014097 915505209 729801911 790670292 722277257 908793146 111958699 857381218 397750962 697188573 151058767 431309543 61095525 251182303 92356949 391723056 82995758 179866216 119054483 534926940 399210645 780467297 774996193 905408923 639928161 796244267 284622410 335513511 252742009 363473963 126694759 789332334 232696519 761823092 740988198 859088975 601344322 717559333 554969455 955517146 641166133 745441683 504081267 700882134 581017018 896865181 87607276 542245520 305073093 843672548 84695703 996151106 221880971 823874351 616131180 629712294 352704575 962434273 910040872 974892567 954081371 985881863 624866993 888370772 239567426 424996840 22244675 908682724 752516322 756046310 337708800 669095651 149491967 977764296 607401709 801148607 510175527 751368756 687088203 871845695 513861533 664358237 85871450 914688590 85935546 224559285 77208075 538007240 401866260 602563180 151623368 256516525 219138859 750868911 193414216 509321665 296663681 607879644 383861458 407705971 326798854 513562139 498920287 740831264 2839425 34847774 5927719 83754468 14488544 760508453 175150414 535487183 24592717 817811917 527817271 921268608 599673877 800997668 135704745 704038059 169427222 812398359 211255705 561448498 39363588 582000336 391235960 418325811 373606333 451255543 31915467 715772292 268140667 850357815 397210472 570036907 136414907 150745091 145763511 664869588 570477599 847530354 834353301 923119684 451786171 465747100 438178074 777213869 294153382 404237011 53555715 537870493 235224372 687860752 60838167 84820190 3618172 71794908 31917756 925850111 108446518 406613071 172677849 800319961 48461523 286177871 10895360 460226429 260185647 946132362 824957172 847364376 9493496 51651464 11109158 538946115 502116445 935499074 165393076 905760388 824680652 859506701 538398915 861873489 814956234 981908576 938730800 949070123 418675579 659503483 6358010 990212885 192863343 570766898 92202165 168702144 79810964 622250570 108902538 622788589 350319127 713474379 152210696 295264296 951447 881001167 219577542 986984472 472839854 978397096 721093833 751837316 31965942 605123469 82308597 137139218 116931293 352441083 332663030 365377020 259952656 270204750 111749618 495510408 326528891 416122714 121439694 446020050 42465507 453953372 350823006 392711169 106667508 326021046 73379149 235354619 138575909 972241457 509997775 523076359 512719042 866614554 313398582 942283890 827579956 917078715 30188635 453533160 385590866 605469984 430882806 915730112 594617983 824158795 303784755 744427981 240686672 800413213 439977744 785286976 298794845 414680743 240430318 746392244 275488326 661494165 354915664 884905010 878095680 910388479 308828602 685151735 646283577 684500736 305294332 329026698 183275902 392306317 270837520 594838198 271555574 550930831 207635469 707605424 334122045 650992323 616605843 981528485 7173229 716182190 398414187 716321383 447527581 637592582 541076996 797221364 656677597 730666252 280178381 771288473 491119743 603836465 214887256 387015246 248460700 544468938 305990460 431254314 235969792 944190752 667373355 699026977 10560792 944802702 256662386 690117366 332386129 372244212 337315804 602324180 454314505 858133049 343383252 582912627 500597387 772133377 536718333 845825923 273278058 801700162 153176067 182333347 70393947 250052947 167771311 485761994 436572452 572405294 395798045 903258858 798092869 940027122 918319662 931336120 20530987 599827652 3332095 47587190 39696587 571845934 355497136 944080269 5256479 97369383 7422590 455798658 266362784 714108056 277323359 956751717 593802518 724942862 339555354 664604996 76675212 478692454 451435029 806263090 278093997 691204859 364189836 444686027 29316938 764431230 92901325 449815962 288067414 646017785 439093392 842318080 677531392 719827916 493790 264796914 174291773 889214065 84182953 943262256 619573095 982329743 540095892 573990481 334106779 977839820 302033504 778993503 142728230 664149321 159869403 270198875 23617287 557784731 403494058 632374495 282085136 884484463 189792488 625141772 605838563 934500444 731799929 892808481 467726788 609485450 243483517 797862743 124842670 546859986 439371327 803538932 297827290 773974263 302462433 820240719 394371889 599394181 435452568 671844828 211490080 244989336 107929976 755151453 490245869 491397021 349363535 886384632 32285548 438373188 200334303 577646505 448922519 979634802 99927273 391014688 102059259 792003895 39807180 820547162 355788244 853009733 214688586 477511950 14456306 290800204 88914960 142355938 136505863 751060530 86097490 314786900 311487796 663698043 36575743 141531011 69951665 184021090 139332003 391295567 283410994 691006295 149702203 865249760 372999338 559442949 290884747 449062899 57485880 91717297 44211018 328943823 81129622 731363713 337485027 594255858 362632388 394627281 267717759 559612505 477034680 531955891 355538204 500374082 379778842 814415615 783318760 943543092 876437498 917680335 416945571 976315612 179670874 516165042 351382192 717098311 698855173 762104853 660561790 862932973 14380687 809568863 448106846 539729849 168568831 598266642 429125681 807535473 421067274 795357702 301406174 862414614 438798656 508506271 36165683 818358943 228253036 858267521 770894413 945441012 465209060 984883257 252650417 411096846 188103977 424522637 239665266 633332956 436238251 862246245 206134862 231354124 7278315 422440359 243629901 375447469 357848654 940181201 706837305 750659417 325066026 868777959 819505075 922507601 547481755 847978162 647450854 827955406 366916366 406805725 315408966 816490281 463423971 863684071 471986543 622110015 249122334 361447808 118663852 418576098 132585031 896724394 505339270 518861938 240405732 559240463 80232207 544693129 4240479 37849699 5784980 776563294 467889507 905677229 557492839 642375424 540267738 778793347 261836566 810558925 416156471 595581601 22439658 217435151 150496488 578876167 380320161 934246209 910737896 952769479 217812145 594468354 432034974 564024073 342033167 419717259 214256890 346145403 69929972 357406794 255345896 510574084 18705009 193997169 76753133 867259793 508115948 739681341 49103260 564430074 372342933 540818067 193187947 682908457 32759615 693377882 403121755 491499706 73724264 597725854 72929010 789924817 536613039 975423562 442834257 677994885 588944613 988829725 217067096 386866686 280035460 503844509 363533899 879525624 399298294 849139467 327824333 387984730 6506153 494830558 338749928 571747682 421098962 910878735 771863967 893236060 792105118 815157737 5681120 509949149 427765150 460043809 394458199 934392382 338724383 341147767 103794007 666131747 29563198 857987639 33784956 241982969 68463669 759388091 242411149 846826905 509520489 762475875 32130894 37196126 25401069 309422174 27731804 692816557 627626128 908742530 809517521 875564146 25095162 457864986 137231820 471048559 319006945 712889270 659293550 936499434 164877619 374254361 251938528 438244120 96358682 724973243 482916502 715962154 156040256 745366574 704482241 941534029 797969791 920994500 880486047 995747912 34766104 708213800 25449160 768569679 9176600 253953513 72540253 652165667 527635750 901941759 20963037 971569688 544282935 738592473 218626766 328268428 208265168 725545187 463691772 859605373 144869651 245669078 107478912 893749322 423732397 778832494 564756842 878230787 191096252 564640789 151970354 361852076 18258175 929364469 798523629 843149088 13573965 956877683 183127520 309247734 246639466 414171146 206707762 536405056 438148910 481001233 239121193 627999383 156944056 757940360 198271344 317519420 275303712 654583696 415645883 929712389 98072038 427438309 290110748 837260391 815884489 886627507 302205456 518826555 224432452 465349680 459816387 627129098 330009250 580546618 42645495 786092985 511732699 821176743 444615002 905919184 760748299 913918112 673002239 868437966 768026362 865301551 74687364 884523632 182263102 828497594 180099739 752108558 279595940 507663018 228804739 382859882 180246196 621977751 321115410 724044017 614350836 667071770 475570022 677065130 350555711 828905144 756398288 792532244 26644155 754495245 509136725 756820218 710120062 954343645 476762816 977481868 125522795 380503284 192078564 682705262 35333401 896272293 356515040 950723475 518654930 637608954 165624084 570054829 41672246 193219956 90535496 549372517 99162018 343383639 210004387 434463075 311136940 692189722 260384090 522425838 118527630 571116648 14274889 910995238 401816881 722362273 203086078 323773658 229060169 622150463 317468035 735559443 612225718 774003299 379702865 581372424 222487081 375049891 41452002 880576895 721360459 846635302 294855424 525865177 229825694 669053723 202418892 717257150 232968364 634227741 154727845 960238116 694092459 800350919 106939577 480084833 46211497 53637521 45638377 639384286 336116764 399064217 289306668 865744038 801638267 807284611 469192360 684063133 520701381 680984755 187270912 465487983 81450057 603498882 288401149 650142877 279466978 464267082 129536377 701278860 469919836 637429989 527215737 932601332 302608558 363577631 59750813 264016805 178914828 699042751 638957179 667761260 488811688 578996455 366551801 391622774 381313058 804353447 49876802 819558366 636685061 681728476 108207626 600660164 259899136 465728278 105107123 880381733 223403330 721169708 434908723 864904109 859489161 912367956 234251882 521998724 42716048 141616751 83522756 742144221 196420908 549370981 488576564 902068057 818617350 884811748 512358842 910373101 785343975 929024174 376800818 377425747 360864021 386594217 223668529 616297751 305964173 946105931 305429005 977646840 327683174 537380255 272396094 783889347 13193014 623543569 241812475 545318538 494228143 927947814 901609024 974835388 764425068 857361803 268660294 742298018 78780620 593397412 81940145 198853956 172704163 267270984 61979477 605537610 520971506 824151919 93023768 279259211 89255201 197981957 161204767 704767173 427383754 617146429 133023070 839891953 5043743 566805850 120121728 227622660 151707766 515448444 215939820 760006644 468515129 724497607 116851079 405305845 48427521 771192057 681304910 958542508 877160129 933487355 292323535 943136254 415913307 979796951 952280131 985600273 425098399 900596480 872731455 912525949 755788682 954282404 758715238 897999440 72148722 774115146 65361806 352635109 41117693 574917930 132144958 493122445 474218970 722427002 673479526 920804479 756587507 866701829 356786040 819593831 204703825 628147176 39613820 189834193 45403222 522801927 186383995 282042878 13641003 521697524 154123862 710262976 219315327 596722328 199860063 965414633 196196548 414880908 265406022 833063825 71776790 315120729 75342111 384731703 10460315 333418212 159607898 343691206 209495772 918266083 685268507 980899545 979442066 985598017 620848726 849127046 48167854 619007536 540772030 689837701 28089940 340942349 132308220 712225162 4033772 692310888 625674401 910560114 689787403 988718528 905873164 979260923 422496519 523499333 436909095 467055415 19767831 769086356 305347426 505804759 141127203 381126449 282936902 841812529 233102259 465549614 181719332 541822064 415247999 698593078 133073460 379276396 154448156 294994764 78196413 985878962 614344659 849927020 145025121 838126311 544796506 578655860 295767024 598721439 221407248 949915999 273706276 694414522 78671780 887306060 672094270 759833457 321625753 933841467 870247959 951041529 761319599 943798335 275341855 929408420 180944109 891352949 341258808 519182619 353441874 556133923 538221448 771493729 606949657 963319862 380770810 914368757 596364026 809006519 605677122 785875064 385111165 539275990 121381841 309079055 181985059 399301576 15988919 623916528 323216368 689034403 177217585 869515213 491896381 786222704 423459874 753780961 505082824 850831230 842654481 903046232 432209274 549502808 326715754 681867658 169759695 390450604 353208366 619044799 508167819 560783014 65670519 390723611 13680399 255791696 197087713 652049280 186362305 998234042 454661670 486763692 334986747 671996109 559152543 819133137 403789393 614033098 540806635 643015143 367995719 908468250 728912589 963077764 848764651 875545952 451189887 618930560 466740267 665879625 541240766 653673851 477264905 605845761 131649037 804480245 354780714 752415288 677767345 863447458 531948283 594711358 257507051 748255240 494896555 679719981 300630528 943677648 601662018 861401082 284829426 583205669 229469143 378136242 29992610 881983394 356157349 983491835 20252686 70379932 7933277 376270103 64941807 679472434 251480771 501180078 383850208 575697029 476801100 581599697 461545435 500070203 252304477 309235000 261016973 665467401 641732472 696364792 360220291 467892024 354387805 704333956 30794117 545190327 16960479 396225567 100388317 107913884 83049043 324659125 258108491 731793434 74368011 716991108 574313976 693155577 6083941 70972972 56773919 902481153 898634951 993915928 596569724 800269134 236133688 569119012 169210404 327018648 21789324 622308048 258994636 401298046 59854302 984212246 309755106 854999508 681693028 962124284 791641027 898581796 138890719 759860109 659465057 756350398 25303979 933618862 834227262 873849522 165370825 931376884 481185149 524125961 399520990 599276783 405283655 937657483 315306602 374039069 49609055 141008514 5612307 879263867 122820882 342548673 305032402 735689242 92040399 888887187 331153186 702054321 242085799 260528891 215430444 452527607 245580048 393191417 364744282 465233811 309262859 663226523 202517262 962747179 305203751 779601274 241156377 916782401 498598175 532502430 164837400 325752985 292485379 325704239 209249027 763741216 139469070 814178362 332072764 732035847 559489183 680350666 638657959 851521712 107519936 497197817 117506448 525951446 345878107 742798818 255304752 348368615 206536923 820822249 409596213 552215106 258499813 630276676 270328723 468076634 115452743 925487422 481675198 662786665 144583874 760539996 181064594 684776666 36501207 414234055 199559156 434551538 406248705 930172169 500685788 986937556 242281389 830085990 810103058 867496678 56530410 951194536 360208557 769168043 640305585 782677690 727227980 837114842 106232797 570145435 103595131 936622225 551270372 915242416 578859444 801909917 614453528 750024133 526088416 996455277 962771823 974236413 450654667 722160830 126141632 315258908 18867494 557245977 256905018 542666059 183307084 197293198 14759380 427496923 193924923 822142465 700411369 903443861 443907124 597184422 105006177 785269518 653608890 684076962 175129694 973990369 421780009 704875564 371194557 581205148 543566432 667307374 570737310 668213094 410802573 829246448 799655786 840387800 679085370 746668729 24750911 263654527 104201023 426838118 119513426 383157714 182056280 258380368 107941635 545056122 122884703 950517033 50440206 941906005 819712390 938231977 430606165 544136593 44343127 888256938 382688616 722731028 352568357 911717021 172967325 748739222 105321374 281279271 106510563 474342136 17251833 273494133 228492040 908393474 594549117 692438121 2401412 126028433 97827637 140092278 135232301 896248001 758928325 962483279 627991500 788227213 6482817 608738070 432284672 844649960 803494857 870689627 394300776 664735027 335399595 732531694 96464987 100417502 30552601 664674324 323793090 550983610 480933418 750705834 713546925 899969764 684139589 881654682 661705502 964660348 584750661 740522554 595085350 745353818 301291661 567987068 480550636 784622807 373844694 595657241 286316827 892430840 846750876 981982513 313620000 472854355 177081045 543057494 366140012 717788839 402064621 847172442 229482570 506774986 77850088 250551433 114700355 737753022 711071175 728823208 18473741 522550602 155627238 367026625 129811935 884821006 494770817 522836871 135076180 531335096 376502022 626831571 204409840 644294990 391817418 913558284 433668167 473612427 333881234 447227798 295805643 602208544 384401964 487823282 409692261 995885611 276959989 870260828 626698896 948733558 170590176 427807233 217697890 359136524 329882624 948367435 53450240 513430177 120970853 204322443 151665313 550458542 389929246 699604957 470363229 870652516 644280982 667650090 116286939 263970480 186672721 748645101 690059051 938806750 360405177 864122670 165728718 643847826 584320797 606326893 443815310 654736186 187908525 905613232 106262344 872502047 650004254 724957952 69293288 202116262 182954467 273191030 54194602 432406430 89512181 839103407 804622210 881919584 255038276 949963522 168060199 187323629 78680428 710124880 554031339 595553166 475106834 747798747 556688707 581278977 374284928 611631018 10079604 13791882 9486185 865267755 629683091 873067315 840943319 929280838 841118387 980806424 575822741 614846913 203844347 812674903 284118506 582805366 63794380 980531932 318980309 745689642 647031514 821274843 327076465 378063611 16724641 400471126 78496291 318553950 76727078 904404529 892902729 977562144 794844334 863270658 615127107 902498939 732155189 769754701 5987574 641678026 302534789 451780330 309645859 687244083 238470283 698322162 118166981 948433112 75398032 492793768 34535161 415493994 402984211 918707173 672374849 937919667 631602580 910404766 611851623 940633661 32321192 75840431 33705844 733986906 696907953 727454433 415531058 545991399 353675201 474413984 308716850 414888436 205990056 232847073 202455428 395841639 338837543 890085396 138796989 646215407 635944864 747316817 3028682 274756647 235216267 673384445 328413079 578360086 88227382 543403578 333520367 732559142 640811909 832743771 62367344 172575431 142257537 474835431 408133691 912792030 703537541 821859585 73549839 417496789 126975651 631482104 20550140 148722445 43626847 991855214 161323348 731369895 318349417 949563351 761999833 787858326 199174469 532569875 512799987 909062546 273607402 663182909 539084044 568541379 395097311 396328726 391829895 705743479 150641353 442738298 216564584 801567023 330972057 665297823 407624159 851710740 420519829 514971542 437354723 999221061 257701253 546968518 111576988 798501408 180199373 550310377 362284024 872730758 134552731 420343441 397210517 405771189 280345796 737734446 469316867 597022664 240778762 304978112 129087890 958287584 718748338 880236624 802257443 954699961 32163026 686552590 501647634 943111904 931307892 966366537 814699952 950489652 322177595 781419306 642866506 702007451 425595307 729694150 392164240 965574434 497689218 632869637 292621391 440552238 3734921 352548259 156253394 972361726 264054473 729731955 719274403 933808244 551220130 713085885 202565603 418721894 147599081 728251306 286574188 392189356 184065492 238859337 106618082 143997998 19375385 987972291 151714744 238144157 26351929 922379549 325788592 855808380 582820115 729173561 373014012 878047680 366177148 617127844 128127292 353208915 123561052 528982673 286324898 541953812 72789908 102761678 50233715 804359936 570093639 692678189 129090480 604609717 479896288 977116671 62283676 295551566 245323225 669051306 17630966 301631109 73777654 417720778 2359954 105173477 101014384 283280575 17591407 181733575 61429498 936379940 136415906 429551437 75334338 230233100 209536334 949087760 255658339 772586132 313946937 703019245 464541377 931705283 264081575 942824892 763834273 929806624 339851832 851546073 741666797 906842584 611421516 952640375 423881298 519304391 137149028 614096499 294166099 973645681 699726929 737242529 135281766 555821982 223265385 554053212 451247410 797310260 74530206 530401703 302791270 626587070 28868565 649195979 614638333 882348419 233196779 486424216 414185902 425415726 52805133 670166572 512564172 545955315 171237193 489306396 16840647 955903968 761770280 964416755 903803251 995430758 327368883 913891697 382667753 944726808 491490262 752242441 482646343 846528685 155723268 730749571 152611463 774359486 322947533 798539623 395260934 553379499 69786830 251952249 19093720 685861748 499123746 860571556 317700990 624069958 253757324 605170665 527233963 665028629 199222198 228024946 53800729 904146194 348985805 924942793 212242197 261343814 17501075 656118697 447309839 776516940 642175840 830816957 464672737 784853069 114387288 702567263 264168495 988925997 670347481 765404605 411436771 871925501 328098919 523799838 1700483 235920018 130130986 164727823 28950189 499687906 455349657 570716999 538477252 834428341 183627599 616812035 203204013 471543266 232591092 580110124 562554104 887417841 827189797 923408065 62225283 767721150 45443626 261675268 196007831 223652735 163253406 457117673 96735016 122942624 111842363 938745845 750424458 934809804 664168520 808680747 560148810 568301494 497441637 855975261 637387330 716291323 529798654 642085199 144052690 599932374 402714742 927034529 268992992 601123548 75367414 609951637 588519156 900059635 720063854 982434679 607690544 906429857 666980339 902340258 770099329 854437127 578799031 914604746 602724035 969089102 348786739 738091826 480398824 970713865 829831334 852138072 778347946 825106433 382634777 917854923 866885819 906642472 391982334 716181594 649736986 895241851 671416251 881825970 303586676 877345362 7119118 943159068 421640385 957013702 692718113 957537311 714110721 853072222 409333510 623181283 330173454 643439674 100613361 219866194 138884876 879133724 145774869 597925760 231914934 803269461 682563611 791748526 165357355 672371370 382355000 495208171 177446181 282472821 133088724 620615347 351316950 563397836 119041542 150308179 70079972 224964270 167805033 708266256 677515606 963590032 222174509 275762051 223473838 536408074 265720066 293144367 125546088 487892807 87261789 861355425 308270865 962691099 103784256 493873421 107779925 628541344 5160136 422243148 415110396 569426463 277579482 829799572 257082933 861013830 162505408 626631909 180040420 315448049 5320248 564190809 127647320 273609139 5329487 204084932 196522483 494219504 101163062 519326789 178614654 770745999 680347583 754837149 212580557 946615449 603475298 876248026 270599855 815260743 415709152 478628144 371794022 710799710 292316915 941570404 574982183 680580191 613924325 766446000 747952833 866804340 294653983 653391785 518760132 582883202 132080289 185000764 176730827 865150104 307442807 518640751 469201243 476629704 412650540 533926356 48462854 451361472 269838927 270776180 12659070 641697388 91793931 130827295 82518413 867412634 609686944 709249030 363797134 535917174 530703973 781333030 726054972 745844219 456548137 904928579 168016734 308801376 120638349 455550113 438824795 778465918 474992298 659709236 173372412 678698803 542811163 762664718 361218716 687266536 139755574 222881421 15977016 36001536 25569373 574215629 207660480 701290608 488097959 677514259 555442240 751405641 8182905 57631697 39805618 544328399 447405 798665442 109488578 891346810 331327061 736622031 461864713 474511686 438476848 998164802 41997565 104014139 26706744 697819469 175561897 681136148 251283370 633436875 589183518 920082828 106201477 517170018 9848543 195456597 86659270 998359895 64348898 708921692 299939559 552198056 455800482 692198677 382419537 457110454 60756460 338781325 160556018 575878359 331066516 722717931 578294019 648657388 303793324 736499161 678082127 985983076 223736290 659475292 370316885 432479261 1851964 209060494 80837233 899565488 467855218 908086266 771454997 919777662 787051155 818186963 147828804 779347955 639869242 883052652 814536417 983950679 800510904 850794517 39268839 999764592 432194865 777694417 499152251 647639844 402307023 570374732 242014820 590413467 55394953 666936139 72408018 947348091 824344826 975471580 913968172 929136477 335290944 346744455 58823441 629665579 313885928 609013217 25847741 415432172 365479072 412038921 177169555 978699830 651261853 660007406 127450746 938480854 826057047 886202318 170662560 914960649 503165150 710549653 164464550 473015782 139793415 866977393 705299715 848759470 518984099 765618724 452041678 958037019 927491186 928636092 763562526 763947865 642977467 766257566 205546347 653549800 211922911 319746412 256441033 315538543 9046338 353088473 199381652 536740990 415156557 912490937 99158636 651197480 547350150 727203894 349326990 451901061 430353184 845395942 324942185 613085982 107742117 760438253 718933519 931224186 298021181 719789652 686527391 857485130 570995529 703322393 690947997 841304734 588459633 716288915 408926204 833865326 577289369 935839806 896304151 924566361 920647502 943930778 866640176 946187807 72895071 999570826 837644066 853601331 197053864 345100422 39072222 608916470 170356796 265610708 234144849 615838152 59429088 271790192 213997613 987122967 784860479 946850865 137099066 721460069 690273662 979422324 596049593 714680583 465453584 658151416 532660921 942022250 585636464 801645554 73801129 317354087 258080209 453349318 339320597 807228081 622631156 958894312 427869661 514443437 213671424 391465292 140446991 509720390 62631511 422003155 473084 750114860 310964510 765802860 116468930 713336376 240254670 386810392 86140732 506994465 73162545 500400849 118103683 487698489 9043880 163775916 140766310 359173566 147781494 203552402 140590013 211613374 58062088 458158447 48532314 194941624 89913125 572189268 180977143 325989056 52199178 257923472 175692349 662110844 430035857 898521284 125323791 649083554 40892983 756649474 58261489 437262977 59102638 825976708 662579887 779246508 723217255 924328309 597704955 792947045 576233599 917105049 395728114 742998025 327389031 500223902 230895158 681308270 116141694 493480543 285960708 497732081 421254430 730274833 6698009 61257010 17679430 364759570 152802713 472188928 45243897 119030714 23739663 62083538 48749091 564220121 258629192 273508191 203697994 479723589 259199778 973868414 520184591 737935207 383152131 533300013 510185622 963334415 491669753 578597714 290117872 854118854 500235030 985874888 391722456 494966799 283567722 495375494 296114874 788895844 764804218 947804790 139243869 865125878 439800174 778967891 438755381 687320581 63785477 879931406 608264801 927434966 704864640 947733504 305520480 502588391 455536130 692891965 553136944 665828756 403965978 514891555 424226554 906547003 492286475 838735375 626677025 659067382 265289380 765038796 439678906 548256761 321580170 415088132 224911284 714480885 17204272 297997882 271784200 294250094 228368894 501823485 456005036 832406529 272495549 785172255 521007619 816904932 758931612 960038161 275978666 710195243 259008180 288531979 178710222 195016817 61401918 555624927 151482125 486793536 215552368 978730545 90895945 953789208 15196045 33328403 12898570 614036001 243707037 607730869 157516540 923955506 180514493 193324267 104023617 152286920 36480923 514653831 215080177 244213928 58952413 920887572 388668735 484870663 429166371 704001123 49241251 245498790 69927464 301134842 125703529 722579154 14664205 345524541 300496300 742299921 514007870 638410099 529154419 619765784 327970000 477409075 48218605 638782003 161673073 283215023 154019215 492567582 116011764 798884606 576969956 629083955 418351982 468150350 143959540 291559224 86051432 129886501 87409651 937550010 660987960 854644750 378225734 916760916 77182208 870753496 577588630 721010609 86347296 206076363 105955874 967687447 210847153 390316511 308304591 379740157 72927149 591661570 129298503 134450663 88064764 679181218 182046837 763431728 35333780 908435323 673975880 749869147 7745543 485819613 1075255 439362005 143811414 576446578 246101717 248424264 12046741 889793069 758351218 972792194 519248539 875596064 595746121 687822501 417224311 562118216 308791305 939318213 531878377 677530599 484643014 830980521 135935946 545900476 325042218 599737678 130719139 942261117 89247603 893509059 454384128 731155350 390986209 672262534 155211725 592777525 347089313 376302847 185982258 772950177 355114015 625255003 415275890 635833209 1495016 736117024 335314022 674810225 325441474 832155451 41711850 536358679 172352204 951676019 555431194 762685548 126853994 172108594 48833117 519716690 390775839 974138223 687825572 928906722 444164504 846006260 771032607 929163574 754110961 834632501 47679307 815080129 43823404 814245707 741855736 916742412 608705125 877059464 756080416 919620048 490438106 769727838 658406271 852315689 215654471 728728161 108252736 870712277 485476734 977750667 819028308 873321415 714884980 939074330 728359217 996140562 574769475 870769938 870460589 939491408 850928962 939608240 607381881 724109204 70408438 440846293 81498449 662909721 180760307 929399863 159561869 647965719 153675455 475052405 219820266 900368213 702192380 958710161 55569896 676958188 26337865 204168194 164746200 936812392 628675438 883532276 1974759 202627861 58157206 545016343 89774932 908169495 409535458 436420085 334389690 448319059 193729888 997796101 897991569 978102402 542154882 699758181 226400636 787731587 610688750 666078443 432362153 916893018 279466794 470850921 364907839 663782440 128060794 443090836 125541185 564838718 345629838 704606772 417714916 476538644 302834623 757223042 430335084 692282592 20877167 903004634 523533189 591534610 162279118 371419689 5336506 61711294 49485692 180920870 115315291 850735339 300266152 630456021 310575818 376076456 188143640 841486089 211797428 765695683 275131827 657135930 286530022 413128288 365393120 961958167 610310979 718896456 439299349 553854779 115867328 833122446 263718980 583400450 445890199 614559230 588216530 602494567 94999204 209176162 168101683 513013259 256179870 437441055 282603848 384087822 139949287 943520389 4694010 633217719 601344064 789396304 284175020 517489611 272188795 427113066 55733761 171125733 356365 620834376 456505629 560335642 3435476 249645274 105579090 603569693 384475687 629997701 138047116 223843629 198396182 633792744 555127093 981048646 273235718 877494895 783089746 854736207 347597492 400770807 231067760 394068180 193439863 352556543 151306038 643078955 321783959 836438890 143454083 252590686 225548970 840495829 767603075 926721768 327108559 591666404 130436433 764447728 276086428 374766216 11461668 81649747 28772889 592601620 543598654 588235292 163257009 986243711 392197880 759096798 256453328 676470685 153433050 984279913 667501595 860937527 140197181 551099123 61918154 680663535 448964000 531260545 471094339 646087702 424589166 443962585 424951242 892411151 741409643 860523422 207964304 803754029 229882987 418748558 6761596 358150117 325622263 906268607 140387700 212988274 158745975 814652056 87944418 837396531 729269228 853739851 608443679 745007361 534636481 736226014 92417893 182966570 5658074 169519110 137761429 692641432 113421708 805465467 590634529 910776888 173798249 563096254 134749992 646327185 442014288 610670857 204282307 441193426 177659878 239175590 31077848 31206304 10016925 413744099 24521324 632198947 534639879 711572676 143282973 250186187 146419266 579451971 61956949 113839794 75203789 200505256 17980565 555387934 59576599 545198029 444053615 513854756 412017540 528738428 472812986 681719287 239107879 460972047 48872955 859613396 563837451 977391479 167783626 216456537 191281921 604264000 603855390 900664083 378802308 583985934 105689234 521919027 367488280 562749900 284876355 966516975 886352491 980639446 42449236 253668801 199009126 694206337 294684631 348882446 303900405 485002809 288288910 649431537 334894230 444068461 152801260 252139861 28264246 981931764 562010098 661189275 201026763 938967374 463649529 911712821 422165809 892989135 473743726 806601514 7802931 894708883 393836865 635192135 550336098 577977488 229216888 672849996 215888826 507966819 230635683 805746670 492730647 798647577 505884368 902559490 210823699 552391955 191006094 837047097 625051499 748023552 509361623 930117484 142709598 650251054 219277783 385920262 218963103 552788203 513614817 604315646 491138612 909873147 839606280 962072199 261646895 335006406 68529589 231342273 14249450 757367627 688362570 928605922 790245035 915120124 830731830 964792932 682804340 847582160 224760070 356650907 129397547 679150960 494653462 813649600 127657863 878892909 843024326 865055482 657933609 759247346 625262642 950421321 98883235 294413421 228894889 727223638 329729521 884786671 814185222 964653309 168610442 648703526 472010150 800367850 669760028 838658178 513913094 962358761 582370840 785709482 679829637 864718537 841401079 897845587 603112865 659399538 328114556 892480714 452544391 812629936 598779512 914921815 216650654 660440901 404411790 852855428 665358460 767139610 41712854 464010758 184730077 516506068 13016135 867248806 579888987 785727369 497861020 563671083 381468447 570563246 31638310 398551644 176467221 814293614 576031000 694750682 587183380 670081687 667177274 865568424 832536952 958865998 771564297 819198545 546624923 621212058 320722194 957282888 503719110 783933976 458000228 688525468 396199669 984920708 348910285 662845919 232539178 853992174 772091868 970079312 296555028 887051538 206061774 640150053 228466589 802783139 293184650 804367552 615356670 980036402 711257688 836028516 277017923 990947143 733305009 824693947 733378798 963386861 374043722 962610937 605530418 758791786 525820680 670965564 422735962 502541172 341814537 557057674 187348393 964342867 358139908 579445082 196654741 255503187 109662465 492765351 297460203 679424387 314296253 922171592 93463197 998775383 927457591 946293409 722873694 808483198 45049380 193433754 187989289 219116127 183825445 530796300 433297346 979552936 734824741 777114883 288467655 701423493 517361863 741921783 221174529 753975682 690819261 849942861 249577187 360237904 14720202 272043717 152252822 869250500 87786173 105331381 46248893 855030740 622504489 917134148 313244597 330958465 297527264 691742575 684256586 707440737 537186855 963553345 848161313 937217295 574603728 925735200 541329013 842795056 679604519 836282673 191975982 821633708 657258671 879374710 566194261 826622253 765652437 973404435 955118721 965777260 609902070 626757226 363803597 889946865 500558877 585284521 116517851 432607968 237405102 955793006 725547941 795369540 128145501 913372923 461880588 662252316 152137139 380191469 181419200 436242274 341737316 742892647 442109216 848933349 592785056 968063599 991058 422079120 20638707 409321885 83613236 333479999 18217162 221285296 136040052 531429494 389084649 945835819 884674662 992068016 625953480 964223986 198871704 784264980 622967648 925901675 847532626 849693288 48152874 739593565 352291805 797749997 262487322 911869670 906250527 977904942 426368191 581071367 509361582 731436158 254778741 437699658 41689846 895166458 712205363 876422403 610339061 827791664 235357336 913722972 50791689 338920594 227347018 513768984 354440775 617334925 354146429 914298196 729691844 818230615 273599923 707007805 481863359 909743458 394895340 397517083 135196438 339666310 136380301 850175868 529982179 729714570 456336805 822104957 651016565 751388177 358042324 688631141 16762452 765034049 417602307 783290799 177197910 581340253 76103945 322373667 300286138 581048113 191737045 810429938 459983404 547259709 481737060 484954233 289400907 758872630 693566477 714338684 104348185 109792291 8574495 514818717 199881863 496219417 171323973 244488022 176546826 910808087 192666120 335581356 144532908 484050016 327565728 846316747 196960659 283261259 162618664 303696270 119729902 156498682 5247635 391081769 110473656 215003831 145495515 500168640 39030022 504735422 229861234 466893288 399553587 546135130 81209894 537530980 187422815 850114054 846472325 850340878 12818610 281362844 120332088 413836488 169361532 940690869 233608428 426526504 42756317 199135080 148958779 435737769 153773401 780955887 234096386 795010161 663242491 670840842 441628966 753440944 152991808 300266651 202520363 475034928 310637282 587416605 209037075 881590943 198290233 890482499 511810896 873964729 143447686 908358938 761091496 787114326 550953934 936283334 267014942 555883516 347014673 738084431 252440460 361913312 139114657 266423219 98664127 790021263 447168391 650261816 433430401 670825394 670783420 840372650 766892797 973517544 713993906 840736050 332898315 482296145 429865060 940452380 866885406 962011428 914053953 927906582 651190560 763048722 264591374 875586576 439519112 691778241 171840541 518554827 276988653 426524729 300643112 358037591 217965834 405206908 19910090 992467438 741560313 920215891 28273717 796342202 580658895 616841444 592265396 612322224 205725978 720958511 314454907 925648782 114797760 850471353 453296258 763871343 292462068 426342727 21809392 660242463 297800446 890030659 729874105 787319922 146349193 559131090 199399786 320304369 20155446 529850190 305164526 530274977 128572289 465923475 119453020 665014267 319087125 477882644 454452202 734820215 150922254 296005795 128734263 327075172 249582257 276790527 167880698 922092662 87912428 338166275 38131010 477340762 317565664 917673762 677802829 905765743 343239571 663044987 108655858 879602735 417579014 975793204 872786351 936484626 92497607 126861068 17251533 202445305 198220869 601958588 5375268 135277768 29977951 355493143 83721072 233025004 15353377 650477529 422030446 602026575 121871627 933822798 222678643 895887610 82070289 862561478 392712673 853281620 645554596 996362928 224019331 974300381 541950263 897127086 298679972 551681645 180030968 521590261 472011144 876309870 209308971 389477550 211072464 561838727 278753483 710541166 140099386 175357223 23268855 65498269 36961646 899978399 160116580 490843673 468738323 905112575 830359914 944049067 69422494 137581039 61119264 227835500 29569660 362676079 282501443 639066304 569002881 972420915 194113373 611678143 87783735 688122673 428029525 843779049 198485810 680907346 521820154 948504932 868388870 892953663 164613834 581039098 21606811 363681039 80877193 774815271 314447617 485148940 167935029 279336306 156060029 199563269 8323061 856136678 731833659 958638561 287417763 822322138 778251215 943194173 398366409 560070572 450661574 756626314 189234313 828245349 320862927 659130710 191116990 621366842 478400672 621823470 560673365 679940024 511918958 697151571 326033148 808490840 698623895 982624159 786450207 994984772 13918620 19164373 4442212 7359655 4363091 59930732 28916408 244093325 151707585 892343928 223088839 381174279 15767737 641005390 528857261 983344357 525195020 588334296 310306758 509791004 216843228 997712015 993821652 996460782 311645216 948725544 203265519 423577934 316494683 818546611 289053253 629118693 384017432 924807375 727532096 866582222 1826073 744104778 580026002 903812253 495953006 891220684 291080158 464919011 413641772 558129440 183562141 245608028 94371891 779524127 596282945 845456983 769458266 986316493 483555891 523529594 186460364 693563369 409614490 943122038 805457746 921718930 876707966 975766147 239453497 311703409 224718345 362694920 160209308 334095515 150737825 448035369 102293865 289492419 87863847 264915925 249914033 614784109 321366898 774112173 755176878 782069804 1907203 330540697 46531666 619193881 210010593 875201761 745312660 815310156 319696408 592730827 148889148 776446816 149874856 954521608 937170627 993895395 511440475 924585322 856210247 874812517 637517544 979131594 92105195 465440846 330965502 602804847 51429786 361922102 175016477 711564683 558975031 729606621 531496882 634286865 320934371 649898637 335972574 810656393 691573296 811971880 796057456 974819228 329784430 805767543 354245587 518830195 337605516 882902269 252210534 988942914 151628318 627245403 162505462 767515419 106487291 471207113 32900169 275502136 194342022 880210832 156959912 576365162 18787419 685229017 101289809 251545870 46486453 665999577 80862526 143072350 73328315 457075631 148618078 639874830 119556728 739166611 156465198 576762118 521264744 726325578 433687180 625792340 573640304 893265851 161337392 239483495 174266804 973839344 581951691 884707426 127955415 998258243 284645766 629428509 15460618 465355882 412664110 717699132 230353260 381035283 21817758 24422221 3135387 177248819 152115646 170722586 32204149 572395969 112008128 900646476 786110244 892923298 792482953 953798488 210283269 886544445 296891198 774513810 213034907 918640861 698465734 811043713 94369267 203847355 153555729 232483405 27791004 360194559 103866704 147104352 133621774 756930819 506931928 623565548 481516179 838555260 674427943 869756283 735460300 825973570 660979273 817599093 219981329 329361790 160026277 431827553 111767808 839110444 528052567 806336070 101436537 556749118 264888891 311638922 163790028 174402198 74906092 267331172 27807391 378011725 33497272 297726889 215883212 735707735 143903114 516715221 187333320 714923870 226730522 383177170 374293477 757212522 265485489 354623050 170634125 479520912 387911424 511186336 471782742 693668298 588360544 661429150 402753328 966293880 680734837 915050820 185731749 873993535 374168290 899271781 593041200 720696260 327468709 434732283 419180865 498852573 59233921 273638176 158930513 759194262 70790403 634264795 335786573 982116606 721906238 960253840 284713433 621264029 530616766 644416609 458447311 913084850 3571027 173055167 41638855 129388806 43675688 734255140 561143780 861124961 395829073 520610175 309604008 889441470 662915059 757355897 750379450 906982947 67885488 69459928 68536675 241280708 40042198 761857939 751673321 808956003 731421117 769305966 261402007 687040828 590423505 987195135 726887152 944803595 932777313 961708733 404280089 896821448 596613061 892536847 566756388 771139237 666196789 839806552 664546405 886822838 738077358 881488158 768179049 810006261 365172770 564218987 316561305 978869260 762723504 911223913 581847449 895316210 344067086 445875391 223152987 236326083 115921651 576374358 534731148 846190136 371196588 410065479 390577187 987653744 388955633 972150226 947147595 975046790 162103011 766888006 124515532 395410937 363849907 693436197 417673777 970096788 299182652 521516363 345676180 714245653 46247184 529196701 199090975 243537715 200805476 958444337 557149298 679732269 500911846 952048125 33612320 637434526 153292303 919427379 341501893 569971974 469139343 690734101 53330435 319348243 41966114 659135467 467727554 998944403 890741331 943456835 522694306 693916451 477269535 994342057 35120514 834376319 543332542 812990330 546482586 566880066 438195210 765620065 702064528 992964153 309277384 549554391 310949411 550416543 416281504 957315256 523255518 582861594 274951425 399166749 278922396 364049457 116936679 497970033 48173773 318871024 137315075 429041499 225439986 579843242 129762938 980658734 288673606 565374515 116304321 804704513 667267973 849483103 561549027 575160507 6163141 481064808 258253129 725458682 286528462 428986494 403132483 526766894 78475347 353786184 61782059 733761806 20546975 856496181 105358788 175747908 78351597 893625423 705892354 818622185 403361122 707337746 513048460 996542699 569019137 600895338 228454936 948946886 61994195 948855493 392644019 659491738 645415830 703029917 691414880 822126787 420963536 759815929 555307211 617151643 45513977 126567519 9794175 285794515 77029627 823220484 795983682 817953669 206982680 856189568 737605603 856107219 838407118 986232171 882204460 983893123 308238710 368603038 102260896 280933097 18405973 617454769 579210735 590362020 502182861 536817251 512604590 538010043 9639980 233097818 194727785 757874535 425752839 545419548 122115383 634614973 557130930 699949476 488101091 817216511 690993326 896932593 134944197 486412243 289316495 881939709 219279716 268313878 217544722 494867056 177121675 197870473 120086926 553610718 403509298 875048557 699367511 955636979 598168079 992459379 26212688 58782395 55934826 422923437 378370056 487648708 466697235 713451994 52406882 224827856 47575762 899269396 368984634 405640497 115749755 762099467 201218109 902942695 730444800 745999177 263090789 380515323 315719638 675604383 494183883 883636690 218610496 643109382 49181711 564389884 68815020 641111651 389404920 692402414 688887367 968962857 894629069 989396977 561896655 915220648 636689622 781380811 54731821 615892734 263398599 361935671 93308535 997156717 395363682 971670582 189809956 264824875 79780527 845670174 19299929 531630474 469499682 961168293 137101259 293534451 268753493 751198698 312274970 357197774 286457117 610939364 504757404 935919621 932797290 960363198 621779339 688779379 10749135 54710629 28395616 213030142 18460621 443597398 315219945 920901864 688423326 697962976 546220854 774730255 260376454 702200598 69013782 858252352 736503355 920330537 799951499 994700450 273039380 352140126 332693874 657628994 329741684 595682339 256694351 317182970 67647957 401747690 10894353 861727032 536647756 650466970 630086666 785760037 442184668 841950960 367414249 624268854 202487337 330130166 74338773 232006545 214168687 604973419 229548300 412845227 284471633 838376029 569315456 772727740 641579501 843437821 394112621 450433326 68763298 429925291 133569917 279125592 147266360 628145670 44756166 609352995 347606700 982524557 945952706 996443398 676676659 798968521 142056198 905147368 785188088 877121293 275628746 845784980 105046270 856042466 851271315 965934246 404252389 720138442 660690986 973587985 167253568 647805244 120979386 278065938 122221071 379072298 94776217 717785527 33971366 482362102 457722145 552394277 47809607 713936409 91769480 567754655 393063900 682877888 672507009 925144955 658253997 929577612 688027808 765186842 694595352 707558276 497055684 502690242 110475305 577620729 458238842 978575802 740047328 982521516 171779104 700706164 14940222 951198410 684716727 830125439 642186917 875839052 742549144 747259041 296073324 880956725 789635167 910543744 23132589 38470810 25233227 363318834 346528431 968849263 587975108 830251761 744835673 911489853 188154565 229344085 219094700 812889232 383796401 849090473 443347989 709195647 230846506 432714132 199577333 676866865 546156384 908467121 311047819 331835840 289633413 913120215 779767751 918224152 233672482 857722362 505810107 591699739 221833028 242128079 218941142 256254852 152310554 228526372 137511613 558973922 543386667 823314545 186926680 373777144 128072387 537330997 129264633 217320705 183855562 338742780 118106840 158986312 8202755 978360014 513661195 551919108 69694340 921016342 440886176 503786050 139917571 669961716 45221822 440285181 27674910 89838785 17446353 560178250 246366537 781573260 371499217 983630405 526514381 859441820 8789720 211556919 162150496 926878227 49031749 527798302 510485667 794046728 551360492 806387638 661978690 977414807 624596468 961337482 699132029 829637014 103416559 944244615 247126480 251775378 58336285 129610820 50203663 248797307 139602862 554380128 318414354 337236392 139370263 700349799 526307829 551207218 465361852 991116786 557335375 670745717 616403872 980464659 263324697 308452837 299601568 887827973 611272728 624449415 564126885 846823019 160131996 747031463 596933790 802782726 220453345 992263856 822564414 981534646 338419513 450511575 256288604 928463608 426669469 824542867 743444658 892157893 108482339 313632176 227428668 745470163 605414003 837679476 505123910 969718965 878408906 902901491 687128587 704878715 549928175 766903545 136376604 831861343 292149559 669617888 482483451 804556666 324610617 850328349 136110382 329430903 101933879 437109854 171598184 393561360 384273939 410266916 19300745 852156040 267935959 316088420 134715991 199758177 184628161 690452053 610213279 887257544 178697871 686451840 294891060 841192013 198348130 526465855 139932723 253177829 154912085 492017410 246355140 351903078 51021630 306452504 133212667 299547357 56443532 602025414 409931766 836722818 61414071 208592124 84651716 678887442 46336180 118541095 106726841 474118622 243272036 494112248 396793853 923029873 202662325 669324962 525695180 864078180 449302253 833171665 94766719 234279528 1865298 185327359 78770979 256038953 105550240 436929106 372560282 845434462 566372267 924176736 556025458 704948858 14296709 368702592 293678508 858058795 199196960 885464937 307578007 911991143 509455183 675680840 203409026 440079687 68559515 777716741 191686286 538699633 27118961 331166078 200751653 300211265 228730274 478405822 282832154 555793857 471540865 564173336 238134378 892190699 201198975 883056370 543215288 998664186 121600206 920372963 536345242 697580257 654994437 756799720 332720221 793414497 190656808 684334930 126647234 788528518 714359166 934498348 832273174 875983787 519294804 701869899 175474640 516885266 4253037 74162230 69147864 517793005 476167416 571538111 278717314 889520344 44775999 921125908 826972786 868406978 701219890 847840684 689726649 971446111 796821904 897485993 819327580 973735754 467009918 794407380 356706862 728302284 496440986 991209851 523509423 660041374 463762587 807554712 238255480 911701684 299470500 479691769 126343878 304301735 119840526 625969840 618624908 990929258 199938695 518583916 198454500 841178137 671273666 927355928 349085130 522506762 491450990 898953711 879365583 980639017 473423911 520810148 279538939 491530217 303548669 508840987 438344177 911684830 668617347 693795636 19774420 834795788 155605491 812903634 758993689 935518491 770992706 898049738 555020446 895896811 471392465 507410688 309226118 977759430 681261254 962974149 247852523 765022781 89956633 353675491 81657848 572560189 320702452 664882745 69536936 624297545 597818451 615703387 271832226 329610979 165426546 868721996 699483917 878408329 599150474 912267416 35370562 968063283 44113560 862750429 746788280 859740341 263927498 660220789 192354254 271826411 146224557 204524463 110930562 242289234 74696946 945041296 124878834 829073444 8200692 223793153 181814750 208777262 153888048 775326552 2960037 271636512 55038242 507610408 391275121 445074152 42383010 565534339 296580091 485502086 149172124 185227925 5028859 45248533 39469471 802196221 134284961 994357657 54866988 652008498 190016199 849181748 594370490 611596638 101992197 322473656 208412468 725339492 282887918 985066526 370867840 561009554 76291014 720433300 431715788 463795314 239998983 777962128 566538444 861847722 73056323 115169354 36889043 136271224 119528898 851209785 315709627 789383830 581765011 708835309 478542162 824968053 612536354 626937592 308367922 394980536 68593950 625892896 506805476 748318823 322050866 442949538 390026178 990011598 971411788 999048892 845177982 932802601 682382531 795617913 755263717 846771511 216940214 929685492 842297905 882664322 209188420 427264704 278177407 329612777 223652267 830502757 455094025 760586469 223532039 339691217 8989442 912662683 463864971 607806001 381384314 460576046 354445440 624243428 527571110 852471975 349530297 937819185 818722434 964895335 147873722 456069436 27399399 663302655 150770533 941590845 891698916 979213452 314414634 712862329 87441902 687531250 90453071 430615864 281601504 431401898 244969613 299251073 214287478 909556972 302399184 668623094 171977737 239241805 94675488 942452283 636842588 938736689 77917415 680343269 541356700 614986802 604575038 783034156 408319450 714028308 231439908 909955852 653299749 712159478 139892320 333297260 156946747 946511051 52623408 57813428 54577616 634421971 251167247 483820855 11156917 84472723 15936799 657338869 566992567 637741707 501442544 756038783 588023666 866505234 191793547 866633723 373866831 578069812 488134908 997583614 563850715 704173567 524759947 885724442 451428139 718714015 578021852 719416932 284545219 986180833 70282618 681008112 191267759 412666343 114787831 207981510 51220924 80088576 77868842 722564494 567007656 967261383 767690798 788721294 476924881 641664040 501408051 629143219 398837847 484461054 26782547 615866179 84100041 675351414 128191307 772245370 107212139 186109537 122317597 673961904 496294081 762969874 85533451 521102003 84081631 623956824 561095643 821281969 397030957 491851265 114864587 722880685 616862705 891475654 343210470 668543104 376082199 447184615 434206241 814347104 439484795 693009544 661991800 812909271 281408054 561909861 522592658 532389346 394533354 637010379 458831726 812863787 371190351 697330408 269062419 452691035 296749457 650199798 255912942 357610968 128152538 761394002 677887420 830901982 262223313 295312432 108059284 444527474 182927739 740882864 284243021 363081758 221383876 745036640 129929971 955508367 318816135 685229375 266732338 274599825 187920253 690938423 367439993 474750186 355715831 831023503 610484657 949948306 583931687 664361430 340866203 442867748 104302812 281837942 22512798 309048120 248807603 439230408 94183636 244276093 40060032 981143627 377881436 515524400 341246080 809423374 714281167 988885603 16349250 829421963 366953836 706930858 253094616 994673367 106471023 167878322 161503512 462765743 358308559 569205534 53510126 613513018 99497869 909004402 453167612 726869986 676199254 716196981 180101096 916083136 89197357 306328943 282287437 724461569 481457566 801710904 184352171 808342955 222930535 789286656 696619882 983843150 955084597 991683167 105919054 276909106 92085086 994970053 111225972 214911193 138235778 907987075 630155035 738543450 553278313 882059942 612232172 928989370 602601659 949243230 694538431 910341470 538139288 887807740 387656539 628410212 104125017 304600088 91422174 214826687 162404447 845540457 645120061 839705070 102540155 899524114 20252864 157791164 51133811 687369276 495788353 748726051 341109047 714582632 251777661 603246337 338997050 616484395 235254256 953790652 676117529 681641560 597604003 636996792 604382747 836262443 681585274 934641781 662034780 961553094 452732094 669918294 634708253 665474587 20885977 945682468 385253826 589513794 79106675 358270209 331597081 595014309 212554674 950964043 102123543 526177451 183162676 306366533 152083736 526835635 302839179 949631686 742829343 771526478 550541333 880969868 187327625 396532516 5388978 201638671 135105497 608716918 386392516 703779702 361865178 753716202 693871838 979466447 446132079 606266152 24227016 741771409 692444323 702716767 614341620 881121960 163701590 597248250 568527268 961858934 373898241 398196138 193470421 679787976 295242947 559040534 377310075 631265082 213666079 473885124 133018598 785503296 459847698 724592717 166686941 549275288 28295515 54079585 37177460 785269340 93373756 240594633 219883987 953703508 348726469 538077203 11072670 963023307 160318874 400789115 229561234 688767515 481518985 515604116 420036590 580404157 170554303 509134170 229341869 972798592 942067940 989250696 872112404 930866321 338940261 350386156 246999599 793847413 282809629 408217447 130709163 315379243 186144158 983734422 237090133 271082140 38744128 553300844 26693957 907902363 711102128 730715080 568990944 871526766 59128083 478776396 416208132 716955598 100943905 102867653 36190693 666485355 448146704 570888336 378658706 501140362 463129887 928676555 713136851 734517496 484720000 775419329 659915167 954745709 544725026 917375741 466138360 644682453 541452141 980304459 464101208 876664498 86203270 530650980 139821394 206420130 188019653 483236116 8902247 765758170 86068204 627755764 430890499 677062331 173206047 637226513 572404475 860729637 245115717 932263718 247376794 270600485 252618682 532196730 9241522 421840822 258818679 383930240 172222971 471865860 446881910 906564686 313913353 535066109 132908031 314882896 67656454 448692774 289866935 294689763 196438028 380295984 221386419 860735052 545935586 614268714 563337337 705944445 214839800 832922503 621006560 829719727 505000892 693514597 376458404 714900191 25325797 237887709 63087762 534125783 382902447 416985723 215758274 726485305 475261650 482538467 195256276 663608854 396185593 461865909 284874857 695411806 518666559 661748482 641734383 744648908 711670074 759299587 685557218 790862119 18074947 500224682 256338643 436653160 72884965 573728325 253737008 308581925 20244647 526728157 483451469 699717960 197202552 832750197 105431802 952929988 933402984 953711922 857978610 893809256 243089012 747164264 499915247 704716697 175974176 269245274 91694547 218758018 70704685 245217328 108489465 356244351 13893860 970296532 710886297 914684860 168918162 766172954 512608606 679509772 233031456 712048951 175935121 337045054 228761477 940702105 932428028 958453780 102031773 769960553 150387614 798672269 17863558 838154339 138180369 740416154 383091161 991198638 5586550 209915296 24150601 982708450 183161256 573761396 303996269 441192075 407598152 974940455 905105491 916173147 283076106 283819495 132573262 618882247 209134278 420780535 362639296 790557915 765328579 926750774 8575153 315097054 20985901 702285463 514894777 843520600 126070599 708744454 61361271 939653846 837448089 984795901 898236552 924656385 139215068 323807115 281311226 724621181 589367572 735857209 610332927 875717694 428530859 632509787 243426841 753935447 233204568 759548585 422509900 987673709 352977032 367612301 203851489 938920033 603859320 771683078 136669364 587357118 51632373 149447957 123397293 224253054 55631781 873983475 867024653 963352343 465637556 974011772 904782838 960364638 549591707 612515238 423027995 559896579 37215257 350845277 204738110 705004445 368687703 526160796 82578468 940989954 5841384 586987089 263570064 371930576 50295731 464300114 75254376 724317297 616275106 798983451 25386360 234655731 124896333 394070344 299847756 996226570 821801793 854710108 348985878 984129749 414842799 731057667 301819499 600753221 518969581 772729014 97501550 263327744 245187591 925517328 97167526 337898578 246442206 375377909 371146345 529957896 2151170 521125362 179858862 683207098 58836324 368803006 318350943 808667459 59939047 545016240 254851447 948250776 345577967 878721141 512262216 598337834 149603702 990973712 501607255 904577020 852071905 957703705 75158711 137912927 101296201 306036469 156477176 284576538 85795104 555559886 193240549 767537577 581217616 694782624 209079004 212418948 59111831 464354302 155535085 548089177 170912841 186853436 181537679 226923658 153882716 962290452 552380588 932409485 456989739 918211361 364722684 729410182 101657447 215186517 71180689 701838075 676226837 774329327 377544638 544588462 25179327 608792574 493300108 591682975 60986480 810296272 482807706 813569202 657291107 925108887 665923681 869334903 183465050 756065819 400058052 836972613 558287881 625011738 262530642 407287494 325336973 761702873 163970918 390135484 23753354 532845871 310664377 580667877 214661200 383484320 241909745 786712151 727666686 833667073 449122964 767491790 177421476 259391970 12272638 834908004 475001914 494025412 192967227 988334355 615636428 670096324 188645361 964649251 490560274 714086267 531128021 910527556 22009769 831080227 132227792 650988886 626439460 903112082 640603911 881501501 208212846 851261732 466892466 514188564 357203511 827670573 41898486 889705327 223001921 655068162 160443637 365447811 315197567 318336202 228575398 915852114 857313659 887010812 761688694 832665780 98825389 534187809 4576218 81951637 3270137 463981387 414511196 633694655 232429120 365103691 207950975 925126248 160863616 368077348 5863096 358012751 211315598 833560531 662724107 665500287 561836478 930023932 672976487 965535998 873858592 916972245 188871170 574351308 248325716 635570732 468399399 711076271 365921150 843143764 603618316 823773775 656636466 750735415 633207553 801869753 148419508 951748026 244568614 361831408 301663021 705679232 382472792 827757343 71561133 544865265 94846380 722459678 691299609 962588906 882746847 963324865 114681887 587995392 162233099 423546207 84479482 729069032 229309862 776741722 443654276 827685511 258842983 460773565 398090562 522632443 502744166 770138910 89617943 406295368 90500947 402894715 351483716 820157925 61593926 596658871 79436968 114595654 17935201 871058885 437001236 557023029 478451304 541218743 42876040 932951839 683540683 730293364 611987559 912658605 739381678 878558385 306954408 903253334 16654866 775568202 675309472 814677254 67252108 734363031 16308860 92503959 8288352 627129025 517314775 728403487 428631093 673011923 541804951 814417590 525588679 843861973 363227979 369191698 155761818 987808878 660175222 676707165 508524656 941254784 486687483 937217770 704688385 879015123 313319388 679758989 4856960 863969519 269169237 989949503 637976945 894929600 105141511 264262334 126998182 598989502 399909163 996206388 731822405 986699614 536520540 725655477 693325361 915529716 901973175 941472666 798277820 958468183 461926756 859843334 426245893 771058169 380908256 476783751 414500531 934829397 296311309 386531582 133774350 879699865 235098180 463433780 149994645 701830684 424950901 526344600 443943828 471813802 116975995 831881918 458218272 862358340 564842180 701109159 466915728 902866197 348331671 840281571 180552145 437656530 93869244 645912991 28908768 302478934 76100436 759907027 124828791 366912374 143923783 382259973 110626065 830122462 424652880 582195857 237831201 288777128 275327904 894892215 662595290 752434078 284882719 504980699 419580628 932523361 925584874 960640790 755611496 764158978 688138127 692728967 38527850 975346239 525698296 877929500 293635483 528765570 277604649 689077365 638286855 671294816 286884377 977587014 278527660 564183702 327126007 604523458 440001511 628282733 224873517 589444422 328331890 808654801 246281220 378796003 34908051 707258670 491852685 753451806 346249474 359561506 267079894 555020084 146311134 430438539 358258527 685432260 64208597 531297475 44936334 531983423 406998940 441404274 341900814 760864519 61874705 640677897 100505660 160090761 121893282 272265425 24525402 258094651 198128021 738962851 197988740 974922266 97933434 485178496 259216393 699220369 648941485 870864638 233141806 966081156 517172601 523484006 107096797 690743366 282144858 811979971 579733608 615756713 398771686 641023507 188354486 525739001 118711110 452221899 416535100 711478137 203257349 960249375 868280343 898965668 872367542 930406536 134799251 696879671 20008094 962635334 454758618 729472165 292841535 634481635 557998620 732738768 705185250 811005906 295472917 419454372 23848201 247075091 127393668 295115403 254366949 717245371 418270348 604937606 401679768 612064347 157089000 364245856 214217041 569194662 531587982 615326303 317819619 351388897 1717890 980563289 812796172 891964172 839460270 850043424 213636544 860456295 551156540 608154881 293802010 377027047 9223439 706166122 696174012 979893691 298730234 628140375 431265120 682415742 556217998 791060991 569236884 787047903 100025829 331424350 152741386 976707197 77040895 534236973 507433551 817260241 76951395 572427465 485370061 532184887 102215031 571991407 563431187 684286622 607749988 796403590 104995139 931641955 420391651 932047518 457929336 732806209 316635156 345805171 41387726 299999646 177937768 818090808 620548170 726986501 78382829 653953908 296189353 391034561 179378305 276889426 31489808 550571843 223165576 932923713 240738504 639581815 583669424 998624823 290375718 679430308 186222271 231809704 50071836 324817563 98439038 613893060 19984225 910507127 56562727 612609463 539616481 757572139 101029612 153288710 30256858 631358331 133449901 293590109 31630929 582340247 115059795 573288698 219409473 377329765 361737789 935004430 875222911 929919087 508024980 811147304 606097805 985630662 468875385 872292202 232549197 629525259 399314342 438729752 217641504 317913643 214072624 622185081 125238261 476961542 449173020 599329800 230076862 280883669 113582330 248477593 114068514 433113275 152439947 787257048 356898774 580268563 390536416 902748637 725977972 935684893 617682899 749597874 3672221 815391589 326147735 993829828 716126379 976317927 974098845 998487888 370960506 573831651 99868899 124000317 4545831 800284692 528317773 807100706 25437389 455283608 425767529 616360657 324445160 511381957 457418132 468399995 452331399 485409723 432202047 733879801 675685662 887055818 805237509 917770581 388441424 475011268 383604722 861689036 73032344 776249205 518159825 606178348 380310200 689221482 35949068 977684494 35560445 336804028 311013680 955194613 785768582 892728995 12611989 740858564 588479741 910212406 210239625 698452711 439089747 536317970 374160677 374162805 242335475 617428034 338006625 411849556 41506266 576852479 485572536 733510149 564417767 837237411 421602962 655031396 422195919 935453757 477227645 530554135 29130374 384354261 59483080 871988823 757373679 842626138 393539798 634711190 276991755 724689478 395679625 865993190 578668931 683269099 681537373 764260961 44789280 50335871 34203028 691452514 35308843 153376806 137790549 652072742 206549252 625326990 460980934 498023074 476184534 992505111 66088915 602885166 285250102 557623253 146219987 175134546 60792821 63495269 29624793 128094216 88858432 537737212 176419226 428543704 144515548 728935116 600618751 975444495 219238080 944595947 96254956 715836719 284341050 775137940 603628812 844719817 13075227 326518846 38591328 892775010 640158588 892557340 351554469 860065570 297355232 880839367 811019640 851055023 122231595 217934204 111383909 907059260 103359239 790371297 423932520 589312716 405442325 566238219 205298700 458441965 369093728 858940724 801000117 969968603 333215214 407728635 43926326 541907935 428303277 610912564 194959730 508797460 473966723 990605079 392491249 716634552 88015373 536071997 442110084 496706949 15928551 592136325 281930304 392648983 203298234 653807353 624342566 640167829 284877834 763139219 34244511 548198698 26582351 618761432 436633519 529502563 123389117 354308615 156244035 864724942 231211721 965576991 396936287 949122651 235186121 499448425 282230687 849892036 561115920 811610536 14350791 727300727 328777381 667471578 109892834 386016375 15493472 115758589 22661763 464092104 225247508 386777279 223700830 540405581 408024971 514827577 212958954 954315480 273960731 511897544 258353765 915198252 308190926 998913309 279457304 945178737 809619325 893649424 438700948 859544902 162579126 884195171 651923031 858317670 795658526 882764466 608849972 747629163 380161325 586470957 523802223 890695344 135006064 858011301 48955358 331386559 291942024 459404568 310748080 989161544 400313779 750453713 698880404 929785395 545837149 775903659 704261497 725774934 221215422 739148397 148008083 976353310 377336091 907176069 421021469 648975713 479571823 782552241 270807285 570120051 146864906 687780041 45207084 289598907 272068496 272606894 15374392 60463705 47199237 952381529 725529705 943250392 133255879 915321487 204517723 738882028 258016977 643050460 181788138 459539036 443824651 489889532 30373567 730145520 172335092 522023406 474405222 984286472 8753063 507800632 447814421 957902977 306002714 535354130 56540471 862429481 454606731 681370991 610878009 792989500 422651579 857152529 4611747 888564207 566479310 666086984 93769330 476822345 206089400 519516290 482021332 996727319 416321866 663718277 599800601 622042121 203141346 866076040 494501110 988929543 757783503 822229882 149852365 299075574 198795068 349103187 234020214 786083226 69181834 640204360 304278841 738343964 329779031 385356622 178230051 596200742 89970171 122316288 55119763 389196847 94822177 458663186 48526321 975211421 718349152 830328759 293256097 500417562 336172520 340064297 80629616 674530315 424739168 777071627 462596557 810317552 321404287 844780931 726793267 847784505 332067043 830412994 453197433 772782063 477508833 524595618 280272110 737617219 126520295 930722042 697291556 737361734 417660920 849159665 742826013 784457164 661429799 669465413 83382092 731226249 315147314 603150248 19084602 311355404 304893480 421746616 296135890 500519949 426351718 689533820 163643819 178129993 42966928 597601011 110011454 633741443 471249800 797210947 532584258 652121799 406912020 970688684 261319101 422380154 310239660 586121850 501911868 651296085 625384150 873029278 479841941 900550961 248335154 603103548 488483678 592233485 306092153 870395679 212301270 366821025 258322287 834907797 374346602 931035569 717323865 734788698 15096777 975539655 473798061 664749614 116928282 856199968 678771784 853945623 529409757 758191809 55756079 247782809 25881191 575452145 243650062 757586916 644707565 679990924 474150185 645981517 274904356 495894906 337645944 426933949 2605908 754696749 299060154 477671195 241110549 872603032 139236763 480708704 116103167 653281152 504950124 643313073 453237916 709866142 205988854 540368085 138493561 572034347 40814192 206505152 63649519 699918609 193487934 652341741 187897064 901493712 357529785 932209933 871725295 898705713 716916779 830932729 637394504 781898729 156682837 567084572 347004627 959147935 186647428 967722608 797909631 901991866 186860173 905941923 86081385 338780645 230960743 402569398 331041442 686497579 366889658 633224584 599407055 986115734 338498567 362331765 39921876 104433914 51206762 896554499 852327163 859583058 336449533 711140533 240265898 325675922 227843236 542780158 270354602 734182393 651258433 786129960 460108155 573691195 25074354 795640061 145897938 938156103 419798026 479785320 284926604 326674108 88452512 660384931 167464874 747911344 86644091 285629978 150130010 225567903 212416443 429002393 338144039 382067332 378038518 932684477 538074148 564089587 286899555 809219220 296474865 885902691 548130885 800501314 314868012 695346695 517048255 942737139 393463133 855581990 380932515 772978520 154410359 615500602 26671935 32523684 21890678 913588587 410648087 756779780 641154613 807710812 317316066 335937034 213731652 357017564 193356974 928392882 644979162 653103790 282612349 649412056 40602080 695122369 583543720 654749091 117443325 307716135 261836437 585007128 540820822 579021196 327900046 587291217 452199073 730921082 221540618 248606882 32260100 199712517 197546252 453352957 434993111 999022739 417182456 523016626 344212755 760578207 451097286 517945683 200390546 934358936 119134423 739673336 528015138 556047403 101078862 112266710 70717485 901862153 84372813 809833511 57743924 354594667 160820577 953735645 559130419 681071472 595077072 980757277 894154242 961625412 198163593 204419590 129920232 260012071 206988818 811248945 553922850 868266713 263452204 461762820 230978318 651482562 507513406 916525658 433009639 475622821 385621228 582846118 405206394 809002312 144901812 310557601 85085155 313720871 188811384 522767498 504701902 967788008 776742537 846199318 346584124 782997975 194693468 534435314 66857173 124682029 77767000 200794386 158383587 310286820 149358641 694499661 648696847 690735801 294248579 896785815 176734803 234259574 178124557 781773278 221385580 303414490 23475853 872878314 468400938 674657331 379163417 830102224 621686303 794236431 454455859 491727322 474198015 957200838 559895873 946789937 271810826 585624705 51784360 524556617 278527514 355881431 200974794 685080974 253355751 856344234 392575176 716148394 168457292 519754243 93146630 553913188 538175371 762680255 750279326 811131540 276383463 947635457 236355920 894242722 674287711 976737315 743717877 886945291 238948545 821019059 151611519 421532554 385818406 905917809 826884981 977340322 835542516 877487851 368714429 743126949 334260114 989364894 170791964 770922003 651862351 989568848 871781233 978669597 201579892 722030104 589868663 881282898 491379266 554813512 176363125 695185169 292390161 462596727 425227400 698418286 190999675 672087806 271923718 881282127 654664902 796710646 65790707 369121528 218982243 467109258 278834953 335729325 225943425 903835789 803688928 979257316 965670851 969286548 396544945 482004784 384860293 850358688 558916511 967514160 276484398 797908072 331844647 845268159 141155078 160702079 155703201 279248083 181399513 978542698 789455132 945853427 240904779 561960272 163624245 854734442 741496721 761455797 150856316 831649923 110750060 570121864 448636307 633170129 561783327 961016182 284651064 887528981 47333073 692692122 479529042 893878751 278843094 855788476 617680488 732608724 65278513 232821873 77351421 649352345 574190732 920928033 437063206 675139775 429935484 902675660 828953104 998945334 738753842 764657108 290109304 697799489 193730888 554623609 102587835 913779186 687898342 736385083 642159931 894151761 850342813 928033246 691391772 696639385 367340462 885222874 744179906 951076104 317730123 495567791 246305948 399440092 78466596 280848654 253274430 448702663 146430598 626799916 95543768 386706212 234191073 779421411 561006063 783382825 341547274 678008139 92743741 927534318 237964627 704536182 257903485 513899925 321211851 809690958 522309706 577075924 438496584 508518699 499204895 533458689 369266782 605880152 520676560 561875365 529584776 672098977 264745212 832450097 510367139 548815428 6822019 30586347 9376481 201537883 170560056 816190758 322220807 908185673 764539823 956573239 836297197 868278874 252007352 314308823 144070608 297197081 6741940 420979758 76146242 641345939 221162687 413234728 86041239 513212305 76980908 489576942 320402499 938424894 666276846 875192936 763558370 862406715 68228676 404413133 70357551 326658825 166860736 432379655 427795720 706599386 277288410 313527714 303915434 537843685 7757984 648656822 39386455 276328466 239424498 801945403 656609778 978749834 554778105 555712492 220047483 784248634 330411088 599396059 153254241 478335773 388541472 695551141 562365549 883008121 435153791 981012938 450226034 940786289 263779270 672323221 573023525 743086689 707587236 711190511 176585766 192615335 148637656 808108308 454064320 943479740 626511403 778592032 239037004 951825840 517731958 638381384 88864629 486328741 249357691 509376517 505190846 550787968 343083916 668939831 147886360 286540151 108186235 122991314 99444559 309234587 2447127 435445158 251171167 873279425 659681119 960070144 557583414 796021632 210925679 624024152 124286516 725170869 94843025 721393839 347696932 815657209 152518762 599209511 496615790 761368676 633626855 710044605 405607041 638706004 457161097 885285476 379247064 950192797 51516281 51726919 46961505 550861554 532809904 692273758 138207651 289992234 268056338 530383815 349402725 507990641 199630278 825125610 470757700 483290372 177286631 348660983 94905454 259408385 98640268 606451151 148253750 447637408 356859769 426680882 187969841 531681423 59139076 179402049 14649224 211712167 204147222 584249540 333814137 762043139 728417769 761780226 631642670 815802530 758219754 796708240 249573419 625081065 346185723 365627498 5770974 728252983 581978087 910105868 177528619 431854268 69312921 589683474 199878244 426467163 17569278 264188414 261259316 410902600 272510218 791473669 396161733 944322438 677622139 714176101 682581863 863021050 710835444 725520637 695532584 925749478 355715282 630941464 562878841 772428311 388041371 854533374 294259608 598887734 120492177 966418061 965975342 987357529 297967839 749772298 127356945 927857175 679699377 870529270 751100953 892279729 190216114 515014358 203824177 254086299 66225208 321726498 17612048 935767481 553668580 976992521 256198965 498700217 448912990 990296334 822887674 829786870 739531389 761873482 484375389 882270032 344757226 954433322 213001254 514543802 444485266 889397466 562993104 579822678 381066304 500374190 125579952 431901467 187548877 436936730 255632228 569174152 68613219 453486072 391662207 593819875 32414263 906302212 127817715 677786877 641506085 892104542 638042881 858981499 692994074 918520047 734010525 822109544 514876597 630332098 235796949 755410779 362672131 389173115 387201917 485069346 460361340 912141495 158679619 691227825 445107571 532225909 89322542 290483192 260947349 677708434 356494124 573401241 97192956 136271294 133187539 518034502 399048863 682273634 243695032 341044761 178023847 438127662 400472101 479966569 178999432 975728332 194883431 303571773 290472750 914338550 567478180 679733961 278387798 872517566 430272454 730233124 209551011 719796938 163051309 402842676 176081215 340435052 3604338 683121864 470368827 596708678 163909055 769688823 610216735 898374361 390492129 695701855 190409629 591709425 374147364 765948170 127305669 789086710 752876116 812643789 232684067 554025929 27672346 639980955 629474073 779373842 716457064 791336274 709471288 951938658 611673039 787377915 598446179 963735795 74046571 698293426 553056376 710225569 92802020 394377337 330593175 773113036 252401529 467255302 205545492 308902187 29043684 546459106 528674744 655153261 290117490 377593419 311335450 991482757 786860964 917300190 593290447 848408541 175741531 898585516 550772682 819584748 103522812 895770631 56121540 481277822 143032789 819323784 43883669 989733778 959030152 992735981 47748791 498441654 293206799 799987650 300152261 745762847 273854932 421617637 280772061 593660231 121295831 932820961 609429508 691240630 360360890 493017171 190834237 764396637 122718764 886554420 33800369 666259460 313695193 802463676 625983036 633521552 125078362 636723406 477648658 908891735 897027637 935205015 698849924 784016874 284688871 935497873 542092179 851528210 591895699 760924214 319194847 813232364 525691715 892546483 19919611 370903970 162341055 806149024 629452005 845830374 707786176 899660811 874305717 878531975 749260252 849065422 16471531 31260597 2755158 841933657 453386438 895659598 684628353 918397286 872747810 959797085 944513768 952212074 128904055 306723418 261032327 948439043 310136983 725722827 570859889 697687991 560939245 966244975 758613396 829795904 298016380 781113909 549878791 903967771 568005398 729990870 86148634 211839747 65717154 933654394 813622420 923667534 330870483 654688103 457911194 822458923 341312097 985532575 696957186 981344614 574952270 698134003 122284609 184835886 179033858 637561707 5707995 678696778 353157086 558510094 258408168 902426117 11664495 985661619 869540173 926297278 622342826 730218906 543641181 736056601 110642120 138143969 41141097 568707092 357646826 929907742 670914745 887024628 446497746 619943030 260671762 523238935 146674393 597571763 570502917 998695027 169498446 793782053 1127222 949520294 788063364 891162639 552580187 781087231 167338832 194570605 11924440 366526363 183869905 441050058 380569701 455615628 354234475 921631578 292177575 485459601 250704376 945278189 573765560 903032961 553631495 929604966 613167641 983931544 293318402 994729113 576971701 728112395 68024029 258723336 39586323 282536569 199105620 346027164 74891306 317467767 64936534 251673077 95146997 543275460 379961095 594718123 576539000 688778212 322613945 789618313 99332147 854348638 852403650 911439469 477292763 906864726 82136757 921993637 450427371 748716558 302348272 616628351 474631529 591522978 212475574 784953816 679459384 708043247 447889368 614663395 138489495 404709204 106480974 798746235 492339868 758963009 696841261 927737161 400978234 630314741 98517022 827094413 475644052 620513632 102272509 681169635 455300818 699546041 86549511 958239057 609629075 824066661 164569611 366189063 97681969 218927989 58085275 63965757 59897441 808408708 767518398 963928036 940458821 985069862 31004098 508058281 30010906 962093807 502913545 607004775 300754705 541215028 207492435 389714600 99315407 388207741 252095870 609320051 543279827 884929329 524166935 905168289 815652415 870008453 773165097 808082038 573737484 664018206 501276084 801244712 470989930 961046465 277926521 552305212 129017058 992620232 762159372 823106088 731568493 981853664 30275810 457249814 449220328 948656196 887244200 914935426 904713574 991674558 402145785 722654804 324168448 856503258 435980426 467791317 309632488 578433618 221767680 527267534 457507708 901149051 868879994 990289846 755327418 988613692 707195071 888289745 406852467 452865433 205284443 856636954 14833142 384183036 11454533 974602459 865233172 884009597 291356630 790115632 300278754 887893829 521631891 550004497 528151572 942190142 465214727 524535077 13273294 111380738 47744879 787815016 588900819 971447335 576439013 864491967 552192947 683456488 426288800 619905677 139070247 290508232 50367889 550208869 19001520 249776805 27693655 430610211 221794853 750146495 302269893 788013139 579186700 886956939 495280051 697897641 471522798 858424041 195737196 786989313 122815978 648231783 396923459 775957379 682845798 684592016 457618183 905915511 225996856 476001592 287423600 733588655 236919907 319956376 273623572 662735895 499350971 893348867 600447800 795864117 108430220 247451978 151082416 603077345 318418001 817078414 594828859 616878722 534849547 575645698 379750162 800607227 164096051 485758437 244743198 640462704 474989833 675085792 517433574 940310725 291622051 750208075 559330640 697037720 301690488 537294298 507602154 822651972 214294474 651772171 349892605 500671753 305752071 332471083 304629054 490816844 139568081 141597348 9938051 485275306 430979248 642224266 432286271 808756978 324204963 585208861 74455373 923520333 76522549 824363669 599431814 943892054 78981912 593238141 18003572 223111126 93817566 157749559 135048320 961989861 559343306 778597649 533162097 813330103 421549318 905410038 108273990 773081104 60013575 161614241 83807613 738383939 153384273 354726783 197470190 827007527 277597941 829395745 72377280 877202613 576294276 893071226 135844349 337794616 157964313 768493551 142137499 174663622 89988405 979661551 169101371 703276966 401340386 850987170 207949872 218591945 199701604 971085337 969455065 993147948 365610784 456730487 208624579 921177773 513676611 850024679 620399759 691324159 179239945 928688257 451589624 827423308 607377838 994213551 74632234 368382220 14792186 848375244 385130104 470142218 197314016 580907092 161056770 737806784 362301725 689172157 167494763 721129608 506419254 807256535 46857153 363732165 210359600 372023153 270581179 390535158 219636791 510581312 244307094 638431149 324959501 595419567 149019256 922088375 339040154 652216922 598724803 995170308 88258471 351598915 335593996 347463677 194361904 215329893 81970350 133851153 58101418 522409870 235592877 336649770 55398930 830916804 122598647 608464263 172712089 637996672 427228324 722370518 648487441 933598317 480449891 564149825 389028414 892495037 15775833 119565371 62900148 976230993 558396968 930221565 339818786 654168638 312464973 778674018 300819982 833257938 101381387 761970615 443103784 751533601 229587641 864104807 514927928 974045765 211689664 842943098 210291769 963513614 569005019 582710690 310787896 998418069 494838637 783817267 27680228 212611993 66093283 344228801 30363817 282952932 123114243 312425558 223487841 801927668 572361810 796600317 740265687 789491140 277178430 501485638 56772713 784151323 285950645 619079654 354417999 370166584 344307525 872305677 562410330 918370900 505720724 926586477 513129046 727241549 375739336 459516748 264186529 674586322 95309914 776044608 688743093 697397430 320738714 665433855 228673666 625098612 480733638 906463776 548030979 940769631 676307069 987946109 775654353 865179968 655470787 973895937 291315917 311499386 186336132 364874290 329514442 897394832 153125169 209651549 180560776 881403506 426328241 803807709 494637259 607803365 394160391 465708047 52444720 511881210 167781936 598274446 47763958 549869483 459028271 974335185 65187023 215979860 164161646 361826330 360435818 733157345 4176199 339342940 330017797 338347552 58091333 71408868 2530993 886153048 638917382 744322690 143094389 543955203 152023027 903580482 131221350 786821691 738885555 916314632 696996502 977127478 481396686 776870383 394041645 591245133 361079387 695760588 663388795 788309758 529034634 749698468 43784869 676050340 548471520 665513123 296600425 948932068 82303226 272659822 57314060 726686461 337186113 839817187 215885250 222873264 121388510 944635227 337095561 669070126 4323451 454502261 224306723 284212387 10992286 72334409 64992597 93118898 78191748 983673098 907486111 984112751 480135287 656501447 403266243 631386328 619960574 767833730 663387046 979542043 300234031 824899674 260318285 355120862 327793721 352895405 202497095 533372360 75505132 165432527 6415816 399324831 347247300 438316057 279753285 439390636 213971357 994679629 701791698 883215998 183862846 228824210 219208676 452683386 272620446 559077656 407175068 917622198 416814935 641151273 71153821 953039807 247403968 678783055 57881414 648160718 411138689 694932580 627183774 794354782 23272958 254151604 62551360 209625638 182075749 658648904 347541227 384688326 84598322 622938739 594953750 990266754 800900597 908436003 511358532 871970941 511819652 976392881 256503135 413919780 281966249 413526615 6159054 13625300 4801403 849772404 213348877 505361148 149297619 670618341 664384545 880462319 661697310 878301750 39388955 795914187 432667463 517186611 428772710 458091372 330027204 946965283 214155439 229239288 218813531 915593882 98695029 333981517 53644380 172621554 124023698 249882171 85352171 876666830 28367265 497506472 477763185 727587277 648202555 781423951 363658 342313775 55552244 964204570 557905723 817275527 126032257 956698583 493706248 498567019 335850022 524618583 10766133 768912958 591183872 755964749 318279475 394042683 119088837 451640441 184856642 283121067 158142218 876495408 792785990 800830983 185380171 902146852 809349402 982357423 174850739 826688031 259068106 672142177 329642344 406979043 359567501 543726880 246061211 605359759 291518089 744042771 217142729 326749928 23267452 524061215 373040836 484518666 216648308 562177346 346559610 686854514 660340053 877748012 320219931 873687126 33260745 746391339 85629391 986326860 98086250 642817862 510717184 931105929 700695801 832597152 819322361 984696639 967179680 971053534 957411508 967680223 168356950 866616854 289263399 754839081 143305882 203702996 13742963 442353381 208273233 215358652 213583597 294591952 147817524 716624442 187617670 863210407 384580848 856178233 634668567 742458265 221392499 558654743 287045370 695420575 496000236 602692321 487211327 592098368 94973110 431512651 161180775 860667908 822715257 840488174 318638467 344573178 73214138 943297573 608527933 963711066 555202883 667668528 52493941 546731717 254220365 565967255 184129304 593034310 107472714 674664005 271521243 509508671 425201207 605777308 4682745 80103269 64210110 789344567 304786717 488216507 86167956 678843885 247011906 513738392 498425042 721697999 610245113 713374840 574672521 833313960 284672514 879441804 706206352 790352712 42201851 908654291 47073219 196829067 122734576 863935330 423097714 726972450 261335277 667159996 200037549 581987749 453616607 536545977 63368640 144707369 32339240 534725365 257203054 899374141 678220447 759884004 161083300 861555971 184408154 428346160 415523406 871758855 736560428 775302941 582379542 994163204 624379832 756402097 564632906 860666692 723269166 818022695 291730777 791681320 286651268 720417936 512204808 917810888 469558361 807980006 180610545 726133065 493548265 960128997 694582168 794534390 784225002 859232446 803861759 973949750 308705413 576164602 418019308 568341649 517612512 917254120 595476975 647448955 135115115 429161812 225080849 994063988 651070547 841270269 755772471 813462156 334387331 840756800 422923417 827481010 23158953 756062305 499564301 798812486 793539358 956797466 383154052 600753669 493031797 859395853 767432782 850581491 217085253 588733029 532432057 759584082 514055443 817757724 99337378 354845537 262725620 661652679 574054454 807752270 735941196 876496506 168657085 274011274 231598945 681029930 571596988 573939880 218134765 675019066 432385495 471037744 54280953 738883796 546249964 568849172 201472170 680733335 448657857 469845793 65808263 878550136 628154190 671365363 9304237 23408011 21237488 483584956 320372695 428731890 395329597 577740995 441304114 441636273 203436164 352318466 33422626 511759897 471970247 892917887 18162501 499604736 118076534 266117886 93605065 729198532 394042519 861664555 754899890 987531171 465059921 561336296 416555698 872672692 92100559 876855780 840556888 953476438 12829310 439850632 57982685 445108294 278206440 399906182 320294587 990072387 782825761 983025301 888862369 938450863 531435854 802911462 701854042 717760538 660641227 855056720 92952416 296933646 282280278 958827826 150727753 593925416 546680217 605326498 284176442 781356687 95069594 503379530 284226353 563339510 216950390 814037385 142788980 956387490 912516499 996706165 929527509 935492182 518993210 709714658 482823213 681701406 222836968 959022202 381024662 538994720 459011000 856293470 615129359 761006535 545528057 752073001 59248970 113462843 52824820 244629081 8334173 615291990 99500201 413045941 348678208 839169903 801836681 893719546 861054918 962078068 899010779 924485364 347628561 987091861 217745808 547887752 32981853 129806630 69824750 686599232 405378180 521898269 3174751 859542754 196347167 650137802 623392515 673860432 91521874 701178224 188512199 745533437 508580864 672590905 194309200 976898575 468347264 763421182 625396899 786590436 283615012 396437751 170070500 366097803 351157343 489484412 185986390 867917761 612950572 905969597 533813088 638273752 590625418 740508443 194486880 402449548 215981919 767863571 662479401 874580532 55497273 800751079 730795622 799906386 186298348 560961589 185138966 529447636 128118239 159783298 86629322 872922582 351943627 999947596 208907161 309800109 44136929 556762061 186966155 864693218 390648983 926395186 196441418 622285007 189543102 785878053 257276979 721333084 439157888 873620933 777937821 986170216 642766363 922643209 72910916 467446527 238906761 549030839 490550124 596228108 53607987 704993286 409738699 605466861 2584359 705380894 583413490 784538239 273174423 341674980 333901791 902347796 403748517 503941450 159175272 866553377 639934214 883858395 506433343 965540805 324341299 607914782 440594830 640893112 109943456 588138188 420647099 779246018 678309818 714264682 705643438 801415236 446103112 804136042 460367609 723561739 564317231 848303953 174901591 549999713 428095647 700395096 619252492 923266347 534733361 556884284 523262607 673288900 61575805 274101233 164388572 766121842 158103591 555161895 509604949 540106641 492240421 555288254 521099553 915931833 328049478 664920438 238680604 980999896 978887912 995269421 859427774 870782829 1133114 723785549 91580766 209908553 23065034 204744598 57500160 305227450 277804377 959198418 49359660 584305629 169762920 903581916 183512460 220910685 171719903 289715340 262584101 952624355 936665998 947885002 247756703 539122966 155269305 514205356 10487600 47265330 3504816 369737395 210963849 756116995 456572163 834592555 609569222 888536859 219807341 769280736 190071781 450305250 6392658 211277662 162013750 581972009 160330051 190199442 52508677 558807619 463590376 490062709 204361443 653167429 199015730 998623579 854113337 995259105 30034415 129397626 126900104 826351504 707095401 922340384 243537277 552120306 470824179 973325874 775030828 828714874 421230523 505505673 385057942 708755525 30838582 937597783 404148491 577711975 329357009 782700507 326486820 942342360 634018497 937427845 560697819 962898204 771627296 988942706 499859284 780394321 595751328 703556513 509160235 649015335 28486686 965479031 387350052 505386209 391350082 609257053 385145278 730852737 472785137 823602636 452774867 569739915 80300036 908526186 797412971 812277506 704958123 782520648 757098191 791240995 220417027 738463657 236051235 993014946 158131054 274690086 175258239 545442690 473602327 567621734 8948051 796950688 32843409 306819995 110437627 152274648 55048608 88533376 69346014 174288343 26767566 818115365 413742879 534249107 82815722 859096880 680358034 822968779 480242862 724950913 622720188 969044087 435861123 747761310 406754049 481884012 325501002 874512327 528326495 909030963 90159422 829658905 770058221 927518280 124135967 195116525 66691534 244292001 89166958 296164611 209110002 894176945 238747192 352490717 306801998 878076096 638197878 773831234 460970502 471063319 418690956 638238189 280753735 854565367 568789590 973355418 891952396 897772824 519099041 526482357 47500317 148677409 127338743 787723690 326193265 550387644 495378042 627464037 193153619 429992259 342576095 623247163 294243067 915625996 296326681 994542469 340971419 518159451 381538726 766457216 209586440 442821701 99930903 207864138 155176878 894945489 760613338 853004970 667729688 995164122 386851945 738308035 117390840 270318907 140775988 916055388 82971090 349206285 300524552 841840491 561846404 933691004 105554434 575566896 440536635 966050302 613351547 950729744 101066027 875869139 755679538 932903918 847214944 975842855 450813884 632598711 403782223 679958612 423077665 937390326 301085098 885935023 20208577 201798115 90322484 564874621 456071624 530295896 50764621 870995571 838867672 893445869 327281971 800055502 714140306 842451352 372083491 804104411 112600696 845126912 7885787 38184914 37039926 913866691 167297497 849283088 442802603 460011083 282341805 338629250 338555606 899664011 396768405 882628943 707341529 984384117 431476495 753999903 707528322 872430697 541717678 855971739 435814190 933736884 628277528 761426869 95980317 624044493 261577719 920002164 525091276 688105318 338852466 478577942 53549086 941723803 123887503 305283926 138119625 168120430 11881780 503803461 164322687 788652646 687114638 990001608 692647214 865620460 631404046 693618245 170701982 257710924 158476130 939979932 794894160 926796108 732890464 861914402 180283450 772559562 656031352 787187570 163857768 514481759 32038687 514351935 261897465 895945195 323687219 699109068 583393039 999894396 87918917 196055352 26811998 968698249 674008402 727730351 592722918 668855920 70096274 588826621 197478459 765932981 358091456 537107308 338914347 750941707 430336281 937032090 284580395 899579837 103671712 773389819 508236243 828393640 459758607 857255149 504966621 788347428 610742746 902028513 286253783 453229018 191401668 466834206 50819009 66214372 62118784 705348448 187338522 544083983 329743304 903611777 31732596 585476603 11925362 885557128 314644802 942895703 676516113 859801127 207284175 505791693 339453593 876980438 349866994 468959680 52468214 939326382 161329474 983959881 239330924 956058549 162190645 738380638 668623291 774431104 33447241 932311395 769306156 963572277 29021636 334977827 4150328 657820944 194716877 582952235 60628865 437603892 46041430 679826664 486036340 683124547 30504781 56073759 967111 958047586 307703086 559337551 239637827 981011026 204627197 730334762 429134180 700482388 514111833 788309899 474728527 778484562 315076748 507297241 317941147 787052956 500154979 986608584 160846032 367008016 206386534 644171356 563460335 930605218 515923515 877238817 836792202 882159075 625901505 847024235 586557746 905581623 742492872 845264961 417585171 650227514 98684063 379049512 126194360 864176255 806714765 904014018 345848866 949053976 928980103 940917997 553395478 856653515 170748271 843534802 82650413 802574683 507130485 832525693 831015797 918417143 188617213 770144255 659918924 960414689 855321574 876808128 581438344 891350233 372239931 520112456 28542710 178972940 138673702 198967787 21637089 812864092 325499119 923947792 39829518 555147757 378733055 973987944 181517636 649400270 496359992 796895874 385520091 565473259 238142732 532748349 428367794 566477334 401497471 635997680 176632172 516416776 393564700 675729275 408952692 705367356 642531047 943003505 460735322 763791812 614470020 812784403 143522371 856323540 445566061 820222240 219610011 292403266 268644068 391023299 389536372 516628745 490537165 528011433 444700592 933940569 116070757 636545956 27850673 326971931 286569776 708728627 250496815 808533266 46015058 191796660 166872352 490662431 306310631 472442631 212328847 472368313 321530652 893632443 335640644 975534084 44725036 544396955 153277744 726555338 179420842 399880631 1898822 419401581 128153160 560908159 88680615 599194435 201240736 248645215 8515741 404615194 74658123 558728529 129700637 346384274 222783716 639011840 542961888 869784719 305687080 708254004 314230564 694521449 570570434 828355522 511101063 729604084 406929979 914400820 267061568 464142706 117207582 420587467 308837908 359868244 90451077 579941056 390386552 460465599 348802159 807693120 75297630 521725865 397126439 518632521 119157902 687115404 315831515 937021447 96044896 312493232 278360309 523728607 126176865 548942383 213889284 518866829 125508369 875777131 448265792 617752442 68603549 974651198 953278099 978866598 54806123 561110213 37804113 499736545 70744645 356999727 194937983 599217598 453800534 931467449 556216794 891114330 35822596 874812617 68763072 599340652 440215572 750920524 638396452 733974990 196091677 829740503 14265748 785998507 708097067 992674261 410027293 465526228 443747055 924036176 52711697 594073254 564101702 717699018 148385421 176974865 35494252 977680643 134747213 362126811 315459759 843670232 75171853 269638275 189641669 603339147 538367425 951770790 475313695 628911306 220657544 589753260 301686252 608045548 282157268 873756752 332029042 568254799 107689018 434921876 238982719 793640554 278916711 482096673 92373768 388052780 255160688 393479875 196656427 331082318 182262170 394670722 172107516 565366875 292650671 754547219 200019217 686613046 25938497 133681166 14409953 803679135 783682982 878386248 165447324 703311608 576171342 579742095 469213255 671281718 38429709 538750417 187450039 407727924 224311558 854695909 326694884 418798496 115266552 877653804 488347994 557785272 427384743 770783721 726135413 928123684 216747475 717288354 149449580 463539662 209024382 972074578 99639565 451083223 58192174 822423742 676164696 983468107 537064609 921351008 59969169 512057347 248459082 553186829 288872775 795406834 639643862 761453478 98568181 141321971 51374265 567025550 124903147 656337018 100811657 793563423 687840311 896471786 462379000 836013656 420070609 678952073 36257643 838254420 328633299 827264921 301490758 758001498 456520634 863261210 172648165 581236348 214324860 375201683 294434895 622816904 557553677 973316048 73663821 852850911 689013178 967050180 493401492 949499909 932330908 975971530 673481988 750425642 733661833 955023669 473889621 931547500 604981937 807291916 345347883 976735779 296126197 296188144 177878443 575013073 182735897 299437495 14991107 818683383 323910081 676807231 12828894 229089623 144124212 945719474 390039647 390186567 224460211 403506970 207493923 333948921 9699381 66757522 38980784 90537541 20260445 997249233 494667675 889647218 177516067 823089829 120617722 961356100 660609 933874649 530147239 691930836 107454770 248608906 184637855 471050231 200484635 701350906 585829964 905614671 690597138 967996719 847372493 999926556 280414853 778045010 752771804 756410836 38205944 385472981 59482115 534956056 249461628 271454101 23649493 826000483 351146479 450097784 89923560 642790903 544908893 900673151 37799626 378188912 58008305 946057787 153053345 257531007 29074295 341261943 283385503 849870183 562319484 877763385 68545853 286166619 155615040 205641829 45174196 512485554 359130040 583283020 193895204 212187820 92399261 426347586 86489214 420686232 248639382 296307222 136802333 927248616 273189146 480755815 274074740 656356593 524203004 538763412 370509701 658682019 21299640 782253492 323375107 629270500 6367926 672682203 12468069 134257521 73704015 345943270 286407666 727660290 278400464 646025965 252150888 993071630 894010766 966360635 910618210 945512135 363323530 503382477 107787649 309701505 146407120 584203493 22138016 286536613 109270502 671754240 583198492 887537375 528979409 741685586 243940006 637524066 124519555 626132601 559201175 960816132 172297036 979562719 853959250 884740061 484770857 600804586 95297275 221811279 112073949 964606641 690661724 732212859 212494921 235246687 166938220 423592731 116666927 471161204 327684212 731308090 240820858 612498021 325339235 346645164 342041485 962109512 343216771 779280327 289260596 362480909 73279963 412540888 177443964 964510213 693056607 929297840 904285254 913714658 111183210 969452865 929954434 937561595 534758478 823234198 23455318 60041076 26340689 598695368 315941796 953049464 47221460 174995994 102258583 669359146 57635046 611178713 440501040 712945823 365582332 467771392 334630110 455803937 386609898 845851589 75749275 776232166 244508488 893583191 251798459 475287999 40382981 550361561 94255868 600226674 185349382 511706840 484231669 901302669 891354091 903849585 791647147 855471396 716065301 788574265 19941927 424646399 82601394 345303728 283850382 458629924 333287957 583063069 374175096 872925742 6537948 587846300 421790803 478996570 253135648 329822682 42459841 531349119 104706426 409074524 303062652 732710438 646640213 937847779 205150887 866349010 832965865 972284100 408235136 903995890 453202975 491277292 367914345 402482907 223732246 816247256 450988876 519098946 397260034 894558885 132709745 825873176 321450821 954504612 769923258 874588768 142518097 435065288 67481447 837354009 762102642 873006032 536806790 940543640 783692052 983562637 1840972 824322605 572986679 671178579 593685771 813949264 115483381 486979861 187030264 920976390 82109467 595822502 197761726 559016819 370746571 823734908 652668003 679639940 621596067 920832519 24305988 512290918 321760508 408973602 50245186 511972019 245080453 542323736 485639609 891887328 834415213 892597664 582010850 777639413 540488659 987958125 192416527 322226402 2299590 226876931 219977986 589796963 486432104 547618279 130133246 391978542 178420970 878177700 168341361 574244028 226119961 611684698 26990301 593508450 94679403 401574303 43503584 478276982 268636104 765293343 660110773 765429193 249403037 514026016 240517942 259470605 184890118 630500786 188868416 861109385 220322301 431041496 419912115 421182489 151873670 959149396 585859741 927872090 89897004 594084026 294345327 577189169 424276961 610102685 233233677 799951819 679352036 768771058 647738520 773637439 482433705 987771857 406543259 915896420 324960312 552248701 437779029 523621024 262855511 778848874 503889789 662181079 375932413 892944625 673974729 852254135 106357791 866413742 178866838 673517165 620858985 667703936 507536015 751852407 708580461 846524207 398155296 434173409 149438952 901822183 887429682 894553233 782766067 801461881 394957258 562965231 487970048 921789402 817608469 998923037 775641421 899881667 244346745 431017549 307870212 742979785 674785196 706599027 145634192 507863356 487337872 823645201 721116806 990206703 317229925 555063945 227942254 599134852 556765075 865481201 93428002 158308325 60749655 871731432 575647647 656906131 497306477 645281584 371722311 940920029 911825559 971740368 534044596 535973528 130402849 450645844 31580793 467176805 445257186 468969315 146614368 846629565 771635683 800746326 648812994 739297884 614759015 864182888 414950359 804432969 72900872 667768989 83025252 818614951 18470341 873807828 418319516 784832780 497500521 887410520 676975343 810534659 50775088 732684801 374758681 630863641 99237855 575999681 486818400 556906432 459620982 698257953 551384342 779737534 72912491 295787952 289645267 600678776 414632675 682350354 361171196 463082614 91868911 608142212 35678721 666771084 14405194 449921082 320001116 821957092 172578695 894625962 503495416 913667088 56481156 804527799 314198197 895146017 437137800 464228746 172582948 847868597 389997363 474542247 201615591 348905620 252645577 360571298 82744718 775557098 632594770 715172149 708348676 938891074 721603413 864935568 232925471 590114920 304544879 362675421 61024838 288813135 73734769 311044732 85236955 134863962 104788501 317361787 315738736 378144746 320714755 858240598 856754414 958212683 258467842 943654045 81614402 314731269 16153643 798311152 48099640 78885860 48391084 817602459 432485296 748413237 251606949 855088271 607721200 759370178 385184983 523870027 168690522 371571435 202798352 957753270 733076901 853422318 723965385 776554958 478327694 587756726 548899310 878833246 765418827 951885943 223338740 265263983 260733292 973207367 778962734 895595690 518885575 687476559 406420124 845522901 37367637 944454700 45510035 467555197 254627604 345787485 218754061 343360608 127769730 866705908 215461666 651925696 363592517 700921873 190215515 629819313 450493096 496617939 113692310 431275695 353835267 396537395 227885237 954473650 72708614 165908027 58870358 681246101 519352524 866435913 412879032 725447349 547081250 876887684 669183872 819938550 567789868 907990236 135660134 727339952 640997991 851961530 130148682 202475166 100150480 238768903 222441373 499843477 430613490 827610591 329336462 975807500 620519946 917499922 861204111 981240353 191344201 522042426 280855804 841845416 644858604 909338025 438565247 757808324 650611172 956334301 223494050 907074259 895785699 951117920 485773522 605724333 219556845 770698964 337260776 477975301 238046154 787184464 360898523 414584132 395925518 981893859 311152987 407593959 373348832 450463458 39550702 686686802 195707972 247556583 120939770 877180683 590837591 784519329 475918994 687838292 256029453 675761950 60659139 796431576 418380733 879771704 682966695 889617451 784603729 905975195 533695371 849345846 129044427 211975319 21337297 767819360 315792871 393622962 206112366 442013853 330648312 515123158 428991917 687232853 67865504 953529735 761239268 762783925 195339939 553263487 60907247 377067304 350884606 469581603 179651994 449368476 35139632 988085293 686106587 940924976 163733287 883069237 612682858 737205790 147936623 222281920 164426644 191467596 179166646 762766774 645635604 702643475 627877395 790473569 44226632 363976383 348810237 514438486 277563200 776385960 368558165 532155945 322431700 569663622 274791049 388893733 209909931 836212651 470500422 627522502 122420182 159894779 116693228 803704218 408803538 641605864 631501404 751041675 531595518 913749963 814283600 964014391 456357962 598109056 173099897 842087538 300641813 731783772 318286948 427459116 21416259 149746025 2267840 554838927 132532936 247332406 7771187 199453016 185383005 921213623 653562443 757611535 383795370 569522951 49115126 420314690 273919139 855341938 781579201 819842348 780300272 987596247 967205880 998736663 453387105 949287864 97468384 590367248 318770573 947996915 562831108 970969325 777457893 815840539 623640953 696881107 315717695 470265563 416404672 812232349 541626096 784730881 595205795 878728776 162932491 971657750 844164555 934749887 847212895 860096896 595130404 826038192 150001068 702362855 87097639 884137743 698748083 960296437 228098279 380904359 368119103 979717327 119372567 479599849 124416808 422156504 294958706 818624029 575428246 810814425 460586585 479631007 442230974 910258728 642998659 710917732 24034297 339913917 135034052 573265152 343844907 533506290 293249436 443074224 302159272 511799411 291486980 547626637 336252126 694055875 403144133 452226031 344282773 935280175 251238136 886048169 461513686 655600081 249470433 984732222 885063553 915727652 89124812 944313935 669466511 774304087 150493927 418442743 83062144 528918931 245972534 676297003 70226046 878462651 215163051 256618266 219071683 958381764 507641961 600622584 329485977 407363290 112875391 552030992 507041494 916653256 44168800 953290137 817161943 936185346 363700573 945604464 761161258 817707880 201100601 534459849 197751852 382213553 147616524 798246308 410128146 924662917 567816602 613286176 47350933 729526581 476872256 914500154 595610408 673355883 333838094 805153730 509136732 570602098 37604244 919429926 460967325 690940138 352403437 632475187 79775714 343979239 315825857 896233921 562646598 875490381 210653311 966478811 634340415 766059286 146652136 639359344 64124636 992031041 867406952 921344167 125657761 529574814 340581812 927613726 293736595 845742540 128070745 213497222 8151581 938499661 147455630 482570644 34939702 864203366 626785013 879281077 236629604 250283520 187233991 485376035 400848500 670303743 649701443 957253193 255137588 847150901 137351808 350886325 245649359 260780892 24198766 496951003 13530615 223594592 197568197 832607004 510000247 631411537 314663297 614939877 549584040 875718502 695747762 734275273 34048543 425611749 331011230 979342886 566403608 682869446 117922376 757897187 616325089 841000355 195261724 565180681 168268568 682963513 297520938 957869026 576715236 963898034 338422735 663788587 102378611 322809747 158510578 400176740 215338156 625803256 599087319 610541495 238819875 947897102 794151556 975518204 859493881 982602406 947444416 987057310 585115061 954397039 235508673 414804693 357862371 765040185 224310642 782394973 754394055 778174501 391457267 461590276 234234725 723509664 130460292 568529411 375594809 689943879 115897404 696263224 578961810 676840222 361681891 538666673 397352722 549210368 439818073 456693288 126166753 821084938 811910499 854877506 754896808 891761184 158607818 242842223 15974258 963420252 646058457 866178391 63231345 323184891 289013787 299890439 27534937 787139269 574697096 692944204 48084208 685372086 3345098 34322486 28467470 533117834 165401766 255842924 125029627 499972440 341793427 856224417 738018843 741009635 548914039 735079237 31286901 817382702 460351412 747404402 419260251 797253505 510056792 575375447 287377388 792203735 158231925 402171256 322212119 822884607 158695049 577839347 547649222 857621668 840032327 935125873 339672194 353867812 5550493 500628747 135861225 864967637 699262765 805773327 214266319 581345561 432344535 894531309 436441775 803353297 144395917 734027947 133970058 162209198 131770273 598203315 101629919 762959556 566195805 997471553 502086391 560325888 18661820 110467543 55848537 451456498 166464524 781428615 636136155 745926031 43617705 395954591 89350851 629899663 192141701 937889403 57121055 798793763 147895313 203112420 74647168 612708294 242980295 649889976 170077193 541697266 443554444 626934720 393282737 584049376 558263795 710643536 680448657 820277199 634549549 722238043 539165019 626314040 490977741 524151250 363502509 750727095 192542385 761428536 111660861 966098592 235990424 786731080 152005488 166241457 46663416 456605083 87096732 701990919 204035148 952259576 479851400 485591233 185706161 284099714 15984303 315413680 232973378 959604259 589807541 632603434 374032477 672699170 245543383 885314525 665948976 838984775 232649689 978784744 407258171 718077706 208177981 884734123 232525371 851370133 349733377 612520799 251827068 560972290 45761621 586214427 113945226 504193417 168996589 752716219 180746395 312371284 154932636 618963325 282037387 718375766 386408195 892016884 373164976 662078432 3016797 970367220 261125180 856340969 3766399 19918319 18842512 939497520 892643217 941615273 551235019 726470438 247895108 717175323 522107594 796966147 495741775 923583945 786775133 874343582 239027077 384578034 49242862 316471113 105751775 237688045 171667378 748957003 492649542 784353053 310390526 968139249 864994581 871607349 730807095 790115482 426528952 829065687 41968035 726454090 84350229 360637065 253684434 699563941 113839453 883778002 682302002 886030019 90016477 477428447 467972070 505554028 498395129 846686590 641639729 963025171 878209605 983039780 254955912 541904237 231094557 877274497 424379693 900428667 642749317 961345756 586392368 954984796 11198891 81056168 23362571 177930333 157653492 379311187 266182914 809644943 632108674 959646119 96054019 142057891 137246150 863685399 648023644 947126457 561495779 816640825 363125789 861816259 123464534 748714405 300319098 333975611 25191192 750484847 21701307 980385775 142325658 316513745 204316907 306389723 10942128 631388253 21854089 345945050 325576481 841375272 406757241 992936019 430058751 944000989 99743348 454663250 403746565 941626206 651603023 880542578 167387153 726371140 149152655 165435251 31411575 411914352 178994925 206635453 32872950 285478083 48574774 365732201 25165643 941932190 738256613 768235176 350311517 582398512 496580320 526279614 458864514 774365244 174473000 853699913 463655584 801692908 758296412 865870547 136626302 787183004 371466327 727324959 383785048 816610066 575899669 959638581 857523191 912263319 70302318 164295526 25108911 43428800 14810393 376181850 324947182 480518472 98275479 993132901 747665822 925533511 531337972 930544131 558937143 935017008 441128749 443923940 275542771 559119141 105179178 408007404 128980267 202742699 59408288 438473296 27373322 866963020 273376102 497405180 151261029 884251395 684727693 754773635 597763407 792920754 177876307 946500254 629651264 881616397 424796840 655377631 282348210 506702240 424139362 934230744 811196932 931828938 634115856 793494985 405085696 715675832 121295092 344427670 47863897 127821471 75510061 473877220 246926326 669031094 159010977 182471610 147672069 296732891 38108889 91376490 62796197 871785012 710860561 759418932 692368013 954043364 101347444 721166597 481108036 542564033 501995418 874151313 161591606 849572437 844387604 874676342 637534369 757048566 432487771 885076147 502731715 749546775 81814549 717941986 346685451 511611693 2714707 951697056 203432355 886767036 864451634 952109197 918434635 927887699 667736661 746486954 215832801 900138367 551639986 618452220 414349225 881319967 289783175 885434416 862177209 992371655 66417720 527761219 462956123 757150841 734856042 948380912 44143618 97060850 87595930 382382625 91907961 891227567 803532033 979683274 200551248 232458539 31950027 939052803 212111096 533644185 70144997 268495125 102107123 268361341 202613035 262773962 27848689 439764744 60729518 497092717 48198194 267433185 184581132 253046035 172374879 465280170 105150362 901559928 138915377 407619600 249257797 867365505 676205393 951267287 835169606 944066084 647156476 694508768 451575348 832117783 279602206 523443054 248795029 830492550 815751764 881706756 626458836 723258051 693033086 739317004 179635274 790718653 618160341 731955689 143228099 332229052 252832166 643087618 554046492 556704172 309283460 579447420 444939215 979939117 181208348 320903804 253822967 659198395 27519372 252396347 121392962 268253547 40337865 172785248 134863718 802457461 369836024 646200313 547541613 770691183 39575828 210119088 123936799 880772788 675796841 892963628 762729648 880794834 275322974 628242054 287297617 526007058 16221437 134452580 20697380 363752763 269508828 770201938 292342879 499185759 98082267 802463871 765048707 819650563 168291776 908990677 59974285 282157842 248723887 410129213 383687022 844839433 21203441 909489247 80983551 985247512 581957073 918675013 484055175 514336955 458175425 992919170 279461838 358262964 282095778 602065412 288935948 429995792 210554939 391968759 194633579 359315084 182803176 265144670 74943418 382889721 312876338 880317737 590802270 987082990 863270879 886166815 617338633 773747058 243723367 502231245 161402519 863681368 481395227 831594025 387168623 660578408 602125482 876046634 55489609 938598727 684059525 996596555 744592953 939705552 713155634 785259819 276968369 496281904 67148674 619339618 577839205 825108550 189432244 417516960 4751985 757075424 416066541 864023201 752147862 816033707 176613708 540792029 49053649 756777973 427922199 442979599 195676979 491341189 91033771 233180067 53093689 289222659 269604904 337234139 30287452 752716360 280791439 984078838 652669530 895865585 605067687 683555597 426713659 818334942 483957010 723201109 211692954 606587580 342649377 786120454 173646350 328385806 290082114 680698561 394514433 445688194 196023388 338945051 250930902 291954595 2628362 358324653 310184369 524930348 325805196 842964123 816481630 979824995 883498261 986819007 764928856 946158299 339620416 868614485 200085579 553305454 279051507 930582683 547895106 950271343 224666280 997068229 40291741 970420753 758343230 995253133 719316037 882170232 223389929 783412066 61582667 660094074 413619258 675266743 124352304 241753077 112696303 977887097 856834719 946654450 408158930 975084560 526900385 557652784 178631513 962091478 742393367 791718451 654053444 774138090 254879744 866201584 191029394 630240046 478823235 479151841 424235954 538109959 227816100 777130999 571592147 639205054 489519275 649086492 57773591 683079654 169469659 457616869 18892473 176534235 128225838 843748730 665708068 733415448 531012989 827051999 494279413 781375785 216696752 527672153 484869384 669046313 108777905 138630757 8303672 8686452 6443459 903329698 200575850 646718940 422425488 810835531 648446857 774932868 435719550 926304373 405390295 471303529 12717184 988754059 982009300 987971518 919190225 924442520 493162757 759109098 281447865 593820893 429908189 513796190 155704131 823635795 511291949 839086414 588258985 674517691 483787842 844386357 2609157 257516257 49181225 580514559 510029254 518087069 327142504 921017383 575291121 755144738 603109105 752495432 563580372 709803552 207457117 484294104 21974734 59485535 36754595 733074200 603441511 650513291 522627737 827761342 382063403 639483108 280610602 884014738 678540615 742057488 191334714 891908692 123208751 752053768 499436307 885727813 387252538 963846237 558097877 685696472 350195625 769845212 727468937 905613339 39676576 224666443 90474717 178077799 84350379 349310074 247413650 707597467 193241433 478442092 471242296 763386123 653113301 727937828 513277801 681439092 247398042 675034084 589664138 984138636 378719312 751563795 369656780 930894773 801285586 961287499 402341906 674002578 487263657 893694794 343329056 928306013 903294411 934236878 149456140 950390797 376748221 996109035 329743089 579864055 9490941 658963091 642446903 901649471 855037430 990308916 419856124 514543861 300657831 760019575 310892932 985908730 689641369 904464331 487059981 665369624 519949373 530196871 502115166 549014564 9509524 911125681 351906422 536460637 207552684 434405482 257131633 295337254 74631517 88063079 5026785 204087216 44238383 254680280 65064486 353625559 278258290 535740506 20731594 979883484 138746143 194782890 36192086 715026249 256919090 592926317 282483686 908689773 718567118 854606229 64112902 730112310 331213278 383882272 232377176 556428761 461183646 769603779 154869118 715054511 143467299 578516956 499059943 536330807 66355817 124389843 93880556 360729416 59675072 681229791 324063941 504562315 324930012 650810934 93535809 372952891 151002352 593423593 253857619 671613427 302297490 325935203 231354242 603718056 80677691 553117810 497901701 938035957 881819270 897295574 119746229 782280195 661640565 874800109 375330239 943521807 773026453 881738993 38474900 406505671 269642153 482413813 78630600 718101042 290751357 345869762 221213410 844849145 524392650 865417575 854506779 859080342 427634406 932711302 925681806 939416316 445181442 712288431 523196678 617216046 283229636 321805384 154567086 175438812 97928591 291864649 226391845 820107094 119151231 231873242 61942134 877048267 143394237 529998420 307236659 751281738 729071707 777325087 164820092 751488029 203945777 948068865 116815776 442175123 180246565 777792652 252993562 879909349 357614266 432948761 43419790 206145288 177338960 491804858 88962978 283550279 121621758 152938057 88911584 201922287 117716431 438200379 261939651 943608173 538347454 562130070 404492710 778466171 692031280 908499902 761767666 939443342 245451846 309483758 103750637 503693854 483132682 510881365 143006365 897529430 680116406 759073443 740997258 984446976 863370772 946828107 143703209 667023803 199236872 454353622 307330921 749638037 380488940 410128101 40795303 538271742 190357417 879262081 610666064 964035701 399212015 568385754 116906901 804213291 302174797 964882086 181064294 602127123 124797950 489157267 434788188 568127416 417456352 587521983 17843785 79954733 61569844 566336885 24372699 465555711 323135145 694214821 297591666 913633484 19683395 812893981 792611015 907624932 135912523 342721550 40786735 352064852 66545504 457543299 201225964 270096183 237505676 282012031 217979193 806883039 735482562 925319750 668744172 800127782 417447712 861106529 700523641 731697832 553288974 864524346 692368246 783416351 183620181 864332279 273107604 800072952 425243721 901569083 846043013 872729306 506130822 841053354 374098060 462508426 426975201 870413761 377496017 412482485 147694953 516051850 194492197 342608467 277689377 607490220 239384169 484080288 277452004 468692319 242949694 678868292 471061948 795198709 31064964 81646462 22718403 393228308 314102904 417456078 288662818 901587087 347125121 542344654 23554880 560916326 261928501 599866712 134078429 566785580 398982582 429189651 28556165 286409217 34637597 264696761 97032673 647609090 604219353 944843661 708108548 999851630 779708278 869974100 576913258 803487299 269454374 745528740 459572750 650525362 499905705 834952686 645225243 940130070 418766280 880577794 472793236 799852965 386929260 805862789 612706181 841426407 59106705 991004714 272904112 750335401 691017721 878059703 193924530 867164564 381727103 811554375 47151824 741654904 47630001 401075744 85494516 612270269 45269622 448033931 446502294 861028865 859512924 888367701 697755156 744365061 204064948 988605755 660860344 739712302 69889348 598533767 585730157 597209470 222087120 562453566 338236475 872206774 324545045 590922976 263410684 504398662 22660665 137787990 118522715 233401368 47978566 996903208 813255947 941464701 579819256 781485679 352568528 617359709 421497947 626037734 236353672 401887745 212313304 376566298 325062617 540313906 203641575 848146587 182203016 490306678 430500538 534063371 76528732 420921072 209577386 992747146 788013754 923450512 43093057 731140314 532420223 884582781 685708745 911094341 119407742 934361280 652298979 793157994 197623233 474474019 422624328 701913455 435801177 690352268 364417365 867247199 635948958 676399735 631775672 713243782 308468485 978984244 557605143 759635093 518235311 895602193 732143534 795602390 262172149 312346689 99401695 169116103 26231322 230379893 181765899 868641495 183056778 266503526 176146787 749451123 529462983 597232220 131330946 306377842 65079971 256450676 229610524 614300125 341612576 637281637 49130598 663450088 633798654 670900674 414609675 540024621 70044299 975847519 887994184 927048160 50552950 418574173 378657311 569642147 148836583 252340914 190295498 787940157 596229059 994144499 448465785 991437649 707197251 866868696 253492388 486336642 106217540 847111501 423326557 846986925 844342078 957014797 387293205 646265815 247204785 685174068 493229559 667381129 202751503 536443024 207730388 725808740 333228128 420101817 381059552 591409481 225788899 301440157 271837455 728071952 272859432 794641521 527233037 583413550 302599549 308070481 279939054 388687135 61160047 615111070 214825063 730734378 665283511 971714438 480243491 722167228 645045448 904172257 649673136 699559010 11864318 267960104 54053932 377566012 77999226 436700812 95858863 131175980 44532690 744127627 711387017 831227966 674254464 863051477 307566486 832556051 222548329 963358790 90367425 999077152 143424908 281286865 207739175 624217825 383231028 882709925 340103615 559405984 119377756 329553600 318077469 358545033 250033985 383393875 294867950 303401151 78518837 404778713 385716753 488247524 179685371 719864656 441901384 482898112 195388550 527063096 373851956 597933878 222985136 625725665 31102230 724613097 296999740 681601421 316357783 347004843 290415279 462341191 290234436 869897678 186966193 663814934 447459676 624490277 119121439 797746568 401357495 527382166 329356264 860498115 60068103 590415399 334578006 640791252 44000717 887508571 42186236 639902302 187950195 633605970 503806267 529965438 126287094 180533554 22194260 248747162 132242589 975430963 562737112 696753258 375642894 899955974 185197008 213399558 7776143 610858943 222500505 499949960 148515409 789774595 88837982 402688421 294060533 994146865 945944698 983265715 532161403 708869377 549969812 558110030 92874113 634158824 32387410 430411104 254858399 912144303 377591260 715071786 637729095 921576618 52809387 542542836 346175648 814798352 59364951 595097116 204591010 850389753 628206856 684513707 229459887 487343046 415598305 651669847 521227418 948949167 265974492 720912211 631948767 787758212 439512384 924218104 258532543 491630191 391194586 863443843 835199405 945481764 441382220 899828580 841812614 937981789 35526671 299033374 52279986 574253398 268612871 915838324 893512064 921317245 5665494 300191955 236468388 272785280 83208731 973900465 220276061 856450944 618716446 842542903 493686080 654507285 364914362 878767644 864082166 998133367 549266280 946374562 715177693 885094474 297398115 849395655 520585594 794922306 386238757 693814878 507949312 732577624 55189311 911080763 552478318 985181277 156585360 205565383 52727922 398766701 338375979 740255210 180133039 879984808 702574004 976393000 580871298 993623477 485319995 602096243 40003428 553546362 445590217 837789782 647137020 814451799 163782956 238062726 220435535 914774813 16366562 733913608 360887588 914831094 705388763 952310313 321517074 900602089 837243737 877300534 364130186 550896332 407969755 853282819 376838748 948688426 167103961 656142770 149960882 653332203 251655671 274705324 244852240 369643420 40714357 918844377 894726399 936809390 251854412 573091639 399967434 794920666 87696718 528242234 14468451 258015294 4147411 163184681 30110585 305958393 165069598 660999992 332476865 440639348 174200849 789427969 9687003 178213869 9065929 583101817 251496130 602351064 590344705 890062775 185139336 772528689 734409311 883181645 880301970 986653465 724151429 770335521 471208212 939197851 398014057 442814458 198172994 350857552 254939608 876349427 759998907 856497160 774984518 893632400 299741562 786823831 603857701 662743934 531223626 533583420 181153480 278962743 264452982 270214266 208920542 919435998 368769526 682507848 496202985 956475576 456524059 907143093 607913026 791531205 567898076 835688027 758034951 882002511 726858348 831767900 823560458 985786114 441981367 605224213 414815368 871390901 645043869 713916728 649426406 844005134 770092564 963083538 645007214 858833761 279179335 853491599 689275462 988778062 336812547 930075205 595976061 909467594 104929923 323471698 122272905 123220152 111622980 395421846 128145840 818642731 607045800 908853598 709676706 937669332 541535852 958871801 428420151 528695547 378074230 581606154 324838649 917373660 416497255 964676824 249988844 467831275 124746746 546569195 507696517 598121811 278941611 450235991 192093902 930162384 783079039 802897638 191172513 686184028 373647974 770661381 674084360 970676402 790567455 859161282 438778099 818382689 546898367 878364056 555359059 944030644 437928693 754220994 275451567 318921736 253699454 575730095 487681676 798771551 115842993 159983619 120298928 156159349 1583360 244846706 208434077 348682066 175337094 748679488 518478052 773432168 693790239 791247665 99792864 452165712 441965766 665709061 106936683 922549404 444566988 864687852 91904852 611211469 599645110 913365543 567565259 756414915 86587329 904665465 56679959 123613965 26637704 229061883 178907246 211058972 75271357 105721609 38114601 561090096 140361115 344134369 241771354 318342612 209961029 260042610 113124521 293930650 267347674 861507039 776239895 825334176 17803356 231502885 112856946 854760963 243798088 445432126 94253157 345378959 148269117 305092939 86625639 771815548 153679571 298485074 190804736 278646296 148952095 244275778 158555884 701388177 179847475 234203133 209852133 770262757 248529591 889000597 707047306 729610440 562314966 682479297 161448554 688828474 44183511 601606011 363622105 782247572 115661009 868940708 715902190 808165879 545871577 603683172 24343738 315088930 180982748 438185681 39912843 982612475 604407703 718874778 41877748 911576168 40012990 224503561 9705404 999610927 52058168 477174523 421978492 777587002 634932582 715406477 494888723 557706143 423585386 586152397 540284085 874294458 544429591 569480460 455417237 651774819 114062255 962005334 47798320 201369891 110364363 903450567 790904624 794685529 4621650 887619029 453365368 646806310 47976851 727165286 129244382 510208303 490879527 935552621 116257224 485879773 314091684 626107710 412262696 919007741 301738304 586913916 305621920 707312287 517220663 567203397 544323388 563398157 437330629 500216156 311692525 901513565 666459128 908060056 590192914 596372727 368178782 738063773 394385502 804447952 662055812 697000165 417265847 490517839 144905013 733348433 726816691 733793098 577315304 712289494 288997265 685815561 14417767 842434530 556733817 951889853 267808686 440501681 170983226 586431719 78100161 632288626 290777975 402137216 331579070 410411566 174451824 340432898 258748553 896967457 646751097 647909824 566083775 985285697 452567135 990943926 960752335 962791534 588811275 614263929 397388387 748066038 223313986 327270355 139854847 315202165 249980785 973497256 610988803 794206098 777198581 803193074 188334041 819261635 197362308 886282332 272723489 393148756 193124757 741631187 328872295 378232459 145655231 289007202 287730264 768664854 414154317 444048802 33543123 675170258 136437804 248156190 99495089 433536750 363862205 644475456 111059361 747439654 353524824 918742966 394917883 584202970 405042670 718811206 257589176 297784637 178269402 716348231 400008037 464602762 343691836 695297119 410648851 949628328 220989879 420241225 132892214 881451233 473972078 477306146 414994693 787087599 730743858 956799619 4617013 377605742 44940364 901867508 471802781 520924118 41370443 208941371 61677629 102717378 28945137 863428766 859997822 950189529 629995057 941154243 494377623 930847650 720136833 836911066 500314380 578285057 382095883 917002944 469732709 852827468 599370668 829099177 76775230 576619995 548537909 550899214 531871646 675619686 549875553 660399996 599011099 703708718 466939973 876770025 223683130 957184303 404678830 833777228 322203647 336486666 19810810 707919387 67825838 812510867 184145068 324330471 105489541 409422077 105824058 173598619 114166380 571577408 555603391 650365359 41345532 45992648 32721904 205368994 166009570 294823304 203729382 288238247 2206928 214969321 70617093 244740391 139213411 293950435 33415593 669020506 521040593 948129485 253698 592521113 481967254 869133959 826147200 841417847 478161190 480297557 343252647 457186368 433883186 963224961 703828329 881172586 5024549 988027544 244496169 624001554 346884857 893980279 422483365 540914770 408733452 826301834 11774263 12599274 9123004 712596911 267398900 462589359 213900918 320392437 185264343 624318071 335806355 621411298 495281887 858916796 824370446 931877396 60813706 121142484 75949433 276150730 201359388 970991925 612638096 740778530 557923686 868303136 736019345 763038620 148069388 262643744 55299847 874612931 739925804 936184985 51236791 308243953 231452816 632951678 350799795 407948415 271868469 712275625 572647757 621358741 141448789 833717203 101107547 803888421 375639893 416054742 74810050 175007363 216854 288586229 165078642 911488298 81066521 906728573 356867707 844361095 559954410 873578163 701769600 907499995 222484105 595762478 141318068 589720174 311446257 378051299 169557012 677837535 97475532 964511398 41965379 912544517 828676099 905773025 861434015 970479525 770760553 779272133 697447788 702485889 644832462 889143330 358433561 616314341 1897939 679216626 366027596 969477081 840427582 935504969 620487103 669173516 629904091 719183551 651254893 651286811 540163641 978765038 488207528 787974946 139793100 520855602 519445765 674298500 243139106 593055396 154311321 301462245 212669829 375096531 295434599 677384730 155106249 687115655 373941130 602684208 469259379 657174250 327579882 349545180 112932105 798671654 355373003 957507624 640585178 670208718 601454718 631087635 509158803 646843549 176192969 640086686 418625347 815573612 459023008 470013646 356690987 557525029 130424461 541871529 396819194 930367430 346870487 525653107 62116549 417188817 266255587 815414240 697447415 860531819 203339719 978150812 505028331 961200007 426876785 566477196 1039586 435334408 167893216 590442564 114490193 881109343 56043876 569727372 452949774 825278203 789296405 840977158 94265234 954554831 81073604 754385058 617862210 984094698 241182817 304087831 87433441 401621887 53265339 841257255 213478914 954683520 445501704 644444287 118034077 454606909 47586705 262138788 4432371 35776107 12920185 949900693 742475055 814804392 801848696 835904307 672465766 677693151 335176115 793488769 248488722 502679620 301465322 681360211 411732225 660441612 40802102 725986902 155372626 898176089 99283614 911399199 160702021 193124700 124039558 433900033 73717790 182063485 155480768 188082678 149223324 390243921 347253922 649068530 92221405 232743024 17393689 879954323 41052902 582272176 266513277 672972813 160399058 663996848 194014732 610064888 194530421 593243881 73230422 625310718 357423792 592881883 163000143 933910466 164642956 254944989 164211598 984718202 147449189 856008250 278290697 623222551 479836587 828718477 631831981 727775701 68901362 727855492 589979352 602624512 59592525 699188814 349292549 633149437 93913442 700666748 545291553 651684133 150257672 473250210 413910699 813515316 549356239 918777050 494936704 747958137 735770474 963483226 325240910 332633020 259078009 982876313 169787775 423686385 234614693 584639011 339745468 393964702 314797579 488011899 34882860 835590327 630395315 790798781 324923453 702618265 652675758 981479919 386369714 779679815 233416367 785999741 502120479 813054156 427892717 887576394 70996802 414698241 33945156 825556808 555258337 843411125 126138127 559051043 308870273 738401048 561786144 849302193 491357318 996922482 25348741 837125903 376558443 892408606 560052519 806145318 204630273 847226656 473042774 502922855 401999742 551279304 490180214 598983754 228409134 444546321 204857592 207271658 155331055 783271630 611806931 778401024 681679900 825221624 274006965 587664133 61366497 662457146 450099675 776416993 521201433 638125745 122519044 311747848 121895705 472751866 137554031 370716723 302597237 404035994 272900303 424686292 421665401 811960012 458088535 515086393 42937197 943037158 466500904 754171420 161456574 725023464 319997153 536503661 336764986 909753395 367469318 904805635 24290333 59047365 35018449 52357504 39287596 974136862 794100364 958145285 945141758 969142010 88551332 973309209 592557581 682451221 190758292 861997839 589576504 974386470 940284647 970845117 944705200 954052447 314287723 811152603 501080920 849293649 559055907 620471332 280258351 631262131 108986015 982598662 639209943 719927837 507995295 929446364 616979108 940923149 870871997 907546692 317319153 536925501 156500214 254980614 76136001 385911524 124908539 192997891 23793535 553549695 177352117 758105517 643375793 856049255 52208736 512364103 481980863 970299190 153999388 745850438 188627874 948803181 287690297 412133369 30550203 891457625 19663714 394545355 141186895 947945439 396058885 551399238 526086298 893459014 238694054 540478260 175687766 836560575 446765131 773025997 381734850 857374395 178105221 554673940 380025954 903221389 583928841 784907121 507028442 855917799 241740395 750011349 646984265 863977865 238842218 398969036 114148027 869667526 254027435 784046301 110892308 188495300 184811751 683523977 662775677 953737992 727686594 871589021 118448559 197853036 169067214 280395424 139084880 247314942 208942169 950081680 288112419 981165370 954147527 991705737 679981710 882393479 195883705 668980780 562412276 898855797 790558340 830870764 123561779 797809096 133562790 341542703 312745609 463879695 248316621 441016790 296182461 788351963 437033227 460837977 42335969 122874330 30562449 717335689 581750352 969411635 265678157 599291974 134899280 281667769 48832708 731973390 249484442 709688496 307640972 435214762 396707037 611810160 34782279 516157678 232643952 959788357 673915683 998041776 236040849 977418245 150179940 166697059 133795224 702285410 515817252 555945554 362610450 443058697 118668363 634355589 89583859 577569324 556920636 809075690 303507954 551566501 193917565 861908622 456579358 904878660 542587577 780462375 293623776 579029948 207556717 220520950 111950164 196414409 37247566 354022890 343313553 838807635 515792973 995401643 338185950 811806204 406480788 452235892 285478074 355373943 122147200 260232035 255868815 964597093 803146969 834720420 477299337 759502027 39933315 467899580 261446105 280188830 128182939 941543791 638889506 972784877 719045711 982510451 914401150 923145011 854728408 969540371 603641904 902870091 632552371 857421248 661882342 788098299 460280518 824822799 388574682 519900804 178519054 706171941 462372646 768753320 377405281 966188628 333553107 704222729 670923434 789215357 636108082 830173488 416081231 623769546 575721868 733438358 403356043 871631039 742537020 760160751 222759016 708195400 380360628 707701271 493566266 908304215 333090299 895289730 69332001 223020552 40514570 735989773 272305280 291698320 77895689 471460242 455358526 498610778 295041554 302030993 77537874 633555378 29231045 542439109 352466866 645193269 300495049 942177284 627075438 948683321 834455839 943054318 13867799 481724127 278260762 285700021 127016041 499932609 276066160 677523449 335949954 851642859 491937166 525853979 152965968 853894072 670899318 687452982 448271403 550806896 6342745 754582849 317100665 763957557 447173077 772610490 568748548 752583282 420440270 921478514 173910004 468093758 274730 941661027 143886107 960683447 331995573 514993811 462163074 898308236 674630675 916114011 51144471 191215895 67384756 217821453 20922354 568939381 75717154 943336022 198295534 509829737 102132944 156950855 151404335 429035211 7979410 190170094 110722059 587009557 140069960 648607894 61986826 531771893 189225375 235662681 109286859 913238594 718539857 919047024 733325211 821186106 618584419 985433642 360235075 703501964 616702885 846410545 116238366 810648855 124176376 825894741 3926124 793881829 380003422 904225393 532916750 928896104 511291466 549573970 226997404 804095933 693216389 997563559 592504388 800169124 606427576 787357342 571943454 935108685 70713527 577081157 496329756 878558055 699126217 894178582 824969044 829977442 602149191 847532836 795975889 817976213 154942751 984822055 344424998 709092899 544652523 946041415 810264266 990748835 828681311 895330056 571245451 937763594 367394518 493639528 159238461 464536737 245355017 269742327 176249217 293009286 247118277 637249017 494293300 799189695 381953997 383622795 174313945 985864586 236096377 946765424 51622186 828151743 707465257 860832382 181925007 537660758 350531493 622809069 111353272 163456101 98730446 505472104 66574941 372551597 132355211 260609190 114404886 927252930 224865025 559028433 187840456 464540851 81093627 133081016 92076010 132108692 70529603 278233667 86172990 614665846 230789083 626586230 144147707 702133940 296718602 746391067 575867121 995154293 590178964 750297249 405042083 803044648 497011839 781046624 677491230 903888556 681417270 898156112 487000066 707968120 391141666 488689653 129111304 526448804 330427260 842597179 618054761 876664318 439793822 482155741 457308239 659384588 271797157 828692602 415909200 648034579 460748272 552604105 534280390 920981632 356489728 455484838 413406523 831794352 531816612 854137849 554876754 977040696 306511893 789741881 493106403 698757817 189984757 329867049 248083104 642122899 545489861 977570965 896832453 996406573 281071364 571322080 146517943 895500679 276184761 520122938 409176774 955737976 815894804 819761067 417916258 525081513 9406428 37175287 17509413 913855921 867087129 958539895 272086496 935966380 565979175 896996029 289109326 791391979 624607414 822140705 601297203 645975927 437663502 682432284 636936410 876760003 46026497 685754241 39705809 835388516 817487015 923284616 418299212 820041357 233562654 610019272 344387138 747226558 289596147 460732250 30307472 35379590 28796164 882607606 12580377 879621221 313313777 548113412 231493972 873635223 385132183 706031745 382156602 534243766 36766983 60433055 28323248 922129215 803683361 825092335 718246446 990653081 708800290 832337226 111644108 470136444 322466708 691680736 553899540 731056364 157667106 948184657 840917084 860992397 419339883 424527017 275684637 321976602 156158432 681560674 149255791 639643950 295080501 898927360 590430512 795886255 777269320 897360258 210563036 583275043 310205348 321012403 286580109 527281211 358953967 654513926 20033749 294288666 101946982 861758360 790869475 862994971 478637911 676608441 265884226 459089737 326822352 431963606 420387492 996161406 299546401 625787805 404941576 555402173 331364945 764619923 521422941 618446646 65181765 527504838 188140420 921309876 784669617 794506557 720116976 791298724 730848011 884364422 730485354 747877908 198005278 860800479 854169234 869835681 24531223 45619707 15530850 970938872 180581441 692442528 270484805 690635907 125087132 993335254 470372059 649661160 416774162 739633143 417671412 874190559 60799235 149244842 57014431 956070148 587380801 750670156 641052681 699295540 90002266 819811950 534666449 813305323 255848631 338132113 24861594 373007229 129214045 947650050 934693395 961755796 891744620 896797604 88716545 511127016 140527681 787935019 685635598 732165267 113641266 648556766 215464354 695372483 499937092 862612599 630651834 991570156 268920623 513002604 2131072 862000659 634065292 974568314 70684973 254274243 384452 45351757 14948653 380661184 165703530 573498772 33428094 659723597 223659883 793394268 589405370 746505034 221375283 255144237 43395401 961673807 282356287 748558276 311267694 335219534 318194278 414601905 203767957 239292002 189163429 657072559 29286489 824283959 669384291 743852204 442553273 705352672 697681263 912916025 42895880 929269549 519720834 666020191 182035198 779447877 381480568 823063689 224214781 398721712 2186512 385707826 300311286 586670937 48501621 895539452 482327294 960484667 589352153 643042002 394242537 623020007 390170688 622491136 162606198 218120598 60141356 502502763 202516848 278831340 167643684 182795121 66776816 482455601 317826712 548309882 4791435 466834973 418584264 567083394 332531491 870521657 681404109 922531556 840015773 909071299 192247903 261515504 68345168 216912433 59094016 700321748 654162893 956886479 733303348 943501127 407183619 487238192 166616059 880232158 657503399 823660346 650589747 734488783 574802760 931028125 313146227 460234938 329663907 464128622 406760929 775496817 763662789 770620242 490472967 786947793 627368220 669556036 389738719 583306111 90986330 267976358 22471696 568662983 43774269 45151384 37147768 761024401 399818534 600698762 197303334 873680199 162750670 907635479 849386156 910229549 538841959 906578682 417445535 580650427 514010771 893306443 290721939 693404630 610469425 857247438 452504109 961626953 411652592 526159720 138968998 552321129 349791905 423015954 422120407 789431202 756390554 838863696 129050972 578870540 566067171 802251126 463487969 801647789 55463297 586570748 222895045 256056042 163183611 803934906 614709086 840537448 42306175 358735532 253334706 339637815 108953667 958051276 362694478 941855320 464497448 584926568 184220231 899214778 453175231 511695020 167155134 227257335 179090481 277239644 192276953 503662633 380059805 860796468 456262694 538441912 39416594 345810612 13641246 861336461 634922758 954607261 403212080 899767635 882453531 885426716 54927318 683205630 53061616 486331125 343439121 979789294 843353956 846675359 445577102 577038018 428853371 982757558 690187551 802287131 382037048 591421956 126068537 821895771 36060528 942111194 645475256 923403302 631500630 974490717 659610968 984048353 738031218 779181802 161975007 596763374 103267327 397100249 181727671 938915875 572610980 704444766 243280427 332123577 175739589 591660478 235941303 539006146 206424964 895262822 199629303 747645280 258602600 737872202 365157098 876608141 341443709 699819392 614344968 624487529 35675804 222097448 176467404 386828157 364981826 900284375 887291929 971446787 74947458 109425104 31164693 111411360 65025783 559039608 161832600 825060508 604896936 665462445 245830505 532912116 88836597 889445666 326887913 384371571 362652855 529845792 48066274 740181296 233828439 937178560 36722356 231809394 231171789 600965172 206653701 450067569 340857675 608769307 146526327 916526938 465987114 588085798 186425626 957161320 554658237 683199583 174846993 897272769 90113917 255254858 166508015 330610038 206582772 252560820 218394047 804543980 420723430 741777126 49528192 214692400 52418181 398700474 273817648 400320168 113469011 813251422 564047664 584323559 24907960 88325831 46555972 484198748 50439322 50648680 37397544 347715803 260027497 449416789 278549937 686871466 578997959 916508509 760273763 880669980 830293814 855865982 256819290 885713699 269490366 814602574 668770451 977441212 157130122 666404044 22357049 504316432 417093322 773364938 573519966 976056755 288156563 331272599 241450064 539549553 395452329 711742871 336999794 666559715 475848072 965601299 670879508 727839129 456969301 604582248 334698107 749105201 532305112 694511905 376293041 729372217 697980980 764603409 116040862 826006248 500673044 699397971 463662393 466363496 207887389 706611889 214522005 432331342 342710345 905662480 279065910 639876993 499829704 612216932 362032679 496632748 225930506 991753294 471467936 958221475 536134311 802448812 143745026 495289047 428963456 834091536 614564228 843625325 765175168 884971964 358718612 442257692 202338065 654994726 254008838 275942392 271914506 512827034 164043696 990742773 739550908 988359963 266964894 323472751 231160751 335787057 131115711 342350231 176199150 765295065 591727316 770807623 713400986 967985746 193444135 748741004 485780417 523678389 335501618 941191135 254258701 874252034 715040332 781559845 163822741 612964555 302587922 833856938 797164807 817775460 5320416 659136282 615049998 639499606 534739352 601919284 309128186 380339719 325685639 335499965 106209539 314847527 137454123 479959570 289497212 593835605 512274257 556311958 216826262 714405860 691297685 730500209 437639612 950284815 392505994 600142364 367377842 405838778 164293470 984805890 550133188 837683580 541468176 775712036 197739966 523151915 228979385 901771670 624187217 962678471 269641177 852577542 296285909 705183405 343596279 843180973 762317513 967202901 906211912 942955439 605642855 724694697 66215223 303848715 191109015 195417057 107745744 767467735 741630717 889388312 597562469 794580660 469047164 651391435 584176786 882319861 189038916 976615548 902352576 992661374 683001562 952778162 817059377 954791632 682430057 838340817 640912657 751054407 528719872 821419577 559827984 663654447 259271172 531376173 499366664 989596906 849258306 857883158 662913951 732373410 598397617 989023340 811221427 922060369 799697925 920048850 799233700 819109830 185321852 692787546 199078527 439990087 189106124 834809021 833567767 997715574 533216512 662226069 644416684 940664420 150506950 422101851 124073489 468186731 290087225 658544287 529750123 773596139 598365456 794673716 609868302 835316333 160174967 608830833 214957574 635047832 156062205 474510835 105124638 692455590 298110938 323676653 205622109 627630332 23753841 397643891 149771354 289706297 269350711 928522280 22100605 422747865 225361373 398755270 314927499 647794510 545472761 988793428 979165608 987919200 286490071 677502543 376095809 925236624 673346579 830181136 65708436 207538592 95049451 676987094 647705063 836411518 257294002 886630760 496965751 892084525 60119381 594671241 300489796 964655806 656676477 984169524 461951080 673593214 650387353 979740020 300067839 337660133 331802255 406261741 278558421 864763083 262015173 863943107 698459191 801310101 95725704 402314883 118461604 230417857 135758786 341595362 162035748 323248891 174616505 331688194 305596281 985229443 79864983 677054146 301791652 359336367 75059665 681130074 162421429 837449759 452588153 778666644 247504005 601061016 92327372 150479480 21767595 991936133 568311309 647374072 260408827 784438232 387433614 429637058 142520591 541277117 485078676 700715362 28088294 170909511 5475435 9030001 7994946 167443177 107147132 515716623 293682282 969973303 242948076 652714397 47504542 670130462 528894892 918243715 204418683 792582246 148739713 719151191 533917768 850865384 351211398 651314322 309718062 427971053 415764898 899429525 186539951 735477654 455047954 681063153 102778690 413135357 391866050 894198325 843012385 919616244 185659200 621790982 254560139 296976300 196770768 524694298 304659495 587889408 25877859 129971162 118278752 253335243 104775930 904915427 481793216 842075577 296832844 411929348 49624988 340737997 50352315 801957570 500201405 547919771 388568057 629962713 313096253 821152894 139637750 464699424 427834028 968613453 58155302 248968948 198942984 309300264 37285198 647690186 481973136 753743295 145097055 447709030 7238174 910525639 634959360 743520165 360674654 745950378 304203125 479706282 442803562 706271137 276364102 849952239 196470649 852004679 750277723 929347168 26679505 706929908 39201528 336626382 120331841 508364099 307218191 980871649 688537161 715375650 453839839 741693663 191174265 971996098 938778249 944939710 801249729 920235336 458446682 604495644 216500388 234984797 212329089 706645356 382417699 531360743 217566645 511383605 163761321 786750145 89091062 863659973 244634800 494664417 287584126 292146853 149747164 442831991 214651914 423165317 192812228 807665497 370717008 924211580 438879969 740911117 732013724 923941936 351392607 946227382 774827693 894369905 861575852 925954827 323164014 692673859 646225268 983100138 967164407 970937725 69723622 564506474 195503688 348067314 311403805 890418885 575715774 724114341 326698226 367158818 28667912 838091338 274706112 871202614 82409908 629375738 212549714 696905991 562098271 782610643 599280674 686737414 685126597 716314681 690588582 755144823 74129755 289577922 211995764 517962272 12508992 23812467 10281006 256999170 219201693 665003868 38780017 557765753 284943213 369057597 291614242 410286586 135303507 159239294 54467615 671153694 273561815 719980310 244592853 435575204 362298993 617567963 398702015 884957649 36589162 441419009 48273824 472547377 19741126 750610210 458546848 749826084 269125523 887328917 273621681 480568854 347761400 749852750 445244123 686372975 521135628 531542322 508702573 977337961 653303372 894212365 71622862 688588407 676638933 907067569 665526802 897351126 708111253 948849023 80119098 338188689 188078409 894628780 485724429 976453515 549452952 874196230 795523 828107199 758374932 850063653 669974296 811771269 103757285 760170012 710747187 989498230 840702860 900050336 469456599 773518403 464667469 500733913 460588111 918714453 463109003 836807996 504791295 919300845 253594926 800321919 558019330 597282825 477394128 793748947 618329209 757239245 249978437 308978146 284746325 750530222 450471920 782841724 470979049 719312058 683859027 912788045 734363482 763596277 386708159 750693768 251900828 273391468 175308195 784893843 504743178 872431520 111868304 765836195 754336677 868937473 54069215 899056727 824969697 997925531 311919028 989966920 201607944 868889829 495387911 915334200 832483113 854492235 436606900 965471012 304089270 592282531 447931926 983909992 451916330 976146255 61743474 289145350 70142720 991446089 411086254 825808339 470743304 625978063 58160920 199042484 157697832 482091574 119207542 545078253 345317105 553522085 539773027 598297722 71888656 980538493 541705144 572543160 485412759 519117097 204552260 450625954 125757519 898985849 861357402 997822561 821297654 980389071 154982698 846564736 273460683 718656329 348707751 565318108 329833751 378240034 144182343 982101957 93368373 943104932 732392968 847074030 325529001 902442907 34266160 507385000 18851843 379307627 44852022 736858062 8978887 981409842 150207054 523781364 79193393 545767760 279678882 846757369 303447717 387429106 188355207 538493587 457046324 873115065 344705584 421626501 205574565 334742857 206811274 406560478 183125403 691032409 378145949 612512558 137599999 606701753 384534481 824634641 428582583 475168388 341695211 481227713 52606190 493893302 37019871 646496473 392740002 519665832 114694271 860658556 694547899 918760422 424277002 767701543 442612627 889203164 563909934 719957056 258784120 810215377 91569054 505948462 98827194 573335550 489738528 842581163 471231392 836846665 32602498 102490751 64942277 441950109 297257907 493923060 291090631 685247606 597231801 982341767 532784539 559687814 218616284 814018502 543276416 711130029 388466937 627011164 93268618 328433199 80039426 616775985 585595802 607919938 469658892 552522553 79886284 396176085 126956787 825222618 117966899 210499087 60767203 452797118 221033688 480004324 304383976 882970758 61786496 69409616 24361020 75069429 8180171 117352859 94692452 117365088 76194309 485494108 301030873 777231238 639493949 760751011 122106811 127000268 2259910 352149864 344722937 431772226 247065915 647699580 624353444 746083216 534594156 643581952 619568173 958554953 803482047 862060997 185666439 583748688 578832033 945284682 25976207 336108513 170805892 817585262 307117870 323944401 308795593 565212841 280443885 288692401 207953351 500578883 387071670 875484610 160066034 643446792 416005229 468228985 325266951 975692261 936169610 959188795 354199052 991747219 437850955 651230369 279759690 698625115 655709872 692225875 76720749 642926758 154520230 577054790 504436613 876449295 586870337 977095113 708287007 769246779 449315403 885893266 778302139 964272827 829214993 904307865 843696956 986246975 180242208 686553785 632952945 683803540 375347377 725192499 722075065 791210864 778097831 859637860 126972843 173540514 167811049 830265704 273695100 373821482 74176338 111970128 39974981 588614153 479024039 799093316 513882367 891977838 779170846 990748733 587366417 720189019 706471750 771552369 433861506 500358444 161324578 722907083 75400204 672040520 558656355 767729471 297026993 570943113 262008663 754657424 339347517 797110994 166591428 357710729 143538988 743377172 147265980 710162084 85844568 125922217 81494097 791894078 50670527 987970027 946865137 975545588 27565617 409344827 402252689 750007163 38099882 597669033 151643182 189984007 100637927 801568179 735736604 877282358 217983440 390008356 53271681 131878096 32444483 48292479 37246747 374660711 300187936 555734477 350903495 367799107 280240235 829879596 679564608 760498191 673471316 736359033 672923775 987052445 668303269 804653277 368894182 831922669 161960339 756605855 374532005 379459601 215091418 621322657 42412017 655658136 110378439 715461579 219673485 452070991 159847573 343632403 90423462 173509528 145090454 670590403 240157266 302731619 5025408 442840744 2392902 149985594 15769558 650358415 417953209 870721028 845641623 990168506 734176582 895148248 447690372 740143839 118904776 653959702 261410096 395955369 367874474 502307561 252170040 915982510 766756340 877902092 444036909 906612356 453570908 475972458 279870533 563857887 175117872 322294055 27782545 862959192 385916128 446493270 312075362 673040752 10933907 268099352 240008547 929899117 792993727 925581934 665692894 843264901 658585807 711969795 500934676 580952169 566861029 913342218 447054043 828567404 709348066 793187281 388576978 715855211 677133657 799828047 45734027 646650502 419573905 870601642 718700842 971696811 595216096 750911496 451213045 933456488 827199735 833854393 827709106 864832742 827512775 999667444 505191147 588213234 212098029 800470259 281797058 635551512 119298389 653451780 559270912 705881357 644487560 781932842 758956057 971008157 695662854 795345136 609048674 709173913 489458208 917429237 412631292 812916122 32220807 821378902 49446277 641440130 639183854 957279256 79575949 896740632 185240057 619323854 530022143 807745265 732234920 745007542 542980008 807373154 678041063 931405763 17998595 888292513 213113341 359808801 201008380 945784473 474812981 988403036 952482599 968401599 556944445 686214073 624151298 849505586 653057517 987451228 40537444 600977704 16308270 393157376 177771021 643245913 426595484 868024794 166032702 434105952 429101168 914806030 120447792 716441339 662328367 834667854 33616100 200969126 60178549 913078364 850306430 857496010 235181055 484964446 282198951 926384404 673492034 834260542 64521131 668172328 481385101 912301050 613186015 761854235 632895321 719093103 17694435 838201867 165952588 938964088 74007854 872917030 701031904 745082526 347211364 791145868 765789539 960391518 811811594 817436722 113833991 148624638 89933476 444557299 300253419 837389916 115066580 767323757 565111960 976617318 962453055 999056064 478827060 756955619 138245415 263638595 2070813 5321365 4576545 283102438 248553142 778508458 346102542 450778961 1533928 321302269 269314600 725759566 722001075 735802393 580073473 891634431 186173068 703222670 432860689 507474213 65540357 298552567 200010240 966763717 56337515 176900713 122408546 222321943 37984088 763334527 94519578 685661014 195860149 545063240 237550941 830306180 194970593 810173321 678833902 764626916 313619210 755780309 299475778 835928385 802810716 923003456 501693569 760105373 682365920 893442997 65872431 610422220 291301091 784497311 752495589 940572841 175174841 599482371 389675232 405117409 328352752 442452684 169247116 750447547 153699432 223372398 50855036 694010513 377146717 505347783 104489373 585928119 374238623 610231792 584130808 989016694 488089607 846645620 188414214 245374230 8120189 944396096 634682424 918892738 75738976 770727239 7757325 296967997 153242602 339007162 19958457 207598087 13030752 411306733 309243051 482788330 340719884 441560083 138639294 906509115 289058624 814835827 325613706 393063569 317259599 354337713 351298062 636776638 368492909 465938356 26263919 697855228 519328755 655620647 217108553 924573662 270578265 881449895 860935284 972191235 35580590 440849918 369021267 375524486 360925445 534398351 370317670 617723860 86532939 947743918 874350392 936292843 531749555 641720234 192078627 817673055 680394812 786631448 270602480 411797996 194556727 424192380 40403395 970770793 928082666 947029610 178098335 268221024 56888571 475488525 229988464 477887540 123223782 154412312 62291578 641642577 239682157 412333679 273795413 716083662 182520654 405923242 274435613 529767688 464103523 488132001 359500220 509375682 16107409 857977529 836698431 964398969 498016987 757250220 729761170 765935633 656949265 828616192 189753356 880511427 158451914 533034687 318018520 498033212 434716530 992417815 375852660 658815616 382906424 733665011 695099595 866200131 515228786 567414045 547449997 961375327 60743708 344147703 47876272 240526600 17280894 585595824 574150911 638400748 438355768 774351793 549939462 697446548 205962034 692748239 501935673 969590853 686846762 897183421 702221591 705087417 85042095 238467979 231946727 728372215 341350907 791464056 32067997 249869839 140488928 592564701 117588650 255328805 67534350 554539140 262304899 543704595 364181625 503030763 349042495 639121111 447487216 941845899 122080215 637301947 413870739 416581762 20144326 491281866 35129153 442148508 174495017 314817928 162007773 676841900 569739384 898777643 477315456 844458145 738392189 938394777 327188233 757381419 695492417 948617593 921273646 977764443 193436943 745552610 509839877 568799310 381565693 764040701 428163265 509754912 495754403 733477391 535459851 784681036 578122362 822399911 263428010 749248953 27909029 539642870 228377652 986197965 48780135 477186596 135429530 976305085 190860172 934204265 44750130 516363993 358506353 659193834 111472131 315946089 225591308 284902491 230781600 420416918 117598188 120571133 45381123 71385799 40637244 45932209 1446638 122893180 117949404 663478648 429184060 718792692 663042518 853146270 183211272 758854141 56644591 108911848 19268202 411754737 87417932 110775178 32182193 900523145 753181647 822319106 397894682 457498840 305288956 312260352 224702237 427754654 212402410 300921369 97689928 603271322 441244927 758896006 707897254 985831679 577425379 950323369 682854802 684264159 563293471 628074047 122335727 620637568 125483925 332797385 170621158 493311794 27337220 308073216 196760506 396899272 81223998 301899602 18815696 58347595 56755692 787459862 193080358 655925099 393410911 410176358 34383086 742804988 419888691 963303243 791633779 815584524 666117898 859030529 386185253 618504899 183187236 410284507 271175842 684442871 435623987 619147741 217820551 826932102 297558876 892235491 615050989 668730097 233258204 313664774 143920787 672166337 309901010 831800564 303634516 933592184 613662641 840063752 524715215 981067980 725453459 898443024 67639454 858727516 641597547 847858911 379250320 670153021 160167870 369817252 264121062 278212447 123688929 850718548 145422107 341856034 280080899 557899213 378589483 399680881 10035866 173591577 52383857 545858255 22204396 898915879 43862466 336763478 154235735 664131443 318844813 405731179 303636840 361491628 5939279 90875188 24704184 493878844 137064352 769488607 625947720 751656124 244156102 373762903 248172163 696956191 456359978 699584589 176415873 322859791 225403652 487604458 362601263 524051247 465527295 910492233 744704983 892774250 721712093 792261687 726373922 931505766 592680474 959937193 634397003 642425484 543596774 740701668 259928440 673134209 132085317 494670480 81522669 963424929 4664129 613689035 576326514 576343497 341329971 771661064 523836471 653068576 323162760 863921287 192801133 969025812 555331845 991460023 866765926 954663586 937172860 937668935 789567115 931564843 889461776 922204105 348813458 800876933 740118594 747200638 413533645 843352171 440576744 790619928 396638923 552308774 486185095 664090319 327633657 914426999 882503530 983308453 127317149 507231271 233540119 719181478 38509252 989458187 899125140 907054578 121654989 663703667 346336704 635803337 347322973 498562094 480364137 867570809 168087532 294074551 7186147 907973156 571911807 634810796 206092032 295781366 284154130 340865949 272215880 829846581 7444033 354175279 243696717 666327792 327939495 776463390 384004799 980373010 348137379 518811089 212319806 706271276 281340505 752367231 343187378 426787092 278550125 648451955 346734424 995837802 438016507 765039074 287166918 378933874 140191154 511968850 27850594 383167055 90676852 746343881 745495554 804399178 275385921 364437498 233619483 814112576 577102346 637531392 285574351 458536694 154486192 768199622 247014442 644514272 141126076 575117280 372568720 588664219 35531206 639886908 551276501 835946893 248921411 973152156 106025625 288887849 177739306 760660720 515505523 545143866 408252501 963879590 418541466 432948162 205502717 403047999 299236645 318455220 122185831 435695186 14744252 650310802 251392834 424922526 56562847 761255630 611867649 986437503 980791268 991591265 74705757 572261552 350124895 716445323 188517790 850881951 279750373 414115138 325541043 463831343 17667264 589545924 283785804 321895139 229559351 334739681 110952416 526000512 455599296 486475955 440753167 580273383 535320796 821495800 729622127 889346113 204243093 976733337 287057720 449644104 268442255 841636836 312208352 692165439 341164974 708032944 309546689 940031744 113054699 695169168 196779279 958941067 955694519 967454681 34980602 123466868 87653547 811968660 178341622 689564591 546540866 913403165 865893079 884880598 2585243 176339944 25301553 365022116 222682890 899561562 111569882 816715560 505474734 805890331 87398375 767211790 43934552 469507489 293504451 616043249 340894781 341679471 14944588 850694310 618758532 955125644 911182094 957779605 543411632 997350571 939674843 967872074 682630087 764126352 325963527 472335418 26817395 612040165 393843669 933289538 94383058 599542461 205531796 449214095 323785461 854210578 332012837 900643833 11683554 67879040 28597438 147678885 101325154 970591108 67801234 383771130 364747154 904684123 523633183 977823740 368749483 912894841 383096686 470029161 191776084 306088748 917198 153180460 77016071 353254744 77646275 82110806 6436747 221805574 55602650 585949513 193796970 367744852 28971415 515049068 365288501 737728021 83712944 429505148 290007808 882562175 680858597 967618616 505766071 542417477 491183958 859742744 83669005 847169539 408442926 474665907 388225178 982294395 71705033 706396771 349148278 608315650 94575634 802981429 579132 279901659 263405677 439799585 383449863 930173762 503958255 532233879 312238748 951629657 206077159 771507556 110809031 515962779 122731078 269611730 214485769 365136166 33494641 399563562 246168648 805341873 107367946 883860598 787389829 988440027 260890381 351548857 332519725 997008415 56524049 736719273 375814064 661353449 484936970 806724748 36637093 900363948 52555087 459878890 282147095 940880883 285149145 852781603 759926651 954335584 796061131 826713844 321945548 621984490 49940540 119697516 50912527 431255457 188652081 694157250 488362476 521193742 424196055 821251261 511526000 708401419 305319955 398954261 230982640 404181771 333816824 922763387 887099381 936560211 180606317 435005490 45562090 575291697 337706874 621742303 427142578 828933758 56315195 398085507 349209829 733066400 250625967 784855319 206802231 710507065 46398309 505341099 8245874 320171299 169524129 765520946 535886400 744566933 309837430 888703903 782152445 868536109 242586407 865960621 376088229 414097658 46989807 544044297 96194705 349174684 202888292 583561295 54879924 866120131 368008457 590783157 496245499 571735342 270797246 843950122 470318949 523994399 200821440 375794955 198144178 432857639 9963934 550873172 198947234 907990138 222688716 806769935 359252902 969288348 947899883 978815454 739011850 752687695 694818868 873221699 75650926 92981423 56315580 825701969 610205330 698787188 137997624 463424683 122152539 860585218 348831724 960292026 423051279 572218550 142681826 632514964 71131130 935783882 668209582 858642631 345400067 335521055 791101599 476232641 545297883 506930332 952767365 833737054 882172498 150627635 467974561 423717827 867489836 122762119 217492102 83125547 470736232 26126577 843873605 34450590 515921765 72272487 945199993 71983947 684848650 415719751 530383961 367599759 667141524 253197950 944613844 601763296 811076863 44312426 364781166 353903827 872819617 478244581 765016382 270700782 608945809 472735508 806177490 529796767 828974913 691447405 803771720 122894087 412908839 97915093 101914381 39775649 310659244 277633804 975662538 872263064 936806814 141621733 804215854 60806089 872204727 333313560 470197342 79888162 973413895 800084796 914668809 125080907 443641049 169020009 694037731 26499010 862091139 280677757 881591063 410862105 417219909 271242356 788333994 776190255 873055398 30135805 897075228 3784733 105313635 76755688 398425306 251085921 490378887 222053663 677872419 488161636 655125933 133348363 975046895 205717230 477151260 389636978 672995694 85109451 189750039 43168113 378118456 68835693 963553220 915912112 980816508 456621719 999315337 849806610 936590488 405505396 913854795 3660977 935779935 52990428 493115987 327684055 617871933 355654167 941153890 940424294 956366994 401516926 446241049 153655052 629781520 530955773 911135696 341920652 715833395 276203655 907078388 40680129 535984062 134651546 576327927 470383741 682667304 392079208 392605049 30399546 157248764 58307404 790027249 697257499 778546725 117676058 290155701 216448188 403825080 327555347 401125437 215844160 650983575 397623668 456390995 301461933 994401773 873194872 941576488 846948932 957260638 243596301 981744835 165151354 764014135 588722845 658936846 225512206 550519378 404419068 438455131 144120862 823209373 671849827 828807641 562851718 982525913 742177693 842235094 621823507 833843317 726038785 733224904 314382567 832929056 448848913 490955432 435611178 525657593 273634743 941872806 777836934 985686872 54678281 718162356 264059229 536216453 206384161 286661062 108449477 950860512 332454903 751224508 377063738 760361385 529418027 661238154 267893532 627854712 332215368 715273797 477588208 945781806 883056129 928133296 521864226 802690786 323952569 592026454 72280237 384272387 62753523 675760048 130638670 435064772 8427067 75689300 13146556 214769521 78110873 476026267 197666484 298868040 59784523 575592657 281818952 773544905 187015669 425963129 216034242 525579588 307143635 751649187 401017608 757545122 344034003 391873515 189052807 840849004 352146321 410073611 115634886 581604504 94556499 862699585 177563370 477831452 330458090 692620453 152380288 606890707 484279780 619339407 143005772 454210690 420205860 530303056 332172707 640905171 65477899 182710167 164015526 380759834 216828617 341801645 84802451 549721482 115419016 614353103 219828054 783182086 247716221 359166992 346855539 541894627 494330156 861416057 805003155 844774305 276724188 423378741 15011387 790971476 153228414 357047172 26382426 616284317 49216977 654061157 550270923 798396519 718207530 749992528 683393447 910510966 850871067 989014708 658276128 937649942 421977792 514515629 366299895 656473592 448017887 538289353 76701107 164501685 83393919 532259367 504889382 845905299 160556178 937613934 835248931 892542601 770302847 776340304 174203565 466954367 246366602 561438298 399439239 553005324 156792564 931060711 132140362 461522206 287255615 438614265 228778451 333290389 289195725 338156440 90668245 714249445 33166213 245363329 160773435 646236842 307302649 823023365 174552594 932239368 272285579 395280354 85497016 695758731 49725569 942564662 713261675 821857060 613562396 922874217 457789462 683696827 543577998 749141201 561374656 746852976 452506624 735253804 341408331 877081114 596400419 781660579 328971458 389313503 171566984 923058018 437092973 729772037 540492235 659449549 273537968 847726265 310317206 454750442 332611367 440072221 151894902 585780650 277500594 577496861 312497666 496363724 41710795 964025875 543017012 716438015 47456994 972655027 840146173 880689767 662018532 972589373 514870661 666020836 139589971 447155042 268591892 567541807 500586668 743122810 5290486 922008690 222216318 910471323 146156199 865468685 641181693 901775146 645061387 841817191 268832801 763787141 702811394 804687952 780290691 826216890 305162603 405225402 268024880 321130402 236789157 650271253 118017468 353885552 115523678 342723312 266603349 488075265 137159247 513195419 493797021 509150460 472189635 523316221 281876026 809430492 512805063 666889053 474444375 531382007 64456172 962652504 886267283 969045145 9586203 742614771 263200072 555100414 139040725 787638505 149747372 730626625 216076815 527259407 428477259 844531490 670301135 973463705 854110636 855915504 608592405 611537347 266537486 689062292 453354606 716886118 211208015 806169572 783928209 800920012 105361571 288207437 214438636 398634289 77122663 590093798 22776877 207317063 160682027 353648477 51503499 550435703 546224131 760884311 419485173 736749798 339679581 518775967 76782217 109548429 109048563 264617005 50538762 646619513 15503533 960376277 929373275 991500637 58457377 672779935 544409384 971715676 840935555 943688561 394562932 955391940 759799756 891754249 73083161 116407047 26402962 871992776 754961588 928445961 813680020 968782668 145986627 277114510 107337678 890980253 763928485 882471688 154017356 208810049 139746508 910169817 72364394 433800594 49244998 813204848 148487329 724229814 213677888 995011157 469869629 715106354 375853996 393400803 154983994 679499848 615067509 621491254 442094555 445395428 410524253 528786200 256031645 703102515 651734567 958366910 343769265 546799648 14730274 299029427 103977479 629237880 98667638 461486762 229684144 945396174 100215317 377988823 11086096 448192270 250982643 614287361 435153409 747121908 125602164 636052898 172850526 866196476 633949370 869845131 300854516 880683934 27556512 829950534 444358697 450024884 352350941 601783514 262098528 525016494 256965049 414776841 409833558 854267585 420677604 527854053 482468170 655561058 605745125 706790509 115810410 457721736 229774186 543017572 335239714 651192888 222698795 656728349 535706833 637473385 519159005 925971029 76451623 323963982 78018233 839989462 571397341 578930561 391555443 695698346 44268015 502072013 221486871 795223372 168933888 641550801 305520721 434533846 307410391 653261052 49901067 846054480 345767726 476390589 222669208 609908089 94665379 215067670 82824517 318336912 85845090 521383880 454897740 806177980 220482975 931602373 166817952 973716216 104436357 850112932 756597283 956390470 457405493 863948668 645555576 860617748 721202428 866081540 838871890 937747920 901532101 934391650 253679965 436804670 307176596 732714417 92276937 344219005 331030051 420832736 16327992 358003857 345295627 452191035 379176293 660225285 553750901 695160659 548270338 841668078 713713157 798667577 421104908 929801652 353791164 780346197 31053503 100675391 87596379 432180076 22045760 599468570 118522851 820248975 629178519 705226096 284601898 812775238 351762549 396076170 174377869 307318140 282378362 532674898 329561602 763272938 342377884 496635842 96336737 438757311 101223961 717338896 619426751 903566414 840788885 885855945 674402228 803545148 268898440 271938623 12875308 463481287 348509316 553208717 396896067 776442591 16175882 143014536 127304448 142593872 92915426 290845855 178143844 952603314 599187777 653266641 52480945 304196295 27553847 275135608 32538037 158558273 74520895 404526526 4022406 24518356 534185 160132005 147554758 405744791 382228248 998384872 189768483 609687284 205759855 595220011 335406119 902249288 472379430 511803036 379862460 784207979 350263562 716562255 354474925 496341745 324428588 709641089 271407516 586444369 439076595 863190678 240790155 533066604 448317079 460490917 22558056 245392522 222692526 346904914 139891220 847440783 701277278 768641213 341437764 556836123 324495815 687363913 505172930 750188234 306748210 396232190 91606410 247463846 188302132 961851430 126559111 146632108 83454680 998485860 658237847 846888614 106151123 732900776 214632528 663103650 1111427 713010532 200079650 947742831 531505286 976459932 262530049 817097537 811178567 815671748 648106803 884895457 750517176 903606993 579012219 691228124 362278698 395433675 30953169 739987600 499411007 572205048 168067626 965038372 26355404 518367530 55705046 980660521 463555744 688392218 341459324 410866524 325255542 869635666 82873201 986301363 784064493 899921611 815985132 843181149 321907829 464252921 285062529 569169046 367306510 440667464 156602707 727749788 656264440 913806364 112215645 175945269 142356237 639201940 291979884 671005717 481547636 553515523 505862711 643712282 328304624 516623872 432219862 968653775 195608375 919861144 66891453 981787640 846402041 987351274 169115785 627713812 55189222 118157258 63769535 136619575 41759876 442421184 340382869 682104123 544049910 578607743 479290251 968571317 416277822 466725603 55079583 696217580 196700684 690553209 475440435 844422986 382716258 707876823 589980263 728108567 342023959 455288396 116962431 655091323 205582714 935062355 690227452 861250202 95348180 714900060 656594145 965040034 767822921 852957593 784618172 900257476 284852833 857051823 795904095 946266428 406725677 721276433 630764877 824645771 242170295 890324150 807051033 835675833 491397600 786269720 251420859 937499473 135164889 798436579 566695252 802285457 666332495 803967168 394550421 694829710 79697665 366900292 210896693 667964579 39973369 342309070 252626890 837710401 491217036 973095365 215953076 386937453 156781262 543053890 491119817 519687071 293998304 811450906 280824747 446778248 343508579 776219805 262742279 556255925 339267330 664347387 350668916 997709457 634360393 915871114 173922267 930393037 417553323 515126378 75466888 222382345 211129363 613558268 486666676 703980456 585854726 823394611 153254533 809526014 297979926 452097359 223299904 967092424 464972767 667209108 652876088 716394168 64799697 753047736 658487615 769724349 73944537 241430828 51519348 901980035 845993557 934218462 575338154 826741497 57142197 369883648 295970327 675914275 204599160 906212653 413343098 943927056 332131727 507858557 101478998 868017829 27846699 112728683 68568615 823981700 534539607 726213347 620144823 951987892 181684807 623508954 231062566 616644904 35561061 674165916 39596096 848478193 367904891 454745507 169136264 840635621 665678989 832031083 385014234 649800019 26387175 903187033 615446853 972771609 100341748 184692144 109638460 980501894 188525213 756961224 98947239 204177004 94562886 540910682 424444272 981041512 727485629 934452342 684551588 730932049 256418356 420870215 118855068 662149187 119741449 530711558 74060335 349596981 127712210 476771382 107006040 484664173 359205511 556867888 177419325 530640358 133606424 650569010 599225307 660455332 471211499 579585488 524098040 566976495 279952901 660460026 401956230 591890202 552567310 959184888 42540382 419472871 191903868 569142970 222478120 920795398 339026544 970036272 352324015 604991767 601991679 987626646 38639490 709095135 155017918 962689026 746882409 789985683 11552648 944593674 217039037 759096349 611156424 789995346 270018536 942088900 505637465 609797317 479794290 800897656 463583983 681361505 22920084 977583966 251563011 931754959 646509245 714502866 152309179 900251340 236617543 795550227 689669469 709522135 418521955 651738126 449401643 790921027 786352313 814373145 48249561 81278369 21490088 876349599 233012808 936515724 12251530 519921319 91993715 583994103 102353722 378895786 30874198 803174627 520116194 716603440 562189256 604454091 117806587 214956389 17158974 474544663 452888189 734422646 539652632 596879608 231228591 463682612 350206633 495941379 10454612 897975301 552362094 950390128 841667123 849443247 702622576 813789371 663136561 977361776 25308098 121884704 87883578 943455327 565974548 899077246 118957669 952231443 140912031 761133298 595048795 905224953 164536874 697140651 608575087 925857151 81334762 832599385 78197189 865000479 737308866 909109176 431569122 681453573 277199924 756193071 16314679 597521837 395850727 709202487 50623815 643259428 218508405 498709071 269260880 459331591 329632590 625649548 424863486 731101805 170758456 283265171 260090820 385644650 61380585 317134176 77169877 119150783 68368643 954795845 9730014 535923165 198748488 865869363 208088002 586414142 370375256 380723680 272382583 999656133 203575222 225428021 57788794 126176919 86107767 353598147 121828858 617591014 168706870 411852464 366052996 401442209 213843226 343378155 219159638 517741939 325440372 770094656 652708788 754897524 718538670 839739438 243839820 279518884 45010028 402272040 105660051 544070149 534614191 733192555 387007207 660416880 216024766 771495932 335915547 853577128 271272608 666408593 36598427 150224082 65621978 261846417 228514085 696954013 233699343 709990534 184798707 565482604 86505077 161578063 86568548 813736185 52158968 661365007 475089138 544513958 384313847 701266910 251476758 473278923 335475455 489120514 293389904 357757239 156717490 949072318 217196336 391870002 9180028 111391977 61290752 705872418 318905815 925324794 603696888 792941611 657073331 676183677 341359838 753711382 434709477 648914753 580446259 981625334 950613464 999150457 874390850 883825974 70914813 469031623 371502957 817843544 281817236 615211023 158873986 165485134 28674993 839222208 695859526 968415154 122856308 485164254 50459507 767656614 574798929 687757168 490068881 873357183 610162179 673743495 315075773 335424697 142098677 665263488 28450416 290943248 281354341 714215559 19658789 778664237 122041686 335512439 117035494 730963704 153058113 722129783 592307158 696561356 564919869 705476108 652221558 974169097 487711449 925695338 833382754 847830087 490058521 892809939 498523082 671264306 246592207 443692158 425625250 865548049 757225397 837827646 653263165 821559283 10948941 814523042 661838916 800763371 541042625 824945254 779584476 959620168 708974486 731442634 504297207 952278731 593929756 628090807 113744804 191711006 54875432 796473910 362025902 912992803 709716569 902767441 770236654 957226809 642180736 886888153 639454035 696833551 600923484 650156103 55231485 426384199 46194544 593782118 97258713 562811146 221775721 723560668 53310801 988369947 423885168 820983320 741490514 945990004 673218526 971905393 244505358 501589626 146373256 209054238 20305520 161387253 153656576 155138951 115245510 486812952 477443835 508002043 364650265 683048487 295717758 456443621 83138916 844250017 273737692 626693587 541309433 641338934 77898004 190854970 90525577 577029421 28384583 985029329 49435630 848538033 380578761 796555247 102371288 656472009 420760930 877135202 818358307 959972879 212851064 449448089 16110511 777428977 694329096 768645161 24952640 824993624 338488447 456830890 226794074 986896441 641703444 915486859 167040699 802867802 412989661 691010242 409824254 616542759 58032619 132427975 22319312 728083340 55803155 658639830 345834549 415556282 398313360 664870373 299098086 625125665 558318824 647601562 257190028 630149954 517018983 606029695 152296659 454666587 167555830 190028767 88422822 452158367 27784720 390859808 112361620 860276646 344512141 817845571 238419673 307776946 51697420 200797825 120960746 676160738 231106531 722934991 258120719 702446552 464205706 503416828 349764503 817776871 379209759 873024474 708177357 983215086 669504557 806089888 383527467 807570356 613458023 675048649 168037428 719135767 294465030 546599089 437826689 772693411 567306168 596525005 533383648 736671434 222850729 486366754 294673439 846588634 71564551 82057474 51718422 949092434 935923325 956291536 398213497 701327079 578516778 830807924 691159653 736683241 199573112 710752409 67102908 564523804 284314132 781995327 102263251 536485741 497826667 868314786 791284494 792054554 632414042 633179488 568039630 781220506 120403698 305733604 111162854 846139188 39275114 50661794 28553056 600495686 477854899 505315746 78670309 525163187 91800368 973556322 233669628 988575678 399292277 710086715 365327167 705746338 366326610 418669889 256141310 483666109 136434976 165093686 130645066 291494304 248814182 255469662 178956650 241252740 120827750 145691680 7306242 946786415 548053225 712881907 147096856 758024796 617841845 668425593 632873781 907172756 667134327 778023014 539670997 647927964 383315859 539080529 155327953 420981550 336810919 866173445 338102011 387572353 142351568 627601672 579241588 991416205 723832412 934569273 492862752 534782668 46037213 205539826 57309451 460791732 43805097 455812811 293530451 792383227 758650987 772693504 170486445 623972773 197368363 551212113 225442947 557134995 546895801 882124017 220675886 717475422 339492211 367907146 352831185 657925101 22805260 791232358 497463007 788620871 505081339 939969422 865395032 876392525 506216294 839765651 817834913 999912319 885708993 958573474 325233156 399508624 81754215 734895475 18378436 859509737 352935747 580344359 217537141 681648331 156016154 508237603 97889688 809332081 234363288 627393455 531064454 920642138 870260721 928757696 441801439 681589753 204218161 262301544 64082536 763000138 399608806 485838861 229524790 317396612 80781301 531984392 406898563 777243074 486539091 818085436 127134423 928583761 888133452 953371985 944060367 965757580 512699229 527593641 489563469 837898142 283230534 609638811 72663875 780147738 305741547 777046328 488399653 861243512 102331675 997679198 81868896 575321388 484271082 894406304 77888221 619161202 273624772 821969397 732959641 897933390 157707673 424619292 7775480 521552811 514039920 722294791 542923046 656570713 259876594 971077596 672079948 741904146 695524723 849932329 471186250 912061839 288839798 772020386 206258196 608351745 501125545 996288024 54627804 812100551 761220180 899791008 100326001 179399357 98819227 118554192 67277846 945802513 696258100 886024396 657506596 999123483 631261715 781740159 435777888 763188793 32592029 567131198 214880813 319448507 116068972 421793981 66831034 253772060 82087924 318322423 213720496 420941201 33721649 48533764 13788543 159847427 157618028 170037971 129611987 226371453 111734033 408915991 343056828 899046726 199140757 610922329 275248622 778470074 125182413 865001406 196294581 645704150 436666342 910083444 681877120 961140572 42881500 981467070 418890090 434348279 357627978 718290804 498671678 654927997 49887044 771072511 717440503 903406541 566365382 869647026 753459106 861266761 754332259 799318409 769033248 789035039 696506112 834294057 540576608 591928083 308815779 911003604 421291432 995968033 227878257 434977601 250136723 766806447 282507932 711357494 703310779 745147963 433093528 531848846 380473964 968216649 896867166 978433228 756548913 981340930 413933551 879946692 504301821 620558055 498690682 641881816 107121527 682472713 290580434 404606631 372914053 812346331 30568439 42426547 20862332 174271294 151974940 488244610 447185871 967560815 435282178 840333679 408788834 636797824 519475187 548086068 26869403 54299803 12057991 477689215 8318135 416616694 92851054 944327423 554657223 557953595 105611113 381428701 193449647 915042726 647941419 898610710 543045344 602960433 428371975 717378776 273632735 964438758 4651875 177521928 132886087 794630809 653757428 986961648 371687829 967681404 681046960 733049105 513535811 611025635 292725986 898393173 477742412 871989439 292267466 532088879 350649477 951595339 471369050 660936434 281171639 609918668 345903267 439686215 232147503 608797615 391153190 550278697 120784608 697844435 535254861 825385314 405337722 889017135 110365444 993506241 34011227 813867416 408691758 492600513 135279902 705516743 289850274 813897961 52925360 850716332 817439591 873341789 181288097 794421178 324979975 771904591 94471492 198027324 109262251 133709804 25768312 351974961 329722965 812858883 699357458 861531618 317788413 499671391 25635921 961856568 954097252 972556001 177258026 186224354 26638816 890246636 660541756 922080458 690249193 750612305 35181008 699030559 399489302 717411849 414552418 443373637 349886331 646690302 507502884 673663657 257146592 549199325 311877270 957900975 452532450 836641658 187440176 727814888 109111548 974968064 879556657 929570916 822166560 833314958 791273574 886149590 176945059 575148961 189304786 658867191 582483828 991707250 748534194 771841458 560221987 797157782 132423816 776927317 5034808 667600338 132002594 389629562 22782750 94647594 41757116 587636204 84002251 109895938 105045897 427960408 310757843 640697235 100885287 888386217 48773190 275114721 135435296 320637765 77096418 318626901 200651460 323566183 248241474 549979865 260185388 364639788 78694726 768353565 276088701 792654120 630125969 718578158 131926115 156774329 22363312 144508396 96747566 198301216 187046825 644247577 255543680 653842521 135730931 435235545 253377642 628362839 150181950 185863525 133521107 196980484 30199209 941092695 748260856 981612597 446832595 661059430 103744644 820825258 680501083 866577214 741396756 878796615 403036811 778259066 564172554 614429086 88325779 478735515 62297512 610070790 407425043 566655518 133310714 243557569 68828850 79490673 15087283 860525738 42509511 464821737 287124575 696428286 247795635 806722363 152072742 924992579 261190882 565272766 523969189 991067605 908295698 959615038 754012012 976556244 594436966 953343494 694132061 872286160 768570573 863289434 225577373 648897630 642976809 687019187 650991557 761670322 275238768 825331688 618133535 756694773 275054684 948338650 188891585 751298123 531408881 871880945 45488034 782131500 229101260 414396578 20726070 353263250 11802943 119215152 47494085 194480504 154582211 770110458 599930996 649503174 422337029 852826142 63104483 111317393 60441998 863335540 578808452 835694993 190151182 206131872 5606779 577429403 366360777 929677377 350667142 864609861 183484577 682456014 205100576 337727440 152983943 826220233 306679234 668437177 173796958 390491455 380871111 457450231 414730067 961536780 442994654 653678449 69029919 70781768 39757386 378999574 264474684 892584606 95374691 382766896 203019957 279466554 118520989 198027238 131786979 157025081 34096896 685904839 192988961 905120523 94626540 520157305 224055140 830727420 273145758 921313442 417110525 955502731 312711239 445996183 155849029 698882746 255087245 960215081 488058045 634834680 277117790 643848878 433138358 840686976 674452039 775183442 246747194 283724897 151742161 694505536 368464661 862669894 662280586 796366288 313730386 717223342 253428028 316224636 219597267 463261135 173341128 637313260 414425233 702079896 529622261 561255771 68829328 633955464 492073747 785066854 770861093 799243663 708519478 966214713 342731596 438048009 290905521 374432431 144858561 724552766 592182493 613767782 504995906 562896070 413845610 576703996 60115972 853870230 223024290 867890731 661236064 837961834 625978026 758099676 54675141 291610030 134262505 545380360 262603650 724121593 566828787 886480384 402166097 433170261 201913662 825273660 334401599 554760197 121064541 298105353 32795839 176617253 21072308 421314099 177592109 224002041 182722111 661393523 182708686 596957469 173439104 341125322 292684776 362851716 55082226 644821638 232726732 472039739 386142401 467361781 394599892 462626963 421602967 427484845 248577685 749514507 389464419 582942277 394902463 878856067 607154287 818065881 392354532 458287234 20903278 63268567 34918303 305687622 196916306 252285996 28730048 987610542 368905190 698819883 570527768 937176812 454922790 772057550 136058542 650518609 501498101 779655703 132075574 624392176 405711148 680150242 671658406 883777356 649437833 827364616 643981757 789780179 43756604 118859709 118720272 534851280 166256114 982890192 958285760 988900429 379902182 450919014 313478679 649496838 273280691 516387197 423938268 992098615 108359577 725602642 322204972 847189023 640209294 760561782 672939778 796180664 82633242 296697622 119838110 146082671 24591529 691120811 453274556 878753494 453422311 605863496 424721955 785600238 49373239 159644513 3757862 46218395 277018 921159798 158331519 867484821 45066818 791849099 677164054 965621816 770876456 980473153 94128739 973871353 65728040 307993450 142899232 189930760 127125868 971607939 716409280 730206117 261743195 872262328 47009198 387646601 22406039 225243768 25384471 200863058 188764395 704377179 550699400 872991038 614237871 799444927 344450659 757204354 578626384 920276422 645010265 989546597 132616136 353047506 338557843 938655116 877789685 900443641 542322352 736800822 385128787 987273777 425177207 920920770 655439764 910737303 155776855 333389427 13656071 594317704 100853850 648394287 234394695 653035494 532173116 992875071 870928159 956307163 731597760 785936404 474541829 790756517 218975837 959905570 426780416 607179565 564909330 610643908 332717929 605483926 392590436 699276581 375140449 737776569 730636128 770025493 545384798 639434332 134363219 617566639 210791704 793693324 230601201 875598738 586019266 926476181 123448614 899135728 126195453 966247963 353039912 800302792 502844834 819107633 169746204 943084688 812289692 857254804 72287424 868708794 510383623 861689472 409852475 948355950 31712833 491892553 330120975 721237703 50263738 342183410 33172569 672107248 111447283 560499115 426639026 872816255 336222459 819997055 524411838 954655194 9061450 661111622 46755030 232819117 68604159 218666288 39778355 123397707 87486527 134755184 97694120 860203606 336809394 787266298 437984290 662949671 227586639 640097182 639448797 881486529 362207367 536048548 402254452 439632733 398961490 571847040 475042910 506770263 113342623 604164063 305822975 484849647 461087228 476535131 153393700 628761548 169088155 423433386 86077657 230752849 179651661 982598867 144732377 488586681 133594158 481783250 472138184 482603729 38417851 166597545 63727619 442496396 260356816 679075916 479979721 690519304 240983199 757405996 547300750 632222094 73427962 537076164 85150405 345553763 256398229 555756294 377048894 838679578 784538215 969468710 920792249 965095808 610277571 691029709 283357667 677589036 406946819 485069389 311118501 915960981 598008530 916584425 283152890 559852167 74645457 703325246 13636635 335005474 318659038 513584265 50163343 402702557 109215675 233969522 88007882 748863778 180868292 813849466 188361469 786693314 356559039 999020726 36548875 725000786 664193185 776073860 447591486 943288985 647901412 862174780 856647876 903264042 723877782 942579492 773404565 865882624 365597484 733625566 667508680 849213484 267008593 864744608 74597235 104268621 95141744 499089216 55399792 542085917 499518053 782730450 768891750 983360595 443625706 824399509 3005430 537135096 521019400 573955141 527272750 785166483 70039431 998647816 964681229 986513164 289246406 581437251 187071368 597009753 420221200 880149707 183145662 727551748 143222778 203610765 15044222 982049737 245285456 411779578 177735978 268040186 91879179 286173884 16725834 706937022 320763706 433451089 275916021 913210922 660897012 718899933 459394563 672641605 575790032 830736620 166210677 264330377 164691522 614806083 208018759 460582539 177095386 810834392 736914060 783640928 43718289 153873552 9661024 695099318 539080755 797168592 722811190 866640133 608191871 621184033 605529975 825312386 725699464 863791064 290414069 945585364 198684135 445454522 320315838 435154379 372811873 477043315 461246477 589794040 207845434 972495863 242811106 661199910 566448620 760145927 456896211 556281533 527311839 626920014 364432394 822406311 44185690 286775237 285759473 998895327 624936063 859909709 378311497 493034226 45748464 892100320 547199749 926682987 41865332 48568314 17466271 176176228 137450198 347501392 106454759 160889760 88358581 114760870 96549568 164992938 21366756 504397473 343427931 514365282 130643360 854254821 10972823 537843877 152570160 710587800 41699076 422970094 361968235 811882891 93724651 339272526 129499520 993522342 590271867 820948271 347042173 590950128 219425693 833038583 799368045 881259882 861617596 890681123 122220923 311436262 151029647 993299496 730626128 738352427 672169696 702153322 383501122 616401786 226248847 547894718 323371989 413868160 78003112 654963399 336583582 446307707 49602376 352180374 224770700 670763098 51226723 313151519 15436552 387086675 10111131 151061923 33244237 924955409 869551897 904005386 529898354 693184564 62572582 361984446 155354276 844909654 677949576 705360207 27204121 123917389 86874281 521541978 147795093 267514743 193965078 815828546 584946063 950384788 748537535 967273650 645267475 782397573 448775139 824378763 473408738 749898369 257989930 977920134 394198683 735918606 358279330 393022297 267243776 313997319 52133283 290375733 49656712 262321111 188436096 294244757 127536896 376586451 82911402 912580919 466725456 583310516 358775343 735545769 176701475 835012222 735160578 869022324 752638673 965760868 573419111 970403636 915997247 923087720 825290380 964000258 274035022 282860366 42786848 833187250 698734051 790081942 745118094 898618882 643333222 974121238 308660395 963927103 46558334 820547069 746758858 794799426 153135936 160032287 109484922 136128114 1724164 261437053 204610233 511380515 175131886 698954914 72428144 615371449 355069959 489091253 147489646 930527530 633736928 725671754 492232742 927939547 236576038 565532616 479750701 641683626 151383851 967472708 941475550 959227950 60548303 696917596 33978997 54090947 4241435 602974608 58563455 390971556 17322420 688531549 79206709 539135091 474986799 515595143 103965256 843067309 312249586 402730760 143893103 522816641 437661607 739677397 114832380 154790100 114052188 195861590 38622589 981612272 704346502 931976085 432984448 789259658 222542881 495282451 208358039 273465099 62492709 424775673 43342134 296134898 106212740 977048972 231858714 575760269 312610477 495028953 68862514 360038143 74576606 341415661 332652899 684720364 9305485 713522424 292113827 592033390 104827191 521057941 328699674 671202487 665591774 717408260 204634209 479068552 412275334 526309146 121181629 121652060 71153891 138610084 119967210 642779082 123518271 844785959 290448362 507143727 26766823 861605623 218576151 223127564 195200380 967721142 366108052 582157097 308870943 596845626 106902871 329224027 258524004 610006841 496901282 635553804 357632942 722981234 651922775 938252799 198122016 510026804 462225021 663939588 126726584 182944045 41665406 568382893 96226922 256344222 70188368 858720295 69663352 763756423 41269484 724394291 486055136 501437558 376221912 526124697 48685085 755644293 575262796 944653924 283571231 357780853 181712176 700334627 174195232 641983183 546788864 991845615 911677997 947086865 539180567 984239775 325705273 501155932 30106152 636706205 124065512 182472683 10658635 304039736 190580159 840543392 78085300 897169252 238196152 647558486 425809678 729858731 206267744 345763595 225624939 764224945 262668106 879731482 215383376 915086787 195252202 971703676 229911665 912544730 208224860 238905454 30360502 230212102 150247489 581977894 218463715 467387196 446139909 862603378 84860088 167450721 128169546 690867592 195638632 315483978 126148610 992859984 721297388 997690029 905347807 973034569 691615117 723465014 423554786 737434325 330124849 884221640 220380085 554669785 76161333 286766117 194591364 818688183 547600607 935024516 270496253 763986350 200128886 704655146 194463406 961193940 153265055 445662024 100200284 403397977 32181699 319189681 146490273 418103361 33853708 963812986 949132233 957137365 339691019 843449336 711490333 903113339 90272598 973579434 32645292 293600459 167853538 617198901 171125265 821925661 561199339 723478779 414435193 516386515 375105858 894596667 703893098 890790461 888040172 915550777 562829852 781415704 295786884 969628369 237924856 673113516 185783939 609522731 17691055 682765809 430881309 997848440 335790648 597459970 476240020 791943029 46989351 107971784 97958206 591807600 425100299 705328247 315928794 755829227 238159216 428912964 10548016 820740233 345466160 516035059 296541497 407764117 350481450 592308820 305237474 746971477 590265509 865719904 530693685 790262057 89820148 144460906 111192731 291938264 21702634 573578798 213767348 962999692 878299216 996158737 436698840 887834571 242676779 752571926 322191191 820060325 305294861 868425264 781398002 871999172 10535656 731805248 597092894 675394995 248018939 348144849 333177338 877914918 200531347 283781932 170771036 245066816 99663207 566254452 13159694 158338790 92054361 194927621 23440303 395450057 233446414 897305822 202539121 353145256 140156892 888053731 88805814 178399761 165072467 712698752 134054476 152125217 95212044 731733686 64931407 488995324 337180377 733635113 101153580 549153757 434881593 843700077 127750840 406428287 344001017 574090344 130975262 961514015 940186233 940493578 233207016 660820463 237011482 634912027 156220306 575479907 73183116 508765326 10620105 383827700 236728462 857662089 182923277 933776151 574362190 590598117 297826072 849190115 230830694 746526798 561859341 912618785 559477208 639668586 540886169 950046611 537516610 946672354 113212554 650957262 157751226 983922072 912505406 916858066 623152684 831419839 544702199 838680159 700045965 897229033 218208904 433058214 2061683 48420525 15988316 732976115 441803177 953710122 274244062 677155103 523329294 557381390 457261758 918714729 817638213 994631112 388788581 943330278 558678550 791980277 735145250 766122162 473646204 870297266 672277902 712129047 150390376 199438902 181542067 898560849 129866476 297941491 117538002 612518390 265466079 679973385 356545067 817368769 226837721 474341041 101181905 835516449 488231436 499065905 176183231 372471690 289095148 421227955 174402833 957906763 522147990 540003181 237444410 758738187 252336454 555948993 471017367 758029469 198844746 389664526 332519252 440274885 251975298 631302764 494794797 625477546 181585650 621686847 133476553 638372755 454533555 664510895 69485361 278940006 72614589 892121321 284320792 709055041 477979442 646334699 525949266 794500080 555274836 605826900 203015591 909091734 93437835 127917111 125303461 706674131 247303661 872744940 347963474 441842807 419424786 569539571 99679330 879633245 251616434 532621960 402940756 530624003 136125487 806737303 665844842 754512851 521274570 659806728 455256066 494795960 191965736 663956311 304261981 623852712 328965740 760191701 704924824 962043993 451520762 611827830 99356260 411801775 296152965 914952354 724825180 769011008 113329567 578099331 344262360 783788222 44500963 830637409 815015823 915376899 315573296 568977250 249038865 728377689 683629901 972969080 120942553 575030935 148801404 313893547 43920046 711200681 255835354 628427904 143185317 187575124 57556489 97215438 765710 120774029 45716660 196752715 65887900 130583787 115356062 589213304 59797497 427552305 221415923 815826037 482257118 881052563 617421975 856885556 391419014 684905897 176338379 701698199 428140398 695640844 680880075 840557311 526388931 955794706 550959781 785173293 375329951 581242507 103138134 130387581 13558198 288179132 209537254 341122912 315768008 940637962 247753769 856046693 84748796 869043428 765110547 767905469 428381046 966160187 872476380 962784459 826950765 996621308 937309399 958173892 807128157 918807268 902423998 945758924 633688199 719604241 52423979 667565517 135110221 769167658 130494846 454818601 367147708 589676702 214795922 641325407 244269088 713894758 677199272 966575548 716928933 940453996 358568667 959987002 506175078 635818178 421277445 673328108 458130532 793327636 400326763 844643990 294319261 521360243 230598197 656196737 213306808 505657983 445242998 638756735 390495546 949216892 527352424 697010313 133011007 787656668 538311349 785004625 781616578 792610098 684942781 884909482 610505853 724838790 448823958 832871824 730814268 751410284 187273713 359921421 255405281 831563913 119208273 790311024 503972864 982527172 726129442 728609529 79296630 129072403 128577098 795825956 269939278 550688425 199305484 688730324 192767910 995947643 283237903 559451782 395715818 515736007 474687687 570633821 249617296 977501545 308450126 379014350 370433690 818789337 777297231 883510904 866533194 950587812 319699448 789241672 287387637 867837782 83892326 908854114 436645522 676703331 591720142 633215395 3751844 815546784 391816921 788670400 123473997 534142089 124379773 683108271 514568753 944782965 510097219 680142889 439266341 523076221 453516354 811373427 343720591 745418170 157304389 896892172 411498386 781451382 526697345 754416633 46264052 989650074 215002995 364434151 199268775 415275530 211376207 859497819 119498631 697991788 195847630 389548528 386876399 501670381 721794 591835696 544652306 695577243 493459421 795707149 743671430 824238601 493772432 960887731 834520985 955743846 215764079 557472843 348742665 518621408 29383530 380424848 276421862 795366636 273022997 446100063 259863791 551806471 317492660 547656437 89867777 582332272 540225280 747753905 425206061 597421089 516696795 569458402 66747607 969229533 121606782 710824249 374730586 868275745 601702962 763109573 404516350 846484739 792816753 896404190 358427198 529729386 430695572 612524226 603401038 641979449 142616533 920542430 679976832 883859119 418366066 896422007 506869184 674488016 559586253 912000973 211344148 659874349 370639281 696147935 338680229 364786644 257349821 821897971 821442463 919627922 730516307 826206070 693100212 985658491 739339246 794385404 656915054 660070989 152230615 740222121 557370947 914455650 657274823 852720244 382213421 893437937 315820347 890601485 627222219 962753191 348638437 470597324 437330703 999654059 699105558 946330460 255768164 502245533 463025528 747556218 365776087 552367929 498447255 902101946 661807663 739273736 488120168 821712795 476047101 852252331 506368221 908137654 513664357 887250035 782243087 816698819 772285324 998825612 137989006 219981004 34851093 688856115 98357460 307276301 244537959 346124498 226572378 479651929 115048678 951888406 914506083 986898558 393475977 691333596 485790302 834287757 555448088 687722293 598457824 995647621 583791513 981865330 742178413 841363477 503849023 932637424 601879319 801190016 754658711 942791762 328342521 638414783 596807011 896786048 107562126 883406275 129121289 420329506 283434971 850806951 718729867 823565988 455285851 657478552 403247545 735058240 304527155 438393965 243017976 411450786 404956219 449458691 93158382 301741605 220165259 910094793 226778323 653079784 462846508 811622498 582802369 895931333 611069576 804843862 255807872 859230361 72298713 666826879 39028783 782466328 373377581 941664343 281414864 731492187 362239249 419196805 363431291 744010059 478910133 755198545 133147714 193760191 154277323 258273653 162249558 802139819 135749099 702569362 649888216 856138879 294092762 407704218 119606960 568051203 171046811 868443815 130773266 651583451 202387440 435708568 67349852 826183759 739425362 952896499 403662727 509428536 410721514 839783123 549803992 651025373 60288084 280431689 165019392 509733488 406137180 834268398 170196550 856082393 450141748 465973526 427170752 516236649 241480541 615646536 426292972 646599546 204062767 610027531 570296721 832120099 630520399 717910245 177096032 870370931 365197993 581505682 275630247 539873393 3575898 313129971 102104708 246970385 38064484 656074516 320976153 566415315 38741891 273281854 258956452 749110395 209253130 964532930 398708399 632185760 222030731 230543882 171794798 684561898 656710760 997630365 977110064 991602721 38363073 39516576 25090036 437683752 275089585 863716337 13314740 277861935 213545557 811184549 574554870 774694240 406637856 601225211 248073409 902575759 102747769 803486422 110762180 512211215 293413147 572892107 177022526 860999482 446294534 866335175 183428562 597030533 150937535 672212883 4366147 171940805 152430016 913854831 135814594 526312411 178291882 270206794 113253732 801286278 464196683 968160658 54026238 690223849 687748562 883569957 315389720 913255318 89472351 136675438 13823520 612455990 311070480 314455501 307446834 426809810 402756797 744677202 91582491 793652434 606441923 907808702 306605938 463896991 301910514 481198136 13149455 812999630 175363569 254998515 158068680 441081669 50138947 296364240 78954362 798110299 622699664 757606269 304774225 401985014 384522446 427997166 66349298 432207212 293513075 645693655 286420635 510348149 420074383 486517290 11496264 575622732 541293593 623617161 516044584 738579399 116354088 746456197 181756239 718815400 455092825 814884950 807361205 807697483 282365000 357291767 175620286 558728166 129515716 758968720 190640858 535534050 318902986 832411855 365458971 737137231 28854506 549314795 402745784 406564993 48517051 118452601 100679279 848722204 4051483 917623567 312510060 800937761 318262235 896320655 366499958 396623547 230784845 794901330 371568096 683984612 433868093 667612472 402489913 774561615 38672380 811327809 361999938 462495715 281926482 912886411 537297044 664699818 357796982 676390546 379038292 866618074 536838206 572072466 349304259 885261591 528503620 649917800 204452882 532086335 204330279 811494925 380621801 800205899 96719504 910732373 266919668 958935650 589036968 606547428 417945988 429846362 281839814 444497262 404152123 668429881 652082836 677795011 570084190 690784128 596592945 808949123 252665139 770794216 535819188 650145601 512577126 950373389 107378163 838018250 754851006 806904554 465037682 542411219 34615992 711593892 616169054 977641960 429708332 856264061 296363010 773586074 645224097 790245595 435840868 771531759 422662376 937151342 586029999 999969002 481091603 980592957 797331283 878394091 504566886 998398808 267616242 884827007 422518078 569436685 444885387 728872327 310192261 823057405 10848572 409301369 139005907 675506763 409750970 666136459 33415208 421155993 187600360 261758742 129056595 437203777 68186851 587834364 123461155 577363305 499667473 650622624 391677050 915851623 523839393 630206687 343105886 724865443 596579334 647920269 177321219 517322445 333525740 624763935 584755536 922434472 570514157 618420941 360976350 833595110 407579039 759960490 20361417 466292116 145111235 439449364 105105772 287106205 154454683 615329048 301350123 834911453 155650515 670367347 335497374 649192325 331578356 410125293 396923783 516648645 116084560 331274095 146475987 603399281 593618932 816338428 214133634 342591670 8342451 670535457 21722837 775856779 547475800 806193257 766850513 891857185 771731826 845284795 29072675 137968160 93104523 721815872 180348866 890982731 208642111 940733109 796222196 949440051 817201590 881260106 582884047 751964940 174400793 999394545 637034319 852727453 843162735 850677011 625330678 803488634 207366737 567781163 472148783 970553415 691321511 981769728 822317737 860340018 183622534 951208946 312528342 857529031 331241988 931600391 152624243 473370315 103468419 334863540 238031914 825541961 83669291 860467293 308929898 572538493 344297292 535566189 179414147 211523714 24742686 355712196 328512606 846581676 11813574 606020659 530283787 810413804 11535087 734930636 118644427 993695327 208908260 840851373 221866588 336381607 195132481 604469184 137059103 917847065 213626443 371354765 311573913 852569082 27664456 489903421 195038760 682676939 778142 80854823 57398289 592172626 232249657 345433436 204995861 553967707 428448849 629751325 170314024 236890864 181543441 517010222 448361215 770231320 322933541 378600619 213501121 596716427 557747437 872659644 746258328 893662756 890833054 943955575 887791695 982515834 868457012 952671729 855705604 966525372 910978343 920155315 808179877 901976843 117505198 589995094 199581642 280257504 107825141 522544820 342944782 565842915 401101376 489366578 479749684 530210226 493800079 846936110 769095450 908786997 171712660 736729627 397430930 765698117 40154391 573990628 375176812 828191458 427639466 639882902 85986105 592173216 148110753 870816509 348176025 508257805 57626829 475397146 371106575 782373126 714239381 901275276 863291150 952666149 587244250 596841478 24197622 330648456 61076850 671547644 181427546 366539112 208278543 474164324 393482804 676205229 56187417 250337315 221154610 783601478 58575864 309971075 170025472 202600999 198753763 846991780 460369626 990662082 481552526 709283021 231658229 670693910 73403989 778489095 425104400 926448297 444533506 570084548 220229690 675244146 354064153 513574898 281488376 761107009 592089335 878842106 247876860 922932940 4800538 111419434 95859074 939216677 216677805 917760466 241754567 430174495 101227052 967233751 113046346 340452755 311079637 773981802 572514646 588030254 432784775 584492711 429297193 640184519 560952283 866683144 378482721 970508716 691536541 698259698 293292426 999546832 570290603 870930354 273874574 558464804 342176315 694842074 526902996 687400979 226448671 654116153 321238781 808976237 686517528 880452300 279624035 977398717 855980706 887912691 637278696 884177004 757355499 990404233 552721428 697139473 595843892 791108332 87814767 365856531 260968514 802465886 647531289 740503462 112735468 274230938 158436301 266190380 98943048 820512932 400129521 467072390 128287497 617166444 238015130 866182947 80888552 734010718 438040418 692780821 278842645 730283067 574313773 914949648 882270339 980462152 635335945 709179504 699138032 911402733 93773536 144303534 41172043 404944816 74487876 835954998 113497137 765589480 592271419 702400362 492961241 896931328 801528293 953383012 668287328 951110868 408822297 448641884 173593046 611155215 286076003 595724314 317710062 844132788 317368685 406411084 5014831 857376344 184759351 668248513 622481952 655147277 413205500 473691015 22306588 876355674 749339548 983877608 286392235 578727773 408597040 653853155 172121769 297478988 203297148 298019622 60682990 866441996 429247617 773932173 9566928 852784822 736929454 960381351 371185420 611130979 280771516 963746987 883134363 911481946 480249015 589352762 179557171 937540344 374333781 757750651 693815337 871264611 586448395 936800808 813447136 908280858 381091736 693968171 540295819 960276136 463401100 848541673 211796949 840901164 180815760 794751403 540566849 685088509 651789668 696656326 70672915 578561653 240651453 598142117 302836227 808408963 794137146 899310471 623717281 815779535 105742092 128107830 8735023 772835229 249515411 799224433 504844634 920323794 200598000 384345055 10260787 108051311 61870995 427812792 394553647 639148252 216304834 652893895 313215434 447001254 93196747 792778744 82026096 294884899 289162999 941842149 890249149 928187158 672184689 823976838 230032677 446387176 61467131 852134990 60923807 153480080 115872113 893122944 194282329 478965111 36083605 269659860 13900253 540360523 422049209 799961923 605606479 681443525 63436736 521694251 329578670 559371125 177685100 973805966 752530710 987909348 322589750 778478875 580565415 581779860 324768652 585448682 199962576 700040409 637664166 651857991 519968881 949740726 531080575 586436297 61736454 379519195 28471949 135385367 41535168 291429371 26455692 971924315 390012807 517959796 152177344 325727823 79151997 581340592 425594233 620248075 41638073 670036105 668255661 713269971 83763019 506518234 203514500 496835555 117421680 421996162 67950254 937392267 816322740 861276123 860444557 953681124 471055417 498650338 487036882 693208299 269458606 659424754 614399638 783650131 15876918 598929006 246963232 935397369 930285551 969427643 442656021 897638749 507383422 884132596 481834294 577256884 358140778 684536680 139149342 397399482 267159070 853924596 113873641 174089926 54839971 103201909 22922603 552180089 12551332 220822632 13213884 548903036 86258577 641706550 501765402 742365558 373942639 814642936 361693350 717654365 597626598 771184030 25965201 170580695 4695312 172487728 1856181 274971703 5080491 499970568 46921754 736081942 313021027 935330243 152450617 723461281 386762860 635385973 238074107 999773511 501446091 668705861 24112062 725323632 296878484 455900738 304412041 871357456 521785955 733173049 13360505 32874587 32675012 490024486 102969439 508352011 134562942 217932034 185775130 535342188 249912639 576385313 325232568 885159883 637138316 747844731 667062787 835547207 786281218 932112886 113619566 548932823 151535755 717899614 305426421 589686300 72155972 244487115 180760965 672852308 445918018 716581962 505614269 525208974 9828662 204069436 119571242 357002685 241199867 980413031 300185851 695175033 51093423 224730362 22349403 635159755 395161997 432454166 247388821 350272819 220111528 847751221 222883625 346897743 218110968 858523110 241801492 762414368 224195886 275738608 79938169 434952228 314762359 593458044 196963119 423590053 278124973 915205187 150419720 581856604 225626419 448686884 154167334 821756447 493315516 771921775 486831988 590217402 70471493 641802090 542480356 741718614 611902040 761784852 410174579 895654518 490473986 684180153 127111318 876587076 144732371 691500412 372946663 468677233 214303626 254208302 82497014 864279013 543193959 661774631 334358263 924966393 791119606 907078863 873606777 960834889 646535901 664943087 12592325 170887830 21586437 438314220 343921641 560128883 331833205 517485112 418001697 719362700 192776332 464078939 225845721 429767780 358540912 646385187 589388856 637527956 433875199 488777591 306580776 970006104 805179593 814559594 813522064 885473663 686264736 757642351 513153881 992255510 251108474 736425372 412570393 517183591 21201642 692629058 235572807 572812377 307083303 611879712 581898351 929176452 101470669 933754116 132784007 289456153 211398053 999410406 651137706 694953046 332738578 892123002 818532990 858800740 754146964 832403183 785449437 872963117 411073155 958199773 204314472 736195435 290805743 662421720 506142225 811264937 741206587 805060702 500184473 951561265 494975197 615598791 302456033 770537259 561635152 700207020 478344762 620252181 398574712 762205236 495066512 801539817 576031345 772931249 211510734 956265911 70682212 673524817 255521875 896141453 215563467 374637361 15118520 519189883 276451106 279470374 279077220 650995678 541468553 638702649 526187064 664919145 479169247 516287849 369267589 592776477 274949981 969506942 479353124 516102074 340514851 704476932 91668953 673969780 447651418 580450627 210290125 450777344 272328429 976971193 760457297 919135166 894514053 913348249 764568000 974190239 737024642 776304401 303669185 621637448 434620811 794791161 491921833 623748893 389430785 913251626 173771649 821879798 24582388 142693769 106866300 755733892 288816778 785712059 577023366 833536982 559039633 765592136 173847717 609786724 576185000 657530922 335512974 415502380 239604826 304143562 41826890 777300553 511806553 869893738 473978788 591266496 492753152 714124620 255838776 843957806 831543236 915994610 598776821 970184776 725672058 835852440 491906092 751195310 603967417 783965880 404853913 486591253 464390172 694053883 413125582 787219736 346092546 480961689 435775200 819998294 216920385 222278145 34734118 96024285 21838374 586342229 155746859 649430116 8802863 628490867 559239739 744729800 703718585 959993290 911043432 962221570 452385477 982576136 188722373 945679517 505516081 612637402 451478281 502296437 167703470 571501878 90703655 952926997 198311112 616367925 373939283 911131239 581925767 763502094 347805096 673167844 19451596 31673325 15292496 438944059 246595186 913606758 397679848 574561209 128118212 504702400 248139759 954437477 945271701 946656015 202100325 433111148 351385428 604947177 171721066 497296567 152735920 866326825 795002736 935316159 219403987 971855522 489757590 888511849 774421687 969715077 530270448 751694930 427303409 438232666 214660653 623801207 61111045 751973593 41324831 212850473 154437685 858170514 201395038 244639755 123018554 579958408 35457492 606871068 273416069 849258945 556192967 707431275 669688055 713520739 65648420 464178502 5662344 725779919 681509594 793412162 532996258 599325291 156077467 455826846 158264984 907651398 218308559 691831576 625035902 953354776 581473747 768794998 191175406 434968120 124679685 804490754 623116065 858677365 295434365 303984600 282530652 588025532 320814692 869600643 467374561 650417881 87201839 153258343 95868152 510762301 158090159 472118972 49906643 949451496 805905031 823286508 760699330 992685800 154120411 211194991 131316586 829850757 222091471 259034486 74997990 499419097 479318150 639951214 488075376 562395679 188878577 381459605 43150195 379589578 249923106 833389781 128527302 771630800 490815892 744748123 547093582 580352304 485289324 763913565 272205413 605730636 70124522 356835889 267400668 597252956 72695490 771156230 330841725 663015072 313997598 608938186 484645070 814038537 645358932 858476037 444001767 857139686 680813559 875814729 739391455 774218334 460582670 962203477 265907173 603213107 532149385 560645762 277806672 824030938 34566825 592684096 115771333 299838422 35648411 208231571 143427006 584475923 576335270 883003187 388133270 989507424 312393513 613964980 480469546 725469359 49921466 242016260 89544486 935741708 727347558 867400650 156334305 186213468 156800806 824550226 716106869 983248570 203771591 429732610 180165095 518843959 90083708 468965587 287757173 769443662 642857375 719340896 383047022 635907171 8371154 454601111 141769081 489993562 56376272 993347803 12363478 603705060 192907152 233459532 14742592 410911055 332713642 401012257 323066963 377243736 67229791 302933343 155288768 880340566 174292357 405250128 372277464 620369059 224383183 459319370 260344923 716441562 222689290 712160215 452594102 778097502 423365719 854993997 48519083 430711241 372178642 928850493 78570030 322478147 290480461 441634972 378199771 415091254 269247544 919207590 280147923 372168005 355523576 685217072 148815845 783792094 228831665 489725638 414232478 661856198 490143737 971536123 792148026 953768691 423818877 902124702 343435320 876782734 558765778 949885799 620383567 806416386 665015891 888733571 669119012 842504080 456888137 518387163 224532931 371861370 354991483 357822980 216485922 305673763 54031201 723438746 676702171 714333926 486445689 752736068 169426937 411476652 179068472 402561067 299436048 540040891 175306309 961708939 667448967 683764214 11331265 87579680 74429108 342388526 32915959 283466686 86294435 943951611 723795815 750116455 155280714 275531864 226055064 955246931 887357493 898720948 257802228 431607077 407135187 592453667 263918910 406594707 223273367 265515796 186391691 218426860 45012058 110126590 69526631 389259165 183098241 316304034 85875417 769190018 550620768 729964540 96974970 733595216 77389334 925098631 798815859 832418708 292203537 637836055 53605783 610823970 214257772 374599006 367944832 500663027 207596194 595468219 206262031 664401239 546165238 599387129 305089255 428499641 384178345 960355390 511646822 717818054 632517693 790983071 653205861 709815943 620446039 891505863 291973816 878628420 287780912 426852256 232769496 918598430 60526774 613507145 154338854 178301098 130234587 979653125 64688751 867431080 565257142 797799670 706037869 713035915 682309428 904406018 441068568 667410928 225532479 542811051 183063914 201783935 23192708 861435603 59246103 287041174 224555741 302578315 28328521 773518476 55627752 754725047 595169672 705526498 608368586 618344299 568001483 597938880 547731723 850601264 408102158 468749908 52024222 517735332 353571419 626129931 236449969 860604571 439349631 442452324 315971285 947341965 383621278 767939467 236498588 870846331 378913737 772484638 458223446 707971936 335945869 791149651 362589371 683749235 31447251 927606456 750301529 933347380 524729384 602826662 594697111 850565663 650208245 953823816 849082153 944667572 34118632 324169960 237661473 573312387 478895425 619056564 599260327 962847990 217196551 514960424 473997793 766339868 668566418 709152819 480817203 546069809 242042674 413977978 205378244 476966887 312170936 689340287 480508020 779598173 50614394 983498090 848876007 949289133 447847309 810685804 484106020 992867721 782869783 853247843 648191510 936762796 4634386 502869198 436293227 485741884 389789995 554681707 301434125 434800847 7856198 143181221 95453690 348263973 135673734 141021795 29938992 857774603 24843622 234109575 200048033 209953940 164919383 731309816 626646280 655374447 34581563 844789185 533362150 741795309 242805735 996813354 748035910 774642160 408375231 720861016 434102750 910302987 457667518 657006865 573576714 662581391 457253156 911982555 617135852 681259352 167011974 624661125 579316593 588210012 44918726 470702687 132412744 692453558 125727286 927610538 30216236 976526145 417017755 677043168 393607142 892212836 869825058 977050679 254944130 946590725 476915570 592305481 370971734 652434684 189022281 264630410 42984439 813890771 147852765 720291765 686020639 940106471 721294986 939322306 373197896 724803137 228614637 473783676 125900525 500460623 79206491 752744937 316797159 471250601 262303814 952120043 51407310 933718211 633680926 980351549 816521562 884671120 784784710 833716554 323782991 681059063 169832751 660320346 258012143 731458478 658939969 693559267 633125146 636056364 371255141 894231229 761741962 970479404 767111504 936795163 423087903 674101227 462617522 699666028 495750510 592622338 377670418 887921502 533088501 836269907 68860535 908740872 386227335 558422440 213141408 930683661 55815211 707234363 597521150 833759352 286878339 663730012 81687208 884762567 717453141 960222383 526191996 914473969 843930678 880592433 423297302 571078381 392300595 393905251 82049257 784979851 709914770 938501449 831760642 924115918 682484872 760320771 382199818 447577289 64330548 528099139 389430040 855900912 492321963 706733335 587078753 897929216 251801398 429266385 103220043 133763358 24884867 92991428 234864 352532286 69025003 358872244 134616811 899711550 187101955 420138587 351392102 456826978 293049945 818006656 744789783 834903964 544011147 833385907 548948921 642271136 156674737 852891621 468930548 990492134 355521164 907297369 580183618 991704741 433044913 867024344 238955181 486462220 481129091 731135563 686850581 897503066 691826956 819232791 770553035 901461441 246622459 809270457 146337724 392266129 190099262 590297129 404405041 769812982 540426717 695702437 369126875 628200000 521465388 614781834 255855193 769466685 130707878 866146263 524279811 805059766 24404823 932575740 375297224 999569259 103155699 440778363 179439813 447920844 266219557 939526751 361755304 578202730 348708564 705744325 491429573 689682073 654838627 976442194 696057537 927445151 38954847 988385733 85675436 855385093 816992611 985386711 848760043 920492657 90667977 530782332 387386240 432500635 294328419 892076915 629934373 974060095 590362702 602290020 100848355 262102955 117099108 353624449 86175526 219855273 63448483 653099910 552240033 742791261 358151520 817985418 645947327 676993979 242138351 322200668 86650875 694696313 59864289 534128379 153374704 365062412 206682430 250454820 151113502 178258674 50009786 651611965 95288033 780466264 733955326 805067952 63339221 136181719 9172673 903276301 290888198 819527023 221551244 469706063 440113069 475301978 3273310 241595489 282115 237556671 175537698 448555990 316589374 438901863 336424252 341610390 200146651 482155181 212775738 317937635 238798554 512857943 247639775 522275638 461145747 792338354 47393445 366977290 103849299 209516422 203110301 246364720 145297273 443626557 338301525 683162098 493342028 624168106 518484134 776743005 74782314 134429594 110045112 409212418 373464752 512236530 34172526 786644223 142111428 743495854 325259478 686100749 680695226 865653125 585567273 974730065 779841602 872994691 270936945 467588804 333083141 769670977 252422973 611022979 270024279 383318007 248673759 733985248 620657212 981386104 482039938 561119754 391402013 550455054 395029724 669841940 123162815 328095133 80780436 812529648 749545735 981741646 114151761 503217287 408747487 654314883 312897028 548312335 19583890 768191861 104855126 327456347 110030372 340217122 206508432 223896518 126905693 861353964 496059616 734005794 20629427 906843611 643190270 974313030 351103686 562592113 224579574 291625652 35682924 285350379 105926948 232382972 36894527 652894341 174808956 984523696 694155615 939078517 17813901 432913643 325871788 431777179 291603936 484881872 43597178 226612358 186149849 244610048 230763630 585786347 76474508 415975474 223683629 436967974 124156805 354883417 117943522 663300154 394392067 672891253 562731832 704661308 368309210 804343315 109508470 909493737 617927209 838787520 177917568 749355910 58971073 922652924 802239103 927921959 86862757 478100779 51388500 764158019 509093372 717889389 33603738 205677466 89411519 439797355 183683051 234752445 223704804 781029952 526395814 916541049 505703461 974031177 539054642 706325300 172727503 855641867 793167784 872993405 158510127 877695018 533137603 874772004 211275618 619465229 514606716 821679633 550478692 765775975 11816226 798962619 136661022 505924316 404355637 984568692 476293314 729516869 82498360 559694666 1611472 779770045 617236103 765803242 489284472 898271704 189793565 737562946 625424377 963414076 194431562 501307385 13741038 424537419 353853113 719429093 589473670 731523427 143915167 563395938 385686230 615224646 514107158 740262221 395814623 910359927 222280185 814991363 269757538 476693986 240720518 636667437 625595988 914108744 806996896 832668197 264019578 972784328 501862355 851365176 846797224 882238900 701234748 767233839 678117044 754746198 148738319 576123870 277883628 839748149 754050399 946540162 102677793 866491011 100713818 873593764 32780398 441724053 85160865 317125573 168556292 391494915 293222652 483295801 279173128 303256271 164029457 324555889 105779209 228620802 54033516 158326408 125688333 888638733 82403674 957249678 371309783 728754966 517873938 992001870 465758970 793347747 188864623 920416851 586784330 686195881 2436932 105312058 38323149 43311830 42002436 995558844 685152343 689551032 560365926 664891840 476198726 791270638 708118128 826644542 505583499 554822546 1584946 589048914 41508568 846376276 537853607 674721313 9535831 284195853 26803123 486377937 400373271 479659583 368388666 445019328 444058096 892286217 62230821 656009916 616777511 691833697 594546470 882992341 670686793 904963394 290572370 726959091 206110311 244216809 6860710 290963756 265657037 384596965 81197412 577825020 78274534 270917006 172993940 400329616 12247394 85033819 57036793 637574919 269175884 816338202 559786708 560902471 342434033 908558975 783535682 920516606 818892293 840972539 107151730 577195296 202821864 340574468 160440905 307082196 106186728 645489514 36877116 188447107 52827484 209438108 68923545 346456520 34517554 630444606 282642236 634877639 113089204 489842041 38061108 925046943 76525120 734224670 26375832 592179968 457573349 699342969 417007594 956200721 550977878 920755845 695128833 810393707 157113584 757336603 586168301 702906229 154362848 478603606 67987304 265100125 233793480 589887283 195941029 715731586 308144465 581619692 296072345 310674557 274487579 714077018 3779838 780576102 738411615 886776234 379821017 781769247 450956793 765853960 733795657 798827624 139139663 916384881 815810498 836749850 217073565 304350405 218859898 727158246 273780250 683263915 462694370 938426952 734785847 922376883 242231106 350619087 175561790 629828529 295541829 657578767 249958268 886951829 420165928 488138611 291189156 921026316 694259479 857118482 582663840 681105070 469159260 592270918 562663537 934693144 247779281 730738751 183106261 705174824 421883543 945742501 450469854 748211579 195086160 564429500 91482930 676695625 36905261 128664561 107786684 265895789 214487228 343595068 253604440 923654755 302414264 728277415 261976019 293681984 54716573 133950156 112176730 451500231 376362263 453332296 89674869 206741271 97139418 268224920 165839390 950123930 385091597 831218873 547149441 807785304 301086050 642776531 232305635 548987716 463444174 812599041 87150181 235061424 90306576 938359795 715030759 821545255 727833305 797946338 424444096 927057703 260824752 908964376 274802845 462739156 323042294 497640665 386714391 417764320 59636240 832232024 356883930 388552321 103877731 373515170 67370964 403350482 136346512 492525097 379682376 733293045 567968697 900709790 682528494 873034908 330807546 940526249 869759563 953500111 597437480 904706390 448613950 920796139 415433428 605950322 391693738 498958370 359251801 837844485 465040475 805206944 19043800 185205838 182286835 685171873 596281487 728899527 132989723 423939679 69179160 318766447 311436573 867800220 392867698 896275931 545441958 727876852 434998429 890740398 475260247 859501657 488178841 760805126 133274967 468825856 39397041 951723485 531470421 758748244 192384668 219477634 99276933 777874437 213856053 699515252 442304129 786428075 157089612 259634749 155789499 241245666 133507431 932424146 887025682 887492470 79510874 618322843 189458261 727227315 276303571 360833152 121085599 935117164 584677031 735813045 307329782 635911339 472117122 848527578 712172519 824242292 499477559 680271853 17463637 246528946 221113329 861611679 388602245 674436711 628198773 789936101 106270329 157020815 30918573 118224310 23868230 564082598 265955974 335110249 294442018 412503003 88676319 527322333 457808030 966436878 675793734 738655744 414150115 456067245 13155850 976503744 805585592 842145687 578332077 807460243 239423425 848358315 368047296 720244048 334368006 467024099 346541374 585546196 275627797 586251107 308578983 811928534 41287607 814016015 776794809 952088444 157726357 503262711 64260319 773016251 197313341 981098923 163069074 533069217 404481698 415429825 403489999 983074590 719639451 804327465 58346784 381351942 844454 34373565 9281367 537038893 217262848 577099709 243593898 402305009 69315832 303318668 8169707 343117965 264089370 752724613 17075691 185443083 41604015 834621251 522110257 765091267 697553443 760453200 222152207 577263825 198658654 357299528 313460858 891894668 183240051 761905130 232036508 725026754 501856022 535893964 159946926 197607208 130656514 233989262 106124936 838584639 336473539 958969979 333250765 923544116 63760259 413047936 125906135 632436022 188326855 817395082 581731123 853843970 168303479 555714921 265904812 672266011 131745084 585143529 161307629 295461252 239407922 384141599 203458513 300479516 29611175 728775593 416194763 549027925 247634625 639177014 15867324 865939914 208096555 438286255 371725465 721988818 221007080 920951804 608115674 715046742 29531847 536837641 231206789 359070679 71549710 893555036 568715458 736634148 393944667 498673370 28914423 37470292 20865004 45234777 38248388 837341017 318553656 328188083 264123900 837792927 351754724 597276835 453444904 625866735 460197668 772443128 133351228 385868433 225663568 438796498 104900056 799619434 165783016 526238147 438613250 741701298 252800293 613288267 204280353 986152526 863655906 978979588 643408256 847125251 653578889 802878189 460046590 744706370 125833893 460864506 202723770 622285424 307567726 533891179 299152058 986575299 180538111 630200969 435530663 947137272 225203399 658113755 349722953 460243678 144178461 301600691 76331810 819211983 216268281 336956642 209193015 388636462 213460103 625866651 254505294 559768180 36384424 993730651 145372617 351284735 303652686 693202634 377417994 519798572 216201665 750152621 537765576 690229926 23508860 846893307 13923686 357962326 301981297 669544634 78359059 549586569 187185750 212087170 13879306 315629975 62791890 900394329 657524558 755833210 454281024 821484244 197388287 853626931 107702783 164092715 21414825 213504315 71588347 547380916 121674556 545651828 235873580 960846506 689991441 695206776 123515958 342942230 177829836 499643543 286655609 412105265 325483318 508529966 454815392 902257073 121871324 144464113 142239042 316571174 84716050 962371354 621367876 670849605 631458401 837015713 20925985 139879623 46254688 262532366 192640330 974350132 556280468 608908126 187519714 204773965 115103399 611807328 321750307 988388775 545593948 944486910 119595089 502851371 113496778 864889651 397856266 673928577 491321338 628458978 843478 421771692 284248104 551846402 495152026 939190503 139598684 554204289 122026941 647297081 479562696 944836188 793760407 938848399 249761654 858249897 274784287 785625743 757498578 872044774 209890633 861847872 849943467 929776849 436283690 865955102 798779462 869560719 380263002 964272501 172578949 718731102 352422245 789459582 557948106 954162220 215835306 642701349 177020115 574075960 130697243 132457732 24310515 835346476 515827224 519695324 478626342 631017720 218013554 942187737 762746204 913629286 38328087 942315396 697222153 883712133 748759190 927882553 577404694 988119982 585806322 987212743 99873531 895845212 183776570 931289153 771182679 794306954 198564320 557180601 500770287 984294147 218229739 622944494 511421643 933689681 920503237 954972610 261797914 674577295 377318839 634383416 25954519 555704333 403151268 855943560 486500070 612779415 361220299 482058962 380482987 501648848 434808693 910957280 796617311 877393717 572673040 891570876 48651968 362042150 331064763 358257454 286510422 913719591 732478558 965492318 474923017 787728436 707576805 859379750 610814382 724976958 710837115 749097751 9807288 828494057 128435868 698221079 213177805 250817813 68846747 574163385 441909373 713438644 349659472 576990865 549000251 684948526 139138914 603292742 51864573 599697418 340352073 459711174 59216173 749117837 571883331 972805600 209800065 471023347 35191608 508445530 192628232 895847265 159479045 540483056 164753205 240283629 15750528 272974417 215719719 679313946 163400749 246146719 193411200 363667340 352125863 655502719 129860120 229719782 217631547 870239406 105992648 606741951 454120348 503724718 221561011 668886064 185854782 887912590 350707486 693758378 562394637 771972063 177225197 413685443 83098643 915084380 14462639 27849747 10974532 536718363 450541749 879330528 51834798 284853105 5969644 938873480 312835742 514638037 153956456 351063603 43686689 899344639 310447209 454673476 183467415 352266156 201673308 355717987 296026373 374424402 46989520 452109890 345614087 383687385 42062073 706474683 48929937 743878584 505928293 601951293 146826254 626489332 162988489 800558426 286766335 975247273 414857135 525458175 370772719 533434348 399248882 937394188 239374323 786554198 742019160 966486652 780864857 976850186 334719097 942643262 521818752 958806725 362067434 933784428 515904332 789736121 75424107 398594802 277198018 799374745 425583587 969193355 517830867 552978350 410434756 846894669 85583378 280131765 220784630 274141767 137815420 431971714 301280071 883154015 204576994 288339114 11509510 225994682 120722570 494340440 432705566 910072459 502458973 612109862 104119514 827651807 677176257 951868708 370460640 853503942 402367575 730753536 639477593 666378417 319898066 495300662 35533909 632168864 170028748 564895795 18489666 118493979 5946349 54598643 12542065 432551061 163965483 635546977 529219437 895235796 33164452 104408980 27881217 994846153 236529594 668188345 22618226 48671139 23489052 463500715 191055184 395204864 388742745 764819348 200364906 966233268 240037597 764617207 238725536 858080414 810055647 883263664 401699580 869649219 640961230 736359093 123105765 416061507 382011206 455694570 67994903 671180473 84472649 562307111 177539231 745592413 197604708 467853312 206826016 251519387 167196156 761059891 265897153 842014767 13863126 394881706 211905495 570051464 2472154 149469617 100227966 778629944 428402165 895342861 843451481 935641368 678071198 879712433 878438601 896945332 533564692 697257376 457673068 758244269 253271787 616624846 395788014 697911693 164857024 445041102 180180139 867014503 164623537 947670664 674777268 761198802 503665669 867654209 511649349 860284334 766776714 798122952 5270222 746527746 306920690 567021883 549908888 996474178 107788377 551379855 223557560 594414048 532172352 575839290 473502657 518429101 188738495 799938177 560062845 790137439 363427121 871744439 128263091 863154898 86945156 781318687 570678821 954943381 843839226 978293107 821554354 976211826 561546970 955835480 788120343 914547566 275998847 735993172 197584365 852159505 120981419 593637878 163045744 635828283 505156264 665030079 487773115 585693244 565004163 687023757 263939238 497341921 267495639 669057976 188791880 301745177 264249376 615761321 242499409 261826303 92808221 103349357 88301693 111060757 4181250 385112975 343506609 942268369 799987889 939816867 479633530 742456274 333599284 591528535 533707461 613223741 217957130 818323389 765745065 786924011 296891907 889166464 718444279 804916749 354244312 511171095 224578593 768780241 645668840 854486793 48917363 873193116 501297452 898295418 384684878 905353679 191376658 877664324 490926076 615537556 239633609 914970619 387003390 679493436 87191971 352021741 242716914 936594827 719017644 799791066 319427517 977437815 941389512 956015612 296402580 515280468 500271955 974390381 670422640 877464425 744196730 941265150 345702022 487761581 68242858 766535486 661776267 691199740 267217954 532085708 214480009 866377306 1995978 499065564 352418163 590130717 338308664 786393771 328558734 776566937 589964714 639298466 9484050 172135199 83527800 104816273 39549321 53932858 30085555 840183631 702389760 846807276 703444139 927826471 166737283 230128200 151446592 790181391 781908028 871235539 151945559 200779413 28087360 991225092 212014611 357319442 200861893 213043934 105555012 629403463 2014772 983275327 522988207 835829010 620611432 891964192 672774436 822601061 584969274 888393744 354366119 864200542 552257862 897654886 345737702 890521618 867245805 914814349 722336174 914972933 660425717 780156430 386692679 891932651 681820713 752620676 478663555 784650198 501752233 912990467 369650704 693309623 294685892 799587301 131852222 273322569 115042615 808568783 148028759 967480311 155310988 978008040 202309620 544052133 296453684 382090627 119014267 898893390 580563401 851374107 484660812 768137755 251664420 938216284 357568552 722728680 348959576 622952337 379829184 908089805 893761188 992322981 272892939 984054592 691555308 699296192 133163036 476167479 170253523 474938982 274535588 404132936 175369838 727450269 290635066 542983601 445162401 808854750 758377591 787925293 108777619 188794675 117749811 347641240 88441077 349149922 91426962 175024938 63699820 248247755 236958159 684494233 371943740 684792760 187759106 384100946 313354608 500331395 89552237 384102705 184690910 195473489 45664744 939687616 320122676 493894980 259549176 836318464 565484667 761508818 46928039 439704162 46823304 807148717 212438735 354619616 27507319 234912872 53587962 344628782 131866569 342754596 202859887 238231215 117235329 178131975 46008848 166110161 28861948 782476091 385497497 677281778 494686169 780013866 643183615 719207758 610916900 876559853 410387799 562713497 407285496 849960488 317634871 368588100 258030049 437851135 300373256 827363555 585457540 711073103 291491232 389886919 138876920 707685292 123381172 368749773 77350711 634273273 38982791 158774824 96213858 991387966 73214438 472321029 33921936 179097316 58334301 336102807 32663789 312143223 241761579 714376210 105081545 248008452 114490895 206829003 36323166 554430697 408421106 557094135 163508610 918769969 134212942 908091697 705705296 796671440 410348784 938746028 701433470 874843681 219412504 866171838 133819512 200584662 151584878 542352093 415374834 858415288 530047737 671555757 203633608 360030017 300534704 488692901 412699003 567922278 328200161 660912927 300599064 978602485 826653157 886862997 868430678 871669185 833920861 995489016 263355531 944652399 938798727 957665012 80477864 88631237 74637073 329657484 2603889 517636286 480352907 600683207 250336557 829724974 616068584 857242212 717316155 996958984 801012474 919905260 130833554 780999896 687199831 841857761 728066395 907707308 566763441 615730187 28470334 451455924 168644866 682066848 284175853 555615199 153046893 185634103 93552126 487040043 39658665 433348151 285419676 344642161 11577435 375997678 123588116 280756780 8515876 67336287 9514165 830393400 277420372 833853579 615621711 929338131 444257434 898870979 239834973 641470422 383057201 617347263 47928279 882428785 320160532 543221867 408403361 951785097 853742104 864437247 47327765 162988013 21772891 772667857 137537944 787413519 736561502 861720747 199534211 522524238 197346730 221856912 107082252 526078880 126900814 499503760 182847513 466184581 425892310 900942895 301193696 528443077 524541480 827308519 102334587 835057915 634539672 942080934 614934423 662119044 296376741 489488235 219888328 509160529 362257470 772150395 650218883 881112282 87265644 750113890 547885155 870288266 425084069 732557974 43667149 352626769 89139236 258346623 121424197 312106573 70678997 77279669 63768441 398684513 125111753 918958503 120198391 387378381 125572639 409571510 355863580 945323952 579376198 592154354 511768684 715981494 550306811 912048305 40408182 310535841 211246649 396505532 7360241 966332193 479980625 998956581 69278058 894403586 794829858 873296058 300703842 868334799 784483354 871240024 865326247 993118470 929331115 956264793 290597243 949348726 646399690 862312146 405602757 613824064 86067660 588557503 135543368 871095087 110558872 889418942 51278236 734099207 731975118 839017253 168116101 741096919 593456588 628209921 493979086 748903236 125417160 350525459 100739814 844044184 699027944 777644522 271176627 325873954 138877933 150639485 22880589 414921533 4606457 420847753 150025296 438503539 298145946 828659888 371784136 482797031 247988378 528626026 173713745 675692116 338533661 887068104 23013412 253662993 105942294 506368417 210566903 421592810 220475932 282151550 110661076 323374991 27847657 209665470 193620420 919121318 846907085 869999906 644924621 842311156 157914707 307521995 85489233 837366682 805874929 987578525 904334915 947082370 730790980 999405281 979872065 985737708 230300795 249264410 200548683 274838460 183984863 494538212 252164333 822134882 713820263 732325841 266843749 289799161 61918707 565911879 294206732 874875168 211449818 675760793 277332672 835691493 423129449 882053552 329452906 756772818 689085505 936198185 509859952 884219229 787133645 867787923 192186000 460978184 4604297 232856882 229338399 631299686 117649217 596634876 280890377 966440836 289056753 440460122 397538433 633657744 79058038 588577453 497283056 926608393 647213258 987249029 703599875 933268157 11302648 738757723 200728165 240214098 157594887 256791248 103319906 741080232 591141661 715856600 151366226 803552671 390306379 499733758 130861241 344152972 271538529 514626659 331820160 959882768 297604372 994197780 97646149 123282299 58424856 899564501 698448032 853968856 538624683 609824322 370908114 771720588 515037763 795097871 542473900 630621609 597241068 735376131 489146070 560939645 312497930 678677198 130786002 430307423 72418482 662288723 61485019 646773061 295482083 670413028 442362635 551389773 414974120 735412477 150225604 200780918 57476222 653822812 58602332 644514879 17888272 131982990 121940017 178576274 23740307 900798035 687477167 838518841 736503195 747280086 357562302 658385091 187385919 497822971 229114381 393537339 36709042 337656975 308241126 444758265 111060737 573573408 367993354 371284781 127610124 673246376 560690128 838194143 827228769 857247187 30872462 217042732 121440977 276369339 200327016 396274810 191639526 483587530 23356901 295020520 265243228 460237020 305776484 754670125 542268502 693996510 138066166 715779624 675353828 741369888 492581217 846413332 267205730 999455696 369374221 426058722 129468133 402637951 353850916 440146625 438541169 879614385 195701945 767570303 678488775 847005632 569077293 790496786 119733427 604283290 208884299 887888942 208722366 846218931 490594139 783698435 702629231 719003738 215410618 765486928 650950041 929176916 106383896 835833056 399030323 722281465 369420130 380588116 24993785 512216111 193197913 892974620 565685842 954180699 170112560 432628136 143478429 288998025 226365155 736278827 579005360 849772371 147668597 665404313 128197353 339169170 3954586 107281091 16976906 408204209 225295026 681193622 89126685 647748176 173274149 831895926 648315924 783400885 693468148 825463830 694196102 760871062 362205041 972837230 642448199 985025471 83681519 503496689 382807138 722772984 514770692 623230771 356376760 804161871 308523055 320392389 237699134 998395200 253869550 278716949 151011485 984524973 574189829 842488577 516824860 913423653 135772336 328616254 27612831 628426723 38977496 425600512 113959321 841516097 750941024 775221564 716720674 799229904 429468832 501782405 323880609 641088170 81015318 469192529 330860917 482536921 423047078 579955302 182104106 945806196 654538851 963891133 675086998 781618790 575560608 990416959 954923343 967903478 353012875 543913714 358780386 723407157 307772710 545547454 301273268 865441931 691561542 847806294 47108240 235174390 16654212 526937591 9385199 268048759 169122161 849325678 455095227 553413708 450734412 557474039 44553772 930276064 694782329 957528056 425942562 474452680 200368834 561447028 210137800 673392588 215064849 430294902 354176534 930991380 412912400 553267234 2982724 307175181 251879564 399124072 213733833 893983031 401526889 638720080 484444258 540669292 178958813 209898337 173231422 218865910 11528999 926502519 43455776 501808517 211710872 663979961 273916845 578928402 95620289 768296952 698054162 839757726 717917682 824049281 329758538 686678877 343293904 429145980 7547573 383711666 4099403 348512336 70890355 913246737 438436917 874039303 873808789 874885450 170970880 378109556 225101768 319106008 97753515 442104791 102493996 560492437 11373391 584941676 292404700 566242601 478452970 563105025 211947168 383865372 94563566 192302634 55217726 60847349 3042280 949874494 557414676 623586728 304453203 349134487 56600464 88922207 81855987 858487770 325604762 339342835 101030603 131388998 125904209 732103844 717571013 892272108 29836937 743367053 574884885 673847597 570996126 767299351 486214080 764863952 361851972 662800745 254155505 416604958 112797676 413033358 160351161 324952566 222857354 346935322 285096999 376612869 200545929 340786702 157569027 414945635 307215841 372310344 337865673 584207307 93242785 520426589 162329203 387462344 153880786 706577356 578768228 680486932 216661519 649350945 264117676 467800900 151207378 455044135 265183869 500401716 382215811 863952182 532969137 895076465 573750670 870659582 867156699 923219228 217496544 750558070 325965457 987718639 458485834 591891890 190893148 210509378 178997318 646122593 421436486 719958028 30473705 47513534 33996777 892645196 838350276 900909607 103378171 242400610 144192642 361224094 330987905 390355702 317422562 642766217 196380952 257153998 131404923 941716415 558565783 720017932 318915854 856075763 360464505 537745376 442662841 958553218 819388842 898712832 826972911 987277603 400955459 970769390 742888651 867531628 254981337 783784106 492129686 716067242 267648818 740074344 715009367 902302813 502235108 939903537 548528525 941317685 904127927 951453150 720495892 964264485 72377641 412365218 29808873 770731054 609098866 628051650 615899884 779735312 560120639 789293080 101491935 423425878 65227762 710833733 586208375 946375612 154860735 738490148 675167237 985703490 470621839 773495151 84250803 313339961 140487054 976657487 717637327 856622316 48995289 599313712 37481052 145584158 75725057 573597785 307032914 612020538 171992948 779344727 18501010 754038876 578225592 888345449 358516701 687068106 648815603 685581119 469479262 477358105 201610485 342890495 30440080 568744315 14261966 294620077 171475161 529718507 279358816 386387642 68403068 701577590 140014459 294036722 284056375 442852882 216841104 378010588 227003520 938245433 923789468 980815971 225924821 246312913 98754809 559571005 39806734 157552644 157522607 224832670 203197956 225045825 175898995 491550484 257902852 577808313 534963777 558361729 542140417 729401492 25660743 589144232 362683401 545278024 176701390 355755016 298939089 648670222 245005905 257117817 100634768 403990229 78053494 508878423 106255855 710859597 519287001 598282050 204334026 941587084 124548092 814070151 620253694 658501800 311873031 376990525 330553609 693084786 158906940 968573026 626765174 867401751 723859239 731588556 405086672 928548482 39058561 313328785 80629464 725929803 192549902 514221499 204796663 571083845 210248673 944048791 319563910 679125708 143593359 684460456 175747317 447743692 25890151 623183493 162085477 699973659 505911378 661079664 111418901 200378531 63424134 697017904 626365563 692723585 327825530 872384398 78556156 386624075 87474458 305399905 233505854 655491726 422244844 898651493 504345761 604028357 285638876 382640440 36577547 195279452 89412600 461582648 3872656 378487226 195785224 209114564 121165632 555211791 15629104 373746596 336531597 425066108 331045242 978346480 723504675 913848648 453167650 950310782 245604650 793518966 480431141 820311065 374814084 433850661 361431744 657914482 357209984 592290107 115024679 671433751 153276795 688936493 201308162 673304139 430031118 784064150 702463625 925625152 679024856 942817566 199565155 356874032 307120325 997948020 21922164 998234225 74782676 557006328 223669919 811777834 224239090 622486969 614141865 870083639 627016568 947053636 574340926 930725499 374155384 726161859 49121887 817840479 738027285 814810145 101690435 701530894 619376933 815771492 445806021 492953668 221621837 401731359 331638526 407226689 166876313 866055122 170687985 583378867 344399168 719552176 85664710 334492593 276678454 604489119 543386806 767304258 292863622 779746163 108413785 305308041 28964561 559529058 116764440 358460084 334132880 357061821 61014391 324557273 319065228 396813193 291513317 505792441 252256297 658535829 362965092 997670374 978522895 994549179 771653170 862767100 476206068 488914327 99224529 608757516 112052365 505389416 29782310 892376996 40834562 977569969 411806635 817905333 392257812 491614615 391836843 749730654 398125082 527963729 217654781 470103110 39200250 498332594 412783106 456329172 250631990 631767679 538005424 984048434 803279332 840328358 528599390 588146200 384746399 426498794 256770162 726037871 104067393 716773233 263516245 842956115 610499879 757451899 331291635 474638546 303964972 464768237 27023079 424009737 50985189 639124806 332796792 517487900 41290004 707158311 251787221 892812619 599157955 858372891 151279160 512410431 178832820 958439126 648831861 707731058 136371840 313449893 190893711 603490497 473030531 888080051 291423199 530452532 265096002 914952522 594665913 613459953 253823364 278226418 141707875 605007538 290836188 401235803 91763336 969853646 193382780 973704035 257613305 494240726 147983231 742076630 537574629 841912793 823470484 880498445 741500525 778892576 598687995 727774970 416267101 744176642 518780817 707972627 146894887 858423003 721115742 784424041 298547843 705808958 370265936 603780010 460293665 640547667 423317650 729387205 621675339 663486879 620493346 915316999 649794938 757291556 133857100 310297791 141450681 942758705 505872960 738036797 160290029 602768654 354377167 531412019 174564372 187939484 100270695 600095836 590790783 635309035 537273170 831622192 431116102 887924415 61512087 560142283 501163801 745204698 497738060 839968944 367710101 519765631 227083883 358389256 148642572 315952730 102379676 750648025 307989874 887804678 784689986 810979331 416068534 766841897 470561580 556471087 441319937 668706509 384092623 693982636 70258301 983237159 348556968 945080133 410758279 606853938 260734706 742409703 57782318 211051635 50195813 474889563 189345557 998172695 277224177 890362196 467339926 573980832 138612326 496738121 317980615 398847055 126721185 759861826 92319406 175353697 118366009 736756585 172306512 833061797 222835706 429352532 17844791 765438480 55000405 556061220 427296590 922809658 264245642 407071143 191918174 748730352 237063798 584855101 544584410 853097271 771521297 973365282 804664698 846239096 439443133 630165420 469004908 985192492 504645349 814381360 290533919 823503638 170026859 391415882 79743737 516345412 444232667 982187916 700357851 992798318 196619979 809857678 620632432 681737293 520054172 917881287 899581526 955574093 489221046 843873673 262531676 794415081 264025931 947717818 677592745 903661053 653986412 658047956 147356883 154021114 65934888 195536935 37154812 739918547 622726518 824472006 301567635 755930056 40890154 766952356 758323537 797835401 94057787 730237316 645866812 894488723 209232956 353827147 281725339 293535014 80811268 148487960 36248032 318358306 221013079 749935538 292090981 333987001 103593878 695160289 381312425 801523335 134686368 942549948 22740342 219794634 89269658 815118905 294245911 485730086 338875452 444401327 218708792 342390905 190588959 505052973 69860155 182764132 75484806 721173226 415077110 589975503 226220569 548978503 41222417 467887510 363321454 761028814 448577434 457789306 142185272 168890824 91131505 105506043 87170464 165905885 59616870 859668120 82623274 517629323 323723531 769587629 621767353 902736239 114634957 114958487 57815357 681824349 303469586 745542233 287166445 497386322 232898598 736449788 329920164 834523465 357947175 527865208 133659647 213055572 114940695 587308339 206411865 447199075 411808982 537049232 324309691 444897091 299141824 444433905 241505766 907823412 650349124 795156307 291230415 778006796 36098435 825508297 560225770 593333090 94486359 144125579 51199508 182814658 125973958 391175264 133826492 889792177 368090353 573804048 487122535 927677817 61248941 392544448 235689172 804461681 588695107 830270919 63759866 283407120 222869958 502881591 417037147 559497987 218319352 689778981 532692190 983883602 661786216 853841491 840764252 848070459 540945259 721325206 673489038 809237357 604320603 971956746 729840754 910259495 178375118 257241662 140265640 654770777 437024978 894813228 161503882 937644124 872686684 932963691 15647216 98747633 2589105 415977772 203708668 418327202 50396347 816090173 793349237 872813701 186877300 985194217 291894948 639827912 423622234 446961004 13533337 718861577 381652980 799107657 319205630 610922773 144929786 622857574 355463701 581407209 557000117 854786810 547130610 559703268 377761056 478229164 192162741 382605986 264277048 976639562 645576183 786943131 502297152 703932606 85019124 231637351 153133934 417843720 104753379 254353224 128795389 633331989 116538221 675019767 613717605 933154302 185476775 710338692 442915889 821073070 472542941 790719756 626701848 966162275 46406128 942487135 577276358 677501853 360956433 684258775 565489250 913625892 179013680 934411379 483992808 954433064 520205030 999307646 117444552 400700945 177575417 440446286 332576150 430461331 324567177 966738500 760842059 888077064 97119097 713968155 489246982 719162919 426179323 767567081 200143681 351597478 188254444 424836179 394389637 684856562 549891380 876379745 212429247 966847253 747885267 962961388 891345320 916136984 227486242 570735282 22369680 233832488 37831929 185860949 108343062 941983777 141281443 379069283 298622460 952503477 448439695 580853762 324398557 843967032 752622028 826186277 289729407 318999239 134026514 980782041 488497071 795728739 176520873 332589012 37390924 819055591 224953930 237539372 163077249 181018176 74728387 531318052 107276219 161799821 136922360 398262206 54517335 166718971 163024739 206541630 111739859 447844820 309515809 954338254 526297540 717899325 496729502 560739856 230767200 520454078 259543517 452339701 248551786 763838060 268939242 730274762 719182690 985180361 776587769 989163303 118130262 788858019 208824624 953404461 785212719 803611571 390434548 849038569 216585543 227252326 133977704 602771932 585927426 770580636 758433706 839854647 740561768 832676957 633652664 853074885 420680090 654294559 517154106 721406308 128972015 396816645 90150236 191910734 30123405 621639997 17903325 606872753 601754782 635953229 618981492 690793510 467874553 912017923 530576319 755129011 415743775 874253932 782839382 862989939 474276279 843560011 359278546 756897554 710017871 745523422 628151710 948709947 485853278 560676726 159097576 751037492 95939610 996502272 669723828 805524035 96704674 826463506 795887938 955524891 181062741 922826473 208148258 775447216 500403428 531584420 4574338 194751652 106804925 468020752 222757735 297623919 17309417 278133787 116642387 403596801 402087301 464050404 80892422 559304557 508670542 997043518 169464093 213725122 33288664 674098029 80850898 473651897 103133532 206594347 60915894 888974663 796413850 900907790 587828589 873106451 158335119 545062558 193398388 393624333 127773885 352854703 38175371 690098380 152025624 767886322 22934485 695576389 408431315 858195591 409078598 727907508 566449703 725822009 221339621 231283277 213028158 283497721 32898008 863586041 212401633 729859681 338875587 810197566 148100039 319396303 291947928 603775476 562546123 985399190 599868979 804762245 329758708 672125150 364090270 590746467 159760045 345950752 106181932 911478432 558440260 912082303 386859851 866712029 183228201 444302811 351446139 502242618 224107201 832522016 113138221 630448417 605114408 673169403 421832274 785074436 609028803 713021856 372089748 682461965 228171184 468690191 388702994 589709679 364400752 731497737 320602820 342154732 228318484 486821808 381963284 647949407 252350163 803360516 650729148 913809495 148506484 188218456 85686885 218521033 144840533 304086641 106992223 682219346 337006229 337694529 305830112 995121843 720954897 830481168 747627751 873196100 281137449 839561513 707846095 929440702 889829942 964427601 69671137 761016900 192055796 601231942 461592076 839735660 195501019 433083237 6355001 179574064 50205245 864455079 714026812 870320024 176438103 984256113 942436739 974979515 882731682 924806980 61790147 649398911 96720531 217420753 38982091 454089906 212427391 483108293 44506678 837748972 135713675 441739685 157809108 897197695 61750082 728234271 267788555 432317088 53342400 476949053 171811188 520024701 470667707 702288122 562705752 813462865 775155134 858367668 575848819 943806177 647988923 943769864 209615259 270208457 258746171 554967993 34780108 900677265 687092479 848234116 720451382 942120410 811071590 834780911 272246814 325908522 173105588 580057331 204999740 665299512 179059765 638066106 261829057 820052317 588819706 602605251 284503662 545613609 541440056 981080506 692006841 839479241 760880419 838356970 698517132 798544831 460353081 836722305 801486087 876587387 315596194 417033493 328389441 887227322 789089725 832451408 720038088 990491994 944978474 958215738 154422491 520664864 455039692 988550136 389647538 672492825 101570959 170870328 158452944 525817460 456016021 631151516 246872064 762466548 698347260 801308715 184439987 323680092 35619217 762572711 263550312 270075992 192993245 839498135 365007269 525510780 494359602 777060998 526570550 727326353 554951496 851429601 669022236 792086827 531975625 570087491 266526024 580963424 127444608 348550963 77450660 417443195 230703625 947205560 920091267 925667924 838655563 850757153 360944738 625222426 43585250 806738995 229171426 715071740 520402477 950398854 58691175 836324108 41430166 647132900 56168176 176291201 23270537 250892631 173680487 524106572 461577664 932772303 626353772 927647075 396334494 791375612 360114378 475305141 195406942 424158880 42913504 829053398 740203435 965510792 6838819 226974207 157309764 234026639 93692343 726899253 117939031 909110189 524612325 954307063 802886057 952101679 79818755 457259915 123997350 227258765 134941701 695872701 328914303 958459743 631181783 916786768 667160037 782921547 668396978 776168097 506771212 640729317 395645685 903248413 112167559 655184734 349344499 512832668 44105798 194129728 30058756 827729542 124074629 727367907 27777386 90820433 65338867 68410145 60621299 122435845 72539655 122918102 105094496 825889137 567856043 628492677 21307395 208408438 46774006 244393826 219415005 340253968 314402860 496929231 293384251 461132359 398406846 753129265 446826388 642658230 151819561 296802733 293337987 571277856 554914564 690663109 261884275 489720467 182635383 902153696 128798686 632925430 35387684 115248861 6798522 460991866 156833290 796810060 545456069 831498484 378250599 412407615 341219384 688060233 227532018 546446318 538262693 905615207 880932178 987079547 506840110 905820581 520949305 953743991 667383840 854951361 738232886 749773046 319574402 816358970 182465961 276609814 163802783 260960556 86967667 829013366 492781559 856365094 76089728 884636393 182720895 375201351 129710634 413989487 214521378 252655081 154308180 419626647 414215917 602163232 40537874 942492143 419506778 583355083 210961419 829560779 430211096 748010188 228007144 289349665 132021686 711878704 601540452 750995093 735417642 994547757 871375147 991636498 321864735 344828095 76156954 677295299 187600406 607755900 484008427 914042696 179523807 489249062 434183186 470304420 97685424 332010675 208358101 932334379 518053178 816092225 463368362 559029389 515344011 832601919 346766024 872008230 169654178 810649453 415906561 742543787 207484764 251490069 30888616 416164018 127484193 370498468 37413137 374831129 104410294 958408134 895508979 953889866 753811018 986745924 985126946 990116505 790865671 973527911 392820510 976066317 752590298 791671608 530538831 622839572 69203359 736803658 608225224 897499500 789433313 909530076 788261201 945784418 349049598 923265504 164846616 587527580 116748461 515167243 74346938 554853397 245082842 764628711 266066069 897589239 655815398 925380046 66088356 599744697 307898997 691977294 201616655 361162355 12005244 560180851 442497457 468845982 431408051 728148845 619360849 722143278 655537916 938713845 772383234 904141506 479680815 978388085 272647585 449987616 390216843 487245317 74140237 438936448 356177490 875578167 615770209 707944512 650697687 782698992 531686371 926566304 257675040 804763598 145468232 715579327 490460591 629309874 138517760 524829677 517257918 696423862 530501112 841809468 535820391 557064657 276164020 445730478 39541361 638303150 445276814 825034158 190680333 812185695 429318698 747225307 510933090 890353540 775435406 845889797 522842050 985507288 302207584 733056096 532918655 960845438 690750793 913837993 180942306 648986354 587469232 966542186 590517446 735029883 560370928 809960751 130036989 640325016 501235169 563849925 254671065 832260042 697190506 946554764 726211415 882472692 760482169 991307043 48766736 455948666 308242378 706899226 532638715 838873689 747050335 751821973 329418167 916067134 111339035 633452702 329377710 413914916 80398982 134723842 22544620 413180365 403979530 438722527 108462894 129527605 28382928 183839022 20960738 36993180 27454029 304389070 6783783 915402233 855337588 942285124 273025533 831491178 408174438 820836865 250348726 680356677 7908219 900340410 748312161 959666177 288587944 935295995 248839734 719767210 280138379 608108843 368635281 618727940 203739861 507411663 37866568 572874205 492136818 621367074 248764877 522905465 169668686 485834961 343150968 376585402 266901427 603883797 334582827 524971410 314915345 450397197 159618387 462963373 62119082 642204476 440212103 994426984 789948361 992429693 510281422 806219640 399454818 928999618 316101343 944223168 808289115 886609764 130787526 684457129 625908287 755823309 660270182 875795486 494107612 881878816 482381607 726739695 560681913 718452047 381839472 387341167 234434622 757010090 2447968 601447431 242201648 769933115 146516998 369888157 364394078 604019913 576820060 992026685 602274771 622409324 58829176 949504752 489424896 678215675 279421552 849657946 567541980 893862235 16997440 250417358 142475292 592087174 321126458 367717875 320844389 350533584 323954693 767186497 570401874 735604536 164399593 208596458 185522074 699594869 579685251 849450100 759180479 869739765 18199229 536220167 339391773 870016930 724076908 918384679 521096692 564587854 142969824 344097338 163162031 649578911 488092639 881718455 29917427 300314561 195055180 503668808 496487092 597456431 108051466 329238878 157575838 317770776 32034478 664257142 24699171 93215461 37742910 356102105 163814965 430740279 205810687 905295534 864646024 865866032 190292262 908650676 805222718 872469329 567779441 951821809 119058317 300188952 183050479 316593739 234896918 367775382 178436342 209711079 13452312 607158446 187251836 323166802 127369021 843183178 394244612 990708180 68340224 147974245 32507364 385930156 246037529 575387284 357196270 985250834 141296042 176446862 27979326 484434652 13816855 252973312 79693986 234469159 232273852 261663797 198652538 596534271 113022213 230465298 44373091 719373615 92409345 824202665 15027652 514442894 175377741 841754390 625473711 768059952 310879546 995803923 200905158 301230315 26794666 516013950 144334044 885013342 321595537 846695826 329723493 450155773 406680006 598682149 231711484 618382208 88624344 460021543 15510544 265911841 116302183 833564356 163665035 297911241 215185004 540320048 500690879 903566289 332971200 921342949 1018392 389951444 346557615 514599008 510454353 970738266 832949244 850469183 312426097 675618390 564468638 870931360 522454360 707267544 309037609 503167581 60855644 771208156 691326371 962681375 269545073 552110118 292354405 425043315 247050223 506371426 337792610 999438964 88453163 339224972 164323037 990867895 796195290 892786485 501000553 801114304 667507552 798081735 238932642 724862200 46360671 617294627 134052642 689450145 84027774 759956030 35232683 383353536 304587883 532537128 280338440 284341049 60927653 299795669 28907884 101361754 23272949 282612887 177871269 532685671 263259553 762269228 136566760 492575948 283715253 978568108 64552552 972235168 119334401 583588653 240388096 381764029 110852362 946062783 900210718 989440316 181729650 818744966 427104815 968752182 206446352 795410653 690231545 840513590 242517625 887136623 658368787 992051141 504019674 957273284 118724247 790843636 539604987 734774324 516533636 695194621 419637095 641706603 81979799 488971943 4957095 291492681 136447506 529795290 279229538 403607014 285888083 479040753 199895519 490602828 236882867 523746281 412535574 468813010 464287057 496004370 487815468 601197763 413188761 776831656 348134583 548945157 434208548 984282696 296730297 779255958 589715532 887736596 312001329 505949852 273342902 671751378 80512084 554861279 241439830 613528587 592076596 601303674 115260661 234386935 20040000 382384895 208140905 955496723 882466932 985201566 804537113 821838050 596842089 778871828 715368951 845208655 794456265 830251078 398977198 927206191 641175621 779274569 209195184 778062690 289428876 692892478 234387107 362623087 230088384 971523302 544532439 935670219 703180944 888139132 304683130 401252032 326245326 462745481 308537229 543588419 106478020 493305142 489846114 614192229 142259095 468982593 392374762 767269201 39183039 470800438 359806723 923152094 521861431 552301508 193360482 708511970 536467475 581271828 175406792 844307091 368475958 920612063 550690976 877769404 313984876 366407871 306195071 750522600 557586061 860086139 520646811 749216038 534303742 950611605 402025203 783649217 723302596 877700761 709451835 968024558 757846999 774283808 47990417 917298232 635486886 944231316 727455698 974473234 129777876 892618526 858250730 984858137 158495759 651675809 47478816 558030432 156651141 547025854 268334234 539902983 71748440 898446282 611502451 642099460 445282085 536954663 29860655 218506950 148606664 721347036 323214081 855119272 580400147 659205757 145239322 223485693 135720305 513559079 323551095 472860515 233809656 599820833 58602467 372605368 306162460 555137093 188142930 546390082 77788853 276371632 33602474 515720816 377210162 957476893 405021098 627378500 422182180 432412356 315852288 809005008 24900715 731754180 244720607 808782968 395009281 708083290 441863398 987059345 470436900 981896355 600541635 791676030 434612953 559278883 553922781 944107749 47228036 781508729 598469354 732533582 127175948 208858815 167447886 290226161 161045152 664769869 563240829 586455196 166513045 505274208 195500299 765182971 233517383 700514673 80510713 607486830 361584773 884858772 862383663 953266039 824580563 931117585 347773575 352967218 136947970 810976563 394876345 539152893 69729472 223137006 154516646 205663627 190273517 326076009 34105811 124154305 99308967 503379290 452226144 770592484 499838115 560046440 381519179 950077773 420972086 978514436 174232590 892968462 541115628 584229617 305832653 565505695 354570402 793856484 531992684 727545490 110747212 689486206 663524759 808980658 776488541 960490203 27342574 373786387 240358125 384970135 203891313 418861253 347196170 484629338 222658882 686347951 601036206 683393537 482462201 765931465 53683118 65852809 53768918 62060508 18108304 270437840 51642689 821341269 759361096 878217004 41728924 462182431 296633103 669988314 357509058 443553738 319673254 953793013 585023227 867800487 631099075 790587215 339148478 543053571 498060421 570887272 110805748 947598007 841608061 875587116 661708089 924751792 21238514 843948262 531353538 692954096 362955098 908027708 43013202 709974251 399049935 835325088 142497194 814667937 398845138 806055890 578437349 967586034 264194251 668914432 215075022 982898782 170617076 299043539 69989273 750647347 71123661 864665713 354638233 568065613 13833656 573265721 26280431 334056008 75164053 894563987 259040076 615775779 297910271 933986832 344309856 680394963 104317170 516032080 173619050 232685239 191317872 854749135 764532803 821233287 88757983 283232757 153454462 907439761 845499796 863971618 149978866 384824390 298944790 376565210 244040811 737356138 549205260 845536761 177032752 317022839 124561456 500442224 178225350 646491059 286813232 931609503 508456404 935550523 190580705 640811877 204775311 667537910 395906771 554793949 420024750 798386876 247089920 530101988 524839636 780612790 574348949 868895250 828545611 979674303 585126172 767298226 69221811 593533224 541465480 755110679 206625406 542523288 46528041 275171516 90490600 431669654 212802570 999050904 534880854 951365187 714956939 905522076 811050626 954784759 786534473 914683331 238111217 267638370 188705982 533409448 65381521 599843470 559551417 620840161 587549353 682065396 65523503 921146819 171558730 433513374 295992717 666150348 239339317 790779104 684760672 976333078 704375874 851018595 183650557 970122312 538596459 843012399 332275229 501145619 239544148 521894401 263413039 959657215 894997014 943909495 446158686 724235257 338497098 589606112 239979294 488336583 282595792 823464910 157392641 859807731 559595072 770253583 224769975 520615523 99482898 382192100 255048819 305257739 197004109 597252186 465645516 939887014 338597563 809578459 186410459 570085420 456481781 784441781 606576625 942880275 453416592 926944563 534623402 745369683 608589956 728934462 10061545 672317478 276144458 966692929 445925612 663341730 412218869 990168062 778113081 928234537 650363901 753003595 36018441 78546376 39863573 326889773 254135403 729413032 509974119 941371285 768071822 971667190 218809132 825857200 747314105 797664183 503658153 894784288 872449839 893840887 818166783 985133252 247546989 769275567 510558247 972082820 370686865 443154311 357746027 694530242 367181551 960318751 97883048 826241263 505262829 870064968 178598111 262823413 1040868 317698929 176147909 631519383 26367809 831382585 63062464 816744988 480259933 783333801 341512231 772826770 406441948 554566966 99757123 206040604 146250758 812643617 210442846 874426195 808961139 971922498 841477486 983276547 830725357 851971676 576904613 619477582 426337620 818713850 397388915 687113819 545558838 668368253 366671155 930214409 466385319 919722186 327599154 809188444 31925516 331458023 102695084 820715630 406707237 522002627 63977468 699215425 200245785 816810256 323030189 355666443 227258335 333939209 111569183 204027567 86110218 130647045 107717736 490852814 266091606 950766580 681615810 959177431 80193401 159292405 30960419 412496690 412362540 807958820 283524334 305950872 168940853 759398981 598363614 828527528 62931460 340077972 240247180 860637755 630159558 694431151 72656102 352163969 204025809 528464373 84062070 813618135 628023428 838897556 819200907 899256977 886940294 930810243 637643326 840836094 670348489 798741555 281587442 903678985 177457219 532031554 43958600 57144068 49120680 511622657 98090792 377396587 350221976 844105216 109517091 593930378 187499499 246428192 143288875 872588951 117355318 956605172 5268162 203570754 101415568 903712910 61317519 923586120 892744675 969240085 39498079 319893888 96108158 740876296 20080477 734935870 418125224 531757786 174795506 934890178 372361195 759616613 651714476 718745380 200416813 861930413 821568110 864768651 795710212 949191459 486557311 793705899 72007390 150482057 6767402 120014996 75134717 860677365 812182409 955950596 288871089 816301018 790731866 929482618 660804103 995603830 951345433 986581482 179598885 439436631 76988786 605131754 372609804 468051605 332015530 616725886 80929252 269925658 227351994 762869619 722500052 983741241 863052285 867712163 439588530 595810176 592606111 974929299 119704769 267462999 61622096 968513828 739248084 962117353 262163534 726194376 85163846 696678761 530708560 540062059 110220143 411088556 14024161 527455909 291776770 918888690 187934963 682925846 298834324 698808208 651879383 679635219 670739157 888200655 479719595 678921868 511233887 865026850 349595308 843480334 749050920 773899509 35350567 119229745 101058823 750910532 704785745 778506773 231701253 796346482 504794371 526598500 208220780 577757894 131816227 648739108 2715550 387028815 111066868 301478266 45151974 980504807 513385239 822398280 819583645 843734698 319852686 844896741 562126046 876806840 128813770 174523984 151092834 684112378 94526738 306308433 107978899 656772554 570691981 812576120 742761403 916868593 51130867 218306649 70128299 890391903 247070351 655819223 473252764 626734204 132623532 676491764 522888374 811933929 589695777 987249672 516582501 913501648 84117806 350813412 201491973 371838793 283927058 388014230 256826349 961494261 44199706 552164938 533586134 560096800 424878954 647655809 407708228 605085351 321175903 689274039 127543339 498580077 81200966 150285721 107040175 466716414 73108542 387352203 355719274 759448969 438964744 991307110 824987496 913521137 546562710 629493782 532940265 772792296 547871919 809546072 40296385 584732051 486253308 959002759 310244033 589308654 364923363 595999850 121713391 788765958 584259428 806239355 702113915 976148594 930827251 934281821 521724747 733963943 136985553 957891114 70801595 977750762 250482072 906405656 391824619 684351659 70242593 228627637 134755227 843718574 251601855 695874693 634727719 923926289 235753403 918738863 722412967 848598458 46951686 959239252 756377485 814107958 361423109 499143186 210287160 400246298 274063520 986567714 349200710 665735442 6471002 218234299 145197115 643524487 192278994 239020554 129971523 531688505 102820303 815369487 570221057 667470989 468052232 635424086 69687372 349214878 288627842 548926456 244793772 496591177 179900927 838647045 831754458 999169146 502118667 809744895 11263744 680349675 274860550 311486895 104244780 331418357 160771395 538417576 389951977 919774188 26658163 233805888 200002069 965145584 644384961 902076312 133423212 311583396 179591664 717752373 545457178 876399129 382992166 620629986 598355223 952154702 636693928 737570293 724202252 748512709 390656765 584269136 267363986 344443536 284016612 732168121 175583722 451346198 59778068 918743315 796731684 875224359 45273874 692814007 572028841 636952741 628777823 635755684 267309305 855479759 432484325 560424627 306230532 687868153 24546467 84592651 71971460 593381533 449258931 571124013 186949474 965318973 412148723 717907141 122130390 990309669 258704949 837636148 599794310 786902092 225062771 440086525 236199910 620726576 142265627 979329330 90083682 281266256 140372243 705942284 162227744 492843085 216057536 373443459 230010621 803841967 37653568 559923005 243494416 542864622 23719894 964645774 23544084 622136698 386351957 933175821 490948323 888056982 303671658 358158003 195681284 476474622 213329694 954681669 429745585 751713372 328323685 910683284 132744938 178984408 37089030 318918295 298923996 644574476 184905188 223471993 110324417 342220022 151548161 304436277 286818544 753385128 475522779 824600976 116410463 571240038 117046573 483385494 106239000 184344194 35022318 773335276 26749757 813622812 617774754 628743292 584408106 656869626 650472031 976823566 81875490 127690133 42098510 444525598 272372521 638701896 55030351 752540562 412897070 987667472 197144385 373348208 193393153 447349763 31185758 933188494 704399101 969929407 204959215 676873801 567519439 955275600 875700188 878443021 126596281 945417347 737197480 789790851 36755615 746454265 399926709 910577384 252508009 779168942 646674587 746185930 54786543 776411804 293549850 581843105 402334354 739285074 677654790 981381197 614903030 853547536 44866919 342566426 179869336 729277544 53635463 623920106 123795418 296227588 32071539 607699403 390954654 916427797 450660488 474995552 283024531 699588404 63122931 323167742 287058441 549354474 249137875 593945989 176008210 301511578 71084601 89660106 11223071 115158440 71405428 279610728 205330927 904978826 302340947 996866568 216332264 899801232 423054164 850949257 216061976 949017419 766572936 858695721 61588400 185484113 34624754 651191864 477948016 647473350 513552037 893058608 483888163 502925845 30323008 717339193 646812589 800991466 712843298 919061100 777943946 790774603 767017585 978814637 596887299 990643946 947450117 982768884 666917813 896180544 734674389 742686374 741348136 777806203 65118903 839462973 401207585 757792277 401297944 890959689 340935616 385649256 50555417 805312722 340236864 765852017 596974444 706943137 377021648 988702406 254669136 509649145 232864183 979270470 865694601 978905693 803779416 878187433 772427956 933510554 826449990 879222757 674705591 877591184 454421429 649747993 203680864 757762455 726948269 732999608 279118783 341554549 190320855 649259955 377924676 444789518 340159582 591469814 213168733 294388748 125970571 979560455 711280757 954054514 914831676 984137522 39286550 888213499 4990817 129615692 103490374 224977418 127163238 825836203 422450403 496026537 16458049 815246042 540610649 839463256 589384485 627208433 531493144 538336907 68232608 259832966 211902065 977325928 209009262 852313613 461743889 852974402 639120772 827575607 778086305 916001290 159366763 743492939 408984302 896418815 703416631 738447271 362101076 477212972 377100107 521904241 161623325 252146385 170415629 568250294 252139664 454090626 200755953 585024050 89795058 713091836 332708673 870505950 386737382 477573651 201129970 285429945 90236660 389493167 238633469 292255466 32796527 555291951 387014240 625711118 518759641 981533239 58465578 187312482 17134305 538925446 380207944 496687252 399896206 657543400 253935170 758974919 156749781 235682565 211656310 293848335 73792092 736514147 203873157 989875081 278832008 611981500 33799991 715116959 65155005 951180771 310153895 705974208 341937053 647847488 69576311 126957195 88826845 215999434 188146492 955905375 365590948 663977974 193410654 567940383 358505357 713629220 218670164 466049063 229740931 341992405 294484080 933020080 408920972 826777815 508906713 627213474 170244082 752834574 728677808 737581643 295791757 875496505 153678260 501297463 46595145 68023213 47864979 638512134 161708330 623073839 396914550 546839060 135996028 960196788 152902512 533195260 292689153 943599550 817761640 963370592 908816605 948486850 457988465 916161060 430292591 621850359 244059388 369128152 74185661 145433025 39393380 646835974 41564224 756212781 122313497 875966983 452992826 711089302 308532327 555790144 455740734 650884758 89664174 483188535 320264338 938086285 661628131 836826881 741873940 804684326 593235290 883240496 548335501 768658117 133588154 484098790 11002809 537616066 401247855 589449097 206801049 912223322 337988806 519811435 516391710 644803606 634857633 644212903 263660326 635435837 392138962 712763401 509634756 894277019 624180717 976340948 470061308 518676207 375623435 892780332 598599530 986760486 810217335 946745687 590657122 654367290 31899410 160674009 9069063 821103117 768099338 773385681 310281117 427455613 237396548 874941652 261558094 791590634 675738995 846802323 517043606 716463303 59934999 763452838 468905040 707758738 701406534 895203525 891588635 895530118 378854649 966285123 550224883 818639658 140774067 952703737 134728126 977568778 745901769 847845307 210053106 829134162 128909688 960315214 805897279 984793238 440684213 854476230 444232104 737466044 684130887 829532297 212824300 651620246 477649496 843962967 357727273 451769557 433629768 562087621 559121323 861770082 135219633 845787064 527860473 546322968 477841652 641987686 279656441 518489978 411210189 954717922 651873128 874556411 237658600 248093605 158823888 476286919 164249864 565714389 187784007 278239372 156960213 436457743 98577037 347837555 189405684 369744339 332391947 544871755 235172912 711047263 275477580 504831182 362059195 639748785 322409452 644659058 604015716 671382264 104136344 296025908 206101608 611840874 254297456 614820669 507140153 996828535 84694128 427303736 123167978 681147046 320836535 550873795 217539439 785146780 258141129 752742044 32559875 812610983 100423546 836456491 294902851 576435413 344668151 708401015 205729953 421966186 398769649 977640416 868407312 928162359 698873 306420547 291886174 487562755 409416659 605564506 145727537 326478118 281074392 487534899 367752463 395276341 194037071 758635564 336967687 350012605 330753561 969441755 236440373 909219764 831178348 857954326 140729024 544057095 251091209 739267764 556698398 983848340 642099860 885530344 475844356 874784818 873512319 929423282 751594334 971520958 940929882 945346003 537070802 661930817 443685009 908624537 623965892 888221646 13840263 835860389 348740423 480385956 186694299 309490065 42895417 270017432 8451824 835072568 570127278 700784796 525216544 989279391 137393693 243782415 81806293 869247575 98963995 660607630 68368373 541661952 477018706 944780259 278682945 569587408 536017160 789786401 381833502 680600377 481162588 937222706 183924997 438131682 267365198 712216078 360259937 602832995 236160156 289201162 248596460 668373015 142634814 455003375 153653668 323757753 124047014 344350385 147186931 746986000 699648296 876606258 690304337 700094501 89507294 287645859 152008310 953498838 175570464 596188223 360771855 796818826 345556691 817169201 613211587 626222773 390096866 638616353 599516948 822884750 645995912 779534367 459827936 507973213 266593151 306724562 53833624 148394653 4154894 641257838 412840286 706667282 612887972 658968866 185161021 340992774 270064072 639671193 82330652 500837260 417826176 430890302 142112334 333352291 253772398 900364162 459598136 985914743 361810873 823175165 773611673 994488447 167948800 180619057 159783800 749668523 305379789 770096332 108631327 432063832 426622549 945939750 661641152 667910493 59645435 791761223 30502223 306919503 188749964 512873836 372936932 409581920 50296775 752868755 472403106 543151931 128933233 993099902 1235193 649406547 359348802 899919625 133861672 192564377 155258140 474462222 301034835 796085256 672283364 838443163 406963526 653685678 512698409 986059978 266548598 865897328 785805368 964706109 818967429 903365846 45889622 683401489 548525066 901454101 690306381 931011740 288524666 599192891 195801687 905333403 361954238 958681519 895051863 929139103 272575846 638041520 483767549 977748617 945411799 978765480 44574355 945812920 543018702 724814385 161761423 441803646 113891657 517873074 297234273 736244821 287703977 809688848 229367983 232929429 41536953 72031487 47824796 452602998 445639551 604607080 203005129 538558139 115947994 808749483 135013356 466002772 313873502 313995982 158583024 548626462 511644292 988920595 142219768 514003876 305427565 462264672 110808840 994192401 711427610 728331997 290027719 945283837 558250501 691815665 185895921 623447497 535959598 747343643 536005275 894748923 757674639 830857419 56445048 222610417 212499957 369988863 303554550 577189517 56771708 229342275 148703119 869887466 88677349 298009525 119367761 780495022 456307664 594516696 496733321 684221932 575352703 968751633 788798398 840063901 405704657 702735890 257868432 704603716 472164372 833593683 664579026 839485475 723766789 774041939 532432537 938225662 410179780 845744305 531635425 785242407 652479728 871821215 290836939 864057584 801756890 927741409 546258564 652194746 269989308 806591048 366227382 969029071 510591727 948957784 882494245 896946204 675843047 749272906 99647396 517018522 155978153 645925229 626138875 965884873 120699867 563716493 393435484 428978474 66946110 529270345 73380449 950864254 182118183 477733025 64738786 642298596 116832375 705605924 178024264 875378898 394261464 507845233 74838055 945707182 1121758 351679844 43724875 359133582 278983989 787800482 345804754 352846259 209199528 582736126 482474791 953535019 447117667 467356217 364234900 876401388 594601319 630602886 325039437 958324706 799731632 905035021 84581835 294877360 234833917 895298826 835062878 890032885 128340935 841585565 685588002 690638593 690201189 815129663 530421035 829349487 43296176 449342610 220228267 622145585 249962999 744808518 356578641 903438740 486320663 639113458 450667873 995019293 129046291 301659646 12895387 632279483 448451478 734917865 264750541 734102680 578795040 789068555 322012990 924910029 503346518 715143639 664120913 933065352 418107974 983423151 265154610 542000698 414348886 469663974 258769160 595074176 210417923 705449131 580554829 861835457 683861891 877600676 698422129 865836844 417567852 591324051 110614873 359563621 342884722 830144269 212528106 426132847 149434709 352908544 258239674 321961647 53968613 784698987 414244870 421928160 70577694 210408449 92092775 787997942 623945159 705080466 64944071 639718312 574475190 592133737 542545445 834075426 321852435 722468349 47987545 490240015 13491553 474211461 296086229 522903880 465397947 733167686 408453135 974185829 2917144 990791480 186421380 460227851 261694976 824750883 518344707 997476550 388564405 766930273 489180738 678705616 640396213 925568778 295370970 455366064 441381418 758844784 674218960 962612740 322284096 437438614 308017517 583536596 136270258 282605649 153629050 891775397 127713704 915857262 897027021 962231974 266496764 663626684 375060036 574253688 364027100 779239188 606746936 759609147 388857129 908582543 843603762 957906045 275475693 987034657 475639175 578524998 285640653 982983926 525662651 865543621 97661806 677336892 45133783 521510037 148950409 877823871 761219089 957501103 371918651 501098214 184995379 782271956 568142174 747268437 707965846 894566776 644547897 802186514 307238703 341722086 159284074 278936656 72623691 371217530 360099248 396693255 27651880 601975213 31496633 146987341 142630108 263013707 158043885 810916849 614396788 682126012 120950790 650940307 160536078 504642802 65412665 902792906 353873503 848195743 591535662 625200918 253147229 355508618 163201512 340436812 327500346 537771103 41011747 604097304 499602050 755417958 468389882 744946230 669897835 756347008 186033292 836997548 569622045 584605570 123580607 952982181 746810618 876956278 773989528 952363873 147285796 857372242 483555009 750915438 332445872 336682557 112979720 689203057 216745944 504323967 148721863 941075731 177031530 843804830 308698081 922663211 570229427 786659663 393469973 869398859 457119184 627416272 497848776 614707491 39144680 592719235 333221527 623032128 586272052 720869873 694856114 897959230 498521913 726200317 527802679 714920689 553795703 804904888 442198220 469165092 152280698 387878329 69598626 88339961 33904187 864706717 427594843 470248491 9189510 791333732 688953851 734045930 529588589 545650728 59034868 649661898 447777007 968753269 746312392 957300651 653288592 885025053 36547416 241865580 81963225 131424367 78382875 461515348 25084825 214344314 5699338 156826209 28795887 492834156 78647062 443742058 416296721 848410503 426569621 865260405 468899387 519014508 468022972 978587162 285223272 603990510 25399129 893120515 752863826 909096265 231080442 406021133 89951562 240830234 68091574 813296939 442205624 656563212 363526839 824820047 276284252 799348142 191638414 677928896 487223893 700649939 309074236 327599701 242564264 482772417 144850611 799272204 87525320 243994267 5746108 49664750 12931650 702753628 157635589 639881402 242070592 445137798 33559891 858687587 171402220 527290117 327334515 528173600 111495707 624953314 56886668 72700323 47395398 638921931 55403026 759243426 48135404 543285656 377999451 910236765 385748583 741838090 66693540 546402618 179282026 358930201 6514086 11981559 10204856 458788303 186887146 320569200 162872653 514728765 258252122 347054266 98539454 857544843 498129252 625621436 516570435 761655449 556777283 850616240 832328971 877817108 619165188 841882689 632367517 945485545 702549363 869674110 661928158 857047372 709188942 730784308 216771073 746295441 494149412 690151464 67586413 695979055 301422433 519561605 290377680 748126914 651402208 839305783 769462290 982678259 272623195 932633072 80768358 201301678 80305982 333034110 216368491 254282841 121324516 949293433 651037557 747960133 208987678 856286394 220872911 222845854 161982180 636416532 394961398 801181671 576734122 742614937 417327001 708895973 332135257 738184742 407933828 626223697 555145666 970354200 357028501 485987898 283811501 931414243 875782489 958516598 22540823 508982705 360248403 539612753 64964416 479341865 94507785 107909961 92591866 528922331 403842200 507586956 34559663 825377800 94881199 903159862 873600161 951607336 833837792 939839904 447027745 899533917 764906583 971619363 30360506 748327843 419977681 575397428 262549268 598547204 566403253 770351510 103898120 425777692 131275284 772519092 700265381 836788681 635832136 857125199 278187351 878745261 139478996 206781126 32139979 563361194 167942752 307839653 89806810 914325311 153633933 423957608 223175620 350290043 62300653 250957133 122556519 260888281 117147697 283205580 145753874 823583907 421020901 959853001 522935458 555365854 273175743 737303908 305968343 915098280 386237792 850568522 438660758 490183463 83826808 727512709 678678808 869063194 93641095 187938762 164137104 188137462 82230689 713524793 454752447 861371721 361598163 716169421 100013125 521629890 277009227 557946395 351631078 440024094 363665015 621352791 7260289 866208979 734882981 975089589 959678386 967233585 693605670 940146620 757732519 849906702 742144802 764761910 214741749 955673442 265538521 612100475 325523670 517859503 456627657 645112041 221453944 758322811 300245570 753012033 7258911 398949043 396905909 559576373 536322484 884546694 697854416 698093443 184224950 393742870 25997839 842270367 369485728 418902330 92110241 127150489 28316320 654606092 12875861 57116831 5740418 484033510 269969125 968167355 796889072 932435816 418185194 463781895 390794923 837364226 85450865 977216631 895785456 948976314 727922181 861456870 105243900 409713086 185092269 944445416 308884380 355716271 273974514 690160337 633922510 761317264 646305612 895747443 880632975 983728195 76148803 133636121 74891899 275422352 226468658 433674059 427435218 840364444 699423941 949947469 305476023 939751654 33086721 834523257 720739840 778440834 48622233 181978396 46188778 712029999 519622538 630062313 511782887 732959180 191044160 956832453 747276268 853847850 50885359 258348255 250325697 918564619 860632859 974729291 546673090 584781234 567185485 663846319 621022863 969752120 789415590 986156444 853061987 911932024 133224130 809351545 116296613 347082325 300364606 899212144 290065705 896651960 789832777 855188840 397479967 695323357 660843636 914701345 272271439 908381013 520945400 811661673 6328194 321028870 99472902 889642894 268843077 550605721 419298287 492890430 64505276 801325096 178923892 812351214 301174792 705347160 561798587 884584318 623690219 675303230 162562149 408714913 346579720 782582332 125410788 319107106 183796072 599203556 523490238 731759662 514627670 790980188 450305814 611065650 24240084 468028261 368863334 524887299 433214100 476083583 213914292 742621511 725232968 895717163 610498507 678625131 15132657 431832576 233386315 268779273 28407330 749770263 706461226 797271640 188347890 957296734 843808744 970444219 536474554 988543085 684723094 733013258 56985023 332769704 14246741 657963091 270840277 783228801 197158929 921152590 280023051 666887303 418025352 568220071 181995039 746656742 130849401 529075312 1273861 559880395 152713988 548940036 453633738 739933485 386041906 699699359 334467655 732411099 709758169 882580471 688922710 694869252 349397874 974077569 275997451 496210810 337956555 515843834 441341592 580768064 168744581 575647484 260911694 369817907 114498728 916831996 30590560 390111177 220819052 399532600 57226638 159334418 135972216 829226654 199266927 534976209 306171972 896319112 335843845 973858139 800910790 951232474 203474321 467611709 191444568 848533044 96254938 624801689 118852327 479307748 457693130 868878281 471201036 529950730 86094694 967330601 772355523 798938607 334167351 721515058 52790990 116735456 24132357 988873090 734335341 915282656 658577921 925272497 240423517 340442799 321536671 769243695 625967878 969557824 321397418 864544214 774154374 775411472 689413469 802594115 599664320 826827587 407104289 696840181 546765529 668363518 416646863 671177009 41752664 506679624 296340123 913917248 590228065 613030920 249578264 571811620 94507713 800955602 783684588 846916806 692908217 872298208 146223173 365269525 363278741 461202959 63168233 428709798 383734614 646376027 324848007 774567834 217456710 724911201 390104206 643734763 348646080 543172335 118088625 250310676 191671545 667255145 262155796 611280600 126249072 519278758 144891795 469834291 204743928 414724349 84162573 862739317 589425376 612747284 548711993 798833701 682875932 786139859 270084940 289596626 207647642 684809248 351156029 425951126 546164 546490224 464699186 689102390 439035188 543223115 401265944 816509887 146980891 452619270 163622631 347945420 21761299 446239172 106675264 339700655 292418109 438942343 303823421 861595729 324178187 812936576 748308738 880399346 546318737 796928645 291462392 464537190 102846759 751295434 490307171 785632574 90044473 977597216 850765375 864275694 794315355 891133950 742779424 839470503 639502194 761517869 629691075 655731189 606990499 654723685 611547378 860308865 33165376 593134476 179728668 626017597 12021894 74713415 22723109 840456265 190868479 884875434 708427487 734498182 261694090 994532901 233688610 449498667 14052111 658902999 519443532 834280913 104503135 482927251 258560184 911372150 615002302 767848898 273105799 548216137 13017258 973592563 587903505 731915328 155261482 869972794 662572569 789669021 38176990 746292416 727582001 927364681 286247406 330005765 159810151 440979172 270568114 729108397 212312529 765974028 591912045 759729091 640721722 846231601 684911560 966270549 436382640 546092082 296685010 522903300 505296091 922913893 839573593 968722950 488622097 758413616 462009990 613870343 583350122 941772074 559389016 768829050 97033982 575131075 489326467 767522266 650249392 778788871 527174495 931500781 490018513 612580733 557246656 876447682 780381842 912352510 559102864 807274988 798505632 966268083 19297650 316263589 287418767 530692494 423170794 647019525 176602553 791184468 600855389 956192492 37751120 328924630 22367367 555291909 401406299 892786812 113939453 622188604 448279576 807256671 254207729 591572374 270359072 997174892 416223720 812412332 175744608 631488414 73762512 122631313 68328473 837059730 278216685 342487628 184183505 878742471 836333008 902914592 518733637 835920440 505638609 579047593 339082083 365346269 53543463 73627819 55111654 460362140 371907397 819160083 745365913 786572589 75569826 155480488 4111798 465181122 285536692 652244528 421382743 657110227 122787260 920688643 249731603 457991186 218086311 508784711 359591253 369741298 167734518 544165078 267478529 584081212 151468436 687750173 270498313 809377216 433984642 993836029 759234929 781164782 480214533 542248290 291927106 526656634 70380927 330372758 54298235 516647507 9161627 689451675 631491462 728165582 329447372 581477497 52612277 265996596 74876858 414113954 237214583 864421754 115920272 394995305 173601622 378608682 78988284 439700668 79194395 220195237 181788540 703356002 641055442 649762155 267871315 300188038 11001772 703756446 129389603 841866917 658116923 692789101 180836340 887177249 590439710 610420009 224832675 631101125 125697762 808840122 696276536 907348179 725708202 752698425 721756218 868578824 456332645 501608855 24156762 813686360 474568629 649097398 118430157 556150527 154526784 386188862 318953998 319972420 257051120 345393633 17295909 897027605 212017523 847047093 45243926 128153684 106166107 926468609 868093950 953157726 683089341 886838832 350256954 688224926 564665004 958485011 732908409 949350544 63694209 759755891 639126578 768997970 321577968 334858484 42258336 613353335 362058873 711707466 321007304 598415559 403908674 673230645 124438327 198155935 33126239 289206786 228643030 501695890 294386682 653241120 394744573 484658061 374190428 506996665 265994282 632746932 281756591 442620754 386713502 584876613 347507675 918649216 574890182 989917561 284138244 920697643 832413994 955641526 886674374 988544892 762595782 799815499 776548937 907785521 37662912 995375006 11501995 870756839 841408886 917743814 554152292 888105851 8443458 573722155 528375602 574850051 252643238 979881295 210957228 696563528 112126249 362921740 324734259 703012986 397542935 842026586 114695656 306154253 143101678 198492925 157367667 966572898 595052494 609192613 30159898 841404088 377622713 407891928 94171970 943300586 511036562 961975991 537876314 674295891 95592356 976586412 918758755 982328313 749477859 948850077 249465186 795474428 536439804 639012683 513248781 940355155 773136529 874914739 186015509 536466750 251421128 684994840 399432407 888345469 362224662 623306159 267569904 388287021 152285405 869927306 314484062 766664814 678975492 769085567 281024107 697811603 274046982 769189348 456107058 480276521 39750174 775726003 510093889 804592215 744042125 953471271 280073135 773503453 288112851 728771107 102271705 365154860 302544991 436173850 317027138 423139044 200842822 748651370 587498539 703078192 288358889 717679529 443944897 871806235 721922856 785681361 547075324 776176816 716088664 725391798 430628055 984903113 26833576 723969650 614926971 898288820 549219900 682968689 13555844 560763692 21958580 110780497 24768695 888789220 1124029 575834525 146646437 371391199 35295359 321068176 291420596 568723983 476873072 601795488 521681418 705117025 666746710 972818983 292988444 891964283 868707526 974703982 839462501 851930428 613024413 872463609 226938977 516868669 48521718 586489083 487127705 893009529 657136203 842343750 343652851 701836930 450194107 508278097 351062334 916225911 117562049 336728828 227188917 944805312 456317930 651106820 387812654 648707826 607735301 916639230 185432845 270194469 31465121 646722563 86392103 748664614 409884027 688166640 121998032 466789269 170480868 554623691 281568981 986411684 395711392 416184116 80105926 91690185 64402977 303402658 194511165 975881865 218777966 373281409 347820712 625002915 430068099 883338909 658625911 803671572 283370036 721087658 417988417 638948910 478110268 888789192 434678577 530149925 444938456 971674758 203305418 433244255 148210874 422904429 183545766 975623860 171701604 778488506 670016029 895806463 185404954 218306152 158318422 889871481 472528725 862008283 787080452 987213859 697004961 947070194 769006213 901641049 774110262 921153039 211871036 940375829 92574141 891352352 385774400 976785477 492402313 725009381 3520579 549518749 13629244 43910199 40003820 331040153 91509102 163689417 23432983 907501920 399833352 722455962 436695100 856922566 135480006 517838333 445697273 578677637 97856660 262212855 30252962 360674948 11615232 202561684 108497090 884309138 368555502 577388003 395525798 714036081 327494734 388439823 274451974 525950721 515877439 777921789 120856645 755361941 517212091 911210142 281226773 898913251 225676556 642013834 222323666 823865166 18297235 21350058 7965879 329874832 247919180 490043056 417526745 979335481 35477336 362019838 168661081 555519264 409731411 592649406 169536635 286391683 72737247 549258576 357867943 578373355 456355875 493141405 460995317 718824536 370707915 538206946 224642599 889833069 622943479 818372580 87634526 595243504 229381147 713701158 532012207 728882582 709587688 720737331 15485686 762744726 600204518 961950940 122559455 608454641 37331594 704400620 444023573 645881080 392079077 963724098 898119138 966227967 725101653 908774787 28359056 297180562 176285026 292912795 179737209 999529951 479118872 816694561 429455244 789700144 260240318 720131617 440763277 826391143 136461151 484779958 374341913 989703173 696618544 724887689 448108986 609815478 155378978 219973007 70180991 481289533 118478614 683199345 349324752 546857376 227482256 351369897 255848065 955195378 303826050 896651651 643302582 772079054 378874691 437440031 203904014 915133152 691226199 946025149 132234065 699628978 127334118 694591137 350017851 689155739 347026761 579268274 530007387 708805861 671294399 895364910 726254282 930669677 34600254 71402284 49977335 252252307 75115860 432710160 419921370 673458897 159229250 591278854 484439593 647059031 120515746 850774756 295438729 545297529 270977863 628921148 451456515 809459756 463859206 662937922 234852885 778898133 508040975 609075144 10000449 156253758 14281552 660058921 179838750 842486696 681578562 755931153 145674855 363266899 244332299 365575276 245388559 619356777 122682042 681967837 741508 431216095 156945173 426612103 194966386 626741456 25567909 455680555 205333971 701486485 357278975 676605684 271078617 852324107 581989513 650328147 264234632 292222469 162306750 593090737 451910143 712201426 168982835 435727074 4702069 954542582 517665416 950045725 729787169 849937855 754431868 842214337 248907548 542630095 102099709 791827873 607098427 684362388 643642256 879140036 317642324 392407032 326714812 780508409 121626889 934454207 411289971 653767936 60139004 518486849 199305304 606339433 500297829 615423491 600661988 624418194 433066204 533962752 506732557 978761077 700409474 954938757 582118305 821006076 376424861 525785028 115849247 438376591 421216021 896684534 562048201 848981892 183260544 332482177 7705954 130733767 27210002 590388245 504914269 733594616 731530896 987937530 40639545 956316583 646550834 845500325 817562184 990915838 616154270 694246740 393375029 949618811 261211931 934261357 614209153 717827748 697080706 917275221 369569150 607100337 526847668 935587363 775481672 877935336 595208950 918244013 486573761 991952966 129007386 701791608 126037193 943054533 207148997 981127750 134119823 594676590 101142639 591650274 361031747 394859081 37968069 695782107 291009116 656901919 319220652 822520888 612601833 779269982 116184676 462370770 119695093 179693294 47189261 189000976 131357860 687212772 179845798 237503402 49010564 457867307 54153624 734470129 37593250 327191489 74948829 821895171 387295980 735477430 453260693 793605791 633001926 909070196 710198839 974905903 305512330 339523977 108599617 352352618 195458024 452986282 5306638 176058589 36618520 644487537 289534580 593298451 77101230 809657058 105993960 220234562 86285675 828494806 268077585 697541692 495850894 841362885 203708476 894746929 377833998 853520729 31274676 799159088 294469402 431384639 21517978 937423275 919456082 999554520 774793653 842693257 86389747 910190274 365796355 477413054 240360295 993577141 773135964 950465821 739936487 938173640 198737217 985983794 951357923 975546575 335332181 877904814 590191785 893948266 411564937 953402311 655046594 970713519 897039546 909585477 204794058 532128515 292224883 513175075 232018699 699462088 360757540 482334261 387923964 743110157 66510739 593557756 424924179 536923522 86269611 841872327 348435359 719303676 361776097 977193706 414112084 705380093 604204382 884088198 872977078 942557364 175340202 982939703 548862494 754956691 302673325 743239326 200627546 979886737 38917996 843685618 61576086 579329601 134182585 218067297 216701336 416525737 360862394 636292254 346276513 931889596 210236859 279337670 53363475 408012158 165114304 925479553 881989452 931864968 648462831 865575166 425640794 763184448 415248462 503528244 110223512 299094886 191831932 642103510 351805704 383919368 381646010 388225213 316817430 331225388 97084288 535828844 356326431 725985589 325938816 409389910 263612319 327195474 155986702 994677866 611448934 746218070 400253064 769930798 668072382 832055249 82986709 354605405 176946368 357394399 85667772 516066386 142829769 181017783 3259818 258206519 69295091 425856431 10648484 703415355 364597110 627532879 418811553 791017222 625457093 952799592 429100400 882308125 266898957 566363859 438403812 446529687 311007831 442060213 27119792 273175919 179291258 901369704 557336100 627816357 5665822 399893298 271962992 350647938 257334269 610914786 125793526 538127866 513022530 816161719 137111426 582418063 212264261 697981917 116829917 481869594 219190979 991483494 298718096 506352706 108625508 953249586 652110687 732086576 122845483 451282323 320670155 484380617 133033436 629381165 553501915 984371099 590396443 849406695 489377235 832970537 711439998 860106711 761257656 965491357 272322930 319641025 42844975 415661199 94446401 727205838 516215024 528466167 168986465 550418737 432775729 742319020 453189259 461302401 287736916 440029926 361158341 693988005 133544596 866601994 58547723 894555538 606178735 811292419 345199380 425773239 184604817 261739389 90733518 741454849 683311837 999158949 18180434 529793459 439609081 703668571 309723632 790884591 261785542 291593602 124638320 731577350 493221529 970060967 345671155 512424812 148515996 241467031 67655244 346354214 145071574 441856510 407900582 637533137 324630550 973963868 864563320 901803646 686223482 901247240 555019454 577858931 44747931 612282730 71064674 393996245 335138316 575951812 11041088 759183685 460526316 602902725 165404778 791218910 260206904 995547904 491348502 511549980 385010949 931471840 430225913 479516028 224700511 765281016 746373387 762112252 195867105 517285616 125815658 424420607 126564259 772285462 68035793 406970935 211324065 799560718 7251027 565732542 392742638 972021893 496285199 765884081 159685876 182792393 139326885 636533686 320536212 429258664 391224298 828471782 233048075 714704118 293157832 842757848 59772875 795096558 371775540 477266049 389957137 893255882 377681380 489265594 8150049 902279140 191630284 815085361 619425129 998484154 663906621 931171790 5631054 106915003 10240449 807574829 642904912 872895982 634313648 638422983 209111201 269917839 220985831 716198016 168859841 677022707 381621571 942219273 131665573 294378889 192961191 471324042 19178146 412617045 81295297 559914310 93328223 807127271 158918418 324619000 169954732 481912660 406670988 587569261 256465545 595564020 219701812 425452355 84704171 389570095 104016186 798507240 522276892 802548238 67911127 291810732 97556761 829042181 16157363 814996679 373166882 531922843 378974489 720420252 364955370 877274551 188369466 300693796 3766968 262831987 73133603 727403884 89847648 561896812 317914757 648134617 341637498 448194216 169716751 259456314 242409974 447953704 234924357 956503003 27713639 458318055 213702273 896840309 664995718 914925355 454376268 929867115 802029297 945352978 842866330 944140586 568054083 893437272 809654656 926536681 806975136 831114950 680294250 784849835 745643978 798112137 625591442 846886808 440191269 690922595 468806117 899461206 766633659 807186987 446678030 600837579 497301148 560788340 408894160 627754560 52446218 86766342 60698470 837848460 520441058 725002084 4411787 440854493 344144870 711198754 66901072 624896972 154902157 626564179 466080127 653791519 331090723 631738684 594744410 664144145 596091674 843757571 818732808 877398098 713558101 876727203 183429886 919885606 49291505 747982545 268178060 662897172 74235943 783371687 53917314 425469520 78397815 749539629 538370134 961384037 938995373 951650749 412582690 547461607 35517460 89488940 33569831 658870258 610250578 879409983 577957786 976057786 920393200 956901469 393887620 710939604 642517353 660529904 17053055 404658817 298543415 340306225 102344530 265508774 34214792 563417166 113594691 191015160 156438715 721067196 114234250 862719947 653767539 909256302 659053631 896594154 748719435 941631517 252849625 869986566 14698928 312547768 166009850 627899740 454370899 794417367 272009105 392743239 174694258 648534871 213772485 727763318 368725973 385071988 247350246 575987995 504552111 797485960 667927836 762049804 241419686 814679947 776800651 934501587 545158408 805712410 561820386 981090342 387690206 983011540 134138955 328973435 323027291 668114492 658221369 797761667 110032991 243192369 240029047 549513723 442558581 446730156 189443369 551679696 275652858 886120550 439161455 638961781 472962895 610308184 166505250 464382033 229844297 984609224 702891225 878989302 193573292 531869003 60734176 481326089 139293681 364115343 148647661 165089721 92035456 169549699 131425909 320730175 156204159 581477959 256767467 263064486 127353127 603981387 24691425 578266130 1492757 926215392 765883286 795920899 73442319 656679071 602710274 891459270 502825903 874516037 275434884 850107092 315562854 615037344 159697567 678623096 366719044 781836048 292534893 790025534 108511735 330821333 268708894 543533939 396010644 817880265 127192307 659625407 156253298 987978325 172466286 820850308 443339841 566221859 458201414 755693263 502799022 932126710 287971777 544510505 38498394 260906221 83897547 147234624 39502411 473711512 321675507 443168365 299001712 789725763 91113462 612657609 321351525 997609717 622126924 804399644 91531765 765584874 653972510 772548412 285863818 445303001 309441588 692263293 322027513 639614210 113327780 298989151 52873054 814542642 283795429 960276007 619736009 776035597 156151400 844138464 266644418 883775321 809256408 999100761 715490106 992928466 591987527 769751967 371503533 786647509 228210521 903148739 435416427 913726599 405483511 672604267 622173104 940237281 937165570 993004970 317635456 346252446 321135481 461971124 307150964 523485104 426500433 915448494 50159418 779008090 272638392 542491540 8910685 36480987 30076757 516784380 170452661 527915973 265036726 887667169 601974581 912685248 609920209 685109545 93284255 891045005 887083370 939716474 902164373 905342681 424742325 684432223 96591436 883378904 131130383 557256643 93240516 241975045 123787540 962374738 627259052 957191845 347019154 862110845 185468497 636866473 108145092 399072314 121881286 952462040 522773162 620305041 423261960 865914575 105745557 615167116 99249668 147368352 44166432 354984627 335733247 797549972 457124846 737695014 342678152 756546081 336370790 539265062 271765330 511700682 40801982 181933178 77781590 353190030 61709479 726239809 60089580 408183682 320793282 823803542 537867059 567949645 563380167 632146393 301686761 857239868 275404226 483773615 289626778 962489388 135871446 508833828 447100739 602552740 381065502 936611251 327729281 487496026 236891172 426063537 135177207 615057490 204275590 309065605 67447331 208527968 188600829 918282907 142799120 725592843 556673338 980895112 106974066 565068437 82187692 690007040 468606699 894795849 274142860 499715579 144849349 402160116 276193790 645314575 81807352 473601458 27297336 564505200 192090682 644074466 434170184 535645907 260384194 767699405 238902086 311189937 135845161 961084447 855115013 855380380 23239642 344851334 187177009 640454231 474336252 689544321 350601815 899463422 627072775 992390934 508816490 789880708 296337762 634891662 284053212 799874485 384630759 519668041 76567950 551953310 145389181 945976307 546749345 706306085 539056260 612745784 96257058 706099905 236294217 487977271 248675930 364128827 130078806 189231507 101345350 262585631 214553855 824084445 625776848 754284240 701991863 757353922 673797353 862993345 11557877 239271636 143162345 434711790 200526488 293751063 189886578 290215808 185521100 519052935 470281235 599691392 57033166 136336170 55404882 940109538 289562878 594380715 286158196 809501431 455395357 847812579 544015753 880220445 405648878 729109561 6617158 455683043 197340838 593885404 474795420 915747939 423674354 650786739 546996561 926496040 354408263 993902878 982202733 991035123 460165499 680794989 389361497 749871994 457699997 588029825 450082184 708691526 262906158 944669089 872736441 961487280 291078842 830491666 790875103 929555319 606877093 772625527 728598507 960768198 507005651 537196593 52895209 379304483 149059384 551810200 310383616 587423557 428606818 948704897 109208352 693395173 132583262 505506020 361078493 940371009 888787011 941972992 560289743 938101574 833399345 993295785 219964104 610318862 406069029 632694496 28385378 733025616 645823569 817472476 637009609 681231874 467189575 772809348 139063615 786504304 439961564 553521846 33294515 300340260 98158855 429746023 360246723 675735230 127959695 580610164 67484911 637828243 615992725 810419110 601642965 911264041 143226605 328981775 27810797 148041383 30874789 260688627 126209040 345744148 17055247 930334630 43157181 263956456 209565142 863937756 361379382 508165092 390983103 510538876 373311019 527306833 330484861 403449198 267357623 784580673 159334338 546869104 492290577 939316541 766175107 808670530 582195011 771265667 407616503 411868150 342831613 996370656 348373210 641807670 433959828 505294938 143019786 195430866 26031316 543787867 354771609 799686519 509945376 653974645 642625542 926141222 841879911 882423998 757071283 915050805 157117418 689522661 419918516 737564024 101828403 328240759 318687709 636213601 451679862 464610939 19987551 403363843 279306451 714766913 101934346 480703280 433224291 488106283 240509646 797954264 451843413 982661824 942646403 979656271 251327124 439955907 250508070 765700869 263479492 418223207 408834249 913002746 602233088 932382435 826128258 852967473 112648239 726671779 364337623 432579763 122818759 962704803 265577378 499244094 480035059 857563101 747629969 851330162 256722670 278277080 243984648 728831887 230944756 640538741 517922128 988157275 587866389 790088437 416793671 919473215 862163293 922792970 121146227 249564325 197893795 502415099 163470613 188500514 78612890 142874617 52982520 979937777 578594136 783377906 420496425 662952244 598082701 696647626 63692277 685889507 472908608 806167530 128269623 969126833 242099509 924208246 506312866 969908324 555487959 734587151 147695906 705386451 538454665 641093008 551348942 939196956 441161143 773151358 603732673 622799517 83306213 637591343 464948858 980209537 525473487 858236530 114795078 339064212 140221260 844224923 172222918 526807884 319854732 778530313 207653319 449468135 252104771 488312466 204651322 940430534 5103828 494518020 475437869 609349039 228973659 275828563 74209611 155121733 102370297 936838342 216608656 398751592 105628732 149545832 111008214 897271768 667731564 999485544 53477526 756696691 749802783 834742034 528496336 839579656 254928745 318184202 269967801 561765165 441355861 464666285 296122808 399467507 67997431 149772426 23217493 187313777 93766925 545704879 27540810 810097095 347149673 817218324 96250861 302157995 38663112 90404032 7427028 762014336 44020754 296211538 85247762 868960542 194373692 521803641 14025737 405030577 62282922 231621160 56920685 203556028 91472270 939701218 247632124 786971576 743444744 951612190 271384797 392927711 150266485 864150490 841091564 929197750 218711393 461887102 96978995 568168804 546574646 984350784 134474288 834791467 65090632 772996359 478840257 939724966 227750162 383014385 60760973 185679383 37628239 483053762 460639370 878101720 326978311 934799764 199914803 631680957 347486789 697193629 474922735 604974672 262815768 771057661 727355165 824187022 679600936 819443384 334844742 932152606 489654102 830052637 90587556 739597158 142923100 460646946 282388874 825777964 664893465 944286460 582988580 721772379 645274648 888540775 469364678 657410095 497949759 828103957 312376969 973728793 127743465 478013325 267241267 705300132 209047157 718177921 380922971 495635926 327537814 702353705 500991326 693018753 647874371 716493934 273224971 385450762 73300861 725492956 432042482 895859143 708039429 875892502 678991664 916486163 555359829 682198570 504983189 858771199 390383701 750651223 698471060 939853687 215567685 899892880 505730638 597275016 156748717 549188777 410832083 422757671 415565094 897257463 142425867 959962045 291096792 600959955 547752544 695528271 163580055 755544201 666955927 703614078 170388253 714617930 647000598 922333318 302381584 729943638 586954813 865157776 344367805 570517115 528263349 665913007 48712153 652401472 361248221 449782259 326964459 991349803 844996172 969904001 535703537 936328681 83307645 333210250 38744630 95618103 23418544 37696601 4310821 141119020 108126854 820445846 92859428 369213365 88481669 111671048 423514 354566749 55700304 345695959 168006112 880947396 263340388 390168256 98341919 231893742 113286454 244378884 145920351 689708510 669213204 715078308 72135881 798759279 10359037 831753865 416184617 735303975 650196436 724488878 298788748 719394705 79069282 263885414 137319735 321774592 134594299 527613904 69701377 629024944 90333380 524857846 455396659 875309575 64854469 667901146 515110400 840756147 448208884 974133865 955412473 966819646 595065458 729995328 720555330 845248966 709847628 886687907 47346028 155195863 4637714 402729677 54600350 819356985 128896975 313935255 23470512 41147216 22227618 209303425 37965748 46431122 13753701 702629001 665886709 832754904 280397618 378891187 96564998 190785690 163044766 531298507 219635788 864658271 591738456 686386536 511560283 857426712 457694412 533602330 317987666 783991035 380851043 907982927 765768467 961139936 444008677 847084676 141251948 834032004 134839981 648909783 619605936 706670956 378930220 535194505 397567586 583290569 579938437 696551046 211422389 745289123 449935767 834378021 113182016 493060934 364780844 985719922 557849751 778747188 165347631 558270875 47230824 156599473 2975974 268030874 92175136 614373723 251321909 442505087 85743152 608681211 193121976 490983390 234252407 255284386 14164555 928548815 542435779 556029028 409579357 660978221 39186064 129442171 91477365 332970537 93147654 440368441 151046773 630421370 445333156 817521603 606101674 711876381 145207563 532704001 269721609 935759595 695415586 751610545 485868270 668853215 422364670 828229440 359625397 408970173 351141251 660581423 557922619 987103291 505448691 911903063 600204725 992630917 944579068 987562425 470990438 770766056 222220431 382903019 362129951 533067371 39477035 511680407 165855974 631271123 31512102 81234549 1114258 637867555 347736490 785772645 575976633 670358550 100104452 374982254 21216087 937208680 83067795 770493530 199256050 724674549 620882145 767451415 4931549 507815709 65945636 480747372 182125589 932014007 211719395 497214314 152117891 689253420 536293952 891218206 853062402 987659629 278435701 481775125 345853734 740310448 545917641 878231516 9943952 491045572 8506534 628336338 310171116 463310082 62119167 829417401 570652906 956980077 640417107 718181620 233324256 879140300 94290466 764275749 376720568 600612725 425305756 489858116 100276114 184654721 52333393 615515784 556674331 918715538 182457477 439877548 273249417 904542123 319119037 846727411 740730546 877435669 90810868 821073555 55041757 756160911 271720856 815941869 302157371 828317248 745819432 917820060 437370540 631662689 265082698 378390113 300676483 690126112 435098485 756225770 270178612 636043352 149306561 707282723 494693535 530708289 522715272 943665401 873439364 916912713 100516201 551376225 146529040 378855894 85813412 385757484 324498532 360614409 107966447 842685337 770271935 791288439 91152022 315032879 22551534 958629140 926511803 983976451 746513346 937623034 757525780 759185085 384386037 736549398 542372490 878102807 686887060 834285258 709237553 893524331 278292585 715081493 166282414 578479674 71799270 302000556 283413693 987213693 121350131 401027559 194513532 983805304 685783355 876898110 696296590 812345072 462902695 564350523 371652518 395660058 118675655 628848233 627531444 735445192 148557115 657853311 217731005 243994225 72970039 75728225 3402431 484761748 196318348 448259774 49680678 917601231 466109481 538429988 186752194 334982115 212376502 833108289 803781681 894778096 364912382 822219329 22609917 901357198 623928266 744295226 151203477 228871454 53607577 576161425 245179411 378103101 50690300 489674758 253574152 334159732 189883366 851324016 496796005 607629687 185084001 827503013 57188100 338250904 136347635 798192142 586186519 831478972 359682857 811144771 214202214 756275991 317001399 464189956 174072669 919152443 878051153 892186738 216238087 974260465 346457661 999651693 156676206 408316555 26138250 708300277 8229700 582478654 471054323 533099831 337220883 941100546 186869853 666470425 379813179 886391476 320807409 825725572 704424988 986658605 291917292 900260725 62244852 719721653 624970088 943617790 16382458 498037978 79931374 618484874 227904404 864733416 310916709 380144237 266734925 435625584 1045883 622097721 456455817 816260754 677773519 894340859 358505578 759611940 348295346 352247187 158571013 388532520 371197114 830924480 170614125 239637292 96444 169087384 41804725 810368410 231111843 984068695 422428227 536422128 113546315 463720398 205256622 917848898 385236304 390613451 19902947 199477406 196288046 360916222 221833366 477392541 395374781 629274620 255485419 371565895 359864864 785528767 201340886 704380496 325895698 438552400 37465543 658097930 26817453 34339207 25716241 169831110 143686896 273231359 183924880 599142979 248920722 653340607 204193250 545665774 522542406 939819275 698746357 828428854 494808548 804194106 624706140 943211492 58550538 452368639 106772654 420421156 232391691 774360980 722139791 758737332 510275562 823891163 814865463 819616797 450120135 939720463 838418589 844013788 365131180 966432274 472164140 520100755 6497975 317723464 149879319 939854847 712706565 731924944 452179310 873204226 400009543 511054842 445681019 826085559 52403072 815393993 321763095 598858263 426708784 652686704 339026480 630942430 72137636 469927196 287517587 995214449 265683470 956991124 42736486 773134889 637364318 922388522 745538514 754351285 73062448 786594761 502109163 664343278 631769887 880587136 130111147 716472307 144146674 605875764 313862439 976315946 925966210 950911738 451742830 744546749 369205309 986911036 436386818 638871485 205244422 278692972 144299356 909586113 365234696 487437128 120686269 616803211 64414381 142061658 108650842 307472789 84740102 528095570 169805366 379890349 261756543 754531995 615129801 934148171 399922726 567028031 23497673 823985589 760933083 833135758 232594884 505985940 484575519 618553924 549416447 686187658 660525846 784269062 168431678 829971954 80522790 913620128 669361911 683658892 498414877 673090953 218171025 672897105 202389237 782494917 517948547 771492591 438463991 662938562 631057933 819399604 426144953 435680596 103253630 665450686 230738425 303560345 231894718 941504329 539934219 649007676 508034194 753254631 415876417 960854011 514172001 751567488 647079260 671876723 512037081 709803941 331067547 450656362 293896007 767178840 174157352 333903294 249094896 638189885 245383800 529504558 426983387 503130275 182319541 251739251 160097383 934271618 924135060 983732577 544587291 645774059 182857276 788623176 424624012 835123032 23896706 340945949 6585416 969624430 732362663 797798439 556603014 832037408 403431347 816344525 697828118 986256939 743477354 808783896 564785010 954760152 171723334 396903818 44865005 917695485 385266567 661151058 93468009 852065345 759902609 897745966 473067329 654931564 122207372 469587921 13848767 946841284 5403342 975555609 190398733 322653121 177965342 911061530 868876440 941761515 804594933 923949467 517693875 720339000 615258876 699918452 288406469 409003098 77622097 523702033 508274787 892386607 891050707 968166957 64621114 533184788 462979481 854674711 703405154 705736985 599159417 639283067 343556238 396949656 277616568 669901883 174479738 240613749 196252398 354985718 250016021 307081379 72275253 331945736 236360071 928220669 117670677 645313926 474870084 838230750 678326037 916260659 194990650 633936830 107361622 797901038 708285200 755524323 691676730 975804356 1894354 952303894 810272441 914554680 423418110 993612629 924983596 942534994 554545216 605263760 14979574 863653835 550000253 627489742 99123251 282692010 263620938 666685614 247867775 783797966 655054642 923715020 563298624 975863390 946424834 952674624 746933747 955246146 719931192 928144584 609267971 691276332 269075979 500959108 347584386 544527996 508597283 604746889 286605102 334626263 234907476 829419604 754853755 775814697 604763213 850150592 821681180 958800904 14287261 922846246 358778614 502055462 419846876 965388492 213398773 369890690 352244652 614153833 362956982 639815117 374346189 878671386 575648909 686775644 321074193 338497977 207710256 780952655 687790169 969751438 863106184 877290800 624644302 644725769 583844623 947877398 424203706 811120482 14051482 708717218 523104972 828662127 582153618 782862408 194681953 265562307 175878116 370869348 21028869 696581040 349022177 687308092 402787829 783858855 764808559 850208570 821744650 874934598 872603654 996395498 153926145 720474618 653211957 673113940 288817593 670549764 474125031 630643872 278381636 414080944 40702443 164114798 152941369 929971903 416810551 556975197 386473287 474985071 219218965 686111944 168810827 637983324 63612840 339539785 19903959 657236213 77732072 79937969 75826883 994350197 69177836 383170166 233614407 392712659 351597314 447435043 424768077 725171965 497749103 697738602 460533767 726457451 363085018 722432029 543990327 975568550 665145080 862167175 503758907 869900777 34765278 59649910 17385099 721582166 716449294 906817723 396148864 948711938 459778659 796939299 256507226 722642959 449051616 757196353 618582429 808765834 788089588 912823956 834585156 846847785 742678914 761310933 750977150 995087444 654650661 971774404 740881149 830405677 380828184 393434322 327387332 789185321 346779275 945782649 588786127 880329646 446156307 882697857 155885641 703127797 17096925 278127783 127023792 856586517 397986842 927175793 160947391 321732317 37464353 642705351 294631752 791513791 332839756 345277995 9280186 136200028 61929566 365773599 355217840 955266229 32447757 624349471 358100869 948026759 781754861 800777701 33720974 840151464 771943363 952180320 505829720 909021397 348404472 371092360 365538499 371903637 168065549 575302975 337731955 943484783 484648062 909878935 205588746 250734409 155312115 690137148 31353360 424668732 91312687 598393566 167118476 623644801 503597892 668212021 580299017 978703729 224898932 974829296 432892016 935455802 79567810 717658992 555414668 841512747 644288796 865424733 362685180 431108285 362681433 799063304 709051752 781709766 108495155 967743065 64623823 724316161 149052536 489557494 92578333 612926581 385482413 546216059 450390458 908432221 289146338 294675654 243491649 620230259 78016553 319574112 229546798 565033152 441871674 520766475 150116719 568299607 238151993 404099676 54414409 223761693 147138624 268386621 192461024 491252373 99619363 285330714 167523055 432138637 148332083 753214616 357628403 697506156 278003745 889196708 546880680 984930135 440300625 836018804 234404542 243549474 26652133 284355731 80197258 368060129 84893060 708585470 622193396 833526709 139222898 729530851 675370628 828105231 55671841 956581084 783950316 792410004 307060082 708800889 593612926 790917470 4963602 842810986 256963907 432529111 90133633 889299666 132439377 445061919 305617046 628778279 348869724 807726814 281911722 848721471 820443422 961399402 284430108 562441470 286620465 595685429 590892461 975707805 259457379 303198108 131965505 870850316 337658612 924963438 824142483 969217116 885660888 938731179 563415406 661681472 473887203 844089539 32329038 694452699 484221763 848417033 745532961 891865592 339594629 633424164 202461622 425651610 94440979 668871264 434747992 627632429 471491510 753027261 749147063 858214547 58927331 95126356 26272847 620765514 240352181 688589381 429503440 497616700 380162088 523758924 125373644 721633157 323965844 603831452 421650628 551984015 142518674 570649439 317712870 474179560 472142727 862826354 226861741 311033572 144170778 347874410 61410268 482296478 269495196 416735486 114750180 610763581 415194094 490172033 244664194 591274287 455265113 486600546 300565866 550644634 252946305 903598583 843349228 880076724 365210982 917464602 402925265 859141917 185544373 676835272 667072525 956788692 830573376 868009726 111568288 404605146 54728233 340817735 315519039 636045681 396260148 853592224 607764196 750870777 221447253 973624865 956933685 984144221 79213457 812299757 577407474 614209531 48863239 442238136 397474153 712911220 223087422 301027288 29306840 102573669 87848848 699859595 334427061 886334574 301809086 328127519 115502741 625050867 455333629 550202487 435492555 637095336 235845343 691878514 564023244 564199745 388315126 942136024 765446459 857232476 701725266 879879063 76987160 973554518 590915663 635000513 494699486 618993990 457369858 932162134 499973096 700015958 381934248 579307137 3692446 757244561 383490382 927652728 188942154 489016466 438146787 598727043 162183157 695329509 360172649 525701949 104470099 401553804 35625744 325590176 124919697 312092331 243417778 983771508 469410569 666427557 222526375 796092230 83889528 767499601 321781860 367641356 103978134 915890137 486222714 756501372 387688728 681551553 551945437 802483432 238006722 828510318 394509808 985237769 144183774 371063663 214623470 325089267 79575363 458816747 327485550 699574499 617807210 980530228 599454190 980872754 526030179 759014626 264456707 537598424 156199600 332356702 35449059 896146158 566679964 589406641 15831146 268625455 53567635 410668713 274601043 280545685 263689811 335902662 246519526 454155609 219125945 682154907 644637512 801354037 161421515 786682754 3080706 875291562 567009782 655877715 564694899 811689057 591239261 777995283 159418773 220251297 170378046 985048846 656077226 994800853 910902329 958094797 278245641 597832214 421804879 556733116 549846999 794625959 3410963 869246952 516772686 717676174 254129817 693794205 660026947 767564381 518132693 993625191 135145284 364112488 46556792 421064289 128538175 832058762 673552439 905479148 208916514 935412293 301658397 356041893 219370107 242007155 45132059 57325399 18996411 499829839 335823046 717017972 253540639 702045770 475568841 842742631 418818621 665081066 243807299 962651050 40765780 161880755 160869425 479751626 394887362 456408778 367585502 413832129 158190686 905376302 316520253 379623073 95652987 381581536 20726815 364210981 339176140 621490459 58046763 642800379 275467986 650748070 34434219 783909121 582809246 770095379 490689316 893409396 272596167 563409525 119382071 499061820 217075947 380512416 108688267 342543599 341925168 799686448 313162753 407409677 103101931 992230317 730536403 932059245 449404588 776024773 718164199 932804230 26399499 789708711 459667875 538625515 139266237 546611206 540465788 575294921 163360729 366046880 220117207 854838971 243361480 863996886 360427108 439777312 332147024 499645163 188635403 211708047 159126482 480324130 131348817 830251999 116400438 885359199 441425400 603594669 528799740 615737265 294775145 350088303 134158216 665051926 124736251 208345632 150626589 941737294 45105000 336429514 28195191 166176143 92511366 272248974 77664806 988869271 948376662 967551949 652323721 914376343 439988791 944347077 835143556 912973319 123001349 540876382 118588501 889750440 221371886 366659620 154393110 457092434 98632838 381052255 363165578 545588694 130324124 937262489 541201964 670466189 602630765 795278650 267420902 495928458 305409910 424863181 241598261 287042086 76885328 877781234 215997968 863024247 790130791 869512547 831610602 950927169 341238521 770821920 443159171 881738862 608597334 778963848 568334764 886498471 108361634 449489907 38334829 519014566 516536386 759588932 660730151 782242380 262694449 794050486 309327705 922276896 487574437 946809314 530942874 667170092 453993661 937676374 312520107 885206858 437173207 669572187 91910013 865606914 326934057 520674785 58280853 804829146 738588285 888650134 52196510 879598281 758237588 836870830 527943193 595994809 574061716 583089563 448921253 512592997 148407538 869615993 368383575 883990105 258235449 454058669 116579452 880794137 158434502 856721681 42141959 471222615 141710559 437756985 236371994 616851291 519265905 914227933 304860761 575660968 242244093 328557971 75619055 86396175 48612012 385228640 28981097 250023721 231189681 947550590 886456360 944489874 494622123 542045871 378987914 998983531 883109125 891126348 272805387 370312479 72347329 252754272 165484826 329908060 271248110 915325189 529969910 939435119 390279026 825476571 398853557 678694434 403955055 516091781 463478816 735147758 664348211 777650806 743881146 919389895 21455857 915816495 841133708 916219743 20655241 69498108 37345489 533275376 291285988 851854422 788771666 840217136 310779602 732484436 716158552 975041619 476471784 900808275 603242473 934773363 69999962 371505402 229575892 790163955 86713890 866861138 477303654 910182666 571815625 996126816 162364630 752154210 528904929 730331549 686008142 914471650 356306750 710778027 248951117 815037441 310247966 696864530 382960626 853415460 412122855 564887283 549816402 832070504 653043175 654730194 172643110 632938902 351544885 723296016 631102587 861722359 188094454 798382343 89391819 725716162 284175046 969915842 398763725 592313976 233122184 393165692 250509879 614137807 23995967 157485691 58268053 691756347 493903397 586936298 585408994 594830040 164900665 302488947 12335622 352391266 232870566 416897654 415530047 447961344 370668504 543813795 330456992 970812015 427747482 603445873 580772483 672363016 471782048 956508552 500865060 582702128 452719152 824706901 154592749 860597161 661755315 712370196 194214989 359526063 333329739 451107169 302087512 398485410 363768833 447055214 281365358 659177450 329073042 820489661 363727012 476687965 309260940 332858418 290962880 528248533 11322515 445288498 150987575 415692001 6215688 511646711 385815455 866534986 43544127 738078355 472144621 794930282 467568556 790343893 447825550 952600106 290944100 662648754 431450170 749799257 358881250 468298644 342394985 968502214 273457345 537436444 526679381 727337020 534225516 717948648 365949382 801309775 121703112 944169256 22887268 696236720 260746164 532214245 163492770 297168808 119860234 254934918 172214381 268721372 41965478 359944361 184370751 725498532 302966992 770012781 270364122 920343611 805751937 886525033 420747268 839860346 293548589 834989908 219391577 620729480 607398824 887923169 489913897 905052803 787255304 903658859 366993479 562667871 349156465 584691414 223803252 846281349 178133059 562692465 200815275 317445708 100752230 590242509 368666153 601372659 132535534 767061753 23890531 118847797 102634859 678833311 521038025 675489000 640222302 833484130 160459401 215503558 9841189 788440234 253591642 426949062 186592954 447447432 286625656 334070294 190870226 411862319 168461873 228434537 172230641 914707309 733672473 952090870 82733880 602335126 511931112 746140311 666356489 899003395 760197555 870532755 462587388 664018321 198958511 527388550 35814264 685688999 79194805 300354518 234919647 979545270 379101590 571094273 358595376 758996221 150791911 728230442 148329142 869657770 216915594 548690004 134578533 436131321 75569167 597273461 373793565 673266864 649016641 944002384 142597370 983829398 146248738 211550376 5940093 209472425 47537880 355482040 279123769 829254504 199024422 820303304 796544428 932220837 615101551 889630227 266507753 669211692 625237923 632907656 540493656 718309161 234505735 570235146 564938431 867440691 195629609 972437917 465827857 531584257 440445878 982815702 915750728 919822212 593484575 715350147 129532706 323186551 144922766 215569998 91368324 656034468 482851107 851054208 779000864 936350039 660686950 782230625 392351439 680691198 667174593 792631666 153324783 734195152 608721705 915604588 711431109 932718367 770246395 785159616 676904141 695449242 237143753 515215637 443636009 935298855 206724876 725808633 141707295 412943329 328422302 916624768 486597230 716422281 618076075 625353032 503791355 875351816 584277939 830258226 123273855 978331766 256045614 967897931 543237998 745500936 290522128 761839723 120389537 375577438 158616196 175691492 6345171 436053454 343441751 771664601 282259026 373978920 315392966 428554456 129148072 825555871 139395092 984360034 929292904 968065444 115576151 343734731 488235 847928841 631163801 856270119 101130685 857943454 106205864 498738783 220855629 467624827 193244488 784992975 20859180 331105734 69621647 97910120 16476630 721023869 247906357 267582370 153377919 788414258 153012282 616220437 109010429 641810131 313170621 467345457 26584875 165810948 135217114 141590868 63233003 478805033 468696898 575698977 205162931 548120347 117518193 598349519 103841546 559497188 340924252 768957695 591666559 732611781 400526658 875638629 536701090 561251917 456425420 678946953 12240258 312048421 164282937 220279099 124516780 611488930 561639155 764786224 709947976 918473535 199546045 289200869 148111605 688175812 12726868 955769352 734850510 973408537 306199294 462610120 383220574 983195322 935275597 961805315 512260011 865436097 164516064 534661422 52035747 371223522 350302068 954928058 43802829 97695623 82186947 800577249 393189607 919117476 476265412 506338068 220946955 382225573 159072979 572136025 445448114 590078329 100291022 105721604 36907459 815683913 371223565 453852883 175291119 881141279 62930864 833799067 690806888 991398637 529740897 598948758 251938092 807889121 149510617 766421052 656719396 764782673 561122955 944740450 498463248 634342973 370422008 660015631 657823302 963618653 667307570 987840096 276488358 285114916 43094320 381374481 22587952 558767678 402246760 610824632 312757246 861639811 404035676 989928585 455999237 566876262 373134945 444718249 393124501 980459815 979118562 997028509 361475699 729426672 633942050 836691335 575619004 701948953 294512613 959949348 784871335 964942743 151514159 506166012 298785988 662802487 127174629 366423343 147961178 821890555 539628916 834262062 649295692 810726148 122300336 920386010 121879699 542022840 214855617 975596238 298483340 356844867 130378370 399691907 266961572 543431543 259733394 397123199 22738049 366494694 261909538 677200066 651529218 840351121 273174608 649430698 634217182 896741548 381310635 402705322 137922340 742574836 517337646 997447610 128419670 489406895 56819856 986403564 212389663 400033570 49253332 438988233 135351077 984322908 679252010 743878098 472245613 966689284 383521486 591427044 51589530 312047170 235244375 599153294 478459955 554556838 189899325 603802151 519529175 734085217 159452445 262736326 140152257 988414295 576060147 899341856 767604661 887854534 44734292 274428596 37523314 620832908 42116745 899778069 463615983 839519059 608876228 995192737 831847415 972773376 658094417 911278268 333237744 509033342 403328614 740645622 722360617 994006143 981418529 989390157 807136091 911466419 637025046 660725485 233908745 267722803 48693011 616686284 176715230 392069446 376551370 567072447 86973464 533680561 103245877 564626102 144297291 511021612 485934703 565744298 380911701 393619397 331869181 819241029 30450828 129919691 88898876 116481645 51036726 221552998 209641128 880340289 708015994 829118312 570802979 663273077 174307135 367947121 202273467 505806483 228405244 644890882 548907165 939046172 784380250 834060052 825646391 881780479 353128344 860043463 237588614 878796349 398010019 670998999 610817631 770869380 251245504 953324036 200454480 839737290 473368449 743103149 372596042 718718414 408579140 789984629 683304508 883134999 510539036 728033215 342302107 933644786 9759022 226642997 33987587 123154046 13612611 114455440 111046571 701979863 495255734 591859970 174614755 317195822 153042493 226825523 146820927 203700510 21948570 133527883 33233699 400489292 270161587 964383989 483720945 937879060 660193966 934754392 539740833 551389094 514022480 690785659 423727784 967125835 290875515 644305762 500976164 803842514 116431658 330290198 234246665 474942063 137955263 363497843 261147891 595613132 409693794 569817941 180118286 362572424 133098828 506417529 298615604 387513016 189285324 341867855 333068444 875413168 672575688 717223949 96050907 192448875 81464705 251699337 76036770 188675661 102273798 669049439 334383112 751686985 369605030 711776262 616433059 772317614 110762311 431398031 183241410 783520535 120706168 312098401 122852757 740042732 13779314 363190918 278677132 550050841 524070775 801119809 700942602 793998342 638027547 716822843 433044520 921895155 170153155 828402009 624416608 687011447 421801000 828462781 583484572 611503758 476734357 479624239 434905305 576519108 280439614 566313874 10089278 285438643 104191874 927942834 713149398 913749085 90426971 365166390 41724510 190596667 101758362 997966282 614028775 982608418 180505690 470868884 306492299 796576291 614297599 673183444 554310966 737800210 182985480 994056255 736378921 935431076 498400210 558812672 230961717 732652937 494150428 553221470 535244156 933122524 274088695 605998135 97521580 999155336 398727678 749931012 345760001 758600789 311489199 708937417 300157835 790757936 369257849 372003969 70459891 457993987 153337653 473049025 34061138 551210023 224564726 984563740 238515649 835104389 499387949 861441334 281317326 785673507 331739805 543800178 64296001 784685049 140186138 891049355 396822452 861182153 852272836 904411344 55786405 829541958 32161925 908990071 57266682 269106203 167313631 659874360 616544685 906595927 607195072 989040219 495235606 849278790 728884544 732152383 51841540 731001339 642367367 878255816 173116295 375756433 31536447 754861282 721175548 928894312 517005130 908236973 897520607 976658826 98579615 523837450 280489270 321644873 275641488 440305554 204741755 683307849 95946178 708820607 144645614 260283709 160041834 696541155 249507746 998876616 432219956 828926149 229168016 810299677 451014172 884530720 318894838 751401160 503206036 604868789 34878919 359875780 91944374 703805853 153121284 824489411 637159315 673342067 386882499 413489446 107100983 533017345 102998203 249544665 193542763 609064257 602849409 863485407 155760521 421354847 395461264 720390313 634596966 748316379 309940282 399928228 368295470 369969942 12413655 648821971 408896216 566063805 61749406 208153294 145889490 500686536 459141042 661436889 317014973 326645003 48899110 218032415 109708173 704827501 673786612 976906922 165090206 705973242 106497927 862428930 83887263 362942180 268429723 841295370 687777467 902141146 172146237 433712762 336705829 484963558 263088450 932775059 571005354 733281532 459224547 501686260 370667263 977944119 742080900 934742966 124558830 632305192 59636952 201548160 165674018 227572231 114251293 229613930 183659601 795943390 454555282 764081536 35091211 282489711 90913487 982298000 242004252 404165261 56137151 63312356 63261079 107446198 4790880 29814417 23585283 157161066 129450976 347404526 153214838 540966124 454746069 627794985 253406657 916433733 139921421 207281989 56189398 153097404 64949038 978247415 382919064 946744727 178501776 440817046 360167684 386384921 70550063 289630352 180032339 915028402 399365021 724713642 261425636 893184888 796950914 904703694 517113200 591791587 7408589 508415046 76989127 723484817 24321105 875116722 10663666 328450173 163262124 342352886 133503808 853045220 460798420 541424382 235206347 383155428 22427079 59083080 3579297 243537948 50803084 753270776 242033898 454628975 298280872 380032261 32498420 825219605 239114680 703025045 286048455 989852649 582064013 941756789 288056067 468173665 246222884 649691418 606375545 799494257 711568407 854326604 301295482 537005020 78286893 984623002 663597690 995771422 174448591 987164045 313844945 777203388 56231373 568461666 422709613 544313319 451162121 985625165 171131683 435314358 111673721 356585191 34587547 436942285 25106246 478156289 320979551 918196775 418514354 773616493 325893644 393088849 392620392 657256712 20823084 486111439 238590180 485135766 374890609 722960189 234742192 427433489 132949482 447126879 384137206 971150227 36772908 94345425 12648572 872425491 210142248 259773951 40921296 122929119 117201401 512958241 27256341 137130207 47850827 973279051 549052621 902187424 836180060 838347704 57983255 400002728 35640680 160024918 122485915 396863740 126189257 746084057 461041004 879124420 229078935 790212672 327092542 654447012 122847785 350944838 152778523 460560534 449336563 745213904 467395825 572560064 423021757 872811425 467655749 787203395 176753435 646851905 301748337 850826474 760934846 830094726 728138746 856303397 81379026 111195059 97272259 857202260 100522124 342714560 204133518 284020155 234529490 660078639 257333052 361996212 81970212 790231988 403500581 786532075 361503886 534760288 175836091 773053089 514576487 531092351 352470098 912950735 768115214 934554455 776135560 930579608 427749357 799729183 693582459 842861451 723970440 803277021 574578820 922352235 136067889 982730065 822940673 917817500 433348034 953668859 389470362 998538620 65494285 956754575 190422005 600191637 220234870 889676347 23937044 614920521 203981761 665089196 299433622 838428381 359322031 995273627 654623875 872051557 657306917 714128658 65735142 753941428 100298611 551684099 39612986 107838703 36603638 413829489 244540290 970660039 754785904 768160221 736080735 955437283 312713827 647357232 301645215 467970877 76458392 955803603 247722168 476836765 261942524 949663140 576350631 649626257 226413986 543037572 363706175 401961650 34368818 126207174 42171108 522847580 356292212 646366101 409473835 439079703 183970737 697485572 635760869 695950356 542217445 670679954 647985888 842639344 466018425 894251495 816348106 828586364 536156158 580100589 112757145 493420459 282270907 329547800 89447102 872416440 503062308 523536232 493866496 774669589 181239268 747319642 543766597 663587421 61323315 716414197 326336503 627751207 470414671 547865084 13045842 856720774 476966140 609488888 63800151 469056620 331542110 717605582 83779067 278664017 4621616 148404185 53810399 260237497 22686362 519935830 408777139 828186304 487794104 614574358 497722250 639464724 516236632 748876509 700865565 858460948 584612475 962730576 140016269 597229839 47442125 452921050 253252494 989732343 757565345 836502607 354829564 909951426 252998177 684325782 413802771 665983796 114355140 812158436 790866807 978218162 217144990 819504282 612952678 829864047 40122182 878454739 8032326 117457399 37939508 625781263 463355113 754449036 310011477 386268308 153107048 487199334 139316472 542526671 1458159 801096389 663521626 942436189 291676751 457349913 24304588 435266701 135799361 656651110 145914966 627225253 285679909 573290939 366563837 489680250 441641773 640279938 474636294 510764836 172131506 563406417 498143568 568652630 544127618 778888320 472484316 661666516 283369651 431340745 250654910 290825240 83463577 927590814 157818415 204672465 14947180 411818325 117774692 876293789 388215024 882268402 521174691 587925493 61513051 688574517 371961657 947908893 651224408 774014126 596301229 671105981 436770889 860013029 481940375 857581550 744728011 989808288 821698744 869949295 353364342 957689069 523446967 980748329 584649016 862676633 382105482 728011065 75957978 674657935 565435527 727516415 621205498 850998043 88468618 683248758 272364208 952281543 319415613 887643680 876285623 957577469 109453394 391380689 41543731 44167769 5856880 316015667 251326340 842882397 348348783 875909047 729148747 892511241 249913170 383121541 316975729 496346275 227300338 343383394 101037563 415579619 181178530 654679183 23618454 904847281 51140941 777226446 654186327 898030457 830656226 893154445 567135872 875541104 123669373 830520734 370808595 385078642 58585053 827644986 648947312 666163205 420233276 861201839 268186807 863965151 220268227 497614256 290557873 779304904 402437612 731569793 428244936 732318460 474680993 551013391 419148086 749021657 671203996 828264348 174829628 410182093 184347891 572452480 382179080 476759931 110531959 470992259 214437528 444068726 154360968 886533172 825582983 893116496 365225606 643862963 489816328 722666202 520993323 943842605 45120259 374545519 195773252 678696240 514661034 826434917 14001021 100607235 4368696 927253019 165171154 930555282 907184480 950272359 809277161 877371207 466399580 838584485 396193614 778436380 562934452 698523186 255395424 319366288 250476196 729610083 648136756 844825261 692345897 805025274 330370508 677522243 337508594 652143749 478743277 742727343 715705713 795278117 720633245 956026887 10843697 662857052 292625063 991300168 475636192 806821318 696908628 785079868 183271462 255973593 15282196 329677858 287152126 834226103 165345018 797197052 619787402 627750018 207874609 682499224 173512392 822801068 416381720 652687489 93291392 720459296 697438480 792718738 479923533 741645392 299685858 674803725 233856791 764813449 541237437 681664661 192674373 853185933 590052136 721697110 185228322 384888671 132592141 335741787 18088639 487942277 114099097 314074133 80211111 809559497 359243909 608597268 592292080 823555683 536989136 600885673 40146284 102814699 38800254 231341220 131556019 919336327 48998227 685626595 189186391 722032803 697397090 857379842 823320330 946103350 482438899 840662500 797768265 901936351 453051454 882883690 238862184 953030250 194115860 830608665 274850172 422230485 105096752 303697861 226971377 297197596 272404257 364259784 217791758 628836224 150268617 688033513 683895238 921191336 664525490 862238458 59432048 735402720 335894149 646045688 538807067 897445945 326543987 873701147 637193841 812264689 382954704 628154623 401484284 736471448 501974707 728480354 128799547 198915348 194892552 836679129 699352026 908904566 908743666 948109143 638535051 863660854 652824476 921699358 358061463 711794337 644137215 812732272 5044652 144509759 12523570 611591461 156433601 649015289 52177572 731114287 87193561 445024781 428019263 441837903 313932022 576497188 177721964 189799591 62067936 703183233 247828646 717815475 252432877 918559534 512623432 520033923 228216196 899797900 383405206 871741339 664708087 899552662 857341853 881440773 163384938 222781647 194787206 758349595 755309077 920651931 10769880 153861789 44430580 238535751 124477334 464259351 264567007 516429218 342703663 623336073 467555676 657885267 272476862 396293989 80661628 985510183 87785887 968995039 43113623 947967519 828007021 878112839 60571712 606227611 383925950 878944881 766711119 796279270 541199213 928446507 710716653 731655800 611501261 632292748 501218206 832019718 140946770 779141994 29720922 469340223 56306531 901477905 33957921 997824767 962160894 965308208 883029075 999399371 606424368 792049814 393758027 707847558 424115006 570730443 140110921 956899320 195326978 404693624 279933931 536328302 358082092 757080960 670755327 760210950 119378861 412716363 226185348 301082829 169852104 975623554 445263785 517330196 414538919 671556187 648377388 805675850 438159715 819427301 396001161 551277455 276670529 767129354 611199623 803804621 262476565 536931369 335957824 834768621 181893549 285070375 158645913 527066396 439421061 861118982 318931489 801438450 681759800 780067289 513949523 519390470 439633020 759040642 692387051 759432057 358754846 454032149 35490664 759061079 712966032 810566068 221261509 285509952 282641877 516988210 394773784 708607939 479385852 593478978 46656393 104024896 52457865 74125970 69245928 629966553 22319403 725428347 134155572 382618433 225879999 240447539 137003205 387661285 322554629 754584702 476967945 874816568 307015232 625618994 138570383 526300947 221776445 619897615 458123080 773820613 679630769 982702818 620835790 775989401 474374008 965145245 652494584 909778866 480776184 739066076 336462955 533716212 144736286 544322045 213366716 845265613 224369948 585531845 573453394 996131416 108730745 867017217 622677076 773217978 613564923 760580760 162250017 871690981 848994248 973408027 596964829 678721439 458909041 775905883 705311900 751124553 703887331 784289108 235027897 816456308 122694823 970654629 762063140 794143593 388473121 569363691 469211392 780110623 123366711 896726337 167018584 735269175 284057402 380450965 101480020 479105506 330160237 573358496 486160678 752858196 336698488 832061751 37381009 555727390 441470113 917099436 693786428 874178888 728561407 752236768 157124380 197709497 144331952 207843725 36831640 879552919 118392449 782041444 522676612 701659126 78206850 106723392 1759657 452873771 84629896 407299622 135477827 308461566 109800971 320895445 240943931 653323335 151623326 715938120 523308389 648071133 382059047 803249865 688228178 872469390 704901002 912764475 911640592 933106583 429716260 528334334 438191478 579711147 256459126 547344450 6477547 486526816 332634801 787570394 292954707 803370181 619434109 798394059 20710283 28034765 10998074 642415362 435787358 904578084 318767045 663833747 430896646 484453299 323884962 935662883 22353267 205300919 124573487 391463719 183520045 878658427 702391605 755026207 698920828 850512274 686931792 831455963 603533010 865507782 200596204 561733600 85786980 259744580 219050631 670371900 451631438 465955513 455237511 816369424 650138427 651486731 441949322 495327361 24024715 695663744 395923811 705546679 223865749 502829062 188725626 217030988 170928156 484074201 164371776 833835785 192695102 221401455 96527862 939160365 593617614 672206237 513792518 838971256 748586543 826728819 645205953 853256227 415690244 940770286 592145194 994080413 699655286 722523634 624099078 991646256 222770230 696109258 367199742 467735311 206789222 833484252 546699494 831727625 236542953 830991516 807453349 953412578 882326379 883097733 545930630 635444107 69076205 386964815 186201882 807284060 65186166 605492698 349207479 700751982 521711603 893896374 200260135 567971613 271497930 552513574 319145471 874419117 37054120 717140540 407905968 475701090 371686609 559432313 159447435 213235564 122751319 574129037 49581526 320088481 91764825 993378177 327460059 984429825 52308663 375480072 374068871 674642281 268543182 502450467 448130530 777392565 266348984 609020329 224471989 267294886 15906770 500093583 390203369 778549734 92544318 557228293 156797547 261805058 32478326 688436090 221193226 979984119 47175404 576338004 229953603 486683388 364672856 459337686 293715043 792174837 720626298 878429829 418232211 595327753 436990813 896651320 849263852 966699019 225391790 370658891 311997529 582582492 110354528 367728266 238082426 962733901 896218974 951458843 142521605 241448705 79918619 806122461 775929204 785998128 516034455 915587572 752269548 974688816 461182928 899304222 618275625 962798042 99026763 124644246 101799111 970855455 555526061 958761298 552146547 825706899 168355164 529056393 94195141 916269493 683905060 961743237 286214902 468310723 73926819 194004065 192398104 892032912 535588765 583778603 500715017 677365965 594839718 801692028 533630968 922754419 309738577 786805549 499290116 967975304 853835235 917276593 854693442 869837081 558456998 671436220 330839324 960885202 147140241 599208270 354262463 921545409 257622212 343951950 285965146 445434466 403731729 649273330 56148061 838894260 181374206 199165665 105199392 300996273 17716330 997241346 791234519 890866236 584984344 734040014 400564137 721155785 110311291 203960584 87177914 177458843 131487257 795491229 81271804 460061389 340970034 979716886 179805892 578535852 434746658 591468907 108863921 206419444 177274794 483397018 328900912 570053502 525997359 871151999 266895566 391894123 87418102 837554042 6807312 110072001 28917693 605986186 85097651 480449647 218462012 885203994 785435215 979095731 704081986 920447876 621668563 648930078 379437077 539918955 411756729 751909483 273637828 662857962 487731119 688207373 224020716 798499195 365973933 800840352 174409153 950225327 742068484 866139965 141023902 947370708 723164585 906032452 500844654 645430523 224562824 768640460 675059558 791659897 189723231 850696309 487373693 857879407 488508545 626271985 459412231 691549933 13648483 566516425 410448207 919872440 734925806 774585932 718477300 795530224 631612945 902240904 865159761 950645511 317811915 896280403 470240903 767130721 700704885 705074465 157890946 296976419 200232641 260195089 187632330 701466197 275061498 428265833 286060301 722101673 71635715 235634199 223236425 423290182 216569945 643368186 338513102 907179996 421319461 830097578 284088950 721888169 59856288 678412155 2384756 737465184 65573514 974068949 347714865 854987014 718960523 968468451 38835072 265524013 179929340 472297714 80516368 756771407 66391760 601005463 386887652 745530502 333743523 786340943 363667776 714021297 576670450 628245774 406078028 589508157 352008768 715998839 337453457 872688021 743155713 880731924 671740096 711810245 522370673 977561762 136251563 291257709 265036859 514947457 407976188 758726744 478262102 579945110 236454684 844149554 51257696 989528858 634893142 752134617 454031005 927473641 400448409 423906272 215733852 836312252 461118966 933903633 460505452 684719503 365303215 654455768 430385232 500784631 201699934 737862688 17336155 534939340 203968376 897240172 737150739 886370771 148419749 616746779 56039324 452556638 53858840 964777166 220413066 224905529 6478249 506061157 235199889 325066825 230675159 288173451 9735858 303424249 282338355 724315264 102955443 317739973 116497222 381113741 124276563 784121732 527696789 860749200 18090225 460636145 452207493 506443006 501425552 548354114 455331866 742539199 313038109 573128502 538494114 958141401 96520794 630897432 318295329 873530483 507869274 531721743 37341842 183518518 78409640 233868080 97856769 794454878 446580723 798478839 357723127 460536623 164686453 775623480 724641648 846818658 554059844 803901968 493531595 764933482 682935524 861721116 706795741 774900195 276901774 359284984 175096830 265693744 103628668 549693301 343860924 446943592 95301203 770784072 482141121 562961247 404456108 740883378 534396940 559255718 526441059 660933982 549202977 977434501 963246510 986192192 154999833 357732062 108121087 601172005 578866803 893860161 477297449 639018890 165864516 668661196 445222701 700051332 247459639 940170333 346166739 896297758 685296168 810815589 322980691 650172306 306369203 841462832 41044565 553954707 9059692 126285134 89727731 111261527 78353050 688835767 589420178 616059564 146436213 304687931 148969300 629188693 62165017 128721670 50872317 121209409 102370639 862877107 33963269 191466590 101939924 417905572 242525199 368902723 202245215 884307262 485470949 636045957 106179252 555758234 241417461 850797331 357636315 882805440 583996882 959609344 290815962 326010137 278584211 537534083 132783850 903894960 872984617 964585188 484374746 958188405 688445578 902199023 112475425 975873122 132717846 220597285 125025013 521126938 500533381 545642031 277343175 932704114 725032363 779266611 329510906 627143467 567480797 856570626 317021179 748688796 123617877 908810035 769564036 855197679 475417558 849559266 194821726 686451873 59573363 87805388 41091238 531651311 281406154 468979403 129239538 664805645 280353807 933298130 471397657 696432887 645531585 763188081 176035493 211854057 186776125 842477851 128152028 931221760 550618241 623370628 335148485 739576477 562184506 908067620 663986471 681429950 276539986 905105921 68492082 553949763 400152798 549235878 306276533 591172967 220116373 362699069 255262591 922228880 435006090 656848219 440584205 969749055 757040893 830094924 658396284 964303290 118773370 265686216 255224530 923138304 685101179 917599080 902183471 935009594 377158493 718699664 346314007 641393388 196349715 851918644 411124318 512190911 136640997 940038264 331565457 796540014 98810282 184728371 113246770 994170519 308807135 398983498 347567146 787326335 490977809 597036621 84209787 952723479 786995919 929147271 519711375 581505140 39745912 767920844 122308957 550178149 80599113 173449987 73173139 915161029 22809355 972530893 76682044 379072762 203222740 749720019 87236779 87248894 71574796 803636622 586584317 656999240 578563924 991039148 42778934 81348182 49698491 694384227 134337453 530648550 380595257 637931711 388085643 579899489 167988967 595848893 207727589 507151708 353630675 372773056 105409323 273353175 230953687 370997517 69120784 427351429 24791644 327901943 192478250 420224804 322120816 996009610 818837050 893281183 377318518 460902711 410874850 579013543 4507496 858049656 701846192 957198957 871870933 961897993 667320090 786506100 68885640 148578278 90819119 241769062 218682533 720642298 551703255 902635256 330401817 630744315 298067471 562485952 86228237 981914658 610532614 808851665 639321425 923158143 735877110 847747929 684479927 817194186 688995193 737749750 469805182 476684662 226591863 359119732 332047231 632338770 142918286 243976209 153098239 415363336 150234861 988975852 156762110 550539957 303996886 827499056 617402605 738337155 292969810 379769456 307902724 544630047 106897899 828587754 205979751 773431217 94796699 376701212 293865225 737293282 143059696 594976540 536107129 858106085 124225809 296669197 121146811 214160661 115482063 708974437 11709613 441040119 425290416 446464538 365530725 958860448 40426160 527307521 108792330 589879079 390927924 869233151 407815016 584502207 387133850 971490804 44735262 608790137 285483178 728548386 257481601 756418602 752883451 940914007 239294992 950400017 580845722 633391465 136733812 984049566 767026620 783828946 401219568 873568190 550994906 959520649 740775925 985217718 684149540 771051364 409929 389675689 131613572 245789481 217265863 929610247 190910365 504631702 356000180 991219220 554221760 580151577 13540924 327766513 276282157 976815933 12632172 151784379 52551629 400030264 70976573 376829222 172016136 554421828 284205609 456085685 145340504 646366300 540660415 990243376 103945456 386993134 298636224 640485668 19599388 293365475 159728204 826614993 793894715 976754352 263844287 534601190 121231691 566757734 21538996 406159296 200779084 269570015 169222547 325543623 101806362 965718709 905970457 914114308 339802569 518641444 454298047 857693409 107261213 711122296 539141795 703617084 119664856 847786491 299574084 882732337 296914155 903034958 53941495 794114798 508395548 758341515 555338170 925595633 266628858 758144615 325551051 771481278 10279071 237969945 130560764 430147819 336017536 631973204 1176008 557432235 190167902 719352152 632621695 939141898 205888920 677176345 654753483 684882622 667988439 968705111 185442553 520150545 38914366 285644151 86338000 694148408 647982778 773034250 8095148 48085422 45442302 877832793 184984725 421446441 271846945 660467858 350347013 803615722 115588126 397033108 312934734 981729654 155540665 988884853 378618473 811803003 658080307 901951556 575617937 763539190 181050876 854140811 499503872 662025977 188856728 757043474 141782956 726019440 67730067 213290962 141064653 545289239 313005431 678516670 539901252 795640418 284810660 844946818 273921499 328095206 55989625 387515318 67528532 740209598 125532742 949532988 670414017 978220681 742138904 906922339 493681571 564102328 520615265 736748443 578130671 823464358 259515605 593585831 469454198 730210091 56562961 837681967 505735032 928913426 813523259 876837215 293039011 734205186 390908337 934647724 76390143 480752701 81767045 351948502 183003209 984190445 633568650 907158026 141354213 434850850 325809798 843205101 708150157 876847648 325623648 841383163 97400398 504998771 241119160 370692834 304451028 863360276 749674330 782359525 342944732 483522850 407936315 578703225 226601534 354734768 189138837 826087468 126462929 503858442 473232251 662641287 644789799 964426814 640542354 694349721 570250791 852101703 840595137 854957798 2007891 151198030 130890600 983840595 874373292 988467073 395025897 573330177 290228732 892596652 468074656 477330259 180536846 363333187 241045615 568673845 368806498 846928729 590993741 935844994 692751515 764081638 13401160 443703358 209567850 647789242 226864733 906501658 685682896 736190569 517056856 714706854 559396652 793277519 402684332 634182591 115079496 853460434 252908168 990170886 896861722 970641151 744741924 947852305 587500404 761453374 626243586 960390944 230418230 920209131 87757881 669745175 295051742 803704425 755039221 827055243 402423286 973379214 415263375 951157055 415613637 553160925 238352931 937343607 804697372 965213321 757247295 963893596 556332737 974643852 875722962 932338858 394832071 975882033 152043691 508559227 177817255 903836609 600432229 686374545 164831250 590458177 182053798 401137799 284528889 383991065 33993725 474862991 398907230 679182632 116077365 300103660 263211527 395359606 19646282 777628093 173008486 765455026 499428723 940919453 849184999 858956872 445242836 781322741 704694709 754917018 538863593 919175202 758887771 916045797 224776074 332258614 54568405 430821456 143350190 235049879 174597336 299743541 60356803 712137892 665054692 709190612 31742587 470218638 408010018 988463278 255879259 862558451 406547837 977027376 847690029 848802417 542314931 980220624 585426225 795900799 484319711 927228732 82480795 84516607 25032465 723066567 268285169 412079949 143133324 822277089 800085059 806615971 405836739 461089922 207643061 400032237 284172826 692822745 439276037 571111772 537071515 758145438 660479916 803660759 131906571 705151734 403613724 923715564 690080978 897827875 591806733 903375163 293139565 539925575 370840881 887347587 25125012 987227654 628851548 747101661 181747528 375884264 294022115 743031547 556609429 640594358 622612085 739837109 529664872 574482355 79075138 315128374 224381062 352092342 350806089 406515411 55513504 205746354 194937686 567573376 342663029 902982960 364488308 890026429 2625818 487387725 292569876 980736758 272902945 392107019 9604461 564581062 81918809 164418799 32812770 577601342 228630773 344987269 239680818 571660420 118009786 792343742 454339831 986816293 268785354 431956227 386021993 570245285 476074049 570763653 424136472 484359477 192686063 227385461 209877861 718123285 323508605 854978021 437921289 762841864 36516126 172181432 96955525 998045658 410621895 754430515 673027449 722072157 598626894 731951224 567138292 980929484 317234065 741432648 715585715 719711916 667752815 804308087 688234968 939464137 498318128 688657574 220787256 790636015 304502161 690567858 481544536 706601725 628356537 710373813 438843470 973160815 629753050 660690415 277764115 363669769 99315808 671057694 247617376 688304515 439738589 919784307 851912179 969389660 54369279 805182047 166905915 732952010 551521245 847110104 561055285 640588034 271747339 453355864 138248458 641396792 273071214 860804836 853358413 902170145 411042613 807085498 4714411 333052504 248735850 326487184 150840811 770216354 527428181 908386410 653098899 986114476 599339923 674002176 417952233 748026141 484053737 755986570 442838614 966551458 298383155 969363512 790365030 932191819 324874522 873309951 546218047 716801187 260277444 287029588 207437833 901257774 46984292 893077506 334952319 402252867 106813624 648205974 573687542 989931426 706407467 921854275 343506525 879560018 449372211 574524112 526038748 955863390 369967317 428602512 201328659 756112025 26092440 742173081 257887656 920243549 416229353 936964482 904811835 950347512 326270849 922357885 884630141 902697392 266544342 463142538 291571403 741936230 501159516 614994954 292250785 625990938 438309564 904104165 172621641 313935238 55825970 221044404 54166782 925784611 732712631 994566393 773259072 808951550 565008417 710145951 67835354 830654744 728630872 859115019 193352487 247698559 67993235 396397034 207375892 701864238 662775412 954307840 857102706 921539895 852743316 996580208 146895665 606466241 348027201 901482275 518776059 981381567 508702157 595197244 521207586 746784777 334473429 517319498 172644043 756326973 329658353 900953495 515003551 723631163 474772116 567342414 111377662 446301881 389301461 623530376 358239421 662799291 23285451 717409543 626255725 924729669 571425132 935413073 56822125 828557499 61797456 372473423 28415841 497575640 476109466 949084678 265498918 886740030 58298374 708088904 625566779 999146000 10105107 926694191 73336976 587998530 390923239 808025526 263383809 371063605 19322372 962829527 832079850 968530085 168864639 840660370 666499606 812586708 384595193 404328278 142090377 307476640 13602096 200387402 166873226 632957526 543346572 894782210 699736756 742530067 355959082 599716392 170546724 938547799 416964474 911779690 750245993 944906083 580911751 685099032 43914388 91969434 16158086 33915003 4600405 25773257 6924514 277114252 236091538 981354487 371974486 857863854 369446297 993262678 363687844 860523967 32914867 490697359 200546879 733607984 471029838 730532008 396457430 723024906 296813556 796209506 681686484 929019279 436263912 523764627 501593673 543530162 420269773 671859128 626356604 705485970 522694188 642037173 572112275 622780784 528124538 563296990 250617449 370685071 110350421 161245787 31719249 846787725 147988042 570746401 19114540 672120710 590065721 908091366 495011412 702331752 626440860 843610215 531195944 584114214 204118195 568236129 7762076 695554913 275846671 614954836 144882758 285089870 136728647 796681427 536324186 631704815 426495229 476282198 432112888 718833731 401867033 555085800 54197012 807213323 312115659 807828386 807358179 989268511 651788070 655231645 567157184 739617855 420723090 951920520 312630711 748351793 397409298 912600864 2385907 371049511 5076416 592009661 557084329 699494447 184837607 882907158 827649093 904120395 825157202 986093998 174788835 583770252 362072790 982955209 62782932 886879986 102932485 106830457 58268563 852283084 813445517 836914043 400180895 558741603 295876105 860527282 391244862 444843986 351492521 575689555 489777837 861411878 25656472 808941412 560381992 700322818 573001119 850266248 609460789 867328229 185394729 833870010 284570430 665494425 194134906 324873470 84745891 631759507 242210375 300859129 16623161 383768046 107328767 276386308 223021714 915525400 854192242 914428608 561066199 935564496 334678287 985746971 579782272 937121118 145087168 278270080 60888310 696834574 665253126 742812651 108209077 413696908 259126381 375892561 126609060 442253488 268284279 966123464 573587478 795853775 162447146 869865424 574202950 819595935 113182686 511268079 379881500 584801003 521324749 615868360 165919896 958966743 794252801 871302333 73800444 495831776 200096446 526334555 211347215 223007722 162996102 265998734 263176126 890271854 20678498 156528624 105615332 486055835 66348223 315250260 288926720 431684509 22564780 882775006 337152745 910763172 99259669 346169739 242861018 873097122 753639350 891804737 29365901 732005504 680719081 985507884 238894870 840861254 527706853 862145059 401297850 459636954 263031961 650302739 58266422 621065870 315463725 706519940 389145242 897497043 370766627 625416540 507064435 985344133 110067935 249703582 154911878 253692166 66489624 568645023 50750411 935075279 692603427 801932740 333170493 549678388 471897680 534269504 313740649 960889233 760756797 886282764 869971663 999351521 33818170 586906568 196943578 613979534 514369940 915582020 404926146 806431948 289871955 749917596 737659011 947594362 248828755 391955657 271428289 362076012 223482421 339282716 19737862 321448702 189256375 568425089 397175711 831752115 516111719 628347440 618909247 851411602 251101349 683659775 295507014 778951065 255877877 741891903 627972363 778106515 118595566 473601496 299156530 697155225 657410005 939634817 4578092 25148310 2644121 162407832 114737428 500125958 38430947 940074733 747481370 841265389 55472946 139447291 46940206 484441391 229962701 497569171 64796526 637956793 431521164 809052111 161115474 837920944 750887608 836644013 356123180 365109402 314751450 469034102 421691468 720863176 221787446 362750399 268106731 478921238 297346327 417524522 135908254 431549130 295667318 392147373 360279836 518799154 507338900 716708725 425496491 433956847 232503242 881221608 416078168 908486388 376322421 799795924 729218045 836100226 362887926 545719333 35137166 869603349 458270240 945176553 674451351 879587330 86835817 944620885 576860978 682231472 488570586 949719536 807039358 906792095 666719868 997551018 237530291 409925353 235701228 436506737 312423481 708921560 665381768 772880063 326903458 634492405 571371969 583061296 190829223 275343054 40536914 339013202 7365 118661875 45388703 906286755 34316380 324419915 171474532 221833985 200499741 702898744 37519890 63367990 35034945 906593297 437478216 901932834 781828934 906982831 650795214 795281015 681253293 712202030 178395612 860269749 688667769 756031942 661911913 711234934 55998979 972403143 219496077 360777105 237202135 541003060 215657025 851806331 167732687 188621212 170004182 204133074 105296576 824889985 183360520 907711855 316307700 476208299 439205204 937183956 876220126 953307175 853238024 904520615 504051535 673214259 634350117 753313274 470370654 500415075 194146098 792652873 556820312 868005475 329359600 975720871 404332685 453383087 368237897 568165198 265144663 653168705 298972881 940903510 846868987 974671099 302074480 514397798 291351736 739299245 161387791 644327007 304543468 342767418 77755446 410544622 44087814 553526452 250076683 694112061 277370106 954224944 29528882 862795002 595217585 624714771 375428134 437802487 328596807 354016290 168574604 899432686 140196186 730175148 555632909 930001110 587979549 981322246 667757948 993655441 762127441 847828195 537219980 843363174 422107869 431734963 395965038 676771952 182874355 888221443 382892579 403839815 358253745 708971119 703634322 833303021 506563253 899663552 215684479 642082184 339683015 888972062 340824181 511081578 28611730 483600567 26977591 110247439 95133154 920201412 440219173 742907791 171761689 447969753 162189435 831017176 163531993 328874177 267668263 958585667 257241018 260133946 194788435 682639992 324590563 584340804 359884580 482972299 55654344 396238099 39833603 89929596 67605517 929300879 374968158 810954549 163089028 728939675 567486622 879909744 419465851 583213495 65349551 513333830 12182552 863926254 330915381 405463239 26936974 554900588 109081128 225811947 74823421 693999564 604016720 618558833 356825762 965345651 757450359 920341544 482523586 796668590 636751001 927172537 126257633 815789519 201170208 207220198 77839895 400198115 185541697 885123458 770366264 886401719 672602472 996942280 269093974 722366021 539818492 974857339 517793955 944992744 615422282 739879929 135199074 975114861 507021734 514431499 411220545 532306028 405115871 633296528 308971005 562931235 355725040 659335777 136756028 353274897 197794957 299526424 34090737 390593225 382014651 553544373 539937936 645861041 142558912 213529383 202470167 470942360 405772863 949053382 832579991 977628861 603325201 670675140 512431919 963048451 67311730 303519606 96357943 547899512 372535226 811641185 762073365 883330127 144291521 392310453 85727951 167618849 94918984 230697729 202844428 942585061 875236527 876243315 708747332 733448071 90540300 229420659 47437099 603017196 534012916 544192989 138442942 161727605 134480546 706348404 647327562 745173418 542327521 870031732 61110521 544537115 510366507 946744570 821901634 953803811 911315616 962278197 314256475 827689399 597919727 837862644 366275784 834909692 184406282 923682902 886518513 922298783 594131965 982305233 800036069 966657012 963532247 976227726 313824777 808154345 239790063 458222482 321971774 947933858 292614656 856923310 493265714 561519252 87222367 670859690 332652764 907801814 747712128 957096403 574416771 877896901 219705429 816046487 478906553 997463713 569556388 877954325 798675370 870818868 808986188 895641004 317361660 350223459 155456121 521500722 320685559 702851073 545300086 671994193 268366299 462181200 23946274 974629249 147892528 537915340 305548911 340894063 20854803 520293170 161701472 597471354 286171934 779067626 649604614 932250109 886218055 915176798 91205649 280883428 253011456 392348875 351803542 576730555 405105507 764970888 66660238 855079232 710283340 939103837 898781697 954032274 75452130 100267393 96530530 779378003 544405382 565564795 453596166 581305058 219382099 867944039 500532236 870387712 231877898 588772447 51109958 727521787 372349751 559892229 181102824 271144753 222865907 512175091 83155164 852877925 824540260 954921169 664222410 885875507 758252963 893815968 103266859 196455499 65013319 244745990 228621187 377228803 276414768 578429580 438495667 519280859 91795496 111088456 20152484 620594890 573405672 574196932 61620772 542537276 290041258 307636801 92849821 944214563 438808638 507217073 442737124 885660234 185853347 546712079 317448582 489870719 304501402 465242474 360274637 944590344 769111136 878657276 634225555 896261749 715469203 915469384 620395248 837263734 226228283 747628593 296685654 855736669 130566860 952534174 414112164 761011205 731676121 942011088 906350186 953635877 407431647 634304453 241823194 820355637 670153538 763644592 503515757 551588963 515766537 918499918 567370385 984108304 602106389 783566312 626059974 679138445 230757558 502986258 208687180 909232647 373426049 587287998 171474557 179912016 19038750 222016786 167172957 379929816 179124560 864364909 495109820 566830995 151167158 943058827 260491522 502750546 260962497 600656823 20369130 113620023 28867369 34865242 16101581 789292256 273702735 799797665 431101598 534846740 141641701 886377899 102755640 720192432 155445685 851389338 62988722 426783222 196530066 694863396 12315629 511947538 450529023 802720919 88047071 203089691 85128362 970806588 952922012 998147001 165484812 912409902 10375141 759643464 92553829 264534194 872622 524648309 391540903 466475716 139657781 319127055 59018767 707228669 363138275 771860699 93075654 852304337 830561113 859348656 787238704 802670800 755472530 781761797 202538125 302323133 27509332 100291126 20887606 427764688 66777011 206275338 105468365 380277506 87025692 374429642 331650070 894276455 709191126 916660138 539941222 927857679 262274538 622085385 323047378 474899313 358939915 971745301 800690973 995920832 554848460 741266812 400875981 659726160 640937838 773296931 489456003 698123757 481550149 768522042 278253775 370985430 82139212 624976901 427225499 433288756 212113729 983083685 391725436 784504812 573337884 819092259 483351524 559403634 127931946 987794700 494102474 606381758 487293387 744819470 194179467 948162656 293156345 730750513 108923396 539487073 365880114 856719114 38583309 294145656 32381010 841516252 179454926 645327453 501256981 759465028 533600002 568585149 244245194 809257351 313043653 431105286 157305957 574038840 253631404 470081929 60871289 406064509 113037516 943027363 434067893 504499385 240541549 458870520 337279220 915329425 291837225 548542860 533349215 927566137 316987650 331679820 300081424 990304852 394777955 538904054 46253156 933966944 868757580 993896063 91085052 579659992 406483542 499554642 75924626 731576699 15550330 632305608 228670524 997400123 366164532 669631176 595042050 912978609 295655911 426854599 126590432 363677170 236128129 270439037 217837884 491982261 84052250 764100340 128503695 504098473 496501526 740202245 345009875 856039096 547024599 558972044 161840156 333131464 203837559 762029247 494342607 662182882 644567703 798451943 715549221 772226434 197085422 311015540 48618647 828844926 596602496 693367697 276286780 614514517 108298210 454291631 369684098 822516004 515976416 838836620 621559426 968606327 475080711 836792763 712669069 833201595 717546606 960858195 121797835 894601231 727793080 810945248 51456829 70322567 33398020 985486582 697516004 927936811 629286555 881117797 120947015 415007294 173793055 967427273 760543358 768604514 254263276 851048150 645169382 787242885 113631303 919133541 697976329 936354344 610716948 907959929 27381560 80206897 20708420 862635382 379650634 584811342 174061279 832363326 501669317 995277980 402276374 439481845 95909249 929479664 359118274 543409997 35600722 115907245 84118288 940992876 390978274 481631644 339236760 659923174 131770000 190167502 167118471 743400203 728686998 818032233 447897889 743504083 4185111 790153884 596801211 789400334 525748723 689219659 264945930 620424792 392998684 622852744 386331861 409198844 270434333 665670577 123538966 137014492 21316967 419863563 292528334 301954583 207205483 443685704 20180499 680531300 7912492 426283805 290408341 990982928 922516193 924382215 38612777 764275901 762469672 825569521 601806354 783754375 489284134 656814192 213497249 587713024 330090522 332014622 41671322 331474160 81311834 331059275 54263310 735569089 711976456 842507714 641498672 754576700 373121524 446992000 411364757 716097157 648368038 996752513 189638583 825800608 547940977 799204687 313303113 978471244 192620528 313806923 248415955 326833940 2503679 208105646 44476320 697070150 687058369 891237463 150104063 171437419 58453964 439224928 315735490 499802075 468892743 962765053 457577998 616805153 104912323 484699195 13608361 179325131 151531829 802185259 336050293 448872424 189368852 730175454 726013154 789552226 106216732 263345523 223095372 299984651 37369101 990503039 388203765 942294693 344298065 526768291 422066740 674356243 240289633 972912622 55942180 519631854 285598403 954017920 560944174 572181121 166113632 853063027 731038062 797544189 360227819 986550944 672903783 680209050 471929909 972235261 70865744 328767887 281913320 411650707 210652207 379860506 113193534 852761823 481759160 916202721 263958983 683091215 315027583 553815118 249924247 768158076 573762232 987943119 652731691 725431792 718377837 992707674 293000735 948325217 602896991 934853496 839009476 875280541 366944949 864137033 130538228 561561586 520400555 588059422 161758000 457388408 282645506 453674560 342654954 786202315 99076976 706587020 493731888 865012184 450472132 935206377 9334566 408887647 91463113 358438294 20306803 463431512 252765128 378034530 326431518 552540941 382147597 883388298 240341558 582760137 142744480 514916984 356903963 773706375 626605876 783005974 713924231 795116425 712774004 855588642 392975698 930169071 693273408 983418792 423488608 718443640 471498816 551411401 104682244 458931214 65513308 750826577 71282607 255644817 35614749 654858792 442873487 886565140 364065793 366411317 289554405 295004959 261332461 684184014 499260920 757474597 568017297 674546567 672318711 853716679 721788758 815366136 475926488 542709615 498137917 698408809 518467150 711065381 309375115 956752583 952222888 969304391 830187495 896134690 495890223 820678561 663305717 765194776 223413173 674532482 3048700 507819005 405048195 529285155 183941458 325763190 151350494 559512068 273570578 958203821 814129233 885457341 761948102 865490445 313943610 923184775 107015558 515682889 78299490 833001948 495540907 599213143 171982948 788744020 238783507 987756990 88137419 589139323 365572287 807780802 442914942 991185775 835008208 864467394 506952215 578947243 342848306 946779809 924112767 943183454 843552563 872439092 765034045 810110049 132340286 258983290 238585954 570532601 196445422 482469191 370195426 860534218 416343319 843277813 8761824 976924821 937126270 943009566 274690486 474418263 249863348 932649279 573036988 816361958 229091108 703120386 591407853 730742451 183121234 621014338 189452746 762234981 31265214 106506160 4346976 443366549 192432432 934307194 417268185 617370802 78918766 400081931 327117732 433844884 60520743 783393994 686271668 790307568 334473637 874799601 254276379 382400801 274460679 424424350 48928949 757487875 55204626 437037218 33381637 379994085 365369045 943221448 489439474 717858092 170483299 844793251 700352192 880969418 759080360 872849024 385892027 907455219 859734775 950794332 393254624 447502021 12303968 356363485 222036145 487128861 262680094 338310685 267204982 820012175 659727296 778876926 415097883 926162423 244005096 703380771 5004212 819101061 345122431 962059930 388530229 765082406 684173770 999152850 525588239 784545364 191329020 589387838 491309869 799850913 776945357 799546521 533606972 863417622 843021534 881695745 584432718 961179656 815625073 942628047 52819451 261063244 154118696 970398299 330389354 708042924 251740457 748432772 84539102 887840882 676069985 898848204 838823275 898614836 689778405 779170896 89532792 846232063 259586726 739243417 535863554 712296657 263192535 474246283 410325414 495642427 369412116 880861134 174502165 972918676 659307162 733969549 213099038 779579562 221446291 553600548 49266967 257036541 127533235 743556680 212135160 890478933 423896221 511177923 389732793 875435797 430105164 575287072 528609735 642083000 435981778 581391366 223444598 599303087 494366663 941388619 732583921 734735582 25380765 114188384 77261734 155242485 115360351 511405883 438778233 442639213 429140123 926668527 549186207 654573357 124859407 580484510 26791553 824016952 145803068 514179396 491504612 969795678 512304462 949772467 911762280 936775712 909560262 925055848 63037970 546532253 151050430 154260903 105171988 603834126 228614395 919037444 437489046 528819087 352451144 888811754 290830664 918443130 412665058 736771833 613237713 683757040 228886145 396686506 197961502 690062054 194136931 340424974 295597360 525606263 285826605 401972060 164553118 487993635 451231526 577786393 525664305 644373400 504361716 756833121 505756985 657008427 328782567 986592186 214840115 987497504 22208021 247158909 42981711 751823375 711731276 914585578 235100954 490383319 94403521 190181418 80284125 457846422 359381424 378923512 72853596 553322632 432890688 753824440 658743036 790595271 493474159 541021355 200824363 412671619 323542011 845729059 40116770 772343029 69170200 179359495 20866820 267157657 265287345 624217167 341499354 873925305 462201568 712498822 69325159 400237769 139120200 942103768 808499350 829072959 598292453 980763807 641689533 724165012 359978994 888868079 692301268 794789251 15239033 363475845 334206441 599307644 68886098 387777236 3468255 346542430 110335086 799574681 213721120 969166636 757698665 888684802 72368499 627436640 560837305 740828028 586476792 891488172 567486409 703848099 407307883 421837524 418206316 944097654 598973659 848533185 317311835 631751825 167083081 309947592 259247186 922162496 701849421 846663631 785761643 878775620 467469799 666319112 347741954 587392153 162710602 848732880 158614484 356910179 277845507 838229190 684001639 937120130 634315126 647187923 84997289 971384178 336388440 546029023 393818751 861002467 150754123 950269717 363926884 441486526 375958285 633267208 142621203 170957011 56950118 347126711 73439606 428658308 148379960 973519736 137269139 668673042 479750766 896707579 157233096 591014519 75549948 622037263 467913156 800735905 772419605 862777840 838450526 847340876 351274814 598348387 213853348 363970917 208418681 386783186 273840955 963364367 227890085 643353188 495284638 781344245 565627215 818814994 313788409 364992337 29129688 667278089 230776010 384907409 108561339 644495793 84028505 905918508 18485480 647860497 398100710 937005527 555217317 750660792 158950612 839336659 458690032 858485861 105594646 945622634 920614553 969128083 585517348 705031801 654538752 889450752 738518589 853372900 757097271 822370890 738814927 780298730 238995387 881176551 704142364 849586349 100767137 104192385 17456853 173895738 77835972 225826379 110325008 380461618 227953518 589917820 163685447 758931415 151449600 350816709 116375088 287110098 247065686 787439145 519944690 616484452 465173540 827066542 696874457 912077115 472320524 735087258 393591267 583047193 575876508 617892550 152282722 279337612 20708930 490922327 421991277 479624588 340155907 936347279 80103687 128274106 55547148 211571923 83006033 531519279 152646888 487327923 272624496 474272330 303313282 711127114 682874774 748100223 426487454 572681225 473742825 988389487 202941607 320533197 202956132 482770212 313094608 710438053 503261741 920756615 472306539 829032429 750682382 830030437 315443668 379950139 97021986 686381626 249418989 760353468 629288609 662465997 586145835 785978985 224461029 425326941 323379729 767546237 345814274 702390634 405449821 441201303 129070770 548656169 14738733 218108643 149350352 202223490 90935981 581241461 211748268 525718740 103274536 547661782 336081064 415896568 296054142 602251779 285232040 477599968 288200177 815739228 580120926 760677678 522109844 677788699 72003569 117458909 27266857 587795819 359072950 622190263 481264327 684874477 324157181 774843860 169965600 232085805 108206299 204125682 198124397 906410994 465425822 486772644 150364111 331006964 31952839 634749707 303950478 950657137 231144972 832159579 557896842 626929524 36389936 737801397 671439451 717841038 21140087 117004538 90258936 385473733 348165424 714135549 45212082 711064841 601556815 639186653 195508539 878651187 802098049 960236859 367208756 718075608 205985572 706439514 496160739 587346766 336192731 377724168 98551706 319595349 254860695 647790409 57334169 831892025 748051355 826842676 324694086 992771503 111107614 374248977 35867009 323762181 218164223 259865964 75908677 535261158 8718224 453395104 389305445 848453211 102725189 830689828 577773591 778374480 47881430 919181542 47764410 793327571 28035262 162325547 19554434 730533190 394870491 408555256 284215449 583427302 93007722 713965277 525534358 720330991 669855893 807526386 21625269 113586387 8885002 876834101 814146083 871431338 849843798 902438677 329851212 959884756 455639865 957768430 347759226 414994057 46282165 365989589 351731204 524888245 75608729 976328594 635063386 860996802 687651968 872260352 409212127 532941225 422760124 615419099 214175877 353608994 302335184 819373349 40516768 956388284 470754688 899085770 191572001 655906980 574936344 872422418 71851738 671728505 321662591 463007393 448756542 982777621 14208738 178774216 22280194 507905330 256916429 751190220 664458279 697253413 295352128 845154661 428091686 900023906 752913325 926958751 509287319 794904762 605915463 653834920 445520813 845120355 570347954 928777041 928447732 934315736 905381874 932328347 863043162 880513003 119580536 812161796 725415997 830449232 41828637 357015260 2883898 851404896 510538530 720448485 452653123 687575706 407389627 648966980 521182140 548472324 384714083 819171652 15632093 783264754 513526311 764267230 118201067 976212424 429796199 502045697 110529640 631103276 464022920 530659708 141670383 885762928 590077698 895279302 434757453 948782278 241399763 345507122 107956326 667503920 485707273 829877431 343437711 918338007 909231701 919054326 485826227 538029050 429970170 845452651 96738350 401828159 369358629 382238320 227371310 623373476 131519363 781233188 663056801 976333762 589865248 719915437 424345626 851853616 21554054 156530748 84452011 451592115 167534825 601346728 496378181 651746358 630568375 906560430 122581998 944807921 737592831 919354429 486398249 680781134 601865583 738274029 536445857 950038459 288460334 992483298 578792246 900151968 886561402 941473051 265928413 435412865 225432847 603704033 72018822 543166058 292035225 342801975 231210862 380579118 51845505 558448657 434036754 834154915 300516401 691708021 325852916 992208447 126447421 319047550 71977595 700031029 225490626 594734557 57897003 512835908 381973868 760538367 218277492 681388601 478386446 983406478 970997680 984196935 198432529 284265406 151382175 860029607 791386693 907205494 248303309 976842985 376729213 487797627 30348149 624514086 9778358 348370075 176184383 330506570 251595244 395395871 52090595 706282348 637798734 979727735 138547494 576305232 560815748 965596186 718562711 808917171 197048350 532941214 421976007 830260299 362438310 768124359 359195400 514565809 274728233 848894132 25146276 852096408 311332453 368425117 198784201 324888991 78091103 971608591 616725004 788963796 598370097 824355385 119951768 783493741 729130641 860585785 589616842 633003522 248160598 443628891 246301762 627333407 275065248 431150921 63497161 128842838 77937515 437389588 218212386 789863432 688901506 966251654 829488298 884414727 286073403 337290624 274227558 394345098 264496399 657519088 100345407 273646143 46773678 754182942 684422717 793487923 579348094 797341567 41043576 918306182 332481150 938770318 773618161 950779860 674970645 993054437 177729359 742868029 172632419 654144069 39129161 574458388 325303434 638390792 418377183 678456869 254087877 412432593 295511609 952599735 105437994 571449168 193257585 421513590 332121396 815113740 291590220 803671506 460288412 633523996 259744064 364836084 255366245 897084286 81141821 696667927 567131001 671145845 130814329 886294151 552619872 641675812 316272958 396099478 331297290 980421017 648418839 773881132 305108343 938011544 127793063 889854090 322807909 599219833 324771840 681925743 460341947 901214524 165408342 799306950 81718087 387802225 227763931 377675346 50733017 997003454 151183138 905819087 637616502 809014591 675872276 972414102 758314395 907578233 338055093 482653532 169808406 217381345 83930048 159506699 139403719 576908404 529150271 773952217 602367973 662601923 400508240 904365440 321499886 395697334 25486446 47951041 43816721 270426225 72984816 488932150 20412285 296903062 18580166 644331415 139130892 494599094 264388904 967187383 584038193 776082598 644897419 786527656 171570754 686195802 426745188 787240534 130130409 311071027 161687555 991197577 582600456 603550819 282045246 495451273 446351886 951735157 901020011 954803981 44481359 674351097 197623232 744311953 653202852 939007928 520195664 907365591 700508702 805974946 237336446 700188534 651377769 946229868 78926760 346176460 181598566 655825817 24170786 468322497 254475569 750419726 10460218 783888199 664161085 721965080 389640896 776584033 409012720 627802321 76106610 460365918 170193772 410798442 224047587 284150217 46124626 592368195 259476683 655620878 306491841 431434944 16215406 617484521 600582750 727327757 706320731 789438442 122802822 399493435 148097292 390799846 199025285 915219932 412455191 640885580 243810347 626900145 584666040 827196820 744757734 966572795 382580678 860312888 394506900 624084573 304608472 813718280 365337579 568222065 108405564 793650434 565972552 985472395 358937868 617756571 212149876 408349795 61312101 938029280 765480210 881299149 861173773 911974940 403379992 778267970 584200007 847864448 132034642 255820460 216182823 527854071 188903021 221827119 85919032 907207646 475882989 560095318 251111017 270122232 140185090 212521503 57147627 484236722 107438656 869107320 715715356 889470218 213308798 257051557 93945335 484241139 302564321 648320100 86635775 742062541 25614818 420769869 252923151 928899336 740567996 818072402 95313203 505614378 109879297 699529071 237272008 967164233 726314014 968426560 344528836 594156259 530946510 910827094 584526775 700201872 500556131 723404811 231607218 244339647 153390145 542695620 73174741 868574321 616845808 953663604 947970534 963982439 639430545 803621391 417551215 451788081 138590784 734662593 334136298 632036967 228053256 773164825 381620344 822677761 727117780 949202965 853161245 888181058 799758337 948943390 740066221 836904431 454295388 752483986 125645199 634075163 191598363 309047045 82611968 436296122 389892728 941761771 124472856 367762296 109262474 611595266 125352634 427844646 61042851 605566218 263616673 661351816 647809601 924831594 301260197 447595158 419651016 628967766 528720229 528920775 93721985 471381353 122653400 310432379 304938655 644642961 473970708 503978773 303650280 544437942 284988708 466819867 350455913 678830616 424110303 890483916 851360473 981344727 41816346 673806650 632296273 860821392 234403926 492825300 205214739 315217131 238235495 805612222 173214168 826848662 590350508 926735606 409351695 722102113 575594243 979673208 276453483 833185385 178355074 403978674 402489623 957929984 165622766 457382807 416969863 796115037 75222118 643268668 17959254 656000565 436328678 842654214 792711584 899440953 179767454 814280861 714098725 917020273 86014928 355052034 354675704 955839034 939686082 976687110 635063953 831252347 215213998 604327153 554127665 668861197 95819114 864646951 830202476 965475893 470781068 608080685 484740078 614106641 383780806 803240389 566226883 922109536 405857744 891022618 650246366 807588827 413382627 426166125 154057518 865884304 770806540 931740152 927935220 990105103 926561904 987853309 454240553 871589551 28964843 194353868 31194121 927057908 915449913 973444833 607527868 749311331 61075358 373733601 100369750 656721074 284630859 450309236 213567997 304172499 250178888 340217219 216635961 675169336 374309018 991748221 416256652 978096177 683510728 816156219 348597471 413515290 89644932 611140213 289967107 511128401 413723100 513512912 112247469 375309782 170433721 682800554 545657014 665144130 608251139 630642692 609373815 928194103 99416902 951120413 519906128 635104325 267408876 849414994 279687626 881444238 117366178 518706921 169969536 959913978 537437303 720865856 595478006 741525000 732345474 822506604 325706437 773757414 437866932 467569341 101367303 102157864 55429896 254255760 246802917 670233569 64702831 858217159 537926057 573344775 155856446 975112979 302464671 983308336 201944884 472908085 326604355 453891773 59723623 880737305 688659891 777369462 16038905 169334287 126895028 929788166 400861043 407275390 148247936 154358355 12296290 591594290 570255305 578416706 18367385 178118526 12305196 71146730 21914294 384274445 377679058 592063774 345527788 621790619 548570808 861081291 726285596 850343935 766674993 830629883 743613131 770427063 383136633 627542163 216476704 952237557 570799607 783024894 63242011 737527039 559615851 973699702 442590513 457115264 214027562 299297379 71523031 530670909 86109852 766391121 395094180 847678102 116912467 169671556 82713029 453968739 122768071 726712451 346303555 946211532 282507850 765712803 745192158 949839864 370017028 673233355 368535873 739540792 316245060 746113168 639870794 756663279 143306490 344326184 294700315 914039038 16060313 269286578 195628694 810473660 510479849 899476250 400705091 761201242 77039667 907799805 829833891 872985452 170379403 416654246 53158066 893654658 248361457 547264508 91960243 219089054 23871186 821732964 620152881 887637476 665552548 930960672 112567113 752005639 399282591 533763860 100046944 681160753 610734393 877623455 232400130 934577106 54286843 404021496 268342520 467592938 173283200 999129899 158274538 646162894 583900408 864450049 212853697 283720665 82722345 657664666 520244373 782000642 542747288 944258361 350876309 931063402 423554957 473808886 468038783 609879261 273238267 848169398 212308774 581034501 86563134 945452695 619263613 640228703 597833958 861670491 567173224 669053173 41356317 382499586 276324969 928144984 298847659 627199501 237657555 295588832 66549123 289887126 266631577 772010085 696656008 752626555 412266200 704308681 561068605 857550412 700798739 864461687 414730480 518713178 335655405 950999703 478079767 820432302 687132044 961722774 600044229 741833073 530416674 751419821 191344022 501375153 77426865 538921664 1683673 656382896 248478861 698604274 393413007 940694941 735731674 935257641 216077923 953965916 500190775 565146389 206924907 820262271 213878118 330878383 182614250 185609406 166376392 475505563 439399655 982398038 416582472 588763060 378579059 486069409 329315974 645745599 206345244 741108902 374514932 890240544 794088053 856041498 477541749 608153573 83360385 793556938 460136931 612187308 580176848 932033236 854979617 982461299 680422696 877278595 601525422 671472064 164910996 454379765 94094704 245398142 81202530 715100528 358331368 364890407 253734134 736935425 454213235 963445102 195934947 556500198 390342836 959045271 706991803 884782965 55968538 594177772 76208178 645455511 400186074 424495882 296437070 896144356 788295663 851694590 361308184 506689852 500085023 694223376 397848235 700525439 100168130 547542004 313677809 643900445 223958652 743913907 463301194 751895355 417885674 793824657 668098324 988959203 673735095 711661030 243195734 870721243 371666009 488812127 256402152 826210558 812975774 943880377 744943459 946650279 669470120 962434069 722431983 906803113 299421854 314535116 153107701 945284761 394247070 580859129 545203156 826354454 500667016 717328238 390537225 444332327 7194530 599003050 328031327 471001751 384893700 929229594 500898132 908629390 493670620 888364799 362261273 569428010 320005941 481621470 244278224 981131295 146801778 884384085 314338158 829746792 822370289 861959415 258739601 480222031 106975103 846810641 833938292 988863000 195800450 781933769 48651565 927661457 343654779 671986903 654439345 877521356 804456273 995091716 595074521 910147567 528266221 921753436 817410229 847192098 416502415 764831300 710356543 961999389 919350321 941488606 738919663 746232163 741752045 908571978 907567209 941248694 381857147 385976716 330763567 957655298 252581439 654139969 431448617 768597037 143769515 351628291 277735923 448929722 170163430 616381587 496868440 537365305 337120831 555115994 952978 563418780 372270538 382147469 31805481 966835670 823110878 997676588 388053 253187724 146906104 215651284 61557654 199005740 116567571 127073959 95532647 850092237 348356986 426424569 237250615 250967940 3284649 870144964 402753134 748291523 605530565 931845947 36909234 214654218 4216891 669626743 152996749 634680018 625380808 686996539 485863731 835692322 370501559 540914264 237817060 905261697 562523432 697919473 532928636 678701856 598775223 854515154 827882179 857269765 712252573 865041209 253433533 971396958 592315056 984341990 361937852 920708064 361366122 780078896 372676382 524048830 51924441 82785123 36622744 422372367 277579171 300592822 27695934 191562771 14886089 833052177 508024916 930493961 452020402 963628440 651055158 763795449 62455205 858718512 304329395 535728014 61855494 582995449 193376617 694219368 335078552 701073929 394272954 720477825 638915076 925093099 668876802 786096845 559301904 729989439 671123611 733469953 522815897 653132280 324102948 485880064 303491402 527483978 107319036 239789340 168567210 540152682 349743513 502068621 257888440 980980297 435628862 905505588 614298912 967078722 97668218 677910723 630642923 840960342 631626133 883978624 759245773 815191195 807280585 940143117 551406096 619111740 130708258 602956616 230949856 445683102 243460855 375700047 144189911 592821787 195207604 922260425 632387003 934474910 839859483 975710092 420490114 431796951 374750261 700794144 542804236 900430165 810967790 897807818 80159018 563806242 364659113 489618611 222401312 605666246 152806377 826028086 331877651 334043898 233332194 678697381 484482079 554892610 254768386 482911670 31597601 84597035 3546520 626598238 384575847 915700420 586332138 660846003 432640237 906533179 848914668 965456489 823046640 983057487 167242397 460644259 3937078 492115577 17130009 157252656 113556760 522819963 411502814 578223250 189710253 478547632 396192199 993469845 729456127 807094744 412609147 445926621 26773746 467528860 198871781 829799145 693063891 986496678 776547906 958725631 555149682 608548147 41159788 880639178 286415519 486002166 183508333 483308030 283038947 920273707 461565351 986828332 214695395 687206976 386532315 930888364 428406249 854385757 849547694 878416910 592719353 785152948 494638307 854617296 763367849 936127037 249963057 555334868 431692981 858647901 32247462 434099770 348426647 533284272 181006221 756244547 376607755 643368405 230706118 665275766 521626004 550110780 209589838 584705038 344766363 807064412 24322657 256017470 206717147 982826419 764973401 912241904 302719356 646831021 340090068 637338687 1585131 227050736 18305106 231122970 116446073 668928751 319517498 788809437 114380839 347140962 207202583 369934662 163509744 340398110 146001785 223480267 169769495 809708239 90820107 968126782 338054026 779403834 290471550 878485057 355029747 400484292 267958658 463419197 397453927 442071485 11380928 681658334 281198045 498084646 486039426 912839512 307671542 626797349 402377645 982031987 566517841 675121789 35565836 365628532 339579074 550655764 114972232 639024786 180880015 822865830 433814707 556293351 216915756 669955171 575564312 746132391 167113441 307239889 109726119 983205888 760484053 873615346 781936283 889883476 161106343 345055363 224941022 451897185 167536375 994989533 166658452 843628141 288757779 321716866 38829691 838248684 615660109 915766920 644911754 800411892 763763163 863586482 579822265 685019661 104665837 975305996 202386662 279713268 100828602 962015513 708292738 782645105 720789248 777370395 558462070 834013445 604901111 728162418 567759986 775663125 52981878 252080516 132921988 466256625 412069319 507712522 352589552 894504216 470263549 773716242 418432801 462757655 232471653 528191938 396574532 831348857 734549905 846095264 620236836 781876396 593665922 976256133 106105122 708687801 319272339 784901331 60184507 250757112 211922455 956251140 459313746 600817977 558778979 812012988 119395941 358883410 265527035 544529744 440593076 722050351 270005189 595642772 26394295 102023776 78415971 882607009 135319239 153426181 76613900 425633414 120905032 607294451 350879279 879918098 290493365 681400905 634469365 980652633 929614662 999073559 453025298 617625852 519918351 534929574 243223181 564499103 274939638 405119745 120309026 754048425 71701096 519604745 63327818 681909364 324004852 389572864 267448519 509973223 199712718 999059019 497276975 761461260 522994128 727624829 354009000 870123711 16926420 346408227 137171832 492134031 458854676 925223802 572599161 846922574 470139626 538251211 163014587 200056582 196927938 313823379 147381626 961187472 710615332 825956923 16002919 787745335 470015313 869812931 348372451 657269348 113936046 925265694 696921516 843315374 478116097 898963114 515822284 523575334 95270494 263536506 43710504 690554891 363029767 652772493 220447825 401129980 215675913 931252369 332649608 771610587 335447285 500011433 333028548 499631652 496355468 705727466 88612019 708420594 697654493 825421282 470412940 740221508 113974246 218146288 142759839 420463700 325862694 418774460 13433522 791079598 169864082 825800311 58440301 588340773 561540478 905589378 863732930 969042365 697508475 712776401 370134119 872197881 237073621 357566299 208776147 285671965 161216928 373775772 104003094 326548498 176254036 789469113 350019370 808484998 76896752 309026080 259188251 738166354 633300051 648076586 194965103 767065051 531204563 876119071 834594594 980106707 158561315 574242748 312960119 477928418 435761222 868324898 533222836 934962690 362245270 459566009 121700723 532688034 109595254 580771018 108696507 584009945 340083901 764530675 17545516 51928858 44505094 787239555 443297903 582683731 355106701 844884107 308564377 874809787 23913491 882021504 302177358 891524723 600843996 960407972 290562662 833338913 178820086 191803694 164846232 589265674 162800249 301074791 212535380 241985547 199793100 682175193 232341141 964347717 650099338 953308596 645887271 673750156 652075690 771186590 523898089 890291622 241446703 511273925 307695973 928570499 458116286 569266356 358337427 606417275 375110691 513888422 240039949 703344005 417553167 710388452 279975257 698386269 287630276 685941450 417916454 704289012 138861728 413444919 412679986 993791719 307716837 735211215 598140109 876999684 288316259 544050737 182952175 741882736 423546912 812416490 773567228 843314351 311083478 321506606 244774798 896955755 879474480 992964168 278273604 494325071 121977619 486060424 284061490 705680153 453506888 956479525 731069095 746663258 207218469 617286157 416147104 454865332 214080783 655868700 399957260 523116634 507147773 656513491 492853137 661083988 340670342 814767844 581466888 639459037 49542296 257465503 209809703 316183833 187718954 331729929 15600152 871152472 864154624 913806007 663679832 698006474 299650627 601009842 33433449 312573481 233116794 573387112 210892186 761332661 25047247 838058475 144907078 326966098 248831966 589833515 295449914 297963023 132479400 308669398 529864 506772766 294297916 490860487 50174163 941253495 826566847 887715249 8135099 356480549 63050745 650573067 105963750 798096185 104421152 795709357 42989255 666505510 141258680 668322836 188227482 886795063 729259856 850777508 670320298 931325572 401792184 462652004 404473461 716474142 646443727 769171735 677870598 822505287 169912648 620349742 583815068 697520879 7869082 985390202 229509536 978223859 536254686 727720102 596643372 639524279 328624796 890899793 50419330 405861895 92611790 117603435 23867749 28061810 5146063 208260747 145545187 663782770 424553979 429841985 255650526 821506812 746740634 963366494 88008186 637231463 622561772 788010993 597705777 793016282 150857919 904216597 494581768 907997062 905993255 964742394 503850910 841412476 438038826 620139877 129032805 618189582 172251614 485755466 160007845 384207792 294322990 625151976 91817464 568484337 108698186 323080220 104325142 845268894 69126669 511855743 413922902 851745657 43990756 722286580 126719291 240235247 158332210 294478015 118017913 226256460 179957461 499858161 320786121 473638694 459267964 459707622 58741943 441023634 353771344 679791916 327167379 502234959 237556660 765646313 190629814 552615497 327054079 965207748 326111933 977770830 751523949 827355448 443028268 795002749 219230256 878352799 532333686 736628888 205192137 860090145 99470426 913886986 313058079 334282634 150034644 659368168 370204416 601840088 17514565 480344734 355455945 960269637 171331110 215294771 165534027 208272076 155282674 915795940 603295098 721384715 565167140 580986546 393230788 751683437 199151057 971167806 197645272 375236124 60845080 750126328 663240539 855345692 158985324 621296817 355402302 743927179 147495518 407388152 211739825 415200862 277228332 596323941 448322933 617732536 535186203 837060790 459935518 936534723 566393726 591122108 271332513 402108703 389315315 961455901 91635897 879860297 214176807 929696587 80345228 372803169 65514820 552146395 472474041 799204448 444178503 960657762 611899600 866189893 153241603 548633651 127146795 606569288 257405595 352496223 10942834 258074404 211944569 536854153 73525027 185517668 20839806 894434186 758382190 850015040 665436600 761165916 6430191 707361543 653110405 838094602 238705899 717144484 216669015 983581734 932236453 971410461 465187720 717338390 37060413 162614661 75903324 176156871 31346677 956807022 7875586 656962718 614871330 750762676 750071369 780725563 506228617 799986864 71938847 878705977 749540770 757602847 555887953 710127087 451067208 556561655 39921485 709229713 469190066 953480066 345654622 997545929 314733502 603912752 486448065 947006609 145780023 404603130 79475966 253664241 9509417 411044732 278845132 618367215 386064313 654086671 373267176 613582701 518306411 678520856 352459450 637459672 91108245 681890135 530837459 980658273 792836042 962299175 642097706 710167428 489095466 520744336 198510322 462336788 186172813 394072176 145425918 406247979 16584324 377443849 220786001 249590414 150787800 550583498 41783332 618586903 322329433 598389749 394892620 760099454 259212382 888321200 264428452 846159633 209923637 544739988 385284356 559833184 553802640 918853596 62330094 738527716 423267295 619234138 78594928 650697704 9546878 962752282 344454454 603892606 309249408 877304772 129149168 741995707 640630096 745320107 428751331 464101749 353260373 568413712 12896979 743257741 214933317 964291649 111290224 181726434 48161253 714433568 120673873 460551364 322673484 997094212 360029609 567889312 467632613 929487176 454520816 494334690 445901582 656784732 633100641 717497143 259355269 373457030 328493537 997676159 342410478 957110341 273970113 743716550 493207978 969860689 578372644 597127938 550612808 873912471 139219548 255980056 52986776 696494034 176000242 454161303 307424021 562096812 229223111 602065952 399750499 899669534 447946722 814904673 248445191 621837386 508001003 584679086 41382573 692472341 464053946 722412339 609672286 915502611 500264636 743854354 478137916 545713542 418039249 951242056 222623967 514792189 190840636 804677413 608891349 950681546 352489923 472086610 242019944 672530479 598252467 716297980 501549950 611642918 263493159 967707708 295513194 503210424 124012044 451139410 134640703 967049547 381429359 674961004 202651824 916146821 182971677 697970026 593865102 843162034 261237193 989520950 839738257 940845873 582727553 646083627 271235411 577656484 501481768 722985534 234104924 508740128 323466386 911986724 884432207 912521558 703682013 905558821 470317409 550483304 151956266 731081849 417871311 540754427 240975129 392973366 170112915 310035125 36892808 801365664 479681586 747770079 525833673 728758371 683838024 875181300 148599305 634246722 372441455 551594970 9941769 111476664 82416959 451722358 271932356 812150542 411890576 914003990 325063253 371589046 146370785 776236330 288145075 962163427 241267026 940957439 842130467 914702157 403341015 730434452 32580747 314521154 135173576 253828334 33689961 66833018 16661699 397410923 120846059 867831453 809601048 838885707 501204813 501917905 291358666 917133825 613684433 922016075 920655408 956469128 847720822 975144311 424646823 748887089 541857996 727168123 198893825 290893371 129920957 910117300 633901610 826360993 657751924 835631587 8667168 461634902 286320933 791678339 773103286 817944130 815267535 977371530 504220140 698113815 427423796 844172527 200145919 642655243 454644868 839098885 746877938 820729346 210221744 648414784 102958179 580967383 97960171 99369161 19405752 154056252 107721553 141030059 137454957 206442258 86756054 971296269 240709723 484022422 50499566 921548787 83558665 137164888 127394044 515294991 405023147 438222495 200971653 400826906 315661600 839742669 194883398 956623801 828341258 849256342 36841895 663532764 59623928 151196678 76687875 279197678 14821559 788787791 273561543 997163495 224308817 380675482 312205001 996342754 967884756 985076063 250983153 643982614 503449103 716329200 66289281 654602394 200787690 716762299 302196543 355117177 223654248 252921948 153489050 722507617 314654989 729727610 101100968 708831379 1364557 238502613 228624548 860608285 15379807 530855620 444137649 699036540 148735161 669618332 556980336 947825091 320341350 605745007 595604826 685106612 105173023 266980008 127557402 406298884 237561761 984608191 29181731 82164990 39834316 125004883 86320467 913011212 738953886 958430642 509957864 784857550 402436956 933944159 868091463 996361437 893323931 990831722 367579232 529131608 235705593 400354711 281019037 920522600 85252963 361024135 83419737 128013235 64279891 336351162 332776788 948513781 892783906 966352740 832021851 868458620 863513216 892862821 237408315 850819598 390499483 844090143 835683645 854774058 384681900 971957878 536867402 596434702 180879563 346190054 224904721 656333121 597561400 755483715 436776258 494646328 171208422 699906652 604028967 731998610 246921696 752481056 154949429 417784444 307110800 795054197 575738810 599654944 188919143 998363494 748350324 862102672 215244528 675540349 139353826 551206820 394452922 559520954 133845830 830686350 106451546 309972837 272918362 341505220 9317746 543511563 200656309 227111528 175080150 792829026 784751108 796069057 398560245 948558713 647995320 840090624 28707369 257364139 150586743 810401663 556930043 738658553 633676903 657965041 511634265 913714374 312436102 764812493 373519317 840409222 780792367 800939609 761711797 954963685 109707004 142271576 134836208 344966150 294808198 569691265 15520478 453782220 368313152 991660782 255470867 668176733 388147804 754288981 105174746 823814311 161486979 804271772 99545150 318482749 93817240 124399205 120861390 566627590 431526369 877042066 175792715 178680621 53266416 377354922 9149836 96651872 51906268 554770679 391485266 687117848 443934911 452684988 102549369 463868519 149335206 186842675 154191361 232237549 32014154 624451011 402857205 971527262 166840886 614255633 35452540 134433340 26829550 678594722 117911738 336474079 199637023 405475566 217396361 571380525 551561936 833568547 386851199 582200999 345186076 585529185 21018216 895940267 387142870 713008903 707127156 948405744 845396351 884127595 54419888 978834102 504396786 661021782 644728168 825144004 111496275 183972783 150488700 674289459 485361397 698009660 382281828 547889507 429969920 460596542 67917347 862611487 415003437 485592287 431800316 572348839 289470411 321437982 15101378 270320606 68421854 785264011 61090695 212421420 99384375 553637171 490573834 653647619 74212189 861098375 90346175 954771406 943002256 995721295 623690026 680210436 567241194 577518532 147118884 624007363 280948250 751418636 468265439 783834742 408033476 728159084 624446882 785268923 693724237 862778767 802636748 808356376 707082130 813215393 242008826 532809223 465104791 742915630 171158505 588350399 41866142 857479945 706643955 853804369 638284401 754295449 536635565 990712758 456930062 808780578 618244739 970768341 431918882 992367141 83178679 686873869 597780808 874070555 769284738 808380374 173937550 867281892 423888449 632392231 201844806 471888447 387326227 953087963 764800794 990306891 42844629 79481109 52742944 770472350 660931533 884336373 154127187 201828598 155167554 725747244 33456223 679038397 389135455 914991284 441166476 849502975 532311007 707712502 86491927 585582582 101315920 646515098 264821044 809900409 516739819 869266281 471135158 949052624 842291674 853412926 533318074 551864250 96540525 179731450 47704140 244024838 174085611 227328134 226894749 846176673 382133372 455005296 245538801 264985217 124165388 482026787 265176981 730408569 625230456 990262137 876913422 953260328 588233785 894454101 234431104 739682873 650056520 749701635 208786865 580104014 372444333 768159494 443053552 668847742 122315991 290405691 17639363 362724910 4810915 975700973 14167686 735926989 348588114 893174282 320913542 676840326 368503935 626713984 564586312 927188301 777581347 814279307 559771545 993851341 401637003 680754847 20332738 259433267 237579491 550823258 46999088 956966711 27679803 158219781 134748695 800602561 91788377 387712092 368611164 492911604 35231175 221111383 214286012 789982640 427764514 848521285 657393149 751489126 242240939 410774268 390619409 704495908 464630943 937274172 27908971 562550611 224173951 945972039 366304875 950994285 118228203 969694791 641995901 723119806 669134873 675056423 200124338 913889275 183558499 596566470 578718749 999859680 687318934 744290269 514162482 809420747 268265735 840945624 530350650 975510038 420937880 895543864 515643213 952541722 556190006 816383367 528732331 630922791 238789641 482826942 106466936 166016753 12257370 536603355 81171083 735416954 683576944 922903507 25756464 803995160 418561782 591429323 50071732 613938838 400265217 661195085 614768934 681562170 98469210 133204810 71637333 526874183 44648184 583077062 190795568 518109117 98811407 440574688 113794317 521214666 479625085 591508484 55006802 916856306 656762878 732493172 166659694 379683715 319123385 842334315 708138098 956958051 302351045 995122647 804936262 895651164 592979088 949029041 820068845 896919657 896906373 957705104 208394753 361026552 40375299 601736046 469468441 867405685 772234592 939232816 687027213 992953599 362818181 631348160 382130359 779854571 666372993 839781935 431735967 867918653 688901581 985907515 44040030 91915602 38874598 897833942 499702796 558019271 439052497 568243074 86302044 286775469 43820667 710624471 513570106 579287228 450419946 903857187 246489222 461952483 13076937 290170929 185098525 504331306 480128240 944655711 540555901 741612297 26446893 360970712 22747057 547061650 43101785 659150756 606190015 868213534 445209797 536576174 464294980 946430092 571465779 894644146 410697154 423863705 157641745 547165738 287128333 484534846 444482250 492455559 180751472 440762139 329681047 476474880 429948234 521295660 46361565 199859398 153956683 934173000 259410730 721532215 539211399 819415107 532048268 794100017 384205790 518185664 94057096 706130221 607880462 627967381 575141600 756759749 172507668 477576498 283245465 379347285 278369679 553564927 144902141 990655690 248153245 365687653 61183006 78471134 21117911 471202247 199048050 425978159 174583537 617459724 79344472 580455548 40698458 232018216 437072 976901971 850265718 902682806 274127541 429119066 369350268 408067640 390593472 758675719 674824353 854627294 183821783 323600893 160579994 662237746 194720636 589005536 293391713 583632907 188443258 926492664 489770235 904599327 564934756 866111978 775504888 863398228 832413474 867909852 812167012 851162436 60144150 174297157 159519111 484344648 105272818 937961622 629712885 972029937 155789400 470189030 78753289 729959298 96981436 770652686 393546236 995940085 104392267 503758754 107856011 129303794 77093967 286349632 211452645 849028798 563389441 634137096 132208200 513475391 222274776 955576848 364637035 797567921 562640026 846101853 613464168 881964340 460169345 493944822 437934186 604514185 150540799 871075351 613630211 994939834 523927507 814828581 201380235 923152582 30208993 824097605 254319499 886414364 680236604 960768724 522921224 996888859 919838370 972750360 420029627 487085099 372640898 473853190 311893113 842737891 606437999 748301140 281069460 472356353 189568650 745883314 478605302 853649695 515661716 789193846 662495901 786899101 471744179 841470665 243202931 712718919 503604272 983538004 164798479 378045347 57396352 389185590 213320278 789071096 178928351 998549794 890366100 959121518 586783625 914648711 380404357 940159483 829188094 999922158 159082396 412568531 13147411 250539272 7597573 827651892 643862926 962684558 281923933 692571221 638937855 987550918 139429681 289978780 182920119 186069965 70090034 311670331 100113099 647338597 324646439 676194253 332722586 664160440 593602621 674103225 577872141 991433331 580525597 708872023 525874421 787671468 769879336 884178990 121924895 724001648 303659905 816605302 377156568 450173102 429136612 621330374 13813203 594367255 10712509 122484515 67954760 143487403 98286383 198216196 122761985 818595971 157819161 449950131 46107042 460797642 295342154 954074700 455949215 685347278 599013160 739312867 724558988 903789912 173689668 175912284 124093938 577759782 387044904 692694328 570343293 577242670 198867076 477295559 364788924 937524260 126594394 914815459 494162887 538754977 413067177 974266290 865317919 926281337 401280329 955683609 351461311 989292129 633042520 800014906 416411257 806467213 468057749 730021167 427478750 994447553 354304412 946893948 731558928 739242975 160719574 362430488 354893254 452957639 211743334 925383700 326470859 603144979 554982063 748894389 480330465 936412041 611087493 623349068 548475304 568636687 349887488 521965737 255716997 551625817 358423160 620793943 54310103 139560528 122434249 574058520 260040641 416243749 57221185 867514869 345377890 981167815 805202542 840640377 506998479 906457258 553395964 905472978 108180391 616638742 216544545 465968576 162926929 459355357 209654147 572337227 511202361 746656259 379959019 475228133 73720654 805323705 181901105 219075742 206520546 764961320 360673601 594059055 307948348 761069808 609298166 827179614 117496838 298978844 289409111 956400459 186124401 290767429 209261843 457288836 378370044 640462752 501751149 522821824 272480948 378540925 57556683 807872145 26519632 349751994 203156574 332820699 141055246 371723853 325004085 806872863 731389453 779966406 616350786 624556868 361935661 574822781 143422165 476985396 216857472 830122997 351864709 721927267 715166270 840004020 812155692 903205032 846201520 917566608 850042081 953570779 277388385 494345210 186658524 728897912 160004943 756358987 499150381 581277579 76205729 590449866 444586582 508273744 402625785 825667060 230312552 258295506 243639766 929783646 628827197 715421380 441878319 564555386 218200595 565920255 239984326 631894944 413744786 869439868 584017322 866131417 521179406 583645043 43751401 96495717 95783228 263433268 226611456 842342148 384303990 451152467 95476783 468042570 96892510 634587924 185022765 490724898 365517917 994583746 421999767 841792493 407720398 477501806 315301858 481253350 134281298 744583756 743105668 919864566 47380230 116250550 77195465 795056229 662732386 759269650 100247140 405939046 216062767 646039768 230346467 665790016 66424792 179628361 148755140 998274966 944170065 965679577 659552188 776239575 320510114 467295093 95145798 595980642 251893814 669406686 49688816 355835641 353289915 489859484 83712678 264423591 151867173 187805625 105503975 735984878 418546886 698551024 679110538 850735169 672546529 828575925 626633719 713807218 204978687 722154477 76173488 561699100 198077675 386521190 20949983 294522778 279737639 341409525 70710840 198595671 16643589 875115932 146640666 634924970 292204272 307611174 133092757 916895483 239803632 927174008 117346291 947781705 16542958 882723896 157891929 678121774 567778451 686140743 647713330 971085014 123511823 581369905 350011024 946543885 295351456 417126994 20916520 177306738 166706462 523077888 248554525 405837670 93332910 247793607 237244464 730338216 437905983 597709189 425349279 477773393 18038490 556866744 386220622 748620371 9653385 645609877 426325726 801642670 431199641 955421058 781884761 842349273 718890705 831709246 604931662 734615035 351393464 368904970 87180655 310677174 290444965 919246367 77718881 121239411 108713825 462722428 401913956 929516525 550621073 724562168 606384023 630982006 200560310 439641285 28803114 124944565 86653386 435844825 175430107 636125971 378879971 880865111 495443381 836812407 822935378 877167272 446237199 604577463 453382538 692059316 352905753 416197744 149058488 750534638 682760589 851468534 669864763 826930422 414056981 777716867 299284200 679191638 192172463 232428915 141427478 262719124 106989109 960963559 916125070 957693810 163740553 715240148 228844910 999178755 672863739 836049608 674746718 931475270 333007087 981870590 54446550 208937054 129134472 728003969 687642944 954823867 714538735 945037882 219363774 223624438 185698425 368440572 266673039 465092352 457334530 873308248 779597343 781964527 697242156 702741371 107634258 584448047 577815994 633511953 630845464 718074987 220915081 306831019 44679056 385397234 367824342 388931787 61923841 384812843 9733869 822239086 226849401 426131121 3651389 861084315 79260471 577989213 133804793 905751833 514007266 598184433 353336913 682518160 553332535 843791010 210485654 594136148 323831099 615921734 552404517 568748034 113470176 148439357 111860597 799187122 557550042 713035556 460266889 842148558 557318197 810637251 319799196 969303903 844778864 893900253 705174976 905302969 653457803 655955114 282245137 519990676 27388485 486904596 379009733 389442835 8691412 190335591 19290568 967887565 20565827 207633042 94074172 733803253 410947865 696228349 469804150 538751778 293593693 840359753 523677187 777344552 525120925 788196214 648844478 999658891 394020529 954803722 616145177 813242012 586439860 962224918 722167820 818853891 164790262 997119514 571105751 853160083 405244659 443961022 392223263 978048068 865922775 918735984 767740618 771069639 612812589 779624853 139052074 498819501 358410910 371113530 978326 421009541 136942542 413021720 265805065 572997421 180615129 704368301 232077694 890983104 807064605 919431437 747087738 996499654 939446217 954803833 843130353 999109868 9190400 828340000 622587225 882098546 561403447 964725548 865494860 911244020 543082580 672254940 414173903 714513190 315479756 381267552 220004287 578045789 214595197 896060833 755036193 889220248 505010336 641213583 483443142 552773404 259989436 593761951 77511561 568836113 539548878 558670248 435377551 968837022 949422144 990531625 26610716 172112656 61069091 648200551 154484320 522441172 32415695 356712889 41799065 230824922 67995344 886810449 243226490 607748949 523496554 908508343 363129003 545379144 531463786 966708697 45933193 70847364 7237795 996676537 206804024 888916579 325240752 831086158 250647858 534929541 338530929 338800351 100573750 804202056 243372031 266755238 25745998 316605993 158874417 667640666 637575164 976522625 148290080 343148695 216148382 929300683 445368819 506148168 55130223 695453035 133837195 959011074 808783737 966661193 584618280 837288136 293753337 578620087 307574577 527267989 278048046 951930792 86236593 461080533 378010456 728497239 524721111 978876008 585683342 870463838 706611661 790771860 91371626 444304133 112305062 860717514 835850430 840191359 137093340 265989701 67592242 411757050 340730412 679220495 65520243 173102284 137562700 583621797 163397121 418269835 109932642 670977851 374305630 831183463 513093231 546345630 269581982 292824484 159809801 693583078 647108347 730235939 285789617 890622689 883460300 922062379 580152131 720688684 192983800 318754437 239674418 908965135 870233333 873361045 35761422 643631993 247389259 324572485 300729266 315305211 110443616 499967694 39299882 169279085 151576566 883371141 556656350 784847596 645072463 853058274 30929461 89159506 78643574 858279968 511587497 733223056 647981004 754173386 326441099 947945838 169331752 397128066 316368479 796289794 196339008 904511198 852439404 963235266 344477295 920599624 832525970 952335720 186479499 219766632 21574066 599620513 7156302 877653675 863860925 980526909 175724300 656186732 55763565 365157873 356085845 843169195 69052571 190831483 88575326 274469957 209516675 665047067 113764880 789422128 312220223 631342632 436238941 669301786 546875161 669531086 519735849 824687646 746582904 879420381 48985424 752341101 147733234 630037194 71531766 457443871 191657754 979159695 502030294 735961264 127792163 595805264 490628713 508538786 362546150 791842369 607770702 834076175 302188725 321560271 301682773 692949169 345599431 580357330 114472035 724743954 356863395 370255369 309376797 932529574 650295514 984062395 59993325 639536106 188858685 557031773 275485430 837898660 708281175 875822988 809493268 852444183 660408695 872397289 848324630 860674758 106252569 655429976 45249893 208759413 153758715 879958692 105073073 487276180 132839076 655624656 152030699 644171260 229041469 492828418 258849121 512406316 411050712 832571672 288513652 803303322 399422799 958218643 446060333 778957062 332078457 785331422 640810303 794175550 333704287 550652130 79658675 805152232 400460250 819541625 342486734 353002674 13977813 128061101 62626855 413366802 411934386 746932164 265967182 715322676 149387255 829552896 119686103 403100466 279753036 606540353 228589295 468772934 100297601 196740247 121818902 123946545 29211971 419367199 310573594 517878092 54078143 918933260 906322325 931485704 648578308 653720287 31545330 361243297 320582434 603046210 185619630 512815758 397834614 944873087 258225805 927047750 350915937 786162674 88581113 532837442 456848775 952485846 838336314 848543026 707654181 795249654 774606806 870317481 445905360 921905035 585567456 982209336 717642809 823140388 55500522 804368822 340430991 650627133 101577826 384596262 376419826 711749766 662563977 775703431 174179106 413429239 33660039 678805829 376808891 582300110 365430102 485122629 451683282 868195038 543899317 636305015 548169420 719074769 294102753 777396365 13210473 527279834 378814292 891735615 878364977 920162015 550138284 888514267 664890128 679325359 195867260 901892325 22209532 386460607 113515384 145307549 46277899 200171431 111449907 801920947 533919622 637023367 330986186 849184411 59818243 245127661 310840 348651160 163471303 928594252 713329430 766061096 217840171 267069661 141636761 216996738 214964102 526838787 17006872 915114680 786961894 914514218 299886274 599176356 370876848 628406797 247509672 925946774 570357557 724377769 205434456 565873547 470199575 932597324 775140302 978995683 395929010 576781446 134452331 392373891 296692300 642210352 342300006 580420091 246242396 666485790 619766707 996343766 433423844 714788021 52961791 70662967 15381814 889985222 201747535 363494126 298854777 971818628 482156501 636548719 349925779 518339650 299275774 363407064 277975311 977677524 14641645 624474691 154867916 848059895 264012621 608725551 199430512 240003753 190089731 542818894 229488790 417459054 306568409 334171672 68900287 790725962 127615163 883984614 486098501 579229709 150288026 788351775 316692433 705950787 358608044 732889111 496826982 843642262 713057258 726510198 278828928 500023334 412243521 784311455 10529438 688586611 349867686 988636219 413286532 669773056 262619788 886456126 244644457 550822477 51153776 861530504 840725402 864613092 183942242 426126076 357862109 662695335 482067449 830237089 144980282 623825376 411876054 497451464 235370111 468739786 28318768 758173090 494376269 830051859 82493224 127072606 65039643 630020855 226903659 327683712 314439584 598481544 531501097 710807559 36053059 946501737 703231121 743411133 633330940 702086635 227941257 731531606 629105355 923077129 256110598 497545433 103122115 855499717 277123949 587946223 214993946 365178853 6131219 735053935 259588591 428968198 336770030 724810998 548919882 798029378 115796477 389877940 241929298 400623635 274435746 886814095 309080011 405254734 53747218 734497364 89586631 350429514 334915096 857401939 681869688 763924700 439580970 574500306 457977496 734458204 564370177 689017047 266451139 951180240 349563983 813179129 428114697 622387532 139034255 928867816 5750492 690546574 48072026 198794210 88607075 908458908 570097634 912479683 608673535 779498693 136501886 970332847 90514816 240874989 109867885 997770434 341416020 370071759 176077125 797143876 515628734 588327820 546795898 653891938 291532228 835115350 389449418 683437355 661211897 915354355 622081886 963733725 548094794 593084026 181487642 516025106 189777081 501746512 317955504 457107872 42148790 505041471 243081816 702631088 511635206 892966134 462659798 824563727 12160984 734533738 307891232 645146705 546885977 923803822 704292457 990012099 91305756 551798889 517576990 762908496 274081252 788972207 156661780 481449971 132060769 358543290 201022530 716036106 30283342 734583792 445755618 844156811 800259876 832969236 171031877 181799018 108313655 162789163 113072625 613437158 388938521 982385999 365933892 945604915 80795168 291760984 162636093 412737972 163359144 894751326 346920101 752158618 253648261 822559998 15294118 476748478 191394521 502916308 342304546 684222982 437334736 784646321 660337881 923943664 164587166 240719910 179501983 667561264 227382481 718723422 682950211 752755775 99805884 257025151 197142901 306012959 244627003 414270554 79708507 638914305 34260611 363624589 250783649 835114290 825634978 991851838 430314665 532269329 5375947 735187277 191989145 929231887 510933208 767519621 25227361 346505475 293641595 350310278 46608132 345141681 288354803 360518055 258031432 435910895 107039372 142567227 141488946 911041258 327208796 995929511 327685694 842825701 300309886 837047853 559171503 988661184 122491053 687548253 255167661 430891869 90078002 665748081 108777334 373397587 47589976 975717517 596483298 776051881 592907608 629124201 110121661 328033054 42222069 290496371 16990924 456604661 410993769 543314562 72995037 346111403 186013756 741800033 734372483 847381140 319024312 661335352 203347583 273046936 204256643 531920640 35723078 794936087 473605854 780178513 439641720 692358792 368381687 628827174 386160147 845818316 312097010 593582582 352809505 363198134 334587154 756566371 264121038 485824026 366209766 646187519 160494059 422312476 394811339 506192417 92565256 332671921 25130861 772166840 519793863 944328333 463214716 904845473 331945223 412724984 9755425 35572313 11736478 232934588 103130514 832837145 278384771 617939359 594687369 610976143 398662362 747146032 347248756 704820938 669853497 673071411 373642027 594620794 43800098 648997979 143243618 670852087 7654849 220997542 126678212 723880125 708797270 937903449 245514425 356521108 269746893 476328583 333476000 344221856 10258354 335299771 23104731 356502568 29516532 732113503 668626783 991735786 838566552 873656736 276585817 927958151 232453090 867334064 282852775 704877188 263445701 585770078 227245592 829472674 810712038 996422424 504416786 584275383 225473638 990971600 826393691 898663057 316803552 483254503 338522070 543737325 536283596 747374614 511504817 926789517 256816543 654443170 310319538 971984003 465708014 686718649 576956458 590421530 485459968 838055618 687953179 813469865 794488552 808636821 80182667 429868263 380479686 423784098 383113685 952053864 887451821 927381220 760067323 977026323 402913012 710804769 554883507 727884211 358264306 411057683 351834034 841357293 242153769 525272849 75589221 822345686 536579072 811448033 788073004 807232197 426676348 636307573 108776977 767721633 705799666 717242764 149906095 364912717 330097542 615512105 99191932 904789706 203882413 320895584 292727715 966477279 31136925 808514062 772210579 934199659 416629433 615504709 484181944 800631466 581037106 963264452 939294585 975881889 519493338 571909512 288149319 948083670 664724291 869486014 709287167 888545415 469640249 889104501 758032313 939593766 71205394 135682328 73467742 175235493 26006004 957178568 289702670 761471738 757468727 821839380 511529494 866586201 372423102 464242173 345966906 617867814 22630768 301532062 300482537 365535875 362382985 700480569 557463523 961700323 537760828 943870814 228327203 228517109 133256055 556001976 416959225 716441744 136083240 285324394 271884464 870239951 741611137 898619569 277203860 740663553 124695681 623218195 501039003 580960206 492346330 954888250 271121022 944455229 534433911 807789750 406841391 535757190 360396493 661539737 317054751 961231918 44749245 826239507 143095303 783911384 356681185 397245711 380189118 538199045 350757992 856171431 316838442 344857138 148548994 508456632 367247081 830059229 418067545 916888028 238985836 331927717 239712480 858964918 810303012 937006658 902317703 967861241 334925866 562863288 131492195 248929829 50298096 553175826 214823525 847322843 670622279 902376009 727604430 835343103 387011600 935271210 879186233 883005310 705455634 763127075 392686657 864534508 246453225 996110778 564048866 909799684 17109729 494095830 348894297 679506548 119598997 290247652 149786626 554892514 441182404 611842841 116016313 756230785 14998907 533975291 84730409 166347953 139874360 378998857 218175235 768521048 149029329 694401445 307042292 725885323 59866954 368290638 210014861 851895799 575333074 635436703 318808155 577547388 498713686 793493218 338087119 794196628 635006948 778739786 462088039 758145399 724948495 845167399 157219215 894634499 215472010 590285978 107483961 951459485 286960156 783766620 441053665 884604036 210599522 712989717 42928855 693196494 389092116 699484159 154241156 964329908 11183976 502056714 230312190 829218373 544852152 694596133 476293027 914421543 80335726 777813207 339195591 843824303 396107949 640447963 564947480 995651639 18041958 348513280 219819928 649976472 306224425 775814872 708434149 941875856 733118410 733609719 66878719 513831870 213437134 658579601 391070714 516487443 209434144 611521858 186066183 417891438 374187857 438281783 87723953 351016647 282558951 450894431 359312020 530026614 404094317 453192880 347641304 369948968 200979265 220758010 107597251 858334310 168647774 875201864 650206994 740164312 579004746 796899315 782827319 799884520 529493997 812800912 732586844 966030217 350239636 846147587 241367663 535136898 286971786 699160729 129291613 788780330 671923001 866517002 155749815 173582592 109615963 773246090 614583363 996793634 52345835 76038184 72887875 411003272 6985075 240372461 114960758 621542162 13420664 135923761 112698710 635124223 137155708 429398842 250068611 492687065 294000101 657023734 305150760 515419666 401995516 562767370 347285535 663037074 306030552 680543932 413942084 500174372 382817911 395865397 293841179 424555141 384875455 721317300 656020422 933985892 406532767 704685887 147586113 588458693 581915297 834805884 712933847 937416505 493700267 855736849 270061395 651057909 649690311 738940658 425938970 674032976 521490478 597051442 106417315 803203983 679425195 769532584 5471850 909279970 231012055 832642380 705856811 757835909 404802330 546300365 323961933 716626607 161168722 921705096 910021205 954394325 355984793 998453450 421831726 649986498 188130122 683796337 165253548 201264744 73066365 534239800 394355126 757912009 222343547 674097623 660532644 968715930 164287825 835501187 709561599 760867174 751981288 905659221 516510859 699641341 123685527 604073567 472467869 669708100 68369580 259698875 90330754 128185817 82264228 978957053 62112521 80821655 42917796 466952908 447402592 851131998 474911961 881418918 114797964 996777275 228703708 739461451 558225137 882688179 686810914 889872819 792555413 853668911 786530152 892254246 296215471 948273053 655808092 715337057 589435415 643485150 75300832 460792229 319796255 834383399 701815958 757710107 41828002 693511249 389293806 630042720 247567739 309466978 86704449 221192714 94276781 359421468 336044571 909052342 461264063 803620727 545341254 901500541 112568459 641784734 463394193 793688521 698002793 741059884 357803227 788658729 517988574 943953067 387201526 425113991 407442575 486620643 384436795 412789720 101670842 939711246 528861229 799003785 158320023 547023998 131129253 380691189 307260334 498341954 317856497 814451211 569304747 825335664 118706334 142809708 11440927 337237862 95115630 660955753 257397408 405282133 266929087 394699703 176700096 270595199 134170573 359017012 143991286 723686531 686433017 903094895 296951391 566376820 64656453 678123977 203135971 562208935 498377638 555217942 148108909 308848285 34848410 547139973 473870331 600492049 348677992 664563585 141550353 293159897 83050478 815003715 338321455 509437738 25706161 246712791 136559720 591171431 41598355 504236951 390881302 898296822 214658511 510198887 323779560 412537330 181214562 757658646 434981717 835196147 831122885 915128391 211427290 607073436 246359637 576583893 431059914 834633548 15482798 918526753 471173150 737180219 729142735 865038157 747523167 929434643 777737712 800654406 424768397 749895057 587728332 752666220 658472942 837074027 827719314 863104237 742643955 769253092 664231191 818965683 505544759 816158276 248688476 822460272 180914374 481893365 398020819 666543777 4980288 559806249 33905424 259208573 106428315 257117122 59850103 875123060 794336803 853457592 374395421 839330837 205425899 473787965 187900104 977006345 136181443 490602293 73799357 487977092 51403273 551609070 397806958 897495609 863733758 874580881 430054282 597212750 209245850 398582068 27351606 389006143 142272474 571560388 278720047 621897672 291563784 319143262 229918708 470960104 445082870 451253533 127683263 374374113 152908774 244378616 202467838 660708287 353136803 880582573 395037297 945947728 409910229 519460075 95399075 610075339 367700307 635596986 438608886 988655361 309717114 695049636 8726085 344796420 257417109 368225016 266692605 354211566 149735624 295343417 16516787 463409900 72567414 208343322 8217956 459318371 180939107 461610581 68559087 91843076 34041888 105319442 69710182 265032568 5026376 246366678 93516005 372960695 236466825 858754673 181955535 916132415 52124299 440462406 290868835 856521868 575295602 890231617 462756171 723723644 714445111 999251344 714094401 974215233 721587885 957445735 71779878 560796852 465442881 896577418 250507219 396601304 357534212 774233338 96460880 302150056 271989977 601022875 12570123 387336283 235973039 280038675 235399172 758516408 86496096 626053724 217420949 386093819 346739781 764174367 10927675 318523780 220252950 264243352 81014819 378246295 319790567 619742571 590102573 983652097 473724229 920241345 291870251 980804773 941842661 944545476 192478209 985346875 266240665 279363901 129021165 498664129 13713247 71043741 44270884 898105926 682317121 833596345 267951235 884511190 574020819 980669571 896820749 982510560 690915733 761797371 112946947 195938792 82023993 617754872 320559329 517333262 271454802 636776630 70429289 462274562 326012461 436347620 179834468 292905981 265296165 294023021 102002348 688458004 54196134 124911831 54607056 278426821 38955506 367310399 54688300 870477795 832738892 924732397 47052794 606497799 276536004 992646487 780011083 998318564 210757975 441075474 258478451 968602188 819399623 986543906 807414472 867205166 205103527 810737602 662902901 996860334 416558885 812091503 810579341 905059054 655520991 941924110 504634513 687003598 560441687 564852921 396673899 697515044 601843218 807743572 423755082 428692693 357380176 715413629 24796736 947335035 524108239 946919733 454075018 601520478 42246707 545491312 68977698 242525026 73650120 210810007 129994689 266223744 206622698 573001564 52604687 923675323 2995130 471335408 420002515 648584379 131961089 293134569 199974074 353270899 133965261 975328692 160877323 281687566 210886099 334407681 215503142 884136276 809216784 851547955 582977312 888437571 845341659 864846180 768484931 898365807 518404679 982791133 284123982 984075493 675150403 845076460 568525885 636298715 209835067 319243514 183506962 676595288 219096716 221623949 157530447 880633930 168362453 714207982 150398742 456860827 315467512 365611136 257221991 317133287 163461582 284178967 37859352 444097309 347634514 894104836 827795145 943454415 69008154 688551968 550129440 707018837 277692537 631977733 494468124 498839263 5430098 536129551 89860573 967521987 565206205 627411185 480709882 484158018 216921304 747688221 619552827 922193399 765076534 961151008 186795261 948393654 194706760 716854006 384744973 464704591 19573153 93699527 44611001 372756862 171679186 732148697 141253731 780718686 26498171 864846674 200036560 741822794 385109900 826437114 346865843 535050768 62453688 303677310 73344136 375110245 207736833 415849427 19211446 441482351 188874462 921514713 550081636 934963090 608624438 932943914 312535398 970173693 825999110 908151097 381325677 550671128 430788299 736215542 118805480 270366993 17862418 123628367 55254068 653891295 362273003 390182828 326922397 520651205 281469393 728078842 691714896 812965856 716396638 988887312 166626692 324635060 176893582 289100069 228106389 517751443 413295510 757069905 576168788 608241919 287505639 346129054 44131385 627505223 598898266 872475536 605731940 623774002 434139582 904092564 355851594 957932736 890527079 931989752 547258478 950065495 218930930 596768541 431015358 867770051 40968117 672770572 625681600 782768356 210742490 732720130 91597373 853731060 466523362 830504632 823156719 826233584 69935238 118435853 93492010 770851280 61874382 493716096 256803611 831450828 41839889 641164237 551245033 806794856 427962681 762947504 323221735 953836878 245250823 857053891 289105 788265882 361382288 971200963 445969747 672988782 325296386 343098748 233294425 941246279 56526283 64054140 30301090 759077621 584677104 819582700 588118513 729075617 523504799 979669388 144764505 288990040 264383736 875624974 772527363 832139782 14647654 635712306 549632857 876894951 583035835 908126521 707128962 730756035 371788087 752153876 607870136 970797503 779815232 973135996 378859118 946792023 657096583 727873608 85017965 310868636 258749733 565626596 2118013 51391516 48706469 878079713 143945114 762643006 95011808 288259950 120123493 950186517 652835066 869348821 508003855 759201038 557384947 568746039 133532130 481958145 347525422 730077107 320249404 768295777 653741161 891866889 482879162 748473758 558151520 849345442 411731480 952034467 937376934 938182247 320552193 553869462 117295801 530395399 11480849 259049666 99060922 994351991 770118181 825812441 143726766 793963187 447102788 986554891 734490854 763094384 322425431 555277099 542852716 903809912 104967797 423256643 120479258 474013629 61874985 612546523 58681299 866901181 864837716 989886485 725862241 755624856 384919576 945736837 449265597 539083419 389149915 895245581 146123872 320506631 297262853 774598360 101379533 458737797 79255328 769299098 517307023 994054796 276692879 711168002 348371341 781185552 336043226 459747690 399289182 861176422 855306161 950562618 110414605 811515214 620053176 883040244 6120864 8406272 1754826 426447696 355964175 683981978 418663345 697536924 502685261 820812699 665046143 911112385 467848817 693590565 483818492 809812957 128856507 885275459 123838674 677846610 209694224 534959711 235247994 481276526 386650195 974115918 613352681 705282750 234697038 823292864 147344497 751354082 325644333 338992750 328505288 619365383 607914562 695950926 56952608 410597809 65823083 562419706 8881244 414139355 174765038 718937258 248517362 762311498 457951201 910298294 69178859 803412686 423883221 911281695 154572466 635659881 232842284 962772518 64793862 244589981 167486743 777316687 736798486 975740502 761582444 797590327 754635273 884869780 189450547 422709219 61714066 507190271 170531316 965526714 39648634 190879765 90116050 670037325 248303302 576948286 131826387 571910627 462570539 465404324 18676440 863336228 146205273 847423613 696855760 876861083 245628045 879564264 822447208 967969298 740811247 953603524 85825308 425891869 2356386 546539887 315859322 594387863 346389696 486890239 192819465 379332421 340271290 835705539 429392929 821530321 812227056 884547063 504256952 594412105 118944596 825751372 181496392 884020181 423622809 923302107 249347485 617286498 386369520 553985962 95953360 359650969 310191840 634113968 270847742 950440839 155857856 297572864 271720062 681174605 440188741 623064495 445067167 959104823 700376678 852876999 211908424 437420549 192018909 435909527 7383916 642096502 433811054 534450059 346851825 732218829 438669163 879417032 299743628 397256325 224176455 951123735 147761261 154937940 94002221 632432144 361744888 613304004 483001217 766445459 739863350 829104330 298251442 847364682 210402603 686389594 24153518 206993978 206180617 425938497 85502506 582764878 238361829 674402315 175187231 218329127 83053780 686438414 526940542 590660129 585842847 993737214 760417361 792271422 109914220 192227024 121718422 314890424 54391681 681914781 162784959 805316321 392675562 438248410 138577227 904835294 746271507 840033308 39934013 960358435 198900333 624889678 266816771 997022818 438793381 706449345 17180161 568554120 53207116 140412029 42888312 438540047 395441214 633172302 297119958 343805151 792057 766513279 511952409 894734976 684411546 735535223 168238344 658689734 422598034 882759461 635870354 987261920 352440262 731315358 64070088 818697815 291801824 369661417 123637398 505838913 388941780 584286243 405998291 858413189 682532101 835005436 575828677 769799536 596094332 770966970 404070479 877137611 667658513 686872316 109555105 398238108 134840678 712351037 696293338 960809812 637581763 868769464 94776856 391152812 285667897 921374237 781126540 832870102 242907622 404774746 213059197 324831842 292951304 619080761 463627893 947787990 762395901 932582353 874313986 999350834 386318917 825541316 497916719 785937475 463001847 488101663 400020361 966949521 835500211 975600231 224837364 933800865 510418806 818623911 756716784 808476801 336249709 994637715 496876545 661980461 399357149 736922635 232345468 753168737 178044809 681832515 275963848 374615774 219980092 516292043 447952383 728343562 99378930 159086143 153787881 840507376 763566151 838942062 183196959 661318323 621246208 911962314 641000034 744139476 470826910 850038165 340678756 638166499 403614688 776318018 61561206 996111255 221587832 933164141 398929636 942324829 493507031 557762389 73388442 354004935 267245558 324124280 14669014 123317232 43604372 192864551 67753720 833098891 689577197 999344446 907785307 928132579 732635279 782000893 733265445 794655861 401457227 882377375 426364439 524817063 160024073 350334098 118354038 605028404 286527151 779563149 703344945 969634431 476805097 632764597 451350186 566111934 460875159 640668727 475778574 854555447 482551115 857111005 422135646 779561450 382686213 403426306 19463486 583693445 294495477 947036787 369831200 981223401 757551902 901942180 82721816 848829863 729427041 899126625 86895364 776154869 189039994 961462163 293963159 951377981 405929001 517076198 233568445 311692850 302989280 416373560 93516581 908845363 183750536 837525788 83829082 221484675 56214447 689774936 549231723 858896948 335555434 357489803 356720659 444882021 26632503 376658041 207058461 851233453 254184409 397139135 164161525 458703560 163495477 589362936 125301757 599854516 353197723 370062706 27114563 571089522 259242250 788568570 541365221 780331225 459057090 797577819 703922475 865102146 3361494 902182703 622844833 941797216 833659941 961255383 550444735 979953013 26184093 118208591 14705332 243337691 10320010 507713984 62448897 286912883 104572993 110654682 49863716 456608591 224809358 617186609 411601000 440637577 156626300 543786830 104554342 423058832 274096228 441029398 115416449 219718459 27500737 296173023 53141234 820618044 233345920 887934385 370853461 848199346 98016922 191939850 157056418 586085091 78147430 746562900 450787075 968127619 542758462 638402105 72045158 968189581 129027347 433029420 227702197 604309146 532406972 657294874 346394572 877373848 326915409 781492336 593180856 735871707 643048858 960902957 747487592 999443384 300438755 713908444 351350626 638016276 382927259 433649204 155352005 184374206 180254856 616779322 492566907 750890885 266047560 999389701 78009712 231420849 66122624 303177712 192262024 558671677 285227178 860702420 102657749 227797528 23321552 134942011 54135829 884879162 397318438 716607696 236289678 881900445 721179815 968646325 653509378 939438111 262349218 861045625 77447246 961610453 196959754 417587267 208175799 569273562 90994025 115631140 85565815 829375075 219707488 268632930 4727198 242778840 238352437 789829853 342879044 694308098 225868056 771370952 169648592 284492537 117165459 465264268 59468895 176286646 107251332 436357869 234923597 727495879 84239377 538054601 140483147 182135208 168995740 847749065 581188411 669909220 46428122 181541734 13365002 691204294 438228790 814124749 21053435 355887920 142743982 818692015 480243583 945323826 551663003 906087784 647224310 761185076 299684145 886730718 868270932 897644438 211729835 790213109 98766362 101219099 69121774 634414364 450374265 878779999 335285317 534178667 270974604 977035840 285547595 378342990 179872856 348103059 179428258 789157173 76819933 868228943 766867430 930000394 605185633 711767046 591643703 760706754 400254068 889695497 216563174 789385781 667018788 733420094 37485507 329506679 221268795 362917601 324095367 471215908 241036297 430724171 17420803 595942480 514205767 667749722 421156091 785739749 415767080 593035888 550761778 860876430 739364416 968719681 190501751 526771689 344531285 441881811 191505899 205453150 132607577 357576089 116498502 806096602 378757221 873926719 485312392 897235973 123572559 532497063 419163613 823659181 247448300 586911046 390650142 661444748 265277942 723424575 164305755 273651667 148717757 227984959 103783905 301064989 98394057 887352321 12024645 661551146 550535783 944932848 564369737 741651823 304434112 828193851 11297495 467814995 141063483 682447102 577312090 850559714 668374197 813779635 314439188 828540404 91481625 710627501 364611620 434183456 340380280 490831560 191293510 866173916 595360968 603364411 355706616 391013458 353121027 745117071 435706702 910381544 216134290 652969797 42427229 78195887 52685177 523119256 258464861 792870274 32338016 760012360 293719073 925758324 87734149 193782712 156763302 520400365 372122359 875320253 828205867 909925136 547590191 857234589 148438813 207486195 170034715 590680646 116240045 889989965 771041026 963690697 232016176 552855597 292681326 735553212 121773494 322373188 114030134 648923274 550385153 834312951 158687700 354796940 309904906 628942505 72346795 157659001 55133726 273192883 115883288 189221842 59818582 820906430 615866743 908831019 568760745 771904539 443057381 519338256 411439049 892417175 146618737 206210988 136911293 356997393 259135208 522537530 137020003 160469530 121090984 859139436 132694737 842139610 171207492 262549396 172609091 493998753 80914223 669935150 299518370 545436257 195440230 953769190 308700517 838544466 742528453 896873398 437584152 932247242 350123952 470978600 296883545 397176702 200449671 697978586 544480986 887432821 887205376 999880076 214506537 557245927 349461485 483407538 424628500 669800103 499662864 871070189 679695554 982625285 790662629 945861106 707065377 888002544 173023009 493163929 186034663 571058021 264174330 423493283 141911128 195099953 159979933 478047983 33551428 494189723 268238772 853742561 613321642 694581192 498726176 808418307 508900521 568131520 374610698 383172928 43775570 609606168 545581616 977400855 106504033 302431585 103138233 677319256 137025638 297408367 274786878 481707012 111621950 481773469 392437434 918645103 693277582 944770011 236202156 903479014 384224365 796742454 255176543 348741128 77774968 397834948 382135894 840321567 586306240 642890459 120771457 287462500 96282800 364633567 264989873 561320483 229868677 400193477 266100816 811204178 35623186 775241055 551178214 713467123 161705221 173123496 134654112 468250379 144625363 914556210 724224446 895829490 825507302 991454359 619773742 747376489 390343452 922047766 157766420 158729841 114781061 848088027 688540882 859047002 808648498 829570809 618665867 667865706 124018164 364379642 282794016 585388187 566352212 835507970 514511169 919799999 622810750 790274634 537844734 651718808 39539157 563387643 88676580 545514981 410201964 519359965 126582939 192914669 133101367 865723917 835372022 938999583 436360931 969927871 893496419 977901800 304438206 713647064 64826834 571004719 386998796 705970009 22394536 470804163 186789806 920542521 173925158 476409969 308027273 585570284 273616099 470004502 356231201 702273044 111496568 274882465 240264957 389695619 105246786 153194942 7972224 503005972 365324383 504783410 222734060 971994189 222009942 692904352 191765333 412946490 134982046 797373239 338986055 531938630 276684166 781533202 465608193 625620779 33426728 824394688 269683279 997323958 262348211 933056902 267379089 569943674 104393302 243348891 146072948 584400615 544999618 580210339 315892470 868806547 700324459 951729672 136393813 918326045 18383032 497280224 372653498 697501923 142479958 302459475 286893434 397517888 379150672 841696786 733484304 756183516 474101982 724606661 266364922 647900716 444931169 599289729 210069893 662300724 648804133 897677243 228966486 794624503 184003671 311435671 160349010 320934879 245489857 879436986 516690024 733877022 565883836 598833010 275531714 790920592 160127352 635310760 261703490 901933038 390640630 780649561 12637224 453234026 300634639 969054750 185802799 361765946 354597825 370643047 363116706 430747563 171464283 204734944 118371621 546585696 122817558 251535875 56543014 149914969 88842917 756090304 32418085 464050854 117890491 175249235 102497963 655957778 608708918 787292650 304290478 539478760 152732019 538530759 316434749 811846059 29648816 683142560 527609723 639594100 528910846 951409472 687178012 953020772 265871896 771206881 152667414 292146608 266781288 794811876 573804643 712596734 483264551 957938733 763024188 788580347 118880101 685338077 653878238 973212180 733104372 850314402 665220469 861314730 773442872 974188467 464087165 735291576 90292612 605188875 590369300 647583795 27083629 770479956 244261530 771783857 110851647 923122867 56168968 68570618 64425629 672775798 115694525 659654362 291627120 671929210 13384897 165000707 150493738 943503959 629717619 852269772 563786519 964096844 260414475 818492229 454974870 956163435 546677563 621026879 552944990 624887935 145333456 379505993 89495428 884627101 451564308 885589754 198362777 795421582 42575159 309058962 240239643 306062624 35428990 953363153 435277495 837236059 694594427 770868822 620013635 962238437 496076323 524380148 516488486 970303007 376058605 856594008 831263001 930472341 288795046 472374477 22584931 432199467 378218387 554462595 280901031 787397472 783562275 854202194 282196545 990883323 557333358 783351588 505517661 962695207 343401302 598101966 469880790 500184107 290691080 817820125 369855973 752081509 729452453 754344383 625314963 662935819 338132046 691956284 644554993 936095594 514013525 722738849 494585597 869013982 300522456 461638290 359687252 560099045 559669978 780293053 707384873 776979870 540833317 727468213 700078197 996335185 371496584 620583063 589387647 767532073 757093039 856665627 673102486 908699438 372396535 492274749 394141555 553303745 439044368 585048959 14457681 597289519 97904043 942016523 412771872 851455683 101100469 754617715 71716765 348433994 171854106 490860814 375371552 425146173 215940627 705112005 538389363 775928396 189744400 771272880 468398360 665129399 616127798 839149960 730282719 864901102 842603492 945588124 159289263 949375029 651667728 895704771 113766114 153311210 52792074 146561745 123195849 143200593 92057486 790519594 28155969 404322353 249630890 385036221 55206647 657657787 282626818 893624057 485206015 774814950 388033146 841080451 66595340 501471245 435124194 572199701 263216793 920411819 334648722 512728110 362548744 493426204 96587196 197187400 14662342 948313042 207495845 468699709 267648487 496921694 350696189 933335066 238312644 971973221 630316729 945576093 691158691 917971685 140893791 817340980 475731653 887427688 238878699 523983074 29526097 55237899 46721289 247486507 108763061 129748324 101530736 881045294 141124380 905860233 613541511 841945182 134791143 756179332 548463160 582821285 276129838 834023694 236184347 802624579 448469799 621871044 51617152 621577756 153675285 224611539 198630413 965188679 590422192 926618577 899433639 976524307 926787009 963098641 783733442 815848056 630593807 655205933 194592909 315390733 33370479 238556110 26332858 877732784 649800116 807790167 519785472 746168122 512894288 998563464 364760781 876515705 382567586 826035447 157613555 556320625 313606824 551472000 378193242 913761205 370560493 712188885 667081510 675238584 166414231 434941484 46110998 824988919 527251471 817182591 139981011 447466949 56705784 563569553 486584700 642928671 534348256 764188609 188692640 549673963 449630318 718069800 560952851 861925237 517799022 650974297 41321683 208735381 124291117 204846974 75457030 633818252 208838928 547711643 3201174 562673331 404904649 616131445 506962365 673197805 598833047 697254712 484771543 899420639 288620518 768257912 415279936 656347384 199294018 939846000 651678206 898923177 4867031 543354329 300363581 509758415 26030388 522762175 178112196 637517620 301754511 759961124 719015202 784997012 429224422 580028328 28965201 876175590 294260594 981454915 467675477 564183428 235028905 703101426 635530197 731397020 311610004 901616001 72915010 295974421 42388954 954347634 516847010 705916398 219788682 431550841 216149746 703415793 440118053 834221423 554185793 934799949 58218547 956672950 55978019 986501556 947854099 952404762 480703966 840840026 174032763 838073159 521976678 983678316 695021368 749581184 575917486 768284663 301438976 421034087 86066592 248291562 91514264 571343575 263303937 843304157 292273353 345555035 213330884 481265386 344039964 801598139 545611202 906845440 399621186 987045632 757110519 787832970 443181727 685993459 145569092 890768828 189791359 594737232 349820492 689004303 609896424 626896042 225058624 519614631 145811939 247729915 233537463 370647542 11908378 495547972 223993245 440967246 387461678 389328397 36387799 281127979 174823748 226180131 159129317 834816335 464601422 896849184 841649895 902297265 261628875 884488028 724323622 927022845 132150283 366900780 319343618 585016168 348281748 702472993 700948232 963899007 680751228 982698491 790873730 918775361 60495002 482243020 219297955 780338733 180099744 409232819 184510897 297205754 196456809 863208476 646961665 945254403 607251516 650002408 535123073 537520809 109514872 912099268 159560278 912814012 34155187 402435437 346149538 944437721 800512105 826900002 273091167 348333408 106541552 741516986 365433285 687380957 682076736 791692287 619348956 981691098 805044635 951259853 219603640 560679829 430452479 944082146 773669689 870655253 3781072 349498468 300023340 582485869 197922166 501773322 57755622 361370893 69394338 648467930 233726671 341964519 133919415 141470973 93617742 672686974 500536633 736796476 157793585 292658173 171329969 258409026 149923272 193006712 103192660 811404178 461540990 775509224 454211366 517816837 311920853 613420050 89639733 593878707 266354429 761964205 313811021 397312007 57696904 667044794 3275590 466581237 321413168 701275821 446330925 968416117 519773560 801893232 714600816 944702435 312846553 726017589 45594351 318253234 42756755 44700195 34784595 514843229 218593090 578558552 63090319 681396291 350544908 470492372 368849961 485941842 170098750 647485518 499882232 754272635 482324039 566365608 556994173 927339629 770897762 853186302 407922065 409062166 92769373 114653928 51197867 895338467 772918950 990130830 414163115 484709748 126472032 177040954 133538080 762367707 123599904 639853084 186553956 865985934 337296810 615678746 139040132 537902348 146226118 648622236 46878269 620197731 145389413 231901373 12555062 92572431 85114464 477547826 169284144 315362553 200693251 405286376 8582139 191823995 137695345 317208977 91286037 847058011 842491219 994348291 120274692 828261278 434153663 483596285 405641727 575868547 141580281 414998297 254816831 818952971 649569529 753001661 129955977 562711404 214079608 985376107 807790302 851024974 291839973 936370723 881228351 886070109 601119455 708660585 455387285 598945308 104633037 800774164 596952083 808751444 490217121 719154541 631234397 810413804 323836532 802715910 181982668 234605077 157269161 670858166 23835157 994964686 669825623 692412482 544320882 796250262 479020264 514840515 147223382 610019011 501085754 773609425 624042693 885512510 71902883 399035862 372472113 532550653 308085157 604922330 177120338 943879277 235075260 961979673 339366255 731323021 84841553 148918410 105639998 385636587 291121356 358319358 306580853 842199870 166788052 183172107 105475930 817697052 236063102 246161428 72702032 552423446 220572825 797004624 383954556 540277212 62683408 772083663 351739067 407912107 386245613 700355966 309494998 822123798 813040666 964854681 423003250 769629514 190567750 550178829 247279906 875670366 843423514 940818837 693809817 848011688 500616083 848604567 675649163 929878201 252273049 753408083 184639245 738763440 509873582 942596955 23246060 468414894 108834390 346365287 146931721 419824508 132823794 201293282 102295214 427623062 49723621 586207295 313070386 434499110 215017503 503941024 98774463 826906092 822478533 856604953 360858989 872962651 257795748 942262965 96674550 710927381 443728155 978336447 851223419 861856007 850559641 969617871 60310037 325965515 269048581 817431617 675520503 988719139 617303167 995133598 239144613 562084953 537957442 849173444 539417596 723745059 423875511 888325672 312496035 556372199 54350271 442652935 174206142 505370878 491207131 943254180 584927857 821082181 714708302 902418883 340114075 995744569 514252893 962132755 285753233 658540701 537513152 948294249 657046175 790585418 729408441 874244348 79940819 240677053 71905528 133546657 117671321 850640580 134265704 283445259 203323612 455676234 99537522 319302923 272000335 463648919 246341389 572703088 208782724 802756405 781588174 795918780 204051444 543199307 407447659 573948478 55706224 96241339 60597459 597196720 382675064 534738007 356838865 721759298 372586455 493111248 230252954 603254988 68570824 660010629 328014054 545539543 221715489 570788496 484129096 699670194 385856669 838173155 706895699 799633868 234786878 805542281 520329703 796021125 477944391 863817545 529526375 982743675 112146411 884608909 587807341 685314784 527261284 793222102 398124919 758037060 173241514 395903232 354626381 881112393 764181780 936361999 608221145 899975452 883320064 903483759 345405798 771311376 487054773 533763536 331785722 626349127 283939435 668636389 128489815 572218867 141024924 506859751 470320950 573907903 557248538 710196344 39189839 634751228 415630843 482774746 394245122 673986575 361236919 719268055 356013445 376051060 70689538 812781529 571143645 805784676 625220389 980389216 921717894 949686558 171957334 356959047 226013161 445676702 358528379 822391305 711600202 917656636 390021247 573330906 252167679 959871610 27208917 96848112 23553148 909798666 527163088 546515252 404495057 873080527 520683908 740257561 84920538 280176190 16696114 962061329 799765001 829238603 470545413 923092698 341404860 617221668 65301901 299388958 272205168 861130904 29205228 207600642 73189822 308576527 219512934 467470741 267545322 965308662 22781479 776813478 582221470 843963620 20065640 575971200 454111129 924508360 186612308 879758130 496459042 707684440 531281560 839483544 97708851 344419025 334040513 837412825 754550677 941458508 248758317 973814896 511747430 842990328 517862559 535416101 112615465 667910766 282389268 528904373 330551661 447328758 152801413 968192352 51332160 478366801 422759927 659964806 19195249 137072206 99947101 257536716 158123264 387205944 128310108 223985331 76782155 768087015 645869621 797969956 337674972 867678239 232218674 750555927 199704388 470740550 109319003 199863182 57495084 298354668 228768677 589640973 543805758 986345034 380725453 801220969 431682381 837185897 656718053 670976699 266880760 350852118 115427075 485633390 3535580 195129841 148510944 278780710 45688641 171650799 51285926 94429152 5309895 586423941 81189717 242298813 80303707 251175334 133408230 378383986 154184038 674276876 153390451 962563636 18944749 621862819 430651349 900711839 724145543 799058390 542240264 784820267 120042910 670508983 496800288 598542101 168009566 411109708 238721276 479342984 475739177 931026669 559087083 993827581 662308035 792640429 375617020 850176027 840877094 909265905 764727538 889480278 15665865 323449085 301633870 424972040 166830857 816017260 510439271 621519293 273041904 818961122 562188023 904104199 650383320 831857267 706942601 891427680 313557490 409377281 213135241 624400992 258525322 511162818 501669287 540696222 132829454 714700034 567883623 662976960 68698695 450417099 106423973 180008980 21138753 541946276 161947679 416333499 353513527 601083812 466090968 588687980 231762449 684289859 332819426 615417357 512391595 591120983 412282422 651807641 47276119 361128458 299676033 498534051 450897693 820534917 295372244 715282613 642264374 930505511 622723865 740146246 387694931 520511340 415265284 726319247 435580649 800310738 376691750 864906791 399134881 507706522 64582980 647891984 94856254 829960152 525956403 745713079 122489378 512441702 1259694 348619316 48823696 527606887 512479086 754141876 194698006 926336473 327880068 404455106 240696226 895488712 545657166 653139177 274840117 812960947 589587695 803679189 277138685 772051283 207046098 344006825 87630404 720072441 222513994 410737768 43008884 282276732 39792838 84682380 73421899 512914804 311403047 450882708 384887014 880601887 18865101 827849803 287530166 347287240 308977879 849076538 816194747 963257963 381788232 728190067 679439607 862190539 715073949 920216142 548308217 896912811 328124062 735804868 570135023 676459231 649272915 797284294 702815075 726536586 385994094 740402613 334619134 727020011 229788809 946502800 827354880 914656392 892709035 952157881 524100800 950200756 309769649 666205074 470495883 675040180 623110518 985960827 234590914 933720928 5173024 376258585 12256382 42781296 14385358 517596877 516991038 575636398 572475694 781739641 730144102 867559150 461164887 808434283 560250752 689984401 52660690 650026549 44302005 511934530 477835974 818886517 525541481 584868537 247781927 598516679 464982095 901495842 560097875 910587357 162550883 535988520 436935475 809776757 587647792 632080327 212306608 577532685 26747958 155875182 75410590 915736392 858670412 919040684 696545000 806850435 593165262 767955475 61929119 855258307 391795899 597539873 25593714 853587449 208414512 388404232 131422701 382378966 301124700 670293917 382557457 752662134 504288580 642838205 163244235 853295206 25465730 343451549 16505451 75356161 74396496 542493794 350473639 587116093 279905838 453483091 138285951 530561242 236512245 616973984 393570861 711586244 113850980 213882757 17074757 699668168 582167758 948539934 278234220 530181634 393603008 863110898 759501492 945567586 186011524 871662589 12337210 90607724 89252967 588819214 383235474 399443908 62485320 547667922 14718518 201642648 114025374 643120708 264175290 828978841 512476856 684438262 388532452 975309452 352616824 561827734 322220773 820917047 114671658 962143524 901717008 975016592 29073943 748982336 392231155 585903545 391683869 435480390 187995540 197822607 56693260 113273755 96106134 831130551 750544092 935731654 74786055 105554829 37909512 251471759 231269709 907518331 209971184 423151045 306432731 314128176 23462850 917853972 652881265 806121413 328292721 527058287 342765324 392755318 245008482 292100882 150066730 498885679 231032809 618871080 354890055 964264347 652192641 655662606 34706740 958883122 827995938 840698854 580913829 853596394 693714926 848461311 295027834 984153729 200648647 240899759 141513386 727426440 112339497 271626438 174832831 358640568 342021961 584593412 174464916 663247149 323151758 784567279 391977444 565025979 162483421 543053151 217924531 861528296 665047910 771558470 86951763 452088997 395519024 588643318 81739896 573473966 312296752 628477920 602250672 967722996 941447950 988482087 19965608 873916611 9265901 270677754 213451608 807549964 679606692 760995351 736924848 756899386 123252490 625989774 255408856 329612444 307821376 759617147 224348124 246412496 26760461 224201002 49173841 881422263 463228044 748616727 217479780 350039834 29201345 584881595 224200757 507493298 170942919 679723411 277131680 881635035 449239127 714876501 568292186 834974932 217740481 781833405 54888301 210939789 168861302 899464642 350276864 503390748 140564035 319828376 144945887 542785929 53954585 224133809 12365477 986386349 289970780 654459826 182509638 940682869 613833734 846212588 559235740 561436528 278066785 422508792 345712400 909040684 603164042 903220551 877258951 986785279 76245135 943112637 438739182 625296398 496104826 754231564 365238704 778425606 218353966 720240410 479916858 663914756 653476680 861291197 522862951 881614727 823406585 939012804 694252820 952585689 869968465 872313865 613421708 886202380 250832315 395108720 311841985 781680529 565423775 571281508 339829841 468734005 29055379 588977429 548043485 825732656 52191853 376269124 98504883 361082382 34032851 315082470 91851369 680650417 648058937 743235427 208908623 562249410 8785604 442067224 63886116 493792220 386422451 422864924 213615149 461221460 8764448 900164810 240383435 859698622 356588785 862375576 556858158 607938482 23124061 990582708 596178217 824646156 724687487 805630661 397893000 917605678 597261148 934181943 612547503 912383568 629270890 649214514 61089554 736323911 265955344 697022877 271000362 746449679 607193223 860710757 55938807 888636058 501144631 552579877 211455270 789166103 324781469 412917939 140248724 475101916 361142012 380779214 373213488 386962941 219606277 743008465 460661000 956159818 544852242 724800395 239418560 723397704 105513491 164591742 133038194 214260770 114591487 950617001 201967450 986236208 823531429 927382876 742931299 789318043 29858352 970017894 205298675 453888447 85293717 568610207 181011141 789747237 482023804 951173995 586401166 684953294 484045397 841531056 319503056 672649548 53806276 489471341 6170337 812059960 290577861 564850845 113574318 999961891 252305248 706418694 160719722 577853536 225520558 254389786 34614329 855495270 395354593 450158144 80424068 995371462 944800014 945118612 596676148 696973156 157136425 916161324 608399156 966160333 510159519 618611382 480079070 504183157 254758754 849856577 645834983 732609228 545598222 921777299 76096327 460861931 94967819 381703221 326701315 373261132 280074297 697967351 387098665 654568755 613881758 780707671 70276544 89269497 22845605 165441712 152731474 751557660 356898567 663679227 331747278 826879024 752515270 815608017 80619012 497744960 279162519 996612854 749715967 840557860 500104369 551775618 71301025 540118544 452446083 761697692 182175759 224444559 174001703 965325856 520218559 933219070 746622667 970814215 192600899 918251229 301103260 884548997 448313181 566675078 152597854 554069840 405757764 706045923 576309262 580481775 33956589 106222335 52759904 774686647 496958868 642608025 221267417 810395433 350843050 492811075 76797376 316404660 121732027 733684715 139252229 993579474 608509330 661789801 634376343 949392113 879300036 902372049 15392390 731185711 275951406 878902070 30271148 176123915 17907730 927805552 777083725 830319580 382516053 888653425 332991739 534551361 200166139 912708337 17043339 392885346 148347928 517394614 184668129 211433792 46272225 605297146 161871985 788451767 769149001 975757166 290764587 745190771 313051533 988375025 511632847 576677843 172227657 256879514 52421359 298194859 227291721 983985098 65644095 511454906 215543191 536631164 245036828 888102132 430382735 446557010 238477199 473557225 271669038 912511412 228938832 339621119 115285422 147778950 73778886 739522088 321540645 849320192 472887034 755220916 732450432 784902581 136895467 889330806 336947536 496459274 322605578 881314774 647170395 848434899 497097977 889483292 478189616 480449374 196770949 636323246 222295107 335196451 76651519 96152242 19263718 534774485 409326740 744948571 28417026 367875524 244601480 951425052 743501986 752528615 27342723 421575780 158566951 467718912 66250947 883795608 719352792 768800458 667722731 760396043 671750255 818952505 559217934 684669488 146399674 279829500 226952153 523166051 67021054 439145686 306463669 430341115 291959423 682034331 80243565 94659107 56727622 165157077 105512188 854998066 442687143 859051691 531712333 726396798 112180456 410289731 312842150 622908097 270785178 582769547 221520485 372138352 147622064 511443541 340406731 483605062 417065438 847561721 629733365 909996404 527557570 971953100 244233177 326433806 253031744 526821418 235284909 301006503 212428700 754336161 145763145 757306576 61246690 227071726 104325489 884966469 190343794 975588844 512108836 523578254 421347211 534880133 81620555 582214152 250632906 358901344 122445861 582861095 174968149 733489682 477602742 790292566 558896299 576811357 1945815 949572550 580445699 918947681 814308891 932519727 42912544 747631217 137442631 266596456 74351396 442280581 191898635 343963055 280032728 521738639 91424325 249864029 144816117 372084320 177032865 390774651 180677139 451161209 5024213 466390745 308122105 762291736 560898755 853949332 741106848 826927452 810399288 927554714 744345142 781209138 332018424 757223573 519050279 962143002 479505752 490611710 394662644 591340035 375169739 677158302 38505811 466873688 102264229 741828573 573128786 858804319 675982294 745535232 403272277 668536434 275007884 553995334 408407288 495045947 260987153 851439120 54305765 982033411 592253269 630916500 96326613 171744172 129601760 195764063 24552667 468694581 28022634 336890094 94687582 96468786 8172907 343864200 150788024 151797815 61318106 378839098 280789179 290776998 255973500 355354845 109989168 571772601 443104088 867962373 641698046 670286369 525402224 996336172 518191991 728560149 130149173 263257421 140500426 857283661 253785523 331109349 166461788 378119494 264970262 965098090 137973202 930616109 209367163 533992923 65848292 509872378 126649868 694611641 624405101 729856056 726402337 965335451 379087290 488549068 49424240 643300698 36266924 567413667 161549090 834711229 299317256 669960773 121681601 305141839 30351431 250579932 185808558 738503643 615038263 646087654 417009670 528645803 431116069 680746664 150556912 989342223 804171401 876463986 91704744 900877975 417054264 622774081 508469144 778049185 766743557 858783150 191560553 712437173 595906191 604157866 267992112 705113514 590721904 620804971 187275299 992386448 772656698 840913449 374430892 829047777 398264101 828188746 420793944 901610041 479290417 948247392 655531319 808217326 780716756 999439363 482617658 839347495 154058391 670572376 323159754 663444492 226233002 996402492 606040660 687019702 636829030 988944438 317909979 798102825 199312679 371656051 301240370 637779776 566311295 741594105 703058225 935813976 168057531 678738547 2766789 233143478 154257391 201796703 64220958 973780399 12982792 345110687 112130193 276860778 77591047 604370616 550751291 687548461 419090677 662438370 16422482 605408209 255898489 814908438 500734804 835824355 138297042 146920438 12127872 403993576 5729106 854987584 752261963 761019171 304538835 864866378 405993390 499402103 216683682 610988690 409626130 996776257 11661347 838217861 442154676 691689263 6563637 12876270 615581 231322192 73029418 595255023 211411377 725016353 378091362 666812500 282525444 954472929 406085760 442985573 187879522 396523284 116581098 665286577 84272228 459959887 295642037 791655355 293513913 360867310 177209600 873507628 570218527 894468256 122434167 291130148 262910307 811106777 33360904 119385266 100209838 194290689 90585646 451420159 300608513 324073154 200070659 911532051 714708719 813624633 667434824 876264316 218894327 594327807 371147323 508353721 78836144 526773913 79099743 763304545 707628868 970254127 816699927 927061651 763311462 805295342 486463423 540284567 5550021 600209476 422411310 834573046 606286605 916966541 2622670 62121278 31470200 792841740 321849478 321894203 174827768 261344323 78969725 468826266 146667037 205589771 1216161 96747124 17527589 975099792 762728559 858905559 650218354 821279763 359419713 376362101 82188053 687395063 400671735 950770572 878969884 934982434 889826634 997787410 712766665 779993437 131968469 465965635 108705292 576361405 299675938 300114150 199333053 758056798 314626169 439994620 188900220 856295096 62937082 874771422 7457067 397529401 294220709 312932500 309081160 602670587 285967233 327241135 324189576 424589006 146913811 575903934 248656339 412148242 104744494 592124677 15879043 523977318 21139944 129628759 45341202 627608115 329663091 340637792 220452727 245563823 17846707 933301795 187537680 536593094 479562588 867142555 677643094 931831367 534926219 869005515 368793435 872914436 699531788 913992579 457704966 892732886 274547106 533998132 399584088 767848273 502830314 672126553 291295348 403869267 343768922 985146574 429555842 476210554 34306265 483344672 143375501 250597057 213164055 685320601 243056340 949132984 869769062 875474066 45726792 641574944 252742953 551097250 390420204 802948376 624460864 669612147 540795372 775817986 504450146 669694805 566647939 891330262 339749479 690438115 210350934 315277055 189498885 290697098 256438893 986359404 150082934 262559848 132675728 243468370 68363191 763996517 111029343 169006308 4408005 376541293 226897165 613535402 585189685 750618465 670131004 968479967 492531274 791280933 249540126 367099908 299563105 980655998 630588489 764414927 625629583 643541657 115321842 168107533 86275736 329987734 89403957 886116421 447426566 506324858 251892090 353655207 197158850 341804800 300770370 337094827 47518076 385641744 233789063 934287707 93833593 452756695 133239397 938266255 208628127 941521675 669352502 887527063 75247190 374911863 25164483 628141664 572215307 708635104 311915637 339223032 323218639 703380043 259495484 727540806 7306908 891579589 788015783 856788939 104799690 151722458 75787687 915281989 128111631 523887386 496184344 684201237 337491939 757343691 723457578 793768857 63185871 86304896 16715421 510050297 449534334 790392095 763726112 997994536 9812686 220244248 124776076 704094274 316066221 699254666 150397096 861761282 412813910 916988530 858024072 921839548 818333971 818633643 803519993 877616018 428130238 925520850 789803970 811980531 551287912 868981741 19033299 461068042 125385379 186667132 26061055 997303372 740193180 935638993 751938975 810674675 294380990 807829179 456222495 802007847 4346149 269437565 16966011 517638001 219142426 260609934 216601812 487755221 160800848 629314513 299303205 705141251 480349588 527571570 295341747 324169473 45115282 447719679 195841226 986867772 852512118 956900372 366285181 550630074 453107507 729238374 567377806 682168461 485623780 663378836 417774393 481854005 2000170 855196964 788119695 872023565 87853101 206445712 88421996 749292992 725172969 902768339 188863152 824230397 580256558 654035839 486916802 530159204 80377388 965344560 203202712 230117324 13642919 421976116 326169336 572882667 245152618 815637093 579047421 846883750 594193924 912006482 444676452 545218811 14369647 132344714 76198483 354728449 40928697 723692265 184739844 503070079 367912688 531419242 126383093 449476657 120137169 525303738 249436738 970531540 76829646 693800643 678985283 995411996 660784457 941907414 470607416 777873037 269310890 814656274 263392132 704767154 3117170 192407219 28944898 615706366 69944216 982367854 48291788 368983293 251272343 528351727 412326823 682864422 370856164 612761812 44602576 609612406 144932471 888571404 875816001 879986106 33208706 51340740 4351141 18229800 3899466 151447025 103073885 528349946 206962126 952703655 828808440 858085354 202903634 678932584 212216393 224738151 102245994 788339219 692702727 753925405 513455377 690962568 189658162 406465230 101493847 779268185 359146345 721993192 113474058 981392037 381139538 581956051 521964521 732529750 670822373 925205936 570857680 852354903 784903158 816158885 767875295 784448781 361588296 490578205 82205660 288714600 73026714 993188316 927980403 960386462 236811105 576952928 253292196 472088039 22436453 928472003 222195068 477341051 296752660 325341291 47483930 995119757 637426545 927907532 863390335 907258360 454398824 798022377 35630953 540117141 52228221 270574810 218177441 930019336 428731727 981148763 687148720 870315695 701354964 804408366 690086628 957491774 770497736 858741743 483479480 755072458 226253098 978636495 587483102 851460002 493505499 899655720 753112700 779321655 179098805 787838287 557453958 932669569 691280161 860938980 837803110 898125620 10865195 727245184 624519877 662119464 656159189 880075456 83836320 489540364 169053731 320434297 152198308 898938744 414105990 667558292 117123300 772261975 11203781 702669311 353716391 573197829 243344068 251762917 160637013 653835385 417043000 582804071 521492901 843512816 283629392 981823584 234875310 431196120 153559448 580170964 132004310 499177184 109764780 216835121 37936636 206585731 43016889 508206070 114600641 452908072 396273178 836600882 120292502 370854498 48822235 822113067 178651837 685252413 610628709 799922834 400044607 534885810 356515833 799838588 548484307 965808558 712311379 845460918 844642067 928442775 512181414 585319994 222715786 721113278 140712768 904235796 633951322 722390082 133875126 199012958 154161902 441895373 345183114 563400450 311749560 848429510 314407145 324010416 147270998 970309334 41958094 846112451 276716011 565105192 55130337 520041416 222669328 801926187 378926607 767021585 162099943 203312791 22964493 485930265 290878222 430811222 206584839 588637961 243073805 265959289 245566980 332240327 285463605 616326679 276324072 879074978 348328858 882262455 352858218 388298452 107814914 654722105 293823626 594951525 418059166 520565808 152734280 242282196 32342728 232518912 117527810 589533153 195928384 902175264 695409650 826233479 378337545 703387406 496009762 800304729 657810787 953403285 114321337 133501661 25712476 358133445 166311801 359297970 301466406 890833713 116091522 231899365 104368150 647509060 389920996 916468648 859276501 929266551 665874135 675669055 521593167 640243829 87075507 538417930 156374766 897669913 770204245 869709393 637020810 824225296 812559537 904918968 188239257 312993905 182816158 814408025 424610793 749782072 715197726 978029459 329962233 708357992 430963355 765311503 573939432 755472365 316367246 882891818 480180136 636987901 14412776 982487103 931006794 960812627 607578602 987186227 908372750 964323469 227405460 775183523 552505701 627574546 299544870 670230947 418564729 983154701 370478505 567374378 551797404 642065516 548462692 991242423 809154151 864878488 521635975 620555101 540379776 633236544 45895087 71001708 6765354 198076298 67470461 194577256 86511661 446541985 199296697 394247945 64761814 616639617 66904114 648549951 618770341 846946806 680616202 804062564 565777260 715600600 396690727 461037145 271583726 380825272 70929826 668995119 137663434 795846242 304295038 581143994 208468001 478651842 406623544 446328437 288970109 540961104 536679648 697807907 338699209 429381487 190938345 337297319 254632740 523611971 192494810 633176372 450462905 816843519 370759082 785995970 304669977 427947065 278872578 341712751 79034251 813147567 630764913 719811692 261552535 876842283 619690802 898508189 717014256 791311569 395711814 430306568 394656907 823821572 494010662 760696080 179897849 331158440 54306113 642508636 468176820 511164030 393916254 774452097 622464244 714173133 154188211 310958651 28746952 60651637 47021341 168032001 22641563 791510077 531208690 731946286 83284251 692259089 163321412 806745981 58395034 137871291 101075948 767038301 314625904 405956194 224098842 270419844 70631406 665105284 487007102 600681764 538090284 785580299 265310619 577136523 161676337 217872510 63448343 161783072 154776481 840453705 604735898 790582305 544427152 750244815 496993432 875395999 538672045 900964718 779370604 942405180 259871925 893355103 198562137 972266002 554860863 920130804 578948526 641413314 80942663 86067427 37798221 78593474 77665629 997368189 493890565 823296355 490845740 689257668 340298834 975010351 564858071 957871911 594347773 892321025 872949530 920363048 574768541 735550008 449758024 576882912 293208473 593884233 426168554 634236574 55645293 233439119 158266106 879197355 309527679 712975126 524923524 954615923 331652591 835985944 65014450 837223355 429889346 577629307 510652842 640731490 295255443 769690731 519731014 831856026 290436393 461400562 238192768 247941838 216792264 386446991 399983 799292824 723266744 734306288 379258999 485519397 211029313 263807477 160131810 670252244 443504776 494056669 320166795 874629660 661703997 860922866 293525737 783857733 298705165 621201365 555505635 743325156 694531786 859606231 262707294 353297490 89450244 257073231 220557177 855034246 117519354 347746055 120245068 949346871 845967025 980153773 271935268 747785408 470016476 882025724 122279519 367308149 226946540 607546418 224478224 439216429 330819418 337600110 305217886 573555661 304648742 843523260 596931080 963589721 136088224 809082272 24415538 267423283 231542656 670518251 452525178 490877860 349883071 853042984 718347131 746178557 528845392 748481481 665998001 890929441 284997337 760172156 286728083 545633640 428743402 747892645 161880051 892289344 348472347 754548985 598972253 654943486 29667969 627227599 547946821 920252933 359559846 666563489 377903134 991705108 433731530 714168007 219525646 493501905 485328165 774404667 128942444 730425035 222032178 437662175 417717318 742576843 44395261 475318848 310864775 387962228 301128212 663141684 70881726 703012753 100387805 309799378 239311709 375460639 102112637 752445346 440926965 919120773 346438877 589192669 265475374 479284386 83462447 167675119 146255645 915292629 102133917 351358225 51680364 121215120 66472963 542570663 203422345 992359880 140605274 502881993 193712647 224948760 101347090 202543182 30814357 114346409 43119995 119764374 46034196 744608646 24236392 250917182 244360619 473767900 271277845 506283936 171962698 800014323 703435758 725522282 63815123 124073916 50104269 895812971 502707331 638819197 71102939 514979220 148875977 734682597 115363566 592615954 87670073 729982141 305134252 778055936 421585942 462300968 277637051 539807292 346900596 550887481 318967762 591509808 580900367 642244305 103237787 370625705 280991252 967403681 920778411 953630024 596735867 628121366 263065422 567068268 419233311 482147536 407117532 881039940 199162362 402659455 345398574 727678422 193795071 787970727 151429364 470743362 81886557 474643251 229559671 965398688 663792281 804447926 592398327 804031037 163567053 722006434 240270585 728747453 591614101 607082055 540922408 802707418 136415219 357956988 143063691 680592246 129326778 176400881 169638623 350946603 198168157 860896869 737324736 766755180 449563467 574010322 40886095 176705852 102905292 568190053 429410638 782483222 576952273 600021061 151669735 901174397 893034713 955531920 217637630 356356499 228762012 647540580 366474088 574253732 227361814 534789300 516774693 579855815 1419316 580904564 566938626 615289687 287771135 866821240 374352256 696580772 653511005 700501771 37082620 492208438 36542689 291399047 76420117 853867085 437030049 744249932 75678052 894089198 591638241 816335943 655406039 816333565 649786486 885672237 38100062 666635241 329918707 520333452 279885635 401856618 64341828 926452991 744221897 863551100 157165789 621578202 222632470 880958381 18951611 495687559 443341143 585246337 126562692 885860868 420625025 450490489 376643601 952277102 348756691 458499837 399541412 800832787 312293620 797438510 80510773 583162642 86217166 656617560 473603036 872396257 189838081 922778177 833580107 986272449 657703471 694650883 462449271 794231722 221485229 262527227 11873662 852215787 771829582 931290330 138369216 723956297 267601045 470978199 435350382 766941509 20309480 493707902 95948432 128609599 67381928 937209846 631247681 763253507 373411539 518023462 318078734 348983892 305915466 537269923 1659000 492896409 327568976 782117378 719022892 869194259 141628402 575085427 570389623 874177290 677685411 825471922 279158349 377863519 204660358 309381885 224349992 414897806 287416133 967474019 577685630 694631692 308663677 696712840 573139269 697983525 476062133 988843134 814382558 962440592 178552718 584285011 331266182 791814413 599494883 750077219 709247598 846156218 354974577 411160523 347279608 416085912 98906683 623724996 518521576 696007901 161839360 887420266 861819405 983692835 633481678 670407524 591733480 899221821 29575079 818449351 82018721 796773248 771467412 796446386 515159925 894193975 84188779 476317978 377889421 569006275 356604941 537761700 334043427 681438224 516929118 814722303 658523075 775383691 311610181 783578803 754540951 925522318 743831091 962227809 682202688 690649566 270416477 946124296 708675999 764098242 624951559 949547640 455681996 729664551 633749776 969619122 415214638 781024118 505332239 645653244 131873727 513688995 28910080 245138525 193012280 597739716 548537059 691277675 415664316 909949489 92073434 356365925 81899782 496317911 185474023 343546643 216432480 812987071 482074821 925014743 39686044 978536252 391938601 759033643 520429665 798205441 555661789 802334580 29598904 211303746 48134181 903569782 151867067 552968062 43474353 779801772 751185251 817013868 647229279 946715303 243399157 513765559 478403824 739387591 387330189 560308840 47803705 836841756 225047369 964794576 654301310 776612078 396734908 439343408 402642281 973272087 250830240 650338115 51918294 109186333 44324805 344591302 81050646 682256303 446073756 611592541 412209881 662762609 297473036 724882735 66070350 150437132 75480992 354351702 199109416 948817260 607321899 963686465 692795414 912516085 223220507 770288567 36046863 260836531 214042501 696428255 347415568 672469647 408582816 785011243 323950672 781668356 510195380 754301894 376269157 849995020 840097654 929435369 845888360 849536981 361433674 547486580 118078723 791353186 356117186 778583594 9820290 767739443 70018975 537735111 266143250 764894939 114721772 489563657 355849336 467587336 35962026 370663188 294550272 836483654 471489386 538827304 345778366 784336158 358302118 555210043 463355389 578816478 371876345 939839971 635484513 747938673 293231469 640688309 102911595 841638687 292267726 380243442 214185480 334449639 97152210 137920945 36295484 351842054 317127605 333770208 262855410 889372165 864268565 887406238 513120646 717617260 99556202 377710805 210018973 733323205 464282659 880060418 193877063 794234452 149029095 291078170 262101505 872048347 279362053 998500861 222336446 738728939 336244397 914249636 701108227 978803188 584468093 867233799 423299724 774470262 474084958 983725287 397332843 484490596 313164970 581918849 173355098 879099540 35582871 996081981 642900660 799182821 107680916 667400461 433572790 746765849 588850282 649205970 335913017 852091627 693245673 805852167 489754851 804236587 278297692 609189617 591442944 595222023 545268738 903030708 286957716 568100283 92820190 687685032 630029700 800125873 713772456 730222097 444602575 675925241 476908627 717348526 392259982 776954334 259476948 339020273 118859711 180961166 155816454 609579277 393502981 501144908 328197120 418153069 286492746 830396883 186147555 981745911 111330902 784097872 261745321 528134864 287844413 512901272 131075204 416296133 400772976 610682666 345761120 833092998 509512571 685794319 607621802 802414770 384863572 474402599 126128609 227515429 10971244 604855040 598551046 904627626 590829618 849556772 699545186 824283339 528538174 861570862 386288930 883403602 826093582 997066217 703192447 808504884 171316543 179068073 142491132 506504086 4559247 882459091 520741674 956659341 108554626 116382381 25763887 26754071 23646687 402013537 95350179 169542420 162494933 900289300 865388131 938016140 150469945 265480503 142147421 863450496 106490269 960107397 374140421 994670610 487496587 830658072 502645041 743686527 610714349 769618819 194419116 688143202 522479052 691970318 598800998 652981428 541616633 856009637 219192271 508674813 188778439 496719843 281276788 633612579 332896912 573494895 369807836 873079159 626203404 737677102 41225223 607400827 58064783 190499667 149711682 887801980 770553089 801889393 250948508 420956698 292179169 955510859 168227725 666116985 397614931 492789602 322957853 770289141 103275188 171595371 104207634 758913868 722855425 869991688 581130624 667714390 35396517 357197644 8461825 760911134 421267462 749966715 190203210 347386521 266212269 828342703 155979471 217627091 89821918 831334238 507810471 611737637 268126996 306496460 118614708 447451899 294583642 576850465 109833342 394298145 263550572 667083716 634921873 805501967 532461329 935269299 821441934 952864784 626366554 970253369 46064440 163234464 155306185 434943833 379773919 683504638 105941252 986761035 716818958 988980214 189448252 316626908 141698950 556517067 251070111 361094510 228562727 973209963 758517783 815767931 737317541 956946910 739212426 763693411 746981201 837845444 680556715 723972089 159606213 603898080 314455294 419593152 399686002 726979437 231605646 245785420 87304472 652813622 621902361 623556731 104896405 397332330 339751013 864757912 843993537 908934322 608409500 711573193 325779959 491611185 272584070 809395147 406545223 618596852 119161159 971199454 709486278 766376876 555769927 987293507 851730888 908583715 621857747 759483273 281713625 773886200 408011315 878774637 336180188 548911033 188473118 539466994 309409385 310970141 163819907 585668989 267549816 941364301 603798812 996707461 522623931 701470637 545479787 667242452 151072810 358029578 142974793 332226959 41965198 870498995 354989621 641710848 241033009 710770977 619438429 805016158 570954211 813384585 346483426 576867626 414680956 871738384 326338188 640187204 541501610 846965289 785134034 930239065 441027633 802195057 668763799 917314984 739578963 882729786 686303884 877172465 410229480 579269015 226396681 337749329 330912917 575516786 157979269 373468539 220793117 666477963 645788581 829418458 44627576 963083130 514993177 588191104 205231168 376386410 26779033 98829072 29035191 170210670 57792847 300437124 88298775 966003165 132885369 610620606 485544699 753151435 125941039 709471260 661447986 723897538 16690838 712599484 205261439 597317594 417347298 888401778 379005316 983999110 486945204 777551176 117564979 862140557 67264670 581007945 287879378 924332977 260222606 564442271 450490655 584124036 494774923 775473002 460081469 533781810 227421817 792301880 204101532 473557094 374049712 522122322 7372856 70086434 20794716 328391962 177024029 690081796 124964052 449507793 6251020 500163921 206365856 613776281 434718193 476840719 7498592 61208524 34121503 235096815 45399605 142770229 82737918 898217250 374177760 476519179 291124008 452452978 33941941 53757022 3246890 463728164 356139329 814489789 460787368 539414767 408847368 500926170 195216264 197169678 59355216 71683647 18936917 139899026 85269040 503331967 308744899 458315704 4393107 161901145 68717096 684042391 410185450 764990296 694276578 727945482 153490295 884866391 93496666 712454087 702519987 865008425 808964194 922259718 397504084 986427611 469213304 713036550 123136474 779492509 678601207 766385230 133228194 928788656 908235179 933288588 796139532 806505159 363000809 862800730 303995986 311748557 297533684 765061096 529177396 692562979 550455835 663865553 159580578 739583033 552164422 871678442 811110824 877373350 803280017 981652967 304416649 554369540 144367844 621791654 456111194 622950816 502689369 976500744 813581478 924738784 753815555 908362550 249250270 313203653 258386634 643614771 289629203 428760830 305842134 803485931 14109952 919884083 89287470 779489622 767955512 806763316 119183737 600687562 506717432 696774232 545741196 663133894 5471174 288470789 31566059 644862486 259036533 262059571 233233378 297544770 103853190 843824599 146988637 859324290 818165232 845562044 616621300 993607461 603763941 752682703 617947306 986781311 426132446 777632228 540522307 849028994 247548818 658291468 461637605 818609482 111404130 682270609 127992141 936199055 545163357 986651854 842521883 989720301 178461389 532629574 90045385 153196920 103079609 826436796 361021970 380046103 343414005 487242199 181328636 288543698 170489887 859792877 310719480 537171529 276472292 809177679 375174317 946893448 61967068 278776401 196767889 825066906 599905012 629569423 377718709 798426190 369130444 633300108 485686305 947810279 780190594 966637429 650296963 952685161 598936362 991138912 932824865 948476500 927073819 949483549 519351594 751069140 741879596 954921032 88300447 862975417 352084984 592286017 69064394 592168243 204414001 743783434 688606823 795018224 23159769 760525057 112230902 503568548 81218448 646974831 524870484 704552255 573273716 796900133 268939923 797428426 255304998 807060383 124813346 162081634 31202566 956992545 311173913 871150996 826822623 834147269 289436962 463150850 352386063 969387368 531220527 637219263 431356209 780572644 567411671 709435794 431535550 838871527 776978040 867842352 507351280 642111809 102371475 150292404 44566010 893486065 677685974 690618325 257405320 621949153 334409212 414241021 19000671 184970824 178282331 762612347 452666286 592513600 543039147 946661126 255502150 375429772 42822841 897605476 733681463 992690361 46408496 989425483 425742781 833046263 315980229 546889822 449950222 919419250 202457376 974188923 523038199 568216509 98684929 402552947 275328552 899465232 265108070 979607347 935143854 954387139 944476351 965988580 935611688 961668026 300229061 474103558 230125237 491456268 475659287 567467043 360689833 511054287 429866060 603381599 570511431 868796744 729299714 802872594 132315427 293381679 139169892 196418065 147155099 531804970 82696952 294472424 174616331 754109601 263897955 826968906 35989385 588332346 43775702 916458209 411546642 415809662 166708566 930021587 603544054 855616868 152431498 769002651 366960089 595474242 116106152 184678328 95540383 896314319 368765063 596226435 359331262 738014023 229101962 799419694 227608113 569012851 392406880 916922367 115302008 749707800 416162289 817234036 318236679 442574723 285739017 922152794 665266836 701073545 488138969 542956626 413119745 583605962 242998467 611195572 496242108 975036144 519338715 823941770 370535337 418415303 118672831 732409323 290384588 825385269 51211413 134882086 77091949 982847897 527533962 972066441 861921973 862513443 746349925 945004952 569496100 898216960 856031197 867542680 741060496 769593940 530927609 632054674 109576484 291557512 151784138 640340091 429547988 659106049 195461718 219588656 26727865 193690934 191587829 225186674 176186173 664151545 499045735 928091310 751658987 771672211 299962765 843900715 5355058 16732053 10245605 11299147 123328 672199078 409123550 411366814 143193063 807247249 194493607 213738254 24418632 879358174 361919165 417845141 15942083 161297813 149729500 860724694 855987037 919880427 641767907 899522627 24393278 233652511 189108967 606483434 514297857 632842650 140541238 556589244 318161172 512273047 344188118 485813456 27239038 103396437 42788068 923795954 59849777 789759110 366683938 384918104 172755084 818037317 257799235 775118822 734561450 759779551 480045689 995552645 169277977 199065537 26265544 576521005 222258894 348310660 305274704 397781381 202419868 654083046 372628334 745020190 315537781 680558995 221781821 607335864 416674639 555077301 438002161 845396828 682994523 823833045 252891336 966918788 529778719 723820190 240449776 592172834 577438214 905139657 37441181 962016970 733319070 878634217 786414500 849343330 439952005 890517256 110347052 956965044 433016857 689700816 641359039 792995958 741107373 866649158 333736150 539486465 63575031 818269382 155805850 742116476 53756592 761218843 226071439 702572005 412430586 428349126 108647526 612794602 346401993 903733241 616434500 674482289 46673176 625997825 364883892 651276222 630330909 705526346 417446835 719913646 414925126 643126468 110684556 816271788 261989614 688197174 136427582 492313862 95078338 472319360 29685261 243916342 42748821 216643239 33799383 519478587 434088816 509972681 301205840 645125787 349008089 515022787 438546849 520844478 31384669 204288770 56594842 623716835 494677610 836045892 437184809 465881150 76919955 407123278 245887296 961540448 38331646 776215038 115040785 913219500 772008005 958833902 872994946 875986281 139476541 247457652 218583375 503728879 73102162 956448503 115154768 151171150 20545152 422966172 107702833 408214208 308144859 887022824 688653878 753450223 249313750 919257439 783338257 835822929 601654650 843243235 812881963 877405922 429926304 707856591 307532464 312311733 199522447 445387489 5022849 675056006 605185417 822531945 632894527 773239603 53021050 995569679 572592892 579577965 349275037 588104912 226127448 774613000 500531661 811937225 3575229 584365051 359038263 480609234 305799998 934315463 646607487 752262819 561848293 977097330 532199681 961363319 153063705 872230607 558815045 571013628 111121510 579522502 416533103 902270992 325407420 330798699 40930967 950567420 449362787 487608989 287518268 649011127 478288363 903116699 642637008 720787688 141904523 706625233 113772375 524049698 18761046 522155152 369965278 927563681 871460122 889457284 543678140 924563258 612043378 989901598 713655777 761989957 133795212 547210512 62616597 959039235 225735334 266038676 224466266 529961091 243681256 620733484 106916122 489507187 372256734 420990722 300008840 786537503 475132785 604843180 567273380 617025293 84008504 360697642 158594350 750592391 566521571 628435178 300268561 839807886 202476802 837924399 357301931 581203683 244644492 395438608 134642775 755181218 388072961 485312531 31701833 971498718 258941290 440645522 325139283 385807317 13809540 97078567 85625541 376868707 60882626 497800828 69643499 525384635 168131664 357576850 280429942 863284565 400446633 650989650 93397754 796588702 137590616 817977584 429367366 835494828 390240112 631300800 218177889 357602612 98101416 985471147 333842430 394023989 370744993 496139949 257858880 337380637 31764282 958063893 703517840 842556649 169088399 920425251 244294843 777447668 430039814 459277990 261211648 644471173 477694096 678669951 259384795 642791064 88040994 898787474 223772847 582021385 19736943 157034206 37603509 762458076 698031956 904777491 96649794 511461202 364949381 607936687 439412179 445265756 415615663 550958522 172945762 349089866 105395533 616784256 185128224 847303987 97358436 883694954 640416489 789068052 39994901 213437321 138359242 807131525 73966774 88811673 37879790 442976953 62636815 769436581 667692644 985426819 104006384 126700892 46836217 273597673 61767066 958741545 386242732 923063427 444798184 711401470 30230551 599535123 366746644 637897219 50431277 710928162 641613751 716938942 383730231 993983175 625404965 636166879 270430792 448691696 79851434 773564362 308810166 548814363 334476544 571114926 389117836 462391428 42035257 707278002 570624460 847148502 675394235 798716800 275716406 717341955 556341455 773999106 678312906 729350925 658730904 980145628 889510274 894233866 352919086 446440064 423075215 444104171 390497886 431778594 137829849 524934866 105990463 368506807 16018901 798107498 2371291 375973969 211197584 269130791 261234260 374034902 241131715 470025553 210039353 344709191 163804604 197344456 33820796 696831973 676447944 915733738 377794643 757525334 546744410 793801166 441254063 774912218 35324695 369981474 200279484 223813407 201564577 592103165 518790140 760278366 403927306 604704687 91623750 301090345 202396123 450879723 402526858 550446954 93117704 700013518 257669932 490897127 5470905 844421547 404784554 860134445 857778620 858537931 571710966 909249237 198971477 737588437 193553294 850108284 86839215 891336593 839545012 979407532 275890494 374382278 59492499 953389188 530428424 979631570 764544384 796667899 243389531 572496400 419316480 793225885 686147334 727003917 126957870 878147381 496509302 919846817 162741216 224353305 89962570 741614572 265671981 532473857 81911137 324787839 139216429 612759083 226383812 386523436 244070576 391494989 297890270 753977975 346202536 404610327 238852451 707945065 661598240 948056017 760741745 942714345 466553626 793959932 357064651 564356522 151530053 749016699 46566191 359132836 354766822 772088037 647814330 977214217 356021139 757603295 23255718 525864931 145730161 522350055 307824171 452007112 20064119 681455875 219826547 225821130 67957586 270620349 15183879 519959912 107687933 398601555 79411893 256379603 48541883 446839092 310336505 613227359 489166066 511734874 41574157 718930320 573773608 675342160 448000007 484846297 439049635 555067708 371760810 877784703 103576891 990092005 965143012 971121557 26439414 964428627 828847363 933293585 246329928 529298544 144543262 592098582 156670238 561421129 87172175 978795023 428148631 703315119 685706432 710294137 530382461 989275263 23072320 294403084 95864810 651583676 94952820 402534111 46844871 596761883 323587931 395648490 264066447 850242294 326913651 579087999 41291940 642609659 312145292 662585868 364974811 511029784 99109525 801213915 773278912 987773644 719955588 794584642 627505689 855949650 498186106 755449831 721379043 737436440 445549401 479153382 34075260 57808623 46313980 264314782 258279577 452996838 105271688 219799580 144929725 491048407 161907396 890190765 120409990 534242067 267190151 888589497 437321701 640043110 325572707 671742784 493045203 795269046 408849926 476809187 452277217 690964757 90126526 752912486 406335120 794750662 792758204 932903832 740578605 825198291 650173017 901879305 431432573 824406399 664738205 962198727 27587923 229703153 27443995 98090389 95559519 189096385 136039649 536837301 242365377 435584080 136123022 642616340 391404662 925281931 456778088 593499506 419947809 637029817 147038654 273907707 11986391 280808130 44437385 978761908 158055621 735690820 653648047 837284520 596226443 876773664 801771831 990040898 922581854 937275151 199838387 514129065 161524056 586083948 16330471 348353563 129366383 369254410 366096201 372200172 84649790 582863656 119451138 451384161 97037455 774215040 663221084 759412996 589091496 864709545 249261204 684744152 669210304 769940852 361265191 927524465 659919306 801147366 332774278 713536776 556607481 878263335 859633855 864741755 684939258 707866430 405005123 966376283 799316473 929082431 571777770 647424762 144916598 596924600 356755313 524499907 297862442 838327720 64139973 69734353 2003538 152644037 123635271 449190727 94713980 949395754 406030604 936522642 872237982 982499450 450970616 743132694 513988562 719160694 118514307 327395300 180839654 361962687 307673908 533591280 180456674 372705065 252449672 947462103 362683038 709947813 508907553 826683148 792062160 934124689 668192480 905591859 198633665 562068263 233891571 700923585 162016877 333710821 321233178 877342879 494915767 517120769 281595510 741814734 554045349 965997400 166173340 193404564 14130805 702383044 51754321 623403201 141298706 260129656 245564858 279937770 79854276 408093902 159362378 295221475 183839770 731660894 577365048 847484486 95020292 511824405 124325601 892733612 534434384 589816883 538275291 549558269 40026001 915633540 635417583 760822066 246127746 451997470 250713496 896487994 250627549 600457587 70735197 744652856 511285609 745727650 227646800 333283523 12495343 971745182 408103611 441466066 416162221 585342393 403935502 495087522 414124400 499064622 324482523 446181842 268117393 558717338 467155091 827648670 235719200 245500532 119150258 308396741 156398073 854333448 379900885 689857739 76387075 970922482 786227130 789048914 506790878 508421243 408389294 835552753 655007506 789315191 435771752 981007389 237087750 814861174 507965378 918541112 288966562 311630116 84521291 550822935 432307254 763241326 752254935 859932163 412950631 825836984 269277774 350837553 37958236 338302630 225339671 302514823 138017755 313435405 2230230 408104503 350306425 585657389 207539461 544013918 10029861 105858813 3542865 200050789 120417550 572075862 366537848 696506658 513537277 898658689 846226048 930413022 145143262 161684485 122845029 365911899 360193436 729659651 689879803 925229018 775457207 792137549 483349799 529296519 265209093 682778255 651137946 944378203 888179199 929478950 510740954 667352938 52044591 974730195 182668684 776750299 38216643 920680279 480789062 960785518 521696165 629100996 465674681 970799642 264292336 361053066 150543509 875104704 323101852 668989340 157610005 314895981 266614661 941459485 550888146 705382399 469264968 582746198 449354216 906773266 632585405 833193767 563086787 956657163 414281540 643229850 138912498 790072196 396785010 506790651 327051678 977441832 379268587 652669134 322125997 472102777 433504675 907501363 178020821 474183843 100202851 325193189 141493812 702597486 360110794 677409103 197611954 541533771 428152791 866775611 66821060 302143749 11524641 836537458 61842715 460106570 25591025 663026886 262697486 294662662 112495852 732396709 58892440 727429884 338108531 875135017 330621903 973242365 272698002 425520622 86989963 115690720 15281601 362010033 202084988 771308938 462002046 925411131 848441670 932555629 89340248 99991996 91543557 756150321 103544592 185048934 24195232 750764065 7299369 479904038 461376819 663689709 509997843 777395390 758704111 964417307 711426617 714776440 379914120 457708244 336116758 577359450 505205926 815637262 460951437 847485751 184314179 998831500 519922559 885306874 562370644 625267198 619544273 676877371 492513406 925129881 33101338 406151377 220667912 410474043 373829536 768289556 355818371 619372277 34530777 578877894 510657332 868177797 429454141 461310714 132697278 604236489 399266409 838814069 786933418 853138884 401612564 744235418 598762227 737794054 374863818 962397527 778683109 909609315 894457865 917010393 581659872 687388226 639518149 673402981 121607543 847194597 369509274 657101726 588324225 874738009 119260134 835298509 488931051 737832787 321710649 657499624 368197160 451363401 303471830 311449080 40680197 902434192 121814917 505380877 503796896 709421197 236818723 592199760 512804731 622825386 324381700 863520352 758467789 957857487 776102163 966951114 727672046 899758053 267102296 495540096 391386534 956839415 85426836 246917596 95393048 404884511 250069792 277468756 132044336 352838682 102890263 542432102 389776742 778538532 631423877 826696638 625122390 865081038 353556877 869439382 718491891 934363219 364020560 690730417 420159896 808452538 529535260 701111333 298234283 704369308 366940135 730387954 492948976 669774494 174412401 343429726 319643593 503498377 444004209 792911411 372101536 693405210 193592970 802375300 776518686 947121384 151622903 194395694 7127077 817875130 418544111 619265599 186139027 733732842 80075154 900007566 737353780 767413873 552676098 895279036 456595144 623896378 526673909 531405601 308436011 468376351 198721496 383101160 281637840 490119143 439634118 748632811 732425157 741067244 396748065 546296030 147158361 411435582 304105520 559486247 404676152 506364631 458307345 737679756 64377075 875521822 489498995 685088633 594629873 895971109 484378009 747078320 339990313 607462604 90492091 806618696 322058943 475472291 406592337 738945474 611273500 982118728 293615382 852318438 615571181 870135684 183018074 424667557 18564560 148037969 39317266 89787457 28016816 458880706 17302381 500230988 473427342 552801674 2933105 454888397 411839966 750124266 721745433 745003037 463074831 633679795 574798798 903894471 201013756 935542723 514794482 658936746 645409659 835266964 134706298 836851312 418410985 722166322 255075048 607048747 73291480 107741645 50721972 565094313 541303613 800197911 460776744 947305387 675880133 846363704 231504640 274627174 109264382 384575512 130083762 521528633 218838830 315931850 182767633 689930519 496635357 689083458 139826286 563528084 493989324 608309379 565244703 728248254 502094464 514099848 270310215 791094299 331225312 870731979 673984379 728606074 720590780 778499031 530058151 994747992 75078337 817578626 703865827 924479847 885852750 919430920 467117652 913225324 279744158 901476733 277423291 659412179 613349685 737458374 293809984 788646421 562404809 845613566 296847729 303615841 263336471 956564545 496526865 560934324 257675847 977323320 597371343 604877164 564360884 817840586 742480373 974633503 288674711 909803374 498248760 631722085 498202568 834826228 731128896 742671771 301969338 851929442 263431984 862487165 110539502 543807917 415126470 647801440 448233434 639072210 249043884 935012322 840250466 840414878 631541841 806747609 127203700 575127813 209223236 958656471 301707555 399462697 73527787 942859656 62914366 726366602 423616993 450046769 253647358 613971499 179699589 392713250 383079903 782075872 335600122 393754218 6759714 919260899 298251042 587344034 525538905 878496093 360943216 440992478 49272796 569627083 484597162 536331802 53850931 963626901 277901187 703660095 694775196 754969529 602936146 765017543 266140147 279947913 124375595 617989561 67783347 958355044 314381889 693654110 386461265 939797830 610717692 860515118 494442948 691350261 177127894 579619155 434389895 580240703 195789181 824327519 671200152 876382650 139732347 194988350 84391893 259498333 10497352 758158574 40886810 509107242 450095330 814476964 383943649 584438628 61769556 145198633 8958133 190141824 107299130 163437396 75950064 712450412 68619841 206215253 13578734 91729586 61124110 277087840 201236997 381052177 28709573 185568545 109198735 543552113 462458863 545578696 227480798 280178714 77108437 830081117 603795689 763096133 424723679 986711659 420397681 759109332 307715348 486737042 1675093 545733314 485145979 891839745 61047564 80208141 51792243 782841890 630253913 682829181 572838814 797914887 453063281 513644033 203273103 609200795 176251744 519960167 218529696 781166535 445257430 556492931 343567729 883493732 180945092 496508892 332334927 786157517 732176067 810246842 689650219 762512403 315939622 554628233 10659106 50035137 37179207 764000429 569182779 663710698 297252603 854623951 463178250 478439503 61341962 726518077 215462135 260539455 232925419 841199016 293633578 342064846 149055148 916802393 132478244 843082765 79659880 816453148 156987725 748674333 497037877 789836641 661255798 858961793 624092463 892473590 375150460 466124395 282545335 726886384 284143100 891592268 94733265 598788830 143098421 764316386 286485023 746986796 160897581 762983705 716175007 810637964 222663169 659677459 409382391 772895541 278108944 980108067 676291081 922870944 877141342 899808966 831215399 845959393 403244016 533888500 369511475 753667504 188880853 421992730 49244658 881588341 98404703 640079873 454041867 545531567 140935093 863766737 794925580 957867841 344667529 545575104 290985499 562592768 395128385 517025810 516609173 627728552 469878276 682609658 674894540 900275624 4494075 203539524 59401598 891935308 723293573 933290022 534648926 537958107 9754645 111814660 58109434 726521974 699133611 783683914 280732033 509049493 470616794 869997047 442946629 450406008 264420689 876510795 193394099 594522919 369858354 740763668 689214105 858024614 722087846 855410689 571241746 978966535 409158755 600289141 558644551 638386440 463400180 651919244 278717353 716602803 310662047 626658023 374306461 379283571 357703025 899695379 433335446 927916899 864438669 886209030 132690844 237857212 22100928 449534129 163796330 929135340 152849968 204775839 20978995 341775655 300636947 598643711 274188898 349309706 128070961 621124841 568618435 941356681 910425119 929614495 492693156 643755541 140523529 617481283 549470254 583097769 84026153 891940430 243989109 269099139 244592694 678101115 478328802 979076689 181957697 685122177 32567555 998075708 142145275 419579863 21187277 927777102 330481141 762627468 373044641 891006527 66474423 531989050 236782855 973467797 152495610 458616125 124003398 454624499 149882398 342275906 35143141 882850594 876690193 904554436 413295306 570105505 216603423 951524445 857231048 989198982 95185303 936376648 471905939 475473379 336927155 393794604 270315538 813668455 721822704 850713803 537237546 763837004 91044600 613569716 288028211 482959833 382680318 581229291 464910490 817866027 29860982 252132823 143872008 467683996 352280725 712533009 363512932 962235100 174172476 342103884 333917790 742625795 702483043 810353254 650331696 773310693 335557110 541362679 44197107 716368550 260790765 764825310 207670811 903121178 118311435 176254297 170060109 555334592 270277056 932095398 314993506 923994994 111557427 420767202 115201651 588937881 501781786 954798659 379515884 947249412 64950688 561339165 148766793 949765439 764708254 949166925 932432012 979075940 934023948 992136524 696601330 979894034 260614002 545046802 521127015 840954944 283595293 382142407 172430147 251617421 11090737 188312292 182289725 769931019 305139139 407104869 129013274 836335613 544941028 974770268 358542468 552706036 310672119 406171090 122761658 157845490 152910612 703026699 47952394 308133491 228227852 936858736 607426762 663240610 73998098 931036356 601674010 885515239 561809258 827602738 455443165 992555635 225172943 225548042 141507835 519769911 304251643 931750369 521066050 835648067 35114459 749884857 545279048 630860897 324215237 526357909 300524213 967800875 857630228 864513261 534441974 564553582 193302495 746466603 297962972 589307346 226865802 352871241 340710057 820850897 819789119 827527166 322529476 963370615 854558103 976387327 773131312 877993463 579854452 899273948 673550507 893647930 464622755 541626402 146174135 284069071 171649280 886594413 301508981 779646284 346749016 624868032 385675052 786655477 352521692 948823911 942966003 949625657 251528085 803019237 291378860 884144804 506151236 875400642 113840720 359069531 260105619 369921090 36646691 67914346 35661804 526791224 215243416 861925089 654612248 730411921 266058314 671579506 600699713 835563162 511709451 903988729 281569695 316885007 112859104 264695271 53195019 906220717 142446479 465107905 236046796 377412313 66064259 844843223 10340641 486917393 24194593 224995553 141598603 803020435 549449964 787718138 96214407 610101502 551304560 697745598 604940788 629371136 346999852 450975720 181635616 845923358 59580955 373318377 6196297 831869447 88181449 473809688 350874511 532245673 421047261 536759420 293871124 341296247 195460684 350413417 79505163 197517488 71759123 348757486 232410100 841869856 302351544 596868628 43434290 534967306 458259905 592324574 359311403 674936429 18012228 373260640 83219007 861842996 501299187 658713303 310322952 820056421 124770170 500613253 91110684 697861707 416482985 466385691 441236982 614035871 330494601 791496520 1979823 171292897 157850948 320603416 146403653 446504720 302195950 967088740 122464553 666728874 397652452 756503402 290977545 333325924 118870486 187993752 63896548 422283688 236969093 433744098 373286680 712973257 525463498 537156106 13233690 363252633 326074654 622975244 72161836 843101251 461425504 691309391 386799978 861065353 815965877 933793997 816508659 959087985 197785437 965457204 23978513 725491126 443483991 650838008 375249745 877178703 100920627 725769329 261333995 697276191 275859853 346078841 321811126 840165560 20858987 142893967 84638477 179922155 70491556 207380561 2045179 294968925 181075023 583889951 108826727 363336667 255365104 477713986 106710699 622152668 116932070 512242946 235488151 433861175 420236300 975650780 549819964 595607243 426453298 632453072 391218494 500767665 466467640 910802132 160451827 527682695 281075995 809422928 432507983 852791822 719509503 927225261 726019024 794084495 98343508 309842907 303859047 305459587 68450924 717817514 79663109 543106553 202726424 360374426 352408190 484814202 74303132 639676018 473785169 503146329 459001849 498809442 282286305 925873845 690161408 948827784 411386051 471419650 200937416 485725614 450302443 545871914 214484990 360929479 57666122 756363641 507006757 675348704 233804541 455358377 113354304 854932522 378910970 700162682 11387384 356638420 276025835 850299008 599588699 939158742 329611053 817814518 133191718 517039281 363586504 455579131 278398696 289166204 172633121 374893940 59702166 264534345 238587786 691720680 117519902 444378405 349874067 358287757 61233607 822598173 605999940 681660261 380422462 561625122 470724421 753545019 200618473 718493969 495832046 598049225 494923256 544984881 48254329 691193362 470421306 807295337 258042271 447217333 154026607 381116929 147501486 374992654 125916781 249267153 29940964 126635906 110588991 148525366 111000564 822485837 177691042 310903418 171505790 601522921 406631518 768589780 632448166 701936365 627560510 646638013 181857255 811480884 642553947 978762932 199276927 853462815 136612634 314546607 90682924 91600648 64822311 423680605 99904270 850534723 697845870 822464495 168864844 915907031 407001211 921516065 751575 294741802 173836400 286305026 42210912 784017334 617415587 842162084 505990159 935655871 795702475 835067428 721624614 951493211 386754259 674112386 19133834 134978928 48541402 78317308 57765278 730192378 573294264 813593369 62825490 894286123 29996733 818236593 60624546 659173276 309354110 425067114 347963743 517493401 464957843 668219826 9696003 323220542 83948068 484699287 405553538 831986716 312363038 348605382 133159381 964330271 207075985 852758834 751778405 786921517 736486270 814143719 263409954 555813793 519305727 960796888 895710794 974890017 755166485 946534921 244418446 735459879 654840897 855489681 229322007 572118496 62661268 564392995 158195406 567093375 141631909 906649821 187593035 976406535 497985877 690497118 68186026 82536940 39745259 568437320 124709377 624820905 418611470 916778982 1789721 495748483 400788896 713840851 666519705 909095766 267868932 880157735 224411080 813526209 114232330 664328488 581034275 655705573 156103104 366340697 215987571 584674191 394175056 573659796 205081269 477670518 7015899 619792046 543640722 764269911 69887942 669509640 302445438 690276969 582607917 999363040 238933817 966221106 892397664 967999205 927584582 949327535 551716708 749644760 312405948 693697716 320291385 797059775 771164368 839159983 426644739 532156824 173954140 984459227 583453380 685964366 623904712 781780437 294590123 689561158 206274278 831951565 768894347 937153062 691443632 798601980 224040419 979743273 398544314 570443986 559640335 648672494 105991458 117878966 94942797 322542260 86141360 244681742 205592406 831257537 59269150 616608924 107312078 551445224 24654527 226160117 79470428 308921826 87590128 498877157 465002017 803329917 492752461 789590312 559866033 687882367 646429024 877171021 460692025 535467978 149776896 910602661 495315402 576135999 222118499 729415328 418134242 450332937 72809846 637941796 234209896 646087399 551328673 702085157 658303126 774127910 447044695 699799780 476799380 750669242 375674199 987655876 492855726 750093289 360200577 657654129 317021963 502088125 390908121 683398121 229778314 323580114 207066301 707978632 537333054 777601056 167743264 630707718 337520933 688114256 176469943 711417036 435163837 647771061 471506508 492838530 200882713 257289452 207965357 693088824 52295865 333175220 324629586 858138016 4243507 145292021 5716447 513813045 421758021 571705207 237295346 461449611 24958211 88175581 5376518 588196445 67418701 870366794 521955070 647062460 38640587 362160370 84101000 182002009 131636430 994516806 450242513 801983833 722219703 897273057 321053152 882988749 455171923 854716435 358829720 526191312 419792258 479612212 104672737 884961630 290659503 350510210 178247917 768196057 745997318 779204043 523178507 535270047 362596788 981537383 13229612 526638533 93611349 408125830 71999860 262216162 183686333 566149566 339660401 519865683 375062004 651803003 270622080 275489708 1640449 431337025 86933234 730712098 695593487 781784417 224920546 364442914 228495114 544583853 540764827 876986910 439000557 793450878 348223040 476492557 475452608 675351457 359335452 679710868 362213358 826927893 814345132 992157098 888949539 942134375 13398983 78320977 44227232 567379439 89039025 98123444 55287035 552144121 531845021 817323948 536279512 564701466 236882302 927286491 919266321 923787921 48999139 818072864 521385707 639356708 233935184 509936526 94161395 831264550 133813404 811482843 593227252 635882380 512861849 640542584 23766640 269175169 137381753 907975870 368155343 442206157 396466564 461491516 361653489 642251123 178708132 628429398 364578370 997906543 945785151 969243099 195425864 698247287 687830228 988032308 876333781 971020573 927916566 955429265 644032214 666074811 116133754 895045599 65511263 157525364 34654183 924546571 649603780 674738639 205102265 763460412 90820272 920611725 783487397 838309808 653382480 789092433 749695635 761558113 645883715 885055759 49807708 943966833 635430905 713619194 37481018 729622741 502888287 600163425 518675767 886333306 7511562 281968584 70366070 114496005 63252868 387008149 151927305 172655692 101893192 873946246 459103783 564026963 381050148 709636791 161884496 592844844 435892153 867110324 243635093 903880241 98840168 947174018 562713018 740838605 565835355 816136254 733661812 765422743 91755001 105913133 37206023 234849678 89912854 133499647 116256138 406607871 307232919 771339037 768295484 841296944 691738692 987869814 964554891 977561433 787060847 816210629 460510705 683415588 681180955 956372661 439893476 565490524 307514975 729986944 637214946 853167826 627048649 732625046 663786094 848607890 139769033 732990383 420243399 702583763 314840012 637363909 87269128 564007649 472876506 803916544 616087593 858285993 393445568 581455713 94698819 974345506 582470717 640390680 158906452 208328138 158750808 723966188 50181444 140282602 71633115 850414211 216855943 546699557 263640382 834208116 685023993 777782858 730403386 901486046 159160071 524586888 416430892 772385243 146906979 250392432 156976027 364796007 106328080 912901460 407533458 617430485 242056241 426350294 407598245 554709444 178337545 965445566 92451999 154104971 131840511 310984399 168607860 208618682 93340537 759516460 468044462 788820660 562537652 716634035 638244863 797080147 304987810 904350212 183534046 525048056 428522141 539704160 130628262 166281101 83953240 326962908 147791257 963812764 483705165 537100854 354686896 603545871 412731404 602295142 564685018 596102316 502278399 682017392 59482844 237802580 93366142 918441235 154174523 841672244 251522284 814069396 687105354 884126462 385051370 690343530 55304262 942283681 430682436 665099458 648533108 799081972 11327585 548701914 440669560 583005179 523640236 954836751 743819873 973543526 915526813 926586094 577324983 889670208 54290406 152515893 121188523 876958267 284722362 511477572 438344147 779043979 418549753 455796225 232484906 312091549 208735413 858550105 708540872 759991478 369949174 730166493 538702796 802802794 406843488 670268566 300728518 795350434 224409553 633889261 568987189 718772575 3040624 584074153 39698394 881327334 593478158 746003701 508712973 876890987 328719382 430956523 55118826 498606849 220656565 889881372 818771176 993767537 657454384 929761724 898307876 975827995 870673452 906508588 516487356 911416912 604517900 946682107 597110477 866038013 491883838 859623035 443755313 614850497 327926372 878972988 614599527 771623828 289562285 489595205 149723222 406606743 326093770 655966375 604238862 727701837 168860368 455806726 294674473 647786395 130169692 705507095 340616026 906456812 763916104 964297736 529433491 994843394 941090844 988063010 246211666 379945450 254252319 897595047 194631704 972235474 576576481 612751172 523381799 667223125 474270927 633271318 550265744 862682786 182502675 385875591 360138654 517891608 8420052 249720247 215158422 539798111 351259646 381943495 68705335 914715188 87433841 941395307 876551429 905584506 242587451 313676990 179362950 652656836 192151485 668047396 551648335 648923062 82605165 853341199 61351992 384352114 357514317 649853842 319973451 547939304 130380464 791679888 109891280 327945318 140791791 833620179 148872791 278778696 8846479 402292497 390365675 626854291 180428266 694264724 165840381 945748706 628927089 649114665 176159816 644197396 448297479 615232145 125269229 684019545 329068642 856362804 147389041 366214790 47180130 961819683 353284458 911845779 368537640 493156863 158621228 489561002 111047003 733020257 491581491 830458100 119803205 195680188 9555715 52512720 7489444 734838519 698280434 985730142 39348090 699485530 652429561 854192675 482607724 872294204 756512413 998901515 483823638 953814441 68478237 798624490 326309140 831666998 305380414 978704239 205864686 619526466 439008382 718021070 318776054 866638161 147633019 160461364 96641390 332212991 329870260 854568756 776675376 801667598 402092200 617158048 466072040 811486209 68842904 141393477 54266129 117593015 80001068 383403174 52853974 578684525 412717627 491998505 146126713 638404599 149429541 418049821 410487835 905560943 520779304 974678965 896037531 965225850 808108109 830614214 731476567 893517366 721241400 730203763 107836240 266984866 155822119 598742329 274547404 424600250 102104026 697230299 325551716 395125660 284412102 514630226 390878697 621701191 478141612 744211374 312261729 799292576 431039644 902092063 303268877 333784357 309904522 727515234 504763823 804318711 415370696 569602524 283638043 430399269 342996927 749232653 393253698 781051473 351932916 960284144 292956457 880883561 604423178 977618821 526870523 583991752 525182160 569474150 61478844 238065069 62814605 644637777 216007033 453303583 150925226 187352400 71182268 394425258 50979953 67854326 57733249 304199831 209015755 427187727 119660636 602639033 231767069 361170399 170141124 713630165 392707345 560322583 489221546 733247557 154390241 276353164 194182850 603034269 572550604 965557545 429657531 737488658 579461033 624518298 569406990 895100350 700241754 910136299 666546450 923146109 469403934 860551372 624596780 646698423 82035799 372357960 209978490 918331513 22883247 626716098 244668238 767086630 553323766 749263727 313468879 654869199 279799957 386816158 244094400 690333154 498624275 638150426 513893340 530112833 289976158 732386261 241029245 862653857 9172882 863119815 404821722 788575610 47241837 490086193 304081179 672523626 255587927 471319337 306972267 900352328 812350613 966085565 187557135 471012927 259806937 658293484 563175497 830375636 77106769 439440390 117527400 853248036 577327347 962776949 94434227 249617435 43857814 532802746 241968093 859013720 276677253 347764147 44435021 751050902 341565435 927944048 107549699 526222762 384488116 504008226 117948686 999752015 705515947 854197428 489524844 914444921 647358918 688074744 424689217 800779036 287669334 351527669 92599478 498463065 343122374 665185391 211263126 750756222 648022255 898725760 104641883 974934454 324625828 761202792 740517755 765213442 215998119 320743741 125605032 577035432 154657151 162170189 14565952 633039020 9673898 750774551 126071757 603930257 180238754 697616423 526356913 989625313 132750529 544937775 437388668 954283680 911168149 952731662 257940658 751119841 435039001 571450589 290772125 813373288 649303498 820327171 415304197 843385192 228865382 524142661 394690759 635408377 47703425 467104358 300644295 563976836 531144663 893307026 237807220 942779570 788955646 879198817 301971269 476874225 175866816 256853385 175959983 937356071 441360260 945753196 292675992 810924873 445227903 445485212 22986531 334648633 258422221 590237748 203733697 739648493 235237282 511391740 231227401 313076325 80735207 284130009 66178127 925614001 368452028 899130306 226670992 389670067 43028957 580624029 504156307 701520221 578234556 970591192 317952311 418348484 147362194 430246366 358240302 716935663 695951386 878683682 809964325 816997586 547568247 624663263 141368391 822152361 525210999 976283138 635328149 742052458 613664599 769225333 32855119 762414578 205186633 596918370 523869057 699738263 288262850 864707552 178454620 542476289 89935731 921864301 671290013 989187642 522047712 893988403 768361997 836193490 127901144 633665378 87717835 703613859 107318500 321950408 83892145 544814709 143132080 571294705 374411222 951514942 901575018 974096163 567206444 896564039 663000599 787947474 736428363 818014812 431089984 758115170 212676945 389639163 228132512 401953551 331279625 970699840 888285851 944306372 834715304 843885950 111827453 922460525 615559084 893100137 301667831 916742615 401200253 537348005 326555682 608921254 370095789 695355144 164529005 643776040 129871234 301509737 48533819 786164702 782299006 890435861 217783117 731368787 459464185 563124932 160175436 886553525 198220859 298932447 79792013 245561106 175491286 713866013 707327731 997328921 291939635 317913686 222859540 664631959 338854933 474435198 458387273 955767256 325017529 790475264 28816083 696006049 228612913 722977869 686431134 795662147 26838432 665020176 56282525 472299953 365672248 848528503 67820423 878151926 743258562 776647049 735559868 873973310 800135933 957863023 357762768 624335164 319539692 627423057 253574554 761758827 533253481 616800394 256524399 290756117 170558724 622104465 305953394 538824691 406584087 422703196 282033808 957994417 642258484 982865933 586648477 910976482 578965418 730048063 350402332 390426271 236464434 684323770 286629009 814114348 137452295 687888263 163771862 907122700 460161112 704776705 48122687 362736020 269757334 747462504 515544977 908564013 694501574 758318677 459354106 532525932 191540922 527680880 110041274 165926549 57646418 164613501 55501480 208992913 99883194 188105811 22305562 476143843 107776475 595261732 345242784 756771686 61090457 737607981 100279544 358019943 174401427 474923098 190638984 216786802 14640721 966806179 185791429 758276923 178154727 851795011 750713060 872898209 463515853 933040844 79635266 189729593 132794840 434271732 28282954 306963385 7997121 339369932 319542947 979135873 592490059 997729547 473413415 690844567 182837721 788024637 524127671 919882849 42812156 82364260 36918999 377762417 246298160 380453466 198840815 702576994 144100427 965516868 860406314 900998645 198169169 222818187 125403488 747239162 161308549 756273007 606454925 966643566 526972638 952381117 843430338 871698856 81050863 499635507 269076836 800202960 419358102 658925907 95902649 962758214 415172163 852498028 344033536 525655459 411146653 516319351 322834288 803387458 600111313 919832355 646978477 981824407 930377488 937345641 331010902 580557472 527995075 558844675 503876655 775328405 85354637 483635371 283292962 773175570 286732005 875588083 304749294 423098761 337356884 601942580 399187436 935710476 55421812 224279938 133462590 775248010 614824862 704117003 519237847 540257130 11918428 75266330 63247241 165780823 27516718 226110423 3732987 921778316 611780350 704220874 694206520 706183398 255998353 859105949 302218501 621203702 416816507 431314732 108447917 838089635 728712788 993333765 36203369 538022835 51669098 790134586 8439743 441487860 21254662 841206451 814117343 958217941 905632803 948771213 588757861 786228800 348986257 418641931 97537423 589477485 199612811 872980176 111625056 123031079 88603340 859232974 593300524 700177907 28575655 735875845 213970621 878298692 469900400 901591067 242003470 528364033 290221247 820786122 449829226 527176698 323998328 880316215 370859609 993438986 810719667 957105683 43972367 263306968 255245197 854673788 96338615 392642586 345749791 959926130 756016340 930853368 255375623 782595482 702059913 963491172 159290469 306970883 175925578 559965702 332760425 852503486 348051205 851067018 615763356 816832072 373838743 474496982 119098057 833468218 380243601 828825573 498753799 840882187 647713772 737907404 167005160 943731987 256769084 731097236 117744849 817627445 16748523 436976996 165984385 941762403 99635607 718633251 536011442 871337383 760048724 937869252 377839416 918794712 791604973 932159148 571248310 715150290 470264108 887951160 349582345 971712239 819580777 878222282 194970911 874885353 503727677 551646183 239862047 506051664 150674543 373564684 321489399 843838213 320382371 857408993 15638084 720315208 390622658 563615902 292650767 522945889 231982747 669968623 449908184 464428837 155811745 698559916 499925615 682065825 589815093 882289350 373698704 961269364 554145491 626079498 83230137 169229421 6284641 261158517 103329968 904304237 449040836 527738892 367711190 703496238 304876715 479326493 189198464 473524499 318308035 400603734 367174432 610111968 7496358 921226587 808243710 970916577 242276086 378084499 42236085 619782912 406706983 553675257 58717543 349052821 131844418 409151461 382975735 931358335 797325549 980902978 527721075 746680979 624019517 713731354 93189816 405440713 358791416 640446396 18531074 69144196 19584578 625654700 286775902 752472894 187777383 988199638 934778609 985148622 390744735 446754958 262550666 434256331 181360142 859104724 816026494 845922137 623963849 757528605 70933249 807946500 579766498 724371561 293172368 450620388 86312380 965237185 207264890 860261694 848337456 979684834 272693372 575198422 499026679 766065325 318805616 706501390 286391458 781708483 763624406 881704769 701401195 792852404 361233306 985334504 777580014 891313331 113631794 981307125 789606475 873896412 416416715 668988413 404632086 469577519 284159847 465729155 50220258 274538998 271134590 860608735 303242608 476507779 473627865 911069023 347285966 469228548 25213134 796170041 702444679 825670384 101522727 932687842 924001840 936901826 228063335 419611486 302120697 909890718 628843790 957322502 665995691 667397905 500815486 822020078 806442036 836866807 641316270 922246538 608190529 669608030 189967339 357838367 325982727 928979691 605258106 620634097 483043806 974608112 35568245 449448528 76413128 397542747 20592967 51658594 3491547 400344825 12300592 584645894 471462363 950670562 671736046 840518853 144280887 374141589 61996775 85842052 41472821 312040670 96410214 578910631 483736969 995790004 921214122 939578040 61727712 891391135 72288775 463565569 310984410 413006695 178992113 906295942 752271023 983894979 722551394 733120391 681960204 997589136 358802268 791338792 56015422 202337101 84698341 344028314 74743518 152309318 152086178 265232399 36131464 824567683 534456196 745982457 716511579 851452910 401009460 452635155 1934875 622236280 421440166 475054891 119950053 402084445 316763638 525973743 294277638 426430978 96662440 670110384 526827928 648442911 121943258 941078980 661500903 950102640 392198567 596602164 10405885 30204241 14039096 208708261 37247230 579087760 132168589 186875903 7617616 110949587 53147500 902010986 74147726 287062343 273943616 301101551 288901791 415602328 300381020 966815953 167701077 241028836 15282383 872599804 845791971 908168267 484572985 674531447 198818103 312609628 282630683 811918398 69288194 142586606 96808898 990796997 516637122 692263864 563327820 984866624 808235727 977101749 198470603 913278462 359083607 869765559 410110435 835891775 94511048 938000182 394969800 514566303 36492071 180257932 70056266 282865190 261791541 831123205 722755632 811711637 214409881 375050475 320275386 545803090 259890221 874314728 148157243 955816135 237181418 551454995 381012452 693821179 605771328 801362395 283963058 571640188 125741564 404640879 361646274 663370421 524325962 821664153 599742582 853980134 213970341 437868837 25970674 549630307 466673981 512137467 294581991 783205493 182477940 284402553 232083599 972376033 519837044 684490462 641345353 994248705 555423406 589427670 508201023 717892382 357400765 466093997 132767141 406922727 78697399 488331784 411867116 834977215 56259532 810925666 739883978 958839917 47046731 460854415 169898311 653594224 345896525 529305445 427683913 629393893 143868993 771813187 708511693 938370487 777454890 934530179 601704783 730399929 678650544 918441269 418930542 681395084 582547719 692555178 551997961 762033663 321546327 486523590 58775335 253877823 229437148 742686782 660832358 689362994 285488423 781330776 448234663 981899608 793058447 811489714 492762777 715935149 122513703 938786822 400833118 960935968 267871548 561486267 533662060 621258226 430007661 835502937 44483035 459073933 3512257 721654384 141046045 915523271 588168824 610707918 109954106 799636949 635916272 882902809 624142792 776435601 381654198 522355242 128453908 855122486 385366567 886974056 49173479 834710874 4891839 165582527 75420747 576762051 409620779 964517063 454818382 580497626 326145737 430567853 419677603 807570310 281651528 889623288 374349548 876364006 637829129 654726541 250476809 636238526 566910517 789054906 788852079 862273745 808413480 845210774 305575240 409124435 344414934 785186919 537377423 925464129 758425046 961603998 64279356 344950099 244743966 566693817 549391344 695262800 416877947 889030811 849478947 850664981 458414847 945788349 609825784 638559297 159753320 560611944 467136079 677241193 666555293 702495481 700060691 820361614 811450222 873147195 697378754 727402781 319256661 911874940 901597323 965797312 587533268 917388129 177460690 535977186 476080850 854943667 152934358 798052459 674418011 890688437 771415341 994804310 919749867 955365214 348784330 397912211 201192332 443899872 222618888 714525853 296418695 404477856 89416451 425334355 414005877 662273326 25906456 975867802 144244069 741313567 693000410 834409669 730666480 967363356 739392373 984871647 317763377 765713990 550032543 736568882 504581110 860651336 335609856 551605519 405629936 804266515 377637957 969877008 949906847 963531464 728641557 768673662 5224514 620407477 151577075 912644568 323538188 954178682 741055909 755433011 729146942 771982365 378688401 403762679 281584970 559796714 241785859 313528045 167430404 636386813 537999340 734388288 427338218 902145296 47723309 742730148 399331809 698285649 142830991 378312267 316853249 823032260 278563691 705035598 632516151 831618371 176652913 849176933 464624877 983589991 552708228 744766705 615406860 942266192 638579098 865267286 391223823 879745261 323634886 699809701 180841611 929535187 521543542 634244572 38676807 544842073 245504798 487595777 345801111 523540629 306862512 355558688 33742793 35302605 11487059 70612138 45364724 360475759 83107382 717348267 561192279 597297432 19770476 850774208 748596474 752110931 392924386 567513475 100237475 563430887 359486201 511486820 206771006 721076866 573252632 857183894 5118048 131970464 2940740 337242618 44187119 592688539 235864087 818154685 772826441 849464558 557720191 909975030 806478459 895932405 815946538 848652796 797194971 840306878 610076830 828863677 539529725 777749014 547845729 985275003 22156567 388524575 58798014 870100252 152057157 676864648 675007954 771659864 508927707 968934715 77113942 716388897 66339555 940002892 134026205 430538705 9554466 605735389 373966651 828291029 378334765 527457003 162521490 560971182 494290522 737324715 321430319 414325826 268188587 565814196 221906947 661083370 174217710 897783677 32409033 723162214 459866249 672507077 236418855 742817234 342821544 984244533 577471062 656114356 220067968 383651518 290139152 760850791 536817095 864854417 370772093 435366882 98954030 315028105 122720495 234044050 42596733 703033736 290544471 649772061 441028031 985548711 638473743 993608862 139797218 836463001 538113411 764070571 254908205 277362889 2313747 92408043 80014220 171630603 121112501 238283787 4065398 846442459 341888130 734062486 40544185 139531443 48411037 797180269 725125032 849243598 541150033 918093953 653041515 886077377 793235336 838232197 767055676 865980631 261765353 967175453 507827844 977138852 36651317 740558242 247840226 907875564 491535646 552491657 120192923 560049812 287177365 629083336 297004519 852942525 243851732 902032608 751083003 830758816 119428103 812176311 713163433 849500748 362172067 738477217 671082277 735781713 285716102 411573563 260060375 823970121 340798622 864469522 206114560 843406026 747211046 755724200 134342984 901599929 17504072 323780664 52035156 496179177 86001438 829850403 213896173 793542743 282792948 525781132 255613408 653448064 252026705 301289059 20530312 41019046 19020823 207212196 98904243 477087675 128019342 245743366 221868120 909856518 664017153 891715673 825106627 954481781 555577390 657952617 404073485 623061285 119260272 817157520 504526654 714997163 38523978 610951063 2065181 24268527 22893579 134995724 9924285 449687093 261668841 551208069 245266292 534162507 352610086 860267168 45185926 531657544 101839770 670857124 427903694 992291688 495322788 897964450 190980009 241946194 194803551 831137533 198696358 470472104 412045582 557957922 307745165 595626544 513949001 736614260 271779169 862948844 809913364 989208692 272933401 840794901 75501896 528869599 2034717 809070538 470161418 759250647 567297957 929668985 575831053 837062565 84176780 230912702 16844488 830246414 359834114 740218579 580065702 970550739 53854109 663356680 80599600 762545191 206032058 288368906 220028705 721517414 364703920 553124444 86363284 186942762 175539469 744310583 434644337 959962535 698849323 823088806 533809459 665355252 479915102 976850727 696395374 892067509 801547045 813466288 320774093 770012483 720308789 938749833 883751638 892658596 217067886 787840649 379042528 633078691 522571183 879299848 183382024 427052076 309828174 374504339 146775455 149182540 93237129 340240236 206693635 380856876 244735024 813696558 55640803 307966941 9894283 192636160 87361563 350667360 170139703 505882231 147635575 339296529 262070278 264365432 190838256 541261355 298645657 764305403 152915301 178660646 17365483 941198859 700417903 985043619 663634911 933084666 270687890 695633841 640761971 785497407 596901596 631478855 96443534 260247567 85794577 672397554 269510190 650815055 81914404 878909302 847543420 922549045 767412508 981440281 952722559 981395634 573218387 606577192 117841248 568621022 285321185 645904707 498167141 639956358 105880162 877419688 171422418 310062145 271027125 658165139 438126026 768399119 697384166 716945902 48404800 208736383 138750899 486431828 240093597 684367587 210655556 420542725 185334895 874272006 339765380 500381531 369805549 448024803 119561954 927570789 422761511 638513860 232232271 962180278 860221569 993755088 495670911 784405061 471497260 593214304 374873606 992619673 876006061 899543007 881082565 899046031 793034639 850248800 48882416 423314509 210172130 635970719 213074757 507600881 173624013 476121331 20505410 280651831 221617843 289181750 182313433 719104009 538287710 687461961 381802895 935060005 216594418 730681990 521719283 963981045 481292985 769875438 124470590 873054113 661387845 840007911 760580929 769335778 632009656 690191912 481086107 954636833 212383260 589318971 587927909 708593971 402854378 501838314 461335528 518421017 57546349 333912235 9519720 519493302 234904456 715201574 325539098 474419860 356756847 664628189 557344064 757347801 484768216 651661569 39751975 623391041 529016619 663903215 348730143 453038626 410445656 629453190 303063731 547146637 397118500 538776537 390210058 593724563 476366524 797855246 785895949 867143034 395211352 947079901 937404717 959166445 607667028 703136566 111210853 860255747 429228387 701218146 147526372 334194043 276575441 959137282 846751797 900999075 495862211 840142899 452388934 608629960 95293328 141224800 99386476 909110922 417522681 977622489 171556050 271013553 188209159 772763277 583922634 754565177 655619241 931398802 918255061 922328861 339044192 676184003 466506410 915687929 831063211 832382458 269055711 812561457 474221004 752390580 667579154 822716433 159639145 992364423 840066991 878229441 171255062 766215262 409005962 855395598 144046963 998753163 793261631 897011987 596277389 928077826 508473909 919537858 835763554 992876930 146704005 765161465 394915165 805551680 775636838 805961761 752496335 908011012 892844536 921937727 74647224 118280042 75307120 660456901 490186820 646155846 84918346 184718197 158268732 543054630 495001236 738439256 380338082 435475069 78064452 259279695 182749504 275953757 156994214 656524565 89943849 515607427 489481067 557883759 98920895 638377754 427230139 730590299 97129072 640036217 557537039 725337504 650341999 915657048 667776621 900381932 385116563 929717676 129351908 488270667 84809510 177147080 122475899 212787617 66228604 862119309 369730153 640339375 70572770 331443948 236429459 783376306 250202756 724570533 414139116 715598323 62405965 447322910 41668748 959970921 29426713 362704886 164749471 459578794 291188910 964443050 448216422 737963777 653027201 796581829 169946005 435632455 201663433 277519281 98960412 557802939 110266966 378266713 23567648 596587833 23917208 331241676 515257 746697672 527342871 695270045 235564836 266908927 144997950 915077268 902878525 968822126 317026486 527360786 274437096 632932484 61214185 233115329 9617814 443993181 143900256 796918652 392364874 916695453 248957402 330771264 79550375 848827078 708688175 943879078 54041879 428725048 303817131 972971226 373490118 880896065 120697255 570839147 475301795 568759740 316414047 547140870 187953911 851140472 402105351 955105469 867705522 888388827 887858758 909363912 484293588 509513143 171333077 904228680 466519859 702932797 558229120 659412918 33983703 118850704 79046382 512645501 460436773 887093067 325242774 523007770 218319840 498071862 152437752 152505185 128558749 563563331 15564222 416906974 329337067 762522040 653777146 950161237 882565354 946561680 56422869 837078752 793793518 895977975 321444575 457230238 378143179 529486562 410326445 795662142 594147558 757852612 84311807 385134092 106181501 900404217 867508198 955979099 707520431 803682876 544116037 717659560 530829734 979934000 127855091 969790367 46078616 929824394 298436766 322595848 5760394 346491664 6313131 512152358 234300390 290819928 194233077 787920712 586225665 768900852 651357355 753244054 369827476 801354622 795592958 893044657 825369206 944092931 310573624 977269807 35500173 742065317 397055686 619035268 570138039 864197848 464315541 636997981 85420565 96532910 12244385 489592586 338268827 870678554 201222732 505304040 314327057 823065479 164779057 176663110 66663215 791741653 706502459 856729559 184318007 202619146 60864963 818057227 254234874 796196520 458967179 477496840 25203844 165781077 139420653 149303014 82775828 765462253 532473181 689070759 615635860 790613636 481360467 662929732 234662743 463924219 313730527 831273493 366970521 445188075 169645938 773678065 632018636 682739439 284757647 935365015 509327050 772283285 572059054 969143284 446870630 986498720 212011949 632378440 472273193 606269851 87357354 716038913 39468778 210246002 39959380 283752226 148349990 669010055 399695706 422148549 278341534 625272422 445304337 860865136 336333384 921300887 15957790 196750896 161123848 432981538 358324009 478204710 237589728 938527482 303187433 443246647 4780139 75096223 39457667 86104759 5980257 918656001 110479145 307572009 138011031 772963557 84149591 798711502 347477565 543549372 519323781 776043198 316611700 395619626 270299646 804121176 275680619 709180908 541499889 762560092 295597104 721571920 185568952 837881977 752160633 923680636 637281377 828234789 353796427 568670079 364194455 913547207 742846370 946432603 707627361 722569614 296531611 842727515 223006936 488917564 311638160 748936944 315698714 522850333 208182213 326704989 173906365 759923017 203359485 776005814 604250813 857892675 787549135 967942668 464300630 549257976 10218279 203509415 93849606 623717820 601401437 625681394 335201721 365733974 264904529 985956289 397640707 571644671 350135555 398943895 388172466 810601927 214498222 437123204 303656371 885658104 804457744 973967992 626925175 791521135 672381757 711310733 461947669 493551800 433442904 694707002 421527858 670916904 217727049 842560258 277226335 327406819 98160560 920792878 224886594 843827933 582065921 661222923 152146596 373281841 206813976 263687008 145305919 745023050 150194596 781095067 314306823 663911484 605575979 811066396 235708811 289730337 177208255 706200978 151251671 423514126 244279647 936595290 611166722 830081481 587730588 979298146 463666604 862371956 79143471 449293292 393633131 987802397 768801814 881233672 206070279 285139562 72754357 726147294 604802482 974880305 139341784 786610013 213222509 711309670 639761478 977688135 151397018 873673005 183779989 289011649 202356997 691433736 551094131 665029759 494158193 684556453 145923497 746172601 261749505 768868355 340062347 402961239 73722983 137145567 124812106 985752091 891490542 954244110 166827750 796894804 564551713 640690926 303620271 974514241 561820684 601971825 442333848 933362925 7450428 862337912 613372794 857535789 395756042 848484160 846747926 966854715 668995970 870853009 30254303 486634287 422828580 458294828 366635460 863194137 676950868 794628391 62363394 285171030 209422040 408008379 112838791 200337188 153026245 340438730 265541345 881581490 396018517 824581251 404299922 611662676 155223233 488584970 16416654 212776424 163591752 767064140 362889343 828313956 757387076 921697295 126128634 453092462 100475234 790252209 61610408 312915534 151447336 912161883 263740712 594205596 173317266 855565833 264816916 590566458 387021302 632281720 165215860 504367174 350034260 485417585 378969645 646513134 391346724 460348532 169101196 452395494 237526814 905379026 3632111 474033530 83928079 603353609 581120169 663356356 82780854 984091938 521819427 998467990 476834791 801814710 111900751 449968977 101360542 731975358 97835141 412311918 315924310 781810778 44400064 453433529 377084172 401256216 397842539 669260356 588158312 843696867 70536886 343421840 71225977 586419379 129844766 867151439 766679076 891187059 54758647 341817061 110337711 286860450 140893918 506912982 103183065 822542549 6695543 515645262 428299101 481564154 348295830 966606317 816738374 821024772 645231788 712945564 199336288 539462784 348748267 399108472 305501213 546305937 37324318 496139399 343767392 905509478 302121994 729997125 600682248 887528412 150943075 152144874 59723824 79153908 11381883 867783864 81775834 808014336 368267104 766877407 302804078 912785190 467353728 747179835 199790623 503357651 9887527 977040597 684289102 970997648 482937340 693790139 460269093 886255638 423668720 837766073 358566754 855795892 298622036 473913609 110420293 385081158 285275130 783500359 501349046 724462472 705167186 778158961 521705659 932685148 592884917 706987082 56820351 181211726 76821402 854183149 381289263 688750925 148776234 817630012 723851537 841231535 579975606 901808583 498606903 500405921 192223972 563815829 426013795 783489928 738870064 825424680 653892685 808521086 626682212 634176496 273163218 876905252 762535687 985166150 758875104 948518095 700310359 710749515 73002954 729676487 697640541 852050093 716169079 934019838 467859012 579636148 214625185 866692499 759683881 996393234 400693946 631946831 459820354 645876926 623212319 939993630 272515963 997513308 128653403 148085711 139277283 416250969 375429382 758822746 155821617 271923592 191795495 501830416 117228558 695662478 65919843 887943682 842421390 902299225 470247976 995142000 198936527 530886651 8470974 525135677 74176186 215841108 120189018 167731875 152317023 363346605 340711244 536011775 202053064 316072796 214924 758938047 290831998 637145181 382018583 604224060 513800140 549681724 455668251 745949279 445704609 764472583 79884925 680011995 126298463 514852364 448844653 570709493 13698157 341097779 119666565 172977141 89950128 859376240 412093871 690535062 393114759 687040007 209692893 330855635 246063226 644867833 246625680 317988880 133875151 578081564 202579032 576124218 278379099 972228920 936943964 995866426 642948844 744285679 522042171 700650769 249980310 452450575 26994732 444097114 125154645 456250495 11175292 789516588 318262435 742507102 102710842 221369024 117504167 566603774 542706869 748478020 713207618 744574741 601940470 962690827 515496361 542521855 370594057 638783509 5046939 347902086 6525812 800819848 484062866 759117449 674958923 944176573 111177704 559626163 554464427 831757550 248252660 799445956 656669849 888286290 319982500 599378733 63430813 603961330 215296971 728191696 68263742 207187633 53845745 335458277 192952939 789243694 705409352 736543379 675943439 680535042 410069140 982089698 509989716 884445661 289912063 526577544 331173337 407942166 17866613 919842426 707937693 970977135 135114329 237386133 1846148 15051457 2552102 938179566 821915563 934896164 582017483 714113694 366423853 740372912 382347007 572978809 348413237 604120354 436283296 439790220 275835993 387411703 26795782 693078448 69986347 161154652 19837461 749591519 310852071 712886606 23893844 100386396 98295896 158404719 121272674 263746092 208012320 858413135 24473420 600713987 149750378 774892384 131980290 260960706 232015285 256781681 42053345 117601972 99346204 885019762 358472694 597881477 496770041 718626601 148047629 346444781 196831088 586756319 214088934 533905259 271104874 715313295 221558373 461943942 55901401 484123236 470089149 787016855 287788744 637023745 69564764 191301673 157032944 245893641 212702602 636871781 507210091 762615309 558885486 896046700 737994358 993644359 773900170 855277838 648926437 953619027 7578151 838425254 385691714 948800900 602256260 826171618 346397371 423298163 305152615 367236236 82801810 183650384 67530075 427208216 94595802 721374284 48701031 624153825 539675296 918203651 411754675 685271027 404639908 460400337 96947552 641459005 553681781 586060160 226405951 314447803 268536156 724270123 224845755 791664936 671382034 901063532 569581461 768146475 291112876 876070529 791635820 832237486 570779733 939282705 936408093 980444423 496514864 623011892 145199764 944177476 350018879 928417262 480352217 980768437 833726151 922665411 415878914 718618999 136981938 834393635 383148652 604962793 20911383 31071373 16946467 965834828 718858487 840306957 471818731 836243125 814866933 947808143 93859563 686778058 463408502 771797035 650695861 942801299 837398141 892151555 524338850 907417763 713928594 803339187 260567854 333234323 265292029 316286930 198352599 924834483 498038527 880548787 204256472 535710857 230974581 234231231 177357028 754201637 615078138 998996288 635920120 921808195 142163196 795366276 260849631 685440037 610163902 932704166 750715805 851764630 86951916 983992743 343144384 807113244 263179281 494516615 254831409 998325326 639906535 997266321 714050710 806174191 239918237 754468924 242805717 636453500 520623108 599818860 470271420 756037716 385104081 525912725 147354290 950598470 543279903 829703114 608956911 726031205 469382794 871109167 524554454 642221365 197662072 523224917 361726473 439621225 207305236 248656319 191078313 858136035 475125164 527259166 419895748 656379731 58776616 244951683 195870402 570322335 459331158 651440749 235252967 570134701 199630858 666037607 62932734 108237824 85512478 967476398 418976590 789214004 122507977 861269526 827469996 928202796 658790710 946341019 832491179 952801899 905685798 948891649 604653189 864887054 502300600 550648276 259090322 308514564 88552602 215321550 70635967 534199221 443389279 980234508 545221941 710286223 126812753 614646421 416568332 498486448 270581979 961620245 912069677 972570393 188209543 378065319 331125078 373164661 200328855 542741766 372811507 774839394 556235097 755178131 482116220 634535869 601806701 616136856 171604942 396671940 260949280 844055666 113230193 294858083 121619598 947346418 388356262 782555839 688379396 831919100 315045398 836944295 699353849 894585985 162803546 291420983 221179630 703259519 568508174 905075726 377780441 745940520 304016922 471433926 308436568 913742413 270552402 656162498 262356002 334131450 202573971 889025359 708712287 915440849 894438337 972884877 897849623 945367157 434928925 734498014 189150032 313213554 8438477 570322249 489172601 734838978 510483115 698965040 383772214 391208733 236664451 781629957 161883913 955368490 318399432 488282740 411458011 495655323 323807623 779256936 736719378 867304147 180315018 630007049 482513678 738665724 570770907 687612352 125541185 214867072 213645586 389053745 127308487 318997900 299998444 355111259 24124130 851164147 139469048 707405086 690332861 963063038 916149077 992276663 907337988 980931551 459969008 919199448 125902304 321345851 155456695 639783395 52190702 492955922 55658049 58306335 37634682 621595649 47977715 569299739 140888856 179401039 137741796 773821204 718783759 733163862 84193629 211430533 144588513 369565270 100017383 725053005 246814797 874671567 715582802 819750616 382569354 645079745 461691909 820128704 725538910 854971880 485827693 637575870 425907743 528243598 365382608 482442127 261696143 301479298 189873457 611275578 345037440 967053374 92782884 566010325 157120981 460161653 305606351 839637630 614967671 730326334 139462603 542605541 62092806 320828713 196187285 804038429 751228109 994913797 850152822 998037501 869317709 881196613 778408453 783170358 169622634 194133297 167232924 894612207 610735987 992718642 36061314 47486846 9007307 975892193 951544088 973556969 225922119 462331123 369435355 704632510 150124526 953687685 352357252 633351948 125362769 468561502 458219368 899503486 181999923 590199344 4122523 594616808 336278674 491509949 489009671 988081805 476838102 621615463 146270782 424338999 174738471 492918252 203746844 930729933 500954179 979557235 236948365 377869048 281318959 703267259 534758496 674277281 416633421 904635456 611753137 905416239 668354555 927376327 172690356 377468367 370640572 458130887 136783088 644094749 27671792 574618485 424580426 458498512 355218543 633277456 228003151 352634424 226006176 373144912 24238827 491690169 87076179 399865777 384108631 711340772 247369952 457733356 250701519 925672005 775129583 832118628 497157632 824877518 666204622 984293504 718707452 760648821 111013919 267843730 109502817 766203196 539538926 689022173 290997354 898530348 817008801 976333900 306862090 323054823 294583575 467013689 111814001 860379735 359977091 528116574 521800066 568641101 12556860 941681298 655091357 675673957 614796797 719112022 386629169 749451233 34411531 427364208 133146194 619023562 31959210 974302493 650282236 677803707 972568 160551033 86504652 975774863 295413581 465093284 191980392 945290530 542049082 691609080 257712105 663791746 612267827 947447720 151353371 589535865 216761794 684167580 657391658 670379605 357829284 555252394 101009657 323808416 58355068 67079838 58094464 748649498 549479362 898894164 513207177 591842918 327878642 335632550 26463393 967410183 602535625 999014481 954548171 988822288 449462151 487956411 61617828 474828980 405954008 458615997 344437486 884320399 192473644 466562622 221567064 888278732 797249304 984069042 648362148 791380581 28543500 384967682 28389988 483881162 174454093 428121143 104723925 530084749 364559626 403695423 63565890 593700070 236566501 692210177 200541042 443690075 107932114 829458588 190084566 921375441 61467201 716287623 683761126 933182451 908029489 975435140 10836685 157384136 55965468 373188921 88889114 935791629 814037304 942387095 199413020 436876371 145708110 480799942 440792621 762386253 360195961 769102942 330788620 960556479 626614517 965663331 636339597 638633474 598907968 839146002 31095472 529581187 215504361 220338265 53262202 333271590 123754052 901758402 126403895 958960561 632293565 813746986 376019115 970215662 67187206 629958535 313966733 337275487 197619427 782515181 354307458 820439698 779813066 794168713 474635207 673932822 390625406 793800504 470895130 664893380 362397028 846019968 786297851 806515874 675400804 959366083 68944187 820612176 413156058 805676901 573739062 742761798 668201869 985573463 713885932 925872234 736366614 997702486 730029690 871272199 262573851 310707896 146003359 481343251 329508528 605492442 440393319 881232825 857847843 951071366 131814732 632980226 1847806 32138666 2620440 426396425 103668058 488153508 443987763 792357185 262878148 863044725 666357107 751380663 131943398 617744681 406929458 972605443 694325166 915246418 98446153 811771846 313917859 760981049 282823250 549609297 513621515 741056665 445992809 750435847 31852234 328030211 12052019 121872979 29589187 207966683 200097451 581307891 183951555 653291949 615353365 877452024 672859648 735682946 43689802 872329982 199236489 746898074 701063618 839434907 145233473 873104913 200946147 291430011 252352246 657683477 90203578 807923406 359201715 941018315 227410530 550173586 174327337 902299092 695003225 881602082 414479 258545362 114511186 189045605 75059902 647464274 117476141 448167430 294624320 663358327 542211420 980214155 360714026 565230042 487539722 870444591 115166644 640788491 233943147 888983582 321589022 906175104 721350249 755093685 424126481 519914494 229746806 787713439 560554156 580575794 426810192 451440673 55729523 569467006 514850329 531538210 64412892 175873643 154461687 932408814 897703692 971183602 508223188 533995869 497653153 592857760 539266866 786000486 128874509 328542371 294519763 862506949 537494222 878880332 267210612 694711653 300033998 642775112 631901515 842633351 441167233 721483100 214927811 468238760 134078499 318096178 89229726 554571949 237342301 594536307 185350713 827662061 352328566 523065046 249676377 482182851 10361353 656181563 596572388 717014573 715088938 974800800 1803266 613379275 89256333 693953921 684587975 966076889 406610497 542604303 108427777 388459740 260931329 557496250 387603260 932341894 187812489 421590653 167695653 883547589 776379359 889269798 582426854 807446135 250698674 682426428 502371390 640874639 543495268 879174878 6305551 376956174 364682415 897242590 355626009 907096570 701524198 960121467 929026607 998876684 808871941 919630407 418747640 438467534 20123940 862390095 461064213 544222615 278741439 635582264 319423667 714994828 363833621 813009320 415154975 509759815 125004338 547802974 304948420 942985647 468588454 761484206 718136113 957727118 37753453 908431839 638351458 770795624 511841533 610458448 364229752 968306838 118171772 458203686 64900995 173897380 8084720 629247256 547746678 629576901 332963760 792132630 41175128 444118106 197756924 663358869 258229053 300165864 81107980 898116749 84359957 456213135 454969590 479475494 178932915 602323925 541801030 988829448 485667345 537906750 486616863 524337008 96479706 584061001 273037179 487689440 411106808 558003973 173408169 334260409 306927811 631786887 486476024 964271556 674120668 784738475 767553355 804513816 604823976 861978479 249844088 483203651 299396156 552427510 182595022 663206404 101129903 966874601 764280372 788215963 351608985 410190941 185116822 324905404 106415971 515453654 70127502 997786445 73052953 809228405 351060305 861111748 497663100 595522440 123545794 705397491 465216955 873928829 664854105 845086682 629463151 841088314 129978059 605704251 237646745 814047876 101560337 441597286 249436067 824594401 806455803 862593959 39688632 342558897 332747678 410500713 285222750 417689915 112592783 689826999 53470759 560854672 485494068 797723212 357776163 560169062 486122311 904669635 178389029 235650585 56822263 263677523 134472553 360567850 246629904 982255648 129276770 474266327 315346276 320326179 232602116 417458835 350553250 733111114 56978943 490653769 32844324 726727612 698978592 745771805 507157411 815686759 465169399 910467524 104105112 505616492 264145870 845202545 426175166 905906003 106256338 200404940 48475134 91567700 88528909 636530850 605965852 794677974 624379319 894623252 702165437 988022547 681805213 788843504 681533665 888916773 860016444 988208871 375647323 598355422 96125397 676294518 600774787 919589626 662922098 833648161 510181295 541455857 134241327 834868982 125887275 855903911 685652237 742405340 87704764 152735200 70612950 789830547 133056255 513020327 232813467 599765736 534296 881513152 17871461 305216798 152712008 395200911 120222146 761300179 394645860 891572487 239581849 352733790 120662832 238173451 77418696 782836440 338441819 364078516 329639354 958499149 154735350 896814379 113763849 169229741 152148059 814956296 371492236 593702190 131817314 910706016 10159783 426730420 381352041 669994188 535598010 628924657 292256710 412518721 305724164 953347263 737110739 783086410 691264598 934409358 511730223 661485933 165914762 439544809 164232319 693289207 301230752 871974095 440278104 726244544 95399614 478668753 336642382 825036459 400786542 808692250 51460066 362271079 33361513 120874959 5300244 483468671 397881773 690810677 396917330 500008536 405896599 461550416 49877815 662209377 84982115 722026407 440520008 543557395 332829497 576734805 6565852 876208786 739173106 896271008 321769995 911216337 516760676 796476448 507269012 635425836 211594444 975316100 233811950 560952904 435537762 526084765 393700662 911787031 417807447 726620346 717682244 874028688 129011016 232630844 194253531 679758205 226445939 835467442 589056935 843257425 511385612 777794619 155733888 559702736 305308079 394702562 134163542 995080138 90581286 835987755 101448148 464143022 13962379 316993091 115067965 410384418 248909397 540007099 177553309 261981272 190725847 289185445 31440597 146338982 138741075 961446986 683729594 699472281 269450320 873791111 100042088 753565212 591832292 816835384 755263305 855355131 797503228 896764590 624820694 625764249 240008490 455695953 112835530 268744903 160010687 462496738 60386778 647891214 92127147 200376330 71738323 430907234 393369148 850942044 82741173 441779534 68096581 672584128 21896393 119994784 113021362 130024925 20770885 946675850 584400416 632981328 489808233 617898209 460201400 831728080 232545469 990199961 469149862 490930777 433339335 925286120 463490791 565740664 419270440 800878655 189497958 793111522 682389020 854407888 107053719 874482759 326674579 643715417 351464148 452953897 309255062 851103755 173518703 282760316 137301608 436600796 317802106 661503739 569359030 716185245 470393000 770793816 534468755 964851937 251551838 900408760 617531202 798913699 555472416 625422839 301051200 614157658 238678930 281340844 240378059 980758626 7384091 201513797 151343063 553422269 141364925 838432873 190680019 657520469 505488715 715868830 81400655 966917118 550356707 677173763 213511222 646611798 137775126 521842300 64134697 116957040 16814138 341590703 254950988 496854912 437200735 490357385 354754686 996669257 611775026 967301203 441158782 812399071 288746562 407260438 158138298 799437859 552870105 833581455 655718378 960455676 170040882 835864640 267863741 491045402 311734373 365827695 223101168 867788386 228525322 648037465 637144386 885774237 583913929 868856016 797098213 998437213 567182700 677686093 195031176 856859185 373534531 393289941 211106533 349018760 48073969 167047794 63898547 232657224 4957218 321796754 2932694 383155119 15966097 866235409 836485865 998591288 390075154 832781510 122750388 756337148 684885884 698327215 191506866 467720851 154654488 209138480 75847483 781822293 545603334 848811528 139616434 809876319 70880053 346306612 27853002 515753031 134847270 256610097 215741272 773991618 397755437 448429832 17399173 675677349 19077669 676915454 239271129 897736937 12578522 754677822 264223364 620056570 147743210 371015238 216789727 887939948 395304513 419734429 375562528 762421020 366089047 575234782 478972753 930280414 270304896 479846249 433541744 514169819 165336394 363812791 221255508 389735348 205655729 365334700 210586516 334340193 167108826 507581417 270033925 443588004 438800306 713746632 222635221 971656676 867011006 899959938 107839354 317145165 22457838 371851715 341033334 736164325 627531990 740041982 112278293 306784787 16234011 110073170 72908782 844144988 432877489 792115049 600293532 713514822 684590245 967729846 167462294 748480507 593494800 802342810 452805743 616474356 373479194 977603452 771456758 913745292 878279628 908698366 294197179 441848323 89944337 923235589 67291694 461972125 420463086 472408529 203391237 629965916 572953769 913171667 496954983 960691031 301256004 823618956 398056896 558826592 180602770 209130957 42298109 759736543 679754955 726666447 710867566 797443637 301527719 957465677 533680548 724542681 638810066 857143063 335912949 806541770 468981591 992226381 854619744 859693411 640782556 702113743 444771550 675449442 176680133 925885058 356238752 602902220 436061662 456372556 275766910 549854686 16215043 853248264 709722748 937113550 608603815 810227322 704292546 823879392 726955854 863738151 267605692 328710899 31117246 250905500 107203817 462729683 271604143 315052281 36882922 141512534 63703469 848096286 276840378 475658108 315581083 426167643 45908339 423469331 285600012 820918265 81616770 87288911 34937277 53655170 50921552 302094765 199211335 560403214 215328181 409884510 369271759 412425261 10422595 342140073 62286731 381910941 118034302 901353026 26940715 431939444 349028802 670811688 214718378 315434572 149535892 411921454 17986460 320550133 259997929 348505328 84448064 845031195 290141477 373447480 272899432 981168745 553238966 740551758 250696406 612833836 566267723 771668498 458457632 833656388 505491896 829124419 342715641 427541103 15048833 381195149 296258672 929302891 779403458 791590012 166749578 204101911 123904749 450562765 257431918 446370699 441972624 927110100 587866915 782132658 743061651 770044804 419923415 433872275 413973900 975705931 147772738 988564327 636260492 836536394 303379962 943001274 112284834 487570905 393413223 974431697 258825765 474518196 198766750 748860688 641515621 939093282 549218300 644696205 367980770 636576728 574940852 944502176 188997916 813389609 531776835 604096992 123490763 464063122 86086439 518260486 295630532 837786047 659181692 891133797 825804199 892681368 44442263 773853845 598893197 962326928 511248384 875620441 578943358 931924152 925884079 948018014 665891937 764624388 258246058 901670378 708884070 980679933 97956554 477285673 176370694 919191729 379865375 927930564 328664070 416651205 10335080 15212292 6135367 840400562 40986002 794274712 161942107 688440645 431794054 536959701 240412452 670732153 129873042 369368677 225304528 437421188 121309387 957214932 186681688 534577086 24694453 557890118 96782116 517080289 382880082 855594135 568839985 939202218 243963145 661563208 512198907 949425624 453591025 953318040 11419480 379577542 274574988 955283907 883382246 975834056 56729326 662545877 13690374 838361136 340724542 714387226 342385453 794160764 87673168 422774810 329634650 621453579 59928235 838102418 57147591 847692594 764205394 769854852 216508454 789915202 89451800 427478566 192001259 843638534 290517759 937993364 449846187 681498566 226410119 623007794 32684769 828142528 369726991 435121820 181328488 453234508 96588611 738472671 661370582 771554988 345522311 571281872 427562278 487973293 296625076 685288749 471037737 540985535 63749837 947231123 820188439 954494738 114480097 523116728 500424304 985439952 397102713 647976927 183031059 413656373 200122405 443643273 438090436 654022720 653977802 910251177 29672789 804890189 300591922 694003058 264969214 618599999 277950252 755197920 515164706 794075745 520642974 692991938 97059973 745847460 528383166 724594803 675159944 888815950 141629401 783077818 12200893 301149537 182450887 364482613 180793990 779994711 540483620 747945192 114018865 873466004 230276308 697178167 690543138 863119260 734270623 890504898 717862410 847298065 661791141 784440266 641813813 660000231 652757247 826469024 619698370 688184952 409878847 689029765 379868555 472490414 194557323 780324922 312705633 494934263 32823090 741461759 146690970 756840647 567718658 662533178 229424846 659876323 211698249 417421213 370288013 749500064 517723681 977649934 385577505 780411665 454377561 563574158 514213239 744797106 512699169 761174157 722879564 826928780 143373970 243831644 56809108 108841413 69274871 985174585 412639945 850797426 85072206 824371678 383927720 841370433 754827147 977409555 47304182 567154894 481955546 875082825 208033002 652826357 220010933 396845818 254236592 958073520 366533736 620502928 260028188 859165998 235212409 305870509 61314951 948361777 450958132 867776379 80900747 179234417 109072046 125964071 23382498 250089277 138032985 302293166 89188196 468057561 82818949 698511200 120834730 725606705 361701722 373203950 135356517 928337352 714913009 884948048 565595902 812273253 595744706 772621051 106209079 547934857 309979066 776567337 342583495 982224638 837690304 839565763 544470377 849396750 200651418 627936685 72367388 562125540 495389395 602412228 453277694 955041833 496897030 689810922 18492693 468842773 54464127 818230060 55836252 215948511 116865340 721514746 560633763 899274426 670485368 854355042 307916086 741613670 127588965 316960723 197893428 973023202 257544251 917624426 551436216 930315815 224709857 634097018 425238005 539922341 85561281 959498973 724601543 929283814 779500912 905539980 857739189 893857333 441413504 498460899 381127861 945102518 49495301 955064995 308643099 746176538 581890986 805555537 304031514 304422576 220475387 323234410 213042728 289987474 171432999 909614613 850437208 862722306 749972628 893773213 865123695 909925228 574586858 926093168 825130410 834871965 235183868 730179088 128735685 624093427 52141248 112748020 8205108 179085471 26107992 932796367 245607217 791333549 568465422 960869413 615683098 656963831 132323328 337433891 69916729 749792656 331233333 831933585 142852718 998208465 263544284 686674933 415475469 913206207 34845984 207760546 133361871 151969971 22590857 734443625 587983753 859883697 739169450 931355520 870980178 874945368 112396249 849197367 225752679 359979900 43848879 943129779 476822238 933778093 638945263 767672558 291549454 319286767 57296880 569084057 477540128 495459925 143967774 873376369 261206296 785262941 106854827 134519930 3417167 305705526 63181184 252005737 25990957 891774861 521540532 673927696 29774039 949433478 582871275 632399363 523315619 716144868 416025928 466523622 372522484 688188418 17408186 159560922 101645735 189876289 84456183 921351609 887557245 931941641 758279335 836171349 646240377 885947598 327784131 664639619 661447922 726522832 365894719 399838377 156619555 833740703 661971867 874359536 477868139 726965515 300077799 887879476 124760199 151813969 14999466 163483784 47307776 234491038 177316811 804559413 561661748 663962397 209375462 674152179 146036018 296683394 181687742 981441275 110029076 726661102 159310556 755249706 340263069 785744498 147553239 715234502 485175181 933655966 343880051 414609619 395467127 714814174 660793636 934509972 506347577 602047368 236798646 446521351 257602205 872918303 54556667 864419525 394782566 662638920 212333773 899955530 544351508 912951312 585306434 865800111 575861612 956385023 660389011 743146953 244633976 527344702 419892666 548212873 502127499 844362620 136665219 561648672 518531451 967847925 849822688 963520500 181079351 460709930 24838154 716948423 687716813 927261807 72306803 374012220 94169872 556906804 491518649 886648854 260947207 727467742 417209976 698855542 632977256 984657665 344737576 402231826 178947777 472747825 167590064 362210588 65975896 174134979 105890494 685910996 310701098 917335525 331109978 352683566 313712374 974655058 959622816 977679526 398731404 801982685 261455042 768760005 159157274 209366447 49968811 412325397 239602132 251956337 97856043 903269419 218567227 678225340 653841671 758415348 515816186 654362021 353316858 770063844 15013279 917166187 167343065 589040880 196475277 223636115 56818229 607595577 299043472 384635388 213850156 780562050 285200904 638450228 86092409 646198824 443828888 576959395 530431848 898615450 823373871 857771219 10566386 913373940 161872575 463415071 197434072 608895488 376022149 771452506 499368904 968311495 406423863 657510013 425100883 446852268 437665061 666827631 71589175 722747099 569182721 957266674 469760396 537369774 138443462 732846505 463657331 824032741 410984143 836767801 294761212 762464160 355324790 792406157 203015378 528267408 118676590 452713979 121510747 159022731 34393418 684309388 503397077 581464032 165148057 945601782 443566873 897284334 495194186 841749200 612446281 998320533 665060413 801480283 736968591 868623614 625935856 658778868 400474704 407060465 157145871 556326197 283215331 529430310 331822539 907324303 102815011 261478778 6670967 202655141 175021999 283148273 267093793 707249086 603879941 972658737 62414027 794863922 453738565 636920620 147806948 589951621 515927596 750188779 350964756 914417749 490635580 543627138 490843780 927342164 791878442 983135944 796803518 810371598 323175564 776720272 494667579 611558130 305502997 740298260 368941068 763107449 532991129 993794957 875619212 943687716 220718010 668099873 475359704 687029173 163706021 621884987 235412652 847414485 10788699 984769826 321623226 677969368 621708954 862725453 685584762 742895430 727747507 967382403 34743750 395857866 59851114 312756105 162836526 992304048 295206862 814569431 306823814 949734565 267608463 335661477 278312847 935479833 422809246 468060522 373518470 909686940 743294366 791806888 113902386 981916748 46450094 125419079 95256836 113260281 41581309 327598181 242906651 440755002 14638281 18332889 5718327 219487687 186702266 573899537 82735632 462708160 101368175 772383119 266493060 366808794 287554331 996834233 912587404 942214867 551461165 744427870 503437339 694018801 84178484 750442327 344941905 463182828 342168193 390865557 125476309 959265017 172799941 199376325 16216425 714224785 268902581 453909207 300477578 633906070 441503368 744475639 690798011 901992433 818153160 875089110 121225449 225897005 171457620 638914163 610091425 610966008 206876674 641489470 287661993 524553666 474126578 618141236 343537323 774681115 234652742 828750209 44706448 571148572 162856431 601434076 513850878 884737506 518926889 601623553 574887072 895194658 789233133 839471192 329531313 372017001 120771324 865710500 95954207 677948176 428678762 711843168 394276724 989952801 224021492 400753301 240470659 970729350 302971189 759306587 33021387 162321057 3498719 531755547 522765726 866459938 814185454 973622101 219933207 418082938 13299662 137469041 108155187 723905316 720527406 790544998 514083160 974833204 786300458 854014670 207711480 687798327 440798588 492220191 289005651 725118364 280760033 852806566 583771485 867505813 432286414 574497653 138816135 544090669 83065484 369116888 75429155 832499257 766861157 905767982 705507846 913794382 357205238 769573153 348896870 663963544 25189778 566452474 550759291 665260117 174493963 576215838 344884907 386565990 63518393 912378200 543970154 613761257 567388976 810093009 322652064 829184558 603596979 905519851 163017319 409604407 297432602 361145731 111671249 436374228 155294286 241808341 109983541 484585154 232949634 811256892 145951935 932751840 797963246 876413420 467548169 863792044 241682523 909440101 673950943 876907965 561967252 760278306 361870520 374280881 77593088 779062460 99664993 705553158 645095297 883638094 680961433 747313422 510926343 714629924 461726143 972339161 76974625 625136913 220683634 871229349 410520813 410875497 372996539 877814632 720816393 794059684 733563543 839554564 174690181 524862136 87521445 149866910 82398109 745198411 675496421 724784390 692534042 861582597 233518036 958275803 906570221 937287801 503686251 671879021 546569381 715460648 71079534 280678483 280544997 307969089 14450012 639720940 294873017 530684952 525146903 765742738 101320458 418396060 167663190 224994057 168705518 505655019 60209967 676281706 350736901 863402064 2583358 320360971 318525478 343505089 157159466 840709489 230739186 454543881 205469434 446868867 154428828 472766348 206362083 662991218 440753790 663233530 450253097 775494311 582962539 907956029 779897736 889303161 41459179 384618486 35487465 316253012 47586948 365467017 260629630 375831019 69755474 939294577 868588799 977127404 83670017 362402037 290423575 580431937 82124065 814270316 609011204 945754689 599767233 647282338 595680990 913685788 452155101 484035544 315997392 862145466 696141069 723018049 719242167 776284495 730345722 805501726 487455558 782246112 84827104 535401547 369144944 866711489 348093154 735348741 379190172 583964596 451408493 827987744 689626694 693927551 71404181 281527203 98350397 571964697 35194696 189279131 184636036 609442785 474814635 891443124 106730807 281738162 30052097 810766032 201328765 484114276 243096066 347939098 305819009 886587091 691805164 731283911 184873362 201210226 143155378 247773554 38187055 376874235 178077876 221099656 177262659 662476823 649804622 907207457 806244882 993015155 822339635 842422455 135834731 460371178 287059379 554302487 219070292 699908214 561760918 819104692 292615071 357060966 74212722 603468729 590505319 610529005 357587852 789246651 267936669 629107006 184258379 495451303 248770316 618839286 434213086 505052045 400807586 651095880 202731335 687161359 686445841 931041020 342696064 578365387 297211827 901375198 727495665 983040081 456196444 781962755 69035141 997982057 483438504 993799113 853231421 938817064 764927529 802438938 695812593 836551114 634760042 700380519 382121367 782959223 118243800 379489598 338539833 381639959 335012390 495929369 97402113 464984797 181419865 664737673 367219948 429407404 143255014 208880760 101113922 757425569 390865803 663154340 575615719 805678849 122594114 576233188 504668465 645082138 395453658 766932505 306002844 706751847 233447128 768920851 45540295 879421352 742801124 933749969 797770982 995412621 844183821 950680834 341989123 838752235 486871667 917458977 460512617 747733121 681854938 860052262 246432353 857470771 145411159 901088287 204424281 523193597 274316078 833750115 526644939 940542920 599280996 833669600 744684688 889724834 383567149 774259750 101537373 218727106 108595705 238990344 212111330 911347632 831386437 878164430 468729833 602093754 3117994 31975299 2309323 793443941 655097345 784709365 603234487 765964404 719211447 844045322 658780564 834745406 658656124 882555769 533164755 535035395 166946589 571402636 205532631 577994082 562650171 825376954 785230424 923717258 200529619 573432442 145884077 387874702 102840182 576147536 362855378 769160343 497628327 565298476 384305537 548101048 465465200 874623060 750351214 888997575 394020595 812216736 278430999 810332406 185461298 358703354 278528999 765755223 30019186 754595285 617219132 921055441 7709585 708367920 206991437 298922313 70827545 975236334 276649868 311698803 119688569 298675345 178503572 888431517 442326757 799336473 65359604 782250597 601389221 958724879 189337010 608332411 592588351 648395856 40218904 692258235 613588370 803094386 47498419 295255103 59938820 345412943 158733196 514905289 261066037 532658796 275288899 300628948 113185448 405995311 107089719 949290068 445166542 568478947 362242584 958349270 777981294 890355554 275115002 411953722 54143232 963558432 875615816 892881017 58875998 936386967 200905940 713859047 230199144 797097782 404586181 558531499 1061308 552802727 63655861 897937985 752604760 828457050 645680289 733368657 353372714 963565378 642746808 737831127 523914783 623970844 245104896 545774166 291731709 785298103 397325353 707649820 507281013 821545839 560951487 891750372 586646207 769632677 427061254 963623996 961597618 991373652 928012800 985468265 310564012 585113039 530034530 626811660 575340659 661240543 547499086 969057323 951872961 980423365 892083628 987151503 806640599 994502949 400900636 902996920 811141320 922415577 699935380 886146636 763851533 944860856 278466960 413435968 397594873 430654556 82892067 223214806 221188802 907698646 233690363 835699452 241069497 265019099 105507021 911285548 186452250 708796006 511593193 750234618 423210693 577055453 532311707 645670741 462639379 874788396 265228774 666351362 568893583 584065039 10044429 11181520 7040984 92329962 41012261 358479161 265713044 518816814 125298327 713823365 447786111 994925371 340980096 875855481 603111834 821910788 452243947 915572355 149977916 896849744 141698028 143519036 125084459 127926215 58828276 884051546 508801800 896993228 59258623 900997390 841112714 907085818 166357397 822536916 241114863 562332935 537281840 789217145 101353781 521505298 105589141 358484368 330987948 888378014 163250039 886637887 673981730 802549750 572147324 708166707 567277803 640697821 543184599 818710265 281846581 432075034 349143795 971619333 573506389 746057825 535457058 890142210 820765261 932198453 89462734 816864864 20633604 94907002 42676777 221779012 132579407 851029723 161548142 256453149 180161485 863046521 283618656 400579548 185852099 316812561 77678727 80925185 1553809 230315434 29145422 114145905 5203923 297033754 51038551 981854437 756067059 994110748 177356287 220127511 104431216 977600241 497286641 708274315 114390834 362016890 170014976 388985697 8409811 424524763 221351047 554094221 461323513 588313941 177097139 480163508 237062756 466391513 334274430 921304705 405978170 581115341 291297789 392922247 100475606 828762658 406654277 681217965 540223733 834358935 811372910 815682842 366917447 660369929 254247741 668301401 595119251 898926795 221195368 496627251 81952136 821549026 769384996 926949006 35370231 757527767 644163059 922497683 112435854 391281877 5195247 609874554 156462675 813110518 727260901 965688287 14305595 239775071 42350379 72856723 66703597 73521709 42583926 507768337 468618159 927957641 558166568 575531603 195044004 373684636 149332228 227260086 181770001 759114505 571722278 858427222 637324172 844362824 552072707 834001908 11802808 99550622 71478350 487452889 368545169 522417345 497668013 623302224 252479022 993273909 625800876 706524848 216475246 632521517 538872706 678912703 327715921 397205229 330196997 379134349 163949194 200114416 71773808 950510446 534389309 727724180 581354266 923783310 247431812 425625210 397739204 997910152 864363845 907415268 424780536 784807604 25227850 334880689 245736479 787807536 503737844 780272546 306887452 983364744 592104973 671544984 148948806 730258825 16274056 133114538 123568669 896483919 788899945 867286839 240110290 961554512 295514508 556623593 54745352 365340357 42539801 831571335 80729935 692848618 302111579 832690890 765282332 896188675 371271391 647850792 293541807 679120648 431881609 534185957 20842006 686392106 154007810 269458079 203480466 899775886 882934156 955242179 544107750 851566531 35899744 879806619 426262170 479992336 209513634 573069324 355066985 977661849 602989058 615331863 403621540 756027933 16353948 726877774 85001006 249300977 132580021 180761420 41102836 243867141 94906224 980616334 582876717 999163981 156524452 462412269 184569530 876943683 557860016 625344871 475204647 739358907 654701541 766597814 252178021 362497038 98994241 345866960 18490954 656311868 239553147 390075248 111281273 558253624 534852038 760384886 347433081 528305202 78786739 137490213 17271775 639109212 505045622 592490205 278284073 481430977 50517646 236795027 74164031 910940722 17420515 520653533 249048996 294466418 57618886 209197501 4055537 334320670 92272181 785392970 353865639 660433081 637264107 658376238 226299312 377225688 353076983 906199392 479486275 875142539 313521460 321202282 46768783 678884824 439554577 694861269 10861964 17352060 6115555 379500580 370821184 847902431 447489164 960283083 26855546 640890977 356576224 830888907 160705160 826165777 246123213 651408951 385400321 569663513 37747489 345894776 15704102 285881854 239345014 784247450 160099911 954637386 549334530 796088226 361782667 784634437 391934909 463600669 421991472 920787035 545610936 650646866 365740033 938911959 250291734 504169673 371082763 938213091 322261883 915119818 41660563 64737161 2599322 446405994 347499597 475883682 145512954 270860289 195908174 552988007 410899899 417533750 404117447 497416382 395492734 931051116 475551070 630589091 520699871 714761258 610419804 703123984 543992083 675191239 316008446 717535960 150022251 185451358 52959896 129539710 37025369 786673061 471153744 967397650 808093034 926945156 870888250 905642458 278292532 603151003 203343232 268150852 12273915 689353204 445658151 689669189 287302005 601050889 396089811 676139207 193437497 652812267 393437280 943179797 169338869 802144689 721637447 929761236 891362623 971592922 415185238 722809883 651834571 843717391 331111659 635418823 355121542 424153977 93369970 305158294 105689559 298726026 147167143 341922232 70487257 207062255 56049372 580213567 255322655 329565596 71871505 816701726 115695594 279834319 98794484 970497982 41336382 460722725 295248031 952388126 417440891 974098878 657544190 873926286 821789609 920142877 833953064 877329655 171060443 744057914 359406423 956631329 879509854 891564389 760927225 917003850 652498557 955306533 549130712 850246602 281125012 583588069 353224855 805528103 164307895 456838007 225780937 337524445 231524378 244121454 121699360 492805687 370895074 935348258 862298108 906607353 522678204 818161071 343676550 869238913 609382205 957266960 591039768 730796648 303454117 439909691 430667110 441570870 333197376 912888076 358198922 704870626 471197318 673469841 466961464 687076215 175505709 472664039 366588297 644838894 277112771 529817160 405334394 421640131 387699067 509395900 394325461 854000280 595696083 875098976 844637286 847448502 344903078 424849666 286841016 583220215 374511472 377412761 38945927 250492570 226776124 670371087 551540606 941315963 11673586 426569380 233947399 799580290 604169440 780660853 238853556 652153688 52718716 333067626 241778516 258918125 51940052 270857349 148906735 662121372 369675443 588483082 545779264 875728817 823240910 895240775 487934414 884179577 755745986 964536965 814832926 882533813 67644908 137048765 93614079 814741413 408727677 575500570 513942326 965156897 762145463 955235147 723815593 786235307 219630298 413241608 327903894 757450015 32722850 704940907 516198191 945942663 943915328 979879920 167319367 493066437 376107804 992847838 271481085 558631497 33239695 384279059 124169492 514017845 390084141 506133077 22660069 982349111 454956439 662761294 436181184 451438947 154755243 747712273 331181851 520307992 95375920 600448149 109466071 183360475 37669714 722535107 536497547 752367525 393171875 834412121 49472701 767830323 275152238 430352709 249723599 761668367 475743304 937318338 882805799 888917078 554633714 660334788 67809835 595980871 571976123 889463559 51090789 514363222 204690625 856539310 827082330 898514284 893652988 972351661 749495206 914569945 296464696 892154221 75171631 594771032 486830556 595732975 183153954 397210892 351625344 582136305 334916608 930917743 122878510 942643456 907934915 937253476 453042696 933576397 732446986 793030452 1894569 299851834 17098233 395459040 251552510 725604537 523266454 842285382 552180413 963495394 379358347 776713919 461139547 892161535 461933639 716642782 74460241 375951394 12773696 210223587 13340512 260591399 18320810 21384625 7105320 835357137 164313972 939763901 368251704 626926753 315278944 541257600 433313791 579584382 456096058 698946195 40410728 519981409 428727890 736477592 680834370 898869547 427504489 965845146 290523401 870351346 426938583 479140748 229992052 819895408 112255951 735145751 245972150 258961827 87599271 489227945 169500257 910138594 449028627 654291814 462836091 728600934 137115801 309668330 97060023 874749666 68253014 369610882 75261574 540209909 130166322 844710159 836438482 910955240 901757376 925367639 833753266 940808919 811526060 881599089 301440800 474739762 210592261 355684185 339822291 518446438 265651754 702817541 30464568 996616036 435290020 919820998 380854523 565399191 270428166 896268388 675753392 969694312 182759938 621185290 206526432 595296099 85500624 337707507 288008060 745013753 186341684 711427348 136067181 225686232 186303120 287015839 238493944 308345393 152055767 412700223 21218833 45643406 41615022 240565489 185901069 224619977 51000807 479440228 462819378 727342009 175746272 356791339 299734142 994046916 936417831 987637316 782337769 807747279 96720439 997836187 190344227 261546523 257231552 486424716 267237635 923456504 445043007 596476384 371866194 462211591 142005363 266729204 107058535 313016542 53509878 964512983 459328951 529883729 507614944 734414887 49647122 382739724 16229977 572850673 411152128 522185436 17070233 154556831 8780711 375123440 118044818 551115478 394385119 576421711 28380044 163334733 25616347 436614415 91376402 784399408 108443972 700707652 483974187 579783899 319851406 639125313 440692985 649092243 530682027 830281436 659312396 785717753 36042685 245385303 241601079 632413446 277321205 652811132 576328556 859932908 743479420 888524984 782153795 904928812 385754164 659961844 467782338 529891232 281574258 650216949 616109573 817237937 575320668 716578212 111921659 224947965 100651519 236060260 230601323 884518138 651308204 655176652 460070903 461785200 147043112 530865245 310886666 374061568 25656300 942992063 282714203 749179804 245368518 259185743 121353623 234610432 45556556 206620233 154166130 693731833 211254771 815388342 30912644 676181591 139266177 639214733 585065696 669229933 122344068 528400739 129086090 890333228 578067096 933612095 429719023 432063793 56780376 218764520 209755240 380882889 166165541 311305450 127134440 512909833 480393967 835088040 726810741 963804778 837450698 853249485 432227828 977009009 929238561 996705345 183006712 240281486 29119270 125846770 115867609 778387873 279208911 623267080 56541897 301312377 76138527 614004216 171999729 718445167 674422462 888100114 670808716 870624856 830719361 944155253 746149859 829042192 687795591 839235744 630770597 784901711 382606227 568047613 206852822 811028164 547011420 848822889 484193636 706320477 226446761 873828581 9848454 123603586 42801894 226795069 77686958 581633296 190729633 969591673 519277936 945160051 844691695 954572865 372432681 401090201 115394696 192055590 72797473 323376897 208097868 313221478 106869231 478555370 158686010 803155887 471916720 678183533 308910088 806411091 739837339 908154820 520660623 557327416 196525789 538744073 80276438 977419577 501005409 872919712 613523905 896517108 372496487 822603179 254375223 721409587 128256473 683837045 462911942 611374137 542866499 876061773 417912751 831433466 358406668 918056020 185583767 488651403 443327179 862075924 495252152 750451574 399856714 963378102 683284859 753246775 354471089 879920916 311529576 881204772 170556480 372804630 152393431 206309881 179238659 992662153 89041080 468367586 421961686 595864155 293238654 684595073 403540997 962867679 325909195 587864881 29317282 620430254 180618493 951400776 371569756 840949964 155643537 743326925 257661021 830146209 25564102 83083212 24088563 652567294 370711756 412074620 139335709 299740059 139943104 231947898 110708910 669775359 393292698 684375560 400841671 449971491 412947454 839962541 808508183 985922794 142438238 476822862 178586160 739842187 133590334 472398339 426188255 641477431 276243376 844863084 125225891 716822219 325635770 756301544 148937048 533018411 518337729 755319067 695849481 834815766 612458767 822358604 521953155 529633446 323976931 427510279 31626178 526809431 388998034 709093174 39271981 123084291 110152679 718929079 203271423 597996425 174028752 449492944 256705614 455433014 433703831 983606714 581699794 656329489 416691384 535901729 324258703 758775812 554350422 847595697 461223704 745728166 96032445 702593331 357720592 853922307 835561946 846443691 808155525 823597517 797668377 991127704 625819073 723208452 65520503 719940709 61149588 931123969 249980633 307829902 158388715 354882834 104383891 387341729 217480056 467628693 164614251 375001400 370919585 401780800 225211269 610629962 465830682 691931006 571703640 904908851 695099619 905019234 596231148 975668581 471578438 795660224 307919267 484351894 210387790 893336190 19751770 517521881 414229993 541844714 289812909 670087239 452711335 484641553 251479806 280470825 159031858 641734022 29953476 242209082 4591105 380753994 168228403 194000792 108632479 954255247 869781009 988009901 681221982 910542875 94719190 879918373 67882911 250182105 116803510 416839616 197445220 763217705 57720401 417102632 142273834 423567001 384918050 698069503 10623591 643133419 289235507 770233174 523376187 575632875 491801102 824456598 47267465 944647737 364864081 675842892 325503174 741204420 206741226 218375762 117769416 487981097 90611409 101703321 47664261 248017018 215650131 636617126 460548912 543671135 348428655 604441583 116217884 277603221 219572127 772423646 157257598 168389779 124373834 210472139 78771411 932775352 919792678 975273208 470065398 683317441 21338653 415898082 185328034 609964633 94167619 982089167 917679934 927537384 619808016 987505422 279490952 905037201 206028280 833504345 699199044 714837276 433658651 760313124 349830875 505191248 408446388 800070970 710472261 813635452 284403070 709311629 394272012 538079202 353872170 903418533 756792584 926717523 905624441 918017462 287039003 622303009 238976499 288310624 192910102 527878563 97993391 869559191 13647836 378919993 23459024 505727638 66512300 509731444 274521469 604747247 373092676 698152052 678162241 707566529 74543198 736037378 119890991 577019495 90336707 451894661 328214246 353835086 308740262 690032978 314052851 921642227 33727155 915292814 437694650 681566758 334402179 501477626 186945670 878085681 625897889 981363791 944434816 951266737 780692220 932519282 886799669 980752761 637003067 763070295 588091300 781296077 456348345 950575084 558707639 852328436 465614631 605745124 236461545 871125028 125781930 242259389 128963966 995273915 636014157 816334393 654559161 779686072 267627639 284914383 84811936 406580308 49819941 752211605 293515074 569787218 78547993 197881193 103393135 140549051 76016010 873259400 777986083 871644712 476247209 670345162 541459626 992380881 484239344 909589012 630921124 746165128 237764221 509407745 68172584 564614866 383296962 808930219 192035256 755571292 399381747 528653219 430933291 987368002 313046924 781795513 639252978 756189323 664203909 856631161 611172165 613384695 300664321 802009759 602517389 970251615 476691914 999387767 628968881 814610219 21219634 198554606 41403604 512467071 151249022 273605310 8586834 708447498 666754059 807799367 327400409 925414033 817858590 849857007 793378976 993404015 420184254 557029903 118960757 243594467 159061471 403529805 29962435 564484662 76370417 191659767 116137902 589887866 425695885 746895906 372386154 523323545 2140162 163483724 55127756 918766930 798734172 861320407 801327030 936305458 655427605 877983883 171645022 970834123 103243644 710657630 29236429 138077353 2223127 259472142 32820836 357409698 44428321 47440598 37149850 650018212 585183237 717345560 83947854 189132602 14964194 792540838 524714768 782474105 70430194 211365949 102713467 154350199 10521747 975919128 952613915 963573146 753638645 786602455 126221792 246112145 134568363 526065243 73547165 530102183 193110503 996540406 198365729 367673365 53151087 57957253 57083803 432496849 38807458 935094624 643370408 897753932 88685579 938591214 493422939 662316275 609908504 905992918 799976073 960666875 454061958 821303716 537099946 834378316 180911778 907243053 647219219 825278863 584722350 637677000 621930168 922313369 125147775 992189016 497197788 871858774 168651175 284280855 281857973 645715131 481157330 938824147 655268979 660334850 442067938 599708787 351975901 373878079 77812668 463826954 436956881 534590971 506831060 829623714 587972411 776940044 149978576 423200882 236979174 412310918 106323355 345535131 27072033 590920021 522261630 627003540 556309658 748413602 186640677 525191275 175320547 358725387 108462427 756256596 310977472 601162994 587276868 699067124 93516716 822341805 675453664 785493418 40336126 645038755 154941095 771760057 709257524 910491804 786807733 815681819 384193325 847764587 843092070 890042493 267879588 728865582 452460501 845511101 423459476 679934794 202139389 272729589 57293662 597768036 298466943 992046921 9613231 576891839 57640788 508425396 162730978 352517961 114295537 386927397 11409263 92189617 63779551 243492962 46165222 559127637 47392275 443030536 56215346 993292676 545223387 895255385 367233061 650018044 129187703 162215271 139954852 142531326 94706394 983891037 434990840 628912037 183925547 838762136 554067194 572607720 241332422 626487923 216050336 708428701 706483260 972348937 399468651 919951559 496350322 850696844 374306926 379549540 19621850 630265804 205773146 528918385 42658993 343768687 83430913 159473686 93405129 654341322 274723615 616456305 214324487 886374593 483641572 723137999 585754652 652978487 425719934 878830591 363935707 650265432 122807558 675176315 104436884 740447993 620481865 797106683 513822210 640484890 317778613 838420710 195188113 257947163 195126440 966634258 414288715 625127258 115680424 311251461 5881044 526127991 173250092 920465631 43354474 466679851 65188314 327861130 142989558 566940920 150514816 725269712 454003467 599101399 50394270 858412004 855777402 988883983 399662508 602137037 329570339 934295622 859220542 968427126 566637422 698849446 654614884 893502312 475755699 507800971 432844822 755648314 260210860 262994255 227487744 722140070 552357899 794892644 773115653 875696402 558702978 896440035 564427737 837970812 236351632 933626265 12057105 413605665 334778668 495418294 269347916 937886181 168853209 470127135 452072166 789853583 65052160 781502437 530028177 712289882 321139221 509343572 226357432 687930709 97657859 763814091 649622307 731597220 223351657 235692001 38503428 968601692 68057514 925479161 476016875 900037278 92450907 192331376 82450558 491232175 454913381 627416349 284982809 889424560 171873075 464967998 165935722 201870422 113716170 121267324 51610353 191991566 153948021 359119505 41012023 669891681 280256412 935948017 567364247 593451427 248919142 290295591 252322359 844069718 751766788 903572375 361679727 624556337 609859902 943576482 883243948 993879765 8630699 712090285 627334190 964808043 697089698 758138888 60055140 422748576 214468676 744303476 470529658 585271461 242234460 488840571 243490500 565449824 18959912 162603780 15942645 324361263 305494382 737106908 524810257 648308782 133903131 388595504 124788620 331759487 134993962 321525270 24183519 49001021 1823752 832417413 267715479 954042083 840493659 979043801 398779228 780563193 341557683 688031104 151310498 396267671 122542290 632996951 116139889 219181217 208061712 312281900 89864758 638566189 531593550 909288955 273115747 950670797 931493673 963452288 685210732 885393020 629576883 861439374 315620505 567474045 242079477 529840556 497623217 912281297 491022404 746581022 452277243 476942731 347128004 459215895 119888102 137729297 7775220 681484728 155222315 316686466 137327718 776237779 7346014 826674354 377845276 580925152 541833521 699522691 670569539 784555481 8467192 951050604 715061453 994315642 842475298 877048632 137475025 280910927 53059744 583434272 55130476 668747437 518364302 902751089 594012119 885355390 134092167 862942769 503896390 538536818 87972056 250899037 21096008 36324858 30634757 590937669 84395061 822176574 188896560 295430866 31489720 50693128 21109992 162627712 104746321 884441042 195961358 499536254 136928941 347026434 334443311 932935694 501775520 869457479 13732212 248722883 199981755 805500642 551833375 584962113 444029948 451107768 440330943 646287738 378822762 671046230 304329261 666293806 259267515 381957473 268365622 975386697 474865987 825943654 678083054 690340581 259889500 664146623 164088600 831902978 687112189 784811998 144271004 544248494 21632445 661454700 548831539 961508625 500818652 950833288 175079990 209337718 80020994 609301486 46905536 594293013 504649689 595151883 278427497 500027788 476516316 771061602 536635127 561972554 292644105 898079516 502926875 505790439 398659695 900878648 442998159 937679413 220671127 485511597 431210004 926737397 790146791 900634115 43551253 594073695 204701349 978037055 195432607 592621411 377944998 951609094 875580701 974229512 408388627 743091269 594175545 814851507 438745915 723288351 535513860 738254511 503645504 907201569 748139868 819065517 378342440 781641648 450107103 714210436 75022812 463524142 342063465 769751735 651319375 688613889 215845328 927732630 873126691 908777181 516734261 983822439 839532762 963603511 700754016 839146873 829907776 907496450 194047531 650999708 298618904 766387078 441208756 630627962 447047747 776529122 153142561 432838117 359325139 966294736 24545825 859477608 661438662 676159566 20027251 901571649 182466283 924644929 152177429 236311558 188742008 205367174 86744117 504471532 353402830 391769899 175816463 500466370 494890728 646068620 58318384 329001553 213612271 286333034 172262810 663509902 588103759 976722708 847252610 975777591 197661616 524405353 119275897 817066912 492874444 922671145 726056976 961463517 109577270 739155594 194470534 752304070 360987677 593082219 290838523 318150149 83897357 149765921 66302731 958600909 506370493 972871522 920661015 932614513 325276993 781576018 310255881 446014963 3815794 906260324 83562139 201458778 106584168 881948675 643663030 960779489 890234611 941840719 440116491 979356288 946907909 984576546 953566083 962915779 222984099 259583700 87079478 136032752 93227938 385022459 362086399 973028372 25202744 443815555 11541051 95775007 91866621 307412601 106802317 823967887 120429415 305027093 241051502 319196941 220749404 379263941 42556736 58745593 45831812 72424759 31408006 386618639 16133030 370454970 135509311 641116956 412708489 685665044 475111381 479638547 188356927 753065421 129015759 368889668 204640434 760914069 739126132 880947425 565389291 850069141 298723261 876442679 406979999 949098298 126312411 322188790 212905556 245821176 13319564 126240147 79812412 384373280 304737462 509017960 473178606 541576637 444200504 787000419 407961150 717462273 500362156 763154036 125553634 684098448 524386705 880736737 598875907 998878335 959700605 972414346 857516527 954867924 328367676 628330986 239868722 454177544 116666331 596907837 170400871 636976775 372131695 827128697 700090374 990126233 483863058 909626743 417774973 680852066 248374670 443349723 57973453 727062007 603377600 766207127 572654377 962162126 838938183 840596691 81106055 155392620 107378076 209112129 101994360 497296028 286610427 865399276 59429487 68702004 59418998 631375398 619918260 834511988 63012379 197340986 66063224 167133534 148455000 792995754 664485428 963523854 581763873 601081366 33176922 165047649 8237744 180294030 102599401 169436946 16419288 391298159 183630033 911612156 531607861 637355235 18898191 507941008 132700855 471551102 160515696 601776433 230304670 872440829 845699701 871139325 709960949 712652871 295014842 968258181 339020947 355313225 170424185 447317030 172726777 738630801 94150809 371866096 1369552 669559411 497536584 811865129 617682674 622755482 452575401 742345988 197678505 779259409 530336909 735246668 298402966 457285906 241890202 474822863 304802370 776359525 576954555 839753218 237561103 573305096 358124253 833742016 374021159 879986047 552499469 682346097 299583623 845423689 281469307 429787578 68836014 293491176 198612532 543817589 54836327 88629512 62443518 981057566 221159605 636528356 106095621 746223946 193454792 871982869 626142634 630066895 338425305 533012061 392944138 930330155 627240346 735200877 114810526 409323190 270400698 848535070 372138349 812844668 585546212 670514663 561646047 632563986 305002734 796972087 2816206 840450077 517094398 848750710 26389087 215084779 96992130 791391550 548685321 987289298 325179254 884485259 863393415 867380082 254899681 370518518 46024231 625735207 206259039 722808241 595870608 645923604 30513646 493130481 185229321 584875552 105309534 473331366 172225995 955056196 25516630 962927172 247640799 483320394 202865962 923537715 311124172 597082012 585361886 611285197 509269837 875976347 858927622 919936757 292901555 727611968 193511956 333102967 10690136 29823075 4712835 478874299 198997004 747665362 596190422 707225247 146042106 437954060 315788991 325692822 160819675 871672365 566116286 894510758 281658502 697884817 1613445 199202866 146316524 885596786 289472142 812712529 671879724 883967153 186804990 655007502 26823443 201655735 86702250 545150142 205169985 281646301 25475449 723770546 241627995 986901422 751204330 838636009 207779224 405091818 297275869 410342732 5030159 111544027 1847601 397219462 308204113 441480949 228392908 371404869 263000606 651437526 296354904 996375753 369388774 807838903 308885011 348422679 84404776 450397063 74055045 788727257 563524059 916216434 250863990 291179908 127761277 213815214 94984442 361055711 133027239 322457127 161487550 814512508 603423124 666823649 303042388 325137393 119594512 330742392 322248620 733368270 589021143 804385166 180038337 509347146 244660506 245418074 40779044 993728935 29931891 715078092 51375542 745675125 468151740 554559591 320130373 659934012 50177545 887769096 567078259 779395256 386074724 775217374 85089289 486261394 328451579 981359737 238343845 352593429 239719322 668769261 125661 15055959 12575600 805872622 731885901 989072350 260617336 498541806 156088758 511796065 45702012 275075890 159973346 865202681 436776666 957810345 662813280 753238471 643804248 740485061 484745563 971442244 747222564 854723250 235455199 839234234 687939131 783388955 96814427 810276775 249763990 345525904 242140948 797541060 630083218 921838880 912247151 975090885 201203388 320978950 203472653 596722712 28090845 289297105 176213835 844122029 194513767 494410743 350746730 917456825 764811271 979677368 227355017 976435732 244488828 461147014 83156457 722851948 118867738 888683663 525303335 739911464 438465508 725106085 397254184 412027113 310441289 896958374 205564672 978766227 788535042 984517116 728063890 822798722 457003314 957194803 537755115 720235799 676929094 809569512 515723701 778492299 545298149 549862934 104948961 324117451 697741 811683459 331096286 901032233 568912063 798695028 406565872 561281432 379611255 618431847 31151556 407869115 196840868 471234494 466490872 690810383 231691478 575073338 11575222 314472591 104322843 372331648 196080890 590359727 412355879 545961065 332825145 936434434 750524527 964409974 753114802 814946865 279529947 535969626 353317693 365421533 99631137 508179275 399011007 544535324 105256084 225068968 209839473 959831554 195907837 637174935 467735777 542543256 653906 68070026 6475399 265429041 228012288 557227629 8870259 803779914 532130888 814315125 151141215 170334613 47244567 525281651 248673643 785040678 616133807 979130716 148738140 357392054 303645983 698947181 271468951 980619865 307417603 680797359 666457489 896478766 300204444 778846788 621860375 747145018 663152587 887254996 92405163 646378156 187475908 875143979 292748226 925188091 195495088 259868845 110594435 226807755 27675486 176150865 77008845 699623568 666730223 815439977 812406963 867681783 285103150 322619738 106281166 150191396 27919369 295258681 164208595 378319880 377042795 691188679 614082419 842914138 252413031 654817846 388486347 608002534 356339667 678170423 127980262 675341158 378778507 859466860 27351703 927400985 294325930 617486093 278262179 448567754 210306469 481208934 328692673 732999843 699316861 723466091 136614943 318148630 145176048 399291987 254962883 374204251 297791773 391273033 294277738 299500355 28483711 667577410 613044566 721202701 286736406 475258579 16124853 361991780 323043083 915951516 339944200 885782480 136174248 273935909 168888849 906420081 109547089 953353027 874555313 964159051 334784548 514412838 36914118 548190731 506883994 556823805 440645938 588358412 562575905 690379649 171461053 202581495 28656187 861959177 434197249 838469830 225824507 959541009 633606135 686933704 597831440 967344306 769569172 816379021 732228818 941796113 826930616 976762178 947458674 959657475 408437932 874212802 50645439 86279506 34727507 293754311 37135517 300343540 152931337 779133441 119838967 892126733 594594055 956380612 477294422 925541593 148447917 880897798 823894687 957423607 455980458 956234399 218655586 669662517 516936675 830046216 161613916 863809288 146370528 723116246 342389132 663510119 27745519 877126098 635726120 775684183 340128485 719042558 712239563 733574652 63427649 660981402 557783239 859605002 348457956 485578242 408574987 468166436 208689332 485722756 338897852 616997144 94234934 776462604 313124284 951421303 722258960 975941749 863025373 937035719 187077724 455968112 261114594 261275728 230394098 564056658 65514988 420768319 228615829 885128979 80824740 972354169 725649341 996151297 253573047 650776040 22621972 529191327 285056620 572620380 420529052 683689745 169735552 621161872 76903806 954885539 269514568 502027508 429510216 951601563 570527128 601483400 463099900 758504179 570492364 955822731 672392608 909638630 833717086 861989133 679299284 772143993 755130159 767876373 423540800 829950205 643732272 693363170 655933451 696365363 141587384 481670841 448413483 813010781 366948625 500469753 54141762 270713494 9854536 461553278 73228517 563940630 524844227 670452690 113198218 474475247 178692137 953102373 167233950 212380211 188603877 781673843 272811712 467475222 117492721 918560329 797105388 813584297 767729253 855835203 570455175 676544264 158640118 453160437 179274637 832896553 359866629 394702169 274093309 761542906 167752434 595742934 45546917 682733166 82978458 994918767 699508340 735846608 103858724 974284714 376712875 918722809 726498517 914517225 187091571 367201097 21034487 681578734 672306688 922607686 578950174 836734780 793065082 867552555 613915639 796976706 352445425 622640646 85227363 880429711 249979334 826875218 316980776 326317932 314663588 428490526 374650704 385106423 210504281 441744655 162941617 942686566 804555427 815948112 14154166 750432094 560249223 816817352 411320821 955738254 217064983 275731968 87592497 543805840 369544571 680914092 627938297 637481916 331745004 337185651 149417203 294471112 71060884 281195811 88111383 287280918 2234377 337288661 8678503 917488885 689120076 996361982 520874083 847579536 727034665 778628435 147785151 532804015 223749005 564930483 75981906 399206940 385440931 791080918 106711177 726460924 445786935 685119354 479297645 844649137 547583944 867540611 88569046 360923590 30904706 304563390 214980581 358355884 274273117 984307553 21708461 852034118 339029156 643250778 183459012 328953276 221957085 769026502 219920738 338364937 180796858 435865482 420686502 669015431 421959094 746510236 438164375 644606813 58746924 386345866 303613212 379512366 104979229 792450092 373479066 422093429 178987464 517130414 196885384 978134705 721611325 984404593 405336921 548982896 144146423 423446466 34067722 133399659 65368687 155622575 81446915 692584009 436998915 438560429 74124012 757121531 299371980 421308012 204565342 503744944 283790080 801609405 627223687 827086629 104211653 139184870 41027445 161542855 89274046 394578522 326540201 880845569 524764996 527207728 336962272 924904595 151521485 318381842 236061027 887952010 716787595 801949677 101748013 629282628 383352070 601524684 339888585 952270956 598273918 871445263 586495665 592142749 20481394 977073261 82026113 106382751 13604289 631308149 363908940 630452357 610311995 924126327 137584973 551321389 337185312 395500431 230057571 684093087 94442352 586691056 17313230 115649284 77799126 85131176 36006543 601156856 144205091 694103164 382715382 674310960 347430775 671572691 598331501 633136965 310723588 408965339 257066927 350573423 232225705 463712039 176214999 899601651 150718893 982495759 563924464 593645564 567033995 608724577 17064998 287399460 97261057 208792254 143743616 501088324 27920623 757506170 120016920 799174181 777987656 799427613 511771299 893622890 737146142 957382621 22883187 773082517 419027023 983150599 692449722 976892841 123681432 166205019 120598051 638848780 221520047 951812881 342281130 347908908 166910607 893362249 311615937 705673362 292381879 939086933 30787741 650505526 220459482 686475162 52851889 318043874 9195719 36988185 16373091 861805434 525230284 640525073 239401723 309981143 218796469 852079774 371760250 977475203 37352130 244909911 23237350 54300113 8813974 627105914 595964667 658407729 111551998 308436789 138569151 470917804 186063263 344226220 135114985 835091252 824589783 883486207 247059494 890358292 695602739 933174284 348190068 834859525 455872792 494220712 75499311 428644743 20836123 92161548 78139596 527532655 311309989 865553783 506740019 939682944 740666985 978715425 801195905 809766208 644412535 954430110 380657145 468290365 462618624 956935094 944344207 950840409 281480969 611589690 300490402 945308797 653812061 755589734 228497089 983006372 488958121 688079076 251962904 625206676 369851524 708796109 159685730 321401449 156330753 187019883 8516183 897018941 496716056 878097980 139359592 873867819 820963850 858614692 267359959 475774261 162730759 504345638 357454237 399783761 214523650 689724166 197870280 904110843 249692967 943056436 91631388 525118114 480935535 937368190 696717440 747893414 302374722 981815302 399343944 983224754 204267143 744041016 624823478 689423387 488568618 778210352 723707903 919514744 97555060 897942642 894153886 957309239 757280617 901150795 203103005 553054943 206983102 697245240 640691765 770273817 220495696 222311366 38893694 884234648 433693103 562807379 159974252 465769646 458527824 492333749 110668622 867604517 568062623 964074218 525642730 871407118 592171261 998182929 363163616 417713013 28381815 484439389 51616716 183360704 73694537 465350906 278779635 390079617 3763401 113719382 81934114 641165606 546207255 635122909 580229630 591911344 122827950 605514271 519097322 580675217 210613721 616406123 150557416 601186097 142331101 723591055 697437212 730529583 78589864 986602379 188934739 965482472 572543021 889601079 485366501 641280179 520795771 912648586 815655343 923516067 764074895 789537872 633967151 866380171 488006767 709287140 164038931 995086986 913584692 922922362 312396846 444873664 337900034 463685546 338034705 977195782 389411183 836206443 363815955 736760968 138721028 818987619 642650699 647133237 95426680 484816696 350343487 392517338 177800710 423788239 82409587 270584943 217284104 503855459 235697729 742972046 104930205 684564127 267891777 873940441 312880664 363544522 284436786 578105990 481661053 603618329 430899106 704939708 123001147 375711282 184539276 355868542 308631607 534564444 114754888 936647857 845605871 941016038 357182855 786689409 59514194 677461841 544042457 935030412 660993517 818618320 711940361 981262280 24806141 102535819 32532415 540675307 187804124 505137750 290485240 903239819 96561166 529524937 284909372 422813492 238425388 671920930 302286701 441547101 378402657 845660065 381274377 851807861 752209208 974533483 725695686 975744731 557037189 798236700 29449895 234692882 155410404 639741671 166984091 436978821 51559474 636089173 174393293 666920894 332647220 913678448 799689828 876089933 154194030 417085081 274826633 471771089 470951840 659701539 616607282 779323209 494498354 549468832 241202869 957644963 852017183 985823346 367804864 855827522 33039503 52237979 48516808 923980857 536210194 565118355 61132639 381300371 194769984 570802776 505821669 586838036 80607984 357184790 28032936 363788523 45534610 546704831 88137764 311342859 89623416 214644011 202448297 512211014 301326062 618144883 449797084 822361355 341422145 647161678 397939549 791635390 8850743 75312670 54189565 997924836 111743774 995810052 448482955 686412552 626626264 891684979 109546076 312764983 171438332 246562753 81335644 619616306 63694206 852018917 685313546 862637893 60696269 559926677 141676482 523599816 165385249 250399824 131743225 194359573 163277159 183417409 29971273 347716069 311343116 359529993 71732698 862257996 720637268 841419354 581536373 869741453 88034276 511899624 223617309 362796034 232874450 653825356 349948984 363124348 71819912 248639378 199836976 478738122 322836589 754943894 224175801 423389969 66945576 251819078 58897782 458583022 403229049 763311138 77995072 940214233 884832579 954899244 90207548 599074722 365693377 918295682 564620705 752191869 51849786 311842140 247045251 507126684 464332704 653412659 93757727 346654422 285078540 356262984 265034553 471695130 441788782 502722490 291256469 493455934 28998067 458594168 52654711 277245566 187641445 646672215 82763026 984334842 778772375 820855194 495655826 887735110 573406181 830784581 702379327 794008563 576740913 968435797 177779505 510223843 372520370 469447162 405715906 460368262 31822230 917433166 774292202 968845683 927563814 973610591 784867028 847723350 524036434 886331273 81176760 483167326 423021461 681918797 162274726 334408611 65065189 428606104 185899324 612744578 226093308 937707903 62503529 910866181 221618531 404351933 315674676 961601466 882278525 949029128 136311828 433405871 33103192 969301824 835149690 971174152 581006138 586181702 128685550 378799000 245597851 814545067 70185982 441169561 329852381 894581701 487969532 915214440 784194337 791057577 165895847 628578176 346561370 981795980 783003839 918250146 685857953 925071258 220147600 682480430 326693730 672797478 348426766 597204083 85205484 478828678 298225550 929356573 531136031 732552672 118306646 532101359 220281170 928943084 555048270 801414385 698135360 854753579 658550235 876660160 486522142 547282676 121055586 443788036 341158755 612069051 76456321 795424287 487341292 552851210 25173576 931796013 225555212 982000715 979488200 996966639 485939084 542508252 362504869 917614748 551086781 923152183 573831492 621988364 470092487 785111431 568935526 784577555 171888678 669501088 35597477 926044756 721428612 998851095 541432893 811692375 508227236 737667342 606067376 826441715 265289487 392852223 190088060 636991854 143501692 300221133 160234573 910661998 372355524 692700719 541965538 780423659 425581907 888633544 621868993 646163100 495308456 965782561 336213556 443921876 3082812 238319417 44264902 616226827 530210284 723158304 366958251 536413111 187462617 281840994 71248372 994695331 964578855 978145427 910849713 914663589 677097860 745384129 121010374 911368011 560480937 988628348 524345763 762267643 237673602 426500646 114556371 947946290 701242622 877629945 438447694 525988405 413927436 686623504 665710450 890400640 814177905 886334330 691701026 817640348 69745352 317209970 78556123 297172026 185598021 449711716 142617203 539327345 340357920 474115699 452660105 964631026 98518683 276063887 253305134 886665676 733510760 871575454 357932204 588444848 185373959 834193627 734111777 885208068 542811869 558590968 512506392 615756622 61198229 694994288 540377401 867278998 325892238 909334631 408755465 811487685 746675976 859595145 403629058 725017228 564267196 832204924 821639844 928553176 831766698 884746417 103140060 303326410 116040247 770700780 352336891 601005524 315170877 358649044 236755026 888031527 665011945 912494575 531888500 761988356 345626981 863558226 383738592 978187643 149504687 249739027 189755552 801510516 429421189 930981196 89406573 785408538 46413063 368111437 17074647 342433754 112808576 820742167 667972505 995728102 548171235 986732510 672939477 991762764 66147992 445872299 406356746 948971351 400644091 496751620 476025114 566020835 542923339 830183293 740609849 743394280 184982446 815931454 790706608 896112790 167516455 388356996 368323551 957042734 32487015 593766181 573802374 888947790 481133396 727862447 665962116 834040878 731675525 921596535 261452757 726025485 113143613 556185377 505878422 973217221 194051163 866692754 514283244 560005775 438144048 624469953 459075327 534065574 382618932 968020446 405626176 953050837 137046179 712181813 576886125 797777474 318267991 673416880 421192705 597855319 539805365 816356306 86088556 134790642 130723880 986730514 334823856 753859571 373260645 418009050 239965467 351436300 92124033 441436875 411904157 795002299 320006099 843155481 169220694 794691481 265360246 647896369 374584743 480718709 180265975 320965969 196443708 388556992 181934699 464950808 256197510 330354139 52868802 67675558 64638179 580022548 125794992 811930849 412590510 785590295 628702729 995335267 117033992 647217598 382953045 900066588 391815951 844048830 207986384 269946363 47483454 285786554 274358765 307468537 32359203 109353617 51365046 663638588 145906133 843831982 448793245 485219117 280127351 536966693 288882200 420386261 127145993 896243387 314668883 894644242 432678466 486197604 231839929 649785479 264095014 593455627 91990125 923412198 910996883 957545573 228446166 829587091 432163467 870153905 332334313 744896951 736325563 818954932 107794679 944419041 361338157 796977959 703309888 982984691 176491366 694086264 582103012 795543613 105340828 853336192 411011093 660202516 266416145 543000391 429999544 837112246 127388293 876385336 606569427 790254583 519175487 945864323 890755406 924000895 117051089 692692550 406603039 964913267 254041820 648121275 598079383 867083605 476420483 924282528 367434792 918219695 587643783 827999591 782714850 955274377 661792813 662858957 296093305 593018350 259698767 533234572 403147817 415183615 332254671 614834011 130731514 938934972 244342541 307325875 268015789 743073261 608533128 844972146 347647578 929519025 33030030 465377118 417371452 561082232 346399750 709429522 368409916 770635008 509473203 588074162 388071328 600820414 557032028 626916119 127220044 529434809 312044984 947264158 900475038 905447091 227733328 832890026 448888213 595535651 319257697 843044344 183170952 220954265 101481356 771642871 463863515 856565929 96585276 519833856 380488529 817240984 360968947 546768153 152365494 855720183 374748808 694226183 231239313 584459425 457349323 547785752 349804875 859724675 384865816 761494258 35296493 554421554 245967705 718440958 202537358 352248402 31935714 126445695 7589729 251605211 25391235 37169291 24267955 574738448 137996439 996094209 959546489 994769557 810944922 922934219 872643851 985688728 58149309 394396963 81183372 571485252 194706259 992122441 47532973 172889400 2569342 825551275 344703323 647401508 342536364 959603415 715461142 950628379 669563592 673143429 447656459 575454536 316002983 925081101 140507695 529582939 168729096 868501857 409705402 710774137 558468884 880403337 427138968 583465554 226352533 982812919 142713091 534785245 428891725 626045823 415364582 822501961 478462747 646606522 204818736 829941028 322618719 768121281 713497765 760703400 681694410 828827506 560490302 913363184 17127632 878945266 41013518 852588644 3044475 675641326 195226647 474994386 159639797 688766642 514583959 917824506 593450681 998057292 355980096 566137896 417041608 667905676 411741218 621232775 607626007 911109985 69119186 745272077 246885793 899273053 875836567 977080840 730581440 839787388 710939968 902928829 470031179 545274609 364183246 793627084 389148386 734025332 89712637 904224198 6815567 357698442 199713642 970346773 128212945 944793191 413117385 648385944 165343694 590744400 54166989 771622948 683669429 984012009 367945660 381338174 270513594 397473593 230888247 282823791 1269189 510998125 312431142 458465400 328205082 729134419 516794861 925706162 34313687 165209015 53529505 189427708 39712825 909325290 818954975 855599869 580114914 772019226 189348889 425556144 211571006 907855739 545646527 685488289 667653272 950912643 103047464 395676311 188745473 415190909 208039563 466370562 227971246 518554936 89000136 991597613 9773873 554308716 20048830 220957738 5047721 268165432 159293086 571763674 37875396 235579529 190292031 492016998 62444098 78784783 12841572 305540171 178670812 417088534 158085977 444205715 46423727 819817243 738686703 930697245 583602120 820955760 436884682 958873974 383135367 386650732 275242619 851031450 116273660 756635746 247537640 714174746 112629385 509517178 407285766 414955606 397597269 635880597 524690994 623048076 293809778 415309357 317727151 347872869 133869973 708300416 12137257 266092132 149335426 936528907 798679623 938389085 772182027 794457049 470560733 908176569 42657831 64833806 5357095 149014519 82420920 545895501 414760586 893349514 772199024 797408091 657896725 676604303 265797744 819972413 477829590 926242363 233385965 701136760 556574221 887323997 822907529 994269872 91388333 976624694 800422677 860239252 143569578 229749202 39743083 446182571 382204901 760387422 414794791 845366563 510169758 742639997 722232857 759013394 7329567 672778573 321782681 614630263 330714841 464727929 168008577 440008407 51457355 81343780 49558664 687826846 459392324 664476942 11568321 527201503 392890008 966044327 763879488 883926516 353544714 703139849 203715450 788687487 321150991 369070483 99926608 406229386 39037652 845472146 673456247 965416672 5444870 83070485 64190669 279794471 152207028 630173636 390680499 502411227 333813747 976866369 975693570 992265738 507036717 976234248 885121107 956899949 486616749 695145893 550548547 728002948 125713423 940893849 696408217 853879026 642643649 682629282 471190395 518138519 288423666 890681918 407453813 457417948 410970495 868819339 86019649 128768083 93831900 346216866 312577739 488852514 184089176 864996424 784519097 888887050 887377237 912997802 51524651 147467058 22170587 527016751 111649770 630695345 550134543 939646078 728722008 911188513 519682930 715571507 418540803 717215795 432789140 436969490 259763219 826417801 680925447 998788567 616809579 800021244 261494842 992495510 226225846 762032173 51602053 755067778 204790002 727041812 556363087 840757395 170089471 489556155 191820651 846093914 5345340 24625018 17228418 488599768 230094460 812048261 444687847 816730968 809407316 904602655 784514553 802636221 553680687 986303807 130196213 674414813 222024484 651475860 592165716 915908021 550374744 810913756 778491184 885509383 248884645 819057930 148967376 181349009 178057502 891671316 607734405 756756171 272697008 802548939 634594349 724236929 655127021 966282794 48041251 420237775 384272315 880717732 186596498 820648417 164527024 669402516 25102585 662752626 132779740 569278885 129325403 488529936 4645856 979239633 434792829 930424550 536472551 548566800 134736916 995961337 952593639 987854956 966286678 981071108 421852297 507414968 497308853 513626982 198925932 505172195 141150086 443024646 225545227 380116980 96650190 751887693 441740382 749808944 140225394 202517907 199199718 268843427 125406206 210448526 159634532 513376748 422413845 972150981 453853315 710215578 276774646 806524292 627034264 785558636 172895696 885415347 327041602 640801014 418418883 621923491 201098342 870966012 222643044 268608071 10176024 258059309 203435239 526128445 320401243 980392962 800890138 882371391 122062999 811608455 528693193 768224669 72590842 533660099 91785900 282530347 199994917 277473294 47239321 666026415 264956818 405613369 222057396 699035292 506368286 995335713 954303048 973509303 323972785 888688605 634362957 940078562 261883578 528876029 341838055 831175018 409234993 974764908 969372799 994527894 842549036 856524316 327145727 842065439 658080999 911435885 197229499 888754241 880724838 901816271 536917478 797257156 273356456 993051265 280830186 297071399 152024424 979869493 235833563 543843366 90384230 216810969 45966243 171105850 49367012 386108428 338362956 585722655 6736256 839002650 80279591 536942108 266665433 998055546 96007433 266023101 198510548 767287808 513386910 921873477 54249020 398998087 40401348 387326425 127170588 808933705 92443134 496742523 296539244 745278566 569731729 765889903 298026832 486758988 393752764 840568353 28327770 930889686 526763142 538567845 505511737 658160268 185244924 403086114 387995712 802556887 58680061 277361342 253317819 355200446 259489461 372732807 40925018 337248448 326156175 959716672 262146710 680150079 291890489 910400893 815702786 824562625 753050649 814377124 413371333 711542067 521234144 827807859 35497401 74522774 10050411 319521679 155266183 252949539 227422688 845289262 557301257 914090119 276649680 644287462 463865625 919065698 478805790 778425567 488268079 615634733 128477234 533917295 374515996 566542317 390164751 584902322 542330898 980938470 331522540 852841604 72031624 76722717 18980170 135113429 32737658 640094695 89664461 650150538 389725155 415439865 292413261 715044344 186928799 481125007 191089637 295449619 209498930 288515712 264124110 746627270 226426884 425432154 118893349 998283042 347624451 491900816 333751059 495183663 142663625 622200740 588815798 741110408 647822533 674708660 264724425 415433198 90562943 878068269 656094330 981119474 761535552 956121567 288995508 885174884 585248649 957812209 602941668 620294024 140927209 254926984 194714847 862253926 822740799 999426948 973552563 980878770 146653189 747184285 163407573 320204659 182363442 768473934 452832797 559340637 439580372 824650467 732220099 814480231 201371582 921550327 434437572 999521102 961604129 985415780 89915048 982532658 354410449 567833946 517029555 729111891 88904656 750442097 51554564 929690759 22729913 81596053 61304330 940925904 448773986 591039306 134292681 290643200 174041193 773881709 35666507 245271948 120189016 290235442 114184271 591522741 141505148 209952510 21639777 670550314 123708851 913896956 111909909 597435755 520592723 559268503 557593180 658206296 80967909 935182411 17046171 978704548 468140947 597950717 585318238 869955272 485149945 570797674 546250934 625688902 133606151 997608855 131950141 628690557 582208411 822713301 613874833 699435135 365569579 584666603 439239029 935309816 510486468 706955258 569512391 643482989 454145901 511977958 490741827 677225868 560601632 986242234 505180021 904043665 560294822 886550647 77772205 560101271 222091029 843206879 613033429 692820740 238110892 841529505 132473965 855989933 189420716 346026711 95786339 328657521 180923498 445125582 41746389 933643973 559844231 725429687 137888808 637722071 167165248 180327154 71617404 682375875 41785897 621576863 556178031 580168695 159572748 207847769 201289091 657034987 454861188 988626205 727655575 961836965 425006977 931070989 173524082 768161120 266172309 632093300 109596633 611884928 514847746 562003614 8613014 487117408 51392045 993388793 40619793 596491315 92475041 856090592 247143437 782597044 460522603 668944718 311122177 858812020 430707601 553993236 477999318 798499858 306120594 504873339 222355366 855311774 477594219 926982923 356212144 710254036 467642605 676172421 383458739 832974105 748896712 857959791 563245825 625528489 223250657 616767422 483445112 542890690 290830239 332354850 244578188 835181399 130831027 768928745 139205713 478828748 11428481 293218203 168155183 740488870 705848806 856972117 836398246 857109496 808035056 892811570 534279448 630208822 486318134 709950701 64610028 400809363 220231978 246430971 108193176 313634034 209054274 488644132 283738760 447564354 415349681 685236833 212764581 223086045 180250332 922298906 570430295 712760832 573968842 712539932 630637152 828258033 762213524 913413351 843806889 940403457 324651034 973899358 732497330 747505308 39428210 296939749 155464072 454892666 221867177 460822721 310673274 651968656 601190815 852151630 159906518 754751958 318014071 464995684 316097600 533714112 532325252 912333817 202537064 284856050 91752094 562711743 175099838 930018941 581611461 849883884 29096509 311995823 120762968 464240584 321979238 664029503 130313408 132107005 25493889 156215893 105684514 276886938 189561176 616181670 422373070 649997238 108243737 371746301 26117054 393305219 17628129 135550091 88273840 388541552 247297211 373183529 242196335 339604719 116845532 930060171 569886397 861570906 578148255 618758511 553964016 906216739 865356301 997524036 701529869 782520215 569562048 819892932 714919643 939643931 441442011 931261542 648007563 823984119 345281521 806019468 773172314 982283210 417001768 614149935 530135157 807823164 786304422 829886893 618198976 848355046 294513201 781645855 524939331 748911193 78693716 442209726 409039558 989749597 677818977 715177933 318027898 743097222 243408838 807983814 219709658 362945828 235769325 582930207 108178478 924954289 425918312 515704151 485137035 892637524 125014304 796379051 281676528 579045348 86617785 761281976 544848445 724286386 276013018 536350778 282129803 799787136 183527820 319777975 57362920 173778832 40463271 761514403 600667280 849352244 774317141 917249926 294229723 926941872 598259042 907134380 543349376 553605548 75257771 888493984 570830609 810378892 500747394 731959838 293352076 296761663 64435406 852051592 1546190 529412826 223767017 431598248 139233428 615386906 110895775 116044481 72414396 657354982 488966268 799789311 549181397 918474322 71334279 856052226 368817343 911030068 630533968 813224231 711818596 738998662 494645137 686941907 157843436 463635565 225009909 293855982 116124677 644094054 321864352 756728535 257965301 288971673 161466402 841291958 334763243 792215708 242215341 893457267 785836866 891458025 104250552 145489058 119390503 579376617 399742330 725450128 231059989 893848780 723893781 868309364 706157136 727446365 172909989 313417728 74114857 702621844 486859008 754461736 633810220 868149117 483758903 498427641 216887791 234723319 214728623 589309012 310056577 500445922 113273949 217978783 69437079 854553636 811185454 894770771 682176104 724778260 221862946 930289000 806939780 853662260 149380676 661907076 650680175 814586485 203777734 410992143 339239328 582233264 384976308 932650146 370634513 756173018 320005645 626269286 183727141 976682187 483688764 863209038 762421779 803857594 420833449 756628276 173793353 492485108 251999631 326492211 305677869 357192810 265049914 267422221 120180953 956348990 740499058 823767201 670698105 867708417 796957718 925782178 78126560 95620281 41022164 343242519 102054778 998908217 992746338 995842821 943104481 966718881 269156054 673643763 23664633 334116472 143372235 431479561 321743825 691415029 396413993 704787004 263158938 377012378 275734302 291425083 142299142 786315134 518409251 590446842 207328426 720941135 429248785 429482415 249230408 390823866 29900484 207591965 7545875 956947053 553335823 598684084 212189981 677645188 505684983 814211639 715410680 828195339 624527952 838730368 513777748 859884975 706777487 740560979 530698664 720439271 262102857 470231882 139607815 229444381 87774143 785426453 650875281 900050628 506724244 528805874 344924269 573862835 177968296 429398633 342131725 943003333 248734302 890205062 874180643 969821845 751120975 920661547 908466622 989211425 477235071 803119269 393698086 677602132 538311946 633060316 312390998 412715071 250999192 482981351 475486239 745618610 655555951 678235559 54204095 947519187 74689075 626321345 454290267 563001698 474029444 883879196 271959654 563236869 555392821 589555484 49678938 330845781 52685132 139908109 59573817 137254496 90848513 692747508 529572492 844490387 193538156 674878139 581107545 789137787 407079439 962066214 422954054 614995238 173456942 333686274 142184884 150936822 25090798 96822865 7001516 52491348 16025909 977220125 694561930 729820520 290027313 291621609 5999552 120003095 110638035 709486862 338651668 727014976 499859420 675529644 547497556 565369221 548394314 972261991 18731217 287260995 200884109 388240354 239293319 652982716 256764609 429962778 201117925 875648779 488383598 829407413 166392325 668189801 630910621 860111267 798745872 875674837 854207619 891058193 79073503 490802004 100818231 287106579 94506734 266949557 182553645 560487377 130227009 245560475 8323014 274738331 35749156 106576274 101704041 467188907 368849891 391349595 40940849 472572903 69662880 257801915 154497136 878436221 103535283 172990971 74454777 780682881 427358807 815384169 134083316 479501749 373747041 513789378 68715778 493069776 154850217 788319451 764753771 832942407 615774503 958701198 924211718 950871390 460515274 530750737 199415538 820044603 209864196 628558070 368768700 470232059 193280235 686803652 555112043 799392388 621763052 702905389 619668850 800894534 581398381 625327934 451866121 546210624 190320001 707695731 103146832 885341020 39742297 444041406 374430065 375983815 277674486 408277449 164325666 959040404 849385413 997667967 452722597 820931537 592357388 975027522 830067800 913522693 267118539 615569670 598418876 900466384 194238071 493195121 144867693 414629394 391519583 914914028 708803000 794030356 531370968 649751285 406584673 888105382 433662033 813745296 446333390 795770762 352001856 628789140 415508027 585759806 28476497 362653628 56199686 685839810 360839275 962225447 419439156 643502906 349913168 537343308 51036036 562941966 447306510 589740212 453887673 857014016 438928681 949413303 434868434 469401613 147784086 382698680 363234732 841589639 783806964 877647257 446799535 672609777 341476022 977634361 156952776 738921349 372427947 624129257 616238457 785292353 367312377 733183528 122316301 862526930 498028355 690227599 436473676 457629971 437264672 875884606 470980804 618689997 348648316 730724093 485628587 541731853 119990647 637507407 161487081 362483904 66719860 343088724 42001624 148647282 140225343 253344779 187597735 723664376 40062419 397380693 302078104 616486924 524804224 671073089 46991919 514207417 497209724 562391327 304473241 595029592 369780944 417113500 358899784 670304839 69047089 704663285 308704351 438251334 332492349 838042940 4534714 765515020 338276834 554519807 469434929 706363555 629228380 771643601 380705306 823613310 652162666 758823911 681077879 838933587 257074807 502390378 53952289 731833740 142067893 440586702 242907275 946324525 396698287 713217487 254261320 969196098 543678482 578063818 243946050 706220594 283142585 573191785 25802271 488471750 451901113 473831809 370778407 408539434 31235333 182362928 146390711 232000084 97771814 503211865 337876768 461091919 129420840 979499911 183431968 293197827 254096824 390138298 169039845 466665403 118823615 568942706 90059805 733465794 345044268 887785728 234386062 913517952 139222148 174236944 86751105 215929895 142682286 409639015 325847683 894658045 211264321 383991679 141926670 856627096 729930238 910474883 444810601 851767677 416366189 658867943 596481183 846410482 445735588 915151720 765981103 908511012 252390562 493419616 262778150 347242869 237987364 432253191 44629428 235492454 66864213 166709649 16607029 114183877 64683923 772106921 414234698 508734526 412210372 559062825 138391808 787715332 737939516 922650451 685677021 829985111 395448366 632994908 207808620 753364155 270703176 547272361 249048860 268389182 173437033 293191769 63899921 227648823 184972252 464585802 68900126 624555113 187086995 538207065 378129263 386963644 136388347 350013151 341136742 361523032 156301739 830458158 210969129 668843487 614509191 969468112 484942535 754594869 721679082 969264849 298273276 976352281 459111478 564430110 404613518 894810095 96816055 582058510 478637777 752311463 625446460 811726663 495824500 690178055 653739216 773009957 316123474 678152205 34841539 92159233 12440830 122626721 28781448 182269777 36764825 844843579 266955600 311501766 150862429 418367224 9239997 592552663 355754150 902043196 157383262 294691102 233211231 375362244 211310817 504954762 484546344 590890384 179960690 467431008 82432243 344521508 201236310 226031957 29788024 501034186 122552938 279282673 196096033 248682045 145362679 217381090 205646740 870295443 623789530 824894061 386723446 444486163 108087543 833705175 453309432 994521394 375722822 964003801 271821714 889362729 863379568 986045339 590017763 989935253 391674336 841978962 623302622 765159439 38367766 940315293 664122107 707991045 243528995 713594393 381203912 708934654 443236294 580608333 414783215 588541425 163108196 430381955 84494363 268406633 40036796 382697609 13155945 269397076 26332904 193618186 110457489 838529611 133243753 407331229 28678891 47958504 40743202 613360584 523701099 978974083 253795574 921630740 583478457 931104503 138023896 741292335 673400530 927662053 576458713 963261832 883074617 966872425 390227303 885669579 715995315 879087925 827945458 932056745 12536367 637768487 484656405 695276785 674756231 805557971 424119435 978773864 371574597 954258614 352950621 480305178 180691852 446443169 307623501 745162441 127618368 564294578 382087714 962433580 61328882 796217150 730276196 878219746 562203950 631875348 524935282 663634255 184045406 242956059 177373953 425262115 279709415 782042460 563281281 992475894 118941159 552245373 203727682 271502372 134333968 136114621 45163409 457650532 429999415 538371025 439811411 828297908 478135235 627239437 245120195 741337496 279709401 948471450 456273921 865417361 123232869 842731411 29752435 346307059 167400180 200523088 140285557 498669137 362431399 648147673 83986921 771838751 230630534 404351285 209561774 672297508 492047777 715732131 312752057 458066764 282508589 397459940 231491032 395526789 116865180 502519212 97806527 623584579 433950524 444720951 73064050 911278205 401438271 422274116 348326942 423765138 175218153 578329350 502894669 863916121 165958722 297478556 21721961 811215635 77588538 775138865 537633781 757855568 458703215 976290476 907428737 930991030 76750390 660702254 571962725 894714860 134082463 888212255 341196410 750517475 576253579 617047044 356839711 500208675 28650135 776123892 186349387 806040220 522379097 819397013 44086992 484655588 41118896 568344130 455119962 988136700 843272574 868916613 361444095 790201677 474748374 677598958 642017980 764671798 321097516 349573585 282088468 487821598 185005069 685710703 477671941 525543511 111545599 668525619 343451438 501074851 402997225 938081618 754663124 946161484 717300184 962644466 110936115 535876509 172864204 305835323 61220387 626147398 593828799 800775040 374988018 761139878 514572085 616604178 515681585 532621286 452793714 839208056 76539252 501133625 469960028 966432893 670213441 980844564 510116029 989089769 15670396 555731656 220318351 227961661 201807929 427545487 50279707 223729950 55730753 675473565 512448224 768240408 4308894 512029329 460238130 992833079 564732730 703840703 21667261 896540418 640491193 674784262 82743624 112663355 39878377 986193342 304665124 904455627 872165165 955159208 64112247 841273003 560043371 886758693 189209781 630316403 96528628 918571799 347723908 609149415 403717205 987214163 782595636 875310035 409463177 613394210 322192649 475528568 449066437 756842060 57774096 873099932 598047327 917071514 94106956 748683101 113686453 472894945 451775248 810782765 664113297 989717283 965055902 972826176 519458637 677050107 634956768 639659900 151821635 807985166 398409919 575087353 405483425 771721870 763603871 898940461 587507980 735780170 720359292 772043014 353943636 461198212 226405269 894132630 205567403 625790796 210490266 874192254 21676856 823052288 557925477 836429642 400989302 898606372 312162642 356586870 275051347 481088740 80015550 327016667 297162573 432101628 234275763 862617160 448298845 624075515 417184538 426297082 329463169 445145666 113972315 967146184 743470419 831927916 251715669 542309548 360914967 685695855 149671127 586436994 541067469 876525105 89644411 278935459 151484737 942656529 93042680 990543128 221591629 868273063 169450378 203633282 202570104 324756445 286336031 535529783 440299426 869410108 387967695 603500342 342659740 875656224 651569002 925059009 94455373 974486968 921815473 962515396 701227438 933924363 302181184 451546747 434863072 851882953 505864792 772239829 51547907 869588627 186217764 661743019 142707687 943871107 674261550 909946274 535638383 971720643 925296779 940516936 897315819 942456106 245357382 935820038 503555700 934344764 146230086 718405393 212500357 836201675 813249987 971178591 872456137 910361339 358431290 540045885 253718026 310269645 97338527 851388467 448571094 590157774 254379880 624131784 314980578 421864171 357957325 553139667 389865065 808631344 167266432 333159111 15927139 282037920 693596 126749167 30978048 937630490 126601037 944695101 504018337 656475882 22013813 224456382 170588862 920518782 370802420 966176800 942775880 952995852 118689588 301802748 161154814 212192016 40096092 799224415 652270000 893506572 685554865 730773233 338050506 775446010 477220566 701969365 310511708 635218172 519266642 561785362 271911893 815981727 218517332 264363043 66000744 890505996 226129536 934710772 803058227 935894671 913114469 968426153 103076014 470845941 386349318 774483733 237355681 534634204 206097335 873079300 398039437 496993071 397337426 507950144 194041445 470629700 468013925 540724276 292608716 452410604 385232 842136368 594960652 596774745 454400097 739240042 516177555 541891004 524427300 880048545 847947920 990905562 160914103 251142440 246312058 730531841 473346144 802111429 726119324 758597874 648033014 933099707 345171554 388498071 379882097 949327090 417120352 991121616 782850063 875553902 27955065 199530911 129754006 912986702 789720715 900619662 650836783 958682057 350796886 614579787 20859087 595168096 409015610 545814488 116755086 392076956 214878155 764864762 134400127 153599190 167122 808622637 132868161 744383894 538950040 908679914 885404494 963646593 722773548 997150633 717180473 919282996 725600043 990120328 153591129 944468998 101167117 235033723 88487005 293621169 219771731 817047539 365227127 852227128 18943474 62599640 4048853 980964168 178375619 419013182 253766466 602420648 588617866 714452898 491969230 879932691 143440043 460428863 182030354 515682178 352171384 468843576 56792338 888528502 615915616 895124953 757870779 767210385 309290241 712082094 556477869 660023395 139893562 580381920 347330753 554278836 393673506 938913933 677501004 760520193 413505921 970076855 354526036 763512367 588087523 678434718 411206505 552570684 231462233 605658948 137214893 964215043 420940097 485242998 321318000 672174054 426208686 951549611 164228046 309666948 822885 833865063 799376462 974233364 432490897 775270158 29887597 46578584 32295391 839278269 78650985 586059030 246548516 561437689 258541144 561330926 125926185 724038511 459867582 640514276 305590209 326368387 67896277 830466270 604684780 992591128 472621214 843300388 837289731 878142842 467424098 481655453 240005018 999303669 911729031 997046719 323376117 989678007 444742131 467623368 64425450 983928477 862776339 875926411 651559314 763095754 310744005 747425419 73514997 935716644 799389437 811489595 608273043 695821613 514510248 608492125 53572425 115744137 81772436 85230178 50158388 98390353 35381778 325507752 301618250 320523522 60936116 714343022 115173584 843402229 742552292 825497636 43282865 928481543 505671628 581662239 556261657 655917382 460956152 957436414 594264579 906498593 381317215 517488986 164604744 255733188 246949245 463198032 317567447 858693320 268740110 677808454 51096942 920097080 217132097 317392617 250144136 454950189 441973435 447219161 57215966 715741383 650285102 960418019 819715296 951390222 169248767 227138349 72027929 218385147 208682115 975254027 650206110 944286956 392219850 489072065 428204265 515789695 232384269 293379761 32328984 861498509 834476354 843134337 370035442 666750846 243700643 797219426 557291815 961644777 13324222 347869666 346711994 415748185 105073888 814787141 671513449 928312999 367151365 398742797 295673528 366965710 305686748 478939049 365481881 878827319 780233100 797173268 161924738 754546394 241253104 900742617 64547257 292722866 49417912 97598028 14633861 425698071 201578134 503676635 328906537 554643657 244928182 431187908 9419787 287692267 36391382 323436408 179724091 472229807 448777787 648342911 18494479 934251522 331066064 837300263 308811937 338284788 135324535 512997077 457746077 993328524 618313817 851714723 512751490 874758414 423480405 770271746 318872021 542399235 176024016 846372269 147496589 216576475 156521969 942497589 313355695 854218312 171933550 175244551 153895238 338347724 89598539 893684079 648776543 799957668 461530446 782896861 215208208 255050868 192736705 568251042 419588285 428474462 247080720 536144870 68840607 162787997 66157662 515820073 429462207 965025056 728088152 879144907 725491832 827252901 140964432 859688295 841507184 974437699 801385759 832108628 756675928 994264131 471403301 700773124 81725987 559983568 164028280 216358663 85496780 98232544 42773649 166094650 86747420 397794070 67577773 589113016 493449179 764486506 660715348 891395629 634500104 748555131 696921327 903885469 884524558 981379565 652285670 713814278 565270679 722452874 531127295 968428748 895699219 953829701 433273082 779816777 467597983 909783057 790719613 901211057 149828692 996928217 594637698 791523158 42718328 150533012 136379012 496005105 90071714 549710219 95569371 130062142 76811165 386709869 350759743 648265630 397960570 511444200 280246802 419442668 58825864 897956814 621916732 742698458 606680107 745361357 119473588 757444465 323606474 537051589 406955037 845862202 678910274 860272406 195553197 793663006 634835911 950554031 620162026 729640091 410758797 495292076 468571051 781235017 106535022 179540234 82727583 606249448 504510797 541749528 231371206 833110902 223120707 595048737 199430063 224941634 101410763 887568239 712394659 772791846 25518674 611140881 342390054 398371191 120911544 387442438 293251041 505930890 734809 208701914 112764943 405530466 40246170 248428908 2744741 391685925 344044975 382185143 301179788 614006835 278774410 329874058 295507949 646596572 562537638 742689754 472331736 774364931 306830754 554172767 362733767 739717967 708526654 927074569 827435791 921264350 607819007 955761744 259739145 272363338 256339252 959899902 280310182 772631864 445964045 495972010 437407830 910500766 485174419 614439054 544278544 834521091 790386081 840774814 145115437 725079083 112238596 849437953 488765095 705761427 149887898 439058627 424296363 517607086 22909474 126790035 31307048 809638513 508501284 802506370 711784501 901408679 182457765 501216761 225996908 405198019 202509118 472729147 162588121 895594280 479661443 669270168 267070328 783244097 604442024 947598808 440849307 451016818 59051790 700067966 108280214 618274997 111950688 755642790 712315909 832307337 503756558 944852678 327933879 381674009 120943333 692346985 95088892 253825870 158635970 673483764 426647350 598865019 248302764 507630814 113076600 941022321 738869847 860601459 225266934 505017948 46676147 231255260 106310120 472674223 340329714 638059725 386735336 936489777 671373942 819348765 201211417 291943391 86694668 115853743 1881564 147933395 63198811 672067300 573590894 757258663 582073931 977586523 555301011 970500783 672647346 770660398 255845466 532595265 225278041 238016579 92186381 432205378 298721801 674826911 492780848 545501437 186217521 461557088 141450363 652961193 567554112 946495730 647325084 732580237 718933521 924235942 608999950 823521451 286481388 827918350 645655607 820843021 637356721 927052975 593798286 846493279 393281467 848796695 411833248 424911791 66951355 84392160 61164920 804439967 16239032 747672595 384568553 810650933 389825344 816514030 442701300 876050688 254511337 384443317 228731671 544361124 389531431 460130861 96997243 543204158 460655925 772790001 78602290 848861182 238510577 975113982 772237550 790069975 530058627 726031318 62291221 746899946 718475409 741064680 199000019 965362868 893684863 899638276 742981486 897743026 320583634 808492259 367556563 774967545 463125692 739052239 50338044 276928227 26639961 186018721 12885749 807505837 760805793 915460698 860280103 878487549 722554709 744709665 103850579 573205423 548325640 752840466 345195851 837950654 639269028 932057332 307370319 848168095 226868505 996346854 677436926 896486298 669221509 733531018 676038608 745120647 509347564 873017159 630137055 903387324 815906620 866492916 787928502 891581008 169468985 224840868 2498542 119155503 20148650 187232268 174654636 696710418 201940984 243086621 186160306 486835206 49433223 658468539 170612053 529019641 113544257 659647702 221775681 365752256 178704553 856868852 273828295 804683350 330485073 833116091 595468770 700254753 568121162 762339093 372318979 808821441 5255754 512255792 140638492 241504654 60488932 401173978 6062359 439845721 154431672 212847683 65076925 282479692 7374934 891652983 140040879 481405083 399152141 530970504 93492657 132064826 4680013 435057766 352192028 389587216 39119063 89580240 18703983 143102835 58043178 300338265 285173064 912569451 832417628 854893783 359248228 554288522 484858429 617370019 334707624 643579544 203702697 243862903 27887635 183509617 18897450 696321484 567725636 926712179 512148147 987052208 514815814 735324786 383868243 780663459 505648298 821678524 403560449 752291725 298266842 393574728 168699662 813369047 119259016 932446195 438005779 908226159 828821410 880745568 515335069 705078131 36496695 225745985 14212609 934388072 385519092 581348381 266627343 941546429 675727931 731372404 174798111 308741023 27142587 833422225 271296059 287591767 128242214 805323336 203984446 868690198 145075146 300378212 115641823 502784387 178655984 360947741 87540396 723353849 684655034 898816762 492968859 510643792 376355964 388861497 270264842 472773164 135311752 646991702 611413132 952521892 360115466 545198690 508900645 547748410 514344568 903723607 425489567 910340576 479172265 828764948 203371290 944206456 881655436 917260938 471106410 753450495 211258952 603833011 595284106 786632378 336778511 586008022 238347591 978159343 781155056 936421810 783879931 957282948 932021787 936021682 127045292 867165921 142511386 387006255 211223447 626534070 179437887 448198247 412111002 566273677 36441413 974168952 494318699 917967663 520856505 819008587 93952977 438144199 381485062 832913001 374927752 431177904 88334090 283159624 35360153 580351046 12395861 686543962 124526061 827125270 387603032 980332266 635653854 688536504 658037260 760381806 479280291 505542120 230525941 469694871 458600246 775250359 119658929 213260136 157807770 982298847 880949930 895329910 184541528 232388833 9020259 463013308 368617273 997072033 855994649 981137180 436370921 839364611 239676247 366270857 115415498 777148511 46845424 261537968 157986732 469870817 178822229 892930759 99266434 317981681 244753930 806021167 598217610 673680461 487846849 863330568 180116885 522104298 397243214 879950645 356721318 573136788 425838602 532079290 195915615 914136172 451964311 687573835 579644863 663193314 428522898 963047550 877938589 968382852 958502942 977162595 247293400 369094153 72367219 197826260 46728018 598131518 411073408 595819241 189275943 537668753 35844535 82710123 377633 861648077 174388636 303393092 279687012 985791629 479370224 754733383 122462364 760879520 57365645 191236634 1848415 266253932 71647883 359821762 122197558 912190878 907488283 976870769 313807066 421415940 118369894 433953294 88085461 172104067 51841865 75577078 36670930 528594761 181864965 260727981 39332501 893124251 228279474 354834157 278896686 772788765 532678975 847770519 583541521 674781457 607549702 743573511 648763763 720070181 595093600 879265236 185335590 364297429 128462267 262585601 138385253 652480254 462315912 470521322 378114985 503229993 182793210 511154524 440396207 898865208 314049601 350242152 307545965 763102598 107885339 491141334 89355907 236411685 104119948 457206386 298851057 790746659 667800373 958480066 693248514 693315250 643118233 848580218 1901557 777572552 291848900 796722293 422218368 691023488 454249829 557980057 44306413 257059674 141473395 531061888 314160078 744231315 301501118 854083262 363548644 747138793 54357096 302262421 55452271 138809625 121672725 581522004 310739189 997470505 593551116 641644489 182199879 584788337 566379253 889999032 843414183 922839403 904146611 970275746 26671304 476639307 165660186 247764481 79648751 774548670 209980225 869140721 655483845 777214997 270157693 957091909 95329116 932355818 530617543 856136835 807967560 986447949 512562724 515582267 417594853 628863716 490351490 786324849 443534162 962574363 10508805 501565137 172027796 851782974 22036385 766483586 700836150 902357461 122650557 664937251 7520686 94748545 14656808 657010849 245300505 845819049 234132768 409934462 238508116 545786427 108868993 182370296 3489112 465940972 363827662 418617595 137100487 885658957 553526131 745587903 57420922 286003715 74456317 383649661 280828907 659929589 566282021 620004680 352210108 904275508 482302310 909897998 541312634 979764786 355163898 642975508 209000091 985099304 338356322 721399666 577343062 866048535 473095855 733452971 137031915 248774251 144518536 828146372 742488565 823817244 531612922 883185572 300030184 860191239 113007446 250777192 92462257 301766209 244432393 491231399 128587133 378826550 72198777 414709148 96983108 510795247 502293723 941048537 411856055 457857717 139116987 807600294 120605436 973117156 804572304 809879867 472631722 893184482 223053952 920694663 888518063 935877355 113779796 942506164 744526343 994376788 784331665 925882717 297113223 650541692 617730279 790439723 333950017 369932568 22862379 474167556 142939486 179643336 153824474 566211112 401609483 580727454 315752616 639169700 262803236 729638427 170733482 212421480 194760573 837375859 260334865 675536101 150817161 556354721 378722701 710769320 668750596 811955199 467463338 871320482 673196828 880442071 327264711 425186742 164066835 177571227 22414448 409630102 243337920 861572373 853451382 923987329 423008775 767844977 659641727 852833875 43648777 241238344 194209005 541655376 198176915 656856690 559414241 680523823 515793716 932016439 360161615 676019978 246785350 881897400 650808076 927223577 559514511 826983500 660718268 894757356 815161729 891801240 321149670 353063815 97247591 861936461 759510531 828832336 402179440 501283972 370731368 660621419 616217926 880838681 866241831 920825503 82273939 181399910 127446796 924455939 221021917 383044157 62741827 221963407 158699424 210961837 81697396 462445062 381414018 501326240 239111766 255257622 22409561 525435181 448169427 822296559 815154338 932965131 115655340 271213186 262428364 709424675 458668374 782821385 163726859 469848344 257703543 883424938 448438184 938803468 875563672 924743334 72133348 579522167 30775345 62505630 29150879 963885935 683649535 994195837 394033694 682891133 558471686 684800865 133282906 258251608 127697540 350522158 312753712 314259987 220248934 399500491 88229378 387321996 286156286 617293729 205889033 960662678 173902740 840318756 141334343 873273321 261229135 438534561 269689848 406343640 239156666 837348903 83578704 204169876 2919886 128027254 59148876 684498730 315459093 329169889 87855444 678912464 675424860 888436474 712265068 762269267 461675030 894450497 823412845 853350662 20764264 366035749 355216528 419364457 269066549 648735996 175377466 516750586 475607974 611649720 126319083 600429718 34901305 143626893 4305002 366979389 203215815 859557362 623940479 672894160 415771557 903956990 717267583 901694811 346132458 450049647 350021347 802855778 381943430 997545469 763980862 802355661 424994408 865239388 263828154 720307902 545162939 972044246 603186677 838532135 403249729 920789633 817484230 936240167 26023031 825961262 98131782 968142633 862705746 870927760 855979043 906225478 513944405 795349838 757483136 925731869 907206334 973979861 418529775 448359322 364958057 438886047 119605611 679544583 597837791 674274054 207561766 513286644 89274542 728515276 146664703 699355818 403736921 694913420 60235541 388096998 270840670 752033290 466720720 517781706 348498778 732544410 372875138 388373387 183325880 384669936 93925740 274217293 71438884 568110683 86450440 399803569 396488833 487153729 306763676 710634969 308941011 594506934 160057019 192864231 134030183 287168524 150656250 542811231 44235598 203589158 102662987 358312294 293875242 609921189 84200157 915770420 620606708 831515045 709430589 790713235 731317290 900849541 672209214 748296183 484176108 879012186 821584983 864629168 46429926 963891965 747437280 901627107 381509898 546872681 404505531 869824709 315572205 627398791 419214953 451991571 17605801 941634382 489650618 661413423 590708617 896976560 759222429 948467241 81524052 207014592 90235658 468819564 411964341 603958609 243976571 840395735 273217031 366753365 285278006 732007592 545474175 615041584 149320026 745497707 502891059 861655706 252317066 542003976 206697701 239872410 87333647 809582829 505140571 981051705 374193438 936338012 331956011 637053112 276033883 835240830 724560370 996541944 314476387 535011904 143863498 982436619 1824646 130501238 20067633 627820033 260353039 499285997 424026572 429937280 408931058 628396919 59904730 245469278 106029537 360457260 126232954 520133082 355759983 621020133 89490624 112704240 45144998 678385301 31789875 779632259 346523104 731101189 285477458 959499919 278554943 660019625 522603502 565452933 115482004 914147857 399903765 822860889 537879767 844818948 400957903 455198177 169292095 947712760 63847963 745551123 352988595 928708483 525143160 707100984 636272856 732895795 668867154 973752868 331582603 494671985 115140430 163814250 152242334 597441421 206738287 798616336 746162466 968051612 808663616 952481500 881157426 968696317 557643651 794128354 574578231 872630900 433933346 895180579 762560236 809137562 236798752 350726066 114209152 161492437 69552050 98670224 23413375 236828115 18981193 243945145 155726663 285618279 132645769 477402817 323603902 389142932 284969583 639529668 77107987 557634286 413073249 665089300 481664795 889481047 590973022 709681286 421158018 506149933 264650944 479341298 43532113 671714958 565051816 891526474 330178998 788587238 550531563 916525665 80861858 830556007 487350577 716191743 68674427 953340987 659171175 730194736 219203624 680486065 350930371 836070228 275936430 734664276 322932044 945848730 285546186 764241744 451333228 635297437 534571447 950849058 246316634 585175253 215490615 786994047 116949739 363174389 227167361 335495417 118694684 898534050 195462302 691945752 133307560 719408921 11862879 519303260 275348515 275896436 129748948 147511308 100607246 949933585 417311986 983383510 939139234 974983251 417420895 822082583 288826137 898669705 254229705 509222067 292327912 357196358 272998101 892976176 614580048 755869222 745930484 836575773 829767301 854515737 185047134 993128837 141339999 709536685 139024230 390540981 107527083 788553978 51402015 747400908 651746081 767544822 259339602 492475938 213623709 662566361 364926448 587342712 288820629 655558120 385831827 842025227 71590936 338900965 259438425 783677692 34308092 49875843 4541639 587394941 126174836 418032782 122384997 349150278 238307250 576128244 333553263 693767501 237207649 307374569 297472455 951320655 627336565 819096676 419951093 500417604 51022371 506270908 426201982 759234500 745369168 955010866 322881991 716065306 301159771 772500122 347266577 754446369 523665417 628412392 16269658 655032864 93439682 241617044 205625154 322131640 124144236 824326923 178832259 226320647 150091755 593679114 143054601 805593786 598422481 651874177 221206469 470966752 100257738 568662179 349156741 636055948 7793308 98772477 16515412 668911862 253094516 848669719 59382857 798265013 90608841 618689781 155822254 956009567 397053410 909636086 639271507 912649186 383036105 574712848 378711349 785426612 398331393 603062011 540724764 779412262 54286649 644827333 490556810 767700521 201283185 638353769 516185542 984984095 765847216 822257567 187969155 670733234 324075523 590276822 380866809 866215693 849499232 895794400 551870593 647246921 92050350 829881472 775238052 913400223 358723092 476111986 458169004 963083865 186102780 520767349 153241812 607030955 510405982 767808684 707064231 764867482 455334274 958741517 250214226 261064890 211620696 541947099 78310864 716354730 501622353 511877104 382467583 563869732 420838077 488477698 30298090 245796510 58507787 519449064 283375489 426702062 155709623 651979098 331825818 435997098 250386814 375516408 335670164 923750017 722524754 988191043 747552058 881290127 300155427 425380767 417281385 985869797 879242282 974871104 840571344 902691134 894242780 955433116 786471598 969646921 43543948 754512696 541043863 988635790 207248095 993667076 718460729 752260656 326186471 790858408 718837499 940469207 440641203 884642260 609022538 914310535 882852306 973994201 343955349 543182836 489325347 891343969 776616538 921412022 619177031 718694979 451882608 688087698 141683694 615262965 232515648 319432654 155929043 890382625 880834956 961740259 463767930 708077191 265838024 855738398 534085126 995018098 849260130 928294573 593338142 726340251 366319624 596139434 186285075 441884683 429588454 981603007 67566644 461762593 153892309 182529485 50224675 852354698 556517455 973111488 705885095 969762127 368609618 702276417 599430132 673916552 596400239 752281398 194016807 580836634 360770626 462139827 374449120 745338223 71813758 714694142 345367563 529662262 231553222 795758899 74327491 107028580 39266531 892845166 879479276 895032232 883789615 892866785 207627294 271806273 249536543 479565097 196132391 692925906 517867990 913113363 147270167 771357785 180954033 940071821 638169612 846019837 261720504 323647206 255108409 527086662 127990175 883936191 601198705 836501474 672930245 688304849 326755117 696033090 385244910 635735123 168047115 637214991 140065247 369762061 4016555 191960974 53355410 744779530 115117549 697708493 565263405 914433483 393445124 588254675 487172802 675309142 129998910 636378332 210591757 956777147 732213129 945897280 363585903 823692447 380431243 905234726 223942032 500394148 121814443 984959421 683402916 821562112 72126601 723859599 710010187 827493056 547283589 768426007 199152370 837050049 245180454 435630726 260271353 483627728 308854252 758713087 620059917 699874128 516476760 838767011 746650139 885774077 713023020 918907848 505511535 565949888 419318080 658601256 484358351 594733213 191193137 503763702 288088720 456463281 136156305 424000820 192052165 807409856 709983893 715967140 705141055 945969312 156056186 702155049 255678885 795032195 565670923 809225091 264867384 530165592 199647063 398929708 214221768 807865757 37867213 74828307 42610984 758881198 146065367 559149878 287290911 375777228 265390080 595094051 326452893 723839549 262562490 421317153 403173607 707689900 262220222 934205642 644806714 664467510 396310280 437362507 144981113 454968427 202683799 831716926 433996164 900752380 717889378 931446287 114168367 176166662 110849988 150737175 13440321 468334637 233712592 802016764 486761837 983550618 412120510 616260654 592176595 920688415 415051790 750272843 23647457 817275046 304348440 474401674 171022179 632502895 195570735 913337581 877669312 969772316 445544026 613751686 457895280 867495310 363312056 853877140 375689132 767644422 760856792 863558440 112240584 382872283 116330421 998872846 969182642 994284568 287384047 500878451 139433500 953105312 27451064 852644109 239516801 838440953 791828252 793503188 780244705 996469897 94787295 837668724 281287233 326887428 159347112 349234797 37501117 754222477 694850799 752798006 377941084 745417528 660433567 966236994 353903213 877798705 178431131 861901935 527782668 979064226 420358870 936713934 568253708 846600943 358212535 475407225 450531917 828673631 79464774 116935793 74765026 249323031 113062028 849037473 551040022 870739755 221071086 516170565 503335486 959102473 426195954 934783365 86420131 753975817 180700360 246275947 93363665 99250723 99050518 736019491 734916790 865595416 96146813 226547184 143101822 723795290 302999618 860601015 841146960 997488165 916611978 994732522 168153128 832040166 561953174 732800535 407746916 885717976 273977328 560368153 483445448 897474215 218464593 221498930 68565 990345000 957668454 973744011 689431174 929235054 668112903 875337865 284111788 795774330 551777741 997760627 315522100 403358371 56425674 491229339 179064767 748124622 746910838 996507173 952356558 984961188 383341897 764565367 186393802 818166606 778313123 802538026 451357775 636851812 61085051 177127760 96120148 550096986 542887537 843675419 471404453 821891457 285425952 698230388 89029812 337367141 242646634 601314080 60324538 419207870 254082407 857970003 497099564 983542911 598933427 715152996 12079719 641905782 427779068 805422974 583391284 671456229 171786433 347690485 220062107 316893634 236043327 856075736 793272010 829206022 829205219 878715297 807405473 967966808 17035142 426398005 360848104 583368681 485784496 521080364 85600793 984930174 275375348 673616257 117245569 120961975 6659368 319220617 245750030 418788546 83345590 308148615 292716980 448907384 268072202 787711814 434557094 820946306 757450352 793538685 750350565 753439651 408672582 410086474 251375039 753345137 377216206 969885113 14943144 86955890 45359935 951211293 313592328 534148216 266393588 410930735 276276806 582433824 486105315 645073278 264969949 462792392 16407037 335823260 72886384 819188382 78689471 896612002 757226959 848367110 219262975 460835593 159211230 655856954 300348877 637107571 341987199 528394599 164716228 358174633 110196944 406508945 6185014 17738010 3919015 17016111 15035029 305408910 9565474 170098826 118119392 594979327 513788356 990098157 879566624 963171801 101591127 670047128 202770242 613377987 93067867 635911216 245729218 602543818 391605701 443438056 399897549 694423187 140069347 567876820 546306738 582382720 211276273 922288235 178263501 946009065 796333274 889133436 196017681 662546156 349458762 683927372 178825816 260157009 37330281 97947864 7074879 618193167 14560906 43761491 10424795 836887035 296224809 710502137 222219662 589269020 375880537 570920435 456918341 813396807 339204831 688805656 246453802 533740545 523572765 581089881 531728915 902071845 883683617 912998684 257961612 983941316 141007042 228515347 44644952 797668619 667066610 969291140 528701929 845453917 691391863 710562264 358971340 831295621 536603487 975203345 784655544 873821155 760122503 795056257 52195496 293003546 49722550 127932478 60486288 446353848 118636773 721909814 66080278 970883508 232533671 912141875 126330403 159623109 35436112 439389325 129473222 869873628 511175229 837446819 712840215 854791027 404570985 702164542 483121567 557700982 173386052 552829777 209409768 968310094 564472231 903949364 834729672 839535950 763601469 879129747 485448400 969487549 687411327 974524590 202669388 264779164 94946349 484042799 294529160 801761875 264434025 333041367 198814171 304835784 202446108 506606048 76593648 991221473 920699760 968605585 169306884 393937968 103394866 250825893 8705372 215479474 79820443 153077107 72385767 892047661 159594068 338849475 268003521 580095837 286632276 427001373 305305208 563394525 216268759 589039515 414795706 671484232 96605120 705011892 226005387 697703976 386792119 522507987 48223861 315722553 177776193 623170478 339334233 366231691 188687495 737184679 55855095 409725501 408988230 924052642 292173587 665569013 124494806 190675416 36893264 830234924 35268845 509467394 88962875 514678662 49681687 461521043 432872991 854313117 215518344 597541529 85989769 90930646 79108454 839384630 798475073 910348135 810283833 969711490 424174392 589702698 431418615 901366057 646466220 971897899 876781180 994142267 117759400 874730664 219015507 231734960 200449469 645074843 233100332 643093668 561968099 671793058 439819476 576327139 169517636 890249290 407277713 514722086 18281176 764749331 339485603 394838554 5318510 310179024 305840075 382866466 228719601 790639956 476683291 890071819 719028194 993551519 369537114 732517091 617197254 630974291 583615960 658795931 304002205 916215295 800316052 985906579 360796456 814950583 443548274 474428298 213509991 394921029 222445953 987042875 870525062 894133537 306188175 777868302 441844276 826984493 136677191 311388728 266835618 879713699 570483907 898710539 111576141 519761454 175234913 428854242 118555633 556070588 265475795 282207127 216729640 532126741 174292823 957108551 222372566 543138439 300462913 375606435 269195278 492074704 430054927 647534551 630609086 770266146 57627024 667131107 488236268 868444157 499288451 549673058 56031359 451695337 337653932 956097268 120438742 815669017 81918488 687627856 215343148 434759291 313074509 505564052 496984698 589233776 155385787 719473721 401652112 716694240 457114998 908689368 271470939 408228549 3377638 321529785 80964793 116366714 116108818 723310065 491983611 986020207 72349658 802012435 251137804 918777673 569720532 860853856 682046265 869519414 830625676 916602381 417214299 492715337 372261519 855241000 620160585 893882253 235719251 518717320 327633035 384867912 285917984 336119281 125099535 497670843 410120650 678661745 569040316 783438500 154006616 763367274 222207179 268297552 239189563 728615079 720029157 872305787 346940847 877309675 235097567 848433557 680651743 753848840 443107058 845747084 772179947 935012508 655360047 849777035 89295354 877487957 90957399 818187648 654931060 909571751 255544321 376017496 22380801 54442326 21688481 151263216 52533589 235717566 45817245 553525371 539312695 707921864 34635121 392659003 179507210 799531742 392368573 483505058 398619496 969069014 37157917 977429249 285531165 557137300 299452059 625700879 7838175 22330431 2684547 9945327 7454938 448287038 109953237 392461271 359056434 507297876 376367443 810880144 490764259 596314350 508372175 629505980 391473845 988491198 602856119 958303239 861381834 969244277 675692797 870234499 290370930 454288339 238366706 505726904 237789437 295803568 169120701 178166877 68707155 73916504 24309115 664957493 638531853 781116806 364505273 885142205 607614386 931432528 495010736 640123321 625129769 873778588 554083906 630180991 552093225 814002088 323512686 891476576 445726959 460702002 297556833 453741852 67717390 90238405 34896658 238431667 98437723 757388248 336780012 437120422 358381352 661009932 47111886 622480288 465177681 689469826 211326609 722764554 112070692 617699272 420346129 572126428 20615807 385028754 59941251 937994562 837376189 993632763 714296994 731054974 428314652 728865152 427532034 901461415 836796268 917817949 40121330 180068061 53295552 86701997 79631168 835870236 530150596 866797692 486456544 929138797 451038202 897915890 399545032 953263081 244097366 589991332 478842102 864501986 703251458 896349657 651550919 973509422 235300492 241119612 34004455 207868692 1161123 495680035 390659870 641124026 356499491 949870820 676273173 977827549 719890094 989700498 335947965 830464413 157104660 550933473 240350593 669071157 372046022 528694786 35929203 577822250 415808810 909013845 208593226 759443411 707983640 778996749 667676130 889225841 665045082 710442201 319574493 867176072 709646040 798532472 490896779 981044068 347059516 794844504 410516035 702640340 2493052 442223305 187713538 691099433 642461682 841833327 617568844 676639627 20881291 411197857 294289782 658916572 609384972 873928981 308977675 977696042 715327185 757073145 82515997 449287138 145350792 929509136 616277492 870598588 749422986 889082528 716453049 722696583 682509792 845536924 83920154 784777411 364021374 977870435 233768326 786759347 720860748 989516113 349340143 511498128 483123947 742480430 558501764 732399241 276033576 477522661 65095514 406875628 189904739 245644086 20624532 264216582 198370864 256025556 254617998 952193942 475071904 821739939 817952560 913903606 553208974 982368495 855172292 907766777 614702839 648104030 610687720 726859852 616104008 650821961 415872242 429117685 129705167 441157689 150205767 366916174 296573664 419434236 147148927 264893228 124565616 529065770 270356105 880995974 25713292 365054796 256786880 888082449 162455797 692502875 482353636 973436394 142537878 474003784 406076251 616423563 366040793 970895437 430951981 762242717 360697505 734112592 618416326 765567981 391038142 597648182 165147593 680694354 445362419 837719687 278621848 886563426 325839009 427856371 368538731 405480511 240144606 753092791 626782368 799152977 197513715 291331373 267308527 818462030 690276261 782209864 475922943 553957933 88533079 724346650 651229442 856826480 21824496 137509564 2373 343555671 251011002 293892268 33497603 867439882 658154249 875548195 453679278 879222112 475658833 728973483 659747184 811178880 393583917 949695050 388676712 773407476 608716522 817661109 712376914 892863019 25904909 540070944 297182443 804101097 479479018 955993373 43356951 890867820 221683569 835887737 113192355 468521767 123013396 319488509 269677428 546985508 4572588 819958184 62119665 426914825 238924031 973821827 302500871 434783629 354575809 886225696 270657516 377008079 48826282 541541393 235385240 578198922 45562871 827031710 754493580 921619730 552924693 661663007 347918438 859643920 73388551 647224422 408857530 976439421 912821837 932621690 516767302 973923982 925625711 969373311 774773663 837341972 97664930 321745562 242047160 952661011 555951729 786943034 227224296 297389993 278482363 370043362 305739936 965570699 379419707 430842414 102913787 372632746 151829223 526529149 44013220 53093277 30715141 457403836 441759338 890657682 798469934 890063227 56111840 402248126 302718340 849194103 382878372 608736525 528833621 822136556 203556309 752088239 259699113 969381898 464790612 696872764 374474896 932694666 92365626 203072479 162985557 690300962 515923373 996185177 683545204 772245297 173858821 811666311 749047540 900870513 358813489 412423561 243511271 681969564 528857123 733454138 171529263 774407588 613732972 863563818 620745620 648394345 610242234 764751928 605466080 708681452 95680344 515175890 209352557 962737975 44932714 593315768 21564540 911459412 453878220 920040865 376310927 768933606 718247060 782912250 724859187 971223601 307346997 424695806 203363696 948376243 713580330 759476946 577532192 996076219 856789115 905041121 46096840 136241356 13145272 356295712 130026355 668374602 643269707 731840633 52071545 736517815 311449586 472116511 63067255 302507265 126279125 356972834 33302657 633206703 198002997 756050956 64250285 730148723 506628367 661355311 220989284 462471191 391992734 601271054 480644376 595609466 413796300 873427910 214647152 554282990 428815256 734464208 218731578 601665185 517488222 871475080 35972282 916140814 610676388 628563439 202082130 436841938 346091473 747711327 480455755 506076894 166630390 911992429 542875666 892458120 518803161 720458429 280842957 940465898 377454838 960252594 450531253 999257179 172865944 520015306 257914269 533448562 466968276 865177452 488077565 825854195 592376143 961134091 859210432 896880479 831560308 859487517 19816161 113247690 61797906 651835319 314473029 458303835 435734092 606630729 160349964 531410254 96274766 390728237 127669306 418640138 10529446 530563955 47278907 389756816 286901659 387677217 6389847 591884774 463714476 756812613 604594176 676709492 475858436 542342789 247233233 463761002 210387914 861255487 845526914 929135505 602471507 819509548 373474042 826005450 270221017 540048859 353977030 884623697 272257048 388794489 250329343 568110491 166023643 792741812 326903706 529651653 83022272 603123850 35515367 943873117 600759748 678426126 152962275 229469275 116087056 963095829 540985266 967590210 593220110 872977405 222064614 569189128 374164304 894776884 752884952 920809138 612334669 829242032 359297870 406976463 205295697 467307647 218786035 359829920 196456729 863079134 426382471 851987490 584837473 983840105 690406531 840445129 391808770 824735731 234314369 258764494 42010543 616234865 391088364 794569351 215236924 581019528 116665058 544974671 116472404 438227218 82304397 714187879 441517217 899816784 375410576 489514243 85622307 171071142 3081096 703137507 17240516 275908983 15145049 716958224 346266759 407711041 163550001 642598471 446418869 884727235 35662934 359840906 262452173 937574176 799703091 833710042 276071797 421101857 169488217 727834028 432555454 802524938 409830214 779441577 595354911 974339490 486053042 655576976 312531795 564594555 521613073 933684911 209294096 369103023 284168254 910100170 140442443 968934108 12066334 445038489 354223463 405246687 135465188 779863616 470741585 568911813 385726131 448390232 395061093 779199880 66300155 201926412 77447059 156989195 124634623 485041874 300482417 515403199 378262816 616262377 257870489 993693425 124932498 697246298 598144170 899220870 658342092 664566060 324181061 935606629 354738786 910464784 504466250 874060192 75461983 612839943 23872233 963625121 461434121 808108361 576152650 634376277 539591649 875054618 350816559 428790688 251783043 653332441 638070974 941400128 755039316 834537798 119944600 357363382 352736131 487569886 104851764 234305223 107672003 871883503 744560897 800026995 626192140 933922308 849711538 886491408 848506276 932207571 176312561 338415529 86596786 181866366 7199737 934020418 419374293 859581575 41160740 969346354 389699748 624314036 243395949 249409476 118205320 436117338 167706092 324243118 213987320 397104000 373759581 379060220 264589142 641816690 6132049 531223243 126284254 979304794 714227691 864146281 143655064 502192879 346261738 387433329 138759066 724151474 170144076 293847076 266436061 983028053 417817211 695835443 649154973 701516971 120544383 989665581 442809807 972898715 693301559 928284132 236183157 893845381 603502102 837438822 614266215 730974237 666629024 706233764 140242155 561562361 155476308 270785437 100290376 429864254 345366985 508156526 77621092 621406779 155616202 214997757 110121975 897015831 313971515 621840405 148584557 175741644 10978250 286841527 253559803 254974109 90678379 479975990 322563990 693072907 382940881 686473544 350599483 965425264 432761351 968291896 288813431 370860034 259212520 951861860 96960081 445494844 241254887 449525415 58598116 846435798 688266384 724198953 567128600 803532464 159451207 293807109 46988520 386836701 234724555 576210060 58455257 128414987 67333417 496365181 290925279 629403833 47833775 673466085 638135669 921108735 542062846 867296746 584069133 636754233 312847734 736858044 35624077 52104305 26296591 531887032 523523147 700766854 333119287 979552180 394005573 840165721 797560703 900779118 652833455 876724231 259236662 728317111 38721792 595048703 193514958 745018289 389467975 937527049 687840560 827255179 596809259 868338640 716576426 743499663 330267345 850876721 779141367 790148721 121096771 828076225 620693072 913042800 51554544 980129605 766453551 780817544 10177856 67578295 3786143 353959468 285431441 716813006 277931741 994408102 115805753 680327895 372612111 475944219 367104631 518197509 396223345 985535728 165885804 970328386 462878232 767827985 704501751 901778998 93320817 874945866 597170095 602087249 563003032 773034047 625619927 945254217 709155200 804225689 675053002 760447749 252771821 936207235 655616602 946343727 143538443 161938525 154413891 475136304 49045508 830476218 75237343 459171193 271605576 866509486 364812090 384521839 321010751 702844498 187346501 298110923 190492025 750314808 97297604 614779294 102838403 675640207 83879431 409908887 191881677 467604916 403879914 553399242 443401618 770058851 550876940 975599990 252162892 299281521 7647689 809430501 530009274 756571963 441985760 578004780 197794705 659831536 233268855 932557312 187265824 384850292 36598938 511304778 373195544 962413505 656255287 990458135 539109202 640739783 525924439 634909372 42120437 170554908 37215782 924767722 420432301 523384228 259324618 809696662 210730450 843014002 797041431 970214887 507235912 522425328 269313567 970191048 356680024 659981963 319959782 952316337 490068661 782476784 570656768 953630874 869821529 880374893 875890329 978418276 225134826 766963123 734281656 755918362 422484127 659828343 605515194 671845982 640537909 821349595 605308638 954873333 14708933 961458559 122963858 557406198 37558222 997184766 486708661 506264784 27902989 502299563 245489077 365020264 65476344 402612411 27732213 639156090 635394318 976763008 743192202 786788851 148278806 807018630 731821298 740649014 646318361 692920789 518993556 856520224 44471835 756873324 6837746 668699393 576666220 709386550 597401553 607622534 515014056 746500958 517496987 656148780 419645699 742805484 195872168 616516652 194010253 478284106 381031751 856468652 329546520 562385464 213908562 844823526 423319895 785330466 242830321 792014729 761153345 771053138 668452086 788902546 664739706 790693640 646169416 958082969 556861129 861894694 389439286 644791955 574377326 674884947 68926504 115766315 114991232 766252555 446432174 736271807 189798797 675499019 413446248 774843395 103176820 877406642 127933954 131759003 92776374 829932953 208004807 448130208 70057104 524346490 73552457 116177727 42955532 693764315 538029169 670311547 597509886 902475199 796277913 911139725 17532953 521207507 7373146 566650996 298356735 925897396 892445925 893948668 141979704 688927939 566478939 878982439 770821241 783068621 496426930 618409229 367022112 729383642 696455709 899547612 34755476 833939621 148573234 414928648 368876279 976998831 575864468 922051449 674069993 914855048 381936604 448574624 427833074 910442198 508676952 773757317 270946731 329384350 66715557 366367483 207258605 926685039 537232803 898260381 209155390 852979753 3117142 33290297 20416412 859350238 445561190 445837288 350796882 446679990 419213944 769928368 288993869 391416419 370270045 948726241 916785830 962908026 16406852 82234514 52193280 699177233 574834486 884110782 251198577 644003176 12368626 780177334 351046596 652647063 516728206 882237490 882164606 983162305 970916934 994528480 78816264 930333591 315304154 753989993 333979401 833677362 714413173 804109839 431830557 751789177 20905585 60607278 16616962 240687130 10548591 867373145 671026477 845415748 498766340 801525586 171353877 708368288 150339385 602275531 297508544 305995356 293446883 660784458 564153061 990049643 472572451 974263935 738030957 995863564 324341523 971575945 542202046 567704190 523775144 834128835 9411018 675230594 380103694 737635270 284716234 581593852 298937141 639530802 450620908 528094918 149038974 957581830 654981408 888362504 81279979 749231041 571130627 630681374 411510256 540319237 46621774 661379892 637366693 765212029 151238590 159051954 332970 940172497 610668437 902561355 894748054 973377834 645776958 852025748 47061782 747449982 653487963 808755577 337428511 712631187 287745478 700578927 303145818 515173306 402182865 955111294 882940862 996431096 527747604 937680131 12774233 528723494 72542523 838290966 316723541 589250688 411573370 696832931 119441000 944877418 128293998 843877369 809615324 894546807 630643862 885699083 206416785 822771430 251547245 368388697 152668568 623499988 350330132 664719131 76602366 433136277 279706868 358990765 57777140 583537735 431975005 788719456 202227222 867684808 129295377 179918147 26708732 819473163 525680677 908922327 100604682 672649314 32676247 711394842 363121131 678849499 548104444 848132971 318447830 696483677 37782960 527651640 28357023 325803420 167075291 450682402 39318916 258219831 126071610 882085776 835827425 949205735 892777016 972513978 825224183 890555865 559862389 640781909 292718290 627275015 198925502 904050053 762099367 820908649 373341894 885403354 440134941 656244809 292449004 662040550 657804729 904368632 94286209 154293498 48601025 499654914 229411058 466622152 176015265 294114711 261326794 371846032 280687676 480988034 442043807 615233315 23336876 928341525 860960201 999692408 496360608 954016876 934228019 978546885 567971218 737642550 276732732 763936995 304448197 560115458 304370657 570662731 34113482 390417170 362243812 635015427 583298566 940080386 74957332 651168053 222713708 451340393 56336415 944117291 704921272 732978106 382860781 602635924 121674161 629247380 403631151 436441733 361611487 792278289 319300784 913207588 676261465 823665552 154936971 312035855 298590615 646568531 619236343 784935165 536046151 821778546 592301316 893302221 604362652 723971088 390602013 440241802 392467666 990137008 394894056 746575858 540617211 986211139 64855540 949006261 192297243 266937874 16358808 177544052 45507339 107032657 103833613 248102831 90160167 346396253 104237380 987402544 841531593 862214721 699115716 748350768 523660990 695182258 91025128 288375810 217614628 392849278 104348706 998682083 602192123 779491602 704537342 975788768 253523692 908697144 265442851 539187765 405939693 678337012 556092027 857504941 562183994 828983462 460134296 873151411 605933967 612519228 200812311 222611213 77309651 931032889 467764168 733560928 553565057 721802291 718176234 812054955 614984390 808788354 82147644 435732805 33220048 237869138 101358890 551514119 367687855 788032612 428440164 473796818 386883313 406922322 379545461 903019883 856533822 986989298 445860253 947501825 271424107 726054049 552540311 583428600 257232591 710739777 640743807 917271769 729848790 982482920 751415414 879042029 789695879 926609365 61223270 354636347 349237512 451839979 448762703 780111929 475939918 490259000 477770343 898073595 558539829 656754036 587226933 794983284 201287469 579483834 65391134 491691712 464044125 848166338 559370723 674253363 21166013 536814573 480447006 951757784 110102755 722659265 165637322 689623947 552564944 851402677 371951135 777323224 411159409 765484351 721935106 962859719 35219809 821605927 569394855 570127869 491987416 839962937 721451976 850533527 139069591 281962723 120645310 251019727 13635104 728317766 38884767 920504705 311167819 627564656 320426082 497607560 427325450 608270453 338840602 707534505 484032025 715098872 244497839 664880459 508353528 977980931 707216932 769872396 542586483 955349281 397590988 780405945 752171840 888596224 788451002 891481538 456715733 736236208 196834585 419329784 118112820 471246145 144058229 747615798 309002151 974035609 608205345 788326643 276140569 608245853 340729842 930179422 437069821 952329675 142597322 606323260 263647646 471348332 27726895 584382337 389985377 823584137 87737525 122376595 34860533 84863360 11983671 457655938 420284166 723146946 44590658 863599939 34874790 193968422 182771924 871447234 660377597 974133249 927546023 989222588 235154000 657222447 278391357 555033648 436225570 935944502 167794039 267479194 259175923 671107694 420470989 816034046 366116327 924448397 312280072 604492099 357313120 620097233 605498066 707722400 48193827 119819134 12478924 453798583 280713869 898626967 469180087 654090686 477375517 880820882 262482988 760586868 485488985 564537633 473761474 510911153 481638722 981022774 980900723 996467738 90771853 151191268 100161157 148288479 34121717 861195837 369013331 413102474 342932482 758924461 481491123 857195132 595875005 876350717 395703084 447623719 30067340 510016338 52685414 864828522 408757596 683083362 253198368 802029203 72951243 411364414 181876814 874589703 228742549 536639436 533919552 957303406 956946836 986682369 290391199 957219552 157549922 994514430 136063997 447860202 228208334 321573164 7003034 602436350 284044346 550556316 202543684 321180174 187330105 546231448 438176640 915006364 826679047 879700767 327950425 824265423 661898937 953187984 681948856 785667782 543600078 660164710 555851325 863256599 377003660 445904864 343584033 844181832 511060661 914814093 1087758 356185198 108891101 343813464 214355373 761262965 199005824 594997496 58462054 570636258 83699054 794443155 269993792 325308337 122246144 365031695 29770010 629551073 121932475 902835945 340010407 860358984 162826095 981793980 387862184 397443353 136078155 497806487 309387051 668464116 240904646 919148775 858429307 990692325 765101164 928035332 915592317 980578792 112326999 897351165 333186463 528214956 243350599 296077133 125069541 693201805 105999349 159513217 131922302 185123880 32828407 205635700 110793871 693015966 92837425 405475764 187918095 972917266 682585013 910261832 605199851 905911851 414097149 678182699 4763047 135556276 67175425 848202244 397580495 420050917 63512251 925242725 628879191 963045483 499739651 925398239 183364243 439228374 245931976 646796732 267109886 309585740 133311194 950987276 741773053 836833235 466431428 486301770 254784812 302075067 256519110 658111566 455710084 982339775 422588833 937299947 228801041 346705864 208438154 987157698 23544694 719072977 695973444 847438128 342286569 440392102 90350463 764959977 626995847 883658928 355398849 975342215 118975129 899454753 225018842 246760698 15143498 696919944 632032204 896883497 245022160 383203579 355721314 938431979 679828542 943756380 435917057 877490855 88157995 745003671 155792671 286724123 186352432 829106821 263408788 279526115 138460816 934894238 908282624 909391703 255757507 979045232 301947485 344759840 236934024 776113767 557757870 653639315 279350135 687014680 323346886 751263075 545317252 658985215 193102551 241722551 212713883 405927601 277306785 880281020 782241331 946990222 428293260 703150523 396112016 452403765 323955098 602073888 402872958 579889766 75814995 192915500 116936791 740061514 220924677 673946940 100887834 925629329 836721235 925126522 615321331 709861830 310541816 805061677 349486916 452492019 383920210 709249839 615655617 907775304 349234923 834369269 630729429 722978096 608266511 653397951 446706969 693901387 292662386 348255131 50627363 905967834 699114637 906708802 144036786 486534451 195910408 878838434 180699109 285622845 172793415 568602125 12031406 21138516 5217681 822314461 237177181 563066978 220180352 717378737 58221629 279727353 192395445 536014820 4428586 306394796 113856038 504742405 127090742 923907490 449561847 464331041 180213237 389033207 224154245 552068797 429482546 866905602 37341499 695537941 614840166 792357870 570455595 691324632 220505756 693963569 549421096 926202796 327552090 927605045 695075505 696407422 660616675 976303767 933433857 952924112 357299674 583279592 313305649 772106297 619416884 896105378 341091421 538834929 422583637 551148773 146732361 555151711 34265350 835573161 751028442 938201664 223123789 948929312 695818093 876189675 824889535 946354100 510722175 849303013 525186192 587965811 50782515 692932385 47373977 406619393 101359124 936493060 894490671 978578957 393372770 826685313 787464351 930677344 717886694 838832747 692004067 879068848 463482810 940318600 480296907 852148883 10375836 322409867 92662346 961898365 95242761 897250744 325134830 625454300 176819899 651082003 199397568 760834370 393315408 963142656 785550896 952240171 835296671 844772809 801054914 960722689 192763766 495209513 369101655 615439514 253657432 480869642 362595007 719126147 163813911 736839396 312001203 510724784 316710217 593862197 401236566 486478986 259781740 792011466 688473837 838062793 178418322 226523089 79249260 803024240 49565355 583131914 470892570 518400500 365134126 388382666 324001115 427931992 51371834 740795950 717124062 963255890 820782268 867251639 83029050 345036657 47579762 323801862 267812172 644115662 230212319 795619256 290752244 724265017 403155152 508938961 394935508 874717128 845232090 958497072 615090701 882812781 728982784 904985757 835552351 961735070 562447734 957242447 211664892 828709008 547379526 980666982 772305420 874782751 424698318 515160394 465072419 839205494 734000644 744642470 48594615 278777993 190381877 999597526 378865789 660796001 188081638 867636775 504756125 546444594 41825762 525474354 126464068 667440921 395388303 571279432 293592786 946079205 652437995 701257467 35176511 200276800 111228380 560671612 393668138 594429866 296139856 664366959 613739794 660254447 68815309 743856482 594094601 905889030 613015998 948749183 347831542 464537662 10028513 383306839 136333774 559355053 529484452 660894124 553537417 591551620 372289964 404071828 28129671 451131255 326002722 788255983 723862013 808723083 380364698 580002110 332160345 698940152 59236701 777498812 310470031 456384837 115023070 603606066 78711528 589425217 544006384 987366627 159612804 448759664 275235437 678367123 95221499 158300038 70000878 350502838 207104777 657605323 20756202 24073399 3693849 688222696 99860946 243278668 28853021 249665992 220347846 906483294 733408649 955148329 416255068 501912706 353021681 551287798 80051784 616837471 144850425 179970555 128933508 815023909 457148798 672817595 38573174 61745774 23577534 475055092 319100070 879694662 823460085 971440879 312937350 722192647 433806750 749292637 728316401 785339444 692161233 795122027 387587044 472080247 71084644 211756731 3413614 533240732 58117800 958817075 259617895 298989635 283448873 620230174 604543383 819010956 277103855 880945958 181229521 519979777 308429544 440577911 102357066 421477258 258729351 788650300 531895195 535443268 85731721 143772975 95152982 112137885 4093882 835060034 357746235 464281086 306390618 619482880 504358332 867342036 329420057 903736221 443198541 924808120 91524616 339035339 324556009 788260423 66592655 406664301 1827582 844751551 685524270 889681541 684431826 810978180 568853627 618694251 28104921 549723607 390064701 847648383 294434532 535757967 190658252 514929135 358099762 981369586 667155752 872580569 792820819 843073693 717204889 973128822 833473138 861211734 108610259 380411541 227174874 295930790 9686812 161266818 26945817 305369882 18162287 503425052 181116473 767311489 619760903 879929082 514537616 553195960 239849727 986689505 238902583 639536001 83558079 775204080 495311703 574947816 155150078 873525104 120092356 311919155 285351001 946117145 339138924 597883567 348376059 634405425 197215926 999320473 881552378 947480384 691634787 844703685 121722101 306745459 234816329 663340427 40683383 404263028 327304897 792226097 607609623 632032325 400636370 453829875 383940986 654329421 117867661 222587119 150541318 789496749 652830571 656051428 252763665 500845539 137132362 890453390 135307549 950989415 129398490 236241015 134349705 539833872 278814937 875284764 606791746 622096624 278240351 361525896 254477938 748035165 260518733 689722215 140619587 146937042 34652521 488663174 267510742 879389274 113765718 334818313 1536855 441403154 185169950 261876857 34761170 394358168 296226363 579812946 517928419 923703523 367961690 958509960 366479747 810816199 282394140 757754311 49382313 365183317 250660736 253157982 207224671 907751135 128713634 217785508 38760502 904407314 68705167 113478741 2302429 276833545 19473420 546964213 70048697 880341802 251782955 802924663 558710432 688201729 262637573 870584507 262417091 404288454 374011470 957543387 477816845 996367459 692428371 729818400 481725644 729218903 664468255 779428781 149704818 972063567 224720712 986417484 508300315 989620418 547533047 652546237 582783805 984734389 860428977 863183743 597432597 770173646 236541967 535542484 284437963 940997681 22019185 677592270 53330326 862686834 518831971 589023107 458695775 821823535 816244385 929283998 195035038 369267430 95668409 161617730 42992727 916012694 520156635 663562232 453746990 954947011 198063771 313460417 271088641 945057566 894292750 902732789 839856370 891881876 243750142 943506608 831829376 863946186 141251469 279157009 186020747 774940253 105023993 650883823 480020932 510406987 205803270 683923691 345146413 462627938 403612896 906886782 891450827 922648501 913827839 924760915 145401041 866915639 178095040 659932736 431114650 931391810 912997996 914728181 388077986 724599347 278688787 979103684 98228510 423170411 8966418 485756990 215151557 688809685 198318616 579917727 125574221 236457163 46691199 691831593 52286635 484991003 249075079 740029098 694592296 955991894 286805459 851593365 561653824 650110688 209313823 723774432 701816787 874703318 529685563 628416336 593053061 743992036 255246107 473443498 55404837 378789286 283016922 993315733 850283412 885058825 463843550 599482866 128377139 300415256 54987274 587257934 175217325 947658691 67778522 145949875 84812631 314872118 58911391 720272784 465326083 490498729 383536153 829901023 103561190 362024090 162074873 712309043 62526164 440238120 242292597 713782479 575200396 774751776 51508405 284620009 101431808 202768307 118630521 839143103 682155283 829108349 338016670 444176014 104840941 847563573 65712125 906330416 667869482 986992550 943358211 974862742 423936173 439744062 287638257 413815966 260212159 721251798 74453033 700741284 174059048 425074103 91911402 408035673 345514580 882942814 790919221 895272317 767734244 991001062 351803187 402952772 89787945 154006298 56493569 186367657 62771402 124846150 51838546 71489467 67073523 250788292 212785851 644385906 256772646 842733169 370739263 753610897 298050965 762163807 365399644 994554012 583940104 834808523 649889352 840426817 13149066 689050952 302109373 849290092 713818696 999156927 683605310 781083920 236512923 778850829 330180200 798059776 790424482 967567953 947201955 962973344 508904131 874812881 319777820 465884278 79857862 237738721 82150476 965404109 72433472 852639854 436000931 485682766 81687929 888033952 88775463 493887170 223326130 845184218 582816784 615376248 22043198 295796593 117902704 503380052 119971872 594323203 395512286 420535270 48618556 307700243 89482727 839497208 406162478 756865830 29754907 750935957 487651020 711372791 98789611 487462881 230179475 781202689 435866548 491361651 250272887 559428122 88655101 318335735 292264268 931446820 417089503 816700612 763085630 877468002 367322566 388972471 300338043 757228925 172869990 657359836 490464739 979862675 399178069 983164769 221735135 634192844 39353521 853257577 403888148 582784262 82370082 719128281 453767091 490219224 237225038 861002961 204705032 410276475 57035941 894331026 537657470 958347998 152315654 279359240 156081805 551866135 132560178 551670408 84193814 155017318 114491011 344449866 182982396 836457731 715403427 813152678 360202301 922135684 361607634 668544301 60482079 318848800 100160099 694501910 103938634 631264611 5271462 528934401 58675314 960141073 135765889 521773780 358184527 941073952 642524067 751748107 496740014 508311117 67939920 545951625 307419607 947962254 900901418 910079208 315293501 800533303 426116902 806065728 576749539 650685763 150633788 569566319 253794490 574049180 223616780 595993144 325132435 737525677 634758708 993282425 429780886 928793768 176597096 394356059 247503790 653191665 546576261 858764387 90795319 808287323 130583743 214181099 154910783 443328352 7353894 106374867 98069998 720189546 276476128 891501218 48585065 967523295 745842179 766195848 274713514 283555327 53979865 954314425 221447434 440391249 170992965 644259416 289821878 527816046 343152155 536908878 330961292 502322581 234826924 509167728 266513567 759876172 477904645 932650364 118316979 380480358 59764059 468610280 87459878 932843116 643404614 864546730 780311303 853523053 528684062 903614337 733413198 901400418 579735147 860570754 752506352 942277218 862118503 896921354 437812751 669812765 229520371 899788470 380483959 492203222 250511846 383377019 343020912 647831796 55411723 660587807 557869357 685827649 360278480 366237759 230194520 897846149 132573460 484167320 283870111 470518714 430019634 979157137 301143676 790341344 301458258 560505550 423613080 545581791 344980732 593127889 16530572 378533758 325159148 661434041 525027287 968152312 520727630 733596183 612992324 883670440 309827410 754316544 573677009 687274604 258626301 949660382 43509916 615283159 450093094 745355894 380339222 727849077 480136875 716600733 488463925 967907651 769532663 912588160 557804431 602156766 523393068 600282158 200288337 379832840 208451127 612844328 535047205 841651068 22690323 397319683 330076849 335899390 145149209 277763055 146670828 988244983 708392755 769262850 595773046 609791629 196058913 268398735 76684553 439409707 61351910 994932234 370251984 606879612 215879220 438958558 291854364 709178424 424327844 841481608 773109195 955464874 384392378 981586496 925355395 935070568 594160745 683143706 193627838 691896852 415942608 709038479 448689452 667505760 174726796 382354482 287208625 543707876 491115029 784091762 218538868 723160145 252658468 851937039 621006514 873873242 851951548 912528627 616821887 852480766 795677847 958360063 658990347 977214943 852057154 990917126 523016435 883693109 336011312 681486028 158364712 957397994 194355892 916565839 912027691 917792337 521611535 912514815 455746327 840016457 91234758 845460298 576254531 930875048 155132182 847170206 570392589 734703400 161396164 821871080 30215226 923494671 397950455 995338966 126147451 141024413 13980363 201526355 100378808 376808320 1770398 177444618 172990830 184919793 54316686 390410033 382684843 801048927 342156470 606974962 184354396 764891207 510065304 928920098 377398044 742991969 47659621 620028026 127371666 593072253 220771834 915930054 91576708 148525881 32078339 325850992 255168615 848035520 278824865 562148898 495142038 626250280 526322736 796201429 137572004 922835382 906016132 976838640 190619830 557395844 208195555 505253791 458731819 808928601 373932842 476970098 195528988 340551925 298013695 978667159 718290243 990282884 290406470 998781221 548539233 683092532 501265091 779719963 543231803 685936963 673590960 948863778 497241613 549885161 357442616 870280637 421109740 642415593 455792852 486346317 39099288 867908975 705157456 973413249 295979552 540109389 359789333 572979332 539259500 819858552 757937844 853806432 786209940 994802980 771111393 968495276 533501541 839691887 735095561 893858060 313026997 623579099 272651356 304007610 252411144 655670384 32797227 938691666 475818691 675397775 97611236 711840909 139642799 496693495 405954585 408604250 370945329 951140046 469603425 596492104 569276290 829503542 441115017 571938479 485819730 732567299 169882600 288084736 100501794 890381018 137561533 268201573 2155117 402604094 113734383 848352047 384055377 854140928 455716111 541219138 211605662 283395024 229204756 528245536 362728069 670967589 182567811 595141514 273743903 462900731 193423979 569207213 418882050 495728707 15575501 304040981 8806681 391496907 19803817 110779265 81712922 157343049 68575902 634299487 194756390 658698553 542438091 958814369 837760022 853753811 356563194 422736340 300521513 361388380 327778364 596904704 187100228 526455845 228474909 519077277 120867040 581931653 209894770 540748946 502316328 757472159 486303787 900676642 645718952 782580538 574413524 912258549 743981758 922210973 625552009 817168706 535261078 770849773 319606620 672666726 364208458 642112481 127442362 334410208 263438408 596515876 535107174 860284789 547526075 911930842 372156762 523001515 353052513 868882651 255694961 858852007 543709108 960992558 715470627 934034334 427526430 775367348 100936322 940773515 842587216 871143632 660082462 860997028 385378494 529790211 493346021 974307954 562936515 815826618 606779269 885440665 557550388 668130745 588735833 696347288 387817869 803330268 505164464 917521596 141788829 385239610 187498452 565144893 160589273 700348458 367702902 430796272 76546840 511306048 447332077 662120702 303531863 774522009 196584428 813871144 114210061 141420394 76565273 181883925 134417079 685299576 69778024 383346647 188670989 936112399 631584978 840129987 48404801 900580981 221102129 837956351 369835684 668507112 309706455 514295502 407454913 773981786 344190392 534399739 151967949 210325397 166582489 309312491 87446176 405328210 57957532 357462046 190113126 224383492 161234022 424643610 184926845 867685360 415636875 743491332 226155987 946496932 135729326 435059342 43458800 317876597 67282569 427002827 384972742 817328685 619731268 921165163 102351913 175140259 142481824 632755620 337316897 880366124 506496523 662469136 95204205 904463091 262867102 487710645 471554618 765649588 748755671 951522966 620247004 822561417 496029076 928885962 651039546 796657584 204296613 906248109 180472322 350683348 184696742 627265316 623532589 973298658 616371609 749647449 202699698 501212203 30840853 684441438 150562757 427688263 403338505 616619253 463682520 846953701 422391290 800592969 659231488 839328079 485704283 751277706 295078690 774214239 424058509 900242617 239340308 967040267 580548252 829940403 75152001 896528104 463412371 518968507 356379308 803818922 133721626 194590256 131830961 146148978 112686592 626724286 577591481 820036741 75189207 482255793 61278583 902182120 682374710 713034301 456858106 859605919 337715275 372766065 87315095 155101787 149623186 753031436 537145348 581352574 506801178 839445797 513122356 968830514 621156273 706007544 43832152 390266484 204330968 251860752 153196713 904090114 778934685 971195668 152376983 581308200 200218260 535026795 96061318 675030710 125822787 866525712 524037909 742996297 59947157 258006639 117355105 780459092 585600515 625238934 157746150 864940365 333927660 353823763 122271833 302145219 75003744 832686104 679211541 985527956 925652225 988810190 665196388 983800201 755651252 811851078 740151913 781298222 93817819 924439584 717099870 975926891 953981495 956125648 916390898 954617849 776968821 930877496 95934872 109040120 77425208 326146543 171252526 687137177 576616369 592597841 284124309 964070150 163926551 871540742 770834415 826449317 818874924 922140664 203248626 962383869 737376432 805310050 159758413 808462722 486622400 815818860 379597011 912696570 38531336 929859531 74499408 410128354 338691188 555173085 287853141 600348652 218760066 774628757 638372800 767165026 726717204 778394366 550960223 847217086 534047638 620021902 443907436 614861496 322405379 378870207 9371151 952927692 720266537 772999216 98756005 511520134 184618314 638546957 326396472 573642022 461893024 879978237 318112518 421491681 53981687 535752646 26655448 606452120 89051790 406224317 27861158 129154985 10571611 873785450 150366624 319882651 199606397 845449830 688022202 691447307 79080116 302095872 165310077 440635217 268915090 485514948 237209530 291816310 42916201 250601303 231909696 615715467 430517783 657205037 553076909 733309694 527395349 762063462 484029488 790902453 76930256 664616447 610923297 640655404 378057751 673880890 388006744 705092263 378702820 498257253 272203908 668659171 76850998 813456708 782853932 885128901 819705142 834016804 486360950 709852907 263180564 783988658 38320127 374925441 141835277 284283937 138989377 508339284 240043490 840798667 454998818 749747516 335579465 784643048 674240080 855585517 314167309 745118621 430899659 433137415 298912724 388873423 186218053 279281566 203314877 905033612 193516674 694422476 83146248 515900187 294744833 878050213 717126039 979080325 884494039 995243274 248638291 383306161 187335197 222900494 201678754 424066973 119622198 253802318 152307381 229963827 83654291 790218889 661102564 850973671 798973733 879005252 210154443 268617879 188086505 475866990 327362005 962888241 793598603 939160449 518450035 881719257 340206517 418245185 60618153 104175724 93425978 794787633 286347675 431451588 45190039 153442591 7354119 210219441 25332906 594050387 19131876 907585632 641613387 941659986 638857405 819727595 258038768 752483552 528843198 666560358 222571826 856868302 717716399 851134564 368385645 565999573 319216473 402423061 292185230 472543899 72857305 272518287 51898440 279020738 4807486 635300099 428151222 460904461 366801580 552505956 527116047 799608621 318058499 665119980 520900469 814167425 37017566 908474702 668409638 719639712 39089154 550661194 50929128 410096148 74563164 710279691 164408153 946801413 114359195 559472376 189212907 383259749 188684829 592682726 230206236 557083633 525960206 986189484 507738173 695022828 600210282 855656542 815580728 861756251 144937896 620432739 207594488 829073637 790355072 963316980 625247744 936276616 641336576 687313271 207653733 768363993 555518882 917783976 869154977 876712673 456350848 718689879 232824878 471731483 71173903 505787508 372649701 602536641 84032831 910210232 447575449 462473695 51055393 282639626 238547405 607307068 216748963 913630963 464819269 586804009 274543669 690111553 519377604 556322033 501055850 665717692 583295795 615088817 163988401 725960770 569950820 632868987 25745794 860619036 254445057 510053897 403473726 605296714 596659701 659299063 427866416 561027935 153672035 642213791 590201619 834713658 783870421 915235363 37822354 987848012 504642399 748752383 151350116 676526352 473587560 577787717 208030073 826117590 814402203 964276597 826512616 889363374 579042234 961053454 820330883 824387945 42905624 941835904 852284333 968961183 162202019 556077060 175733712 318169902 252293161 519241408 259817243 947838259 890102616 986816635 338819873 735548364 641452921 887039807 254257595 937296493 411142717 744126980 730069294 982480970 148259708 454027406 128220569 284400672 101092811 874677522 842709804 979882478 48134143 918606575 16375123 537839351 121601267 266890096 195622373 644275722 263949158 800409281 181010721 323887517 129202317 704526493 209263958 811092293 714248559 826062701 418438132 720886667 335745062 667490507 544160366 929559218 157970404 911550415 415905241 962064603 722599480 821147244 331512648 699954054 409089638 704767943 376130130 596013211 385653755 940093969 158198926 739947560 530173806 934653980 89629022 847618357 201848316 845077626 649824761 682446192 30768969 761194198 418160821 678210788 112120249 731861056 240796379 494149725 442345344 590230946 281506468 669408313 663733548 897286347 794498521 833951662 52285361 730637204 50145266 736996440 53077400 568963496 125539882 954975105 316052570 373789583 170001128 842086065 780141022 981871186 328013196 345001985 336907298 957909945 159674957 503925271 59184608 249391633 98673133 575861504 183921550 777888062 695779749 766528778 191753592 490082462 104415145 653262366 135146107 461157189 264811121 635163307 549085199 552265716 39334215 670898130 464413492 690487911 613606805 997297865 948299200 949089394 371570723 869856835 168521810 303479825 50906532 862524379 182138835 216769340 128495076 308806046 224286995 616593465 126697518 207558601 24789464 523441515 46328998 506482874 481259399 668109411 3597041 702730691 138545402 562689385 59063284 827681045 790143414 899926706 295747966 302249646 276391311 841568750 534825960 851754007 443345467 647231101 420400365 567433405 243402717 729767976 250092278 315272635 257281707 626213568 449389930 797231718 453004222 601087224 337165472 817750883 468532786 649584478 215984620 532405755 495814617 546387194 239551400 953110325 7275753 452600177 287608888 954262877 696857187 958128741 771815194 777365649 474463902 692222932 601550077 818740006 301745492 988892538 87320207 894390347 649857660 870999557 637784072 701011407 206949110 231946416 103345935 190472350 8550717 153160339 56868307 112499621 78115562 174971490 124971126 653415567 272767723 462064125 280153225 360269037 257916343 769477021 317400641 793560622 92992467 138467829 44136736 998000223 446366603 994802467 663429939 941073622 821619994 990744371 560799850 831318462 163139981 284713978 49451034 935909501 625269289 909593944 746062170 864487211 400927330 426056099 201844673 830931656 712172272 921943811 342346113 472453916 201446768 633608327 8158239 894486876 9718397 416378894 28556153 241791936 1386779 484305645 473589783 932340057 818871199 829863467 800489959 894029416 374237087 681398051 136903905 954655176 473050613 564977691 544291398 680879627 327008160 380692895 205354949 437786735 41703466 743165402 254470523 682170722 329660710 725334948 696382138 982297003 212801772 267603475 171439053 413702854 214744579 344034191 178016629 466143900 274201412 715776240 334475923 974395804 797237661 898828216 301357425 426117477 267444183 851279657 296941348 839650911 136365034 988009806 902782448 927000038 432400192 982969634 513516864 996037048 401820081 833764358 798776219 822931331 18665928 502973348 442259485 678284999 494186577 655151498 98616266 779120552 567712684 709248196 629380150 932876838 614835310 639716297 90196595 641039751 494254338 659079503 72415364 477214268 35406362 468365415 177583822 246932995 74874114 867410749 195995000 598264014 359437689 616734470 150546534 596358709 398612847 997337239 639321150 855328112 135985789 530726889 282385256 516957066 188107788 865401502 793389549 841469823 633792173 732628805 525196737 566856696 366769534 585565943 425164110 471597678 436103345 766265810 669999368 948488483 796357474 844762956 107078079 889651883 875529380 887006857 199000227 855023438 473230463 473476317 457342452 863187488 401075416 722281486 9653926 753422432 383472608 480933523 114013551 378184130 200539216 538162577 201718194 926078748 894050809 975636938 418783386 658205104 329420562 832317071 721591806 953556404 426903015 868037373 508307566 784976423 745454065 839481913 277836593 773604297 92346566 767221308 488260432 719089182 281080166 735288464 43051543 911369912 207425354 707858395 190262606 775909803 755451357 827895938 192954282 483662423 158035772 946576582 865694309 907717636 524020560 637615409 433614819 878913055 74897610 115485712 93672765 466968373 180580412 220871618 174338111 330695472 323006589 905842659 608183870 629859701 405149444 919655595 712918840 965596914 893274155 922621318 532760850 755688633 525062431 894541152 132367484 934249780 234868165 987472818 355693517 714804727 328473630 774318174 206059221 337529328 305730621 336707488 32170957 189958818 21197377 322444857 213924182 883127981 124559543 804565937 746538667 790037310 64523821 634007243 440446130 630618924 29930176 916543134 788444955 902643072 237115803 274260415 159446999 622504493 541724862 658169833 31819301 292566359 205717087 596256012 27228341 62691524 53055224 67182390 39697842 353066024 91222833 207563295 205358670 732914619 106328959 931066551 842537858 939544072 810478469 925704190 40805632 476056330 18127176 296358628 56574312 536773573 309421322 589148861 452635517 454970021 19717632 911238374 381712523 715972137 305984176 398272837 188583415 901509966 607183968 919576195 4477582 183967148 153721820 165663631 98982266 196166601 116013322 831394830 752143323 818582538 114501686 898602051 74526073 604284896 345779063 660372672 70048469 958604534 64281626 163824125 160078554 971773612 800280512 860989418 84324568 770987087 226947508 267181161 191395531 586496768 432006477 797499463 607506557 864780782 54027854 571144001 253190155 787648325 649798507 689971737 522145225 915717752 733798159 813980458 171256870 761386681 593666473 934273618 822097187 975547879 354722733 364563348 146085088 489151418 148998085 469664665 112466974 302706315 217407177 607162546 296093396 927804188 508083556 539838373 36082145 726618785 134137082 412195630 48378859 550929196 157614246 370691147 260355698 528363820 194957229 409620789 245682112 945957598 336851935 462519016 352069234 461900125 460834593 526371409 283915781 759611642 237068054 700008575 258023728 749722767 41209102 152559379 63624969 509744045 269891273 564409934 417638862 535321903 309330335 353120369 112148067 208999003 47964204 536465702 297705957 494360156 237289689 899552781 179444144 416622447 214510137 788461535 212575227 341603725 49668819 412237490 118253168 650789325 212437552 268825945 76126672 656226579 310780798 966587325 535254915 949528400 120922328 703459160 282139491 862295129 665350062 892409409 68472941 617249645 571433326 756190781 143088522 520623479 304597953 694594115 353522990 918951606 433602385 438527608 383551633 857593686 676099985 901392411 35325454 640436448 387726876 718639712 24305290 251416938 5055286 480109786 80027912 716483593 309101294 640447716 356867729 753914006 513422166 823435055 744028011 994349346 434349211 747739875 117936594 832993439 532784401 740953686 109411979 693048599 515992174 580345166 385598681 558119316 116529022 892756212 750404088 858735422 572423693 703738516 562820516 700909072 377182489 899107530 597083745 756254768 164221365 933947324 702244147 773493077 670887059 805305926 605561750 710297158 552426424 809590989 744227946 936731173 550664964 944589374 168011129 467018091 372976188 965781159 882957576 943876431 3596294 59875855 18837101 731974813 535392262 603627432 446894782 852340899 284351686 397174716 355111848 478878070 404426941 474032068 105266097 170355501 116778212 581895380 170080567 425885558 98831352 491766474 6636765 137966220 69324634 373787855 58008449 59761185 12319063 725781886 491397307 611082968 135023783 175101188 48238995 305438898 203114018 984404393 606943640 764397996 155188721 446794825 268901843 542282460 136237761 941483484 173535562 625854488 290856847 878895666 401534749 565533016 445135539 992248687 338718704 508595088 218983891 344350071 323165936 624760743 431294909 845807388 810970123 995709516 284619693 406386962 335198720 952595226 415374224 553006125 347723670 878080615 12482527 701370623 452060511 878884752 780015744 998731892 959736285 985180382 40271848 871509933 327370273 435850012 329033351 861881417 792931680 885911789 297640118 298172640 9676755 925168822 576663844 867095136 379644142 495340858 183444776 944007637 275141841 476136211 31459907 34771249 23564761 336497657 127595523 954411325 530079176 623955247 573183572 662731414 508727257 609865922 466213110 640657753 454359202 672703804 232922161 467706450 439389170 485715671 187815542 525868557 159152453 810117227 667037794 915367072 447073950 907864394 25118444 541731078 373166925 588990911 198613478 877163933 147388782 223051199 193381363 648542783 574308048 980985380 408627108 790406186 199271200 213778543 39845385 78457963 25209343 773732452 364679451 492351971 195899822 364199044 250386561 281970272 188571779 567845032 365972457 378105187 358295878 370981485 240135356 916200487 756516892 974035849 254312963 937617465 678636802 763393510 103916619 228167055 127620603 555507070 117809448 708253181 474315097 785755821 547002734 640983820 456692579 729069686 334874164 797200651 734006869 875746701 778977522 868593123 137315372 373222462 330687129 832698132 112875429 430072364 327913992 925471634 901783138 988194195 167633960 735417194 208651573 789614933 59175712 509114659 179293908 366279724 220154580 571622354 297870044 315385863 169889818 361052351 61037419 509961725 60133114 597733966 99487862 828552570 356666633 780198458 343650240 701981990 203188658 780849505 776748346 849491093 692083713 702539124 543927100 826068691 533567581 796782640 340648948 488834714 398939588 950809477 861091143 936077035 272770948 286865962 161262778 782762977 169218108 489929331 173074452 327466868 96001532 689744379 549693604 564375673 237714962 246561654 184734722 958614411 700567341 756241973 729785213 762773723 366506703 438983852 210647508 218485115 79761332 968840189 480353864 914203694 615997340 924377735 269814265 440700152 355976174 903792169 641753112 794013246 710675970 948968540 116399183 673149543 102008890 686093768 577750983 830236881 489459326 683730413 223696987 564289234 492036595 888191052 28275161 703528244 216353922 496495864 132106134 304965642 181133032 425169832 406417725 844011744 323550947 352662790 176978254 444421135 63808819 148866630 146840697 323180320 319551841 832771552 12266026 848034800 596970335 598536299 223709179 299355218 18363992 834204967 647560321 718136026 574760977 707481937 330999822 352589359 3567600 285019347 156029193 265429495 68697905 730786863 215548833 234164457 192484254 243438364 146721805 840101820 516147688 541263538 531027212 903736641 601480900 922785040 848874437 878972952 223104374 764129102 687850886 907825998 676892400 865975777 81277986 880016560 766639350 853223712 389607642 723577184 137625396 237746244 128201013 634903874 392025581 599037112 510286145 535178703 431036124 887087846 838387570 896377967 573517208 983307986 584938384 845674140 790654282 900478848 406816183 753919282 391257830 631787662 168682577 429725153 279135793 305251198 202410834 935313846 53504439 299100595 4283625 506397979 167559545 431079369 390363855 500966745 306302452 879722161 703239389 930698143 625760643 937496870 274246635 798035485 349503263 763223346 642146222 662018710 25581178 258159447 18312040 37418165 30549694 972628202 304215313 461504198 232146126 251511910 108518989 629649855 510921113 520263213 368265118 412910173 365767907 637169099 154755718 691599935 35938427 283474568 61527096 516924502 315727297 905793696 715049244 733745172 500360607 918505659 179214104 720080292 240569340 628751763 185814442 194823326 37051214 400353929 7103912 660149734 532716138 709998070 524421030 951205487 128691520 962332886 416310162 753571341 535480617 811729142 316494261 656990509 98857034 987389219 541389360 851643189 294043221 454104192 39025289 649581020 165798895 856224485 777555679 831635108 586212511 996347631 230833595 252604494 70923663 231370744 8662053 281260972 34301674 940221576 431526781 589021773 162781728 614554237 339223121 969261502 74827207 423772239 354643223 440909278 231850816 855731372 723925546 768619150 363298738 773904448 409665018 638573897 183686705 876028231 813069115 823263726 80971154 498438056 38757833 316413643 40291393 57467372 31826181 846454988 62119003 200473719 93572562 306319418 108454612 526324345 180462460 952014417 334465089 539255877 284141908 834312445 414898496 654111431 112829527 447742862 172626107 718216486 404751262 586900712 244936776 751149967 720504749 855505823 312614932 419590562 373987120 713377507 84339314 690391497 223424865 678979944 598514609 874904431 459589151 767789525 405466870 444120399 294040447 913701067 731122039 833966648 349023255 581633034 314669008 345302325 339448503 993853201 114755595 118111294 101990193 254259279 13484816 958568530 443401375 896408641 272064606 433935122 355015120 952171131 24958258 787971032 297553035 319972273 205407338 673503204 324659063 702459210 250208126 451189356 186564151 626128951 515741418 804051930 434236142 834325660 7385536 304951211 23843315 382289821 30754196 396019810 257805401 266284808 214973182 649135419 497073777 890533278 95102747 409881390 29463247 839328164 431196538 783790916 511699854 765369511 723317324 957434875 653291347 752856891 582025903 848136902 48113243 836783244 758394138 818080356 10987673 843367914 530440115 896419615 491423533 928994178 866197136 889948824 417303936 690012920 338146311 578435808 542103604 800914232 111669280 654114476 209154685 922956467 517041016 629355535 366425188 463660806 417756098 919166409 771466907 878066279 123462089 796523169 74997656 77997477 22846957 898649736 200727434 993785501 742294858 959673790 361907024 804619230 611712092 910579938 265255570 942728246 62634077 673056549 515812821 799670558 263443108 401299618 300724804 637070774 521094164 610484746 395977951 872638820 842805349 990885112 179715981 368681576 358921805 746901839 397186667 778823296 222706901 842496671 461948598 603882230 30776211 820401849 768796330 820529307 721754737 945303516 695946377 972463652 709324039 732135036 616556405 829860781 521852251 569148218 122530772 966232292 904583026 958646255 70003479 254555314 106159896 888955272 571843931 910590796 829702478 885428837 360232386 760948327 79178299 627052358 520878128 708280522 209842178 464608861 35685948 471034637 405101024 841880123 211188143 829814047 765611800 989781048 402124543 577583625 312795982 921215352 690804436 938005300 547883205 971915417 273039651 772991420 1187312 774123368 350616620 499653516 85932505 874150081 80588658 546877577 124730460 252902869 85789536 172267137 134548237 213371163 56237064 259199064 116110927 941497496 735787639 974064412 760032115 958825118 750877076 826378302 253593623 751622883 517315129 679686311 252930278 615272578 106372419 209890940 135005800 820908101 70437328 314049468 116623958 235620233 74735313 248369471 168293618 528853360 376942228 382270996 186500271 781061057 258561409 988462954 889529628 962072425 835396539 980664007 297963808 901825530 38891814 355655836 145157809 872504792 26546522 586982284 544163485 606595013 135757750 707946167 176462571 966788962 570455345 731586127 660712979 709616308 495963949 902182145 76287169 928473661 345445379 997615908 996123095 996890242 983224905 989379638 470716446 922854245 418522197 430566222 162633063 776407070 603190894 944628340 682649520 801393741 701682806 995514655 232620573 756036338 526874266 794667530 540565481 699527423 213712104 484360249 30980965 371685912 66485610 191057088 66378818 950891004 596717241 998694356 273810590 385184796 373573116 917203513 812714301 834415795 384860247 637455354 467558430 841952166 160510590 941765983 701098659 797067679 130510636 788245526 279393814 305048234 236909377 545333792 353173185 425340776 2516742 864569199 628509903 948172296 476234692 557053952 499973518 564245957 236803915 313889520 135589807 272093526 85503164 513069627 108652502 494462277 255554267 971297607 749234756 906546778 811787287 949757990 792360472 937791405 835024245 922230169 430710333 888103056 758146017 885541357 524839913 697815222 386932896 437442513 286073926 445609138 361069862 879699383 172652997 528727034 508111348 654723695 197160503 731706464 683766942 982016000 491172721 810167919 33437490 299315040 4460706 922216717 762618275 811654661 629985423 698522953 31600822 303793292 80441547 606281526 121638054 847380487 663637816 849239959 562206299 610291375 297409809 648130243 446369865 957219995 676931276 803119022 224922749 894298273 71222825 261418414 100504296 159467864 66238691 559293343 351214811 973267355 130334054 493804014 170722388 789281070 99699263 780168297 379252625 510662333 292969041 528095532 488510956 838897289 282170974 607120001 55232970 644138798 70578070 987170118 777678289 936322969 857400050 875303158 66725961 603834067 412374005 974598390 47815185 840112631 324002284 692196097 495293762 576047676 518819167 863943665 299606043 484441873 432122380 915114231 388629589 962269859 209409871 462862172 167296863 955953743 842943362 964806145 295977777 510891751 48703201 852327345 596414444 661482018 418158226 835066003 539941583 689610873 563608028 624250558 553999024 875574112 63826111 383518695 74545964 355424775 205689487 348137464 268308495 643780198 155563409 595247032 324253604 491192126 233054468 613903671 112567096 301310491 204489007 934787069 157579762 429063193 335150370 800710587 760443261 778877429 450507127 459406129 387057629 809424139 290048144 492351082 189095417 429241077 118442484 344783531 5696259 760439918 433637706 508346874 370730543 960221633 811519570 853671557 93742370 915642778 891617132 894460077 823543615 835803954 584491679 645037470 127068259 977814300 267571038 795928294 184400076 920676425 251212376 405494058 23267850 86004131 70739886 586640977 360843900 982720607 313791313 707991142 51880643 561419306 78443081 397364781 18020247 357331950 100335777 990038741 138104398 841265890 722931935 955050994 721193522 964164966 626947419 853581249 706508852 995383441 830460406 964175767 2254748 189596164 116603072 635560124 485402372 538902375 441221900 590214053 318361438 946404003 447272055 815847680 696497106 837125177 826530297 972761909 398681919 834407543 438120102 462670722 332932457 954770026 454887542 626741093 415880673 877391252 406207734 857537211 201707393 415521937 129358527 330618803 121426831 189674198 145558185 929677208 724026505 822921673 455277093 994329887 610419722 731153625 442692053 627635045 278012616 814837046 67723553 689473960 46705161 150047754 130905830 688450296 160527785 234899943 161092870 995988791 655063632 703842820 432446152 722539850 698952789 808922804 115801619 715975079 289088548 654175497 425876937 593085318 31722259 648926824 380936637 867008190 563497617 895310010 885708048 943135116 387090675 772915879 287111718 592049792 520752144 582860872 29388411 226588281 225772844 349839916 209636181 738901105 113031648 910307990 904859403 995070912 974878613 994590992 556635028 937945412 509088008 904212602 689025589 983733622 647535111 911061069 95488688 839553483 297733789 537332259 492436520 573422865 294349512 335054978 180657593 363648965 320210163 706414569 662085571 950072060 120581644 682475542 595342478 867577000 55452465 117702721 38795540 781870613 33275392 316246252 191921382 758466794 313815258 855324429 267068577 809170990 627777082 845115598 108647798 889362084 728779557 793076039 86932489 602327258 539213908 947152586 878250872 936009200 825955780 926992211 793794111 952781948 705752097 971076808 730713836 917560157 449352445 449580284 306334769 564450993 445600614 893157664 196273752 912240230 460726004 617340989 582477337 753902343 534237591 622177653 111587797 348940917 320323209 513516338 172617632 971531456 930510221 975497055 461172692 887734322 417458578 791202640 564725289 632098999 578825804 979375029 246560460 423627717 41960380 685643384 92238497 608699585 401088473 721243068 669634570 922267296 789292654 989227075 532077965 971082712 627454536 900029828 498275767 972275324 363834575 656523761 150727013 620762644 441299802 911412170 112030955 118661595 96442856 484091334 455042399 597507694 242884062 485944939 25441698 489725500 139404574 754404814 597933014 758398885 506323685 912767662 458471112 628623446 11420775 532772521 461540662 672953053 459234338 876689308 847696773 927742999 653669382 663539337 436243493 775935011 75257537 453304118 52892176 407429914 234021783 546797904 54460620 876276327 524122764 882280421 293779373 781542285 146368391 329005657 53630368 181811499 56113613 251984112 192944394 492599214 393616440 594206382 166852396 342351465 174565252 568490118 435266831 659882309 313227618 679846552 646358539 658586805 209236762 228312098 49358425 458133436 291051835 599157693 324210586 479079846 72173261 660223877 316053238 519021863 72359688 495395714 366184972 849041682 551548316 598697403 313637814 467070777 57782174 841013647 439944992 657668693 640447491 685027239 491372232 573577392 523620018 630924875 244497419 436058883 418151783 562036494 158948235 507493425 233396073 414237980 277064119 288596424 92725600 634946660 612188338 827283410 449155046 759941119 74040834 539015477 480694063 487364405 313343879 789043763 197012529 903169616 598587737 687129634 51962133 702596516 114462754 189288534 151446918 869930975 270381633 377578301 270653080 490535519 339075077 658283223 459285397 876335868 355223240 587876265 416319990 628050214 425599183 903584159 356301042 537199873 436754759 611561794 600033014 793456226 299730490 601365618 265939627 675795736 445848343 833712130 254283428 333185212 214736392 543176881 131874736 770463647 352835122 516636272 56634935 681305333 399551849 500185155 293259531 335502474 93146395 540824213 231799498 256144459 161706005 404785672 222578737 453124361 244883665 274163561 34576221 37452746 12695629 782986113 10391599 276396215 45326336 543026081 193201271 370055164 295418207 626641084 507916400 954277819 924801177 979050106 881468252 972771451 919572239 971317683 201650204 730845176 292040438 431385656 388568803 842960125 81390080 683599838 442306962 895804074 393846700 564120100 37594126 388375846 78083779 601311886 391587984 397389209 238478457 865006867 206385296 669714342 294685287 918048331 769530578 839713009 34235042 160962776 17016133 421094047 157630845 484834558 73220304 970943750 556080755 792968402 33158079 78283124 41394147 484487794 83848360 857892652 796507242 923733555 241536529 463014656 235501668 610465160 128398449 389761571 49020355 661042017 495659756 801038235 450613201 552134796 276772824 326281947 21398287 520419080 283725490 966114313 613479564 768381316 334617257 456851227 59049373 744434369 295156436 685986092 313338074 789981162 444174869 492041851 67771706 824920581 72069959 802564978 361235631 565773979 70101564 277167767 176962535 412780827 105350695 320534483 83625733 196900154 60361735 415503734 255151294 673477679 173797983 543803489 260600839 424292157 41879381 139512946 39314236 446296490 438932785 870707672 227045904 425532212 365250272 961063235 886796493 948755900 373507716 984527438 459878259 753626168 250878102 784975812 591515134 717745247 435421952 690668235 666093780 997955108 655452288 740307556 442228907 789163662 2533422 975756974 178074869 537488113 501252820 814216118 498718622 747072803 631518610 676992543 393467970 816269216 259764873 825027854 212304279 591664978 264649344 417732007 344283562 716008857 125393883 148638641 11068537 735048517 683874698 940531081 114098525 891181199 743984783 802656127 729132644 939799111 601913709 629203431 51429618 734631083 236577641 553957891 466251761 545467678 60135610 554397024 28096618 963790007 275748408 505337154 87545506 699485703 596029226 954242597 166430746 684952221 609159923 802376896 144418427 437246477 58942176 257514188 102626197 149183173 66813024 156514766 125109239 936634554 49297887 89789566 44681773 900465619 726594921 784831688 451444321 561676194 146621447 192192543 119848352 448167308 395802144 454638193 446606449 931842905 918376110 928346576 575421296 952547447 581238595 981675302 957685272 983063281 282665011 412440927 282643804 323567779 33790293 133571762 92887139 213502780 48187667 712999903 541281149 755318341 422575899 956068746 579934752 762243929 564191083 719718650 251134085 973247990 926667305 997170164 48560948 846410924 27058236 733119452 698476149 964630602 826924153 980291914 582981617 621875487 48937040 992865669 330445212 919100173 35138141 886405649 687039594 821133101 610584962 675682281 356138463 538047659 48680624 737059882 378991963 913772120 569450194 687743877 22256314 785327349 289116386 523754721 109704410 494219729 34292425 83987841 68959350 441158470 228532242 587391004 438167626 717669981 634491775 805660484 155689291 949977225 500159737 672188792 218879207 307204232 102465033 360667577 67917513 779123269 722034525 874087246 63963935 468774962 418059814 849812003 658138205 962671724 744647470 962137290 743017035 839876143 384879287 638540043 255715497 818094189 186511072 895699623 588663807 723018380 528777380 746584647 529568826 987987357 661888349 803250028 229050752 370670511 340958356 546838507 243980241 263423866 124352697 424781865 203594340 936224188 882220916 943101781 42646972 919625197 551761428 750823335 433389757 565513256 331730595 852887034 264235994 999708715 359277811 473713390 76253262 401768716 336025071 625395422 197195204 760488248 518533950 618989896 173098713 703100207 568267903 662467559 650921324 892697335 134559933 930071719 303296496 874207526 238780756 662462256 512344444 854945400 29834657 887799687 358481200 720082699 204927370 439059147 12454637 662578078 282661862 638566737 274232672 322054719 170619699 968264950 219174917 784582336 526575153 547764520 286799021 540481728 17766301 815641958 326197181 343247725 253173716 462035479 123918072 196386438 35727805 277438211 30275431 387053137 353706452 553107922 381393196 598719233 567997448 667863503 65605854 367261327 327965324 524828483 91521699 329716259 155121363 681029675 545597794 773735792 72006226 123340138 67058031 444171975 47837232 847540844 268170420 343883797 168577522 421617211 42940018 752515465 412724215 671417289 43646909 562214343 182621000 449324971 243064323 352113902 302300295 764169619 239071971 954860633 881621139 943654592 897658675 917596072 367863034 658752376 472198109 690388464 89969087 499642265 421843629 708237607 360635299 614793905 570861189 998373185 762473628 909575537 274807554 873837035 239733020 380021562 16126942 114368634 16701904 526501682 289478535 966585310 510278928 984016313 225259392 801040675 740355581 948854653 792569330 985880875 969177541 984666095 229499319 360127420 280049227 429222690 164536402 970868094 424525732 555948396 139655610 614706526 274919660 636716617 449095845 588436236 156507483 164788674 152579991 818321224 158976532 549953088 388858980 442625128 52314780 69552177 19746592 25481913 10083553 586706230 58069251 398856390 55724848 234970620 6330602 241126215 93339533 176700552 29350859 644928511 545270585 860993909 352930189 410165108 337208831 866404861 350786595 575899830 58274568 998856382 823748367 917381448 308804324 666776543 47991952 222426672 56594738 939853852 545312775 694090657 379016518 593808875 221473043 517360847 268478131 840772013 547473463 558307220 526904081 993384115 431482059 561336776 399780464 711580038 421904855 480646144 188880725 786502782 12715500 263476387 55591886 123706374 88276900 792513780 585545802 746664561 86263543 824356265 432215904 708478518 506355803 674038146 299653469 522380155 199371442 408913942 36978171 238182191 30478685 359573949 199757079 699254855 183525569 631457919 104962743 147145007 14349637 527493604 82508366 874813658 70763642 777626930 127150357 380692507 366485748 950556014 82086023 613271741 558493418 881667512 56611841 202511729 64334781 444176601 373466448 493708873 181183931 347825378 121655173 394454984 177693336 250657330 138603211 458599684 12817177 715071120 85858723 967174069 476057923 960435843 353050044 526327956 521537254 868354868 466245547 694760311 52562003 658171438 569283864 772839675 651106478 959222993 315226706 446603118 27889347 532595265 355968860 507128703 410602024 580259342 295768000 416271394 238229390 380350836 240557596 258945035 235920102 834435826 167291302 790422860 74275341 556110060 116491576 485305158 372992252 777100661 73284038 639498507 255569607 749696354 599521447 999019770 40891711 315201893 3381584 19553764 8433127 480888539 14761672 304997626 35149886 708026311 403492137 604838082 512625900 598830740 129601585 671570169 420283777 629538747 565457949 865237940 182292297 549772598 100906337 317453710 191268014 785609775 716198039 889504842 377226561 942229468 487837632 583046054 424821930 674656632 457150627 863212525 271625438 889892709 459089671 844589409 825129946 849955845 371871801 568037783 422734883 668066303 16314345 82264221 57180977 358071725 127744766 279988745 213535869 930801242 501035997 606927575 604130179 965616426 191701801 267922190 134139781 259955050 232408742 489455146 376729631 515517616 144867671 251006116 169673657 981033939 973260070 995651569 665414776 723790276 347180175 436812679 277510069 591342063 11625800 385525545 297686443 384645508 257567324 572169173 292463600 718278925 640886648 702813081 379748566 762878501 590542015 974252904 484634318 614511711 28557249 547155753 309820595 892816297 24548297 778860863 672596393 977638807 845676860 905920470 68973945 706461147 705245823 711612373 481648231 564751240 303414467 680317810 621655028 783973032 297622007 307698629 219847164 873622252 642624588 993852871 632378355 850777934 110094342 776561516 274671741 310687666 112670742 657472469 13331662 202370723 96432755 642011370 181190687 452938085 120418930 808632898 436956543 637306107 137898538 446071889 64589784 391909518 51573329 948487407 545063416 625596804 217067116 993047381 768678709 844150528 224935979 437532374 89524843 128558115 97350523 269855831 258474883 781964851 106236262 619714584 27781079 407916445 346124362 575285661 399842458 580151522 321715550 977364047 38722388 696471516 302629944 484840145 244941176 738758107 28288919 75110700 6215406 942764199 447400959 903694490 530862832 638429592 445429130 447932088 309467478 666346308 628635972 796571205 280282299 653174336 241659369 937241665 572551266 979180833 419940193 873673803 778203124 918931613 860030747 877358344 708638793 917759734 691680517 692965619 494328081 658302539 359567032 458123616 26203005 422690986 229842181 878792712 38148048 296346086 129578981 402342985 375475269 828829813 737171890 772099309 83637144 132452530 33255922 448626521 353925891 559182512 75773746 114832847 63520907 904758862 525128515 925232490 564597919 656335370 342176435 939634440 375792107 897009192 85764476 599688856 234321136 895906586 12996391 740345745 709724000 996950765 545630718 773628022 609040970 696745261 198267373 325958102 48094307 607063019 328924909 466645213 205734720 786555168 340139542 357224392 269161321 604185228 375772938 658425472 571153244 726880182 266528082 685707668 185601206 692556155 155208255 963563606 479768631 865455974 517700664 906029110 138320981 838080663 441039683 946048594 211866567 392311176 372041298 476659722 122889545 604171991 16615079 222232021 190170608 621464977 100236460 440274380 51015338 371275228 15049509 456706817 314901558 585511956 376986503 694002212 373766031 433120599 308974535 742565794 32063400 893379184 716488499 763278020 103220312 257009618 56606841 263824241 262484875 778285101 492549959 843683412 169046286 547012001 364015688 615600943 175948394 461691494 170628295 893437678 876871435 952173300 244758202 481951485 301430187 431307434 12270545 608531764 10820532 748916212 288505731 994366254 247754820 251349139 213325360 831154697 588689537 715841234 484186547 671855675 597141664 708041506 15502099 623730984 228858574 326245542 5283191 804885011 199489576 555225699 453452185 674977201 308242341 433903729 235112196 242323802 158172730 416104405 341481286 434550260 29120609 982954908 966744207 994730380 429294691 707614629 254266478 416958771 394203699 660610331 484026018 510319384 329958781 399635086 261232343 300160348 296166432 657304572 264260066 485706628 136229134 611831818 66149427 128198500 1046454 379932062 345020144 871378027 261634571 691837382 9213766 542510033 301813957 351743598 182645371 904849169 828171386 906029251 687715437 711727146 75447060 443343012 406092616 989696377 668375918 900285152 652908317 813429908 559026164 649851211 84997672 811863438 156480839 237580435 68111517 543237428 265265690 465379149 398732088 604608233 38085575 574370355 340744935 865798431 346933905 558973418 552532999 763165631 534722970 831261534 301208191 964656265 372036046 385438609 25007259 263962633 19771809 926732606 168367985 656932275 286153563 428193150 34046361 408891637 65612987 353225500 297153935 559905849 509144119 758662296 572251507 576116769 518415311 853389798 478565734 678107760 152066897 430063094 172200648 693921171 378980064 982666990 439024021 871017006 25136270 330016838 301830446 526625839 407958125 706271500 564449596 642306958 379587087 442315952 84622843 122824523 78806525 496371885 412479722 421495591 409325229 908727565 279443851 505855523 213913846 709477885 606343870 997226542 242267841 974213399 770039675 972394522 362971441 740359485 699988033 760511277 661791193 919668230 762972569 814225866 313697111 481067095 211464548 245102987 30222639 255333658 204529950 752915391 265182472 895410202 503481225 913074538 488544035 778786287 404630473 987238682 538819600 816023154 95189989 196869618 168617524 268071422 197258627 402446656 331683683 637000655 134262097 710737172 563565887 953394846 221367722 301087558 270347476 864543542 125587071 655961027 247652292 637125734 188791716 278203675 264329381 982764106 3903864 667392058 551953540 921216981 250230177 988712396 324292915 719116328 511404859 912070999 136667324 658483534 584175239 701562754 168516101 867592003 640696629 862289863 701576536 794543506 236231801 939965183 547275150 948177636 933889517 999717447 737302879 818410457 506498860 835021249 202207662 231310412 29960334 59092834 38084395 178397960 63563434 835667050 305992125 409401183 206091404 404913707 212014018 890075552 323016081 830302008 112887861 847869888 425118788 947116892 748647118 965778666 374500521 973253022 442892385 920826830 221051356 302693029 51902294 481647502 585551 86757354 47336444 836680329 317533771 406960891 234884333 946067625 821919469 962377933 662758856 987335597 730350935 874421511 168109911 226364269 117509926 332569276 83791994 827159268 211229773 707772813 505032757 697056775 481019717 656609991 362279734 614881225 482524704 546746984 220922929 589123733 338710315 604887233 305585078 945067196 628699392 995058990 508121477 631917418 617163738 950514859 644184426 813312278 573207535 911898600 625669389 931794765 630483594 780266898 736971289 778159352 684402579 923374474 505267388 969989419 918647205 953283576 183559316 855731939 383782128 401797690 166581622 664782959 510366245 544336872 85606543 375661169 143085618 424328921 389483525 558460226 256801609 915923634 395965561 910599023 246903 904172783 634892137 927057185 354381353 375523965 152101085 760305786 536293359 736708549 127717080 440748689 106720736 653723841 87088106 253678392 37021347 559729239 257779697 401437727 242629590 390926120 72551608 386088813 205260476 622061130 354266872 585902378 153263220 355002097 84701173 559940494 267838396 522924070 67765207 70763327 1189419 677995531 29096663 103586793 69183506 735020394 242525291 420743969 295336511 915887981 897440680 977044875 594980774 785459289 614277240 969621831 474402474 978933009 352673804 987057956 893991828 988844690 657772660 843976921 346697149 909168183 888984287 929643070 815864904 938560806 769134826 979025795 19070626 21711527 3499165 147758926 110282069 142153595 41647270 590784499 34564199 385071312 286875131 825731936 554310227 696235519 419568147 547259517 80705469 434036731 200466018 294072708 14278892 758662832 215257190 832446784 481252940 764160662 486831113 775172981 345662103 463547957 206437865 843095533 526515369 587078773 361594880 977411343 21801403 446486088 404319929 930985212 307423371 645255552 477627880 951153445 630241749 854110386 600995959 869949455 44721042 101670047 28362555 436844837 261388598 679395541 246894867 580044183 449996887 618861170 374213520 577709955 163270807 786278036 431496251 850965561 470620954 685290869 551959282 744005198 438258086 940925980 145195335 348044057 314079703 326878784 202161804 580680922 156588845 580372817 455274356 484177710 345085695 518995626 437783384 986273357 822399921 972068453 239348282 994982981 598421161 730896283 381023316 498003104 203707593 903188861 369064891 431906206 192613584 706551540 619335175 703926973 677759369 858817067 227266485 876835017 137855937 765924269 63258712 242667733 133740070 618190377 226618263 599849127 32545162 133034988 95509739 857546855 631634657 982553427 877775645 988175758 106948609 852865191 669258496 973518470 470015468 700144989 208219328 736625215 195118463 325795593 99667762 831471208 691419115 938914658 610031433 862536332 675805542 866244545 193864805 502270936 240815024 780568451 181727530 453001769 133993868 938926432 911753175 990870997 505125228 511477094 272590703 978616515 396975812 640404405 196913313 577107669 463914165 995064576 206068378 445798228 89104565 996821134 877295171 944446133 565701628 585442361 148418713 152387501 17845582 702377181 605413323 803387559 185597588 838742334 45428535 727551669 675332170 834152808 558981324 758902333 476058370 967242495 880533585 909123659 10198258 141029129 63739548 337408499 291126722 432576728 14235073 785545876 403408801 769226111 261618876 862040388 541423593 746471090 141192730 249530187 115834083 286130105 137397359 564127203 478027716 731052190 502500088 920640042 232623600 450335359 82575130 126628297 42451760 648336864 364131695 520818777 509310280 609026544 240438767 922063440 55908160 559225769 454289776 528475705 201130888 718601856 385686076 537764933 178374625 800703553 114130214 442358507 185790388 240833772 11209667 255469981 112840047 130783649 119204720 409410162 314259852 738057783 94631835 650273868 497417704 552360353 323817694 959811595 804505029 865116990 694839168 981426986 121684335 228293783 13597754 166532723 49435301 318606846 298390840 610194532 335238770 870493458 821706778 876609649 343178018 775907451 566179185 951735099 647691210 910181380 82181532 475832546 103563948 915849560 524777571 891106740 299600757 476897698 294609508 645858064 369763908 890290998 241405675 318444808 34061045 509277478 178769215 362937109 109277920 975241750 584993451 999918311 661513093 754995058 567120423 845322842 192906595 326079590 216143580 854253118 555752170 797479081 508597293 536196656 202882784 933992930 47510253 103368288 69894423 232400846 7675469 691704357 605206525 909378147 139150026 733887567 539045471 559480006 408229142 670702668 469583970 594440665 236374108 743347353 450616161 645665993 191462579 825958774 57717744 947217375 215906514 346016618 110786509 743631665 382128803 635284610 496871507 837016756 546104919 603970163 81758583 190121746 107596675 877928437 745743625 922238709 693783005 721191967 291345333 302412149 196531064 586598328 333656959 531673797 429658142 592824691 77581547 533983225 236657438 907645279 705640929 731852824 639665247 667678871 393747636 955890758 119390258 634957390 615249448 702577659 155499719 789572159 554358768 685771449 516702527 723625970 7057280 469646364 132839254 306504018 189043529 472825991 347998958 774899806 69338630 619224545 405315773 505471978 371439264 608524821 548267808 982402493 703740950 815853491 82951238 623628179 160844091 441435657 333142319 631888884 325054743 811091078 104372394 688747897 467537542 505743327 364595162 685485994 64071221 963512590 350034876 670136784 317512294 965485203 703347274 769263838 450694415 735081880 222821326 775173339 359794053 991071808 877367380 991727171 549910006 929107228 921639456 982722941 502408048 827589112 623868574 954649658 794385123 817524957 357219294 780312638 665393107 829358686 286343572 861441939 364057618 663169732 534657912 568031508 395190813 596088498 460150695 505418363 504298840 756725113 453683359 742244118 61966592 188052806 90990997 166158030 80877624 254554718 133806256 833786367 730969150 935201999 376899338 999208314 463897504 967201519 856518815 957485824 544924068 856733919 123606672 196967122 171965030 299427211 102255732 776125221 665384447 826884052 346170786 492290596 268920762 307321747 202796871 307745803 186662959 360590486 175747379 432656408 349269589 890647367 74746884 148040246 54940721 866560687 515684286 766629653 479336217 693269939 384906292 483522360 336446394 567881087 219913256 532391009 395330069 667533660 127011015 155182322 138756414 628160707 459224531 922935935 99666967 942367602 375938461 682536030 41598731 691780401 498511445 582774332 324169097 913591855 189989749 354963606 287854013 760493478 70569543 87599300 3872310 662082078 579752753 702796048 143284141 252356655 153754044 233022555 142578350 442922768 396824222 533587011 322055511 707015543 669915766 960762533 844608820 877548405 502686805 543793395 228909208 516606915 406854610 541108992 133039261 370557426 216914433 255433103 42833067 569309371 72007482 922348650 878542518 934748226 778362805 945620948 833347183 957880041 755822899 874721142 316812945 978234343 457370770 725820480 360245665 926906162 306795031 558230499 272204349 973716727 367829400 398827692 325632397 759945530 495110400 652996576 228198123 548521570 408421649 529105477 52949777 588550280 15291912 36321668 10488732 735645572 612507302 614601051 91471876 262956332 25772164 787709454 654085273 862247510 591892955 625151025 491867189 947875131 591114639 770680800 672595000 873872316 856769644 865114231 397321579 600137090 128655861 490902121 433172568 821216792 442612555 520688413 479275708 761367442 665576997 818266347 592260669 879804483 482940504 680918944 283858485 535084608 281917886 802052714 634862743 766242843 213670763 830748710 108852627 309018159 205662175 641175259 559593324 790441768 751296951 837791426 345548817 483734196 366701930 406796547 155637901 492725968 229594568 790097156 644137935 911677721 634464735 926274272 449713442 677851322 401073130 773641439 94812233 623707623 364660134 834034444 214507196 331964148 179851874 973909602 142170642 378481007 65780012 345441764 44701394 862010786 359773806 518363322 195305828 869277452 485993951 665287157 74915423 945052424 95505594 632876583 552712580 615138068 448988864 740114536 593029288 705912485 60689874 612258837 284911838 727866701 32086313 534046551 160228661 789162672 478321619 698177225 134013151 552998413 429993354 984778039 404970191 602415270 347371782 729831973 632424101 872601680 620798917 941759336 687562130 918299461 729845162 786323760 437165001 756291816 623472284 899980475 75073569 879125164 742363805 873734570 497708704 834539940 298317032 805814562 435397863 835220041 825593102 903214980 253983310 463640652 82097536 987428614 460821878 890437318 130357188 242162780 139862577 628269120 556510711 680912282 373386018 578821380 297991088 624791286 306154781 644423301 312228094 510342977 62278888 228471405 181864448 732596571 713684492 834198967 519439458 886372923 479610365 553741895 256985523 592672114 457824277 739315805 63801363 620261253 296451871 998226596 381670922 555874257 11691605 264657444 172458728 799359678 241807197 708127613 314135927 628031575 451334401 764893586 473407912 504677195 422411539 843761611 416845192 922318653 166388244 803572610 678577663 900896284 410589181 934805725 472691251 570379174 71475258 864603740 17833051 961203902 178092259 899452694 665460964 765961894 506805102 704630859 338100308 975479875 336562013 498682942 431662079 554661937 171299085 261037087 227414736 806339056 87652570 150605711 137401561 192174291 100574704 827857960 651665279 918774707 385359108 409202120 96786135 170285034 162160151 349135598 324978743 567990707 389768898 662195656 205602084 776470958 440739242 626799526 414269878 662670674 62201859 983555789 753611459 896812229 795616489 854168789 671816751 809903949 803385840 970541138 619377356 859097112 505487094 647687622 159288467 217115241 119163706 857815183 506576424 622944328 227118061 475285728 272113203 648151515 33939484 52994491 8136911 459368546 291758668 644842095 276443721 377269313 75200846 544672844 220308694 834849574 440529487 802552027 12273020 497656171 50827955 857463075 638957091 890302366 593885858 974520292 94076898 917285424 816634228 976660660 685947976 910971079 249900161 493916342 358289607 947247024 420310173 590032868 9481422 785149213 279489253 335139545 226434343 619153176 398843980 400078717 24869450 989008315 467944809 558302375 135258239 955289323 158367222 734359463 375639866 922136379 729737971 854604339 128689578 144677166 136460032 374395764 184379952 493145905 152173421 211461963 5774308 815494451 304325314 557244129 112324979 509959203 200044447 738085183 690201451 965698771 362646389 681931594 501060469 633113347 374550444 609667841 111089916 458144337 319400837 657387148 511846313 791185250 144646144 409471449 44688845 939032105 552972396 714913766 140053370 356737528 227768586 788557082 721967498 884696004 294676867 520827482 457641864 489564166 358551851 626787969 557148633 878328490 572745868 884574661 195988515 686318545 97229695 714997648 548342524 780636594 447868490 491761178 430599093 767289322 412148589 605131461 430450967 557877703 458960435 812394239 463269849 709812347 218192532 281688310 237327317 812244901 530856976 593921994 517993040 725587587 504974847 741094300 405095915 749426922 743631572 760855170 99772354 547231986 202179400 246415677 41436638 312021454 310879738 973598919 264727971 886287808 154032611 356918730 344778342 770633682 124673234 602094681 233078453 973057851 106856879 129360888 78936444 334733044 245801578 899995507 661840240 954054527 456887132 952186377 685441515 930352140 723615762 770120865 181783316 661188113 74230232 512311317 378075249 701359446 614379893 974973184 715728750 833714758 344946647 436864605 28145261 175983606 64453756 999391748 965936160 982347314 544681420 938653063 694695155 707450839 85492836 91472133 50058189 835724011 302838290 419815493 77934734 986108935 196268669 863973728 644000383 683108351 626456721 737279137 43173161 621082400 467777466 719292899 543498934 774058868 606976601 956869416 88148211 427969929 362781432 946066510 808127538 899907673 436679172 852611015 437023310 969932327 323150567 714251325 219067668 990549382 708938798 715601203 425708162 623795611 42651832 416290690 66046810 98238582 19772394 555839681 511489749 512575322 165057701 954660848 151332111 867264557 22919227 729374966 316380723 867863964 544730957 969983564 834656750 883958529 868066471 928004678 369305457 674769609 265778893 816911047 747520889 763053324 412411346 880054308 783590079 847302949 182671256 295091764 119721920 366714579 22477990 612820170 60341726 577614918 29153434 884493439 5009072 388052641 155917096 658619498 563699226 785135627 85836164 661884199 557836742 920949935 410818425 935305007 575277644 817714841 37962171 88624635 46065951 589267601 421793757 441953641 197919982 315044204 292330072 336543227 131930617 791485107 709523366 739902571 300487735 382025799 21974668 294615697 174913333 878989298 527087791 684282873 385912851 528029249 290677548 930771719 271890445 367349007 141746406 374643319 50467881 983580405 825103002 831941735 372775446 953880798 555667402 716874060 182567722 516075064 458430198 923404049 901200251 967982488 717623637 736024580 650491451 791259744 472846448 676725232 231392610 471943393 292860933 697374330 233914572 931663878 903642949 914322033 869293886 920406716 500320076 868331694 24148051 406891045 113793886 328730234 5906336 679446092 257716419 597620471 384010689 815716681 202685225 517346232 428535066 664734222 14412514 66547637 11471576 991117812 202495757 950590313 943732359 998548468 444072369 573750659 91522569 928746843 894850479 962424265 140937671 769113711 762507068 783571261 409982485 516004725 150335820 925982926 52438366 657452136 376408225 379323837 76075380 83788789 7750644 579900251 519821813 908475623 687455688 754319974 174963236 453751492 375671061 807688395 760223324 926693678 311048164 995967228 362319037 571645421 50214918 744813095 475130201 948115006 250198761 986953952 565304163 638399537 182578016 981479979 377817224 960952363 767148329 943963062 332147163 460526964 121560681 756079255 385471220 487051368 67651576 93467640 13281366 287937433 176861137 707750138 297913628 574066012 313858526 932755775 674821957 865697120 760256041 781624083 224170387 264867317 201980669 697568028 8614189 556375506 5401149 575911495 119385393 540351855 183730692 608411595 472583205 543373249 286017626 940160145 234386980 369385445 73392899 432217461 97120133 947768501 319720628 626672254 71692533 671033571 601301873 782289441 730518482 977527044 218297673 376996917 242324390 273589745 122002559 674457380 563709790 881603334 637050369 681879741 660034760 668598157 580229950 821054400 165136406 720691617 333218682 848439222 77741452 520891883 159743158 485507773 104111711 655061607 651205641 871712711 612196242 643023294 454958043 477018568 380077861 538039590 331727469 464962169 402596550 527303590 384401254 903899346 686544926 709131783 162193953 517545670 75714420 886739850 714598090 998066271 615431101 824455459 784641368 960425291 544370374 585451192 465546467 891524429 240491471 486857041 230112064 700276547 386941081 417052962 72779028 233911130 211689442 776211268 751045623 766544316 690423564 898977862 186160684 416295829 50712154 246055775 215592112 943129358 551718520 599710774 28528093 328342516 289445151 766988960 230558881 802176404 751721391 772652904 303174521 510358181 422169624 675255625 427923046 840855739 244382409 402191244 46947934 299947564 240466893 386670963 182883762 410680821 277070117 715953871 116013898 225474111 185553724 312948259 188128960 432634379 281023555 811582033 560105399 971947528 351957677 591415594 246151627 869103935 470028484 852315888 394828344 841710126 81108974 676913863 227549257 969309239 558314521 745632544 100491675 680336128 95037653 859197757 412975144 619790610 514024437 515829790 119886502 873711051 800901421 817041159 490840201 911022062 477775079 519369496 359399897 594003987 258500233 368121993 284508884 522385241 358176559 534074287 367365895 604114926 435555614 697630231 457638198 849788264 734914047 949758741 440519538 669420037 37178230 806444552 17717918 709558825 700781692 742835920 602218463 613335800 428973841 819748492 633544754 987966010 687180562 734638250 430739804 988598044 713233327 837762994 16088650 230833419 151814121 237251926 200034695 393453209 103894921 496764219 367033414 422068462 230404605 697747959 488741096 830901793 516189002 864956519 278820671 279587930 223802503 980277904 715836316 851220326 196980854 486692330 172396264 494562151 266447103 268556938 39380448 96884616 70026767 764453929 612655776 646750278 621839603 976307539 684853186 842453801 450558145 483401644 74223055 224255578 50105522 550759422 252439035 389652083 253400272 541323793 243682001 798641665 294488288 550949795 511272337 942168309 323389865 410905062 193364261 899948482 56672993 724887836 337335294 665344229 650046288 685123423 401769759 698186727 550069436 738944347 143882954 413706221 171759313 458179273 248679119 772043143 609671789 664680488 603266418 700973260 34840649 111422645 60677071 531530921 449303379 558968192 420767169 544535961 290881246 414808331 356952590 691045969 491267219 957103867 667840680 957301342 412848771 720370966 518779328 957158794 523814240 766582298 597325938 737022118 373479135 689382071 490523511 823667041 419719720 465548643 185925974 599088985 495335130 546825065 128414349 493259365 216555146 713748552 363702581 431954228 53064950 382762471 92862632 881029292 731768548 770917441 439144230 580966844 477232192 752983588 334040933 979855463 134928089 159504875 125867692 422506240 316469198 914654680 24336537 72502036 7782435 822261379 293436444 295214335 273457017 970817772 757650077 799598206 778437041 819948619 7774394 149163001 127834816 449862559 175697546 353868267 227967788 822558604 820721749 993390202 888804748 919812244 609292078 858033909 748452440 903590378 823670006 981138234 73280104 507146061 17606604 718708436 66957211 81185835 34122686 604073592 331674553 433698690 22604094 150390250 12747770 39979940 34726474 655857105 355907057 968633323 661990404 964320379 474926330 517169229 458469774 900332762 831148195 968330943 452057841 955935098 192832320 511853473 368273336 530192095 504276269 736119473 377331616 652012580 580503754 878934581 134404622 498484498 434125859 471076343 330236060 412475040 3971900 218609167 146858960 231987721 46327849 819833555 720952516 972593381 342739631 626539809 113042157 389896017 112765681 675722030 328387122 822760696 151518565 835136978 795999555 854202338 834452596 900825269 115613390 682242456 273718719 662448894 167909011 617822330 150813503 784613871 678258528 856363192 254653949 989056861 153166586 903182681 216823956 558551402 464076843 517968608 6064339 9963518 7483819 326267250 133085161 299933550 205663298 495457425 327378524 927906216 401579206 618096672 14890707 920757105 273772058 955279252 932992204 977232906 895078823 995014000 655637661 871057019 806624341 865916282 58632264 442753031 206075362 439807468 410399493 841871209 587262180 860351238 443035513 627762274 569294210 720724684 258834901 276320786 172828176 933258220 846456182 917838352 498294107 627852425 590924843 788928128 332003178 998352539 564088637 647396253 424917660 695963819 687789752 765410998 525868988 843049241 278292989 332222664 301785759 479569583 294008627 449851329 188008750 897393297 320253313 691478311 690081006 902005288 855787906 948143661 850588772 877725606 293722317 539224847 407213088 971969699 96035623 504647794 96407861 311760304 197343656 625812482 398677733 924495112 723895108 768203777 17839346 476539010 223884850 730349458 412083762 512597659 10302055 699912514 622867252 995220160 617905395 677028288 639710641 842099762 68024287 911313572 252791477 613404381 304093895 534162009 5675628 458190432 165177557 203242162 198344004 778207465 643932982 850375326 178105445 569978881 324340584 564710328 550887240 852550080 607670971 729103174 533275678 679991202 423949593 975027190 713167532 750996900 433965393 828530154 73278312 892369588 431740298 758553892 527633257 874130730 63837490 507093368 61781913 381524785 185514007 942708650 493497885 680628511 513486961 548089123 341866952 410733560 174554056 692955386 71412207 886058940 103714662 360651554 354516111 892882173 766409237 973101534 731403431 960595938 444432024 655055711 350529662 679248759 504502172 823907488 32799578 297886531 39721449 66017100 19603704 608734516 553647048 705833410 311768670 715155915 532144894 857570078 553195745 621270787 599146392 917187583 265011339 943075039 854954946 884564165 752270630 971584898 21305840 316937473 19594519 478652466 42597147 925090491 221760749 732532994 112474717 192558283 143194284 320758981 223381900 530935713 459252754 834609926 404989875 859379799 724933939 733069882 263742332 844011262 35775897 987095668 100248533 205289223 174916951 593693249 367091100 499870415 376597677 844794056 74705521 827715577 358034327 459405285 118533751 343369469 60131408 539503094 52900036 571590455 248652422 525798138 41507748 557720175 110203655 360600613 141926227 185340317 148085971 718851257 299706329 938660286 910647387 930732388 386008872 450894305 295359518 882205142 469886885 899285272 173450948 804206166 301624899 436971180 214404057 432629649 362724864 792014220 42365601 305802857 157800062 393898808 182815494 485441551 77101673 434065440 150590625 403496552 4067852 436563746 1320878 151428238 128447562 315706704 219432386 287240878 249389327 430901393 264876269 696517306 385434054 785790460 62891777 959298856 1777235 156481423 97375214 940495544 229553863 686755273 227646822 468596733 322056136 877038069 543221737 848120725 327870446 735480649 428822039 912979312 81862783 996607486 265761024 800949521 293602562 372604444 51138213 576813641 172688464 837513006 114551166 967692567 320644761 529905291 67954773 613511586 479670271 890363002 822400025 962691550 534962396 591274683 64358023 349161971 82551995 832792953 443776939 844829135 204947192 814017375 518277345 826421837 730141224 874717806 150617094 855962478 754200873 911295588 653991738 759035996 748802624 911894868 376806080 433292277 123896121 366291620 316869162 957662364 557388664 887679597 183110545 350262881 139978900 257389772 2850887 785096832 726847315 931548093 797885519 911081716 754964660 890082373 356787709 685620891 234972138 808722770 627952348 894183046 366326582 425157819 78686818 463862393 285537710 508496130 48857094 429841070 66814535 222732520 119087244 220397530 26107295 877563114 557576643 761579101 595981687 926736422 885448012 953227807 558848697 936583438 768572265 882532517 201810036 474581597 253148497 531450954 306809239 880416099 729796482 992459978 22921766 960100661 692387509 911673357 477786855 723279227 52338629 321304408 254221721 620306716 395555035 649615440 40590290 200460533 59355718 117627062 115474347 852520910 391715520 466088574 269158231 434096860 68571232 974760175 528428367 691007436 114092105 824740372 214534637 529119619 383593488 776807823 135312799 693902163 467510046 587727569 512554744 916969437 874303536 948216654 839959579 844680862 762352939 846562044 177646816 614566658 458335847 952117156 475936546 979723364 542247653 765461145 64290000 865524801 192782531 457711358 442503415 622202621 245859126 348898417 338403192 902559902 606167205 750860065 69136818 957949463 823845097 883258181 385886557 407207799 37850270 75014393 8475570 525873559 96876846 457659526 151158144 549191726 392380456 575110318 167759515 584123647 514690657 748031394 743166907 997253406 666143038 802582271 568825919 584664421 509319855 611526861 576725185 947264826 623458560 884340654 812618616 970027890 830438692 852690587 130820739 519877997 392204767 402908194 328661835 367598830 150241196 702638134 646127449 888968491 788334029 883709994 687810985 917583798 885009710 955311363 781657650 873709410 410011314 948285258 218009913 919660604 482365155 934887146 477923721 494153704 447878815 685853818 394801753 749626038 478001167 578836369 77617859 607106393 77876942 287287545 144506855 168976615 33826549 416208546 264582759 782971215 550590023 730219095 464498712 977397713 762782716 967109050 345262033 956469215 149712562 910995184 761952654 822247417 673667786 775688269 676445685 950012169 417898510 639776592 600716381 975547606 54854164 657763936 467296010 817074092 545568359 562405700 391973119 723186563 632137118 799701168 749638374 847206072 229822128 984022248 833524898 960698627 413357491 529432770 150496595 400877783 213157936 889041866 98581261 900971189 829814197 882456985 227755277 509741278 462968449 602444822 59504252 395344748 196365287 438142183 384377588 627653716 585032889 804445438 130431460 613762141 544863948 919687955 675338534 676129937 567428065 597366809 539964809 764497656 485533 116741374 70565305 265045749 220515241 271492139 140239478 197020502 94354763 946555360 300097516 316063270 299179031 927243801 478799395 808278392 408578841 703155131 18067339 977976838 432060132 713570008 517516134 545194164 232722102 713336420 60424553 573105437 122191086 930768972 49841618 646945256 418152002 937976252 394223942 698457522 618946892 632239568 319897839 709625775 597409073 902503463 569917520 645892070 549174716 792664937 385751200 466643483 318928484 784803019 532565560 687760831 213095308 522564905 21048203 635577341 97543990 98668236 30471429 358504022 97427140 413614313 103162847 770374899 409389527 826272383 254562210 894879963 563554930 944708498 307343326 686062450 302253035 797617173 22921934 208407075 22023941 286014850 98500317 296103439 160443720 434757649 134034714 789165951 594621447 884217000 798089727 838252379 702476789 756238226 696998099 897424633 179076126 681874262 253378737 682794549 437829189 705514908 352637461 974268059 103861749 990115726 869900727 983069133 747157908 773963725 740022649 948023944 868695269 952582095 63328406 398117872 27333120 925729348 457574736 522312139 65376872 117124976 48410864 692358482 343490798 665707683 648682572 792006176 759026343 804390339 798972904 940291839 97317011 500663933 87558763 254237126 73860037 834705801 485364945 756768333 322738932 725431980 71823253 253556688 23990049 295951494 226790857 796560068 331068155 390893462 245397516 664610556 451062679 893060068 82578665 242619955 122328767 607923041 32543127 627466264 200052701 704951423 701570009 968420034 154308111 283712353 112813888 786109331 583034556 632382623 99069246 943327134 446478362 622067636 90967716 490677496 236407720 860011963 695561550 975080374 357782771 872932779 222144713 993671263 417215802 532532924 25184658 738264480 700135252 955807056 162327136 849244179 758822733 974539540 534595743 852234552 544997063 654577964 365478002 673271923 298109871 333965189 220040320 929065396 125838507 533036994 479515414 615660906 285065042 449944312 150894573 839348231 120922768 595548267 256557797 552819489 146066197 485653297 323031052 704918252 564346180 905541631 665490134 757135143 621031868 978018627 519511956 601430392 381536669 552516631 297269126 533467342 58686883 777160961 327714662 372017400 206388181 698256959 258980806 723197952 429431695 695317723 566916941 585881948 318674589 514656326 223171415 824277462 745691474 787543301 764162631 845143985 180989140 862513371 153909612 538474358 256765205 978691770 550449016 582281592 56862904 336075846 99889111 279785091 74001596 284480725 108012961 540062242 81690233 656911776 300025358 740853095 475836053 937302671 520122957 894443201 567999177 644922840 471856929 589534668 259740379 711634621 45305097 94189803 37128277 369111413 165891620 279937094 1678554 854315993 184899687 352882613 275940104 967185137 346732026 927237550 845045254 986816385 637582286 665815414 414289538 861926498 364594544 675025743 4711893 315867270 173082961 963555928 791670113 878727321 685379331 975241495 706410655 994093299 740965523 742881749 5445325 151451818 95012661 668753098 344005209 999645946 86498096 192576649 57938977 178837183 90025004 810391971 556679929 939587494 715615074 757886993 141363829 277577820 183154923 729010945 424845677 702811274 570917447 915139815 616994696 704973736 620290770 951280516 315226945 982560285 225696821 994484823 87893493 286215037 163157918 514495982 479950689 775468304 353189352 432030476 321795709 827648886 690425656 913757238 311630177 927630963 577982616 846743278 3688718 367172097 332203507 923118185 852053047 974764727 971289294 976344905 318296029 585217446 37216257 676104015 14236413 934145916 802728910 856818973 232572971 978963081 352626166 772683948 567363060 720349652 294082119 870436969 847448256 970984728 889788452 970366461 421251059 430729050 294325280 839776157 30060257 341372037 183362187 813423452 523553779 978941487 889567025 993624976 99036455 584889810 368408689 604333647 67318554 393598042 353537659 836093822 140251238 841333960 803336466 975520939 264053294 651932978 497085053 987112874 368113513 666552109 334226981 544552444 366521778 782115666 89983277 140947731 118718025 241202913 50625249 358190329 68374262 775969677 346299209 952214971 331724714 423029022 373194638 508963158 424149242 761442435 23597928 713326296 366899282 519930399 377887442 781170475 251306832 489841886 251838036 687358794 553573566 808300595 298128073 522545061 194591187 961441731 440437135 834789227 428458885 592644141 231072902 852046176 106407919 145880009 71986549 225248083 123441467 321630825 140034702 430588694 355074192 799812863 51804059 418988029 135652311 156956238 24332115 986908578 516339154 910423133 801511238 913775569 796153515 859704185 35957125 417891829 354917891 454245911 3826479 461153098 431734889 974672968 229956339 335673855 52504010 638011539 435564262 794567757 237148377 812443003 544611267 911267215 464866948 610508238 317331155 725219999 229510426 581153429 2248874 343168773 307491342 511466610 509210301 982800452 755399181 830666235 43884703 660094617 409271145 955389195 48207586 259468008 140056566 353480223 87802352 949310306 210644766 614389547 370841690 416485455 64270725 84614261 9818423 522976246 389936917 601833607 88071012 769861859 444373610 941439240 219163884 664088304 432362191 534363855 407887246 816887116 514488543 790838348 547625784 815664281 384273226 755578975 164868346 836913059 759332742 969972538 954478252 973903814 298286164 996189049 834615029 998813979 678381954 688144652 473637573 703684375 96689557 669972047 279377064 509388839 90769592 415895334 394898503 942074102 666871106 934003832 33445908 281618719 266412070 515481075 329656343 612058716 498224273 526503154 2728882 15414394 11447712 202116722 145489090 890303341 465244430 920178621 536097893 970684611 311114148 759939650 310948398 674531579 211364730 446613971 375569552 621223710 69499596 137271279 78610059 952478904 273440714 809734604 30621657 76580431 35662341 810162114 417667126 614591395 513116623 999868263 964579107 982413062 874329764 991707455 559362948 851864026 356274790 371993746 232338511 507823758 492180680 640987005 91226547 917484703 631482564 763937309 700916792 962583048 179365310 829873755 434854680 605766454 504591867 727304196 222694331 451833386 4791907 789229345 373501797 704785694 40882447 193882394 142584333 890713380 736017596 758599646 526460623 731507802 1898072 225155492 34284706 657395620 119583963 163762024 15243566 482130501 404412958 431505121 52321129 252478341 133626497 236154296 39649615 318959520 1953280 661064618 631503553 661568370 28785273 924524963 476796820 480295622 2653771 974370454 333683238 767909916 441692027 635656022 532025675 795307672 346546296 791488954 165688236 683299913 532960060 990563800 109912014 500796307 444781254 566399118 366976165 910301571 273955601 894049432 589838511 714796936 61493201 777941964 483191841 600430555 440451310 993939189 292597977 831638051 239462318 801474789 243422727 733464437 282817323 506699919 101419186 443410918 442183454 798358625 26726056 223150121 110714987 277935136 260978344 449647237 314157290 890466385 590446842 682879695 641537836 730616031 403087611 938684497 477819333 811704806 424819111 537580386 320210366 948260804 510505518 783332003 158718558 629697675 43769384 323952046 233609671 487092892 339319989 369853132 30945823 639262460 616326138 624292829 492591146 823103009 132937089 665095727 140885719 678424244 303817335 506302973 20858643 962075716 914199811 989785672 459169332 838433063 764180300 852155954 544099716 908074891 490842071 914046819 727067661 849434283 623407335 879867861 661583767 733739697 135919757 568648985 332517188 901563249 9476780 151348600 67456799 540626892 168440582 530798463 314982952 612967789 375607469 405816129 92238444 748120161 206086854 415356642 177520072 900738675 62587838 412938663 74652781 186021236 52090536 131116186 103105227 607947464 159057631 855026742 337732928 663636615 440661254 512733968 446973313 905420545 698979442 713685787 621307476 714659421 258004853 363319646 217658195 979798590 524239000 554780518 369561209 376241637 23410606 882390739 721632246 775127047 263938770 583451640 510610019 838378625 663858048 866784589 195298714 526818593 459739836 846392650 547932566 635421513 118189529 447596635 183422887 939732201 776609064 918155435 415315359 635933154 570773223 743978738 700707433 729103693 698000771 717730532 562157633 986302370 24961761 306602753 213067158 978768433 581104569 743073338 259569191 504375037 166604788 332685700 106474717 480343506 427689861 479016159 360927858 822938410 783140673 957238429 854647949 856880389 357974288 748266724 81230930 216676302 100996061 938484509 309270112 806940482 84822139 679717674 312105398 418300883 63169820 444569182 354915974 853248021 104818550 774383854 308154767 848302222 604734388 807004765 700821591 996456798 968405046 976499277 558175373 616599009 557356531 773755598 156865612 981088820 69854537 400710806 105381299 116693233 115957184 118090795 73838703 731463294 546043102 935829014 293406157 363355166 189049980 727985940 624226635 913304773 722074680 878554098 583473812 658146075 303528515 458178439 374265127 406352846 345872286 919579674 607862222 609015716 574871044 947047053 749580962 916861231 591579936 628209593 87143667 646866893 259760784 457210063 39070727 149707119 74750395 966237781 554044376 811834789 790640360 931774982 718240075 928699093 744335098 921069263 711964534 777170367 179762172 627875659 338666814 535453134 511778582 952981544 176973596 182210766 33252691 504028747 26822119 705470279 700938867 872446743 633277216 750348442 150383781 984641431 430427033 930807445 345893744 370896962 136892425 733171262 608839779 897206019 91223845 856217152 73103830 950846124 834162915 962516692 716982518 941000349 355666863 661189513 196509841 284897404 150053626 482313598 240511941 694752129 217768390 730805283 484025641 871358186 482412344 597111533 189980001 458201821 413027446 466117739 435222855 582862561 412228788 622247461 300033547 992075032 907324168 999433604 672407002 842254350 708486481 953823855 841838881 865144769 31269128 741009000 676183616 785957892 565727088 835630973 24983615 262713492 154499605 856097330 519395817 745910993 287136286 931814322 71674672 761794887 740386519 897199680 646730907 682412654 103064844 350941450 145612985 775077629 328891713 813400721 192712581 413310732 122237917 692622841 15561196 643015059 638377 204782547 156412565 820427628 43410894 318931345 195683485 301143667 127583951 394074426 27083330 229369490 183310049 307128803 304782883 524499845 327929366 829392038 305435117 505283905 331872078 567358171 298586144 816093870 384660894 402497458 188252927 709186619 271367339 289686369 80996578 412757499 238800413 470330208 246871063 259065043 109644262 798392046 569738664 799142822 292487023 968005369 952023933 964475595 694069078 724190509 568696637 938398360 645286938 867473287 616130657 808690480 704185394 846099840 559443671 616779740 276546891 821942886 74467593 852699453 744290776 823871432 290023705 891532963 786185402 890830788 537432490 664844491 572092652 699377980 347311250 924813828 493725008 718144849 318545936 876640408 682173630 758079753 85328091 714877806 500924074 607545449 76326829 788781176 412044105 693170386 396748116 705642614 700443990 828486822 686825709 789764257 497346337 727755158 726199601 737110174 247895849 864273127 590543810 859662721 275502848 302659539 14893043 117098963 86187930 111648623 9394681 318684687 318062758 985352395 152922621 394564701 362707597 834777441 2574102 518798833 119665052 417119315 213413200 980680471 377541683 873811348 285296513 791689736 54565296 193086523 93605809 298218862 40162397 756940777 712726282 916080544 358651331 434208175 85539870 667838488 183686575 480893795 15545912 21667495 5044902 603186955 479373906 803398507 701887109 739612072 610738791 755303458 430681706 755382141 306882610 959777740 384203108 885688634 341052191 385449374 83417381 419486829 251840208 291444999 6586425 409893136 298203332 683960295 405745560 629001975 8646559 444780542 364284542 622659800 232815297 396210161 149354946 240902599 199184380 348507917 245158675 527814347 136643339 306869836 50084285 104009929 53882314 113735792 104559634 741042227 324091875 470034374 81545851 156838104 112526952 562385428 51281702 638071625 506924130 747854053 703535838 778393286 135601524 148974685 93745501 133976810 67481955 269856251 147934690 840922974 208655807 902689866 289461050 407751214 133552052 216993447 18713659 443979979 51893602 387479294 372723003 680257962 429434277 898356340 684933654 848869311 705610534 831475169 265469822 798996241 189692073 540586959 443578433 966578751 631443951 716409688 585078266 774073752 752298101 858953315 383234287 612743063 87006539 396869209 324373985 797723880 178085344 983452993 355522087 470770808 438463626 537369011 229097299 519016410 219836330 835064160 756874554 964561882 15968091 284190372 155319074 644153913 576188890 670822844 187813057 242544748 83289568 909666466 128491194 856206428 146818678 428428798 54336880 592573129 80965990 353160560 65414482 196621463 7567361 948973461 443434838 829161092 642464841 714468373 344437734 707827318 494732597 563456385 435292119 673210777 616515365 908915561 463582148 790536967 256773770 727554946 311055946 507816803 188562524 243164711 77661704 795428098 405401571 955109783 532053371 606307600 383516142 870441694 426051780 644374316 136550433 607939652 276553889 623957475 11576790 928619768 736152313 776688974 741784802 798614564 455532877 665366921 433782699 748363554 624886002 874220289 53352640 225980079 51541540 844907815 755021643 909870629 755090888 986804569 639283979 817171979 545408173 767112184 350049581 896485476 808631562 846593497 542959805 821667365 491834672 831284822 513633894 932847989 926939783 968384463 288100485 397205198 392929568 571979044 531610735 812583865 232117498 637172914 214244278 663954018 447261963 859259052 119806422 235931240 124008546 635616793 120465083 532767698 150759115 449841737 117225058 839845297 776720666 924960790 847261638 948683595 555677169 557597528 429325900 775484327 224918532 794967900 319597871 842453554 292741159 662158013 610347093 675899276 211537074 788126038 716630742 989420505 564934589 870712721 303262166 706028653 129994877 617941778 114828045 660422571 562289077 632503883 327423358 814791850 800052435 880442853 388895472 487586813 164018124 950118948 140540545 511418461 156466611 492033653 362471209 850786905 82062402 951539183 405149782 794775293 571210150 651927918 199810372 614959153 398344025 610792351 461455428 947254736 428722822 690679539 43568844 946131001 660672274 989790132 293931774 618436171 356465069 621564238 98238865 207893917 69825089 579820110 125947502 463300725 111213992 144571039 25971755 106517994 29875360 649470220 431069976 722605434 34779106 179123045 15634462 554875349 80975251 123393713 46155443 480725119 86416733 254280450 229606474 487308014 241597533 534539546 29434521 527002201 401739452 842147516 812703309 828764093 130961075 430826762 278900931 777871753 606226697 780378451 664027668 794254575 214505956 607743998 572653030 973558301 248169852 837316609 268283186 651872159 403271626 710372363 406885599 664332253 299123504 587226094 64419319 859435248 571680333 890380548 264173280 909721333 324788316 923101561 333315918 870667275 429562767 542016358 180787745 182247148 57980141 348169358 188019672 196399523 120672203 948018895 728052028 837930370 712253684 940886099 711191486 767142891 39020043 410043282 150800612 721158533 271354594 704808444 376747240 979670123 343830439 710318387 112064681 732599499 572607212 718873597 509854980 988254774 114217138 448133371 368998090 562936262 357114407 481161521 285344319 641339556 574589486 589907292 172345366 921001915 88221608 226437649 27700938 898005605 658468019 857779196 618562728 906996774 886850662 941925115 181855109 724644367 551244537 800777003 455659749 956194255 904150103 949943800 807160283 839437248 431052478 989851400 152331046 741409075 690210138 777869581 670545606 908958688 536808995 714727494 368740917 509131078 199769130 733354793 264589419 305772630 73902709 567092650 551986731 886787295 244199628 817000108 2442259 641127511 522879050 596892589 511760546 571504194 195953212 372563007 146330231 582510251 327580904 913819631 820023233 822385115 807975958 873862479 641293628 750095576 17685410 370004565 151877785 599038734 377227489 591342457 385036633 998192697 830610127 935396736 375456824 825061387 17604486 447613733 120205880 308234895 179478640 349791126 325967295 448276522 18207160 523714372 514366299 697249437 135969750 733644329 328838337 415710926 194570233 755288800 115636771 794551881 592682177 939192519 167434051 618755950 411135341 424258893 66693383 830587489 438613610 709946772 144715973 863550759 439172555 826631226 388335512 776096457 20578677 206629376 155658347 845444619 649720572 769242387 725297233 971686337 386756629 987513742 24421364 723147220 461425711 810467943 676782271 868183416 758728288 773770906 21294433 856385532 481378519 984738791 936228447 996896701 116915615 755492027 542104875 960177932 239014782 833517489 148384913 751985200 130034247 715341178 431651267 924793506 535469860 539351287 432232684 601227559 326940591 994101668 658046738 852455792 824508522 944091135 554572091 617875697 221919655 468588714 194246905 370475046 29592832 733024670 21277931 124403594 55264920 451427189 234251177 492483512 428920843 504221711 160600270 234695194 231656069 294882928 164316450 338478321 249688148 693635485 107132356 927307392 864890320 980490873 62436707 463908671 296877495 926967612 887520412 997187078 109273861 165371956 62280212 835758680 540713126 933505641 686814952 851142257 700515017 974234968 524954641 830261679 84392005 220219714 111027442 858924678 326397965 556163826 131277391 874105708 107734445 454993935 141795629 958933311 933268538 999986678 864740160 955194133 597634636 905333266 318393412 942476662 13059089 295529704 140732010 642009920 454728202 701506923 579858222 931595702 823346618 844062076 271880889 472690555 255496348 558071934 304947789 437305619 90137329 677066698 4683527 703033555 620963463 722891660 129332216 195101182 47527307 930796161 846732995 996592836 7409824 398072051 30466357 331743895 136012717 987417032 221575849 457621887 70784622 771668528 283628504 998551639 733656371 986505011 827084659 976801287 921339211 948715677 586702693 815276345 687292214 861372418 322418683 533712018 315246967 610364031 318149740 369962855 97027384 302166880 24373076 270624871 203102953 728020204 333519478 551424938 529244462 901702577 382930038 855085028 603246264 607939428 468716274 824209446 293601288 993033539 259482233 411663301 147749661 830661619 135491756 821957508 409225501 514040925 40966923 121935778 24398514 140685979 102917556 576375182 314703517 624326602 12407423 529055933 71347054 108489247 87838904 928572012 19468725 686808312 94380200 825242718 266837568 313134574 1134855 619821611 337365997 606940719 398343308 645009999 469700639 677029425 44781968 320694575 78161113 701172533 679603133 830973725 731689557 966419041 458235841 628206759 228036956 793300728 52399990 815875203 323772657 863582376 342356892 669491396 139595595 618159265 435710940 872297913 61550105 538208755 77089130 872869042 140785671 719271735 125836016 895443273 191286495 705505704 543881225 597224644 470537086 763764811 244496786 736820190 730332307 955813677 833112886 847055536 689541704 966021590 466374081 545148323 61033665 914059176 848549275 851100782 222259702 656853815 543416758 623114419 539231316 674020895 443805924 538313918 348424596 428799520 374673617 740395055 94547259 552707207 262012044 646537140 209616948 738032444 474954959 578245997 564565720 646324894 376202479 429435278 314797526 442388461 164963931 668668060 243145503 971493662 548765230 918346280 149056294 453055361 438692438 958853198 902399791 990916900 750659338 997298640 442846216 837423852 598425660 603185251 278064464 524127235 210522092 958944347 241463585 721138384 486015126 732349534 10935825 742665866 418472457 889198501 623885025 747671511 51932968 294454227 73293526 644141920 590371618 997360204 723159653 957596641 208499380 289315116 65073749 530680110 187003792 539975123 118121488 883415767 335037084 636760681 453123398 670527332 213136742 708397671 43675871 316758194 313446385 905119486 30511264 890146247 694708965 854897987 312560267 779881227 486303677 689853835 666199076 745229812 219814023 618456058 600149455 965708172 56907050 243218423 58273367 591091226 138739379 717546272 687832179 976529189 908521041 989242738 274249458 673362215 86429530 719676695 358463313 441332765 23149376 30603272 6038766 773589690 38007509 762995909 123583145 371828211 9444163 738894396 25082395 929804201 132260342 852473192 550755566 643182778 238897419 328227602 105464240 153714797 23437882 367352488 50415171 195117050 36260003 505103296 266696971 765503265 291503504 811866378 176584912 875595971 473414334 669760541 69599800 304927698 99098879 497700207 487024579 506629224 304949079 954465869 17188248 757692096 606270842 728793415 645729568 890444315 509745834 842595907 470410467 573995388 342990575 638364883 268914999 464470065 21418854 398106774 341130975 764054069 61854851 710359516 406834993 467785982 1330866 41459230 31165450 691413275 266410304 699143915 576044478 623865369 521645126 783181190 209906563 391185446 210515305 436322685 169339119 986308988 388963401 494470223 433481024 921457895 331727814 333847593 70342235 850742266 236421819 471071939 74920929 991430165 790813313 817064776 380807473 969408172 906501859 948295552 934974998 976248842 667790942 771069509 188803591 857657185 126462138 300778166 89448629 962831990 53266558 744941604 8905455 325033436 268698970 382190759 180921076 316192898 159345879 908746438 117312562 941589951 508347470 996622113 575040611 637198662 344360224 756745289 202224195 352212338 214874111 279953359 46149333 728868941 362881221 550611698 480999459 617584367 436279505 594009168 422143278 840639973 676685689 785367169 172190520 531316742 38785090 334892518 84689446 901352014 877318864 990704618 213958978 430309325 262226808 268318895 111584689 464954447 96603876 859977784 140859566 487693107 141736694 236826550 178769196 501147991 135863254 420880226 36761486 299697640 266467165 563630734 415461508 702572099 158100251 612290879 512102067 640909643 527405823 888196276 100917598 673050183 392936698 961371081 119528691 813560908 556297660 830911575 807071541 990886016 801679499 836146399 21275050 423961811 139376785 726347029 706736005 942053831 471340668 775345142 395951992 908394106 397430973 959570252 945332148 958813232 529921837 730095130 674230408 900001001 600833087 678914232 597020918 971480253 503370941 777663486 167483616 345087683 143689557 269841059 66742515 76079167 20034209 866750485 859146365 999146916 561054987 614117583 362395561 460849158 644380 21772989 16443646 615986037 515839346 940431106 188283460 757759369 1233097 10557054 6309988 298723652 84628366 294088763 21742828 353695117 288416851 559619525 205964114 350103301 309972849 362180889 331446671 976265312 237904678 579176998 524931833 770933518 569543263 643913687 371532388 929766775 638812996 793822201 13431826 301486845 54967730 686578589 273558566 607685443 397901671 762055581 232724344 616539013 276311069 691001192 304303039 765850668 540652908 914889348 702807281 768401717 123206654 415004406 339909881 841418553 696737423 807198719 383502883 955130477 769939397 937693659 194643725 558335285 479017934 545685764 77694213 480989762 13679737 756479446 230727633 752307411 363255480 433781495 217406000 301564777 215382764 429244814 148683185 766319881 601091877 701761655 462063677 947181921 811680844 996504656 907491881 911432484 887374106 982657877 16791104 547405273 203297755 315843371 119599837 981444596 211410683 832674847 406086102 905832882 355475747 518397910 342429148 527692798 299850836 341741607 280189116 772511613 564479869 902700000 638082114 924883905 322290378 449301735 130235778 376801841 268103758 763087784 159719123 357347300 257775297 626856913 482598876 849422600 619876401 702593666 613152042 646127621 360665062 425610708 366265102 913584109 800636558 809346033 750417038 772419786 121155250 735506311 647895570 806813435 552461620 966775665 553674665 572801906 42638558 982646524 174686733 280393792 80811783 177295708 165409584 701969449 247627783 449590595 332359458 970495259 498188351 953568260 180897811 276154866 90464739 892579428 327118842 421175577 272154758 336859043 313166670 498809541 329354430 681713061 396917398 531196822 89414006 389798844 46347126 517106904 253651171 261744296 246519887 887844784 831004866 910353046 856264366 884982308 546909294 580992604 438341580 574440098 435981403 743398414 105719886 798396297 755395367 974133184 754969759 930203390 235027404 731689398 427579716 709432921 462851250 480167821 220874110 916714685 766732533 922045938 560788733 968663917 816348882 950539994 738199066 784815904 54690404 990010491 894227413 916800832 725940242 830506549 655066212 921102536 887890706 950813957 272018681 892727510 736812184 894623805 786587907 814428582 468843734 659677532 134384138 626843827 459969223 806062164 284510167 894593807 197641014 485554154 273446870 450651020 38821024 253693100 247818612 434987261 326446158 812560716 706544807 976705558 118067933 955774096 692084610 797671201 597858743 676749099 155313781 930586361 388922639 476173232 168844448 266940453 25195132 258894054 24676534 107399390 84423551 732206523 572018194 959410073 154258307 901745262 585718656 607584546 442188473 959255571 753757972 914922834 23861320 969830152 276320826 948377082 35246996 84674698 81023105 603180262 487568541 869713650 471231000 720732465 388111474 855677246 571716766 999468044 804092261 846402594 173578676 251912252 195218978 434073758 302772708 476121831 102680126 192534471 16287293 886419560 132165509 165946662 144971040 594900137 543201928 782481654 56965059 666882823 83846295 981542205 731381549 846462925 188089562 510002184 31915030 629828144 215129361 860546289 233974103 980331039 264479622 809416473 148528326 840822443 104992957 799119701 504273708 881511296 149066125 213513539 89689476 530384829 204364787 612769777 221989218 260616365 117740380 315669266 47637200 642564650 573657323 589408896 36491607 147026490 92224690 291527945 124382048 723604454 713249616 954372578 817085056 855938871 304259520 591879151 99130454 985570450 487348940 487676350 486055982 528322275 472504239 961011009 683048881 823226512 490699011 514172531 440709208 517237410 393881647 435457368 423155423 994155615 822897555 840725972 259756480 513081836 96720507 465021529 82873746 181137771 101045161 278022394 274177795 861312705 695741887 968691831 56114328 334704896 117413783 202794173 38628573 586889546 94176965 231704542 28723673 434027558 282247263 629370695 9304524 168371657 142401036 979621809 699932032 870444133 782898001 894709884 470451388 651044995 470331791 987830457 891313539 945040987 355640658 761669016 638081460 825764324 359393599 391291294 44813575 420548016 413496563 940855814 62385941 264903797 30914765 419481803 205399788 952242949 37774615 409407336 204699070 544950450 297209741 825116251 244150396 963426813 914000752 936057162 8134306 986837439 958554784 999172815 836779019 883858991 60192172 853697506 239986273 264006165 219405646 768536689 567183410 775791721 187693758 638470817 355055976 551801651 187154372 320447662 240881245 973362422 500015889 993096761 218637941 664766389 357903464 989014740 677640497 789152616 126883035 891577484 681773847 703965179 134731645 904414424 523447008 759110314 578455361 849396551 135039407 630590877 76012956 490302626 199270661 440248570 217006330 639742931 416166247 711425541 444195592 560183152 294166267 757895851 568578787 720305289 451549806 957366638 58272839 657666241 487839278 560718192 257780502 350153886 48938817 258506943 177401616 239776943 209839451 972987021 567006544 862839007 206656705 209015447 184318480 330908892 223703942 489111130 168449122 631957070 164914311 309257790 20597918 374324821 124114383 836229880 762782522 907335513 362625230 568647113 483923849 555264437 1711643 743681491 69626683 930952515 693957421 923508863 333583285 510872578 431443649 457493799 308976311 664130430 417755796 820025034 591328797 965861539 181064042 664650039 126199727 244760706 112927392 719185018 654215355 792860299 783717082 908400463 253280240 993478736 703823189 734365198 28435904 826346087 204171277 427898702 195957799 852077422 719435842 897842612 768905430 981934411 116684805 600648332 49271344 571913634 306799510 740985439 481236176 928463168 702172662 753743472 499154147 851213043 94727037 349641306 336122924 897751247 711817230 772561136 276719029 971322765 640327408 717245236 289076514 925099783 360255538 891525164 734691981 878859355 362418318 661156715 353983871 833194749 473623674 645953777 265685205 498595238 228217819 283384294 162411609 827906968 478309847 846140603 508492542 527531055 73682481 686633765 434149493 909773081 406557537 476267512 442375053 847491273 169401022 755693965 533258800 890353158 17808254 688289925 679321342 955968240 929079601 931846454 921681355 927939706 903908842 912548986 132333354 796027839 211970959 445775932 71184859 792888889 541240991 711651403 550979493 626723285 286321968 523870958 157068861 275981257 192276194 373246652 7608961 818803383 343098491 569429575 468321641 602721476 487843760 622604306 504567276 803566930 502933127 845686397 269807598 957954470 504047954 949657438 725171328 861908758 232601831 488798942 30092187 128673947 126409280 882171075 651339259 746392500 441821315 825986984 488353294 615876845 36408903 254007888 133204866 348277981 28155355 155832199 29918891 609580325 202600219 882922211 280342540 486008477 320899182 493438598 330902565 893539859 66477133 350126689 26305803 65864609 56381307 458200808 3097070 92951377 9920646 807669603 287043649 657736717 411279762 958634643 470993551 787194891 255766053 573747638 478069351 570583005 245959857 536717685 227302453 789340546 599100005 882439007 340615893 644512991 182353676 599567879 570436359 626964441 8125207 558516714 27025538 777737794 752649371 894295857 324353204 447850132 411852697 644681349 164462097 227307001 102318964 185628741 181651706 478007693 32091546 405168143 238054668 395430076 194723953 668638599 328368610 562516953 144632744 484976628 207019474 970005637 761583383 866860387 468134227 662532877 661219592 857488055 669156374 698978348 680347414 854265204 326013493 787411393 298355838 920598215 294117749 405900761 46870006 549399578 530709865 772971565 446884755 779236135 679967695 693900193 83338195 109637586 93494054 101969777 97473333 998562117 461236542 795893035 563201007 647731818 125073892 565521075 396964826 845191904 486252349 537325953 181734073 755223406 133999569 690289790 337700461 861494475 36822891 84913870 48462839 542203651 320778320 689014790 379377070 451969054 335915922 864421265 354502931 474196133 419122994 531044897 332733859 588026519 43082306 154557160 95084733 961981627 500970429 527173133 295913158 639878687 19808366 119743961 82048452 620656134 191407295 628255731 24684522 640791880 44254710 410805272 284995529 993505809 982427768 997619487 384627974 894747095 77902619 166810133 39135120 228134322 92509164 365512153 128942583 753577601 522601941 860072145 75882361 372471117 261560248 924272913 598684115 984937219 180734432 901042368 31241648 45703038 40527049 660902392 598153774 899726406 368652028 699872608 88963378 483868433 151529802 406292226 104395654 180518139 133703842 772008252 421265723 505962911 286056673 630994338 207196219 757414898 354108505 821702568 300722089 365521508 64113623 807933704 240912711 703589354 560152613 870260761 470608692 647358849 203406098 493366458 272116605 835693482 194840774 354426996 180330510 925311590 623123806 757423814 487505413 822475557 87740080 388167558 351264340 422594605 108973682 915241090 610298805 952089770 293784909 450221089 270535631 987184728 376241340 801836335 403975415 570183596 341019918 853015468 254973439 774997888 547400020 944269301 276040759 784148841 402828103 918384658 705840886 882137752 320322827 730618092 370574738 925211600 540618352 814692232 214095084 246277588 67014048 197097778 26248975 911733763 890312687 914035255 749825474 771354035 164820254 720600430 315934222 344090910 118630254 766770423 514554223 516019155 308427674 828914521 19302167 205560350 150786903 813319351 70155595 394886654 210615139 900145779 850715013 932862639 813327876 891405524 583084089 634308678 378211155 707881618 122378149 596390622 65193564 670472964 447242155 505756567 339701914 383716785 215132542 852745127 806309708 925651966 66424978 325490000 48447901 280995217 147358032 367567684 168314432 508605247 302135031 900645115 422450780 555135223 110189056 614812304 22945143 611197221 328493079 788003585 461382910 983661951 56841018 207158848 180816222 606044101 222490960 230650504 117066908 429893326 201055111 581839832 23456844 939917823 256262783 369962124 7324719 295192401 252046465 672848602 425088705 818552203 200586002 855960580 555958533 846928200 88058302 719944209 308912270 505142010 34058622 642154103 335894494 782624921 533521099 908025267 68342185 216594019 124068681 369306466 112957649 575357873 296485504 886560541 202242232 237431967 148701629 758559071 726468010 954813197 77052272 543394604 375625647 854271753 853250411 961685909 724497106 813661187 800985231 930801800 329355694 567151463 307788309 555068917 284877784 689611847 411034560 955137669 317898893 580532578 392428232 892068458 196277977 989560528 974708933 992545216 845680189 999301032 602396294 846560965 139691303 908850086 273458257 510743843 189794101 569614463 225716054 886564791 583560420 973723108 557119871 589606759 459049643 945308933 428526808 613286839 460379035 504785983 105400345 173266228 122646997 690591315 664766529 947149341 689704294 848953201 443609057 945265365 670751549 879540494 100730841 825336949 311682059 977556069 391139008 860881392 54140087 543466247 2175796 470259551 357441067 470738535 244354879 691534509 663163573 743462597 646562005 649227730 119340541 924327132 107096213 212554064 53383986 919048321 735063463 897366316 311520011 314968804 125330110 962199426 783534828 920316549 653490079 713686891 545320240 770078164 48442886 307170956 138303975 520250276 220977376 661108776 101893501 355703562 190767635 770694685 425990814 978827406 910754951 993457409 810992424 858972157 612079563 870334223 566143287 617552287 547120438 633716234 85120639 897047978 828629821 999504491 641281259 695072850 191960633 504307303 183264764 719949028 261834335 947656058 200458839 903167896 41307129 546867192 395401033 613416566 582509072 703813230 65665303 837994945 139594566 261776068 257880225 439571015 397248562 626041650 543690491 916132093 215756777 268435612 85774899 285292245 178975068 959289741 450102049 656692517 204714620 862140724 618312209 864190041 469086711 934287707 530234640 637459297 484325045 759395968 131005561 955459101 473716371 512758219 86562865 296176740 16763786 90574729 37829238 465025866 386468834 508771706 130770101 249721529 35386702 679397840 453753844 893366475 597928833 791330713 164982071 884111346 432088835 857255392 257445917 409032070 33656995 550696888 7577176 392626590 148247770 255594751 184530790 394686822 300756327 717382904 191659825 329623412 43782649 408701164 289413924 993174938 65155410 761956153 758041892 841115965 609573740 853388638 693106550 788898672 674269812 881284116 715754543 983003835 340814871 600210349 518218627 583316981 72050315 815969643 358456593 756980020 33263680 352315697 74353118 151345997 40383814 125653446 22492178 386733353 221458533 592712686 398277282 757005097 182161823 334480327 385877 228698887 133891683 319536735 83043248 374848036 131642750 344285839 208102493 359656446 140590821 805269758 171603595 821154066 601749191 789790120 592282212 810655349 169345594 325289963 59415283 368335153 303622873 447361857 78755207 905002218 621753155 701885063 328855951 651230887 579793763 833514636 217689419 603807286 80156150 954804227 534321842 929853097 321216795 774358540 626914773 714072324 12267526 505306825 208385842 864869978 269842944 751992195 126068834 567479627 86522602 804582394 791980156 874776179 186340055 425623849 21409099 352377656 94058784 604505650 134851264 481395519 453094054 551428041 145910274 390203372 224527998 277068442 115877756 777831598 270113088 315598563 288804138 947456841 667316299 867858313 202876950 392285672 10900228 476389418 325313002 892460037 816945079 895332855 61514626 635741469 623005255 761327654 678083018 847380747 617860638 694016499 347935528 971661663 838924551 842379563 529119004 835026885 268552096 693907043 419356448 519640297 153275688 948807601 165890118 698220485 171283551 987207145 264185803 989812615 823155984 973544643 732595896 938723518 627168772 898966949 162142528 702091459 104694914 751976327 20144870 903165202 672395678 786305465 784261861 870434317 46480436 193755045 182669308 953939939 312615863 688729933 220254015 391321885 108652247 177706645 60966263 527156278 335112883 969667321 653419415 890339690 115837361 291049721 87201910 383206723 92403778 630929238 517509572 765686128 319595086 543365595 117384816 923638573 393791274 564084367 267083732 296692577 78250928 806601150 211813674 449721440 78473718 255172676 188005505 356814039 82653349 586480541 376514119 878657356 808663199 913756234 913160440 927864268 791821611 887483650 94131412 400610700 266175275 520003493 442696014 489219428 315048180 534693070 251358925 596286892 398926020 628724830 400227199 496323597 120297102 346472727 302205178 475441426 342229475 356024947 85966858 860847570 755845323 843553045 728605849 930974108 557105215 593204616 380025055 893369262 655518461 743558355 458911425 469340678 114951774 806739782 361835570 582031363 318600176 378893086 46712704 490776647 483942558 618355373 162297493 199599603 122950641 977262089 400889670 453358350 141123282 365901700 84294383 465430029 212981274 675851449 20681803 747955533 611478964 720625234 440126631 773343209 605904242 858230009 491432580 612840337 324030264 893321583 91272973 224343219 94151949 589219067 389925334 829529113 511950143 972307512 3005165 82318253 69978168 444856533 54712790 355879569 238869947 427688175 330438323 593178374 47148642 590996901 415371077 761220484 421551659 918122788 435632611 855708594 139821703 329255381 127478207 942349435 194468216 453293016 631949 706691578 552357781 696408499 180141360 863342798 823665439 833740567 137729944 431559960 100001186 316826594 306477013 569449469 173812016 925441067 41116686 627811931 165723057 259274668 257584073 406994931 175794253 744843423 492790077 887263826 115730319 526902423 74857792 568519629 4821759 379788406 1580762 862288830 274186762 870420329 312991339 745168014 484543614 534933864 458734780 942525916 433236385 777410175 445685069 791114211 231096344 340953684 259849594 507815184 447519823 959775320 47118335 966338088 174228941 786385665 43479994 571371479 501125961 689181979 199476157 849825430 700463458 795247079 344485827 833487349 252193294 989448440 86545413 145073385 112415807 487895549 474591194 666223782 127077468 491248091 155374793 707273138 509369984 567998531 121815351 502036157 305293625 537038858 318773772 624103684 311717878 597781699 21961036 654951992 429849684 549522659 103202653 465350824 318436884 822614365 705706990 830264401 117747539 738196655 216450902 715995089 696597427 907085159 611450395 738712471 571793188 801370166 74085318 634287357 211628082 267773310 110383877 298603521 276568125 581316441 333723892 608107085 386723774 574795697 208097796 992938452 829032306 854595906 669008889 730175950 725399356 973459129 133641632 271627712 195132609 580239479 167134210 246922879 49901375 882485081 197635186 321746233 258305120 708890740 44293890 376017631 115541553 847633325 807958663 815950151 485454525 718869162 414938396 552744672 87075117 788355093 191030094 883896195 29083427 434515342 63948243 200059625 57905054 543062558 325615667 907100966 273840881 711287836 103115830 467505719 238618687 424469356 194151179 917118748 737021508 838541673 365711877 823660809 624142204 684043983 163755834 599057542 359337363 644175477 274470949 879364494 695520957 935449796 366746703 758425740 668528949 785954951 466737038 864528010 1303006 255129472 45206520 848104265 266805373 499858260 36691603 957607090 929971937 969765057 726875059 994466453 225388984 798062288 271800644 818548261 741840415 872141488 6152864 888512369 865744777 933003593 203740286 946949135 714901131 843416627 518274646 649389715 131694087 503630767 480211656 772409786 307558580 995883732 766296834 972752290 334964665 609871233 189274030 293467690 211685214 719611500 344244474 372250929 214341293 232884938 112193887 226703450 6281864 760656261 229560696 655364221 504901421 625732817 52716966 344571804 80122342 749088749 397545274 469972730 189415121 385258585 350645978 826652052 484913950 846775000 325283553 801625275 527947582 613625987 334131550 727919142 157980833 649740960 299401278 377544496 332284656 734092822 672989061 938758764 693468065 746334241 18625182 430725572 153979176 200532590 117778874 549034880 472342640 653700215 301732689 600564866 276863525 912278688 768163562 773680314 720109006 932999202 924174113 977885076 852372323 921307490 321481261 499947592 362709136 780126207 570250644 925412509 375944261 639884098 475929943 935852378 159397982 540346001 231551144 422844050 309247658 692628178 327201656 843298645 157438842 714752613 540067021 774590114 541666979 796914489 426837987 736802314 109701846 657573662 89991673 122644628 17712403 254046530 159089210 464576302 122032591 983589181 351833839 484566132 125395445 350690863 318065326 353254475 270402731 338858779 231676153 948818459 904764479 946084908 891758709 956212885 85429900 402917877 82791190 772267626 423056874 902508629 446054930 743405454 253315507 473573633 335193402 949245860 741551833 985239352 20739275 127597388 36231783 688615182 467748365 821600093 18642901 937777332 54676527 981815116 517826643 831312584 112206656 888345370 589159427 830437950 65446282 686280778 323450617 692134247 489799829 957899420 18865757 512632487 373198610 656120455 197548948 472699643 200352631 227204532 206566613 804000634 243967301 937735419 495277470 796641789 360420319 731180792 450637816 834613087 208618277 517621041 174105676 609771794 36925211 573833733 122920489 218088104 187614094 722740274 57441866 341090097 226884920 473976753 160341170 286005752 194665928 294781133 129034674 367309239 111221595 320645072 218309235 270569147 12210147 112186348 64143220 811863199 604860591 717272426 584242799 814813931 128455570 591793647 307793181 738232866 254950223 580798684 567564821 584909133 334747409 525119530 56964290 677548159 193632303 683804105 194507189 798107810 395960392 649760541 541113934 772535088 349452383 880029746 342005033 704584860 204863821 270521844 17539117 545029883 539809706 795763365 339727438 988577291 669555816 928848157 630563712 824223844 625282406 778893845 489570188 856169098 58472892 331933506 302208127 937827368 293892414 387613410 133083414 287576164 14146668 974454956 606506642 767779961 381101795 516680405 359439107 812187165 26967129 930160068 85682996 785806599 650580211 901966246 478583286 581169223 158056611 379206204 262727231 290733503 142776236 511999590 133421507 952942589 188327914 893239421 403947396 605433756 447583168 658613460 139143925 634783456 15459367 679414269 569651192 721248925 558663314 719997426 606331567 823613909 270086444 590929501 542709889 863106790 763360882 816967556 789832100 801655635 314915513 908878573 46369190 388205364 26763979 264075680 205193858 592177686 160934357 525674488 250079820 639406030 455734578 780144144 295371844 646577922 192638500 586469304 165113925 624313813 370122923 934546957 741247115 854875922 786791859 922221050 504317602 979953187 947487554 961130937 157607499 221444106 106072137 303297278 219948694 633273303 151386396 393116458 222837884 768841570 456025574 973730788 907606906 957638075 25271735 997228337 544126615 822323397 630227334 648774435 550956849 874304284 23169538 157226594 71060037 280798805 154590028 759235394 51315834 585616929 164112031 380494944 258956937 752181415 672099851 992410703 127292917 351788310 274448816 597470688 781980 220021399 161577990 319411567 160391595 557900478 64734118 195629582 41673780 575860298 76174327 214914571 128222979 994462684 169054376 399302463 283758765 598321852 332973100 937752995 24421957 996168177 236355419 952815527 275471265 713327298 303882334 874061467 305534411 415979222 81322761 972812653 305966574 427051840 39246758 886961804 735371718 851867710 509307702 734796664 594494086 913773133 459163009 967703302 910088518 964161868 550096796 569333318 335292447 621796328 554367425 869044775 675182728 840961161 793176282 822196115 502436373 964891905 737978253 913341202 901852592 975992970 326954593 520466476 509529322 743524582 292557384 320391484 279271946 430648803 268647140 832983534 404604017 912575706 369014887 377693945 65730159 91641402 57339299 327934632 190873662 415704294 14890349 532004540 27877116 663766565 356140613 968322308 29149040 125610477 103879250 952964599 263461262 657103381 240908715 447950621 85330051 988000521 721151456 973062679 648955806 685750791 409420644 483455887 73585566 109892528 68558863 731445184 373287636 908333510 247320368 314704785 294920460 490945632 379892162 845361026 414682240 598746650 496806102 756056150 249896509 793643939 330900693 997233372 25465222 396052709 393903340 972528125 335872281 921657976 64551418 165753920 66797225 74096205 64348852 971106623 921915636 946095537 208217640 734097507 170889716 397601252 140915960 837436279 442473651 573597467 92554906 903092791 219754921 398918765 111782085 893339169 671048332 949004887 774606508 858246215 399510540 596565586 484428789 549643398 411083098 813544499 341689256 345394561 6938287 556614853 444560889 540617200 455461862 544052425 206713373 367239256 220678202 860899425 698243884 865131620 688512113 868477173 249833214 324050776 294082615 760462305 295570114 903629019 268712808 580855539 436477833 729081107 559310656 985638439 684047509 804158422 379924747 549659556 364997615 570168955 145645232 345735223 299374575 499133392 489170292 689453458 461542746 612897123 554712444 771230699 219812296 822397160 444314442 908283368 204383003 320366666 105902039 775429512 451155304 556372040 201761357 914977921 900003195 978744859 7071084 359019052 43969510 745726382 205251474 265739800 257334964 524063059 415883735 831395413 355067695 890270677 122035881 847098719 203198205 561904861 299332921 360830521 353549070 678635839 42817221 876980891 130870885 839755974 108982466 589664776 503453931 871826244 612931171 818167381 787934788 994697948 354096251 535721342 15643318 352695869 156343925 278054775 181808311 404590212 256231212 738153806 521947964 531942799 172973078 303786652 172482187 792693916 209038872 745755771 540881227 754363720 326873922 578505395 233063508 668516297 631156784 795915904 55763022 85474110 19825524 445650172 19431907 274693607 16864487 557466598 546438589 953354530 30807705 46975086 43893322 990255128 118008382 718683035 112820767 641644043 413031323 484222986 20487694 215471892 55562113 190367357 9959295 249839310 99287395 475261646 26332574 334942679 202633190 626442987 437356121 977298154 210153275 379258729 88804105 745424493 230942990 994357728 608727187 983237161 406672506 931415549 433728232 893599044 769166448 801288438 537032935 920799405 745159289 840817821 569729213 807092664 720589921 899442789 818568299 822962621 559422891 637048778 196233763 516218369 467524610 789458191 99070414 792727012 752159297 847311951 16674064 135711920 5299894 212581810 49200655 298038569 96055590 712824591 64451525 480890417 52216670 791004868 286647049 999281469 318320372 691800300 556895413 870221478 215098176 815483570 228702027 478003611 194094771 356604956 20585679 58237877 19172241 550540220 116985413 649136385 484383346 660649406 324044405 584487079 195351560 359382672 169180042 343733099 328277002 431528861 21396250 846703105 544313850 929462421 801771200 881177727 377533534 839779163 197473278 404038582 56458961 398784951 358552913 934843781 389320268 879375165 850399495 857375134 278870780 641284054 40359945 315808115 96901267 289361993 265967396 435599230 194537282 588188923 66794468 983197633 340728996 452648182 356001087 966436852 939126587 972274075 939311915 990467634 224891092 524072383 159950424 949448313 454866503 902849955 752848240 814629857 792261436 865883771 583009043 889256579 318339068 383961623 348723634 750690773 632519742 914136422 635942705 906526055 317821593 733529223 115139681 468288634 462945260 605871532 387728001 582034198 472725812 940008191 288612430 908037437 648187872 842148226 528684902 533254493 420418542 459395223 350603226 694234965 273162745 987890672 35761098 676432403 136944565 987435330 860066007 957834032 204204067 685005000 347527165 818805763 145627104 712301756 219013016 782859716 714458970 862501480 299774492 936429014 347748423 804993621 345277393 864133253 125753789 888227658 261678034 624191768 557582207 693751411 441984188 732854716 580873958 935958689 216024620 782442123 677130543 782972918 324168417 785585433 729078248 823628599 287141891 315408796 170983997 405296012 204545718 610398847 447538053 507808150 419467978 711384813 699833462 721689944 654332522 761080802 473174811 725231239 97385207 730065020 525573001 608990185 289857027 785154068 396274950 752993966 22049423 814601015 378667790 445028907 408173546 541786357 162144893 729307190 21236747 530413319 469829849 551762650 100166622 781456874 613496482 773105545 418422315 989364181 480221968 970594642 35393622 667407378 462367364 551985134 340189070 773854986 536080855 864372410 415496290 988474207 5326229 291718426 84692093 738995616 54561880 387043909 179570299 290148224 255366196 279910257 277427290 641200094 614696461 843324339 354307248 914769193 145519460 429503977 209475496 336367602 152153655 682728293 8603691 156269071 5020538 953556512 798400698 971384151 707430681 765519714 440735551 702564287 149966304 627534453 226708129 373390520 142853900 691823942 576602799 780582412 218456196 450039710 81548597 681141253 232430685 305784512 299244739 319726618 274627651 924483374 794169584 967019277 470908069 886726673 93475805 613354045 331650073 680711408 87264501 248835958 217104651 474038957 40036982 889504227 728841822 731711300 574722905 730645283 217474946 876862724 220687575 823811967 162109038 279309162 229917962 859980749 543217893 551269362 366993713 638925725 115569568 723510373 603418621 909225384 158215102 212318849 124682968 795530211 184221030 670883647 148636274 600872635 260610390 878007599 542284273 765361555 78159029 974832872 180547383 752357413 192467326 369776758 364359841 879322558 68225204 395430638 41828634 820947695 290457584 381769258 177623541 431445160 312742320 765422948 482059284 976500181 51431216 404635387 54966639 364857182 302867249 809297848 384054009 758411033 520045890 840670332 267950749 334996068 206880119 933565755 167868907 639066252 240767625 910124049 658485613 725727752 130859322 604535436 443964892 956245216 96831273 187253704 147766129 862597564 729697733 864026489 341509681 738089291 359666953 753566565 743575543 871748058 806314376 809308977 83586525 429547255 231138918 554474892 458926038 860054569 539729451 602245748 337165904 530643834 100699661 754756258 473146947 858198010 184437841 568567091 478715518 683123639 370123019 794457112 335724780 882636507 581377251 789673193 702476732 734156328 162174435 223035522 70302865 297129816 288473298 733865490 645769028 932625589 404872980 746464862 561369585 678927343 162938806 399935685 247522415 695703884 574536406 820710595 807970270 961210235 667611286 688571674 211994883 839172172 730311021 936735337 277484208 407296861 221353179 955021875 714694919 849603217 725639011 783082803 3014909 51407852 17098293 824445051 15956056 166540994 104408594 275304712 99586699 236795575 43848153 256618383 73403130 638431230 570910697 695552419 312105555 699385177 207820335 575605564 153427262 908725299 901115742 976154869 840152991 984556959 696122926 937571938 249103840 340929997 78885844 384511778 167387992 505424555 398487892 538115611 402736284 705836664 420285208 788895158 580327582 935623049 271110807 756709483 575152440 850889667 401370562 829952389 628211223 798397418 236519391 265101721 76992817 944831504 923626147 938377038 363328234 759131205 629816257 774250587 430902664 438905074 436526802 934383670 538978101 883936903 174672739 738929012 620370786 856166821 707168294 740497784 188309384 449259422 45374566 416542896 54793910 400277723 347440700 965821253 268517933 738441723 183346841 281208154 198977758 636215716 635254516 918625057 543030335 923864699 866130855 970651417 877986479 996397210 860108920 951162350 488509167 700173777 68134677 964101957 692015960 725173538 486515893 888634787 370647095 837020395 698001944 972132479 382379250 499459727 188561415 644428707 129961235 147624826 35997845 180057528 47230817 309917347 145667833 615989110 160773937 893877629 129629644 197360811 177111545 301528293 260019759 497977984 360304373 934676885 174983547 718752212 667285930 670930065 333729056 694270420 250884502 511700420 278421168 902599175 796988452 810391164 622527275 865351601 673428698 837097033 160532845 179446738 165548560 241233049 185637203 827938436 226738975 708088959 58432639 215751057 211770691 318360144 214918335 475483272 101953251 430470160 18782174 92523643 58034656 567400749 371016201 394911939 22989993 471562661 144077107 300448407 33045223 257115027 234297039 421311766 55395366 581204417 240724558 807052218 743052807 801680971 351844367 787340418 214563691 838325705 689240783 856682735 303050363 766997726 459908003 722815867 353412512 619172906 70987985 550255360 123464491 936792132 523236147 962832413 837312832 983054479 953553372 989795282 60214662 596718870 311474479 690255593 62300854 245070729 227605391 279923256 17455715 798153829 796152512 818126496 201827914 309449431 188197037 642397070 347775193 357947222 212148149 803791406 626700583 653326125 518390220 559594544 411435158 964767124 322032506 677614051 143881663 462273989 34784877 121505153 24943229 673162133 253204335 634657315 576238103 853440772 67324790 466994090 395122918 775181970 696690130 897294389 42194102 800462092 395147652 527823831 335139639 345346669 177376333 714603928 377862351 416674040 21269487 728728945 262738890 703539956 576444951 956177343 340867791 806449997 711842380 972009978 18791858 727759140 135456683 680136082 448967865 560665609 546830806 888298260 520747312 551538162 348022692 867123177 474201347 896975509 269458539 878741425 409905130 584210795 11550501 333387940 203489341 695861858 141643030 180246251 28323083 701882235 302003145 986163620 650975493 973030868 277577043 343984940 62274088 894379902 367464897 455930441 87329962 985061633 86004238 208708878 82749534 723062337 59971324 267411952 165653920 745649681 496391246 747050225 670597049 908337484 799468700 923216527 752149252 993949960 888362122 942500320 700126282 914204909 810914028 956065838 95472972 455398726 346945701 988297723 370934709 449735825 234995872 314446270 43473515 350105894 158686187 997858055 443884771 513447791 261600064 894809103 112992270 443810489 69569334 337864450 179614582 384084895 171277357 841592107 416487060 523590356 500993704 565623435 336224028 897680883 198517225 208592511 83755111 177306982 122654081 605966236 326692533 799255738 280038425 631586489 407177570 498129143 464124583 600737634 464284681 718164778 315830149 908772146 184260680 478471233 454582172 833766384 708621873 811498544 539790944 879688654 833773762 904684637 353088734 885471957 849137172 928199360 737211476 880479512 775064447 884954720 770031344 962253959 329310030 591186799 3853427 680622773 250349723 369986234 334807590 870377105 332831612 829939401 791396671 881382530 410159969 756586232 707885810 924965537 60580174 454608544 91816094 979148804 686559914 919791411 170960691 207307540 130110543 784578837 377387289 910457504 244317183 787362120 746458295 988052660 955479417 960112331 407462938 542777187 280283339 971324599 398947194 714389379 412110311 741533848 583574430 671680042 671300794 938981616 464397209 687050591 265224164 550793989 322925033 903369218 626411068 664600201 466189229 988402455 43469110 294150720 251868190 326756130 154259025 360052576 174772856 702137636 690746812 809223654 571824798 688904818 542480854 887635617 607994449 929599164 479476274 571332165 86570879 256491937 235312351 622876900 236317955 546498898 485384813 754298541 390693177 859602599 217841800 597428787 419055176 983926678 664348038 752780318 269163863 355002617 99368872 126443705 68550214 659152396 323158361 401440020 65402089 253771858 132746245 809191701 604358351 752348794 722402883 958188766 835557754 924480233 263016257 727229930 178977323 567902810 417933730 771795105 96745310 164511229 13835907 340916664 157289650 985681954 784019083 837603630 360943711 899472929 342123059 470638342 134396304 955468478 503808556 615068945 440375800 531215842 515314015 726040972 92068133 371425240 63142385 291374335 27684674 70636585 64169188 767758058 708697593 922786716 440355387 918743290 123082310 824044883 141492958 867416396 746936705 887295012 502162769 556793507 382272275 949754575 881001767 949368270 632842687 988754632 441534863 688782251 466857518 479643202 146282234 966510801 729335836 849496622 740753517 909267120 229329788 841492586 541387904 688924511 59880531 381927702 117444590 152231986 46168048 153335294 109043507 649370401 150081795 685162493 146469708 375534270 317263749 411379611 59219900 710033143 301249633 716614895 640209774 795962785 96428264 409298713 58267155 894624288 560030982 693051587 323536311 440101751 209262317 841312784 45826946 207493634 78535890 739532584 732516501 739938627 509623409 616897330 421838134 464242772 53675853 864508572 465823874 986861275 620324827 956533941 772688577 854251635 331046278 956099748 593031739 687275815 568517602 742534410 440992778 916974109 224458353 319649106 120260525 359020687 346379282 952622891 72078644 918341108 482241393 736268914 437098408 751225922 172362026 649940482 59236571 283004764 180006046 954898798 65167652 557188880 129381922 274614921 263485722 706432015 107493073 601693212 18840763 596295353 483318272 866829305 70019773 83188044 26434069 503632388 120234326 891225459 34647407 778782548 234228634 295316945 225089143 792619105 29358496 744160018 560765419 781385468 1954299 538035676 185932847 913774262 634657694 837659826 386001908 608639573 45361098 266175965 225569908 547962922 367709174 822634502 389163961 575469905 391651017 815220800 701414911 842688524 606079275 704654283 371023624 434514292 201033376 546132625 335789117 666622012 654905701 800819855 159564531 452306580 188447110 455721357 209670918 804299752 22801165 262578032 208658589 734120382 573352328 867968930 602711911 728005332 459015926 947577044 130036784 384600579 181652753 190184619 24638413 861065330 54026175 769841229 293574619 409925231 292592809 977678068 573948915 944091931 335745258 440830826 311202558 951833906 263512633 890520634 147356903 642037896 148765545 530046235 357220794 555755053 324248729 939680151 935588352 989914777 385203868 593559644 546705927 984759752 278815612 957298366 111108514 278190204 240430670 401449620 328903400 679423788 485390520 912414238 409298060 628659511 312233159 791117436 465514523 553070104 217783656 752514570 357631183 982572924 359669352 932801561 93257566 654002826 226592545 971251739 916924386 930325211 292738370 356099257 273475299 314111254 201529873 894810696 825723216 874552372 495254404 943556651 386442616 467701313 421947504 713219990 191882743 794113008 368405491 694235283 674870152 710186171 263124934 540578154 340626817 860605822 350399110 372272589 316134205 685547819 567263554 926851176 411523610 897982449 874656010 926599656 145997098 990754775 709641544 823758853 595766276 960808136 381919319 894675448 114954725 534114296 174696875 536122140 95605754 516038492 339812743 430782242 286416957 483683440 483635157 496367725 423238482 592025675 512236363 576016240 381907731 807329953 520683617 931396119 508452830 748767167 501525166 691125916 464583224 857340376 569359971 882011861 559357968 859418769 758564271 909579455 201328405 948839042 331426560 727990851 607934368 619872853 295167889 539999905 267283918 871712626 202182937 452706197 81916980 287393699 60831412 282159149 259705929 797590984 660503660 981898781 478705147 898703208 480050632 774200891 572596881 885946836 884128916 957912322 223985865 862987537 427861673 740530721 257159914 459281144 112031642 482878835 467097559 943359519 44406231 824124810 686451066 765872839 83276299 398389471 82045290 171575652 120271553 660366567 252288885 263017399 3755844 124609385 23109166 608204534 572039254 781129296 281098267 506086481 315262957 816538484 766375579 832031693 275968626 989625486 495539973 659061473 598374483 870478375 383151418 782564419 473092315 797651320 533903836 993771821 387083941 387783321 126729921 457808721 155507905 892750086 849792532 863604869 780778112 781329326 744209582 820609428 154130036 329122027 27627193 565926807 299621745 393935032 252601626 296603092 42378210 266048513 90362656 934147566 689038563 803888529 689141808 895232929 853088022 874781739 76276312 331651568 274359808 346924119 308118790 705848071 477415503 852350108 125324972 511686090 179020048 468345856 40793304 224381134 29933394 624370281 171180764 944496921 28043294 450847377 224850858 946249929 47172729 94265846 11426765 904606888 677880745 952635930 438133868 731737801 571691133 985311769 220533642 970754747 219317477 842207920 725110186 987013047 916914692 985685727 980621044 996282050 403446074 970519378 112542211 151435117 145739856 770248014 694082074 721408129 580655596 738550061 473903992 612438676 40331114 73926608 48148134 121304851 10306674 666341131 160623841 955183226 505275417 706300479 265644885 281953427 274515628 437572923 96018521 500646714 313806270 574782607 175030455 719389383 107509740 321390645 197716959 339597663 280795335 557367567 292842745 451119629 11443820 799434828 392220467 580948584 504374264 765754992 735473716 965752918 283545843 834476757 469641634 735465918 530421547 998320813 44536109 465914684 301100857 535760897 407933128 693213294 322742987 557331606 510748894 572806090 125337870 432113790 109186094 814071578 142705051 439151782 416135330 948808162 631961213 774963039 24458016 201324909 169476050 872814212 334325850 470856720 198089278 834599431 511498912 949002735 392263929 936141802 147916623 963657399 44417906 903791248 68102696 206868110 176311039 966990058 935477744 949523765 908337933 969955494 226314360 799293283 534312985 686584719 299834149 994074790 217016363 397940587 143189117 258459858 143824607 674204391 153037300 541213492 283443992 771265776 432894959 852973907 481270971 841695998 119896946 581775646 440909815 689655523 650545028 835775991 513943514 704219165 124109512 256615666 253447092 447714206 259175129 428527172 333038147 530860239 326789937 406609676 194114790 767696238 740843970 966294057 42321004 835358400 571935990 916264627 894439978 926102085 114220200 756259654 703504706 816398041 483399968 630376961 5529239 815806324 391004572 458962186 188056391 641108414 56084445 300586770 167446082 694642260 653822309 861335302 837193215 844172477 582443762 983153636 331703980 360203025 172113367 772811698 256585738 994199541 844863269 855720460 377665194 774243040 408604541 876469614 8580283 256728309 109761273 459517783 99600105 556795272 334454605 995949912 717530748 813096384 568274825 752034000 452984897 893617499 151511115 616672636 407298165 935266156 512396079 577562773 533191573 669818493 241750148 528690444 502152719 788676621 283176123 977363341 95761570 508163230 165614324 718986778 449580977 818865319 743252204 752242793 112855530 449935214 121729050 917866760 720453950 852018687 423726513 662219901 213937625 785014030 624777110 970552983 562490480 997170614 429512651 970842220 725991217 918172408 759351548 801443600 649376788 808884470 633693228 758505155 524505344 552124337 361463905 437827314 348951619 602093104 80078952 288430656 68458967 483655948 114032682 385886689 102870388 272435277 255813669 322657958 45450151 890697908 850758556 916640164 93508313 804542064 259960255 393524000 372269953 605534542 444265577 602234717 218854187 491616731 73914378 933391003 410182527 860602346 43183759 888600294 8077518 250452667 146959867 882674700 528183957 988554000 142364950 874639625 64963271 666258837 393460791 996961136 491355490 796544335 332890526 381399150 380647999 556267605 92549878 530340297 501323686 672437107 558977420 600145319 563967875 849405587 309936450 652507255 647334068 669964636 428512541 731528478 242472968 690927937 455731847 622725094 251303975 497764173 185408630 337239711 112752574 378146626 8063077 868726481 544714377 845649114 499665831 844342381 329278178 893770345 406000850 744188178 157320262 849409704 293572982 735194665 505928189 832713988 573441568 585818563 321586948 749450174 385913413 687475883 33501392 459270283 138596005 451090758 235432423 768934100 208364650 541414527 128676662 448178790 57189087 199580999 168941239 574656990 185637115 826130742 199159317 387456036 240420815 357124819 240137928 667201844 126852088 136046201 22373314 930818515 177368090 918213574 558032479 779542152 381916708 874690987 234741663 721614462 418689651 765868104 252939499 780612026 55994223 273189261 94409049 499657478 443153262 490260092 307371590 634220335 164441611 442080936 134592822 238730262 198477582 737906845 512578539 807703618 741880870 977846155 932503492 975988455 2589632 16631928 2536911 805025181 783821005 955458901 205470310 586481269 286089263 441114698 168756940 631255255 287535884 948282833 495663577 567078783 130275276 419170582 46497393 141773802 42447496 485043157 34657972 813637525 632912576 888241847 189059555 331199802 70826040 542947505 417448701 434996787 360742086 752072424 247066378 406704056 391852705 885406299 224162899 553816699 233861437 630430888 103011246 195069252 171211116 737028419 370447942 639237454 262749317 471153537 174169531 717481592 416864991 776985953 75508839 289177282 75673051 908013642 572861022 926772680 572841302 758365873 364070561 758585477 568879144 817343876 126409751 737130017 11580783 128416326 58543103 296729766 126661362 521594060 364634537 893494685 770219225 794736158 55211751 582615296 48125471 360282701 292506285 446718977 389666542 601970786 435792179 452560250 446139613 503491150 194134468 384150287 63066794 301803158 232447851 814067913 321244308 995117838 499731695 794172587 6376685 729596146 120068594 370329843 158506523 987174475 536311680 750583452 374569933 558555032 453645048 878079655 171651450 471803775 401563732 742500740 489080795 800724257 73654645 367778391 273182199 605751432 12498280 193022961 123831169 765007772 344762649 925767149 825481399 933734097 216723145 303371855 211099656 962158790 382845226 722292604 17127958 965216732 809980041 839174559 621650642 998694484 844041 557921103 525042161 807490146 641150296 740151979 497660462 769160759 392651798 780515784 424818059 780836358 169875967 281469628 132778786 895809269 302851499 701460066 40633353 242493544 29103343 749851411 461948048 787622168 586384832 664925318 345159649 654328422 559271569 945808186 608827884 765474835 334164565 545796997 179808329 574020515 452370380 928838068 628783765 937984698 66821786 424915446 202440151 682843294 90725966 316301878 24210320 295501607 187883870 985891409 477825946 856402993 223197364 654291684 67490831 837879266 532757235 630144090 460974221 499652377 261376864 915929281 813977472 924004600 834625362 860449888 172414471 561577629 310268994 463888565 213022917 244021915 39417156 741116864 263028770 540421879 344820064 860963496 566251721 910567626 164629574 630366084 101304997 918508836 20031428 699586247 96927393 662513754 487910471 840058443 359858410 847911550 288631011 495632590 465577583 742430166 129131596 206264551 198787227 278901667 168472626 503206645 107089376 321796621 128796088 195158542 66677977 738880685 80823968 573800542 65138563 516484347 46071033 456520244 94074162 732892123 22223186 33349617 23965848 638109042 243819210 558674727 361563730 724041752 313021801 358149491 286964996 305220044 269090229 681336914 186542675 372815269 292790576 420426813 310133772 402833684 149400924 198163399 59166834 734490690 74271026 935519427 422948954 423724754 181513931 576787138 560319836 760499795 369073549 861074443 345289228 876830781 396012213 574770772 419500528 589777281 319731793 322312469 188182987 223987035 71705183 504262537 93320558 875198588 871051954 981608856 913411571 986776299 353773583 913855544 386419523 807026382 410377126 671929336 94829173 335216136 210121727 456394306 276711207 577286506 353659686 679204153 252235280 986230993 382852212 407889764 102319089 540145072 2736661 646174485 521598036 905128653 715949919 716952595 546129983 554303648 367540050 490512320 238919636 356641484 224727161 787610640 86983747 204443007 104902011 124640087 101127332 515166325 461887633 611153682 408369069 777746409 319004755 734221290 595339895 977638002 929956630 983037515 73291335 709797559 120483671 238642875 79066727 567807747 222007503 593372150 334474567 669942573 4407124 222491623 183659909 556462865 339638769 758389604 485232024 597986585 523078558 991712044 245275455 295908526 145146183 510164577 73112669 571361276 496585564 738037785 402293847 498698725 152271810 757300699 659475927 759902121 86567761 645595775 566144190 799436882 742226420 978712726 681133822 848574097 347955575 812662368 689717574 734720203 231798101 753497094 196202450 613037586 161637332 646370996 30354156 994478705 28439963 368039439 170343909 719483103 706839504 736363567 624766435 771753304 87095002 926966967 878103736 973324337 354123 61537494 1747039 310299916 74447488 772687602 432908372 735094420 305639562 426209573 175570322 391635706 326697571 650947290 615710313 845959321 494478793 893066454 26717775 880560878 260507827 997620754 349764569 892561585 578708828 610381723 235837670 357549445 32260617 384163976 4747736 148315109 75955026 168601202 108996546 718311119 461797280 684443184 276333886 413535949 84465803 476333783 110691993 504395328 183730318 639688532 588317518 800628591 110906045 913294402 285760190 628324993 18181010 380113502 39631014 701875850 403063320 768870691 636179378 831897808 424677816 810466596 187385957 843961269 310688385 348877475 83359230 559007192 23538458 348688092 270154992 912472819 68333815 281805026 51943716 195869679 97404810 829840773 396180939 969955472 189206989 267963988 201397072 816250845 28264860 699449223 217491685 651061862 163265611 418643915 305339912 729781853 444939675 564730161 337651117 602855931 333350640 654945302 554207599 954139326 323503071 496889847 371192652 562973002 549108223 949018213 705399861 946313720 218844086 859503446 765758238 889538515 161535711 429806033 111367288 800448368 704345994 821900160 560814294 591698460 259999782 796151128 590466147 728576154 437266032 816015993 627052936 740719186 138167961 684363104 631721874 958195517 246806661 619568671 298172559 326125902 288513882 329491216 315052408 719225018 373940070 712610146 175516725 504043240 37408516 278372126 207734019 739105372 714726587 933905207 99432073 753294361 190039075 435364762 391459680 775991763 132309468 937646063 218233730 892797083 142435158 487179897 451212992 628867001 376772775 576736963 106663711 578856038 292633048 759705042 641249648 769081809 151645668 843820386 174875881 813036383 585116949 703828050 621204286 780824311 331554396 638863382 518138692 960945739 260456602 292023521 137880845 813502817 396044012 840505663 122311585 346956823 145077411 251879536 148936034 510735090 504642534 888490763 211048630 624940079 75015442 848030290 207022559 670373950 160024670 286945276 72568881 145899594 86439588 344319064 202182524 890311792 145413384 162959093 56580227 783473919 775035770 929864341 530676412 600949178 248549255 985167521 823365607 854296437 147089194 820565363 695656226 815724459 577475461 945485926 522738599 534829090 33252928 396844316 102053983 596102028 456908648 762193970 313432276 988995374 104890488 182963531 34597954 935285134 33796012 99260711 8993699 403542873 220027124 602099943 65646382 790844805 240564495 482457960 11103262 853583231 239426908 462070710 270659918 991308274 690689577 883672712 131375739 658861618 377751698 794034012 507690575 550866389 172161402 646608679 355693425 627463470 210570182 444116372 115801932 117875708 69132896 779515780 591730816 810552761 561167636 767868229 445511956 670892376 203483294 782068942 300614576 719793450 587768738 958908745 35020419 381128785 219399619 307360134 146874174 277956232 135210402 616375093 344134821 956265012 833618419 896294540 278141676 337680245 291043291 778770172 30619945 96495053 76420798 364268332 5096433 709579249 367888671 740350776 554118437 564076305 270758504 447054145 292787447 590373521 190330131 587468710 19895887 560114521 500635178 693880564 593155119 885669767 500161492 675197132 519793326 613247754 28110251 177380102 21622038 958610043 464314598 842325750 504312557 821738862 792858491 821789916 703731836 737713864 206418750 404265393 267419290 876162305 439197851 958848563 95186165 549999547 116685132 135681317 24296712 575793238 32140768 401531654 278052666 639704769 181888599 481752187 228839914 392340765 238789625 864745248 302899071 323924672 3792811 138724147 70621799 943836757 883930276 888256696 287816287 315523720 300213241 956187746 446528090 603072530 146320414 946887386 628763386 725438638 69179024 717507600 478594352 479233261 166943185 842229336 468763941 763728062 369847583 817849188 9135806 942396140 466078462 630920940 335371401 414891697 64459738 399901643 49240425 737423008 123240492 145596358 36403530 988947629 170840646 516201596 383170830 540990221 283181019 312151037 61061162 484892935 50512806 693168726 441705067 837528575 496547536 637190531 71394404 863902698 106961235 963888540 33575982 989217490 301260719 914656928 141542834 552670947 506777978 540784338 255139131 359031548 40718426 671551613 204002712 620987368 586613721 848264690 169905671 228234255 80044993 214603427 64924183 114836720 7645980 874062403 688184047 688649492 423854625 489016735 305087357 572656087 38886499 364174874 260223257 462273193 369576498 965599678 180347650 271825757 77672558 642475488 347966558 713009008 536113778 886092558 459772582 936659815 858825501 895862682 536508062 586725607 494080793 791495541 211559685 243055966 182503163 856260525 814949603 944479921 285061185 686088165 82454528 217406595 34877495 859304795 36491841 482780627 32415220 89334563 51687445 697923492 97298241 608300695 264576820 276075653 113830051 401437647 12121762 648794371 109128106 551324145 216208634 267399362 106698609 550793952 14813479 151851869 19261065 940429777 879409959 892967596 286834580 633230552 326743811 333512227 250490750 583900550 148844732 527249383 204856302 762376549 673445269 946895582 407084535 900477592 864272066 948521115 83173539 161183928 148578881 364302835 80729457 245402244 124678384 165509763 130833898 843135787 675858755 973104071 454641118 508085444 326144313 791306142 354838431 788866107 314704215 498539701 216769898 520941126 236322726 683097262 607909457 914886117 197987299 631134655 433140413 760124409 355269279 833782112 824026422 967495645 365672718 409742645 332804529 821408402 503399482 679575348 247253189 843557645 61131915 271275823 165895034 749155991 530141734 716842149 259474809 299298910 274814930 529462884 487493008 982077531 578486120 775997554 364975239 668095691 64174141 195192849 74840729 580197295 477785828 826267472 22469017 36352185 25529000 227320222 205013459 606662207 433875619 442132182 190431714 891667409 837905485 976089850 9501701 984849176 741014966 882542433 859647722 947930602 481438705 964681403 667731205 884226292 338600981 670593499 265484686 364548363 219490811 830646788 409323032 652076296 316817757 597032672 356873846 478905441 54264739 591865564 503265606 744841972 73699011 200558955 100786796 939212135 467840619 901527338 573155947 763203628 413409657 928381024 900968345 969697193 751482487 966914133 799875295 949055963 816665671 977194825 973291081 996654366 881887888 884094983 535824244 592905254 381798998 927727415 222490080 887188350 739955614 812969783 377096676 982830193 298766257 712296333 86838436 950309176 192882865 255606232 21876852 186444660 88206726 524948568 3027754 669475736 486823094 660580771 302993180 575666259 64420586 147240743 56186459 100566015 83106978 761938967 666624672 693622013 521395774 875684875 251532218 798364641 730626854 969612973 755440049 959096822 79176099 232585141 86141206 910974712 801411220 881544167 855439079 937834283 255612518 260988821 131389192 201506527 53609055 150661116 40340923 903488382 363521442 690855250 64099605 793666711 784240905 926369922 401644306 981303385 769519072 827913563 618024810 865266487 321091773 691892213 382278078 726307964 350439973 639110354 318578197 486031190 392628387 527971432 252754392 299435821 135970369 681670436 295123633 474453614 428805120 816932962 624110404 929901182 439169526 580305358 171742992 178807285 129467951 419488486 226059569 753630033 160085240 874528399 682698498 899867942 863683960 963122711 688576906 750153773 312156385 829175566 44124413 895523504 814705343 926261236 543407368 639388768 438859889 878830403 122753080 377682284 67299545 155973655 62098196 336066127 232150011 932742895 590038637 599610658 460601316 520912141 148215159 796157726 8914741 238275639 109370533 379079027 209370729 367508529 289046001 781797186 333220905 920985922 752491655 811196303 422387455 586525441 247819874 388278691 24062860 692515930 395617288 995191529 705685197 968345787 462958190 490893573 374832134 628473974 210431140 860801651 302228512 354141879 306721333 395844117 276595385 924246453 626174694 970047468 184329713 992073533 266455589 364116929 317152750 678884093 207811759 712501446 526391219 583795856 143019634 337802672 87935854 261620158 3474494 985434942 907545685 994533725 648633658 878904342 456427473 907196004 370520684 952652567 270440844 825822385 363400943 741016985 411197654 472079594 65974051 546200832 543385889 836505650 226341101 749206704 218662691 343606358 217858684 990641074 562878002 909193224 640208590 699527484 93454984 182746853 140318558 732186186 459488421 714908057 501535604 901593192 171630668 639266819 545193677 641511413 418269230 550512557 283196821 687525306 350428444 425778500 108124717 227968733 172596424 244308331 237320429 352232438 24304144 612353758 529700340 835902224 754342481 782119142 69751759 939343888 832568017 900190844 4921143 373467188 9893535 401012007 196366714 795737287 60478492 581987519 322109814 727903958 107125189 700654579 578545286 926160053 824310086 898600800 396576519 992719733 744379609 899645512 599375373 857768182 647671053 779116154 520219000 732097639 472205574 932887205 220199710 520611114 303314705 791338143 29992407 564515392 87110465 235916132 76971859 216880267 191844862 263863156 250836102 660557437 631471680 728654709 578962547 791832764 728607991 942786764 734879566 787505398 274802256 656687985 637272525 927199607 197243725 838490263 485161049 723166581 469197131 691155388 279826042 844606220 737218695 874278748 206340246 632392742 66255762 357045136 200690589 570875568 384534168 900488768 555931618 847126457 213613336 709332612 622888589 887828589 36633483 530200111 437618253 679840522 297189892 593752862 187957453 265211313 152029385 884789567 473509265 804819678 77288457 921507948 392556650 508410090 367408455 534375743 281192172 735766572 479037996 836296594 86100499 220702294 118073371 452509129 29215152 222702472 49334400 494012834 449144054 868117974 188796927 210747026 87411446 202754987 65066654 836872453 404775297 565462023 148373082 489751995 173832889 925227882 72778510 303803801 296490027 518445219 21342620 397490947 139416699 847634771 794244604 995949331 259509996 541444953 97071072 366567905 128858005 878736134 34192304 526522698 254420915 750896662 208967994 806232677 742372945 934051251 458911030 818384049 638036358 859801924 156551436 761289585 57342512 124836158 97434455 376890078 347299964 461620069 136304147 205661814 24081192 898084811 629278569 789493752 295647361 424192288 251564798 855093729 22892851 97649156 51749932 78961487 28413555 382347279 78285224 857201466 691501953 940351140 368167723 685121707 284404008 400343509 387403904 731354040 48617837 777752877 449902266 533371542 483478096 762501517 72934362 138170217 92678138 639379950 435643933 670590210 573027709 822258526 678981658 877811450 560768811 725659511 519580903 758367052 582685845 965571933 243049150 251076728 207461851 876140886 693137778 880297112 185392395 911218963 45181165 643122490 70427143 490870943 138924956 565728971 473036567 645849716 448500289 975331323 161054698 652401590 41580440 116846015 98760381 181318512 149837036 355496400 48790980 322393534 316109581 617418514 79881302 402968721 215298877 587669376 331708135 559423114 9590497 443230930 346642194 846003891 479120463 957913064 814267816 855640138 195964040 235210683 147161740 732630560 405278373 498088902 285890447 811169840 227622794 778479899 514699611 616669904 305788881 765671647 124049148 274713074 243234165 873654974 458548653 737805290 250971329 255366622 104171723 924244139 783094022 925306571 379859674 442032632 383006556 405252199 39088341 666547402 388295863 721254173 324240119 910753518 589829424 717445125 178065632 907289130 881015693 904880746 321982179 689081222 347948691 373482235 181239564 480179427 74382289 833187768 566636270 588645491 243228104 461142184 119098050 695387502 309764557 814426072 116195093 950787775 659746557 880363829 852894066 972772546 122785648 935183152 874651446 929400283 682738788 997875260 66712109 521375963 240156304 815644139 209131993 611443378 269861441 359411777 163870942 317985798 14353821 949953983 937537849 942851994 498025641 807164133 483166091 775746055 239956251 446840281 436042244 628762903 119943547 346403340 163005268 201771607 149198411 512765610 424625048 655185163 33576163 351340465 2685642 889822295 533515787 737793230 246690549 669455155 570479123 618723105 55001457 479106953 284726482 458756524 324999554 707802702 217927118 430821217 411855967 614634484 263128048 720682565 251311484 548401512 54938842 518138904 45809630 839563215 306953819 326018248 203607166 467983097 382772036 738836898 643116560 789281359 529841107 984756631 917032807 919441378 818327218 841746304 721892806 881491783 657266011 937717686 197937540 279489403 118540582 142383070 118196652 703940201 555437594 941092361 624023430 958866628 243539816 255798052 208862745 777574435 337618697 973547145 210995856 737751025 431342169 960332517 476867205 970100200 598272382 954981672 108729682 543254051 120825957 519086925 266611552 892586965 734915664 825205007 437166262 608080786 512794216 603947016 188986005 310475209 9888046 540573816 213051114 860900995 278633485 823921369 602251984 641357732 508882040 855411622 33020313 710786735 578735950 619559274 155526264 640996535 427817227 715829034 432634259 481399417 31811557 116646781 57577269 201302076 178515490 792268196 385363059 626360073 36700884 745868403 121288953 709893604 610133720 724973602 408418769 626259146 328585497 767665039 699635526 742770476 667364506 949736797 531318127 916965975 901602339 929994314 131561174 275891845 147067559 393987711 201275707 871404520 392633103 716010770 255368222 742566754 134135486 833688790 494736105 830298373 93523356 248402946 72504376 750310747 704576824 912361350 39907849 489092438 405387837 760522620 598252432 719429618 139589849 672707999 445379812 489897470 481401217 537052915 277569443 305677515 113396679 735306244 235980415 382484022 181500806 729302762 245636373 701239154 146123585 646829798 84559403 393201099 65443270 904702659 255626584 330050436 120446187 766324262 114689291 383076932 374645347 411750995 61043641 289707971 241695305 437118772 332200449 565561124 55890647 415095478 30143641 845819713 685478029 995457560 577738944 605647015 115966693 676396573 192720424 333719686 300471943 446378114 139240603 866030462 647430130 977807889 467902650 655159291 470331708 917835156 876063237 995381025 194595902 903134533 851279313 931180175 412276648 966681084 166119973 783910735 346678521 858901594 662084401 947741508 405085572 757720595 509363173 706561674 613706288 837639043 261665309 571022864 23459028 31047588 3706248 322929699 313204782 427014188 158530129 669834542 41906465 440823277 26105062 505521916 41072201 121536469 110172905 576049657 87974236 325418337 12570915 62231644 43859356 493968082 317685905 466099989 442464385 917038725 907217865 972197421 757411470 983661902 925045593 994127237 481865872 560278952 433327654 959201372 540503149 980542804 964297348 988847618 419693399 695698210 481811426 741490514 199997262 840043033 462429331 774728695 32948508 732974904 345761251 853829872 241531214 293101202 148000343 727592369 76427398 412166390 32843557 126999044 47222314 264339470 23634290 711794472 256187505 678603560 373649338 660945066 423765598 468160681 82740959 802052544 308332525 885112453 237883445 740146178 414814119 612253511 485486078 994169685 434353689 489884598 197328350 838965073 668793909 872453559 610443467 644784243 169281842 887689097 90553748 481975231 39240225 704548114 644068925 824925443 73194593 144666034 86357753 673512124 385089446 954028983 811303253 929936088 608124356 853721444 5800210 400670575 96677157 589906729 289175926 648393283 501779289 851777728 99060637 764496121 174141984 374125756 125492173 793200751 343988980 866752978 297419197 772541133 108379977 238661260 177179749 439883902 131789713 431350408 399747441 867993415 82486750 311346677 122129658 281213373 174159315 617570164 21523784 644217768 34436504 399587267 144659664 486196590 115289404 431386273 303383442 725971797 533793456 641937384 553055515 940080276 837325732 967138008 719645412 857473338 678573641 865240441 279879739 465568321 454898779 741687172 257758908 654278291 572844414 778756638 551747518 752126572 5774026 53142849 6763178 948127316 780256344 817643393 802868910 857876302 420091172 841071886 286548021 758387541 466376207 507792796 375230967 493648596 443900020 756976915 333411727 819486122 386055351 725513242 522127763 536895030 87753951 945437539 360478591 399906331 365097641 908218727 336956113 656431930 268490821 901857311 575443461 811501067 307424720 707381118 661116458 973830050 50106129 570403928 290441151 553026812 348810624 435959804 389031604 552360887 519037717 988452652 192666531 691929650 296717798 756938895 138130506 598084036 329714226 748438211 598685645 648337698 136036267 175607621 65732692 502426799 260793860 678292060 409443660 554672363 39323208 779694532 488105991 998793320 739233077 957783570 157155455 826502716 258260025 819250673 340684484 977303778 690027558 920914732 904890573 984975132 920386081 971345453 821605228 879509334 314151206 974762851 230653565 729094096 239962251 370422410 155728034 225487527 101334250 255964019 56840406 940316087 548762495 877283358 597888248 851535465 658494184 659734536 18605747 754916791 131345882 732214314 241133623 779094745 619076577 723680477 411642919 933293706 929425226 942663810 873901252 982169835 89909138 105794907 12563892 389856437 238193916 909026121 436460124 772603017 723143862 990628417 892671623 914871346 706756473 904995816 142370274 443921625 126442717 351371051 296363216 512313048 222943883 716202847 87700198 867566499 135817362 503339924 40046436 253957938 183331855 241153557 40385256 312189045 1136371 872065366 158049922 684692279 213653150 550068967 265670011 538821004 511946677 725770099 564037146 789922966 420937006 724653126 533166121 669206805 55795908 394670611 72293142 411872846 5563236 182007767 86595223 274673484 91593844 797342071 56879442 193685445 126468181 468720999 364224690 904782351 873655504 986384031 232400370 288206470 102734300 301435496 17903346 754172979 190101424 651622014 586915243 808748202 595054819 693106916 302261973 836670077 773482395 916327787 495362228 626234833 3168787 105859856 49736224 277915657 13603589 171397655 131280147 847242666 411769801 836921714 218792314 540445225 309743661 740323515 726316864 914722443 667069383 707858562 500283588 683215881 350679948 799779902 643190685 759189014 220842370 459124810 150556209 292790898 244659783 247234526 67363254 952843498 154734373 387991926 356774660 655194852 570574945 892751985 590436997 885236234 577569821 652382433 262662996 808359910 713047540 741141499 413128413 693542721 611164561 633026209 189633100 893292162 791911078 881239321 695569296 742624670 416968892 761676241 164919000 168734687 131714186 598445808 9483341 218038261 18572780 399853728 217982474 676436646 164136217 226300285 70101354 744294778 289704907 693792203 621178629 832340363 699689943 834829749 575971852 911885429 756939619 868429197 598833102 768307205 511082593 688606455 398286008 488437447 422320570 545008956 157491259 356052193 187910 53799484 13781667 201191957 74097865 773355093 558395230 906763388 764987021 892285730 850517502 911162885 717274153 782565648 22595963 125646297 67174507 919049346 380769083 679778610 485905551 733042962 248695624 600869277 327087076 463456198 125201594 655951072 395292569 479382305 345956534 582681535 126464031 571556180 72645170 159002257 152857447 620976390 162602581 862491388 190930065 731595335 336832451 423899827 403335300 929553436 746607059 777078774 570641731 992602803 657378273 917475440 528980267 773560202 65735795 786455887 647237847 712548852 175635172 368169501 246001815 442032595 434391844 906882793 850503880 980823621 428101517 679878449 469353398 942847967 821980207 834103208 801046514 867597974 332801840 583060888 376698651 878655349 623704860 888293854 425865068 459337323 439059971 804375340 176244212 281972507 22749700 343323620 77702633 440111405 61157640 639949592 290491420 433182371 17103956 815894466 374963666 385802698 27165710 345584496 297769581 402271630 128346009 207844728 2063176 227566104 171747129 633400889 356370789 900720334 400988492 729736911 456492553 968502351 676990613 690110048 259017554 446853371 48512587 777719851 502621583 950734045 644027497 893547599 808439723 862180690 207313713 708840946 25317292 832299526 89160877 142458341 106522742 806581683 675520576 708068123 548017658 659230630 378845725 592952720 103425491 488520778 437216084 734008089 511818038 996993884 788426611 852234723 740240369 999663415 82456888 895048616 679294613 931946190 5352552 174156502 109143623 955511403 822467249 929915343 347565567 711386521 406847447 564646385 96673205 985397342 335592655 908690813 889268430 931638996 442370126 557792833 386119153 569144009 400707454 761879428 637741459 746030725 192822025 297693766 178125949 302472683 18070242 329406528 229127521 323699096 222779622 618851483 402528744 788718097 629134163 723782334 353960776 956742821 350027446 481687856 80245151 387373150 98123643 140869683 13733834 904296216 407002678 649061809 143216824 973194138 587662949 653201793 25239579 329337331 263078200 666938469 210941829 504694346 327325617 419072251 97965263 702924500 177644310 332602907 306982340 678587272 640254376 946586048 235370369 703079153 86572980 475555840 227696269 383489262 67026058 808476097 349837785 866027753 329783371 686950970 19320869 395835941 12755294 267824650 35729447 44514767 12620545 315659702 255752240 336239145 110832608 970397733 293252263 874021468 229751245 660757247 155325462 237428523 11536563 937486335 657629656 886955421 101156506 302388271 155058784 728431391 434142129 489054254 53126594 787365884 82924278 502601971 464497499 465880601 265237205 464922140 141254083 957357278 531884189 654594699 483045329 864211823 257168075 353350003 123813251 976279266 36990746 73373577 28635366 620321474 249535653 700273960 645054136 671537834 263941152 911124979 160414937 845703633 346858248 462444234 234857585 446225754 69670724 133190108 71683201 593478523 468143388 922679447 76920895 251006227 26709304 172398629 117090899 695577679 348983868 972596966 399999075 677108565 329862917 795829372 516338143 621891873 614257773 898790108 201948042 659926524 640217161 789032052 190175767 997663470 860364458 984872132 788698722 857480472 540950357 977398778 629401051 822350451 21360586 552302788 76324892 937864698 296620299 912430953 45319150 582317774 451578103 973289159 807097519 810534398 681551870 904869872 489398714 590132453 269596623 822794246 239339256 750713536 168402745 346308349 255188518 758329579 365560256 991207619 727705082 754331574 437469804 770253664 587534993 670785000 467944321 524366048 345074981 455125877 130346922 440944143 63385374 907608915 173033170 324961486 143501045 239630009 114332957 942648677 281931312 622355092 100200982 698485563 613099779 825242708 636017546 942117324 254831430 923367214 347174046 954035101 679831992 914636209 864592751 977512398 864237961 977595928 612476999 912974962 379713092 411678151 225388398 792234620 275521538 495563560 295945749 917309618 85638023 764125389 325342857 758605012 662621125 929120579 275551873 923670417 448675253 510913655 82528299 605820775 107697889 447991759 63434504 725725603 404251210 810033187 796395922 942341794 29404997 354218734 337779013 972861541 465739137 972715888 668891209 722027929 27171813 331702301 327781036 469419496 97326497 570768353 152687088 741777079 192572928 871172146 716662521 805873564 569648788 949402792 606336937 865064753 284961827 955327137 726061361 954730897 588007445 773864350 88475817 338409077 211012992 849627233 570951392 665074204 563050784 627741179 95758304 908488899 133583822 555775308 18921864 794927451 350994830 996072362 384944655 888559778 212368305 696366683 380813639 918479793 706751068 767829657 538101666 658435743 650195325 908505005 761378202 797126082 468077751 505577285 118134071 637768853 427121057 675364340 96434309 703934355 209304825 442836954 48073235 908239003 727338149 903678509 826839726 921554305 587641517 700132401 358875915 590908286 148828410 906907300 684849654 926241126 160545822 939644739 19721004 682023790 472564895 798611911 202047156 422221989 170029763 360233852 126509893 621680503 99468559 557710785 493329664 530980894 411280221 862213297 270649523 863044836 738112863 888987896 565670766 606930598 95597383 599916780 449378883 618901766 172292054 383352100 83810871 697705655 253481470 890441758 106551480 691186252 430491035 659335827 154285172 657101767 554210281 575588837 564261324 699465832 212227153 411596667 31936629 199971841 118441225 684998529 203922732 301589183 238458041 973332086 442914917 768057241 277381191 423404048 332861660 359904960 243426034 926012002 728611502 959372368 688685998 722641257 406705076 981490414 426036844 856692615 332142639 866800059 782699788 808316511 476231053 483518810 305901430 567569572 562163524 578797693 422789198 453854350 450253215 772965486 470538968 496337856 427381725 487905410 149224667 932591734 504885909 541114697 117363369 767067992 682392451 710996494 602399295 618903585 199253159 625219289 315533631 919378691 365701893 644260112 309810348 677696688 657556335 946209473 457508005 944026944 458622463 845513467 176731370 893762406 426066368 432611387 366434582 924895782 735953808 815645422 508340161 979173768 599228490 833505999 481047980 696837189 36353037 850836218 119106123 173993817 60000722 554666158 54138120 752242872 547351984 609348590 444263998 620281548 143789200 970506121 573227383 739859634 333940248 493600622 470989664 623077073 589641098 674799949 518095383 576916798 407142339 903949403 399888944 489436982 8370253 754737072 669059594 887270168 685202236 865096078 427650507 430781476 18554113 368392234 97676397 411042911 315881219 935703334 721256782 844204902 611145400 791727205 158083449 492053712 128731477 544623725 27266051 568253583 298611075 598763097 567695240 941518383 858936017 995026033 143082240 336928291 205690178 257116661 43056366 697735661 246634856 927686672 462060713 910843476 207935862 247292561 5838094 283205911 279336171 628660241 419779537 944100869 382397480 813458046 727918527 817250219 62889576 509554581 255942032 791432771 170160063 374703791 139993100 492482663 300634131 468031472 398983229 782943298 468779189 605367292 90336433 448906650 124490412 819426446 142951211 190641681 60304659 436326771 416972953 528230294 292874150 832040895 300553912 637661629 451689561 788133410 646005201 839241118 783081932 992735996 307254081 491919536 483270661 942153134 926591565 991064426 658150985 805510578 211709362 903116486 688444045 843473412 151072523 731723672 274512975 658128448 514286906 840689269 228574142 695400320 257586511 954600876 860432928 966827242 840497772 993455033 262298941 706494717 529699224 893768061 822820508 886081665 12240665 948747749 175310538 241982383 162952174 458752483 21791165 378549005 238621790 477832471 409332705 812675432 560289746 865408296 171029984 438404383 158883065 198339334 181755771 541092620 311341007 392753339 265799933 901552486 667881257 737409010 531022962 712557838 140975959 824741799 365824177 859188397 631866413 657846870 545697726 965448841 447166440 837239843 713230254 791689146 77705154 958707230 937424973 955690590 792231271 868010208 662040266 981919198 772733896 916277526 508969018 701222205 213464569 992860834 831991639 923950497 808550441 870305206 11813840 153023943 134667517 601382023 562551547 862833032 412039778 912395783 817574934 822363880 271350348 344931138 142983396 747069373 100683557 565958451 553315792 824532108 106177574 494784216 378579088 875882900 457778130 845158909 245390534 847578350 298775176 570633969 73127328 265970223 226710052 715546076 191707111 260858512 36785247 224098235 37663281 72421646 28196077 76066947 32887055 992331709 414411025 721286857 597835567 949055405 436603266 896687850 835095306 994909351 668512085 960850152 779110909 915887941 704126631 899033365 532519284 892506577 663330373 727689400 220263309 233017095 154689545 375503502 304979994 583668417 269997528 908429255 867372195 893161365 5734233 468043016 86627490 405525351 258690488 543062014 331120429 807261857 154143405 443388022 399993877 519607372 348399980 865515504 512862703 561268214 518672896 992444978 236079065 904349474 455768338 995174591 922855664 969347424 240668322 498149643 350463805 869351702 833763321 943229798 341025397 573002039 47084547 325212408 184403755 492722913 428587496 656623875 30532124 58760378 13146363 208027408 171493461 583442016 478106888 809281723 178356485 329883288 107040875 332429368 201186886 713201321 660096368 902677658 144881441 698572524 598383281 763490191 517781051 833386120 109205308 480176398 266816292 613775736 143597642 916194631 345233240 732341799 633952569 692642862 532137285 649643850 575334807 907126997 204538374 894349826 471042645 905158259 436714947 709326805 557418420 739764701 379888689 986650576 240316744 514641550 76181002 296364625 147039366 837479454 596567651 809071787 403180921 845152837 725788172 783185629 763544458 887979363 130313437 280951386 249819814 991164188 119310558 304427973 100121604 712872608 18252598 263708057 188402097 354146402 179287323 354955040 72520523 766830621 659646279 911304063 638790573 717943092 593033139 868445819 20084665 105819317 63893566 830283320 90122496 458961351 335438933 758233876 96123126 645160744 267071364 355780114 103278989 453166997 136485888 660681202 374190075 961474345 421872698 723266358 522252305 691377668 594615270 625770837 433133333 636909505 612828273 647810251 9072046 287182881 175934432 843711600 34811199 682605626 484877041 573904368 161065784 541200659 529351671 780410941 512333586 792353851 115566183 555780308 206351015 561813987 288525185 774191193 403620334 891458796 125297552 790336602 285610466 716710381 49114915 894079821 820216399 879275879 755832816 760957591 238826941 778570718 398294047 871383083 830272199 971626893 640444470 724432800 688930590 815107180 280587916 952390959 616992076 703188954 361991125 794443090 583590470 668689590 326634351 433888870 383325421 423306029 60615182 555377938 508545518 702946815 634245281 985164913 752484007 862733780 851233067 887764849 658429393 672014869 296022705 528144289 25867325 788637707 475501919 920863345 894254469 950355883 37897378 196429701 92629584 689739592 646952569 807236493 172399800 747739699 476084320 702004872 202826397 505848942 310812198 949283987 108783541 780758148 132930170 615669847 281241562 602686008 329774683 340574478 220240942 353411211 227322677 645490218 457335012 927850293 90652401 574667580 221187390 931445659 26581793 205543191 72957521 786747818 26506852 413556134 260202930 867274789 381128034 746379600 68984261 829546451 749565470 792394425 592205174 722905947 378160605 901349012 492785013 692336532 211894608 688770428 170442267 331675922 227254576 447187342 8588463 725809437 31765646 339265915 106452623 186875200 76169491 733333505 549228442 908140228 499687944 551867092 41902352 595957518 26513091 37742469 34048120 671498681 604391180 920387566 416183689 419202646 2517059 32288991 28545363 940818455 72991529 851396326 387633105 559941585 174923693 391804788 26903340 681097685 481765805 841886313 746781039 951601896 600241985 680734880 461300104 529484087 480414904 895707971 183417245 471688445 3397461 376687674 225124009 704551734 372394760 902414097 828497283 948577828 788673717 828490040 403952898 573491681 69357596 459071468 190054858 888331589 539782401 859507884 786529936 867310634 526382142 838968330 351501288 650478924 500553802 759365977 704435238 729132908 97870684 505551353 400077123 810551888 537547518 995758284 813448658 917230687 368317412 553483525 266893666 827549646 210984350 649449074 568002444 903480754 646182141 897705998 694685812 912808850 758708868 882232778 868378416 946637599 223649822 388224570 54953873 180804599 142833149 331461613 140970033 848425293 336295519 994253760 799797607 876204620 237613775 625338349 461982049 563507066 474953747 920989527 912168876 950796869 426934910 959239432 785540266 925795639 760937165 901436982 425751188 667044314 52161847 446920471 365210766 811236163 253205565 474294918 439498849 841368035 381736920 796109261 642662114 988776356 748330146 820757609 652753382 772174756 86567061 536398197 222572873 265680761 147604411 928522758 838292811 847734388 185774929 906950670 49676415 835843563 95068791 158824170 58114711 661104650 513766111 888203919 678920501 833299669 751167719 991793054 591835560 851960179 560652184 663049608 385433066 929840800 81909704 641590152 181423722 607365108 578282814 810129232 341594694 681562867 361333646 752256834 295716908 559784865 81542062 833633650 412717535 595734555 238278583 303146352 174822617 458477600 115909188 421385704 187381151 685635275 317850525 372396290 20037527 570255060 278448985 957415067 28384059 29405364 18188502 312445569 265107064 639390166 620344989 805206027 261929787 978331461 886639633 946172760 636031560 803155905 259557184 583339178 73674117 151732338 138827233 398458177 164052346 817538233 271400293 360006726 9924514 559284542 22693468 697239507 383801466 638138231 477619466 995511047 779945852 925359644 109772813 490455341 471086941 839523439 284126897 344743127 186697901 492281505 169694068 555433314 460624738 945888541 470161727 607928083 557572076 659229177 610737753 789235263 541500973 836735957 338126629 554440173 495729460 791823868 12527212 373380960 188052144 650247969 374578313 556127663 465870913 822710436 163085741 609145464 464488016 620599222 95474579 218191185 211177121 566947784 238860986 536778162 66606920 351976856 300779551 607470128 549244757 590499270 223026667 271113090 195886213 412108059 2519402 639006690 455903876 990313890 176150429 492349578 215323634 754722190 228076187 333495289 260035314 838507604 44127302 767303550 394439841 817374541 142444607 198288447 155950548 817890418 670844749 850285186 497560019 847371512 17628673 378084527 10782091 619104671 286369081 642438420 579118803 945812382 587186114 839859008 17673871 840114110 106226778 903538036 170963947 922533810 349643351 904134747 284365108 676617568 276722435 599256612 564196939 564394040 90408804 628402337 371793074 823795603 176192188 471737861 245156337 982722822 880031084 891882314 590509505 885954513 827629971 858712608 475930158 884189075 863291720 865441327 769201285 861673462 854142778 871869382 490034083 606369209 512891375 710235912 393402258 469509819 89292031 996139119 790312556 864129770 374880068 603566010 594247870 897813456 835807234 951228506 239137482 659136808 292430176 857394676 838402537 861467653 220441463 701235332 99904814 631756033 127160875 930093300 864783957 966960025 589446279 885448267 700170946 920568567 834075813 947370492 106196639 891865364 223407886 861695316 509524608 857691440 16066685 568327495 307116422 435548872 69430118 435155689 131749667 677176427 337687486 746933882 685444867 956596887 675164300 796977337 485955650 995625374 728216173 930772889 466713796 818498656 780952076 996063957 162862982 892987340 293554073 514663253 62681096 939276344 718104628 881002540 437284701 778894015 531427177 870776548 413075580 999550446 506471749 855814118 805501049 963259922 815836745 920033690 693814969 735832448 670535109 720900551 290758279 600297001 169343249 268455859 51370241 708518609 119362095 642228517 328358226 838591836 244696137 606325995 454776176 640172399 306246136 894031210 121940857 330149841 255491957 924093611 533162071 974068472 778902765 973203034 639623380 920219006 136428473 728198609 385975523 515964440 469459414 745083944 395020112 708399339 401699823 598462417 523027703 532398538 461161191 662200794 616385806 716854361 331806307 711467276 347058878 985245007 14323013 420218692 350581404 691363632 596817766 959403949 15629906 971361070 879893440 960808051 348357865 353119496 205654832 467199958 189800206 482125058 203247430 664568798 279418580 835647977 380204539 971564938 362083581 555148425 8279058 796551504 479478539 786746998 116728787 780889996 86040617 727885445 504875563 530269751 379433356 618208387 511462565 982691812 865831715 925037399 713943909 863394662 230684689 785243456 766067351 883217098 520257476 613721612 328360843 837550707 205652232 973598583 852822923 863999305 241247741 908232825 489923181 591956766 46577460 340255457 2678689 271871992 146583988 219068411 14019672 946878379 259070360 628237181 584598778 601358421 317345603 545657267 36249160 568900920 167964837 486674478 450848656 645648258 347091583 684719465 602289199 897488810 320977252 854004006 177826457 406640752 26601757 393096734 299811870 342812845 264956315 516716363 315515947 416583455 118955711 140386721 20193075 432102849 401022607 511358578 202908586 732276694 176262782 365416572 5483684 15877611 102838 474052641 108303239 269948715 255908637 567056565 168522519 902913579 559887751 823213315 130410227 591468546 73841465 735384642 304561444 586819266 258643195 380656636 83974299 817722248 22373290 557709820 66301285 335947287 169383235 880023755 19969430 158108213 15021078 511862769 349499932 718587751 311404947 927512330 844101790 939238119 821093978 896252895 508743908 894082850 465729091 689816167 286911511 931243493 361002797 877389425 866327332 898242377 817878152 955401249 493032676 728342277 206551483 436610780 118264237 484024746 281006352 295666336 157624245 440645182 166808423 281230287 230755984 524734321 459279002 471015481 26433764 206104688 14402947 444742672 233793134 332851806 311331015 547902844 495303056 731729161 384811433 483527170 190475555 994274910 753535388 813745722 334933526 961851200 645349350 689489385 682146616 997082930 171194627 619519090 44505719 899668107 334493845 351294408 77755592 716836879 12845042 218697221 106941942 964847231 352963764 733993405 538295409 600635078 343156618 386204492 365500478 369421923 185347234 221672555 34513627 848969611 742878459 945738437 755188860 929772498 31269473 910938770 34546359 735602791 722799217 858023927 261530158 535426373 32690149 675189712 482146282 920950152 390243152 654781185 454288816 615563737 313770868 668099702 305862057 863230932 465082552 543161966 433697962 543322680 422169178 971973801 352930172 895458614 622567882 754996285 318645357 364234362 21275720 756733967 63918049 917322425 92008870 764223507 493857189 496583878 415808018 454370934 361148766 469392922 379077886 750101745 521280863 858114630 165688245 784383050 262179289 877224436 355778297 492626937 154028677 197039230 158583499 284667899 1846109 702407041 207014667 804788874 721260251 765306158 387903131 778966277 233326192 358059568 53337281 463155458 8275998 697853459 161115843 639447601 489133314 656437031 462640834 803115793 738437552 877870808 693234844 867964139 509251464 960200452 152216938 245113872 64125480 651095099 571362976 697340864 281532487 436991362 404283250 770993753 239630254 329076731 240625043 286700711 272442502 586065100 452330850 668845738 408085182 647259943 229517175 876352365 875956020 989506339 959162572 997569715 388665811 738825251 706804086 948347930 18774610 639314420 378921918 569120861 525713099 678891850 74496848 135275276 35861176 558927146 534188337 927937261 136366346 190951182 72405521 706242897 485848829 882750717 878893462 937507800 713044561 924065900 170759683 676283697 382541512 468193370 253827252 441505842 321670605 352380053 346881705 757386555 396273569 968190829 841446385 872020039 533680883 747222710 569888187 820882100 704123061 860570844 411337238 564070369 321800847 418047729 268013097 478841123 379193764 428263493 280404918 767355903 78251472 941341182 790536199 897533466 198040566 632289183 450594196 569210175 552592953 787992028 531455928 987056152 599441294 623257799 397324665 623219249 53917610 979406652 717775007 983122161 571608619 904902896 472875396 475908586 107421540 269249305 261554428 602845652 10461774 380572063 62014545 262522786 177526447 830928471 814392972 898111747 752261501 782741582 82408264 225644562 170635062 562293133 198643074 428021774 101903061 827289663 321496220 506320934 289958173 918945877 475689246 878693178 589543880 872668797 11698805 887815807 188833335 338517598 50300022 386840820 215120848 425713885 291188588 706292963 487166063 908308308 673734368 678226555 613254355 893222076 580590303 668594907 129201986 636217848 261757038 668319168 452284254 622789746 336310013 762901777 274709942 872045726 586706736 605055969 553225576 923473412 420454431 466465098 196976897 597526406 252433338 471264769 186338627 849501064 166579318 878988150 200474747 324377069 112870561 372031951 221578702 904450108 194291852 601513547 577508980 681818374 197535200 273550932 258003956 932887963 375926223 717201622 416508445 496687895 95764219 782223905 281764110 536106178 326456680 904447596 56540518 257302681 19108107 149588013 49313790 623102735 75401124 261131766 162284749 224332720 196155607 873565975 118372848 384672998 125500386 461307995 223859917 838144152 38378976 153092140 80455798 769885838 706296171 845588263 574248035 761639082 541889043 941782840 414293955 848101378 687927077 694684350 225003255 354822292 263957003 361176489 126930618 728520079 182962802 545432995 349640579 708951554 335084081 604446689 135698473 970623261 816726952 850565635 826773953 838065986 130902203 477470505 403018409 543531517 451553501 686874972 425700234 765298411 224028506 505786640 420720338 923357009 623019078 857238474 507541713 617816530 175785219 946773276 550094973 705154084 572476015 933148914 931978222 989899728 662655783 748483651 233332198 373719425 47856563 653804345 62320385 485781194 209570401 949270908 114398020 961534997 913461440 983277370 280510792 282689873 193481795 331026216 35991283 811997413 778095036 994945513 118969437 129777379 60361199 98488873 87039131 549200690 72207018 877219562 460877892 831662662 255670070 550946038 355987815 643456283 233397303 987776142 410239303 839043058 788235700 926057291 845827444 859902506 591415361 770254847 298073727 495128399 361468172 770172207 585950677 769138531 45115054 786904156 534026401 833171337 198317843 976724011 356418352 384015862 94195098 292069459 245000881 379071692 152309459 196897156 93562555 568775916 303291955 344948879 219637377 886001101 220014257 649517754 122340426 621981777 453040419 891298841 691556135 749209703 123217140 506588744 368690662 379195913 344841275 513473256 55233725 235191270 82215614 235675856 108781697 203665903 181458995 400728611 233569571 453184189 13921220 965656293 676242116 898543709 538213933 714887642 283188283 972449591 930109161 947716453 78168569 298115023 234272150 850475932 695631522 728601283 34864339 440289496 139263789 226200547 82746167 236914775 68821050 195826358 165740050 774768093 710243426 952983492 137457238 878951361 871908498 930689948 681822793 899329698 478524891 804980089 499225076 877308831 145049211 862990810 324604610 707325911 699524486 758867816 179938346 327221747 133617959 597347895 526695154 699328142 165560738 516054338 197657133 813336481 764234593 798209916 484402088 851492378 194021665 745693803 212260524 765191475 762650574 907007066 370451614 494841230 46572285 494540322 472164072 744965874 122882916 236565190 53703980 577034245 123759266 373973074 139725034 264269736 48854806 158702698 66192980 111400471 106409031 726747948 420009444 556226496 529339802 920435071 370720814 924760930 674748087 718797102 435101913 597149322 314839249 498499945 171662088 349273076 192297241 471134961 306143738 688907772 144640907 443539609 285812071 752814001 283189210 477267499 52502785 592126032 458507607 932766886 385323214 501764805 219338710 223505719 107475746 456039887 432935245 997661279 931339500 996774176 852230103 919732510 395510353 567883478 509341779 819424162 633490216 638574200 562396014 938359281 451350593 893101527 512460972 975631469 439415956 804914680 150747582 866778851 227472053 750165175 600810299 609767855 131287015 428661148 342467611 806128931 724726346 756082197 335924764 343078910 286415025 952071611 671617936 787720581 113438669 441085017 325863757 996339876 194795334 331829778 236525751 587907804 306590802 920860769 565861399 965445143 370644066 849775368 411986292 637217084 423979346 563956760 62803698 804789696 242542284 885276341 294328135 610723152 58964455 778520428 335250892 651504839 46740745 690234684 274916024 920582601 560198600 863343000 534130671 996873905 310586013 872401800 734108130 876218544 128368495 853793710 218423509 769360711 192667152 216057872 23250430 983130927 897891000 987891956 95595933 728472010 327690307 634367534 480629810 582660712 527439412 689362278 175891522 943132679 351421151 916788327 696182778 781436087 643023559 836808703 685579718 821911768 347784069 450984097 409250202 515114864 422005488 922707145 740978092 840778456 839520498 889504085 618461307 807303628 438957330 853443906 315999677 487414388 45657925 97381237 9841104 536389241 459574573 717894748 588703886 952779016 565683212 627638358 541624393 654344467 590039096 916962789 430589875 665537301 125771343 436611208 105637271 653594329 318338156 691107580 451964102 795845311 8354414 447437078 419580628 775457358 83514814 233493232 93911153 703022506 64561123 371106511 234907247 269115229 260849138 875754982 754401872 774905300 324069182 967326751 717563905 720072516 257981803 601319909 423208693 429193135 357928892 880713283 689677582 945501868 185465031 995689859 511224325 911616857 314026790 627481788 329697424 839138075 424329139 526830994 354291078 618132055 99820747 176860554 21426590 93934256 54288858 901915549 484634039 509452724 82424624 360969994 92900677 559277540 91595781 462082739 10351516 555306904 446707727 855007988 462689153 625807306 332264316 553481215 294567581 400798811 59977279 750362904 439836100 677440829 395246669 592875539 577457215 690660656 669977005 967014733 964710087 980857707 248213135 331173453 201818790 308074048 92963726 95806151 72617418 873230414 252451539 834622424 10296523 445177329 360276541 878932193 398865834 834630870 763635510 882080458 336613820 870315534 686770568 899805107 267336694 658436428 182159755 221706340 103056668 735865321 645555066 982827414 311218184 958483197 243311258 521304414 257644516 972142487 601979590 826887864 80576596 117352404 36890251 866532910 510751526 919011819 698405505 754152157 154659382 787369842 739965570 849100706 583176496 974470470 209036527 432013945 114970398 588383052 28594132 321259236 149808808 381285837 162681294 477150983 26312541 67994710 20891444 727799332 285413278 546180549 455394841 881152881 377922342 402613805 306885210 423755071 304603030 439860269 106585759 747134273 187358725 426918459 352286436 972967883 516377268 888453172 505597881 660092151 185593653 969789782 76412883 242735607 199582736 760250835 337553352 894804982 681860527 730920020 226601075 394064527 384289463 528726534 428047555 490564259 178796707 642836298 188374007 639302992 574489950 883026898 682993538 984055353 938773857 942113558 548124099 640493134 441981759 781227397 245304246 506879770 17269721 630849493 563061333 741670125 224876738 485281149 197702257 925856223 676157648 741460122 727797884 881148984 444252318 956475338 837979024 894287530 868462348 903409438 448732888 611303267 79552855 414275252 356051111 489296856 171247630 987417894 295606425 365984773 358855599 400265186 371557125 498720845 16117145 57767642 43586211 876306524 815009991 875602213 827756058 965332714 539410705 793313690 405898728 748763392 68376869 518109139 297787284 452471968 365407598 809036073 299477815 785870317 129219964 316402368 187179492 837985291 250694293 407073453 74547891 353600164 344706851 814640519 162437441 725651845 272454046 785772113 485784254 930061755 415959058 902324028 581318396 652344459 488107645 572356368 5275519 903791752 24285450 780477262 140116434 208073416 186221912 249548058 167286257 627529797 160792743 950071745 732040509 917378022 863626395 939714361 697885925 922421854 779582121 926313415 414875786 832836696 13441606 705507949 66007573 249047092 54440423 609848986 482726019 695209033 658250571 775459706 53971686 692619609 680583137 965956054 930011938 930840456 723969014 974258963 899144368 969050246 488715851 540628683 442533894 792963694 490818976 992653467 138509078 382633375 163681526 426898139 207055044 897841772 456933729 485484374 222081113 661758546 185184757 644511936 238369699 575821164 389533770 443482423 153315859 769592061 118366904 402207884 101693524 467065301 175140377 893624689 48862529 182714163 172504526 949988734 405402925 569303181 508359252 830657032 256626570 424455291 153185555 589313920 571773271 892812777 778204537 887097406 882548977 913484427 645238668 663719088 190503647 723065331 509919429 521463376 315798263 693417902 209961198 435072806 174289195 684921411 122680067 259654673 55613126 833009101 341808932 775326930 284938917 861133157 499719702 665961468 59685264 440736453 185998440 285555524 269830458 979632333 446663720 720423959 676496658 984563200 592844923 962642159 880017475 996498583 949482093 960621005 141153234 272135699 231663512 919302944 71119756 388274640 273076075 327149839 146729928 755135342 446319835 866035637 398925977 629013606 618801471 986164170 406520848 739061522 336156116 710068415 447640254 801167112 151956694 244994058 49372108 65967700 28242343 733752456 593246978 595075151 124622172 930144965 383768173 777832664 179148739 182770920 181176071 748117833 56661493 795295062 43670636 194560260 191503879 948513891 893144942 989886258 988596462 991001020 311835411 820306479 129329769 544156476 467180595 610392672 126353571 808847768 696146565 832596317 776041802 930058309 739664154 752599319 656859891 882023357 43402374 162927708 155477327 857477617 735495334 922728947 898689501 960753010 578994640 622904354 491984088 896047105 4906149 209350529 159670772 987149992 916046962 949730868 379682092 676800212 338899136 767839976 65304561 727526861 245101436 810152414 3228042 141914855 95720691 915547694 704654653 976078709 79867677 530712217 355454476 426489682 307513641 616455082 553647647 835934021 328206818 902387491 99930967 274234285 104311057 403700288 16991938 811407159 520801649 876934695 395343692 968528050 509958584 719135200 495724210 746733574 372428358 949455098 870109005 985548312 803454333 970686873 777613804 962813809 336466437 447549893 376956766 406927205 136317908 752998202 90293804 681514104 279243332 871060440 67992598 882262090 607678062 650025443 176324028 604775110 18065669 255968202 154684331 934406166 913657246 980537488 644275424 944463042 882050692 988560344 287746626 353020197 53380411 916217341 601594033 868688051 725401197 738437725 406302019 693032909 684225180 788909150 19582968 885594104 497020536 672857554 111425070 971758380 597109246 869851935 683448039 905515939 178517040 404310896 62026952 741112200 325239410 833196690 122438761 195253848 57226779 969928275 493543010 912068548 312103239 771485030 350917360 825850325 227007423 517056365 132499663 226377024 107489390 254247787 201999428 757324052 135101554 968027804 513272565 776892493 576770546 982961828 490785260 990526855 61994021 339884766 57047709 669872324 348432841 937618710 910594501 914920021 150831979 615186903 399590177 400340686 290056497 738446464 419245826 844002924 102707481 338825749 199489176 723146295 355000853 755554637 550446897 794250033 6029686 223418249 36997301 367457893 39242272 750068520 100843816 591898782 267275093 443991556 178635263 608570396 110960037 923945388 409426726 911982693 609844443 766043941 351986992 383074642 351122522 453346264 382859984 393900388 98855648 585180711 117291374 291556048 116220584 343701053 117544958 390806693 147241331 793352514 103764473 541610731 157962031 188720421 175174478 404805363 347956467 728289872 476418039 738697377 134951771 799474216 14223955 797227296 71234400 981460320 739438262 863606905 312262864 943503438 363625115 558008977 121280404 172489892 158905123 833388599 623932416 686458052 472251964 599459803 461562249 810314645 525195930 562291618 125046312 824430456 408599461 528845604 483690565 724306462 188087951 242255631 84128432 348570277 268640521 446632574 370947148 874665191 522685184 967015529 7284620 936152683 471341375 970182571 352792061 882070806 438481703 834571582 811654231 907131589 203649787 947832243 413392801 781694545 224967962 365394454 266829474 598797973 169227639 229858069 43289280 869161467 308505094 461492936 258727590 875504073 767924821 829848388 789641223 822082408 516532295 853625487 298313378 344766613 228320669 275331623 116758976 189486628 29531660 927249889 556866220 580990739 295042483 449584336 152131957 685209914 2762799 181923789 154457740 953325568 190273457 821172359 653076405 962637989 897083270 899563738 58766701 382425808 328689965 699992330 605479454 641824082 467786801 763060458 376001514 874560579 253863311 988809025 254290127 277859140 103879935 322446113 305700033 452548310 434914312 837764447 32947081 453705317 309559136 740933371 4053429 462914771 165653595 888510770 227899389 776573302 389199395 986127300 233633759 265799143 79261439 358554325 202211869 788851685 138654502 750529268 391901061 854386362 419520993 930808685 657973358 688210268 622019105 843589753 562051854 912402228 432889867 755502790 42070182 46611149 44384190 717454266 201636436 631450249 8633900 787494271 94261738 578756200 411065336 809062991 416844031 747607583 585924034 855956280 261237639 656956719 403974443 485859893 406797611 480585253 171293136 683785354 1103562 72525010 61681796 218628743 217125148 693088466 553761897 940748763 787886175 891041195 732742013 956558178 531629196 820797974 171412507 830374672 234061159 392262361 309448732 670770467 297937955 316778964 150712227 976843738 328986630 647033349 111981047 928846066 275841722 579206291 68585934 901919419 228272158 795517365 140072829 965195953 808436237 842321556 217942415 796430176 632602563 829991706 578650895 890086223 568998838 786075621 461734658 539676398 259826596 369746145 22123943 469737975 29934949 408131507 355010640 561427358 142658120 942155853 431944229 629816396 328573607 730835670 475695004 841408209 125117943 323120234 227905846 619896841 197967433 991655705 693059670 754621722 374771246 735441480 626203128 996909150 46116027 512963852 255392098 719481163 143114639 241661220 109583023 350990431 172346870 780184589 174365939 593676587 562716464 611341110 175571699 930902447 347011952 829971299 755381306 802894583 242293494 913624449 469396019 669402170 170903659 276029719 111579079 177024903 70724427 907162590 787876188 858389255 693504602 881587073 416767027 790197258 537656878 620328506 308839776 557656811 175043542 218802956 188892456 998088877 50811125 142263750 14808921 677169953 553455637 767705571 497491304 510846585 134769930 806076809 784412935 785791982 778768562 801992764 655288125 818394738 730348001 850239389 256126549 875202578 346263607 957548518 766645507 784684690 569740582 928480181 300711 993656727 847487667 867711959 775155964 797427282 77104397 969956908 145386546 867422398 345028573 735495439 447179692 801221962 532674759 919505663 404521331 879819469 850087477 963968309 629756327 787702499 235944211 732519959 401482830 719801934 326331334 844146910 790571851 858322660 496837031 600074377 388041428 611511584 516530726 526860989 47572231 838179913 825991362 956067251 813826450 952961351 413216604 452903539 35923056 498777550 185385106 235141063 50035648 882378926 689210850 997883023 525679987 979980320 454833506 472454193 443087097 913002154 518452991 599195032 423055774 652717155 43270738 882724985 337940024 846899646 575754257 814283917 688662631 791432434 479546323 658581530 373424917 885009970 540430363 608675907 19920675 687157475 521968924 626525413 276126372 980048775 269537135 428231922 71901784 508676158 242385277 496971312 438773297 661666408 98310759 386420463 85736894 394119844 71076355 783788489 612707489 718796862 330210861 409058481 160731297 506737297 371458578 567708310 87499436 328343539 145847663 987153449 228187556 548724401 109017975 888948049 469928832 917579394 126010874 330395893 235140205 935341702 539981538 799411482 742192916 886114581 677608079 705589489 699122651 976597896 115577846 475610754 102532375 185380942 141082164 492560818 346264753 619363741 318511773 747358781 328623655 778542394 51848904 319516193 278683677 289193043 146229952 529629005 302878754 557258287 129547580 626179060 493094214 907364783 652286915 760781081 3062225 477704218 400038761 728351581 337024069 536322836 320204421 494908826 484832158 887550069 381939675 794497070 274464900 303689825 36500928 507235116 282542635 917226699 909392154 951581957 706784644 808219143 605097953 689575878 162281757 898165266 759598814 962936870 485527683 920811983 129174526 541807097 404791811 497920294 266972270 709756293 379090618 692046497 687825691 768712615 367848187 774189087 328231991 643378243 616784874 677849826 631466343 704608145 316240297 396415482 351142012 732441636 489008474 884533321 46589072 877161478 860050237 984193370 495294937 760368252 30267856 471578007 319180149 477308716 275467469 299897378 297938327 696132284 52971639 435068569 390285944 570957111 324230916 437407939 307155881 375880717 64028770 537821600 493145017 814096628 402234225 861482828 180034363 712568401 99987804 360252540 354794521 875429346 680714700 684977987 526042730 769278920 70255484 272859106 230815330 267523219 3947561 221451472 115358516 427877021 295471339 806909222 299365021 341530307 296930300 983252006 167066644 496038518 442631877 737498088 578158234 974730101 746308437 809939375 55996228 479779317 417130506 845041363 150565538 269840532 223403018 961443001 477887667 832989517 377595306 981023163 473120561 660659932 502835340 690245225 213649210 620629708 540646170 559049488 334705826 903087072 601090215 603887282 115548595 589718486 314013325 986812914 722982113 740234660 104356904 345329483 328490619 565968006 397706425 738389524 430546862 836893395 401286126 766275083 763361129 823076407 223521652 713422568 157100655 702038267 140859554 366978668 16188408 336878780 267091623 872225108 574917234 682056569 56183219 404938497 17413679 155959399 46816909 235298280 5313521 114995421 63628555 361860259 55298524 152889699 125976068 282407590 271938121 710669970 399688202 876364766 231004281 767478600 317041558 437752200 52066218 120917958 22163259 388852717 295297627 631647969 314780086 493126143 189707587 526630763 239574737 473799506 295107442 828721995 344928588 567576055 518960581 601749779 97925872 390689281 180490623 284361784 161561655 534913645 54954006 701579635 626934382 729625888 310334852 785761503 489335714 948480490 540311602 732470624 161174646 742188661 297064624 666239593 593903955 872900618 123187827 381221576 48153836 190533907 164816245 222138074 61164560 968265917 675737561 865721985 700355929 903164599 429104015 932522210 895467533 983748559 932032554 971200442 640772663 663501914 297766176 944310311 835108530 863715660 688434810 728952615 17942940 496736312 293225487 823495036 207230898 688858528 572344736 790212816 282063987 997677988 418926596 688833468 61494605 859882374 567772304 616822719 187664949 367632540 225644549 451602836 119897680 329439619 139551914 646633062 408442236 734600371 122802277 678994151 321290324 841213401 347805034 949158810 221682120 621009858 291642095 318186606 132321392 217979226 14686751 776523586 649229818 688627125 464347078 646044368 615163598 782690600 370472710 820698603 404139855 409230443 306598125 675598439 295092231 658469969 253498337 918934534 614239171 772946276 62670459 570552384 531339974 814260716 380625390 956420033 206831193 655587482 384913839 901521119 610929460 934189004 676186519 957592376 49294746 529985810 397740907 868426117 105654416 180807294 108572931 404275994 62809537 921990872 7306243 437817878 349824660 395506405 316722190 523131090 329537740 566898620 278832021 349126696 217870767 689812581 120921226 350064499 165631416 508183341 362024678 770300841 141600284 210480354 32961054 218272047 189361935 827088242 592297298 805897185 325292861 498104811 430161605 730322098 531365474 623387972 589951142 989806707 777843053 819307373 798479436 909275250 341352456 833891955 211642809 589737479 30124694 285196069 65246132 843696600 393944909 611367851 498275415 940030836 196745183 330867137 33114320 196572968 125320264 927816767 844643850 881807011 130699762 401845727 252457326 564130005 472444487 495322905 456919905 768271709 551257215 825479595 31754689 568842469 86511993 579879851 252447970 728680687 505911715 714768959 267010308 950767349 647645980 998242043 883844301 919722337 4909330 565757224 92754645 885993983 642459461 745832866 613630002 858901156 420973154 766545939 288124914 998740370 263942235 706710610 75004961 475419739 58203914 572528669 355751115 732385200 542874758 776697781 275348928 557034785 345884811 653216732 157963684 877518809 235458148 641698200 6711744 269523425 227440346 433342758 243598239 920329299 544022785 638768607 324079908 465176840 338949744 555829886 372863816 786039778 195453150 993032069 578991431 946515698 569057776 896951535 112471413 281482165 195286747 677279949 296139162 719105722 93991430 842526575 75150507 784438471 278120789 879813654 642480404 714763498 128355090 427620725 20691957 879319715 212543005 450895696 427819035 570238760 555696553 675534594 390164312 805094733 357645205 461662333 17196704 425519103 330848535 365285534 67843676 268755121 100920342 775309376 322971982 618967864 599290765 632809132 516139549 683192464 103528067 265151155 212879512 792979712 239604561 383001702 317959936 627210770 112594168 777321184 774033829 978645965 13603313 859949846 521265556 612086310 312924984 610650299 265547691 887783171 182790041 526086890 238843331 781684405 304416141 326568609 71987779 750641190 144949099 753709859 416939346 909844370 169885325 735972448 429013494 559832521 57109865 796287952 390139212 516321436 470142624 707782242 562661903 910936686 552350671 905917671 187772848 552741670 238916086 772133304 116952415 557687511 234698071 327393503 16325092 147356726 16275512 759092229 602493714 718392413 140805359 409221375 403201880 656291377 497429366 783077177 212322011 852228048 239857324 930063340 820774425 930702768 497958010 784022907 365023075 904627060 710688492 810087662 494843505 949707249 614409027 811239063 533224485 822220510 70991468 77961399 47491874 855206187 756215752 776017565 651344776 803532790 18266796 945726000 900556990 903071575 108817381 552953529 494061303 791511625 491987029 624537456 623330579 864433581 7276165 947456008 560473522 780583888 434769681 646631901 483973638 894484180 252562434 576397973 65176691 260927486 174668706 454579510 424064941 918761501 176006315 330709531 101056879 267830216 21573900 237850602 185176322 863792837 555846290 701629625 544787519 771500378 697754436 917989204 79331023 263833410 103155182 488517762 42698313 782104728 158071092 967726440 136518512 990875562 66879110 115814695 8815299 108831260 71338723 405317249 188627807 304628988 16753324 109424963 74596898 918168180 436090430 604530893 591610470 909250423 618521415 681793057 249363315 726727704 115707913 223554039 221853227 417682280 268051604 652483381 301550185 502891061 358604520 620475393 218083533 486916094 168857638 819988204 290322826 564393032 373012266 478110846 163005858 223886449 78436255 672919806 256552420 368524654 10990933 45606430 1966594 265211254 86044946 882553241 419252718 495877407 98835738 128452370 21488619 864571484 348389773 434136923 368677263 999757182 688121193 869542634 143866483 393698390 389371229 868811556 611143517 813359717 106430720 811098906 351527711 766743599 294801298 898073122 348542548 693632424 306997229 525152906 188906083 726019854 184493607 504286067 413496645 477636897 135619114 193597956 54696136 765163202 336985959 641815981 210933417 295082531 173951638 857384336 352344403 546392327 287405856 838813505 563197182 840733056 530270901 970909772 352382954 571968437 422068323 495729311 397945075 751491271 323198323 789824263 200979581 512976251 224316543 851957277 260601431 460268733 412633792 500570926 56868482 445264268 360434760 961075170 608639777 836045561 731122151 926477094 469549397 607750349 223377022 337632662 259512342 646946431 646343982 879668937 47326313 622576839 104635882 485139594 480374401 743721865 627480856 925768289 123643464 840878975 710172336 990366440 250224494 660517711 502449268 520051666 141469769 562488094 471128294 583265047 6364572 990932114 154424838 914086705 96960447 385615122 13465961 241871519 117776843 367022084 141270842 781936491 47863887 236338862 140656243 262465894 72070345 621293082 98834934 348877009 186050592 377457153 143019849 152549449 125013678 323591494 186078327 971207731 335332945 856349317 164889436 785462031 85500002 782622033 569653231 899701708 454408892 648477732 549694697 691506880 378225637 851032999 562170357 779215683 314112581 925296100 441851639 542560959 66810389 945426461 38188097 640050593 468632098 532745307 232097335 569493001 344425731 642763832 231257338 274568574 4074419 907608314 69567405 389660482 45883343 423265248 178374545 989465564 157485389 365419599 164956838 502031174 83148690 185970107 1790631 541919688 132527266 211786921 100247733 452529008 78416888 884780903 773880104 802818824 192021558 524142936 223451987 409298424 84708111 169567380 70392574 644066068 503792359 992214741 645430521 905259488 140892247 657338033 258054946 910130385 45692362 793328964 29575191 694440580 264020200 988339469 461258078 978904466 50277583 194141262 163096933 600290010 251316722 551874304 417389895 545591816 317224710 705202224 29224653 953682404 220140925 450220594 212498049 862187351 158715674 430551512 155544895 411007405 327895253 381297988 348409834 768391094 175195126 825426262 165797988 953253505 733609052 866646155 253158078 803681435 49800796 614946819 313665500 850745462 229326526 293046136 52611395 920120699 813898695 931553288 756870104 764580593 600157076 652099587 300362309 463176609 412840809 926422258 28187681 424978426 262643140 844837889 315265720 668986019 61963487 675067210 180826523 291988235 29979000 909279420 729071374 995103040 726573121 746711856 589042407 728801479 209156856 722835358 73699770 212432436 35621577 755794668 290997222 605580055 165024163 636362080 409663551 980194088 482779197 744357881 509116843 770575855 745418941 990062421 141340793 792113342 206231254 643978291 541507792 797687267 61290945 776605697 753546575 974424071 243617687 560375924 476034514 710154842 561444239 852455722 573682382 940149173 875374108 908213379 28693574 754706188 157890859 256999937 6497227 582352467 419310216 737988533 251034834 616177589 275138704 573891276 515292550 886035649 21781069 913167530 573976959 973839600 479454264 822328064 442620724 804656119 773419881 816513347 262914584 564979979 107036968 324649792 295738477 890062166 273513391 556369443 493369874 883922366 422297483 755657760 287766925 332319207 106975616 667740885 471088584 859867272 501809148 522650237 317313923 525729769 68913894 805677622 458265994 483027105 213138736 694568477 255055782 428567267 303588975 617485605 294258086 858492130 684387987 826401387 195951057 274346236 96353590 554318350 322192408 360228245 114632838 690746990 577378276 713773348 699500850 945558986 662405171 728157776 575289560 649015458 493130722 884374101 618446365 954451749 825817748 954175847 150267558 800576490 621807716 838379403 35220608 502321127 366554369 654989442 560113535 626554172 2704660 271731181 219335045 704164457 35422896 159320334 64086734 176268973 36144730 229659082 201747120 911562797 342502587 944293473 802379202 873893795 170433379 812345481 363222654 813524136 452376462 855574038 557326088 686000817 256141556 385176416 375662452 396379028 265497098 541418402 431752995 698803011 468635020 830910160 128050328 678487049 219543457 504129076 281905534 567528912 492438318 702680119 583340383 645500386 10960730 995150559 612237362 927147874 719631075 843525241 343681234 838523007 549746187 716302123 252678654 442483743 26973716 480689442 211857918 623736175 273345817 982571446 226647524 741130036 282682787 823792998 271099609 365949438 208794790 698268774 128045471 580624293 157187192 399789004 131879064 785222259 334164651 951162215 584896040 613834676 525503006 660355748 348915184 911687988 564612480 973390147 330714346 387089560 269178191 996613067 863370873 902493552 806892418 866473001 334533259 863432617 122376997 740414060 470970882 652814630 65439598 581889530 120084306 680285981 594667936 797825548 768741123 979613719 567921589 756645547 561914692 643970497 138964326 389212887 235392278 836334073 796979460 883854527 71613163 98363683 15673736 341878615 204299745 607873192 410216155 856116772 434950917 925482992 24525475 841565513 205703571 415907314 275948699 967878424 216702560 865252503 697451308 863813161 830364154 958608365 730973488 845093919 213720907 599577755 9470457 942453187 867545033 935975259 705249447 712902074 513371295 671337069 433858061 981198488 392757791 407981200 194040668 441119314 196412731 345927488 109818917 437792057 238744618 881417049 78213039 168280879 60967545 135961947 89959298 927040737 880555596 920150062 129909638 783165991 142761795 982293514 263733323 636431198 152744702 857384581 394474170 717803172 340406764 434794095 235586403 470957036 259735130 433057771 61275195 632283418 122686401 630980091 255727382 748405400 160343915 776476793 157757327 377322211 192434476 214382295 18089905 752688429 18320835 324363835 32712334 716820365 525950170 606601710 382591049 871895080 418443505 475751746 366796020 586644410 349991346 402248018 16126910 637658392 237506978 916639285 794387352 836342041 419788149 765986075 10807158 838909918 479406516 768134761 197093625 594851401 365562797 687252340 616566344 876599618 803232244 957627965 254903837 584069159 47701336 564005592 384494625 563070480 124796678 787352464 717748155 849059297 270365502 612136244 245154601 745577030 424105745 879438979 113913432 219966288 138264010 252406411 55320260 351598939 23846113 308103036 204467827 558466583 408947315 827184847 394635103 507000489 212518527 786097971 150880590 254892236 184128685 524238272 257001798 558234219 219519179 388824375 350306130 905866773 577290292 820519492 142754384 982915526 56325172 678196259 627108504 835692589 670311444 714390770 495160745 865753217 739798019 947848246 613846195 975329135 22759960 208698517 98168217 800728345 315386119 936597129 694404166 725088865 370780215 643194274 641248404 715215797 460873034 861346271 95327800 447116087 168938258 493073832 369125721 893406590 565516308 830865897 774229882 857581440 647451649 717630814 188492552 263362918 152807116 699734916 408162265 935114258 840904925 945270380 747870874 877322583 251345210 507084093 99966226 560207017 204734054 646338128 220701923 351854329 78040575 657190942 32884567 273053860 5825232 231215207 179095894 931202654 563173134 647910726 136105044 837911611 174544556 993062897 691644954 787083732 174723024 458648269 376309298 518736345 169582696 796813577 574375744 650276588 393263744 419397590 77972400 600971397 248001817 969443348 951686883 965392399 444882377 650144353 561057815 838786785 691673556 927785227 400254026 829646915 668766776 723930665 438439816 882471425 586632767 588667647 515915075 993847035 182297732 609827813 63473326 720565188 420533932 926209326 549914930 599883004 309010208 568868783 164741118 419386715 46773794 704121272 586670839 691446837 342815379 911972437 105089986 711763520 595851387 993353467 499106122 766275612 399220176 864685924 774252607 888497441 344232613 873082826 305775536 346628994 197476125 443401689 64211488 519578321 406215031 978518928 961277292 965639849 533635290 640763849 438429863 978953216 897565622 967820519 467928644 700164014 660108787 748331266 354633540 594247562 381565980 476805858 264270738 388336198 377789659 478754617 331877140 904618452 236045668 982554659 580183504 711791503 547902335 989124361 152452741 184574453 86228103 905458137 451443182 628850563 572550963 676880532 596645536 850396790 305915529 501001694 308220803 385587130 276426975 348165848 331099678 785720740 202823836 480408374 146525371 599826472 570299380 742989133 674557924 874798513 275870006 802977396 333275315 632488085 390450227 390798202 139944925 275633644 237517805 408088348 341253804 708026511 117165205 594952172 436359734 881164500 867113819 874440289 773159068 874299455 779397727 838461989 616660 31602146 28022343 190429838 118823554 621623028 114392246 188784302 62733530 406298725 271466470 733859995 716609952 870157407 816074304 844769384 288143152 380252204 132335258 184513454 169516392 624689657 267455277 710769661 630089904 878666218 467070757 568160109 517260010 670387971 509386610 588396651 383151940 863391121 420464146 486848126 439139758 786629306 227100122 449082276 401952841 444559514 376240671 558887704 312512308 691111617 150884549 500708565 58389252 166190230 1861661 603479282 114479466 900164369 497712931 567819133 436410361 658987922 357459508 437145579 109379297 475986479 396063606 609035736 440383575 815508269 379967961 703004180 103123687 695255887 15784124 228627544 12567273 603488168 217399227 415080935 208989591 371617196 113397239 344640887 256290254 609663318 142583799 993956580 112801720 989411022 721528441 819117516 128948658 535259159 55313339 564160231 545307210 740475990 415111721 911312943 177225317 568280098 349573619 516549488 296027429 816433477 431812309 916508097 696195344 727482007 330774714 459041891 383039217 412230796 71098560 773497322 281764508 432088366 26631165 446439878 12535616 72705569 31698068 675127022 38449161 484808979 43276098 814688452 682820943 688194030 398239854 442415402 47410773 671642678 95111955 357730479 221290821 526992306 133350982 725849578 92215639 840664263 527821621 682380696 592273607 654367045 627412551 950038491 565210391 648449760 53895443 639775519 309915157 732324576 40838316 584014392 448495445 753498137 474730621 692733960 109932322 465738177 85356094 361843600 65486950 522408668 486343747 602913877 156157894 803611757 482384112 977966244 190149439 333840954 93205904 587833051 88614412 340017216 180624299 541766086 507941191 926138824 78451201 934493564 177364253 828068348 353668189 743986159 306371396 779527673 530621879 881340798 862215091 901618847 364685876 857146720 600091253 966103049 288845633 804160149 307488356 690342315 544393290 589565181 393213050 630661924 22019444 891924189 420823937 817078258 637310176 825337319 449912422 957621419 328907223 969651276 466733570 811033975 241701884 389515863 332121398 414746154 234892405 653155348 14405213 222904103 94902647 918711801 41080839 857535814 376644736 510483432 456696206 832555059 471192301 803294008 194106550 394539485 281184834 998230613 988901383 993607381 163033494 418122811 405564449 857482455 29916942 494465691 428580879 587341217 377889587 669545894 207650453 252403062 233437978 309075219 300203868 712845907 398861142 814933566 28597348 694196039 446141580 609593032 66623643 786735602 754990809 994363867 55387974 182987233 72586128 802802914 277847701 568124978 256408300 480228229 42987778 60144670 4884927 424768749 162662630 953508577 154605034 911670000 729983156 841998099 476107840 642746876 136375905 416395775 270876484 791387944 708647738 881862818 418297659 746348738 499711505 912719205 385903171 676272740 99573891 116072890 105338896 577196855 548850252 603264776 565460331 573073372 522382615 944389120 911104364 945058389 553612696 949965277 836101644 950146177 792606728 888977411 56051478 425283095 83257061 708655658 443322647 742244991 10493586 482670097 159241750 356950645 48169013 71126238 30534605 177559746 137584258 754753945 692074125 981670113 120770027 183398093 162872464 836543357 158592264 160547229 134752136 821767546 314708186 701845794 551692631 915778693 634501818 934873014 279358269 600766127 33856669 521951415 226594852 758951935 178550555 384873511 82741969 871260779 305645893 427368726 284099907 856324574 482290127 934946105 299765469 450453321 19613914 322460173 17581069 75169161 55624608 860436356 418310262 707968560 337442809 491408184 64522492 575593744 197029435 903710502 13281042 801371148 12931402 172901027 15723419 640154826 66464820 237378493 126898539 579518146 361349034 736746032 18273520 398166335 312369397 368504821 60087381 213395106 147995982 622513835 19178069 470027468 44363455 665965478 301644531 429575990 131152946 953370668 515178939 952041778 774576594 778680489 705230739 770709520 256677456 955582641 526347479 555132109 475572966 517577326 81491687 860868434 444199419 621466074 566504545 991379638 631655707 968729799 723495594 815421016 599750110 729244595 99365569 135570223 14543685 209718889 30328210 746088657 319278506 357243863 168839715 814841044 731812894 742981438 695242214 849657980 694750765 807586241 756719107 851806687 290529604 478255516 98555411 285374018 282001192 366939849 335672301 778486583 95060165 558142485 514456918 823705682 543593359 962098120 475145795 508049047 59709068 761901772 425182588 729405869 181587631 848006031 280227712 391107724 171693228 467678055 186150712 412678051 310380291 563113658 183298809 712322200 71279624 333765994 250479489 388167004 113499291 476157367 329429424 412029276 307791155 421378013 198808518 397386025 108833942 496645336 136885750 568523429 318193981 489806733 378960917 808554455 349732523 717125640 398327061 638474887 353212691 661953978 31890508 803049926 278017038 424173200 312272260 686130313 297537419 655005623 179582750 987586956 762897052 814370808 573915216 930678596 551194849 938788459 583427030 801375689 766018448 813628306 43277258 466203535 412750452 731600476 211357334 860216630 661475006 779529765 134275814 927515760 808295330 848100625 510971930 670976721 644645099 729807366 289510306 953065158 667531870 844437996 254073303 410781189 130294928 650511162 22032640 842675006 657763095 710308158 467812179 667505007 384654301 937770093 872092971 912934559 206129409 819471095 43168466 886166265 269406296 405620345 142387970 261189985 132578863 524370491 230231897 957414867 684469931 878429173 595383346 930747412 456350914 741769125 321463931 922761713 14573221 579295028 498254469 765257510 659814499 780473338 474334784 756308755 538601891 862876493 613781332 877207672 840348020 944349897 886222443 907854171 547463748 621354057 66265695 467314529 244416245 456100430 66985321 869904430 18991919 953126863 81532909 434501720 64481993 169384896 144836440 498731781 394502040 787904073 556907590 954329548 483010955 548937130 90188485 297375706 223550901 986851427 61355122 556403483 95850782 448815072 213279278 685862957 53294643 208585789 156846441 176052045 78843561 969318220 621400952 771245357 436597315 976906656 290526891 988500069 872873104 994780242 802636575 950130390 478990562 844161043 718262008 806147850 171091483 617728778 124897927 532306969 227227239 769485997 13298004 197631303 30569998 153151389 138313167 836869353 743131517 994803822 381821804 635280761 407869588 809041070 197996101 371574018 131746075 313386983 11891452 874785656 614896069 893426665 136177763 858364970 697469293 837953445 68702010 750786575 745859892 881754521 674952983 707713479 10008442 522998554 487939090 558579035 503136129 801915663 196039852 250971999 89556366 638360630 425652075 950503023 6304002 327436459 216411711 502150372 499738433 935235251 465177472 726689138 692120512 713341041 578797874 726022402 349655458 892076749 110239950 546172527 103890695 656230311 365614076 847872324 274685900 585313741 375840541 822142217 307361173 387463599 8743454 10938068 2042709 729771338 198444116 723291031 194261186 641340723 251744354 587509803 378702145 661069739 117822504 941079417 654521952 689702446 232064598 784540987 293399610 672375079 41944232 70155297 39739214 856368653 162963813 826346462 106263499 700069347 506989653 701723039 249753639 805657763 125678308 370904644 137288168 987277677 137299658 417552025 192188425 376882067 133407911 209240394 28885522 636752296 321923078 599091340 282339450 578346995 64020000 674983822 361061139 370630243 227425844 309030214 189223655 191282307 186225247 911088271 688439119 822375079 573458535 723270441 217074099 331368302 317332457 854013261 467302942 710323422 281958587 526637876 515885976 691245899 368243979 959474320 876465453 881164147 823022216 960481784 856010542 944479235 264522757 502985111 368537667 700859667 429591471 872042433 367261235 802684400 111594324 643189430 153029595 529604748 192302468 210788094 37816372 268053135 202844639 270694454 79919393 315240252 242291326 973542409 889828669 952983160 848561054 974631592 654132052 766206397 428423827 508948220 32943843 302187978 126645238 254625100 81887618 348758194 36348621 789958303 150344982 529082911 354998843 996281706 204189760 593019219 447409845 466871114 155670279 562116123 408452683 594730071 1262157 337033533 331252548 753978149 505500033 925032519 322823367 673181741 467428415 482072468 462662694 743111017 456325772 569556556 72248167 73780942 60117158 279257795 64923797 339106531 278862485 812368705 421838533 507781015 401593823 845015715 560879697 901054963 226417746 888628951 67300790 296954585 157259074 805386354 363508993 677518894 387596412 458478152 178009610 465533636 178374791 329081080 71829020 216183777 122875196 673796495 578708425 965576054 701839174 877345509 754410349 930238057 437500716 802989236 340316181 573852926 432043298 456918116 107471882 863012897 400829128 788123483 434185058 537780168 226763965 852904580 210244998 486123450 451857591 764653365 490008571 508320861 350375323 791686669 632696502 923329882 776777881 813533118 396284963 863124964 441186629 568961381 399480471 991601729 788384640 904215153 617186533 761171632 645052990 900683894 659437977 868406452 128156058 130764804 53453527 776220190 219682529 441439871 154701249 340638710 235591847 340103604 283456427 987964798 579792441 904462494 387993886 917903485 42604623 171126835 22780410 790761523 338618811 493223277 302351267 832264769 402028495 891476495 208233590 702911910 597188402 943467584 260478031 808372225 29899019 404809733 338299640 509372207 354481949 704797417 90622490 376385022 345977503 904654945 671528718 971659430 546868551 745051954 82916705 955769813 130979346 666480017 607149306 689877962 165857310 267870416 96007664 653361006 333139724 800516444 317642693 342042063 136912237 500136986 283433015 644126228 66616352 753249668 114670803 808755000 219860705 287310732 127974382 381244399 108646151 183961976 138541698 145881571 31152357 844711791 592696243 789374605 497171999 677955145 497537717 984086234 227241369 636565949 20568825 456378586 448652444 514254960 93325937 561289630 554570270 564707508 188782826 468489245 465772820 591327246 212892012 258403075 33541541 921122899 804672103 844049178 93863397 378146497 97373317 991391304 493913089 899624171 532679572 768680354 267888446 972568420 149748921 713427498 19944020 236673262 216401784 568591088 460428747 633005012 143392253 987122989 714364524 734791920 277699695 921989504 778305704 860900595 856995927 959156909 184080345 402195752 147596990 995770421 572130789 819868114 609964513 899813090 138190561 475181336 177326127 561031289 481384336 872369050 714335855 915971619 123717797 506293654 315550943 686452619 672035795 790814153 391532763 533713967 323233666 841180876 295824126 325628355 243087362 783276516 170689045 200290834 111935139 191100969 101316889 268731555 20993165 866380797 44225609 735521639 725069046 951006711 118521910 711254597 395561876 548148037 527066172 811121298 149603521 613283887 98831993 773295133 664511545 890257927 825830210 963883934 761375657 961384684 676415638 770821477 523127656 933332039 618163334 861362397 832764001 985272514 940060137 967338807 69895525 125668136 114023003 764312485 10144796 288973164 129486151 652687857 420987067 450025485 278116906 943654094 395882607 511139858 51863941 535006375 248757065 606520081 63181130 279964636 140157436 847583567 275429591 428495566 14167837 697551347 475559735 645896022 99361419 729373775 609994645 974841127 183769300 222919681 148015158 628659047 247891025 362551732 225988613 570338276 218983647 374766013 106960851 427984340 404000466 657893266 622370507 829545922 740769001 762299841 683403327 889511444 620727999 698776667 368251645 833524464 507084413 971346508 621403719 964801693 714929261 984630350 714247606 753748361 88835501 930567346 856726117 905983801 375096277 425489979 207549853 767476199 272114859 562705354 492152055 791145033 765013969 920252512 496720514 816131820 305372429 765584046 712873303 750195279 460450265 490560495 448146557 604149280 132347302 540341155 112924282 922816318 98292983 118595250 37100945 953273189 429030671 517318155 340836833 550079439 141193013 668130363 658950265 800340953 192875592 223591196 84985430 650231253 423057899 820557081 61320286 495195094 209821550 955819129 45501223 573161823 175885506 625333894 304837719 671190208 34054932 333233817 84509113 662489982 378173781 666276765 247600579 733402254 271060735 311138997 233575813 246170203 83803357 688930028 432630497 682648882 172981073 607091544 415554028 992985483 446894057 936167056 6682067 753545216 399062400 870342708 491672230 719655792 103843550 948902975 93254967 689599411 66361768 856490198 463100827 548202401 218429179 253124164 241111533 519400184 82670843 269586055 208304597 711967428 185525820 686705705 186721624 591267995 388958690 684826587 563909321 720943595 450383178 656136797 643251773 665239280 484692329 577522769 332273869 972906954 367878308 389191067 47919081 528204202 48290833 122509893 68008323 749408562 659017774 845259228 715096713 913150456 87138776 588222317 422505116 893882528 638266773 757779175 555350267 756627890 469469346 704374981 180745425 690574173 248987520 311848647 242130404 849245438 534116602 613407696 41301564 982709219 558230190 932123850 550449477 654769197 372101996 550311713 112219393 661439263 426988954 737680385 408080018 726533851 695791325 779216160 213590811 293373128 247865152 937558503 468212151 736249390 570752243 943972468 544457108 656143603 355090594 463427912 285421275 850508660 842580101 878622222 635519016 774811330 716876509 828715344 545921101 688826546 588894267 827691507 823869442 968129417 703993543 969882846 735551609 777859295 641322973 857355826 828816508 855704519 788765225 993438825 596973094 684275728 439992184 956005042 635758575 766064586 376716932 954073891 865601803 932232051 312624953 558955178 247714444 450206309 402113729 636731871 464788744 660336346 384094215 626833768 28798432 714438631 165157845 783135294 156123375 933277904 535108990 692355708 509682705 813189857 461323095 889805608 477554149 800517280 152824843 677729438 195480550 708497713 47965292 428523918 294862151 962092752 802400144 857787495 372822035 888639573 311974052 950526095 402486737 684690578 13548568 992020119 47036444 256355197 177838515 928760240 27273181 922003658 838787865 990735489 320801173 573781452 294206934 741421284 376318651 417279949 356030662 850945671 512866707 586462846 41641795 438055376 402507959 445012489 408436742 771724498 263018184 545718274 263152744 965999663 549746672 716431877 141169111 824964811 139337039 906886378 566897706 979391759 372850457 677804816 14967900 650762207 344329121 378137636 361125829 888244928 863693501 907638363 382707221 960453022 122324592 690901802 458325232 971089405 338471063 422672832 358089576 527464053 525482491 684064383 655770944 729244403 318553393 885448290 755748067 908859421 524926601 571674031 426085428 781217218 536861169 583778620 129133747 826008197 485062151 706019272 435612757 872907913 844208044 922950373 912392929 987770112 960019635 978703541 4462047 400538093 79766445 919413330 50235929 497515892 22466225 395352774 322132057 636339333 32141628 579955742 456113521 826309227 668940438 906617249 374864753 943376988 485558504 874339899 368859433 691433307 84287774 950787003 116815784 947211159 565680610 969989274 515191161 802931310 342859126 938913352 856011736 922802435 573026215 881081575 733733113 898657594 338265822 638840937 184567645 968241599 543375876 882913958 44242391 199314586 67915842 640412665 96122595 397815332 296594543 425843316 112425878 322742601 76066763 411541402 131418821 642904798 627295883 677651719 519476979 961732373 709469958 766656644 60798520 456691006 443375461 652446032 481829161 735477196 441366559 703384411 122692974 149980941 15423991 524402702 106958924 752256431 740364239 812970028 566333630 932068914 666830794 686241717 453996691 797823164 491105562 643367791 96752329 802967089 238274886 740606401 142950931 894839904 494182429 599815913 234818044 669914362 163426253 723227708 294686536 614931873 380539206 574531018 339228831 924623847 173627942 260935139 115166396 234748323 219615174 767492619 91253436 701488062 440898505 770954282 309852927 329657016 155501318 824808257 130924114 452088345 98730010 725584837 676210268 688456256 142379700 838349185 114168710 131635173 33772124 320768808 66660876 795036374 634647086 951835417 949284173 973485728 853271925 900155094 354537472 597537680 330811338 775336868 70902302 700916230 85379880 231586013 90963279 886681334 129358051 431098725 123077315 262448720 196328969 370748246 212653047 361746240 196054442 850119363 832000524 985330427 383827486 894497321 779268975 804091437 56725458 992305075 604344040 714574423 64697524 122545074 12069089 592659391 430467929 629774761 303019003 723185031 219212429 445799496 64769734 672746206 120994539 650889749 633862043 653426733 251471038 767635921 571470279 968105633 468397093 855333660 83776790 688690558 527022261 884351022 779706764 882873966 454498899 661315895 467944240 773969098 238895948 422072110 226647974 986204260 872849419 881498058 397539564 525607808 340991362 898123910 555495144 792221878 459462169 985841638 266322883 317240762 191577624 876193720 527590769 671414783 375734916 802621913 801334027 991302048 407673015 713490844 276910002 622853107 222445594 809177451 227717778 283164436 53661811 88608943 15178028 250007602 172708819 226791967 182644934 879683755 535011678 778574900 328058450 827051603 590415134 900466844 194164803 943600674 619999241 943152803 753876089 793004597 230871275 342788338 214826109 840357095 756449922 884923135 775129295 959113477 583924401 982600971 55202087 411206438 86903039 737179579 365438385 415582440 25674472 689510612 244402608 869105860 699175240 991053600 71884362 747155555 58188947 648232600 325741642 692495520 138195742 725256394 314289080 644277883 423718043 794672272 2948509 854055829 372040489 934195981 459689377 674203864 523171369 789494221 665817559 839445628 726445202 939891328 443263118 521688821 362609767 906939067 795283069 802738715 439287621 806859657 569585962 595525906 109230443 139138079 33924562 180523545 67038297 302113461 251426226 990510272 491017718 901312931 371080575 820029120 518987605 591590640 567746599 973149453 905818186 938580757 163821467 672067147 109748423 457781058 281089442 811078826 737430468 807063953 810144 339585537 112096125 139307920 129690440 234101482 145261650 781107461 115051980 307928248 120554691 985104860 605405035 627145298 556326508 795052322 252733233 745036703 535398143 586502199 48246870 221928271 74067874 459277135 126185008 933168150 321561675 499143028 275170079 918131331 20528891 652511322 611977153 783139117 176329598 351422372 218071570 302089406 213639586 387610021 338587576 447905356 217426706 619147348 382488701 616128315 296080253 816019679 118721223 601154137 365985338 464202376 70803227 798681845 659027710 910764820 465893109 916112594 117387122 988670335 447576859 658354069 395284907 792655994 535840680 611853808 600497038 978826333 886516971 904959838 643553906 805115401 320155998 593295454 281212984 679291750 459081127 783106012 64592520 811091649 290968365 739748045 483967527 631620777 50477856 940977155 204188313 505468982 416478346 807791389 406102420 933928349 2917154 403881508 380876807 919544861 557656114 817227249 459860722 682077459 266717118 981040272 192634799 265309551 259557731 975635081 854738391 945080695 774525770 989178254 491745611 529234754 267516019 800094668 367578724 379586047 310110109 376591864 356408165 838876322 504295435 940782245 82430420 244763832 234405100 302170303 52878774 698888358 98975786 349295581 54754518 577967841 461265100 729397393 628141556 643652751 86321342 825629945 202668215 599078671 592627943 906298502 566426170 962206250 645089530 680126329 641480456 968231816 902005800 914993497 882233451 914329166 605174164 640296722 62915943 872126847 247652255 970048975 244357236 706237931 428883968 671624223 139498628 728373074 666839577 751027876 505406470 856615963 316879033 802435126 199301498 627259642 172288949 192819167 1921528 664085486 157298268 491404391 330963932 469727201 255830514 559204235 430946354 567309293 345307215 617254774 232782944 987418447 209845506 397089836 210003815 942766942 569942941 654585310 479242671 507803566 323398213 587982378 365819108 381902184 371971869 470017476 202269893 527973232 495318990 765393801 671031050 959649994 511024688 626852927 227468410 681727787 635737817 788078802 529718212 994256863 918975865 933815755 668310271 691736096 219606790 970275665 440614316 612065153 320942269 574766494 253728625 514346695 61725394 364179455 206538011 719878317 304148754 751676230 366173927 372452643 239016570 802919948 263526853 469099513 331615498 354085187 312343423 462137692 84811609 790766797 142184320 249117090 188183592 727189547 453200315 855713301 330710193 677300745 259149933 370942842 176755930 561424406 527043183 842784520 130608254 813584560 777566778 930408706 840013398 851637098 263245488 511160676 208653954 704722531 165804874 531607178 198061749 327917272 128625708 148287360 64827730 792289762 403475599 972408057 429578904 884613262 656706803 860839652 847179132 876701574 815969661 881206056 382566011 433182729 245334048 950437404 606258480 778539404 52296004 181836389 126132924 599315576 470511001 806385124 504091291 887680374 384436417 417676677 340292031 902130190 578603413 949318050 790435708 998402782 433446383 526184218 293323841 644894976 526760621 840693297 610823438 637712078 523721001 888074785 410319541 840681849 56075937 679850159 557206455 784202913 742420661 783464194 3088013 507571096 353137880 534447392 287001126 607429300 42435935 492812984 83591023 277925613 75574066 790738237 480901049 711384101 627638986 628260744 602956275 693563243 86733609 703116358 163115471 252365303 215999253 925374317 125452015 908779032 559271302 851534205 747621820 793473587 605952845 804142853 554287704 715059900 611053733 853731964 828259248 830012524 308585038 711281155 215808402 489302657 192295910 837371633 536863436 603467651 410167499 981932864 630611403 974978649 195503034 957436988 634135291 836742668 405082337 767139860 763647772 990558085 729013979 911783247 133752978 856209511 686782985 796234323 85780895 839041338 545830097 921928121 650485679 804058139 802259403 890271243 716246424 915737971 752132612 777880167 565558466 848816756 355663568 451045091 95145966 953451317 116487198 137539430 108912802 181960835 72651312 788375994 453718121 833397346 345802141 866707468 367604017 562484157 201452175 697520814 25035711 629467029 39080438 629082710 351589971 580249613 27353427 171872732 124579057 964395877 951564065 978410676 706920414 724596665 456479584 856064127 827161285 889137631 616734872 751946545 156942042 968969422 851126513 992002510 492038331 545865817 231222757 528740100 4416003 893061483 344521724 957346874 3444510 225103559 147843769 573664658 264447524 706966679 543803733 652808218 4937437 937204565 703288323 747803386 170534847 826468750 278574543 922084144 406049477 826103920 485414146 597858752 498764198 565585464 377852227 636566138 420205131 941571430 446792406 943696781 563423847 672411941 584711398 676246407 235637074 513157831 293183707 498463126 346604020 785252623 309042354 337842835 103083170 210564785 20220147 358589513 62984181 561167976 422767649 839705080 460649603 834225557 872460 900266684 213140723 436129159 393746784 508236563 448277345 863418267 615727488 702956944 315439604 316307981 222944743 630253404 26977208 494807616 146007349 573862492 205115411 506680185 162856390 939427456 554702296 921362560 873300529 961976159 940831286 992568765 728953855 893767068 620346446 692850426 48235485 275481831 141895761 521375837 132632588 876633317 371797807 962282202 546824674 940800408 656453197 678747753 20959869 516475884 337428931 704528641 543287161 693725476 621377235 858697887 80054906 455540358 453064627 558946906 377877173 754690505 234115618 600668010 40386204 119575596 70571 621396628 174036858 338353655 300931622 595325562 408977874 740039436 429864074 568595400 171579185 364367817 327177556 942516820 725740295 761535367 729542721 929654185 353637378 546145492 224134185 389822160 79412811 519120800 510327098 544886968 213457489 760450983 400866135 719447628 444338749 527337405 482464046 854060025 709301338 983288948 593202359 729507951 649236260 827602139 111999303 950273420 736051402 902675675 231203970 759694881 578191017 898001859 850739565 920941975 258804852 977065998 39787616 599504008 12808497 394581669 16964079 517398600 201853443 276179203 9863985 76326379 4638246 630343136 207605942 696468939 549942560 753024625 69711738 602737470 564186145 781389806 424613736 460961321 416130256 726240163 75247948 989972582 98329519 183159833 34466407 847152255 241211861 728081276 549489350 708188305 653112867 891877806 142321918 399043507 188039794 228202181 173668279 991965713 915911055 953359085 537963639 641576184 143777632 899454244 606887811 833660479 37643987 367501241 304654697 663749739 333266278 415339356 164373931 848236295 570215677 584404032 288466674 837948228 132584087 251039470 85409971 519045089 496039853 780633587 385333504 402992705 43803540 515497009 356326393 653801385 499927117 668242033 227313678 427225749 371611963 444901366 115454576 593000935 293914508 620686148 432710573 470443726 403984000 870675675 689481842 873637811 533222150 926688624 761652153 922941676 842158620 868486370 381087999 846727010 277895294 982651001 324060866 802769988 597358176 725913360 691606279 879137953 444219136 533069986 372106606 657373643 325927617 495480053 18766298 111803364 31960233 284401376 225180307 977507929 808513152 825569450 810206196 946930139 406589495 823544636 597117509 674334391 381916340 546850728 272598720 998571705 898126807 977127150 389647402 556439704 98060576 881083582 348827385 685574915 674101812 933389976 209502762 747151500 485643328 588855982 6435917 169004383 118149652 537771822 193263613 946313897 583664083 844219424 48791905 908565920 724151324 843402485 121281399 762180632 636671470 835990075 537424385 297122773 932610263 593058684 665145024 420929666 436710993 222091196 650900809 540296941 863994479 25264916 431209386 385606291 977914009 654591929 723256277 272114043 996582424 638917036 658271088 220393289 358008590 248699538 883213598 77934651 360387934 184360512 272321882 113148191 779450996 433858262 567627294 288060294 817552429 26407050 278703791 81686637 273088356 62229477 132015638 112195400 695469430 116006228 564385072 237320077 605925059 152314269 402274371 20539108 936044365 60003978 96431340 23780941 355583787 313152538 519763771 122837282 418811245 148229857 610051501 231275853 360563377 67172775 697451755 146250581 494645929 318271436 518728078 479167854 520372287 369097511 374622847 1268274 562899368 445431750 500204385 405075886 769590051 580956938 659925035 566597171 628463315 465119976 900059004 687450149 857522826 83414875 185719716 64287068 141042465 60412977 296138759 65834026 76290989 8796210 285480582 18465430 434604690 146083739 686050811 684734191 808703175 653925790 982681160 11646546 789458735 320349322 516540294 328224752 771969818 771504429 774775191 477515027 620382429 499078449 726972707 211069513 637210058 91289413 750857368 261957629 426861357 410201230 413182200 209930047 494870019 135462241 331289472 276691246 346690592 83257588 628654777 315258492 848586648 146702503 441667419 272516087 329360446 271794980 832281110 562173203 696307055 544872802 597989957 114534367 957717871 234575615 883282364 409806263 608445546 464558882 670487831 317400527 432064138 355987804 631107173 283235038 826738603 22556689 686203411 201907567 606214043 393218152 620063183 324621457 811126266 760894182 854884578 24114110 98515541 34489062 865335797 410914504 415415679 182696412 953186023 259595583 887973427 451598090 604556472 91155912 623306265 62594932 70660693 7547386 110106030 44084690 983122006 413219637 663731752 56304553 488062861 371040493 461453587 73503861 840642087 581588007 596546972 61995862 281827516 133567589 676988700 620788926 832414335 738983526 986974967 986513678 989062603 927044674 968752159 518343813 531670446 432873376 879405174 351387043 482664612 293334825 696518953 233136239 714250022 325547529 931001596 6454302 198701781 111344608 802344055 619538058 725893500 231498066 240502286 70346053 661860339 188119283 893860614 862541311 880038461 138416754 547522565 70544311 756889489 293357202 823053085 264611588 981946722 895856539 903160743 499346106 777282498 154060880 398159342 62485313 396501467 214333362 403586815 135652556 885875654 488653955 931044665 306514836 871205248 197208068 476436348 204925893 726220227 315003017 342035399 206748759 616705730 109837754 826409511 160827801 728816153 91585247 254614865 72381500 680456762 538422438 914238619 179655626 814529925 376478373 783560290 310061710 665340556 433247183 718911413 546333001 777337952 5104005 789389885 493726090 856159160 170862290 984142329 115055521 738860202 448530514 494613837 329433341 347599353 125273155 280389232 6621967 585987814 39494571 713261549 528715064 704184743 695800820 969062276 698895770 831563474 93178091 378522686 117260354 435900278 90182914 404522184 190462398 844934298 626181936 684939692 61243997 509638366 339325524 450439184 444022014 475187850 450906119 610402421 32885481 950520028 283068129 587917032 91124058 926051669 279578990 874196943 474541256 757822573 303226650 742873941 636229775 703311648 83819526 774040266 525396183 852965153 535285720 982213222 888948792 938167731 64074558 554482467 356172876 824757784 459373812 555476370 109406050 609717559 322871084 682991170 474310759 877023734 65256558 494341947 264948036 704505368 550318615 582341335 220343261 907197873 50965052 638599791 460967030 946346771 733211530 775219977 62258429 832149199 677312681 747965419 672111767 714626898 653367597 758546675 506473260 927711767 675285908 935935712 789483937 975849364 911115556 947960714 863746120 971928199 500413589 865315224 775358217 947104860 123774321 311694984 42672550 276737299 196250585 779210039 460095283 628234095 491936488 851196681 693655106 875266571 768095245 883105057 260538381 421433779 350240582 368222983 53513507 458238264 252727859 364802976 127118699 744406050 388825047 708710245 386630405 647576294 612101665 658503196 278592394 628792651 361710710 644401355 286826210 317769969 31166802 397640746 70522368 645435009 354838528 605765972 449462304 986389219 801280016 819684913 440356881 816052632 466030961 768504982 214193554 536670546 379792113 409592437 245447083 895393867 499757927 714752932 714152952 766982011 653171400 829756528 571980569 679546666 84027769 356721103 179380508 241307629 9154406 604639259 236784353 784542313 615343945 936936526 342888323 663124811 90662814 833235451 41484358 205941876 97529527 394827775 176434168 557304047 132901580 670400955 213041980 812297324 10129722 287292361 44367577 253983602 164348129 245738831 229530263 250347496 235301730 402387335 169361264 812378795 638318687 678762083 409707027 426585611 229754851 827950225 313624186 512543528 63602863 517350778 119414055 749138790 281380381 468876718 60892312 752768806 3300884 595728286 414450658 546679426 28956884 867300380 47652089 603714094 183406625 349787866 2295771 914694195 72473928 139587849 111804013 536611991 144528602 899810685 10444740 829351676 210128847 964749742 269097018 612525733 406076570 525257081 406647214 751685343 487023859 512029721 32920767 963833015 620398915 957586981 608734407 952256104 793628234 832446367 487144753 562209575 286758414 766921425 199170101 639414652 301144242 363102702 258805281 980374538 241762151 264417045 59496956 140428569 15260091 347330147 33768400 348539947 53005732 768678425 221464543 980182402 58602962 72688504 17151088 446653744 276949132 626488083 199985929 717035792 75826220 545455311 505034977 786426491 682851889 937701138 773507908 906321475 663081909 929557819 329253972 430294645 275551042 498533669 300707522 821133905 356409929 506386891 503444027 773691008 716210545 947334805 504936927 990510230 878431033 902231260 777189492 969206934 905892523 987957617 951659569 971347725 219563706 522194736 400566032 564848537 415792477 959323268 185981598 437513975 355343973 910049898 123600481 873705770 649980835 750608732 97147755 454883599 181309456 236506508 82599191 895447628 531706915 532949277 428405714 955752391 535912975 957777816 685407438 873353042 161954413 997854576 575057363 888982870 762483063 788324571 441749644 534044933 311314905 497505459 213664436 428979414 379321541 720289422 599858746 793824758 336977199 658437696 287924604 344401651 282869767 794865611 411980427 766315526 332463599 453629872 381358539 545779280 377472395 642364717 79354390 107248016 51630406 209818098 83038583 656854819 554262266 871582722 540579462 775511559 289540394 875951730 535114936 650088739 538734715 722771221 42878522 923675321 509972135 815452385 765902336 981563347 532830128 997900282 990670363 997405173 842790791 936480476 739637195 753608264 63277352 746231743 89441020 752351084 663685166 979354857 231312747 799998174 631167491 921946281 866064518 988219963 35529506 298052373 175063873 503043378 482452589 842366702 187207540 401555146 336576864 531200530 105476175 385408568 379805540 503727174 353600401 842649438 687148784 764697136 480982818 692179869 518837548 991734012 16975539 828760936 79704529 573492638 375708359 673942121 8662974 682926250 194751298 534240863 376354572 893765822 599614470 714258786 303022067 847109112 514382590 786022445 290917738 517502862 56275273 88090139 4644968 754065494 447725730 939660361 671694279 973493582 386386936 703599174 146846637 909383813 794527772 838185172 424541187 962934504 624345915 824475857 466473562 795788666 69532823 632718330 75369430 419268120 203695732 213399615 77398563 190765881 3378577 654629407 244846226 698607888 320873469 360341356 164062283 350425741 323354166 431068552 314974726 519554336 487807356 549720901 295870734 621760795 81070457 341137865 54525521 803038564 395481070 687339747 267137172 862226316 850412481 932749354 649634414 853849891 790208448 871129320 370929399 650137691 421145643 725936097 464851365 771502376 671573486 705650093 591636093 819648574 154419189 590712697 271525279 783519967 693101972 887390308 43351646 281041572 276757652 689000964 170327602 510881997 22321129 96080672 34900711 132475094 92520964 578759905 159044157 496417432 289102028 404670289 186264300 836696022 132252554 811127450 424950185 811174408 264126219 932988903 352259215 802842399 176572861 875765623 310456358 804498647 690173922 948933670 616970885 892352040 413605723 493557012 237091609 782650779 50960069 569244261 2631058 311933255 71268063 442402179 245847813 407974308 17050321 481749709 218451510 432176851 9863067 639385867 28459612 852744812 463622260 827922619 665346981 849292534 343442508 891609554 723889873 922180824 215536794 613405067 452347826 928927093 592344436 685636577 955321 354634932 67018232 393780422 194665926 994761065 643005315 737868800 585204207 796214684 137962870 259255668 187711809 502743382 1462488 877486284 505127344 614126749 176740436 863013597 183089497 769582266 440120688 574225048 485461956 653993864 473605039 819506071 152248392 918766035 524148532 776055901 592006599 990007277 45575039 729545687 415752624 885602163 730263002 746525166 518377905 700233553 128467177 472101948 340969616 914086631 466681772 554569001 67812143 881428337 662009110 851062088 822417355 965325232 937761031 983172254 676366697 980763173 420644337 730663727 579723235 749079872 324920724 999322401 344578855 693090044 302584579 411280226 290881415 433614079 269844689 513558549 131308384 201888978 4370233 973495201 98232900 153754106 142382351 672017283 93265361 176737324 156031962 382275793 214566284 684806986 224586311 328036890 88444723 809660605 311235454 383549620 137744969 415763290 201342149 953332588 915247692 968549999 66092272 842738425 467267094 823208595 110113275 716867751 114389186 155381793 74148211 454010895 408853194 822183297 377655915 583246750 480556477 946992498 342324512 410480682 285359264 432362109 69135387 404358945 98758756 695179821 239428698 244045669 223238575 734756921 436292988 783359269 585937626 930106958 103518522 203873211 1314589 979435569 109309013 244735835 148574846 775313335 467020701 755825876 618894469 710223137 575569550 661987233 444760393 647839107 540915875 941709901 794034765 901461409 38540747 631532075 500068259 871740270 412018083 922949029 145137887 288141490 130929992 608101529 550687749 596331848 118892954 921805369 229181738 895359222 55907481 822334108 18357649 788522105 570938742 990195054 901754142 918466967 385319969 653888294 373660082 838211294 43452416 751988984 506344637 600835622 462650829 642941168 487087323 778475154 657247327 866959914 605829330 767812323 207879688 670063306 142966750 206405233 177804681 785864223 161505927 978262917 480422872 981704094 739900772 841132054 744066314 910075426 20497716 791038102 213399655 541609334 452321413 478373082 45238717 71302996 68987537 716366476 557113401 737110909 631926357 907683022 122250282 161434735 91792100 288575082 282274948 747191811 442156574 648653433 456744314 903705338 132791879 504711630 6867190 967426817 49173345 761196110 107366736 826332410 210855971 901010895 230862375 721065589 204485863 293328882 265557991 651426888 481959470 917421531 278023855 680957233 388972740 865865841 505981291 597930097 129040316 925272125 282417044 580735771 406958835 619106075 40046485 941135156 392212493 842242070 460519772 563420702 431552831 740515939 40310153 661957192 410781138 475135306 287635424 704156257 370101241 763434064 209988828 731708467 205932449 622848677 250754849 540291487 440836383 639037867 231530414 303884812 2408564 834873418 401548274 715042548 679245543 861557284 186146387 682212368 350133165 378078899 34348616 363318369 10497288 222136385 13842648 111324497 3279522 496885427 67980036 995859395 118015391 520680260 301915517 915925724 595042523 747265766 136734366 398867091 169866035 284922853 203178486 534351448 235781303 613974556 19944561 615761842 11539084 875326978 406267623 700261738 300672447 761265023 352552626 613996352 287796438 650028724 506992130 690282317 368121731 666903957 372275531 453442387 136245970 409701506 11030391 361635342 294101411 941445277 187341101 886441249 838743098 840869070 535921182 660922489 590430409 848813998 255688379 886955231 158032894 951244521 249390092 897772874 439546389 953649475 864619505 994257365 44471551 887177488 729871370 766670284 432727415 718551975 177724649 265479530 57025185 580508914 281408445 360192377 94548577 235461656 98542976 475946275 335367449 344777019 281918053 449690856 333041107 651101259 196567175 207994623 182673910 831033199 102698337 719927414 655855143 845174564 451519274 642093572 598324515 881984315 657526364 945205338 515591412 522500715 487920972 887751298 826927372 838014564 538740353 647014404 470198442 793322626 598335626 921192130 820910767 978030278 701015434 881041394 527110439 894650795 167658386 990917615 957748248 971566825 351042935 393985680 132563718 306389134 20159533 349301688 75625451 188858897 45782819 766525876 418533275 667272414 291428486 888774394 609670803 943999604 703960726 845309962 237922636 694311161 444600553 760661425 195897295 954671495 670464273 868862103 156818823 254770639 138710523 281580295 116184316 620697839 310146490 757919772 12380579 642134532 533951236 902180845 134383785 574084172 98345214 421759289 301033504 538227746 248379416 576953440 487170923 812985943 634583804 722005630 227336061 637214804 315080312 810985857 405838549 628388013 309843040 373675366 38438237 106398474 46416907 486789599 14688624 173570632 82999390 222810833 125582591 372670933 169372806 569952843 235115481 766821563 54220342 668607035 448091932 596987927 345810909 953245059 260456489 268031370 139526062 485395274 17196130 424069741 84847174 195674123 134140909 345948442 261352720 932048866 547226671 650114431 334184615 743099824 358076311 961814659 503353496 601735327 523120974 899664000 13277843 50421849 16416675 948560867 472573445 705160609 71031381 943637501 419702191 479907728 202487066 764301250 736248685 750217825 297886952 864828887 598901758 966873179 662098197 969705188 350526145 968006203 945286541 970795832 241983585 503517137 295128010 361814188 125135589 961677240 637128780 785765184 571051019 713369280 403007698 525047846 352497730 386377655 7571336 368601501 218255692 377968196 358126475 704875802 537854702 777028555 14461658 904562751 767744599 924175696 421113480 530763786 206989042 570771055 200088354 206161940 29356340 373048814 56028212 317129322 159487844 929461889 510335165 888598480 698238658 810932680 694251142 913442670 79915545 976775840 289111287 869574030 54859899 903262020 347311796 536850280 509449601 541290356 249318596 647676285 571135273 639250272 597348327 707640418 3481910 54185880 26623053 240055643 35066787 657975023 64431483 751596873 455838081 741180827 311095773 610734273 342086757 961548247 531635754 850594635 516560329 885085971 407731700 988240920 390249247 987576617 441282781 729698473 589212272 952452700 624521586 798380242 156793724 768717812 176181892 380444739 155987972 875216110 727553503 960809416 785365299 939193680 924418143 951391198 379208729 866038832 94126892 101314843 20007936 516322864 363813174 497159572 187178954 707433381 380793394 649125747 314835389 407732900 79451951 507278274 366333985 687207843 39933185 681395782 602323313 677305839 93011255 578413179 360213741 458558940 22700085 140525051 15773096 974430814 804121290 887821507 798172208 909136606 172296554 768016419 567176695 646076414 632186550 795864722 106692986 456611142 241353568 243786072 224169815 228151687 35149173 212482842 51444710 562180012 232055411 715600273 304180627 656014599 354904194 550719156 165931623 264947903 126057943 796329159 761384773 777441392 730317792 801305000 635124715 767936419 248842840 249830169 72003384 806956190 599134646 665081147 293080446 961389882 764407722 843839398 203131419 697299951 626518411 958083924 857156287 919718408 879795137 884636439 805276448 874136501 795034767 905115891 368007989 569701212 411261286 935271453 339659667 996689736 209974772 751620267 293025211 667464490 71171423 897649799 786275563 918449957 856539583 890480424 809179213 916109207 244804160 709194021 76143398 368588649 236937703 452751616 32409625 764584022 209079003 949795226 870803812 993770385 392010265 722126992 279965645 686726761 529825556 776786349 524665027 929279199 647861009 789507520 554393370 790536752 661300907 726441317 462696664 759067249 404402611 498536411 66285957 940570100 562521693 800531005 603424261 969079640 511950372 531207661 133009041 489522813 70647691 593152124 350359877 498727806 333239068 476494175 224894603 270006769 139099228 176880766 175711571 260473992 119616832 127746111 91462393 637477531 246779774 251558422 235641905 994923427 708822038 766522385 743984410 979985450 570194984 980725562 817721434 976288984 322963191 812550861 804767891 821695547 804105793 805813450 613046742 722623189 277116790 941242562 695816324 835732878 135189456 548553790 110432406 809406762 317599079 930049008 110268990 408619629 332429207 336535229 105178046 221883390 86106767 861596565 641784889 677359979 486780902 815010117 767083788 934943977 138177881 392694066 25217714 440854365 119402384 542303997 354106074 924262971 382911154 950695844 687688070 802522658 354415716 786801680 628368569 704121182 28941409 356896992 94579082 783686549 89786466 655001453 210314025 305131472 89686634 222784483 23331953 390037578 98012973 880461880 759990548 969140442 63720986 705196354 477802167 655757374 351826253 977594154 103680817 432935573 137951868 608416469 95199258 440344821 112389442 953933868 360305078 601961649 5109140 701468046 691343808 901264199 644495544 714373812 575719516 792835516 299722833 332908147 312408116 315899111 251831091 523230457 149941835 530594819 486644282 905505101 626753206 798748790 184872813 543574268 240508509 718366293 561042276 816539181 424075779 811472756 191567687 890188184 880545273 965928115 454097995 777753398 84988943 876482175 391162599 659999003 573651744 914363170 349612952 482136387 432591831 636264500 236230635 518056246 114585006 255583473 142096699 890510473 451028590 868375849 285621026 499559784 231829162 383975572 301383306 736767037 84263795 243885900 200731212 400607261 344390366 681016506 453941563 957032717 216608198 287472301 82086746 634869171 337283066 424978330 337112411 648096335 60929754 872700469 231187491 651282964 239973121 523545407 321220575 354614482 257294125 852261871 95095851 382068231 71707249 971421639 36860725 515900414 458665399 842691412 585944594 936409074 313974128 483966869 17977004 49996871 6370009 756774249 463225379 817088956 251083875 579775911 357837062 961261143 17670242 196999790 121587905 740951545 484484955 592400704 16193670 552006707 211386184 247189684 133571650 931252197 30123693 48306529 26033095 281639882 196285506 914752776 483879787 559665575 559508719 681855528 336771599 591666020 329748779 885292097 683688845 730816910 268212041 512308192 103396314 816506644 799435447 896743775 138749905 333095280 106483672 423170410 359438359 772902918 205075289 374346533 228309317 543774119 118872430 959997044 197232817 279566527 131127431 452998145 207831628 645307606 525704359 548110933 161027934 800081840 459986272 751374014 36596774 824904389 129355023 281003408 189346210 992275905 444007645 526592767 380520815 539950451 80418890 707064539 84028602 642126759 345531993 942235456 780267924 855680058 455997259 992520023 413852485 556799146 158239432 894812564 88886218 313543304 61762989 247060973 41298790 419710875 404035952 618007083 328369187 992666210 536870186 852482082 589048831 756903748 429148591 602762457 598334822 701189168 388872880 611589677 367023182 850331105 699954118 879471601 479785308 724000620 163247297 650639867 360957105 686036835 606073746 690538444 53430730 644257676 193846364 987088932 235830223 886639677 192393056 462544066 413964514 991863602 349030145 490208818 396354795 457191585 213381751 516445830 405142922 784919633 392383668 790508006 132501846 287322739 51087203 576174878 66343520 468182523 442321311 934528020 362116550 855971753 712614746 755707668 296126217 925567643 852628388 954052143 776526263 824959500 184587482 718030424 204672205 702016530 370095397 981483801 852321722 866974286 783799905 887801248 726016340 751312283 320276703 702907149 653351354 861196044 63960078 341041505 30088925 432194960 341544418 448349408 383239955 835271182 440822135 809967623 496416154 560995914 113922801 130564811 98458434 486996077 412357372 937955156 515352671 633132315 192606635 793844448 209751808 910272137 479542196 991609224 92191771 325278876 200175988 213881907 24482215 627933952 265767455 913362156 727369099 971830391 644875794 863995686 335251482 448491550 254398013 660966463 393668358 753684577 499633978 775509500 647495740 734506754 115644682 946655189 625177795 748971762 183812234 936374651 86856778 722215192 678691578 800966642 501228882 547801552 372999406 894265507 187676153 690946951 559496351 989447722 123688756 462579984 72562016 391807658 256597462 499987629 206958969 801138221 314116322 854337000 849633212 880975715 122485288 207051873 21927194 819295764 52291141 351699434 110324603 923066369 391707378 683713370 592485718 610192160 571353689 803284895 544833099 593396410 129838510 551697651 214751023 324529023 105367376 416015091 346835074 504938370 90184133 963234511 531645947 642391255 205194623 867575625 14664110 835465240 152876619 860154082 228150300 433978618 125598002 606977059 478633745 708214738 119023618 564114916 482615797 576082370 65913259 802364148 76518361 869219721 417282345 645936335 504374033 863950125 410895871 479519837 396952522 597532130 130484881 163595143 80543445 858041844 230660419 291284576 111428129 790951771 219962550 970511624 188266985 653333221 155775587 959669066 344507788 680833196 249983669 649365186 588288400 660479482 456159993 632634078 123712967 817774791 445477090 679949165 158775171 610313795 197182578 386218696 259156148 275958581 172054388 455359343 432308748 506018206 469527058 660703531 605073287 950141408 205110618 321615441 194396739 928635094 814310116 905258952 895492042 928174601 788941932 905291959 743122756 876017500 230716160 906406259 873201211 876397058 291912265 333472370 128772216 871249508 130999288 581269468 475662917 804882534 740278561 889199544 198028866 815788794 534040480 902292919 458694574 897095430 239333194 526180451 41693716 959079802 201926797 987057163 656288682 966761297 7804262 686363486 281014546 287948872 204528551 331390495 158654366 421628298 24096002 692449830 192955384 378475171 288970446 319197371 113055360 375264363 158614440 838469010 144353943 587640954 237175005 522610338 445285290 621309826 567717317 925185444 668667064 919239472 795723571 829741308 647530697 797177093 267246056 304453014 186341269 212364402 117443509 586981810 585151550 694652000 50420833 987861813 457387822 981228831 468511935 691235739 675067663 794260728 755391236 890652266 429335661 749288667 53039476 632878725 188803382 599278665 584931132 918564307 702796160 946372521 355365776 484896425 262312955 310844995 215771417 735426692 214971425 698246505 127505002 216527132 58276839 638983691 603669531 607539387 168988891 257988723 61317594 793075201 76425643 329222152 110976122 473715196 122192165 122434154 73453033 895362425 775108663 817518464 261335568 913887077 45483638 740975015 560542414 735964845 236166977 597931188 464083294 811828592 806573191 870249264 305907571 766698678 755166658 931443518 692334114 692439124 134353541 848675349 360340763 808570383 537964627 924619346 398643418 733307655 491781181 708839344 529037116 926313211 667652845 800930056 455002584 504622353 300060696 891512146 848065280 967843450 254723249 982744015 351264871 748180558 187592795 889846120 685202809 763075413 615571699 833244356 79801543 88043645 4182802 576095910 70850793 671992806 378046544 997539373 711679391 878436248 815363725 924294475 726419696 967650001 863036091 937992415 417751975 594872900 191669477 758599055 517774263 522371356 102232806 488621163 476864645 795772915 496522278 730772595 503966946 840726275 363684026 590952197 131986506 528287927 29169048 745102470 441528925 918761818 707458917 905968983 402637750 819228294 11226417 238982422 204918170 732135105 65139882 668484027 316354186 881294319 334293203 921688095 450446158 969088567 701944142 818778101 385026098 622329826 547241496 626803196 14935154 31474139 1991187 531528390 46789412 563800874 201052417 301102135 78488983 427180495 270840748 423402289 393266810 862224085 717642615 727132256 415800027 934263939 286670627 979812290 27331950 111719845 104328904 894306611 658065435 891492698 815673675 900912731 572144204 977354806 388081171 688522214 405602797 624989233 193378472 194420823 130244269 618620226 20441829 375022229 348111437 668798071 122538001 224165235 85417918 984910589 854880294 952000753 888075602 962246925 209061545 504633634 268586117 896838669 802517835 916581178 793284332 801272346 323040595 699779400 145795314 586220846 495890090 548844224 417757570 455986261 5626566 408021555 83422090 531767001 153721611 719176978 350962953 494160923 64944358 526104843 393066193 403754341 151475231 954603943 537940076 976433201 940537402 996974985 707425251 927442439 783557002 864396970 326736483 886991360 523613796 897762917 373143754 627371898 74539407 265314115 165732450 723214733 681268253 911580337 79293586 558091254 500107099 686639730 413175204 954721186 114519100 808037563 220213679 636345151 439791894 548619044 377063003 786881410 66614998 995321552 193298283 280321654 79802225 950572042 513341253 702299536 701913854 866400618 396859824 736247564 490883007 557958839 473744660 474160792 366902810 403390170 63671580 111619461 59256393 173290484 19281752 315523224 184938365 384762571 59850912 797811738 561213045 731881399 594734301 945007578 280038729 742135855 657202594 758025542 272340364 922259357 175082058 384499201 66625760 290280266 124117623 366977269 42863702 319216376 111938589 506299831 396006587 447604142 124199876 948745738 684756284 881294582 713612654 864319742 149951705 848640952 6348630 761676375 488305694 491617746 207321985 491034057 171309319 753031352 183333331 998675259 374426884 940131386 578338351 701640272 499795556 770443669 663723788 891008175 556721443 935158866 364968851 905581500 832983307 926574517 70662721 957782290 778061815 943445925 8083796 757274114 300270113 712264727 701900329 969615735 941264458 971901252 730861650 832435848 300738267 998881007 980406087 996296469 953924556 981181262 2393239 782272646 617699165 856869936 828022776 910600205 372015496 615329981 355041735 572343860 38655841 924040426 882882054 976352191 99085636 690591513 147627267 153727145 119994840 892987762 302775885 606042668 129023863 264150232 113929273 674931155 575661805 801432885 317239307 360344353 127012171 790744351 613561065 690676102 657649720 829456089 756790585 980500371 844293381 914282590 913581059 984849963 237919902 282409939 215506545 819409804 64542281 517779747 461494867 528622860 288207616 419629038 345528828 655816725 607056371 734256147 636129597 963013810 74507246 142508113 72360846 570689766 44619896 208772767 13071163 319399857 75357491 166620392 3654841 99744845 85388431 220885102 104318055 504251783 416857272 724954469 318691805 938017125 207648015 609973599 593287267 928623435 327710806 950273611 773358696 876763975 873845920 962856326 60142618 837782454 688138842 935592234 709977296 758256081 717571582 797121278 27445348 417267167 195537696 742502195 666211784 810009558 318970511 903307454 267014682 449336217 154889245 988703794 128558199 433943435 342142053 525923369 83357513 825435247 69030502 879932518 406657704 560268498 124086326 547888946 427288210 810833636 656828978 811950442 299698327 984494643 7171917 741570699 699630029 946119073 754515789 893165958 110162316 910443172 668215826 685353001 453746606 697644795 682430991 982489975 828124115 844892378 78760479 298220910 35164792 702855701 47995181 350620941 339803121 357722472 101248307 261687281 261656590 581421703 275120440 837925714 711826309 726944331 483302222 641558096 625251366 897410451 88886688 190342992 13733607 947005847 442806211 908025279 718459666 954388444 342744541 834002291 106997218 928365073 773989775 976491350 84340709 923451526 562079120 914925362 18619314 813207576 651012580 840273655 676049630 864518321 561601224 694020589 416521501 450572144 264652348 853639464 475817537 656405106 41954330 637198029 488281501 688734470 266004765 978825686 6042645 533313973 92979888 222830616 21849911 764735368 629455912 694971930 260737775 949476379 265821219 824621627 742921249 836943418 166535347 686849473 534173268 938258921 330089616 520305982 4348120 104481849 32571721 197624259 146255460 467888262 156027326 908282253 214228655 917607904 809783677 954480853 846628776 939781809 243991202 441611328 376922146 434378387 143348804 457646128 213217723 976070953 17032271 297451831 161546745 737365231 399070796 451930792 333544851 883112261 239726034 685778625 95218505 673863935 257246116 893944101 820727652 862845334 428467720 649710054 110426614 654755286 122936688 169088851 65983548 975341357 260901994 363204575 306059375 429029559 84683928 727543975 369914795 442461454 14298920 254129760 242869188 455503471 126534510 266564789 102448316 902917676 357936962 760913724 529334832 911201285 799289896 881972512 245853579 862062681 127269505 824308629 703314120 835073458 786452396 857876297 53828011 471427294 194060822 724977327 464014170 940906281 112577008 441396085 320290966 985195123 720121888 769276117 593285190 655796471 57417265 980799117 936625231 949011819 862028243 997739198 453032694 753323386 670387195 843342509 339981767 802035361 531027206 702567851 342398281 433724983 32885021 967562171 312207052 906464166 463120230 670357503 515521288 881752896 162596136 973247297 665090531 850847154 333114261 784325912 3852142 739660480 581678613 876842380 643121126 999761110 865897640 971552043 446110880 517170574 91461859 695573858 587681786 997818056 317918064 772342335 163539907 706543311 384472414 725812176 93937278 307482892 74146773 605186526 54199152 379279975 260935504 527266247 164453220 303957596 181425425 286612946 42325303 472817818 219949917 989511284 77410557 663757563 280561291 387242493 109678175 746389334 396885326 966483951 88609373 726334978 336026862 827002418 53400054 586040438 539345619 597122005 71328885 227890666 120187062 275163092 274590141 736562347 634496325 943365919 333114348 428736205 84867937 399194101 258459913 833661383 407788036 419619270 92251957 479110047 283121747 828572731 39500024 310948997 107561263 866373387 837001290 990133046 929749145 946194226 386131078 553870993 45592157 420806458 98075545 198649510 11755672 896214117 743670885 819608388 489952223 770210639 581704406 940910838 588537581 726288718 209488420 517476376 335896944 666615296 256109423 350770939 309188990 721928317 278620554 351711223 163844208 198291503 46293912 581353868 16702325 700803678 193068990 919568489 889846719 944273536 796060324 829519801 511681035 734989504 375148060 828205474 802665374 949884930 749637354 972992312 664270759 667361297 69389676 561360370 425855319 517258819 476909810 769900476 232035631 889920839 606551307 707703993 420818628 649598179 463162394 548837914 126867332 948125384 922860448 961250335 819451423 827854168 87679757 795714527 709034549 828697115 749402193 760560025 70579559 829393526 393621482 701025591 393145737 821500348 643981382 985208152 44150746 672645042 365961420 753456158 554407587 610388723 265238007 721523050 303256543 974708674 787702013 859897686 450535766 796826877 553808000 651695528 214070849 447305122 151600584 434813112 422914908 753183754 610271347 646836396 293558519 802510311 651680938 874380858 405245422 673408013 610743551 928289175 451084813 676453962 620688175 719415668 574760276 593844589 468522061 859467049 72136196 598857291 167188223 917377948 846988434 874550355 483432542 672376914 84778742 515164204 165043330 200010224 86723926 871442683 493533293 863437964 413465239 945538872 701082900 839969531 96729950 429437606 99728466 474864752 376212785 774123959 166923792 651938740 491639572 498533168 487854957 724370123 376114454 639595590 541983516 627342255 579188683 975451195 40541740 637387965 545055784 791179771 789969174 800272727 534169955 694984492 149161324 347630187 8330205 425154129 4320150 139546509 96192551 917766488 794667867 814036254 351592835 576154225 507662101 870558651 849055737 917091334 105622702 203003143 193199301 283130416 223614884 887238377 363797504 829138540 451517408 789500369 640780474 834397476 446583617 581615878 258500668 333885404 69726818 222404902 199209952 795485871 611432057 870860827 110964125 726196740 122298983 251554496 144169628 279281563 45290415 164857179 3146063 210672179 86461208 245965573 74035798 319538358 80418277 615111462 327039516 989200974 541455439 879113069 754489423 916327706 259010290 817186029 588046383 604690694 37274210 394553230 207289214 766272327 250599752 293987467 55979420 510322941 306360027 610613248 75098131 579238031 66826491 966168536 192989263 899452062 126347448 472902549 249083809 472431448 360628063 799531536 6440240 304433122 53844763 596264083 534713701 959727843 498146765 848987088 641398448 964584179 727122845 761464412 538556625 927269055 17742180 685565513 576483696 805018639 458413325 552931324 205894935 713827136 466379488 975182143 973302909 985442954 181269186 826813400 725282075 896629207 785751903 913044152 788890216 998839983 923408809 966543412 635902272 880968342 524989040 877662288 92195236 622077763 30468880 415900262 388335480 720336141 69828203 306330615 18883251 217107911 178150415 956100625 798708106 883961478 190053613 539583103 421172870 699533873 124651076 606590676 184389829 526548835 56697789 930774726 664900242 693717971 81483761 357396104 66070033 293114149 47322449 470974576 437918152 868859445 117706225 649160701 553858828 947360475 613633284 625359985 267833970 792496119 91035224 133824102 50114863 880133036 622322948 764773394 175893815 692806431 405086990 675753253 67073778 997244960 417631850 480859972 331445895 585774378 444918904 458310432 137912108 730416624 434953621 781047294 567636529 675785339 313848490 656776738 469303779 498544982 433131459 772165364 473865684 847941698 534585053 727367971 3144337 99504590 98151488 865566577 857268036 998854383 454067549 700658456 291342153 302408726 262505574 544633031 89015373 490533958 163678382 299548854 262788884 519930303 123522125 834184000 265235293 929735074 538185582 549164614 472752601 743998278 195599781 246333207 200096099 872267940 462062485 982425954 734623204 859572379 98735385 863610583 499480171 791489454 421201601 440219157 142440847 454851169 429886013 787365975 653010634 870450087 286908866 900231231 172437922 494806138 83393022 807616145 795637922 867099628 358910823 833684713 160967971 502483566 403528773 612044863 548647006 809301686 732356699 967721456 571356159 774240907 643010645 653272987 215594452 793351079 499085712 940152839 25430272 452751927 127576393 871534290 528548866 609793704 607362359 657865063 387311370 777776005 739757508 984370406 933774526 947826267 207074198 377366841 217674271 795509967 530823040 615742650 574662388 739249339 683926227 794734541 743709374 757445026 61375351 860578216 520191869 848673145 592618898 861173360 297682134 331301564 241964897 502013048 417451473 478937974 356066882 577226444 487256874 836668965 243563765 506003554 317722481 826112813 647558935 661853913 334261478 437945053 253108528 805371127 335738156 704371039 482034385 983283765 152489245 478286610 185276923 798972226 582812021 756613669 363830871 832963295 507569645 812469832 285010774 901118827 591078021 937547665 529052018 764770232 18195331 254053686 84351349 822801854 364064611 786852049 195907358 550528942 207108462 433519428 70561793 571898155 20608255 325890197 112604433 327655074 219276537 251355176 199102331 673690187 573906647 804572161 91909774 890520634 614793762 820396609 169484518 754565134 78690046 307628737 224753573 891492143 330120798 491192817 456623771 839803970 417271335 613194716 605031182 770454987 63947105 171168852 132387047 542613059 484842707 494668646 334797734 497965649 457125370 642724039 31293522 653695493 201068318 829911891 30649653 510486994 302090510 324141848 274248741 747299955 125233387 460925304 385364568 933138405 876116131 920641595 758307595 809419251 724276918 831777689 678322099 784163696 145299490 161347343 149560788 518356031 46013031 228111446 208505176 276054063 1703707 88647898 85033440 403265865 101553677 116213542 63287748 643281034 122645121 612020174 382676962 957580536 517741847 687052030 534891692 694265967 175567992 959951190 86226068 740593651 654472245 984052928 28411370 102479648 100660006 506425824 227561411 820547035 751861284 815428137 267229252 802757121 326832396 658767417 564756274 637660180 395939407 793355486 90419500 767944921 62570758 568161523 277763534 789852032 125480862 549182221 483449784 620694134 256451690 599143327 542193271 949847946 327194816 616253278 160325400 390192536 195229642 693164709 24267897 94936892 12561095 351600946 144103452 150905225 8030745 679615082 121589581 157067365 1014138 163597289 65105306 251079704 25081609 489566730 169348668 915507198 649921965 684630074 107377944 258184072 80478034 208255256 28995552 413848005 329685261 636109447 475453399 657578951 631305545 848584757 731164304 794589257 232851243 757310613 390452322 729574375 174887561 187478276 128513777 468819360 8817127 67349600 66256724 92283268 49853864 991324839 392912653 937285229 593236724 906878458 579278962 785223416 36371513 820024136 699027193 751706003 519211020 895986861 622214118 865717666 370679154 600939648 248315392 452395193 386946822 650820136 144536818 805868293 516802969 874715745 615334401 658698689 251522507 907195086 810466631 820379002 817138029 991290715 737421683 871597880 457977531 748974296 230311837 997482863 808929784 844279486 560477516 716959933 176285574 565710825 109380173 343859693 189546599 408436510 17406657 681000128 547127293 965139159 730951033 779618097 541814240 802106439 748134373 914686430 637301968 789641881 538621918 550272905 121310460 801580666 511864361 709687638 438442275 510694794 421755615 518538035 431624594 658654622 90263259 188064022 20679242 955789371 867131986 943690479 117339833 530660985 463090455 897483242 830198692 830501753 638511036 779287414 102898199 328108615 292351487 517345578 243176998 891780455 331175717 451672700 218412889 315934873 249985101 726938437 710675787 899326556 284774172 489365308 418955583 651506250 535372309 984429269 523440340 866924517 854475535 984882872 52809172 825676124 354880107 811010867 803909163 912534087 263358670 444799742 103679822 497583811 252930169 524236394 346257430 632807223 421620633 491846985 299033228 807469314 716834439 998768006 42795603 878873371 842536055 983827768 514158969 881033842 798750362 982635135 693500135 817425008 604511128 817543554 303666865 956375834 363832880 863511982 149693400 727880318 558602327 670479951 245767585 400943989 108159003 576621155 463328073 986509734 420748954 537873450 243323531 912382208 542888747 875434746 681327936 883763380 472218116 558591902 273364170 938622711 573000077 865451371 360283084 477157609 355925449 737599677 475556556 945664965 496002613 643695705 125909456 560128998 229180056 813023520 376559404 687439030 584747287 876817836 122825265 840992886 435266501 966233809 960807123 970650006 848010551 932829802 108258824 391649435 233425269 550520483 180234562 220588927 167202099 486082719 417139727 717066474 316509553 867672747 365544109 957372791 617841897 927162551 875168713 904691162 701721021 823409207 469719638 627244576 224775890 294583071 24802608 712478062 706150532 817062885 107431401 383540117 44536870 190008378 144031466 301244445 246358904 285354533 61978236 421811469 104883042 884053599 553718320 681262387 576490008 761646421 380163230 486870044 349424447 387619449 362111474 869601953 743366438 897671351 799733886 810907921 96717291 733872953 52425264 201649172 70272944 333363604 192323738 614706184 162568158 925714909 253478664 516630722 37062468 210493263 100912859 872323397 587616952 749613472 95114309 754255434 117171087 396511531 123860287 568905194 537601290 593461784 532191107 828166361 154890858 563605856 23560110 257488324 72672247 675296118 45932087 155797507 29177305 463137132 426328832 885332197 73740200 471447462 381192693 857695329 760988775 917351895 341456836 383221043 367150071 689783314 95272202 107787167 60913902 640329705 22228532 846569342 432242936 784064590 371142534 586679387 121904488 147253748 43793240 970563361 113768612 600058538 98473475 384913528 74477446 961232447 496363746 645811147 486666699 607603866 560387436 962506767 139543754 165654877 102923814 148547956 122684432 884432391 489491213 932983266 726802707 958106218 473187853 941596405 314423924 782056650 34932453 194419751 188194904 558965503 267719869 414037982 229475380 847946277 524531005 909086004 715709036 984523869 314894260 571901729 444332248 671875041 156945856 388200505 46222174 661895300 471429309 873915198 718045057 805586750 376633995 878980605 15123538 880326123 132188305 548232998 407740463 422913528 263707565 645133665 427885549 799059453 322265225 791291162 287886016 387676195 351293203 356979812 234736743 418073023 123527889 282103439 53853873 205436041 193410670 427062000 204511582 417555253 71613708 447229252 50950996 751314915 475494531 512636595 381528646 497177899 493114250 672428093 389603364 880703929 729654757 800407924 392494287 563267385 288588725 952242432 25131831 238009374 117244957 207071161 110906145 395518015 323953693 881792125 311575250 481662875 169804289 437816806 159124766 555372413 371922753 986878678 841369799 931493408 732895456 964548799 64914971 751402646 615517351 775734691 157840184 851939338 397203853 813621041 717644801 803231704 136735885 636974507 51115473 952694747 727083517 877816695 469385648 519701395 6391149 61879521 2135551 291004567 257825431 732304630 589526008 620369816 67603348 649199066 386688277 984176025 881610206 904148629 657383250 938153916 646278393 671506307 526830614 664578924 138411917 705766024 22201555 691178880 122136605 400644143 154820694 401153816 303558829 560230658 125978766 517951894 193397731 606720912 534050955 744602416 552233882 964524527 561439928 570434583 525229168 825144639 565858336 620629251 110670700 624093236 313585546 817466695 403089808 879530807 243400995 845344538 107297686 542181810 525474128 825381622 626127449 902229761 7104607 168202742 22893263 968961645 187208287 921406558 381333271 564774525 545987719 634404062 385714582 747198715 413182807 456221260 130967890 766783886 139309972 303564260 118850524 874153231 163316564 474522016 112998578 353229026 205354588 220762309 81185096 460772395 307571491 829163872 29537012 971762731 66332019 73216185 20149674 939094795 434913487 693823543 345418202 503013284 398288727 966064647 486949108 625800354 193376045 289891297 259036653 754351624 75594508 852374268 43517418 752437506 156635850 885249481 729056639 960346962 268580148 817922440 79829722 854600263 354072158 752966205 36737226 366241886 270114786 681423287 626940970 845874595 822601800 834824056 242635386 792941527 146771657 519432462 291809973 360049387 107738407 176890582 67287117 710175246 69205850 413300866 239918480 266098483 172936907 419494497 142784928 226781318 132736634 536811771 83407682 889185944 180020949 944059074 326670701 778590525 237430874 303238121 299133221 304752548 179839147 613252455 31218978 423531050 57664575 198752773 51200763 435678315 295976351 856014621 111107284 944844337 668952990 705848610 398329906 707816684 620630763 944008132 90836658 842985279 306806969 920859905 659614627 938706448 575876346 720604158 579679076 692943688 57674499 305112573 114112214 851460342 844974636 851126918 738679651 931798867 592785567 622668805 435110673 600979153 422929106 736868858 365231868 445559660 249633129 509910623 83865148 799227474 110337149 181296249 34388222 110977953 73778431 160800268 21192258 849046277 287009147 613904669 251109542 766306918 43671448 311561310 118358636 407584900 30394834 92929192 71961547 967726124 631329588 850532524 383521545 674876288 6144666 59116953 31211221 217033843 125387237 609182616 373563489 885526679 533665433 652165960 257508576 562750995 422594166 454777891 258593242 334127666 18880968 729376625 148003320 374364929 33595562 651916943 430676347 631391479 51267288 52469035 23045871 947283411 31272613 656899930 576192575 590729840 278201159 284449996 209679503 288059835 251986857 368870348 175697927 583893644 363887262 794691251 175720413 546833818 456967403 635089219 101844383 898150449 340599846 998446503 913347811 971126033 210955138 394915715 380158347 657651240 98368782 458338381 153747436 864924639 655509658 741502999 183649562 770905955 21227427 789101103 284862201 760220753 339296327 618695762 279783354 322530955 146605612 676682321 633888795 788360237 533982150 542054679 457236530 974610446 278309791 333826223 302514847 650415777 377385762 985468421 272465182 803520589 31381336 291766228 14940048 92311011 30301165 786827035 366157030 751439158 494892942 587559506 337255110 426320289 146583560 710669988 93379216 354444848 38231840 253026938 142685257 576062848 309628468 347837072 21771223 472517820 78703585 565435763 239212516 826152634 205800976 678997658 363215570 827114240 589795301 829556242 656038489 999420399 225229899 316762921 266550892 366217674 301250562 695526271 467484102 606877184 178670928 593648004 118258600 526076942 109521991 625339935 207689034 674880883 75103113 343166037 102464338 458544955 263509332 300412813 58566195 689850183 634888425 652634971 99747202 671077714 46759195 679086892 254025927 980321783 349360240 893374599 472699420 978855745 726264964 735800240 518363873 698302797 373417868 658809553 46785428 216585816 69486998 86509129 74035814 255275998 155563216 751231691 548451970 907650883 570009111 856369451 267978065 338222138 196668570 650173908 36909427 204254207 111994256 445304315 363598959 840794245 693701644 924336511 69781056 662814976 415605254 912164603 666430615 758362996 281702468 701521475 443827296 669698989 206447881 726978862 92815167 387362346 12033669 681023500 113583507 236618775 147511183 616989394 14687796 83455688 56803468 177718465 171132939 458941935 271342970 608065721 545356572 972116766 712931904 857878340 468312408 893367597 591561991 962474917 427095338 758860416 518344504 891458284 799936290 929035235 799786180 987949752 45892564 529870486 62147875 950084494 931000837 996060135 973175493 994329131 20881215 182087940 181576549 283308675 135254781 769906706 547428662 565461048 420347411 450592412 242299650 732321815 382335112 979183783 351022328 697560850 541356612 978390213 34451960 518088712 104202342 554574142 258991081 675558863 13834984 290971787 204863992 599431481 204244966 650783669 488971103 538001416 289604423 870611454 672760488 970199381 813122811 866981519 245241067 540363429 284217175 594538517 511186941 997430492 459735767 550288917 328756827 867176386 844716929 998470764 705132860 897343516 641886744 951019673 583602722 973334655 201390493 618533113 216719212 228278384 127199146 982262383 957881956 959649343 337727870 574725184 524017017 901185652 228143877 259616361 146095924 896888603 562235089 880389609 181748641 356111621 77671112 322158448 164920670 485333002 459474389 753668694 378909150 696214500 223821936 908821220 446569996 664926319 423361404 925750432 99350983 886087868 719916651 757201704 168381250 793268301 158809420 757583768 176423215 756080282 119576023 905426197 147150008 319518705 123102076 294891034 172108496 326048267 70259748 654521322 380348135 960585936 220023762 761090562 665994843 746242366 317349819 569257869 80033939 903205358 186996958 712264965 436611743 438026880 357934550 630663540 424990133 806356052 317008288 897340785 731772740 897706115 592844643 929872192 413556551 795606182 51749627 331722295 240806848 496031151 43316348 686138324 272477284 297879865 78474236 183274388 129059845 328937382 325763850 504366758 349931000 697038540 654539672 696311589 116575134 529654482 377085977 837693230 676605038 884344106 690014598 953041943 29864261 955174246 938114221 957233924 253016128 483881488 467430014 955677999 4482174 262937508 244888696 498098594 73578710 274635553 9032990 798801306 653638797 801964885 739912983 972792898 405552698 992236095 246152922 360719005 341152553 489485492 71467158 109301234 55627418 464223434 342159728 824709625 405142812 429221620 47406671 124689608 13069090 823081969 354147089 442344805 260953385 622502700 423767240 875429382 839911327 964310169 183253123 676727295 44493584 774820901 336975210 955778410 870967303 960749564 545023521 836355184 644589220 728266515 577204549 698020784 56127571 655923221 233517854 510578536 356063189 602840669 179997497 740852818 437443989 823409531 152953761 729038391 189886151 928813003 222805794 715946719 40868182 170688491 102305696 277597410 3301921 180319521 115084231 947039656 880260984 933492939 510427686 745784568 458454557 862264695 122875065 655791031 346052423 990307367 526891212 606871485 124988786 490854580 55116361 658662405 479661452 712263142 618752471 747746976 591283718 998736692 437028006 546919167 304804349 385266370 249554882 895606530 56440116 590704919 153226009 445991605 324047077 981661949 658303462 760493078 143523257 509468971 438609679 989995668 530154704 537126307 369303309 427745021 283180884 335369215 143410152 434976573 243771460 614416654 79310421 854463370 847167593 972556833 53042323 991942976 456691379 675228039 513458631 816088127 328598920 525174322 387422221 735227591 61514413 827882124 376255475 467700040 162683442 370898972 56738473 240432513 89684127 796386215 25498925 938434031 276816108 295665564 18559241 248639643 155548061 677133178 62253910 303604903 52600447 875786386 768075173 861849970 250340591 921388775 322348042 375636255 205217430 571109533 384893447 837839624 35188023 111603896 73366578 936921974 777623444 866866946 149209029 907412722 846133023 906713206 343089645 442381521 209614220 431967221 371232341 721686239 414061775 650388221 293219039 416275883 115256406 388895452 388480325 494661979 105303738 311387325 171167571 661354379 269248316 499779303 496571828 699653203 63166168 269507789 258072808 648400330 461366429 539358330 234705185 360947868 248628446 784439564 102410160 307202096 252857505 457423808 63309242 342912631 192717350 817575774 144646504 359850077 92300223 147646521 113425527 336716253 161390787 758525760 391424988 773247671 307694610 820824806 128711584 274353579 261491486 427464378 190452897 975433154 41679975 889764754 655528782 875768478 824266285 872205377 679614337 928711595 748591503 864024534 697657716 914778837 252660447 460093057 351099622 777420970 121891973 126370866 20785837 129359466 98901451 406616513 121814860 624009847 606952413 864849964 387753862 638193109 81864688 863235348 555387537 597036828 148181163 258935294 209629544 236139584 55840013 796448837 786166591 816489197 33222906 133268110 110210277 389845475 294009622 547910447 484212813 883608353 637267803 938345923 343644734 528530221 3500222 398600361 20670473 392818733 123705770 437706128 300968170 939441220 443060538 587525503 478817307 683960638 155812930 173062904 100754307 322654922 175033455 631089254 418101419 450520527 337727767 527593712 144992875 448222380 412089568 507394322 391501338 424610996 268097107 285869971 243993643 800626603 159226471 233435838 147374391 639908635 296456083 752968158 246081338 785360497 193348259 919713265 872673954 875917149 316565064 722746093 505459807 751777508 74318109 912511950 259585753 623191245 196035025 652019199 32642078 555999625 320676892 768031264 459282251 518941636 377010148 820884106 595392441 934870667 833734792 941605445 57577988 231498123 111569857 935854982 71711516 586753119 76430858 746402833 253418206 807129598 647383729 812250745 674874031 694205813 266724456 297247055 94026617 377772008 237584358 696049311 666054849 906120422 420410827 627295897 379467062 628593967 89904186 316567312 227266939 283394739 242008869 827604674 611277496 872634040 649321465 807490967 132914796 933931313 648090267 963844386 496619805 583933357 364668762 731820863 646978036 908740347 709983092 853458911 584631925 949371919 705391312 780059631 306713484 602242944 245484828 903791967 431712924 826611036 440770387 668849507 352890838 362399219 139437562 689249352 96735028 482472116 83259862 727826686 698449063 944824325 139154036 232968520 123921996 483077853 226931347 925026358 266011993 878099420 461365627 683306738 666277139 934966000 760606891 908742121 178073042 498135219 161052733 874942184 820995923 867707718 548543012 961579568 228747703 624387264 436113086 822942828 512976811 783224363 473028007 873710529 537837012 760707483 330434302 833359888 527764964 738690966 176258310 810248202 214743273 310832444 218418981 942734282 318914900 412642172 104674627 619259853 250746474 837366773 213097979 293609582 16966540 365815926 78716840 589757688 84692807 159641189 56040343 354306859 189455527 902485115 633621450 726671102 272646552 890672157 672889500 685968806 672975713 781660092 279020008 902447502 645156735 778908453 74902872 227894837 37320554 346277553 242370594 824545414 340442442 384465425 380014562 771885205 545184587 746568538 340279389 416985598 45349424 327756039 36674543 404410740 114286788 179327030 14898188 224092140 85037143 955658384 342205114 468315356 397741179 790286339 290360976 880991282 602092558 839309975 372174258 988747818 893908451 937886799 144030313 977276794 520510467 854196163 531221544 752719840 415810702 700197564 391330016 904079444 523233918 998183237 262046559 545844919 297222655 598561459 328759337 417367892 146007933 917106114 785677130 962925597 861944401 995209069 93287791 985996582 149137866 969211135 634795315 863862042 761473211 898681228 668908591 876086934 621582358 936939914 667027411 673616968 649310652 720251708 495613894 502090131 142277644 802578350 10430826 326502654 273317584 985303019 469693718 806632654 233839766 901522819 452720240 832708030 266647822 755048215 164165759 502908509 226536815 391879929 365938429 683169545 254759751 356009575 136287363 347132114 85369729 832937271 112439020 489293050 446101052 809957258 327180168 992156872 156555344 946995454 542886337 883858139 549535493 621666344 467616267 985474077 507675705 991229338 390352281 805276859 702366075 722580488 591551283 607166423 216758368 290129530 283181559 417912106 68339967 907119670 177697580 261787190 208124209 492841628 252662072 487191885 251778268 853189427 17452739 396091971 165708634 362199399 351511987 832152940 579317657 984861273 587458769 891998466 881904990 937394825 744815645 814050667 635567927 885128763 489178592 706177651 515669652 625364005 418504179 971836398 941996569 983705116 536006689 608243969 594951485 921553412 352441794 892857639 784338526 964980548 771354107 865051382 148200443 233991665 79828113 384712286 250924002 510730564 425907853 557542794 327811253 986535189 481438893 745464752 506388858 893905588 421233833 662261854 494710359 711955071 676334304 717420099 558921937 902084863 271475247 949739327 898744544 902988096 383327507 737239386 722812659 742367968 509334039 548178929 194228234 920107438 17696920 801736159 114806157 626108329 121949400 388319482 151754840 467744635 137319724 681638896 283062707 739266556 256352375 912498346 400189692 943159759 47804332 898520831 683802486 826495202 796291231 949003870 41648346 578909493 160057969 578141468 519920346 641414290 296444809 476685163 462145523 782771679 739438786 847338530 236757430 458833462 307251555 867892102 322853886 970679534 241564718 938685960 811388363 887494752 532627013 816168697 32674356 787126525 489145098 597916357 127993189 789641996 443083852 776669944 678765947 958510689 326897879 874724282 311976862 698201232 19083174 776021388 592895930 928255477 563745492 797171715 676386231 891491881 841854521 941140441 10278696 479560325 190622739 472923899 291611708 589825448 585867563 740177111 436706349 829136668 614377404 790565040 465498178 638892099 401624752 655274705 63672314 264804729 243388713 874657921 767962678 949643670 650379801 706051147 690334478 936995488 128859140 159377349 155556688 192920047 180447954 301077063 236040663 957083850 138293955 658029117 376205016 447740721 357068890 787406535 516562923 704173879 506031464 823402824 694717577 894790339 321314648 413290654 148351371 620314812 306273544 499615457 335255556 553572104 224494504 305018511 158365327 547380492 386289036 646869727 93007636 303652466 157368723 848655023 27660293 590143153 327984297 908859285 36361749 956548630 595938807 919724013 385253117 797884406 750768960 785892725 764750084 926578937 420337949 920476335 402763832 599760259 155313725 999965233 259993533 680935457 112013140 300908705 99786038 540050698 213412448 235467642 229150276 889156078 302119849 555677851 445563604 534355739 28690991 681601981 32119272 722262459 398879835 972482530 578369277 991945758 335710379 994000613 699117642 757520010 566960983 920739898 671822449 857160532 657376712 780451919 47687270 355383583 23386135 542991337 493855893 626381469 342564523 828983697 171643262 190897098 142811641 548103581 53021673 960605721 398926855 671730086 289943946 821660139 390559456 397872222 137499215 625055767 193897526 619873808 270092595 616941817 81907119 572622874 415866151 596403122 560931996 890922728 847741788 854044984 600176709 750565380 662191223 968518436 783014775 903378957 354062945 561254977 514370436 576798055 114788994 915882074 674334132 936008776 70565050 272647172 92026013 129326122 31974545 953334843 743082040 830257658 526611408 650410205 386404181 685502311 53388723 307589512 70989204 725859055 84153254 516384387 214868135 715978355 526553051 945349438 585754020 937215069 859107566 990927708 92855246 463576318 453800225 604478679 444690512 955218537 635201411 895937736 8447153 21605059 2559681 64996137 58885113 147508360 125841904 797169045 256056561 589929738 82073075 424907094 210026006 318146210 37067543 83404607 28551834 528428068 176044744 248642907 137495611 788544489 459867595 838001332 129873797 848595468 240251604 409672894 188769675 255437235 135374243 592544210 208001069 885157975 271523845 597327526 278996093 931700037 547803630 736417540 198238713 274897592 253825935 443621617 205358113 981893800 122245772 846806464 622901216 859467341 328048356 825034406 790968794 918547306 754548812 873664820 813848791 848804136 660898703 750229755 619253930 805729088 618133204 650857887 23793547 693121618 527684181 809200211 726886758 867869403 774702294 989787583 198799753 248088904 109269727 699802544 84441450 454483679 162232699 915346774 317651744 829160350 18485156 267203356 114440911 301031560 130404864 577112953 480497611 606895700 77299290 775785093 303506324 974070104 749417335 881228560 815376264 862946805 196408736 743067472 90961029 109210862 80242676 736491796 699769123 718515891 415172592 475529023 341473392 518306668 221392758 246513882 179926620 819590952 598306417 880885162 282240057 887573549 165581820 551564401 345826875 617309839 263599827 941094444 933359229 999843730 894633747 940601440 661113221 875544240 548927179 602776068 376013564 739054718 665414361 667158715 620159455 990557822 787918177 920440183 677287299 770675585 49670871 86419844 45077040 278589682 102256777 320265303 298556688 957756084 486895260 889227882 61506708 791332050 17994575 463564603 258928003 409152362 237169769 601999005 588033876 791198048 137913867 830834711 414028451 742160137 55387275 571656921 238199709 896057351 257936795 442453876 389019961 448779148 435065157 710249673 4544797 762315663 21631017 219865150 37389532 613425012 586566494 777505773 537231773 914959554 81400679 926235246 741785037 895379164 547570394 863279904 366533433 575368941 89784561 527473080 18475573 210594731 32566978 132208044 95775494 866770645 300333888 364385670 152020207 633310641 353354523 767626620 358733974 557177740 491537941 956444252 403980409 418284466 155688125 406770458 61472636 440001926 436789240 625552468 139214246 617642879 305397119 633422443 390827536 557236880 546101057 740230715 172641305 996281245 853428034 958249571 679308142 694060350 326130717 915944575 755612974 837414988 526940089 984597540 76884676 771284271 256032826 399498336 393454431 667713176 518643291 861456314 276810830 379475187 278133905 953254004 838795803 898932925 747382031 994914529 762534162 827298159 799878763 966335311 58376953 700689155 379033395 617322570 67208965 898527461 99448260 468418355 282712160 500340334 304696419 676708660 146910879 375701422 284134307 976970807 953875019 982177085 636666216 820430055 804209854 936581089 844229264 869546086 264650862 982938739 486319486 620823125 448522981 759259886 279413700 859721573 277656240 525230718 141774256 521830189 151377835 757832552 513738675 678303204 591524394 655482737 227907784 295263771 80216899 666838865 407149753 610013341 537057748 591304593 66091389 75920118 30186782 963157040 446843208 692243244 107771780 766404947 434944783 785858251 328446226 369097895 96473858 621482240 417378933 720726872 499653017 538039235 178613987 928064886 845693056 909031170 36328180 217760569 173450421 511918639 354196135 790746759 371263279 839800558 75024817 658373131 455719614 557838008 396778509 842341249 63884322 203207742 75962844 451443793 158531191 807020047 330326236 888841028 504905395 781390814 276658422 712167355 321914202 345912052 290494699 967203641 427779095 793900609 414011224 624470747 473786667 511063565 428596670 632797533 304236749 807297983 203461 153120756 47084970 367348555 21442517 492872532 23004118 804132071 93031471 862149310 392114896 993831160 347232529 997778360 507124719 869717108 698505 50939598 3678730 122046523 382212 117741839 70816132 244484680 96799566 507107019 152743664 428161999 292940026 721395344 211996693 502322321 271825073 423614863 207321106 750477011 661087611 986975221 811928648 917694175 701183914 786519325 481144210 678157735 254097640 460840121 377423002 601673537 9998958 423474848 387374943 934465317 783439804 985831970 815798598 959734894 399461813 442327442 3356359 275028898 98004688 866095926 770028621 864715406 297677004 787280304 211595089 302017322 30991542 108055365 39243006 643019169 481212195 554449141 177889007 562429857 447864851 671773664 7127693 951784728 806581254 830781077 373265283 537524232 405717705 788622038 703284945 823742048 768794189 801818683 307533539 656645149 320157639 415906115 253111015 738526686 641724469 896760432 771874729 993904038 129899056 882067973 594990001 982931553 16674363 36023059 8416489 110605672 3376309 931442534 418282120 464717200 262633080 373055408 225900125 763189834 387420907 508992222 413787132 996241975 692249080 792197964 261169288 808248228 633977905 823432643 99014089 815951862 56789921 503359975 117775323 213987416 174180897 832876854 445723653 925013077 700351948 937078200 173801652 912637182 453108922 816863966 729328001 969572589 502195701 829239439 302627667 702857179 239773238 708337904 563266172 612184600 574038418 720488900 32035461 590731459 530629402 864749160 751042677 833014037 746614458 897423377 366131677 686097539 114793908 123850382 31015466 351029689 342782422 494116347 349578994 725198595 532505530 672025975 551288817 880784564 645970924 924641759 205772101 418341394 272489517 426486016 382468878 574495916 78522175 912010316 627437147 847300010 197448995 375790404 145043816 823827528 112453805 827963431 15133272 208537281 774014 869667760 294731433 519037870 9499431 407018738 357906444 917613944 531128088 777930192 337000848 855623782 376586041 724294244 160477204 271295455 215206336 344288664 315707244 840737928 47048994 847749990 273025530 354647881 49263273 359948083 349833165 647873426 23386371 100932882 95227380 150137870 45752219 410649352 406629269 512179129 65260992 803995808 437564508 845776915 601942585 771702526 347980362 876080315 702860716 915154189 47862133 374192597 146641390 407462793 288420705 361162327 143811882 989284522 645606815 985795631 383353591 986391266 788577237 853083970 288594321 513152860 331769526 704537420 135910080 502430376 411800480 938197045 14050574 396698985 75795953 672609795 354522067 539416586 374517747 766908496 638804486 757753624 193348405 659251020 506960994 882691904 69863833 341950986 298423533 813015528 560443924 937852489 750366805 848213365 2446480 667353108 203344312 757557197 615577878 660881745 596967543 744841850 519810788 794405775 685254872 793010605 349828019 442725092 413615728 855667262 836802439 903525717 572609084 776568610 105921090 559358581 531465610 753107868 193018669 993098838 253209896 536663202 306362073 878937373 817423022 819713511 395857156 619781054 601206505 836107244 760761279 868653165 620006404 964801399 571169806 880908274 650294191 874088711 194188750 786776637 412516704 417665883 228831383 352199996 24101786 119860319 100220564 266121503 77182282 317354285 161999348 331498871 41159140 263184711 256592770 427321494 348272677 933781712 708250406 718999208 26667021 512377308 382317740 498027647 389452446 747449251 271986920 490643241 73623220 397429017 102934544 896643183 4056381 627798430 222003144 478536093 75980977 144283924 37483809 259628730 155252591 591764612 502327563 576740538 42320000 560984077 167037854 520178908 403387888 510831881 56066775 700500797 414121355 457545001 196346537 615197044 207744436 596127864 376325809 950092291 614460172 989098840 698067477 728699295 332932375 897431007 704049681 923570557 125020397 125570769 5612470 85702882 53537209 77150471 64226206 79258821 22870634 350421856 102035934 939334934 680339267 796083771 180035165 956946140 331468238 384052590 191827358 843964787 222031282 732907863 89164400 627952061 53983139 597153474 69478420 979409129 545367244 946480566 394489074 863108126 282901656 965104104 753280654 772541338 376137082 753792702 500326575 787604125 685293017 689646943 464785197 482310631 178816392 204118299 164484250 218904065 109748624 980298555 332994313 980500081 80364314 243262163 149786921 599505387 138375044 222326850 17051296 942097575 55524607 107389329 61260142 248285466 131759389 232535739 125900724 960330274 739285493 974821803 392954512 462812489 378335787 957175395 294874096 504745648 77305809 733316651 731512542 754535787 705637385 990767128 346491646 881766069 390678111 577912207 206749501 909015608 8434911 798481863 375707332 505215496 237409832 590408215 131992805 581049986 573404370 941519102 929855457 945283218 680526448 967104092 519419628 793112906 214155173 817909400 186854971 315280080 248491502 285536741 144958831 609551949 163219608 987780492 583201456 798850991 410514921 602049430 248388151 363838731 193713733 670924086 646457066 811489532 157733045 490045649 224518599 673684372 203291930 761509160 262636238 862929935 803919999 817033629 476912937 662118186 45896419 876517853 874562449 967734455 649561676 651521051 228561930 231237029 204654763 395785580 6808174 62511801 40748005 792296306 461099790 512503061 79911738 172903165 151787862 304015393 227234137 362268108 295739474 786506708 518627251 899481081 796711312 998941649 801945170 998744000 23704951 839326443 376450658 831586219 233538342 911101158 500078588 779224261 257799242 325141794 131287550 911587223 865577747 868363985 212953390 383649544 351816238 437723648 6089993 863630833 301731673 411943456 299504512 451584130 251882381 832833128 819737600 913151106 679534678 703853113 512451262 779241772 632048497 831969981 303159115 449379990 7299786 323116737 296359732 474755725 147911641 768134854 563553006 684357532 664393436 868587092 279219737 572177530 386410233 484520331 437269109 560325212 29306767 882331309 839991202 848984589 400645440 409976302 68831144 195822923 124831863 545978074 388624344 584215597 250215857 285779859 102517337 338368629 73580349 531147011 393645664 935653407 711195983 983606376 665631756 795384352 118491331 285739959 182808930 749908989 398007918 732472139 325365447 973827658 18678323 497991137 321122355 997143415 891156386 947961365 68168280 787512870 620889750 798530632 502798912 885985468 536870805 728957548 630252512 819071800 107070207 136967478 94863628 948605345 308349151 592492217 134059020 841887217 209653962 514434839 322168771 343308300 310552635 452407436 227601866 288908196 181045542 720803042 235588120 237395769 442862 819028672 187938989 734141400 242782241 848149861 220499173 403914101 82584903 180501104 175741890 419408987 111196470 613029946 550390867 771617505 75479579 91691660 37657990 234330624 126793108 425618010 36235250 429071577 395425762 907686938 468110821 605664578 219110434 982963638 157500501 834159908 608720594 691600222 218740906 777680515 682816957 708849483 210595465 374647067 269446816 289376187 75742008 929712239 594760796 656645172 228736708 469443391 282404426 525793969 118373841 796743959 453459627 687688559 45108536 70385630 30580080 158761272 26961451 363691240 260547891 295382476 17381303 855481218 696144666 698244330 206985904 683447610 330697482 462692858 121724693 494424429 160338962 740180765 167857533 320742258 244529139 724244171 224279125 582357828 548360918 897318220 482478715 550345999 172385732 809136425 308029592 720408142 34669732 557176809 525090354 930948691 356775378 829919212 604239147 920995308 18145759 184582066 169668620 652950254 249426185 474691559 335356839 347079854 209679449 948533368 310487215 523856440 7902381 735378406 444872761 997283227 879694221 898443814 78561106 688628180 198733589 379352704 120302946 910230451 256713004 611149882 472864889 530447894 188724494 840040291 382848406 398815695 285831123 358917422 357171850 409559305 45024641 197454514 35358303 453226501 270541984 671958867 13071010 394818909 113327344 575226994 497156268 556342359 40350729 359016949 220334580 760292565 539985297 742880252 314718328 871545805 791582338 909461292 92966031 328424938 218492339 291194519 228966923 539568454 231286516 450659186 358344841 775377757 416988139 483497647 13395178 622129284 552157176 686137587 365498069 528145627 434590667 582015201 257942613 385487457 318511786 689178196 178725515 473527651 264566756 288990379 50941135 685495142 569323922 671372455 365885261 650186523 420251727 857466988 489955186 970619999 182262366 457282272 305045655 535642214 245305643 953443179 459898189 794973343 687763420 936635893 416579144 436429065 76072637 524887037 2705288 194804952 84116518 107458280 80903739 127623214 35434342 797137499 359039348 463716336 200842439 576294174 250612604 664432899 358341651 784420583 680495780 863807019 521846252 892858177 284839365 604299944 133909258 864772933 766455495 823846241 457906597 659574709 435313694 500065039 486644300 601881228 80796153 446642471 164451725 766176225 319996946 431861408 418345921 574866059 396640377 994414537 294155817 552138433 107280933 195377247 125353859 466934585 253178742 866102766 353207967 594123947 108703037 552337886 406605936 624103805 16144110 115905355 60310401 487640970 284793274 497920754 76939117 159445184 52126553 634292393 484087689 800813730 538079804 553723323 79335400 573420499 124862699 334020388 292578824 761166989 574825992 642775228 455145117 692898835 329293994 490281024 273429096 880551216 107512747 399695779 5575831 589963759 435647596 610541748 403691403 708373568 367296419 937050537 543837494 586835474 222194904 237454495 137206430 591935920 81308009 610825503 172454118 256570791 176880190 674721214 378493403 635275307 325509195 623669367 344496496 943835434 410884006 512258069 140398545 458202155 20659293 704817645 449386353 647727241 590545886 940436247 724073617 954253220 249543450 522816878 373997998 765018096 449132793 666625546 20126577 238039041 14054468 807453666 501079039 781154855 476763368 666196964 126683644 181833528 163939630 196572851 150880656 590910185 288477385 380097712 360122186 881003432 625713298 793724594 307125984 331912212 251384976 784221442 235072488 833775874 385751022 442176623 292294963 572847878 518830536 682313803 128837951 420889754 176513722 285390212 30615714 898015648 598343684 670900260 595884091 722982012 641094021 945793935 300688856 367983054 197477789 756509180 327296625 729153482 627752630 752993130 475791753 482679266 99432975 280455396 184134437 995483798 969552856 993203698 475818413 727297425 447943574 586558356 317572642 408153043 272883153 937046537 699606112 787292534 679505015 752428379 718910944 777998705 37562354 730479612 430743394 986095201 288424357 432990798 333070386 500738407 337908233 863658633 208030196 212054598 47048018 960364665 327974546 390429398 169827521 229230737 88012091 646298914 80191766 127053725 120232209 572627455 315817099 820195205 216520725 300654083 246630640 556437438 218311009 252598863 36624333 347667315 254941457 610940113 40869813 766875114 692478310 765569412 465070430 620819021 557185064 631563903 26298632 130003210 66338888 835549953 33495732 501550727 148168649 347025423 179561246 472365699 466559111 556751616 13779488 457141546 375493159 613160354 412470728 641022836 22712548 329669382 148408788 326289634 322643273 323030482 273834348 820105779 217267366 432241892 42978708 935254773 444246250 795862615 366337389 884431265 797743358 843445706 750047750 990374275 332629643 447485082 391650352 610810563 177194517 997147501 221488131 507518544 210627648 479497836 105477113 833160181 612006759 632613365 164035516 606364177 355244976 904954452 623739552 770940106 92963704 338777353 211842473 532767353 221771104 469262113 51821816 312951826 23092668 532425555 311455862 554223914 437924405 896028870 255092240 635064765 349304376 822820147 709013983 757215402 702056516 892454799 777363438 922770603 652382265 683359730 645575834 779207990 294828640 512143930 260685359 579853211 226460966 561633624 113703722 893078770 532036905 751877038 5524694 907242031 505508892 950114432 948188779 974319951 476441738 876852860 643348234 970056987 628070948 911349930 538127996 863585564 705659813 876394698 420856608 618122844 285851453 646560655 172944446 364561899 166540872 588846171 291078518 616761644 116520071 855483015 468158722 803813897 293976570 719952651 117562429 647463372 269716120 672393920 553265861 608204844 535031605 761321823 97006219 837291257 232537466 388340076 224101323 346619621 178223250 368058178 211337753 747258561 479500849 695414421 377876093 925754109 364538182 450171168 296980208 386370001 60743171 83425436 81524393 988751427 928434644 964747708 416212271 827220744 406627947 436480948 71444880 743135725 326777266 800921355 495635081 514952619 284863886 863676872 431018675 694467139 20183953 262783446 109708015 215206939 13569277 370705613 120587705 379945787 333319401 909309170 785351119 870423884 213579142 726706431 326561 519796600 349310565 979278435 528770511 836898377 284472700 770571739 36894943 842518251 41281521 887475366 543437850 796551595 162079306 666314475 332730892 743002406 447653508 788475279 54511643 361064924 15318647 138614516 74570008 901687955 373822808 970268260 187232213 536420838 307551214 724108316 284409656 379897073 225156281 775214426 318416948 913492577 613899836 873068768 142987172 543874446 219961343 648901709 258609777 599460474 258891038 701232760 578390821 857544004 84495956 729546897 654150903 677670324 576132396 759538499 67897402 600950079 597187600 834754130 511801936 669938877 309464122 814558249 645397091 766202018 220661216 572274511 75104877 804313170 31867066 418558885 74726448 153612810 139293067 305251262 7068590 251586578 72342701 603502770 447543342 807412584 200553709 842720684 342842563 395173896 115379586 274289716 220137483 639557088 569138976 612230769 230588926 820806302 698037720 758920629 465570996 719678286 372132402 649872181 377470858 802722196 146741412 924667717 343104711 371271482 70320437 200872885 192333639 651386354 157398477 708001995 518211428 873541740 386647265 834112544 254359461 742617950 545407318 666832298 191037544 921682360 214819645 659424678 392109054 638065366 476707314 947149866 201667793 825706642 599401384 878619639 183554043 199108623 186283963 550380295 509763681 862264905 743916124 778706315 675986049 698502937 259386712 568498184 520337609 781782346 589235853 680463884 364421301 423259726 262709825 712436876 112768969 577295555 546071807 986253511 719813202 862309037 118701387 905666238 759712532 946572293 319316159 804846106 668159965 744843166 117273940 613011361 119903951 636036296 576503574 684476488 578579408 815678996 388143917 580970049 41959335 940089516 527699686 887101163 303136861 308285368 125313745 992634551 489407982 656401154 223593864 838361225 576280257 694599520 138607441 501183307 259499551 964646823 538664682 561315412 406827089 489323857 279011490 752028872 341072921 399673954 141637460 389484515 157238632 826135268 592226231 672806382 530522848 887588765 604925674 798199842 596437546 703930135 77795015 524925441 458794650 603778123 65084320 767916595 148556737 728520288 578738045 877752491 305944782 345065732 64024940 866805815 358193545 948043379 554021298 666721167 478886793 558723635 331279588 735562637 655522140 881752605 716052473 798941981 381450384 443875243 426963666 724987806 178417795 180163789 118103852 129122785 112447933 633275345 526333190 734992179 155060751 834974839 186071490 748809723 181248744 877269398 178494668 925957383 601766112 629828222 491558124 721634990 602580928 717560668 249946651 271370246 208979446 823618065 405108897 825207244 533778075 990452988 730469987 936811612 386622791 808162012 308851812 541820555 212375404 459473516 303816924 315596485 164652027 741664365 495119068 960358159 206405683 647374492 48924855 913793697 160362178 277282960 43562279 915599012 503981336 810428169 696080915 712470070 218688865 286805231 72629050 176143139 103645166 224441204 171288045 760778918 155008370 725508823 239336953 838146256 366132743 990158903 337985099 557921298 134287357 953819721 685070559 839589723 32212527 241314706 173832002 302736323 224667384 504797004 63541949 564595705 432904202 632682387 611921786 689352833 253844094 510681560 274396965 811759070 58597969 977145838 22544341 140054905 32342331 550992468 84641931 282111219 95907849 264773210 167913678 988219713 472627018 536625451 68785397 231696990 62801249 297517455 15453729 400374921 326666240 968942537 213705960 336341256 160402287 351138108 285060719 912862713 700667004 945321171 863448793 879034435 351187034 416266577 388399010 450254101 101349086 556404589 318949326 923777979 131166397 493320791 89254032 792191473 422361047 938307475 83772294 349214347 247616832 831138904 26523231 511927068 414420006 737687318 428356850 885784418 443027953 842984089 528951746 921749673 819012278 983840349 409734077 415510624 26636066 733381982 88365791 364737850 39914630 825368644 737145264 969991798 753710331 906154520 828503961 977352929 540343580 943263880 422387391 998296784 644909567 896596373 162555944 942584285 836162626 998339759 757055533 971681978 474559150 629969682 31919410 969949370 338005630 780525141 304523215 548412494 503477030 808971801 740075403 803216317 759161351 766123052 456671846 749387714 73876196 222331948 181619667 219488955 151646987 989684132 32317115 319460124 236120022 881953505 365866867 820031200 273669207 390979442 381186274 518599565 331007721 673443218 277281436 775944021 64010453 530606991 520873204 588120955 490444726 832714799 70171196 511977043 388288000 872101425 756429119 937169179 780922185 851094009 577958702 847635521 765211228 960495342 892686367 979001421 261414278 615097097 392138671 445500473 1938990 296102656 155358508 934566081 706883298 881300814 590965714 689925203 479019632 824583876 628962638 769323842 217255362 360497502 243735273 970737010 75363818 279608382 127645177 647010639 469554175 480156726 242680498 580193136 344854747 732884130 35343518 737626468 682020308 901568699 146001398 213675553 159111728 969709519 404578238 410799095 374915996 415739375 132703411 990760291 929948511 966206859 415992236 959883055 131914328 170272556 25856444 218584355 141344425 988819992 10150298 460544671 372791911 997449362 993573965 997405240 60857909 892535788 201773109 512895535 426034496 911754797 87508150 784214487 104974724 834010282 322335026 415462060 401381037 456174676 152589090 485995812 218849511 508925844 30336233 428137880 389759046 808743058 746681168 798173669 797185177 949108395 401449350 485985948 330916804 679236211 345648236 892615806 729691837 760589607 396339463 805183662 253113762 278437064 169799506 993332841 804566229 965207944 141860659 313145513 113297189 449207785 8106667 397362409 101916088 364315056 157925318 244672712 142819137 698023518 633898022 879903876 829347819 858202406 107026613 125737753 96188836 276282865 143443841 267900789 201712350 886066579 493223798 546225035 1026137 60633793 15994488 973724718 816042841 819991331 54695593 60342518 54823644 653204101 150077930 648615252 53904422 271043580 92644313 261601035 24951151 370827904 60369147 811713529 347477166 977402957 569797949 609654817 437377447 663751771 105362255 343532236 126281260 383109206 331787525 603016393 59422323 713472656 476552882 907798565 466661011 623038623 322751745 681141686 567191634 874851714 519601442 768352849 644883212 676633039 496998080 671710426 84021281 268405928 135418376 678750426 350961594 682366103 586502242 812142486 41431776 128816221 42816593 924341402 293873532 711769416 424990354 895776398 272336423 291881964 160907823 470313508 354397630 719459653 137475860 260893925 74481057 303314901 250352975 769138428 398873081 782901804 557644504 729998981 160265851 599775258 305372767 526527037 127943500 674666189 294134811 622789928 264730147 806418005 399716673 447441818 323777350 585386920 424022127 962223213 913208364 953316002 361675620 919566647 766910272 789494055 261070940 470731185 52162081 770468093 317908394 994015490 163472697 365853219 68050511 489368587 448963288 652796759 229148925 458431432 313433684 382516180 92987467 314035520 145444438 362212246 277003822 895080660 502371544 541130564 191986628 688210221 201900688 465924516 120051444 928234699 588690057 818856623 174378097 421243930 380062357 918761806 45632075 681429745 610690562 847298939 50288329 518393937 514492149 887541520 746765589 931175793 513379635 717423086 627441085 819655831 641078196 978307948 624539230 832619127 566254207 585106821 196298280 997273503 371774706 543881960 497243762 621430274 151167233 827481709 71341620 484880452 383451348 520420956 90251241 709838614 72621242 351754902 63333830 565753568 340312409 782595281 449926681 712379344 215615629 797921599 371093172 497738858 196550249 215184481 99200320 275797291 233776799 341132649 105841688 801003069 795789454 826336509 591406949 614044600 278452714 418184066 195952091 453096110 394877457 942167159 367858501 709583785 423119857 691414094 17271151 349373416 332852502 518559900 404467068 630696078 27095587 141035424 101888023 883549776 448120132 919459485 330454709 694915236 123683932 884480412 369076284 547713987 190861188 827596842 625733395 875167532 435959827 629302388 65388974 412567877 85609022 483515296 82769812 855625058 149113073 554568157 517827903 543676271 305311844 516668845 353490094 878428925 469043782 924878716 389591983 411491372 281964046 910006149 616765822 773422162 632789907 933396285 186870910 474407049 253528529 465792655 250309075 907737932 367116177 481577125 344531389 960863360 13928033 99470826 83070960 611216426 537135468 541281113 376522693 404792547 172495733 505468469 486832678 956701093 456716984 892445581 885612435 973231953 744530496 792662812 43287889 663938156 484480042 665613927 292295010 955553137 269706306 856785463 539920408 860166286 313870320 803741578 283397587 532930575 472377634 994378469 794611342 840517854 816293479 852971420 23153522 262695921 221323805 329606764 308479029 309782770 35666698 567990325 398129981 877919643 739264285 999558268 78417594 790021727 735122429 833425208 761412468 984239362 696364842 815685955 49402329 781535175 484388019 710628425 566808071 673718887 586727774 888723305 191784952 676589185 333751055 411694308 263410414 993368450 203337442 748101025 433357838 831179426 551436916 717694085 353311663 974012900 328916633 706602530 127838865 895638888 184573623 199074923 72713548 613711515 280920568 698173110 452458603 472012492 63736071 948345200 381051448 734292233 328087810 446022443 305064950 859136424 302339857 589617385 304111005 455384365 412862182 480150159 357767037 656020576 368226278 836655986 516597250 915563578 275892569 475562313 445812944 720089469 215503399 280514732 115185618 156295832 90660462 513690194 266814838 798434434 175790190 486413271 23043224 68313325 31682039 58206860 20471947 387255929 136229564 876866371 360934400 446931523 265288850 427762044 103251865 903298405 608769269 626912928 78108277 896498434 297798298 761441696 86156449 882147393 314532244 450615796 21754967 704458527 663899580 769257969 590488957 993600145 875776785 979817451 836642680 991430668 650536932 902698293 563810772 597065831 78966038 435683425 255935088 288839508 63002524 358455255 131989916 476078034 124071096 400867699 308698554 560595673 503716842 548398211 334871896 824785310 187154753 237474613 150666958 947961609 790557666 955564954 72163836 202476793 151726158 979237363 892635721 920562562 769889203 941866040 719823629 738438224 331876721 944387875 92256286 602152679 365157073 407323296 317165202 838578956 467915236 478597274 120480932 417893015 52071371 552416092 3857123 21129620 10436358 144406149 33601120 264920112 19592299 139181700 85477249 134698555 80656559 915109902 6355284 406350641 327023185 435875689 377768111 413880460 384989161 956476550 619266983 922928846 694687705 732399127 393944518 791189784 136242947 701515586 396111402 530561225 286713832 982806540 682626880 752643798 51614691 237898785 221003355 376505118 207237810 710263860 11804504 569483480 48520707 593199145 87687846 972826356 264286586 389035118 150307644 391336069 331236317 680446306 287529344 895006434 406936044 751629001 1415873 965767018 162619053 389887464 280309446 706451901 115765526 385365158 33994606 713257436 90964947 928322377 237344601 418828470 318328655 932598158 761667092 788199395 697818143 750692949 516313270 953880639 242216997 985304684 52507458 64286298 4474515 615889372 521394011 708546377 137476014 935971338 289067272 741300005 713341975 763199740 28915072 664271098 597118968 925193250 882341765 998599865 799354913 947775767 527092179 698891742 27669937 825891815 7681037 454414661 23751472 715339474 504082103 898220554 106494353 325953100 87661797 846358177 585107194 768890313 559901880 896743226 558450879 609527570 429153970 839003727 229027990 841264156 754120650 992869010 307233577 748779709 665330475 890104229 820146298 901791039 340099666 911904341 156534750 744626966 250302730 261828242 28837867 138611780 86020855 195352956 30897751 105533419 64837840 459366157 106253854 488176960 363936127 860875509 51059187 208952837 117432589 540758280 287035052 402426612 97797231 890918645 296187288 368938722 164726811 355592021 255490023 804736262 639323472 999522715 537882983 683186776 456853404 833063763 680679882 695608916 682301044 706468088 275852191 819642710 129841727 342772247 227901491 496007046 97269389 962357287 682589000 789512744 147163102 393272877 125549708 821647405 379408533 624804293 436819268 517766456 506984894 847954045 794069202 810556969 288692840 995972334 83073270 944568538 570054487 850723450 426525951 902531077 436886561 456406888 296253928 668789607 633855675 759903016 233749845 417748264 204166452 928834409 234117419 643643643 613062597 631873400 444603071 512816335 249797963 445920738 355633202 355913840 158036852 978819241 78584349 138337566 129905407 593523996 502433930 789634565 372196376 571120958 295299501 645316580 340385190 533622932 130601411 398061903 396637043 637761074 314209433 892770556 371995698 850672547 828516638 861117972 214134453 362977660 160940267 621779199 572238516 704579318 376282087 379910826 44426468 610770779 264029083 268613110 21325812 397653653 126247209 274195454 102424371 102963811 78462081 854927553 522175105 982892979 247700933 678870453 115537891 412377082 173017323 840770720 182841777 242545299 209565466 564124299 497297441 949840949 114808731 282520736 203405256 993008480 861653012 997381747 552115308 604394357 454377403 791427568 274130556 913841512 216770744 976033640 875183747 914136562 853464517 891291490 372886572 844816101 544609042 641137655 77956998 157968004 20490450 664899252 7046382 121122210 113244823 747807685 12089556 698435906 535925215 649220128 647217294 990559212 51039016 155384892 63556223 871580583 698855415 965815813 783674051 996738506 907776465 909903808 270860428 467019732 288742598 414859451 254570431 585097161 557320256 745840251 537608278 666373191 359145705 419282074 117726165 639439196 350435793 398057900 286656602 381177818 371372181 927873422 694320249 920734789 622045364 669490422 435812373 862331852 580680929 708735095 273013443 626833229 520225800 616558016 524581302 834030138 335427862 401980735 376025003 891320215 196808848 977876294 457163273 693949358 417896917 858254077 66937954 274053455 156554721 860112717 531516659 978348030 47573413 403716881 273444051 549015741 416150264 439571845 150916399 672368424 564903907 704592829 603698452 807723828 739299358 907252569 96589175 112733320 35489724 245492989 110951543 808692672 231294334 544450946 525405293 893349464 194536189 544927342 473483575 814467941 762537248 937408246 756084809 894621715 492195834 991384798 464456231 644063279 229319507 289094235 264297688 389536705 382998449 598051519 8808002 560706748 183497201 990343727 709878370 855954966 574555680 762063978 606557885 843109361 340460217 757051586 86572425 846475095 742784663 913883580 575803482 675140753 62681921 232569097 211929071 539995846 452985639 531119814 90140484 716811104 328285200 473938296 139101503 762423967 558640079 614031541 271380236 739698843 416078743 889091556 777631950 926662006 371664648 398323930 237959055 929742648 247022702 763854376 673371747 840557662 311518065 585045246 82225785 144789561 130239056 568389991 84726903 641042848 571169320 992896227 148975669 775520252 32629234 108066135 5216486 512666145 262543125 391670293 103314816 144444410 48122667 179004960 110651626 598901361 11137992 708557314 398023698 862995783 670296427 859126011 383105065 860228185 666915194 735296923 624316960 710085200 110304294 270318678 70718274 298504657 32053144 224769963 111768541 896704437 347095028 600057788 205249363 298550703 56445869 449277159 290231311 689374517 55164259 116998191 72028055 140631990 7676736 61851738 48504549 877510427 167415810 993199819 558959445 890407192 616954932 791507480 161395217 406868507 267136544 528806418 183548532 573062371 425470516 485197865 473464622 681927743 650385810 892367143 144737866 189676593 39526144 312585533 17081158 81639835 21263487 245023961 240803837 486697830 286424145 554737221 72620491 670718782 14130041 892767947 846744436 851202850 477008114 841318234 52958421 937294067 765617693 999028635 151129835 607728601 318433347 617088681 385529538 485665470 43620967 454438837 306190476 799633914 419955377 567644754 231034508 947332681 247327375 875714333 185869078 780672446 305340586 621387678 300333242 329219873 116885464 550169623 49158353 551563603 461927383 878252522 203516913 290369834 220347169 736996725 530576540 745137093 581235195 633400461 623065648 964380287 3661102 990374228 405389805 927879745 889912461 972261911 903217756 969437495 726361156 839507828 544073631 978879332 116019865 964507298 75793624 215626635 86212462 161003487 48827056 637387507 211352788 411936409 243067552 254462823 9807955 678168548 429861616 527694457 128750633 659210506 316195323 447796981 426662851 700419753 551097492 696658846 692518028 976506012 142634935 871838892 310675053 459514792 230968348 937726730 504767136 914456802 493881050 720274597 208891295 741036359 602163605 889651141 835430596 837292428 315374855 414761080 366610729 967604211 960370572 971685145 686962362 815895543 216269892 979910596 257936160 484526028 442191127 746224066 224360979 432400354 364636391 572408413 508687124 740665824 94226882 659949428 322923205 496166001 495819399 630708584 607356662 974537604 950629134 980232646 816010744 968384047 776080828 849092135 611008478 706957085 458350075 471740903 448034648 671719472 116776737 991806744 166508205 677214379 244946866 970735487 87057882 261970395 35195067 369107565 357939955 769942370 343832556 680784193 520666466 530993614 349499417 914355745 354233816 862058281 670724139 845124815 47768666 762027431 20417444 389522249 383581168 830396658 479585591 614320890 143359703 412446282 29958722 390349059 90689248 155308887 23931591 621368382 63171034 368815716 44740749 424083801 248288570 601912102 394009827 828656113 151172130 323022004 21863712 177356194 144953287 972876303 714766354 798159185 92986802 891150390 874107420 903635319 690381496 965511887 583727319 984603238 966043155 987317386 738191565 789021596 371322746 948176216 522227129 818737669 424890237 942751302 208382092 923461136 317878821 352096512 195751647 847454521 692477909 927470688 787724742 862034736 42415240 905977621 191740066 975159136 862620108 987968811 854253829 945421990 210983854 879738890 772908061 878895502 648007476 655807787 45274180 376753617 283153800 493428999 166710778 552479816 16565264 641661575 21223615 230573041 155344780 503492632 7647969 639269063 75884901 508323195 177712088 513398510 68215338 559851192 56063781 97952449 44241281 906133708 800825486 885995440 853160073 956205606 34044876 389479017 85108523 666315963 313253444 669733384 170603974 685417734 96442293 850222322 492880926 511408521 290759881 573116916 182768405 702523498 544238457 779036639 778238495 915470434 638503765 815354434 664041002 904227545 150925860 831452083 380313705 380622203 244859441 349587897 52541921 250053474 206201875 963191637 148286307 351568676 84352798 617962105 359492505 908222348 294274798 821862351 455842465 636539350 149660528 988386225 562618607 768953637 184492184 553600075 167189389 351010524 90656660 595076286 450975281 840109177 494889261 600372589 243426185 554677194 391857110 798073988 566527896 988340957 819173839 984088232 242958636 454423835 442681089 666011075 504064998 892194798 412744353 733674579 370690279 854488859 743148260 943480537 722626952 843328520 690660960 845638026 11818930 884852018 122368058 838247226 666793371 750649401 396824859 999665021 457669328 478256461 445715104 820199114 234352631 707491305 362001348 559245837 490663454 831837056 293345173 614094541 433078884 931062087 65739443 998285430 764718149 917649000 427754301 495869101 29416546 579866754 272427003 579102683 507219926 547031923 130593890 669254514 136345440 845597436 187056378 978932636 916376375 929755914 711875035 866413637 97276138 470675167 452701915 902026991 553392636 575446785 404518882 639719318 468916612 882577642 519772907 892857105 719479777 944730699 183226810 840163554 65673071 350600261 104434351 285792938 264857149 613291900 395733344 419940416 78026994 86163219 15882335 815690360 89185508 369424454 183491227 849482229 528152495 815435370 727540753 845671924 126706750 185709108 33727743 108288555 31110551 275434274 7311702 243621707 94522160 566290251 396801408 487107158 157706483 926636684 7407439 854978335 33659726 884379692 668420178 827062212 234771321 889910936 609177294 926768049 528916471 626224811 201458581 342179077 241092979 748209730 205324791 934435335 416375069 546378800 530127337 910661810 585077434 709939020 409917087 720087262 236530548 413638671 2942916 444449128 432421114 449945651 348552297 487666289 149502809 777882763 557874576 941129161 743306387 746775213 501614051 744251378 699437866 896871767 431649800 845651179 659581222 862994830 204199480 983094488 776262973 916142997 220918662 231710676 209533824 324604973 160804444 826215226 714778610 957836620 447744710 888083721 161457834 491266837 160714801 166469048 80270383 751652831 529175509 535269515 69901284 354152426 163399806 755330617 560019712 681327771 457682154 789024858 781976406 845050578 321010059 505788654 119376445 878870235 14588217 308495537 187736537 641804838 602206182 794668440 474338800 959876492 287344109 636423809 225818794 442996150 323897560 926786193 504408226 915065279 132409649 889261946 110495222 308209877 276444048 406770669 30058651 92318250 74605957 342965758 193896016 428630031 396183328 979563094 430286629 632765117 629543803 671621945 494801666 834685899 123719516 799379817 134717333 333163485 185913425 204652289 204499106 973122296 517518819 615742888 458152609 782623655 300567923 818615433 390229151 928613353 624846704 709031087 3704557 272368615 250652191 423739424 413532417 424749592 186760358 358912003 198025129 617350100 602930944 752311628 681411522 993509525 858398375 868144379 50017114 735929233 141872808 411827807 383397652 885288790 743361299 880908645 588391122 815053799 538392732 918668372 513242128 608002975 141578696 538872018 93498736 750399072 445217296 458678313 128770241 207434752 20394858 762791427 297730397 930884642 752275140 887808878 255172081 882995195 305257382 820916316 540072463 937740424 45366322 242494301 126610882 974053144 564960081 661363200 228074069 429339281 342867033 941807963 142078656 563918168 391550226 735902041 518602694 926733096 608824482 976724625 283487297 639223993 320436929 670661238 495623768 631455749 595433690 620169974 85979495 674399808 654589458 882955739 700941543 730896221 700645155 885902016 717343276 760951683 661198938 886978179 52367841 283402454 39427434 186841517 184925469 388563700 244503891 275453267 190099709 312141868 307338779 877307391 76893611 318562920 76082302 664239584 398322543 478864730 376358751 623430064 609873068 981839874 571028019 891585277 360458993 956982325 533754549 813188220 378163862 526618163 93570160 157289044 155439146 182028096 113364607 292892089 24339863 518298198 316709012 342516023 143610203 160305597 1867075 957894281 196197231 223931970 44672461 301440110 136471733 893467683 321354926 727650450 510033641 790284261 172782025 805050316 22591083 851271189 801749673 827012264 280435621 603203622 273688468 417490565 280895456 547062704 287358654 620457661 267158795 949881660 456866223 659697094 536665269 628411395 406351876 735058367 403673967 629585980 492241741 879916865 620331099 819284812 798364526 842288345 371909579 585086991 510233154 562888011 228891796 541772168 282657303 829551603 18582009 391891704 198589454 306881376 24463099 486973275 33517719 410436733 626016 433782265 150425541 417569046 341338737 973316514 512820988 909515389 680984202 905829472 66016291 565127840 501248343 536465629 105703850 884182032 25925868 752528536 221103205 540883391 321013966 620047371 533470364 603671562 533804011 597157501 525519313 648609904 457173717 517970151 495163743 723411602 430944280 701741618 223868763 470196370 45443713 56929959 45819245 458631950 192442646 268572390 190296851 547644226 257313355 397826868 274525574 460899586 329787945 909971229 49153943 684001109 221152729 486383303 357329179 529947622 528738317 881832737 120411581 262759782 228869969 964407029 222776607 567239655 423769688 818233860 631324047 758308326 104084876 535058533 214805768 570903216 478890 596215135 238970956 601667832 429191211 644234518 400319327 512813520 301612579 396781257 332109791 821689341 280330474 332182962 196261436 455810478 29934606 495523625 186789272 509044301 401928078 917500231 778500859 944913567 417453771 646281358 122655892 632277747 26220546 815812508 374372492 584191502 102901722 472335144 69185105 527392009 172160077 601707431 452683229 799680406 367805492 673924863 470191956 626911553 117052395 712166348 360985118 972764585 379730561 414821627 26846900 503430186 120388026 849084436 48760615 872091056 545882808 577917913 364658367 989350619 188413055 473872689 160031083 182747506 138709330 874767819 211854180 991751371 972354542 987921839 705728965 856581830 541167614 811516267 480770504 860268757 4959735 795560887 254908433 438941303 212724937 751286860 122763765 956965077 425144215 992830898 972163848 994435117 95276233 371539054 170020145 395831116 61596643 471972010 8581257 147585717 114817723 604399140 381433493 576933668 160473400 942404920 857532502 924908188 424941929 994843984 483209097 666361308 514976265 944928284 757355980 848123999 386418218 605440906 173115200 183568699 103406943 586863093 569716023 941586225 272407085 977601044 443581054 798791305 262592252 429057396 316099906 425154182 74718093 606110421 511617313 577202445 525237087 796239826 661295656 983884459 312008953 710539434 241318193 293086626 65381475 134709859 15185241 571247907 72122344 924303571 866511875 961051864 480795694 891789672 546715943 852029041 18531200 154439090 115208219 679918053 131457930 346785964 75512081 91921165 32433296 313545260 4183347 549589547 90311594 887536985 721480659 818410172 708548576 778560807 563415331 931757304 120465043 985224359 68515057 78588218 70616700 132844551 16753079 780494240 587276859 625352406 246625568 459846267 33188034 978476706 682697055 722756537 428863246 936371248 1663978 791749978 791017873 949563230 44960723 92330501 8264318 206154938 57874422 553783945 225453780 448986834 223580227 670604242 349113304 938618420 781648891 946918030 283349269 780111731 432383960 949809872 592800146 674148638 48960949 663458947 250509542 642082583 19535193 92462803 24383633 743357690 646433573 889911623 362308347 731936541 350267192 620334853 387149489 421602937 171406350 864336547 177109172 325054483 130057624 301030266 11930275 159278694 57705317 927200955 785902457 986756902 48804908 786191165 166846604 544212244 293397402 662230589 156865349 519517852 63791293 146790559 136695489 899467479 829634244 901943455 187812619 358296870 310486650 921267303 303280444 536415164 46542004 108444995 94427419 118806409 104518114 247342248 172058640 660951586 417515901 924995069 749481828 883920511 603691378 846501586 83923964 376951524 81550437 606642658 206895327 303869688 214174793 296449899 291804859 735070207 123369082 595183068 277602356 279568663 21733370 115871958 96190678 990747333 361192684 930419680 592168383 838315413 75895756 542153093 31324475 763904749 195134082 386469712 289686789 647508321 615671836 921269725 915592937 974245186 830331059 971320418 945784672 996935617 66679560 124244557 109832544 932431653 72226611 799499263 525061765 594547015 288566569 411829742 377985633 839715087 757504256 827179918 750716543 779990091 520356919 850980804 799126419 897173970 678326323 972993033 74690284 375147341 11875391 60809804 50165226 400002835 155057129 337868104 10466465 373688881 256117000 562150731 320247178 789305123 592924181 652318200 12747705 21620197 17559913 354312368 61039624 772018473 706164871 765834933 345831211 471501784 403254742 534631910 513029799 528644420 526531962 821841277 302178110 940071761 602689593 774236698 394457031 930462443 110984059 978191077 188213303 457039223 19419235 900346885 890184273 901145328 654286029 969403529 589125404 661804208 530513531 940662831 350199621 824270886 340326093 582198901 388823801 424821601 216052366 232580197 141998498 214877759 190512715 404970336 382327759 741303360 274726696 405424708 210400030 607149485 232650002 273767716 121057974 897338880 419679006 999623636 867923227 983052726 368642219 414377323 235529505 342625473 138628013 659369348 295414682 651846594 522010813 532235328 157954819 807340871 308402356 669342529 573677589 660204236 362664661 567555323 255317639 982563249 582461779 862070045 123330046 425903159 195918591 891147367 763718996 797537592 61439541 660454560 420394939 831887405 805255759 981918534 224163769 378374196 73270931 206417769 110365968 555165787 187658477 772277947 338712752 497980952 171116188 364848202 278356929 750773869 23625415 358599647 268233372 490597034 85573811 297594971 279281718 646311078 45518018 887785013 372278349 952321562 21169265 415210605 256548216 342656965 334319309 914172774 109634458 709669863 21120166 423113637 72172476 607818018 201106694 289858897 231914726 580579055 519628147 944949784 46888328 230954182 200648688 264410966 142389741 335663511 324936326 531579516 175999317 765928581 97045454 104711467 43454842 227363077 13146091 625436899 492298363 730228531 312205180 590349489 93066893 209062994 51912227 955455569 301243734 871841189 538923064 905714720 78936110 260898455 36021117 822258178 768404678 870361410 292137514 621030423 323353162 918553070 440425672 727169379 184531495 197523700 162352502 433174036 29847863 271620613 218709216 688264116 471265490 820135565 698538826 897359760 689080438 793943343 689254844 957045685 926321820 966407372 645691193 944786562 446883690 631929662 149668468 947843676 459526268 828786643 399456141 553977910 387512692 572617135 142716109 514540598 108077068 614460746 560826450 672491995 122378606 762744371 522300441 622457393 112803292 855329897 151781833 923630342 357918579 822998397 449390074 939441725 45697443 65929861 26867376 177718788 111681854 202380483 48064339 859195546 747914610 892340453 514434736 581417330 13444032 461389436 427353796 612473486 111714287 446164255 227822107 654268316 544249868 607599618 512343359 916992578 575998491 576679811 79279529 927184528 665094448 729444573 554528314 828966626 300213245 839611508 442079832 538433714 86182753 750107961 655217635 696300902 637267577 874092364 826933231 960762321 680523414 785740587 199194029 215820637 181945627 574450181 72655232 725061669 471174052 612629989 607678236 912815809 130580991 157561048 54665396 244782340 187568441 606337723 275609157 307979628 225940387 317869658 67666977 519635779 79650968 660344107 435946528 820071782 452332950 626891292 46526457 278250697 271583131 529991892 91167370 800753942 491626598 612244054 429138691 493758025 58110747 521883540 311128232 934548659 328272846 383267333 306215210 929593459 7627173 188163777 8023708 683234587 476793776 759130693 458498651 830907792 515188177 975142686 420524094 456010578 387505830 527490720 33310103 112299186 108065908 560212032 34641815 643172418 202099773 645362481 163249896 329300772 130055897 367641129 278561919 607718861 500777322 901608330 704482996 947819023 422712381 618975881 45573659 987143820 743944923 833191916 103489831 538238112 389682547 920930318 843003799 884382219 20381306 100113863 14509239 799265990 660925974 969346090 927805173 932924809 132548882 480309191 340748523 709154036 487228611 681984243 587628581 902990352 396933029 497464533 273438672 922690521 566076289 660597533 394352568 823545508 135256641 527452751 471466002 644579185 384352049 425465007 411822514 818288338 450503310 491298864 133541751 423328382 32622924 98911583 44102482 716647644 504021960 871840345 707629939 888703002 650554990 693040337 135808111 582159684 228510664 820216309 683322130 760307164 239081603 908723253 156254442 397700906 276117516 453532824 411333737 674123142 242773347 429721183 93909457 246673809 56851610 974454940 589895782 629701251 389981824 578320883 128821137 583253996 363821557 973221813 239674545 706226197 459734941 670083733 295304405 595423902 114094239 621443397 113760115 822101956 178681253 204627599 40713448 98057727 65518501 831317716 62355265 406622839 332518677 624241882 136955361 675312522 502092971 718791395 289123918 521632324 337807395 422452767 96194906 227789017 16941009 159097356 142639717 601898139 259424408 283628240 256205675 303380528 166642745 218482319 46752616 823768483 233305433 549444760 219797078 551611192 445978308 747670189 360482535 613909569 471400503 490414282 83039110 958515831 375622008 606916217 520616882 755075287 421254741 912019089 875177086 986161534 652303144 895870102 33000141 603075395 235547780 442605066 328257803 718760928 446261277 722977864 61112428 983546342 382899376 619493632 257438064 775428473 732386962 901731655 74017063 317282654 216691364 775403024 416087828 787354580 373868790 843340322 232915141 539257898 235811167 716603804 30200976 845324449 315698487 847486251 101698836 921521606 191307402 839737051 623005048 901452199 883017436 996821236 195888949 647510187 417507021 542099395 150392002 793229072 427868727 457688411 137551424 328200280 191160663 753408781 232127617 264098561 83083230 583945230 413053869 709988008 62582108 890296477 355761927 448847031 28210461 957438438 839681970 868007848 212265247 278518546 59088737 313036192 248623928 656623711 206971221 469246026 223428783 285777679 42347907 651050486 553885389 660469326 20706073 572772513 545070251 882300430 275391674 932872990 719680992 814679957 344894615 836039782 536997425 743205860 346092936 542999597 485652790 674074687 409443073 433081214 229072255 958245776 104608696 414109499 118213275 190231554 31784851 234169836 82020675 850496334 354484159 735136308 94478076 108905614 71182118 965869298 59162869 588450072 527341681 756114646 651970963 751381736 619491712 676387897 85545955 131705165 56677669 635143499 313439849 796722409 298311360 583723010 492173782 990157865 843911092 964196367 929117533 960396996 715628582 999626000 382303583 602545208 331952435 895915168 331241539 800324829 348182750 642048722 63947660 869785840 74559449 460044410 277385370 806589004 771681523 970050293 273984308 698092841 665048864 949498957 521844951 627092791 144423873 520438942 3941543 236140027 746196 969175815 212831358 819774892 100243235 235841172 65402071 875865408 125566600 407805244 26687234 175902684 121097035 882282579 645437978 882731423 622696391 811218883 307229952 731449151 573443405 588354445 229354168 516401830 316546748 748627387 618412470 927796093 408358351 479072578 104944289 709902178 498105279 973139285 307798749 330172909 313718872 686718524 26821333 855523573 550151677 594916332 575624308 848494036 622233987 626846451 21583213 155301433 85889071 804887915 225509428 688161911 558927220 982175039 744588812 802884019 9607236 506396431 163850585 425967387 259112895 839814834 594363484 890100345 589020457 613915297 12328546 928880484 428960883 677214359 551415982 808891930 34283830 292137785 49157782 695441506 289632581 929465940 393825647 429299948 419923835 838196615 322863140 736282787 150084772 656903757 273397842 991619645 374795479 498373112 416848021 552234435 519379155 607743336 65269463 437079356 137713407 152499984 141924302 388892689 342017313 416596783 13944066 556581203 117652913 470918375 314585003 699959499 341941757 350485466 298474444 510511523 35752393 311804422 18206971 894938480 62502085 971279325 427724361 615810963 352584624 586317145 305584389 895523866 232496783 406490429 285177687 911653085 433942161 742794960 170213243 722843304 716383915 771384834 142740775 643091970 428161828 510759193 509937140 519082690 350131630 908989321 738341318 769404444 123660020 274693078 191867450 469607226 260633401 282972969 147708893 958219949 393042800 702107945 77817114 990875437 743206306 961980385 589686983 733811189 618280880 791002954 460296109 801760423 332361521 708491413 355780401 884571795 365921561 753795415 515624596 631343781 543181817 583670473 203094689 666958356 273436133 851203618 218382515 619313689 200519919 762257710 245496327 455806960 397945003 458072162 143710332 783812525 392172981 883957539 589324183 641393103 372335089 783786559 424166721 536713558 328756321 879216288 893006 549034074 14405325 55911255 51996118 55117808 20947405 465481693 46029278 545069415 361890222 920526041 570431776 894345140 713854579 826155799 722260433 802639465 97987570 726776571 512087372 557154863 465559694 497184540 316752878 329496146 76221844 869590198 23415952 692051677 268687876 302032560 5200116 215015173 72613018 690402810 537346130 556953028 543469464 842589662 528260303 896979748 381450903 807366069 464495344 509148218 266292260 635542084 245052270 285277389 88702292 666969857 191779986 763645475 626069663 968214506 159786997 449194049 71331490 204276449 203008119 902959993 330790223 977603706 405431687 557942815 165130857 380956044 31765369 515730757 254717880 781592962 11923387 788665052 474886303 541565069 219640326 541476082 165816306 326674190 241916358 637505373 140519986 410153947 138741324 445744463 81054500 205281108 55497048 518132695 95638204 799205533 100315822 876672508 797158258 967469709 321854383 908019859 514011732 964271676 705447542 813882624 167063240 574255598 281363289 718171763 11265268 248594269 122937770 341482066 65247985 86455759 23164553 323456593 196270506 866396138 111932142 194053256 117288913 389152164 126094784 938173897 219311840 708917212 544680671 651400756 435375081 439608923 184929175 818423056 442118260 518857620 131274650 231294610 175455677 567161788 473103764 781775409 427331788 539579703 217145206 370065856 140103566 584498629 312382890 489776426 307629806 692976891 620203435 932189843 311255522 801926372 200482129 346032484 154630382 604351069 192031377 658883476 131113175 290710440 264302201 527289205 242769326 434953309 58121672 127649641 113719803 752587547 182194965 715807904 165833667 945867901 400568557 965368277 818975617 851026657 598569433 885454891 770063454 965801900 887394244 954842647 130214589 884448732 239983070 620213767 450454746 577310835 423100033 569279991 511425324 983261583 275515490 345376817 255551145 790869145 268668543 310441115 130799258 334673090 23540886 354146769 147262672 953235362 8574610 924059363 216821340 928645530 608424451 916711645 462794648 977532544 326429330 957299784 895868157 988280921 258916659 862614444 563086289 687361819 187336876 401238294 189343419 478203479 67600223 166732297 163889753 996309448 521470935 645620741 375309223 503576287 19931321 261342652 166367910 462089021 56622824 854518260 512028804 992004449 781514182 852632739 61656111 220314756 194069336 427022290 1124335 813720809 71262466 933471942 366106289 415433304 32353394 149046161 137069696 797863455 319826342 462281406 121733433 458717086 75448793 454221020 397569946 923733604 497308851 801170879 702184291 984826970 913768764 981805941 336467810 448991041 295952539 774193199 322713602 880691797 596273078 845619049 704222505 823624887 171983521 472380605 53073363 145251024 109246496 457549169 82060017 862350641 255556821 787560352 433372355 636179081 202985951 486756783 231353902 348933816 312322680 691116265 131391812 852345561 826276121 884749268 376525467 862135011 168670359 188079722 141113101 450870090 192878194 249581271 97122557 490027639 454527815 602541924 508377920 884017349 162329649 980243569 339714182 443528121 169871115 723815992 295449319 912772963 150531908 768637085 136834654 182178682 171544038 598655795 561442634 715244974 597932208 945992775 791335676 985071663 123526948 268627186 173505251 314407445 32122843 638106447 39694451 391637152 15567836 387750070 245699380 332649374 147798526 906769818 397593232 580533832 451929006 640992326 379665843 863058221 426574221 884712826 1276038 714280327 690827572 983322589 590833620 889227549 815153933 984902642 773901134 911887989 820263162 931930004 197258429 238046055 121048968 413288972 17011603 132747176 74384376 789989516 783931518 804356223 355486778 634265138 315434977 956769756 564418012 652700363 192823232 992956471 162307066 426804417 281682340 932555555 413275468 431649982 365517553 716316119 349449228 712737097 343755296 632870806 68996291 963905198 117053689 984893511 757447531 935077128 341759315 936500311 821737189 983239233 835878362 917621344 160187982 729168330 19283945 876742219 325806022 389900730 62134081 490181033 406517903 976911204 315110139 545429975 251113246 761458629 740629181 841942909 432498698 834360519 813124963 938847506 491782988 912391510 474394110 827596664 567348942 646732550 143359567 626562443 495588835 858641853 594612709 824436652 285654912 849088716 602568403 952753135 249857430 566337328 293668226 765506667 599533342 965766975 876075046 943233260 489481963 811067221 732816133 919208776 456962771 970114948 78208443 373141063 215891680 394910288 200703289 468059259 293989148 710949171 393063609 498476621 374240150 394258116 68125709 750012951 556422671 882572891 372417663 748688839 471181368 519360815 406448164 896781487 24487254 848414524 586431940 687232219 236841129 900326549 552908975 911304977 456864622 904917766 282571742 395790405 206222694 347879574 268019586 379362631 350971978 815742444 314099158 445904186 340807891 580236261 416535239 771967128 18890942 232562369 110166918 558371498 517456479 738722633 517133483 748411889 747668588 979816837 799571864 800185357 112212720 694338985 421415852 676667404 544959806 714114659 615087919 844994807 424288310 768492484 528652295 674035875 635776529 768201785 145590754 764438663 535069812 904430126 793812044 897107945 623808601 712023625 376882783 556264569 36456865 142781796 139193675 475461216 362168505 526388491 20417454 518271919 157612594 272350231 3373315 406242721 325498795 741302953 152418800 559784719 380150843 984995171 923356863 950187747 602929372 740381938 315609707 332206072 169077569 234029612 79983308 227577986 10507323 778611569 570025912 895404715 138183201 278175697 41618366 239319187 173836394 396959640 11194401 137522304 55105090 189232774 100504557 889278127 492377609 785802944 143860448 435864061 339485860 930818655 170883236 591818278 509696095 629345119 414305957 826506206 463330298 775219140 657607795 849286231 662423355 723799534 350737224 785905716 350467461 591747338 392624523 637051912 422246485 839048260 226104623 707950499 576706741 675018897 365405344 832802784 231978135 831831639 759149350 817531845 803505004 920616807 631974075 803417685 586938974 713641269 180808960 618610823 613422530 931764513 510951402 762969456 243305008 809406557 759009365 916581825 789470688 954949582 314626166 643222537 149977014 914344574 133795940 801597237 658803378 851135367 687493226 840893234 747926069 948685998 435698960 688760502 535970100 965695644 469876694 777264271 519371228 758446989 472174858 475468918 419844806 833581521 654234167 778122124 360858634 701519148 446148046 797670236 286801720 442196201 282071593 843203043 237779548 920254785 500060481 879634146 721286298 881823509 383677817 741002804 453427620 553408793 215695138 514434378 112740051 302577265 150088321 779374419 368067067 995017474 96217033 532140341 378716910 607777578 101604619 585275849 570715086 854890788 213348671 859849601 161339225 991336961 888922063 891458958 839599972 963180411 752819649 891281303 699841761 745471682 453272898 924818689 700899906 885677921 679874248 908341202 345219463 498537453 262239881 413072490 286514799 448812628 378477979 652492470 4407129 573976912 407578264 825854513 540566524 841806116 331856693 834272433 422878737 625622424 29086311 401062196 381949150 667310726 268649283 783334139 638398572 896503851 737860021 814642001 347625032 494494668 222100010 563997116 61817002 741361684 336335746 689179761 453340703 882821220 483859228 495084829 416076532 816081068 432871285 636658163 401380966 516641824 21608492 431776013 199998848 835202829 177033682 670638830 143559999 282340133 174440598 594974521 525532412 898966067 174128160 997140552 63182691 196740138 72205779 839859538 748978459 862579962 457776076 596713252 73838666 916460733 769057746 894671985 215145677 225607616 90004742 667143313 582167823 864941665 683842607 959415499 172197768 767087271 234528885 939240177 178517612 793846273 696679678 859704553 92681225 956595479 384005013 873059790 151113118 851332299 479872708 634740976 432458641 730565950 223901002 892325853 833301409 943293399 406577407 628217100 60281883 859452323 181686254 991805126 279532451 676273231 17780330 545048782 437870088 544910205 331537944 617343034 537177762 541164842 87797769 466100334 137255824 896506282 584684707 950761597 474298815 612325413 28801573 294188527 223312308 252088850 170330168 587221264 110724132 743048904 306695231 369555884 308027745 557644975 290325129 671117985 532544515 620847431 100094306 366160798 177576433 915433160 268198160 432985867 398271320 805225778 803153590 998159740 822829242 880564413 426095094 585342409 325432957 341030254 282848902 373548977 34883825 607357577 173818298 888113588 97700693 761112819 464228373 494406657 407542741 898957065 450082268 929473010 689492197 710537552 36097881 395195760 66022693 77380877 73299738 912327313 94218045 374974831 286678279 591161002 96204176 454596623 254900797 757662552 547873341 976184548 208405543 886759170 828886347 881242183 863031199 994742565 545317467 560002315 202484378 619733220 448419334 804230615 413091 16749572 12690390 194348021 155024594 342733134 120993268 588882134 250409933 861993542 364425201 973822684 506102157 793574079 19691354 570129355 338425951 900711869 546881363 870539266 189640159 963436552 621113037 635616379 30645598 805151083 69008468 613550177 174114331 265205620 250192968 585533748 326901678 713406344 174548012 675850069 290576895 982865222 401955298 573455326 369780124 579071704 301238993 745302104 415282791 469863472 456685597 985775192 491414963 789620304 298962125 955766986 643537070 671121392 537778544 682623713 276738983 341079162 277899300 321510928 10994597 547418516 293632574 945673156 851058333 908704517 703118385 954735571 164507355 971420008 750453692 762648761 182747488 821719577 603985355 998834201 886567748 903587615 140342103 307188991 136102531 904452749 154260279 321161395 319172240 426679744 397666777 946037501 14019504 408679755 119558459 251558432 44653055 947054294 423889239 758508523 275008914 701617134 228640231 930807493 836412920 862792433 15667413 302215851 66008817 245297644 149702837 399277768 70284848 493723149 202440989 895099954 501392258 975326133 712177862 981575163 461837950 961384753 63396765 584014590 310637746 825044519 320699103 439295184 428339453 465143197 337623611 579269460 96282986 364851969 207355977 681692551 74106185 304734624 265553417 612044664 16256972 847207915 44964122 702954914 71602933 136853388 39421257 311255215 138901533 262888993 8701597 276961607 23506101 668862068 531272414 819743073 254078560 468398133 334758119 563493586 314446707 354482252 349719931 850158821 703744431 911180822 874135764 990886795 134160515 761185683 594890217 975380361 1666507 703829687 673665883 954819061 465072323 802117351 799147150 999043934 952089821 960405645 25734902 371989024 336795254 515823540 304771646 739836106 395086780 410257919 392013905 771928470 635836741 880550871 487130483 490836605 316046281 550536486 486192316 876350969 795404670 970166592 267806657 873674382 260748892 470399434 260657578 492147508 278734428 783222244 496515515 767676133 202395000 372873856 49862628 669852814 461228867 553089845 532989650 684527302 603355915 793482926 266931700 694707482 537408546 564552093 23930918 216087589 155433411 413146583 277551090 744336916 709488188 921736169 77504925 774650067 10319358 241454111 224153218 335107750 208085318 631149955 104578643 606565169 370970554 755108358 186683453 623625809 570598763 979215913 72059355 449064142 165261879 701719766 345746079 566881655 436427135 510131670 18924357 924471890 273707703 373515613 259338160 850506764 93018799 759384864 608507599 958615563 156293484 382737934 95139076 289620848 71349082 868827871 392748819 633738578 555414782 890636619 703388544 838760764 588328675 688099552 321506566 352673648 5850881 360985785 71679913 816396124 677988681 738560235 452618646 476249734 365534252 633725262 566203795 661376488 602037855 670638718 549993702 747036569 438718940 820648609 727292148 764145185 335072329 889259146 433735279 923820727 659191359 835330846 450495649 483061514 14360372 519331329 230363495 427064726 147404104 415756532 289647533 575932944 22846476 801044506 586889549 989622189 625737738 654225236 193088012 458520538 446705927 571824972 531634900 755553822 710643308 897123422 72635039 199598075 22675173 240769751 126675954 224647401 182024507 210710119 172724698 904741324 89509371 936033898 541300547 663658679 209340606 734778988 439052473 977125522 725212363 950008557 206643855 590768798 203562175 938287756 597313883 772701368 750920648 873553536 269762278 952628833 609233554 811052818 130232718 597307345 541103038 910391001 210021674 419490489 58724814 553720879 222915457 749938696 511484637 574260937 358424267 678828923 359421327 758411481 521469878 675790936 6240500 986628678 449919089 989082367 88592915 224278168 188454499 243083810 151966829 914043280 809941910 991729954 7333874 223927777 151836086 224316040 40861216 855451912 397894652 914466726 256857783 575647862 555430667 830591904 393908102 584023889 454701634 985669112 690418367 764349339 720602266 769396115 165805779 328662129 267650116 834730460 666138133 988979379 822666103 845592173 555093555 982932453 740476624 975992440 256594662 922199857 277222153 742239696 77226083 499427899 399882843 905442250 483299947 992797148 778555553 861261619 625851287 914614853 414920361 476245823 342109800 896884987 350472757 590268971 336826289 652604293 452773984 859932256 536332329 901148685 519496339 609870693 246801344 325131616 262176717 271469052 126794542 827411343 611729137 742634997 251247331 551670608 359149859 479457571 284142227 549072867 409924670 824957504 149122100 743756266 146987995 679817793 666981921 701874187 203157458 761133154 475890107 540513382 103022587 415082236 150940739 732392011 690645457 854532321 370449013 479217470 472199866 931880356 718535798 815725151 357467051 790952233 301911740 822359793 54716851 466971030 411781776 626698447 57920955 213545451 41843124 731375162 226368861 312507327 114720530 371880240 77625449 650866937 211354304 420331387 242547901 267964258 191421793 532459429 399572649 444980818 75519022 425387555 1606202 208177545 132317217 489816351 50930152 925386626 209630415 753175510 464642447 483799042 79316354 180832927 54955847 893445226 243051207 447060066 357530612 815461469 679673115 929628299 182075160 510341277 163316386 740380131 67218576 388598003 317125994 830772660 586188491 742482141 458349668 799736780 296907201 647946674 17074146 909618739 178134798 983713428 814474102 946253511 363388323 779010230 480863649 956704862 590008287 707648205 595482020 876019779 9358099 176086137 70431331 907758976 866328876 925906471 689382012 830943671 120187978 308032756 227860362 472947940 215800721 493250284 286869514 393315953 200324102 853798133 133216673 893626031 864988504 968025135 291396471 382547729 14526455 720630093 504903694 770093049 219158484 498257099 218938288 734285041 725625233 825716235 625970242 871056194 545022823 679376921 19456033 270273399 270202037 395028130 166569379 732463983 29507387 65177721 52325765 209549697 147101183 597692262 432877498 721850788 291812117 688763099 358711614 652406809 577492891 800835325 466027055 944429082 217608489 929580620 777342134 962819575 191550749 693632576 117754662 301385475 286874285 787499608 754304269 938143239 916490085 956560065 913515307 991976605 120604673 136540729 130056402 145884754 115067684 554197300 426597328 598035513 310828553 899579310 718193268 825065351 692929391 789580373 114645874 279935674 255188206 911355300 1826708 650182194 313858827 463015910 366995547 775413638 290149304 564477992 215892023 901380561 114893311 506913327 178026519 380663621 244169291 993565173 109163331 168981002 97794579 668490607 512231932 986538337 664762619 950575762 31240550 618857949 358861952 845060745 174263332 992580521 473871383 604565835 440531927 945741417 746036215 831906126 566464952 686504709 633865543 881096400 11515202 861648599 559545236 622541667 37530031 275984944 118079177 272775339 80884165 797948465 261866724 300006932 110962570 246191426 183099275 586819744 32014540 52669295 41862424 555240666 379460929 701271430 378330637 945899174 87471052 879919599 187176417 868922768 54048382 441865689 37037363 89446676 36103820 213579367 77452103 833894882 221511756 572549417 409755788 965377709 555088622 603596429 152639234 794832898 563065646 908826087 789862887 851086946 405510440 789438766 563673149 569381253 563763278 877747398 867169217 996474211 572556301 820622464 366880513 947970444 778934266 929036741 307186847 823098451 396116187 806174859 227566713 409152889 138330215 455338506 6530745 754193365 519077835 787862289 49003323 832607933 450065864 714796513 591713775 934758765 484444326 723222161 216489496 913810508 868493296 994781198 116665329 661321509 647718992 918931030 788428221 889521374 766614737 961631637 386922754 674697064 244963523 341256365 27501666 63800091 1804726 365773160 46692112 988584733 38058617 867065711 205949676 213863950 184254490 639295832 466761029 787335430 625433016 897003787 255914116 607562739 476669656 544258081 15268576 164479679 74374022 461984292 162007137 864919944 238426711 383924021 74926974 662988913 21351153 640006426 446917618 765528608 164542093 540303318 115407988 626369242 563237709 957938346 280339582 607286129 344816342 358501993 70468610 375427413 158953900 597769492 134313475 455909298 373907799 560274631 132119253 195692241 48144846 557866845 194107024 410824669 187704261 918102363 283805404 540480735 9622021 714037319 315778992 900850132 193408927 858857230 768360421 923949016 651176306 912815215 179514250 258044397 128052616 535616447 284229402 514935804 319200224 851278209 496284576 595560915 374692712 894229725 187245283 413864301 411595244 538629716 362981900 941628202 736942417 749455672 385626831 846084716 555953145 850148937 144595936 877336289 868064399 955988319 300876920 423678818 376421950 472388962 472371208 473562056 22724811 668109545 506978931 585596802 522174304 778434784 138910427 395093357 356134667 404665667 369708974 787074501 345426416 659522233 312415865 400944576 280711182 529164615 380599670 700186420 528658689 608084667 128929047 548655933 212642162 971780333 301048983 737349325 226881333 260384524 254689875 983735106 400294515 512461295 492438615 838676972 630867396 672957833 124472203 944528999 87867977 479210380 85695962 135764098 71659910 778613694 339570542 518384710 164719156 604379646 82131157 401454192 319200865 928762926 367211410 718896235 166815661 548157583 82109411 380222325 246162642 453016013 154529244 502959358 235306424 468478340 160557212 316589235 225747861 932516783 436648282 554410286 74716769 728354208 530864765 630403346 452522717 606515405 99355823 453914575 170614733 686079017 320754936 754997243 499846945 883910281 637609501 917824625 191567096 855271530 264610551 957536582 214966495 967921878 387317718 672650430 326752932 445987500 249844674 719343358 260394231 726598318 430728296 471949656 413192273 908659694 781488358 943058510 400597726 492522818 416146471 468645071 246065068 753585238 385391201 923194596 548857017 601804496 68553603 899527759 682073997 682826054 431008524 849839597 93320856 899660302 819539339 831926507 706517291 835675658 719553118 774378746 276322143 738498270 145615833 238973759 176828077 978006150 170620411 611034829 364805200 781124581 343857505 642201731 16269156 494689744 148514523 538487082 538048814 577208738 473924094 931810088 796479799 817316491 77112265 453005580 324314718 974215722 849649847 884281715 384408604 895805459 163066871 838374070 161722078 428220856 380014224 961413916 689897407 939286183 877477455 999084145 583658491 873782013 710467536 723480769 195019997 541788161 79351515 714914179 134078768 350074254 216746216 958455510 691253439 987408325 749829164 871585454 572372276 820744143 503673169 535348299 461566026 926694027 277700909 779999661 517910616 793419982 80048792 957822897 793182522 839600324 436408537 791004072 702273590 985485048 432137637 647605451 28628218 494383554 194915537 922494827 617454718 956428157 387992051 920016067 312803083 709614471 575841257 870443442 500081658 874047252 468060620 633344517 46750244 437910942 200944889 206295494 22703578 86855088 47324709 723595210 133473408 547433023 60536738 416025045 397236776 643394975 232713080 668067939 485423978 945369259 896640525 961226522 577253993 979291375 614896763 885461000 755527483 771312093 2953334 612222610 276999486 542617776 482572408 514205630 321333791 954889298 106542681 183234956 67966647 125848948 104873861 188183815 89941299 551080406 165143964 595138588 363846829 748476371 292530074 343981777 292679896 891875792 213257612 636718278 506097043 875436712 685455823 765708887 134063538 353303406 298638558 307785212 228794138 758401982 72215984 652539414 164521332 268964543 78768977 792145428 507547741 651766565 322387931 751764703 319534217 601204619 197679909 873511940 356106088 457611932 6230867 544424830 243548889 713360273 479506689 788462265 44386051 111136271 31491795 642793200 212963262 993188805 159592036 413230321 410879900 460269140 129520682 845833522 558059276 568046358 355487161 574964588 313582238 829464557 430555085 678723723 436283008 751864525 339743898 543811785 230102528 435027346 159111857 582679128 30377669 787609117 669781943 763763469 172469429 606345465 34004550 144808693 139166378 243243144 210283437 336121138 62873065 570157612 455367631 888686706 738103050 895316630 792338499 844209792 281113467 388233630 226710033 925543052 144231315 496512970 465466256 616507250 600676302 642439951 319631701 617392672 105710714 916799773 689908494 839995273 816095365 824426406 390124205 511384994 125343936 402096182 153645912 190675163 39448774 360734752 273798624 413195634 124860159 154042795 13085029 27211768 4498910 535918389 193802771 256482903 209362988 440274641 335237302 503291992 187294072 427527034 46357767 512432782 478237924 700745699 10453736 76334988 7993575 583390560 266053364 327617499 40704807 781456118 139453573 718461952 21347988 58905719 1590519 734030461 647930493 855891464 144984128 306591893 257437393 739559864 193541822 280815816 223814044 411496996 358348393 886751069 164882590 967594792 424237974 501286678 397137167 518007262 305204323 483481807 189356457 467238984 355595642 817765702 522275864 692142957 458115733 992774490 722835157 854411687 694366850 831639153 153734054 979725256 387820512 437001397 176292466 347619737 288006369 865552863 643775202 972256134 453447622 738853222 364125716 647497585 463083759 567527725 326424284 575924697 24680719 355708716 104192665 227068301 196749942 718289890 474113544 731908640 621027107 823001895 537287331 583525168 95640292 494263086 478146721 662584940 86531 332004798 31489773 150139430 45222031 911871959 223975479 766456156 59020713 946067779 578576141 971510235 808315946 937118256 243574814 894335861 515177150 615340295 480715149 857978080 101283068 696973913 8210902 771449494 464477992 602159193 40846418 937246951 898349099 933415445 454043749 866474738 768301615 953114078 455683062 842935744 595789159 606740498 561356573 621210148 478781387 666449135 571422434 985113042 792498270 816792188 685258039 823463069 104815328 641003730 71384436 897656945 845130244 957445686 41257096 235054515 137963638 445505679 408679755 918867083 739917131 864173294 235525016 854649625 704816817 733984138 98445838 397010351 255748256 586755959 124286881 564544510 77253669 122938025 73199224 553115510 29979826 120504061 46553324 483337448 270487520 881942138 677587109 946441159 870604199 873988880 348639190 513671049 281059167 629305541 124487205 667483596 289825576 823236607 816592415 921303139 821820006 995503778 841755620 902936398 701585252 949155880 799460838 941062668 759380052 994527254 862948837 976546451 124982717 586134474 35111373 55121893 33713533 936760861 447565293 512527341 480778094 772593333 648604663 851814440 16356099 586436968 330058694 693998613 408908818 584391170 261748328 963636349 856156078 902346619 290544035 668066821 420497016 857905201 322756500 553688612 504585155 973158997 683444712 848017928 530700904 898334305 246203222 913327356 58788301 497897255 207956361 642521898 356942014 599418853 218743613 467933128 154744149 378088608 147070174 691849792 24477163 565441547 209711308 313491757 128292433 873768869 121379355 493814942 98265118 879660470 343363146 745556206 205786605 749625333 299718927 683980906 224513936 251866929 158775622 222567053 174106274 181668475 165120363 279736730 268217376 833287140 390177441 643481473 77922171 943688233 733810312 863545860 757065132 869390156 380581701 856611925 525392238 527820101 411048476 808409121 509411889 990291827 1049497 133348956 114018103 512589386 234710861 629445730 551664653 554530942 240219791 761625200 706657172 707806063 23849264 244158722 166940411 190470916 127295393 319260878 251859152 583811966 250498908 979631246 634940356 758920470 466816697 548448316 320888742 408054139 133190312 355263057 15823521 139825489 10409836 586454363 29800541 379364537 297856755 804808557 441525669 751745753 159992082 944643846 261720266 856086017 30154406 611816834 383000103 913126460 413971387 983552276 389625373 685673316 665258760 759456077 601889092 988012827 500444992 527657866 280770820 673414784 440424058 623191909 479460507 605343043 498093708 878790135 236653070 861110488 785947428 917362344 602030737 858964363 504140035 919444681 739915921 797310427 574397056 987917388 782405248 816676127 792459772 997693405 342367626 996577212 20950334 434152589 131224161 649584588 354476314 862274617 808836314 995628704 11235899 236439879 208226347 442995776 369952486 567822047 424173718 457240099 125559372 418189740 257629032 815190425 586137159 891395144 322376316 728845973 624513576 854572460 50744266 842663014 329984383 515661088 435261496 579626627 162178407 216765065 59559232 385568047 53483092 408351528 283444151 774853599 250815077 548146216 344819432 813023924 657773241 680191578 478498770 834521743 550364264 905548475 477962033 664318105 616732534 751579525 534225274 659706049 189666098 799982877 581684758 876206085 348557172 483184231 5773910 397930245 41784529 332068084 178836452 539938606 184503855 343415480 28037776 197001314 45065521 179109790 23665550 615147431 199877908 838497195 196111493 667564772 648487262 862377485 748540762 767733510 423929186 735792364 96640625 963394302 129685612 624317579 266577684 826411668 635355516 992999858 378578024 941159893 667549284 870880246 29683128 821904899 4795985 51379866 29388147 131234119 25915603 882664828 517794114 625816608 246186083 327668644 317565311 819064806 723864333 760748997 329606719 885022179 202006345 429478840 19186756 895243155 869889060 900848445 795193799 834013828 779795115 890954669 818526030 975294714 834659017 858478360 281669416 496698973 39943643 358145252 279387605 548658770 344335968 828150366 435671340 916427876 418470155 755696583 697135628 894825905 295327639 468209959 230233353 628859459 456120118 644268744 319275876 352080042 138201926 288427224 61913983 243467716 67198480 639393654 574676306 882478145 709494399 820299504 69206631 699803372 637764004 974369977 493150189 647767608 5238999 140899361 103330274 371113145 88382227 847349378 609833066 645187909 439051370 567537419 126239403 887499651 84471607 868296132 217533893 680938337 629872092 898717606 519005040 565408185 24364357 790080120 786060694 878332059 49308712 315331672 305116051 995071846 594768278 901625578 584480130 797455338 313068895 984795276 792180837 897666710 269211295 787305334 406740333 675419756 92132219 697315369 198703893 283713455 224564023 404024727 361738039 749633096 502567876 527346747 403124422 877233474 132590629 583614204 6908378 258114508 193916403 531903620 100556796 969096707 881077215 887071125 193126328 667298817 464904202 866736287 728821454 897570469 333160883 854732425 627793244 706435331 602576136 928805759 386563279 480717738 35510314 569799774 418041832 744877093 66343298 456977406 356317743 449129935 398949593 753554031 288039889 945446812 256448014 336504356 285884847 573146168 162429328 658784772 622217321 798756905 575214983 775918188 396070939 840540133 180056624 713166975 253834456 674345163 178601147 437547891 247012676 333851743 159850424 366566698 108206194 942295388 486600564 966448069 189692746 967175894 864990448 929357873 234038376 520134996 425903037 975877043 566687635 589849743 91613974 971279373 518538291 999032310 93932876 269224855 32563240 111094227 16935713 882561469 215948734 862896001 826624050 962120655 735200043 817673033 426968722 972805188 686907417 713127853 334228345 494539695 197860059 810144516 60168864 937974833 468521941 716664830 564949819 896373455 413425311 556138794 423476537 647582811 276555620 340725903 73978150 823022275 362286144 612607026 405617172 666556382 2981312 140878516 18830239 244538599 98179046 605383063 600392806 973327060 199091608 714337994 266419159 620365643 363163694 502853659 92007134 378690977 204711664 281827098 38808779 646307786 79088692 533686466 181634051 930914598 863460032 905428111 669292097 924063783 646750374 874471257 400735834 873206774 868396315 935187344 760928034 891049187 761456380 907728843 204477915 405436175 389135541 456754690 225204197 306574010 23544133 853974166 14961874 735597206 597676192 863429023 203908927 924081810 286631996 479401915 230580970 394867048 197070193 671443299 119653989 341142286 161466621 598637429 35184961 292979963 237410792 841416156 189800026 314847768 62596627 909959710 259073161 470342159 352078885 820007460 383555729 735679553 48639541 299097591 234503786 392702297 352647010 630229245 90469034 813312583 385240093 524004341 90432523 289474977 193648255 252132669 26647028 456344529 290918902 321093650 149416266 744807252 632623583 706563696 454321069 967911400 717942879 952347681 647492132 823427662 224438674 657039416 525903743 791430319 694592289 825134304 204247628 645036948 448179847 940907505 683254379 951511488 101693206 418151411 160783251 890588899 770401415 981528214 296383210 818797478 610243252 738822903 579112389 860657856 721411904 848161721 256729795 759508786 267867415 455767712 106625667 851355502 412635564 968562714 587268835 596131334 29516717 320004495 22232884 321905506 306587642 391026662 17315937 18790414 8413081 898183110 686667946 699484420 21230405 820920039 64370291 567688669 253592573 877324138 682077949 972298138 593031470 708019651 344534719 789632850 400985981 446431284 370442935 774575973 747339101 875588929 181241146 229747931 52525667 637235619 504416008 668129925 170922091 696019447 262232451 741901925 205457655 655207575 635170497 665852313 267524561 756114144 690558403 785431021 153118339 879007570 526409505 554062364 356168502 356271206 110820479 786857143 72764679 589128114 255353122 642912543 623419991 657141102 416628907 463620778 346541717 512304334 446215182 638183321 340284371 498827153 370359649 722452010 132164673 713860889 592511303 725446576 191272033 526356398 135325980 516826226 188837889 797100769 383822252 970673705 250485753 950120079 200371707 229794010 155688020 617600600 53075829 741533918 248983262 520789489 51931134 193998468 149577392 235831987 130252102 914090022 412190632 434737201 256724079 746764320 392014454 851137945 157295049 649995050 229034665 311058075 97926876 805855374 167151394 721615247 128958581 558105055 211691638 739252362 137142891 636442656 634369150 902296400 563304679 615158936 34238854 682026856 345817265 387298586 345454499 566432392 123578575 227067310 216328801 241127316 217195094 470957083 301012504 736763970 82812810 328642337 108305518 641133633 377815009 563851190 172582268 723700035 335183529 586099347 314441041 947125676 728265501 840872363 762158366 792036093 701172978 820355677 3440932 229783348 85295689 286724178 172242394 692742896 690495968 968675431 29863272 257635303 249942270 598400503 384724344 992428210 218123282 946312300 616381442 962343541 286285753 814387843 564555232 859785738 142661767 960982114 922339896 993053992 897518680 937173926 861622132 920453659 901791829 930366647 875869612 922192872 868621595 911383159 138148012 914043256 256998154 325816574 316417618 955631877 336563405 825873656 382224642 507478450 117765212 129184166 37428253 785827749 473806893 723337459 144962467 892528720 726042992 863099861 573125431 915048855 566963740 878884935 310659693 737373980 133507389 641918995 320952371 891670876 853786903 917498020 251471147 890922031 539580851 809439847 664597415 842974923 781599842 905371004 611993540 741281792 653016283 665837952 567304431 772863330 18925166 247926279 46113313 480158040 231406633 784402895 522546102 953086159 467581723 866491475 475891867 793471579 457216637 910744883 510745791 877531812 859482757 969169377 699231702 779751514 352134395 870207920 836470687 903044349 518215392 790238111 630468836 777348337 743905181 767664110 561174213 606097698 334797645 725345815 633513063 889287171 546220717 929092951 35138130 943443570 880401427 913093423 557290408 853737905 751737503 803176830 641455876 944534843 152925159 891551014 507682173 711097868 285983889 663494778 485513824 668583554 580811250 876805762 407985889 769938063 353231552 851497078 568714140 780114557 84333176 641730059 35461540 468155252 62784135 793318921 8433296 14514610 4564486 148619066 136791049 944582020 120502415 362302100 204644379 624178121 814549 603181339 153915724 207371168 153325613 473690900 206053506 630514949 40447271 236893356 87752040 348248396 280953232 483791157 942127 295523639 211817611 461337469 334703558 390481024 57948600 962329196 591874284 770915537 594579985 750399742 168937756 195965631 53973866 890213837 445585443 554583148 223809511 486560229 25420056 805761257 322384218 919888692 550443905 954343398 165957529 889894607 47154322 878253124 419223077 563234539 328778549 490945521 347032324 514391490 213913264 535943315 293743101 352404743 103610788 546697274 82264416 176860711 146810645 711997123 102674793 745109537 1631333 744232325 505208985 906591842 335226831 649578232 343626074 958988159 34614642 422882281 321691968 906757089 64965318 137567676 89750439 600674603 399724587 795221640 136611417 281786850 158178591 199181788 11399022 887085975 508505757 660318161 120036724 293602572 163742858 725306509 675686906 773777593 76475055 345472365 268504462 316531016 233029459 769608581 661585322 767148949 701753638 897319490 196412425 490985524 229109407 899853585 508524621 865138730 643551530 792618239 784763621 888042743 379192949 831251750 225033149 790722312 761115044 865434836 844704553 972039999 24604774 798742181 112860030 992897807 467562050 753741239 536635832 881612568 305024712 803550720 801451667 808734485 2837086 148025197 30084359 898927139 167738792 675205890 132898231 830595284 81399452 679255571 564491656 612365377 384624442 649302979 462652826 836464321 155059642 848123018 141979613 409567097 102636171 908957962 12583044 555060128 431314354 740783622 145873297 450790422 365955628 538262476 309206801 737187974 361124820 920846261 785160673 907736360 831442303 870067973 854932478 881809262 259845638 370259332 76648166 854344760 806634981 963043940 497709245 726822514 45834179 361601922 319454576 890625947 37289721 333092630 86364227 401497717 314320506 421930321 350886425 743040677 69103660 690178481 48687287 65249400 9429444 135036026 49254923 230335042 82952653 506718339 68832916 627164694 169849829 784726735 594508719 894244360 293046000 891389165 483667508 919227123 237013385 785717726 304147669 874602785 236483396 621173020 117318414 826239232 235863883 343558099 17721913 784808819 596387309 663258943 179101886 202994131 105011673 664350075 109263154 142529529 73820832 597101679 38899296 135161916 30577315 246270732 131744546 400550127 315226419 662200915 388929557 771919521 320318327 790017473 609171035 851786945 107212670 272276696 246060305 813474556 455462667 774080829 6246080 264182474 208128079 506106460 248640809 696467545 561577124 568200274 446053537 622195648 566524161 617219699 57428796 365452204 220751752 345154468 111416495 177609589 162973820 410996432 52317890 396658768 39516958 957409798 73155945 344692653 310663932 541199401 222831326 912794680 111054070 384904730 229532322 587232106 107367547 817906502 773753125 837859889 395832233 506912968 61460258 261494854 195667006 349701911 158744113 244553047 96918280 877769618 165604314 940369057 170812619 560963546 482972853 832721868 691726217 873072687 138423798 751409635 349140089 490419791 484068247 779312796 532764303 819253414 550971117 939239255 68034588 911568576 58200303 181019776 124376661 294532661 289955409 895726444 22232124 618135389 503922446 659238700 312761535 805956691 26155604 575103614 68578005 406035520 322317711 623660271 516592221 676136114 267322238 662849635 460803812 871133822 309204887 776581589 467899474 594451305 42109047 226566307 187561924 390523222 221983958 305718655 59867497 289767621 199861384 842813774 156643268 709112998 655177178 817282408 177753116 545735939 415272991 727940904 302852256 478464737 460614732 896227000 472172654 946104302 549064396 895389170 803622380 815189429 796374643 826817933 561312247 868484834 38832459 86499471 44955404 428995993 24893031 236849465 77948452 698120706 595173774 676684131 357547610 622361177 489986767 747782805 531562329 652331267 424016188 710897334 467304747 730634498 230600023 954573268 185583260 424468560 158968969 930414784 875240416 933155420 267522621 981731326 545034124 904695263 576035928 642161850 29057293 255342845 54253610 842501115 275289991 833242585 823080556 862896929 293773346 973680604 378574461 892354098 825720736 969479696 271351599 890651213 763138011 938084251 454756250 507278531 193447805 981484883 648056793 723807978 149312714 248757712 12420751 43445438 41420348 609466037 83655848 913720762 533228003 693595921 143104930 162890100 84712457 908512470 525290149 641763908 466070316 600546818 425592160 721395724 214869221 813488682 194088935 379924971 242220422 439645136 140860296 429535841 15937208 136934375 96363502 606351330 548776871 860440029 26185684 357836850 307360215 569677617 450085757 518068784 4225715 21836729 6289451 532764853 362512791 385123029 165544501 270396266 112845842 703805558 186086417 940537413 54997178 620102775 445973963 818193189 341367628 639494024 412121427 612506530 246680896 939691193 702720486 762718993 459666525 832675148 721363898 961497147 645297685 683647263 568331680 912266712 514492745 921218526 653975078 865662593 452965141 769593146 195511425 818551858 649030697 848243640 831962708 913072562 586452677 988796061 143681693 944435716 26834796 48241876 20278214 457850565 403373704 533363925 92010955 521728808 438060396 977132534 797808748 970974860 336944508 551860903 324472461 455836008 375629251 804246724 557224152 702875996 668648238 854642986 82313738 168418725 124113963 525539037 123247590 660709484 475490206 620534389 88880720 496182470 155742790 746227620 165609513 298298573 60116177 664682982 535247462 931449273 21985331 428175270 256246424 997304834 323710034 911087999 74010807 553484083 347329725 782193476 733123042 772403387 560133069 733609799 17810273 386807939 156131186 746289515 281953931 544111227 517158773 520747486 285007579 746339807 428282668 601749620 36779821 503582985 501458830 508974569 394097226 910031192 513996199 894045798 26468408 390664842 375397562 606548911 77111635 532884948 45441179 94141527 18543178 697738382 201837323 336188273 209810273 434876461 98304512 868381791 578569529 899852252 302528767 772622586 739454660 988627167 7207499 46980512 19604090 621157215 179940875 342970891 19327631 263410712 156328737 651401489 11806165 805720085 359175386 524202977 10782861 86235839 13020449 522471214 230856790 443222804 68494136 91457820 77466639 406394788 241198133 748846113 642612584 807589410 337132771 676178898 105901228 642934701 318210660 662987137 558586323 683595382 583471703 609163339 415003314 877859633 332327908 997354434 444624558 724299555 642720241 773534224 326365007 446028392 63903805 302182374 183811033 380628798 173481528 802716193 711575610 724660180 712704220 923988109 3363127 436096195 175537948 248792303 172621350 980614857 182526639 630680156 420839148 500006783 108156190 519783202 310332612 847513693 458435237 711954854 214586664 958965347 18312817 37313856 17639041 57965594 50389561 412033619 256846865 575113645 182265230 913337705 274388648 908446036 862167908 997422619 106458846 631841837 447535468 829032441 376349016 498930589 51167994 497308363 22769300 309034402 6313394 438472668 340897479 985073993 502447632 626885065 381415433 801188483 297653088 300452421 278143527 772930229 658836033 950067383 5504289 56119966 26351481 875838179 671572859 806280812 253146871 627518402 281799965 455815171 195602586 476043771 162436035 507472430 239162434 354847339 291362699 645231416 17624203 622619261 228303552 990246565 548125751 653957394 73243916 881578381 594699657 708307954 79002206 429142864 140867240 261896329 257339519 915194968 837427585 986395697 61253585 107784535 17124756 590526446 260937511 743036921 449584309 495830338 177323107 209359909 209234543 556862537 443525039 858958321 479389391 859323177 79730367 622734368 162598822 563249964 364585828 496257334 380880789 620268792 509821815 924539291 206166763 635139398 335438690 896349272 625473014 800398763 384821623 456962231 451887800 664652656 455598657 750992445 146306365 436764644 352940832 488395111 119021646 910735788 803785700 919603174 546329738 738390461 325102923 716494125 259147915 298540661 234952299 880941161 863075716 866340086 651492986 895003444 340607686 462217035 156374108 223771917 140433403 189203139 84200917 659677456 594685155 913233861 610605452 693934757 420370206 623484514 24237668 146952219 32569532 295316105 246262088 552861329 27613570 184878124 100092572 137210601 128973783 412606203 311328342 743643962 119377512 969661305 784151746 855795346 647781038 683358970 208937450 479242367 202185223 259350114 74020606 518173663 127275192 983979597 724591065 876456829 1592337 614443930 611078870 858722946 755779968 949124356 753558027 794422379 619420071 974224340 672698852 845463473 137582428 176442475 144806344 642220174 394935675 848767146 724360883 868060846 686450903 790891833 713728431 909821958 223651280 677827318 450359896 495422069 214083400 867902857 551559054 668040486 359798912 568453772 552587443 972464223 384587567 430874664 170605147 348403427 43980441 858401046 852773022 888654211 737908425 848143900 592387850 923458038 48019373 484529625 121767724 380808109 273546577 441786125 164073759 775214102 734613616 752044912 619918599 925025083 794352931 853794971 310565350 971723449 654087635 878820162 580134190 709959907 105313929 127419918 32053320 656061275 12470670 429687204 2364520 242048187 142473412 204046511 96331139 653144208 370438160 561787478 356172588 872848638 603618078 648127215 592579037 929070801 500442902 681125080 492705598 871272982 505020373 880227661 551995471 805563782 133658440 413549150 409247491 888865417 112917151 620466430 537143399 637989212 361620194 591196896 21806160 508512837 93845633 151195783 74703443 851743549 704771730 741001097 152168004 497066848 27328148 41702190 34125521 503372772 339176298 710014201 16784333 726586298 11804408 326641390 50059113 893085010 263780949 471949751 9191149 644879480 59990732 158805041 114223919 568077630 144163311 442578585 146427494 162960818 8596806 548191711 152318532 757233023 605134555 927745225 307938546 519049915 399738623 933873972 882641647 899483553 562176054 831776254 454991936 638012298 545702577 865628621 466147479 514309082 29945978 463602565 313511134 320181493 86023818 513865290 140899967 616792049 46093051 132525692 88766406 726857249 182858754 497302687 193499069 388897086 352533278 902605614 766968166 946619371 268332684 356974485 271554230 569265295 316918002 401174025 354020201 592216915 314250578 788792826 762043904 834124594 236039071 637573582 526997578 816977395 579237885 828183963 10475146 978124209 649217061 708725799 86704917 282663913 191066451 622879818 422475333 887103755 247667503 308887424 253730480 266442820 184618475 569645991 434408017 473991998 203331013 952309692 41132678 589462051 333150721 841142410 801653887 875288383 150669811 848464607 356719518 675350846 181598262 342404348 118635105 500540392 219465587 658361037 32570230 718604936 193796829 690134315 657057001 753592885 736398584 746136582 228078818 390239126 141651013 285429696 113676680 531929408 187303255 859846022 188043659 271389998 118960626 435446848 234113987 716727648 225655962 316117495 23589693 746059461 241908059 525093543 337353396 471170801 41045410 772850889 109621779 254480714 29666092 493166155 263142927 760207452 187820554 801581152 542398355 581009910 530714655 700398884 468377852 686003464 49999831 130486105 76920819 985741883 761028210 839212394 537945252 964766983 333044539 425687459 349348324 669850792 510060379 639241528 545019981 557737374 217223489 964486650 28953126 618146837 341036631 502646855 240524445 300173727 71172051 130951574 61247774 554693709 408384432 654239581 297393333 920726013 737480332 863283110 701888290 903388085 535324940 634367757 455481955 872989705 627825648 738087095 363561596 759505399 134917712 306381297 202129420 260900440 184865012 599386418 97807107 687884114 97691637 884597960 6179820 867111433 94501937 586036968 84994946 86761603 53563451 229253597 172659282 189161025 51674081 518149209 259609084 867101724 373476002 840293931 64413588 639278413 85615812 754395636 195434509 674577388 542553871 895505259 246260608 613218875 575548143 851775325 509320581 826348741 540999504 950963543 934908603 996406975 246386378 757257863 214469875 280926543 76448816 883154058 446951141 513310281 179049951 999323285 741449685 768811715 717553662 953051949 803968401 895986345 248167042 679943376 671773686 987389578 559188274 913999522 442866851 486382500 453870807 830810239 279305897 337403066 88169481 164520669 161101935 628895543 40364011 225034110 40461776 911050821 144084198 766081174 164086862 830574298 293283567 694009580 210543961 846419686 714774345 757097542 547580935 723295158 461032451 972654850 886572105 914671057 565686908 935605737 578954573 701747866 192821781 200450691 76387963 842238517 166319059 633150932 472816571 969477416 546078714 853475067 614336229 669149266 277498345 595907227 587143796 710978583 498921428 750366181 538635431 973720699 625178892 834597180 314829337 987914816 222627194 441031786 397249488 909533197 108800214 250409443 191843631 507064134 424268890 750146347 13389531 412316898 289004383 356046168 241639448 469387314 287968902 581332910 446048306 811759625 596267437 751529202 669444086 928828400 323681958 370511841 139520490 243034144 85928763 343053627 196544899 564822567 260691223 911683026 686093626 749214672 235801492 371330076 325997728 976897549 665071513 720535034 353203951 691227860 15696785 86208045 8663046 809899473 241627992 813760360 712803914 921230881 825534989 853549392 165515153 202180229 178237256 432943718 416771531 867863901 748264491 770418133 156690245 704291121 631858096 710378284 553424374 934111685 358732897 934571712 338186146 704987850 256015026 281082075 67918257 505733830 205910202 337386357 189171473 894252927 826753986 916128524 798202397 956195093 922258570 928893782 82633936 720224975 597243772 948563736 947854398 978584467 123934674 770795043 173738118 180837183 100025825 391835238 101844653 550218944 462459694 958479436 402987254 524990308 117047239 155318909 81877982 204613544 106056268 649720358 395577749 808663420 428276008 913605624 763825779 812642756 509434051 525041561 495229875 705778480 220920217 394043918 183661497 544078957 90888923 218867707 172793570 301292526 64622220 141352254 22037575 658038867 171161504 988859041 709309079 715181985 111424087 293101305 3489855 50698146 8798989 669041150 504927312 941398487 870965311 898729089 474402824 857514133 459348940 851138338 706821213 905321849 886912226 956530468 401095539 791270216 735720588 848313529 762910209 774790050 566925843 671815251 358008893 711533158 66026426 79611514 61161457 340193111 215694098 488363557 439044451 507384987 102147819 724269374 152840644 475281480 99106171 730040711 201556833 927099410 598469053 647918084 515848001 976930920 521223017 856492115 605985167 696363496 313302339 511924714 462015150 583213485 35453162 42832596 14902877 731376610 647543698 829079237 721244133 753159146 509884910 653121024 373367818 867505096 58198289 510817919 130072162 629335962 439140055 447372722 144511682 174055385 64480342 807484136 631373993 802907814 347008334 567822736 222127028 792846807 711987434 758690146 237832728 996392097 428080326 905553846 185770331 979463553 723706155 797617911 555625283 833541048 260844930 481571401 94504398 368732430 175679559 512602113 298581746 990292528 649066499 695482906 110726571 423615877 406506203 944641739 278996418 831350157 211579742 773339941 252630062 922291955 277543839 599487930 32019386 698796832 180146295 257469319 255345436 910877509 126969769 431058898 250230158 631666386 525214967 932227944 345820267 372039405 293068451 624318028 89695688 688810643 242928339 586946098 488034534 914121989 103920111 299483666 178351956 637279712 39076579 882362520 487388796 803599870 341970968 610051601 19888219 833648717 401234666 798205932 741513369 811872250 188412640 560039781 247158873 791438875 428777155 563911905 343230346 482569293 267910786 814981121 480524185 883119507 59909433 636976559 108288606 322234015 177667863 183762615 38732265 819028302 946095559 202405955 335144116 179650659 893484462 15224299 356521723 105274833 822384346 254900119 898148657 256817349 476801503 442839155 555033430 7889370 207119278 33315238 528379647 424561649 793991554 447623829 594883001 500061329 737919743 94289183 682933344 255201433 553671232 138517258 368629037 281799301 755582914 204155206 814353791 575155044 678857016 115549638 555758240 6599963 448723949 122558786 921923733 166926308 543021764 410292620 794121880 74558783 384959727 261487268 401926788 157418458 405065255 366296504 396337624 167023388 659485508 280592745 534690234 116596058 924555497 328941102 988242098 181688205 626275659 520403627 536898808 133070677 945831598 390875082 639442306 485145837 610474632 246680433 480889150 91068846 728157972 93714425 348366508 145853120 760602156 353621021 833024097 680083534 882809313 848305786 967328846 141969562 747949038 402145262 824802433 789506838 831101587 707222257 988011732 590614422 801243893 375875913 470582330 434496585 906159346 365752660 393904405 218149448 616951270 279391786 947431442 234090953 657316985 122121459 838193799 770554645 820484388 260768471 590919558 139608969 402531599 20444880 424230418 227373979 582565466 254985506 978676404 111696983 957977144 451770593 629954665 140815546 480826887 139880559 750514477 400657305 467274829 341068333 785798923 461460567 491772262 381023196 816464669 490928562 868019285 320846259 832692662 812047098 975711593 424055957 671134339 623088953 818408416 344406055 780398744 621107117 945349950 510631824 639078760 269264127 898460161 806598878 977949569 449600977 583565263 472136553 648868646 579233379 594114793 263347372 658910565 118559892 511338792 464603637 994856397 176770843 761833273 332183714 511992228 165816304 530282996 80677168 459378130 313425095 589283465 139557193 236741671 68494724 429511154 209756954 647673882 309901257 562547137 91101955 579092988 493731401 619636242 316338215 762504853 290777199 472331750 366211570 741564920 425853155 906000689 63608924 521221776 141064895 145184177 82827353 379471853 79218042 551482843 319079250 889039139 581483177 768878526 278148932 974787762 33225613 123101143 49341068 682877513 529018268 969451388 313177700 940854579 300109938 523540943 488343197 897878524 315472881 726594630 245000180 977261173 688097260 969702450 620933433 886234274 434621768 804404676 203661056 464306792 299485424 407690192 292618985 734622196 322817588 436702569 251598921 539857519 144412494 386921929 244122224 613784839 501605550 678534475 29553931 926687956 351319604 394075078 147724940 454057920 226169218 788719849 9490817 563093781 460938240 936463636 34622364 282381294 81115109 274917452 232526592 474758238 471598870 979877801 775048096 938973075 225703407 932682076 880305564 974993428 9025021 350025953 148624252 872697308 69265340 471084582 431386581 968547820 113540184 617969061 19544736 458786638 456584758 888331905 125566654 948179539 178768616 272950345 20766926 872102671 733666892 740620111 463849861 681968896 485396945 622787970 122830529 643412455 33445734 832548089 584970542 758030694 320442842 822238540 250209554 378449617 235227782 683457252 83551367 358051414 189500451 725974591 464156828 580094268 575456681 998522739 101670040 759133735 265665264 362491309 123207486 168500698 59199257 826257132 419096284 424631216 61199338 663035662 468206801 648525212 644731500 806024488 44603530 94189556 1457939 408880863 279131030 867888336 749798232 972994863 727232012 899248564 847745283 893931742 828779306 847476542 672338282 760204423 634626213 732695522 589197183 778225720 302183870 990771696 864330412 968742304 847104788 908544033 701078654 928573261 229131216 850640645 416802376 789217021 360289731 922950020 260597170 758642266 98587738 815125533 623484542 713163120 542066690 801230210 557840819 698809404 141177212 295076316 105877714 391258983 373061294 556065359 48905457 194213215 89146679 583942527 315908071 427361978 133415407 289740072 124448304 782904175 139310651 767550998 194433911 216599414 134132828 573361150 526890860 681638808 254112935 397469324 244396786 807606815 161524001 483974656 366760125 473908796 169798097 359009205 172010403 465286224 447026879 871776606 75466688 176729275 138879051 533256271 369297048 494805285 462066911 787082806 455685088 584332624 128789344 478626530 263639828 714715861 349865534 498981940 23721998 574885926 133913596 751235764 607070587 907785802 700228284 744078349 588874944 797451899 571646581 849868847 332503514 841367927 111969906 156660402 48797255 379736673 139507922 351748845 43787541 346581701 221547550 631431869 324894338 999696648 107084200 403290890 184268424 288330334 162407049 910666166 304630571 569624552 443545276 586925715 452947513 640508796 502798849 548168870 297534444 535495726 461229281 519323305 115251602 987623017 703266266 784409365 399721076 724741073 323143702 720586141 481529989 945942257 258445609 629715247 549810285 707994542 99494494 206777604 154923883 717999314 251554535 423877402 246130677 434799692 106028700 343652220 338184135 793287817 607029184 714665352 656029541 767150207 433365823 939844146 402304016 765193267 129151582 968868692 119660331 305570418 302026820 786078511 297550075 543833517 202853348 382977675 274429168 352833101 125024079 931156719 553274592 626242245 300277130 881164878 459432184 937871186 538466222 776159168 59958168 290851687 278077403 345669731 123483263 709561083 602697206 671588722 139304717 415259987 86177891 304904724 302894612 718325254 698778502 824203114 590326976 913059221 608493327 749512056 80653834 274640618 246344063 826516091 193441005 562836534 472780919 865236498 29658215 448244265 252122420 580072032 480327556 597585645 142187601 295613209 268540056 860615866 183092891 335066586 164811978 811502245 453427321 865699869 823904983 850217457 459197869 604026953 136821022 740675958 593746662 899649605 689805871 845303323 85919926 780521999 175539797 828100695 166175146 769603771 206368233 935218410 679117563 860826538 297077875 671306564 524123059 881524782 198818067 888872736 648389988 968351588 909490858 910920773 734711714 841336014 495328257 747508056 344523842 350476830 187905657 941575686 400056920 753763112 318897133 658047122 532616643 672483329 178070558 548453218 459859565 994028666 253558822 935657058 167843759 198861603 187196358 742723429 26410242 270682616 212397789 875820768 478230576 573007638 451316546 855506189 602379071 874652493 697669069 821607043 29332619 947599986 119971751 726696006 170774604 864117751 669341767 900381116 809643631 928482854 592207248 775018668 133364486 268750141 260944 969210822 248743200 493434343 58591215 336455242 261709451 443035729 19247640 492207777 133007721 596190498 106507580 488302166 158146808 309017597 164694354 540458084 191438358 517779999 457074867 902088112 87971484 373355541 357054294 410245108 265094781 576472783 499594203 894905888 855535364 875616472 671134627 924593165 458397308 906791769 278109296 878153236 527518245 601698030 332905455 465781224 210031122 418752713 326767770 688390771 474678088 710315140 702596953 835509068 829044985 853588185 732426896 925516064 736577571 893087448 544923329 810032734 195901818 415823713 329291138 720372346 80171189 806607692 780307567 848862331 625926975 976964873 563727067 709945822 402861475 760803796 41406292 314682589 8198185 210044484 172052986 872692192 242120942 257021136 18625255 998728594 696565253 782442123 436019240 951497601 318391688 475168814 164617468 289039357 271073043 424797381 96474209 804749729 130584631 460887944 246180193 428694127 190441465 822760865 514778031 969065041 634850976 903398832 451962687 714480623 284012281 941637105 177418960 683288417 100882881 742084824 299227121 602367413 65616332 295887099 12491097 359034560 44366571 422816489 128987023 594963939 508021081 561955454 425380870 546624998 381335558 717187184 23294539 411283809 262667261 312401452 307171750 631924682 445663105 542417105 174397858 826488579 508693824 818505406 329181893 879540255 498988624 884515796 614715064 948770651 552607478 978354314 572904782 860456780 568299902 712370504 243553331 755478988 428951660 527960634 379398931 848950222 398586823 960603994 379115197 613953217 148918241 468210563 211989899 456823073 168931296 567102011 253855405 663892864 590023642 668018559 538661750 720266969 165784335 770835184 107703102 665770649 249059384 740304511 704922849 807518397 253227418 487642193 350284507 907261043 382546872 597225502 90254159 455938725 241456482 927367468 230371082 414189663 46461904 632242144 448936432 792074596 712217707 871090798 196272599 946004823 579415390 659135996 249052314 294619679 162261741 342208443 30457007 720651784 314821641 370505983 236871121 584351676 168716780 459097363 214714227 971171826 699337078 785385568 483924463 696714083 6835920 852371602 446055729 802544977 637684031 681967284 233354922 703327723 388062990 443115368 111649364 785012504 281471792 774808014 315690361 922402471 176454722 675469772 469948662 882654983 121322580 591781308 296360438 762857836 603723648 938916451 644648789 699378743 192312730 361947473 50020087 669233737 183615625 285398694 196932192 966584656 42018686 378501333 15147545 796475064 527207895 951143747 609413655 676278349 472564876 879379514 222250257 944579030 75431736 150251793 39121390 803397451 127486473 684379784 153905780 186242818 23482983 867192757 154673419 967721435 569209162 605160919 268760452 444182627 91264495 792914469 221026591 327554581 230132971 359333653 84118344 945866475 55070383 147669465 88329622 345793300 177511248 569848561 31482366 468951490 98451611 158290855 149355972 240036694 164283788 933830609 50993508 697632992 470173190 548418456 238578158 251869330 24014430 678209086 246705869 958338844 358612841 724672263 318828607 649708165 354192624 677882422 240853088 443928065 410512666 609522742 313000391 522528353 452977404 958469041 222670723 953208061 587170836 866178340 261662041 717720439 326804513 590306439 16000088 915160505 457028475 978020468 302635918 506542959 138231321 460421698 130292841 246477478 58478148 954674366 688700164 858117792 602598454 859744318 115145463 730789919 19543095 839942209 489528628 574577204 457767957 790802354 661609506 829438527 414744302 883563213 439189885 885020845 591932395 644956927 202166096 970465178 720992535 785700991 206637348 260906577 150402901 418673851 185492884 562125594 525690987 807056485 163125497 873298628 315692650 559104761 420967740 685242264 494412080 880342723 290167744 312151325 160413998 363381718 253648038 876668941 298040062 936312480 243265429 301456280 105499537 856476828 352326397 588020350 454899736 662366947 256393951 516125070 496279177 686142236 447972796 475813551 167794456 847764841 447586249 703013956 615976803 819279603 521534705 852730164 380797339 950404114 239634366 306717420 3037137 541269813 509573317 549549929 472618396 772506366 38080393 611009751 510343335 749564424 614006508 877482250 579251381 917786718 298729461 583732933 130316009 744842609 294688853 695142989 573910551 624823234 175028148 607177647 379128636 482802394 357099312 509697341 447452339 451367268 422294731 532171435 127196796 285504640 264236124 731940813 684290481 773150833 757712922 960372005 194709547 977508099 719106935 747784998 237429080 527635042 254027384 679248566 550143827 841630088 156041126 390862174 134349708 952789596 692543002 830704180 816031456 961226732 896933712 927744973 591355231 703466805 117416055 426365237 250652447 907484060 480268401 861802627 688587698 985393127 266171056 726883072 479938013 573063202 407608351 428201106 353843961 675837121 554509018 931609575 108662855 611354034 198727553 541453195 223008429 296462410 83721345 680218734 544790835 942851855 171680156 610191395 53932880 176752813 99409168 262018838 232625361 914283240 182292501 602523824 182707983 840850382 664826495 860874848 833281962 891366702 27179852 509328846 8580564 775322800 339864180 755145837 55662847 967702069 260709654 691557548 222888239 748481893 656029382 680693753 157298382 277845865 182915530 722040743 595501100 906214683 525577865 764417200 605727345 704502979 400204571 962110450 96890800 713606245 225904070 496300398 96129680 465879074 393369888 494081258 29956833 825787968 346799085 638252015 1246252 518429096 379629468 446884882 39395429 943872275 529497985 609910113 317852499 432211419 268107171 688585767 215575446 265679671 11245989 346623251 125763431 196620658 53230951 348573210 171223429 213929906 37308834 608435441 305150425 938970320 10746493 127480011 54626209 287463981 287313623 384142328 237910854 770298851 353892396 823175192 367053929 523591446 329690960 336187116 151021964 488566580 471776730 527376584 418519720 716181207 137521254 503258256 46248523 526654754 145238464 360156990 74584348 549906221 283402834 780664535 498439247 706031861 458874993 477104578 219417803 526549153 27918655 991865203 276725850 556087530 359353459 649144983 519181088 690463402 9157281 425360911 343114795 984405319 37613602 554496415 249102687 811387784 799265602 898417227 420922741 713090604 667148948 919161569 178101233 672375934 49514510 484853023 278815425 339386218 157507942 157807894 125217300 516774175 486399406 926585955 690768669 958963479 622732283 855734666 321994104 712296700 370189699 772251079 575901240 855673295 406812506 786361399 188865792 707811505 137487486 954634418 866683495 945615447 909036251 974991156 225236954 368061818 299558202 576558289 174147195 850713447 123075603 235266516 174106142 571536944 252172253 554965905 270498038 668652115 218867279 434844559 58885040 791569821 703865375 723558629 81916370 611000692 216909697 335846591 272649547 860784553 444287955 525593734 407094180 874394996 615872984 663458599 474758495 892591664 632464665 940792504 890966650 955598669 426613012 595103720 365682054 432987862 18580219 403669766 232368651 655688564 221042961 774732589 579177719 990701463 879247265 981165214 876590414 983501755 355161372 512601267 326617943 690804330 769410 318144726 268230522 945197321 685431342 897118642 770886230 977891718 624800673 876635190 842739013 945264859 73927956 654050896 588260416 826589157 272272095 493701173 439998862 933962765 892514911 925002268 622087942 641774307 58820185 680045892 500939812 524721174 388883999 547380334 20399391 271405100 52381311 866253561 111511652 772198108 398558466 938615749 254793770 852728480 271832896 421321174 58011628 173044972 78463559 795599140 366152986 833668005 64714927 393773264 331275129 822754602 100737875 946180314 682741666 746666465 231086582 323992245 57922308 331228389 37723222 741481298 326768627 330431713 202877519 782126553 272470841 789538004 191981490 347768420 155042678 498211347 218637821 979902063 518183664 613762527 593603712 650921690 552169225 936655875 652428361 885032440 78365271 723914738 189560233 252825150 175219709 749755722 455225624 491658900 84393816 776019268 120274548 863742136 849263960 917296289 546584215 848687776 764620412 873808337 279058128 941131041 254988786 289917559 270618541 337325561 230328189 707495594 147878580 824956119 540171190 914071805 361696255 642752823 335026888 616902968 312667867 389203618 171319739 322850341 211587529 665433363 358612434 815583650 551039786 954343570 384695791 843325963 646774847 864241960 469880891 666003323 535987225 631992405 567556727 928905692 720037083 759934364 81936654 526819958 278679857 725219013 249668405 759106195 425511164 619131995 295666576 736419354 178313896 187648525 59990693 262661077 85346146 293405926 256433755 964714940 427795628 982952454 380093330 945281245 9223291 808290477 739181527 888325983 177748827 906217348 525542186 817533959 539480237 841339214 115797786 273216711 64280717 657075021 626169506 746541875 227730223 346610323 31272326 799523945 560473651 822243601 678699065 965934468 225774588 243909401 173115899 469321490 311523344 923641394 372315821 507608024 244049265 844444558 719416380 947852479 142662520 836564104 10969426 389550041 95900417 240900879 38723664 901548871 20785238 30972274 3541632 7596490 5259971 122326163 81530345 118439216 39007071 724071988 580797267 988669650 914948740 990864966 296644356 814600436 2700692 205367564 197450066 981015098 638305219 876560272 836780968 977363357 415831811 468945673 346973516 555587292 31601702 408905150 408764794 422951603 171177239 945445467 895282839 912189346 157459364 777437004 159942159 284475203 278483082 606909509 103704342 236623389 55586843 243842617 227444024 534435834 104604581 937170728 855278092 989091533 883916743 987747371 285178423 831039099 469796855 818136316 520996200 555769405 486079300 653100539 30770683 360092137 289321177 705743554 499984793 626859008 214784788 363029390 137707510 361327212 18517298 79512146 30413409 453629993 95052955 334106717 327591374 624943435 541177660 701419050 107683103 390218731 6673452 359119601 235490063 950166481 651872896 790166722 420935484 660619019 343896434 808718096 184852616 260588981 203393710 757953135 260979491 863564275 73222113 752631213 675789055 932553571 894412833 974029581 277378174 391608933 61108248 338346242 58310267 902398519 809910067 962066411 356958708 614456600 352702282 890183844 322531102 457227395 29281159 299672160 91444222 321417829 98173170 470010139 330079526 667271399 364610210 454615480 413755696 782152413 13519101 590563511 359349137 659997062 218512493 837464050 118019413 739995360 53415025 466830311 86589840 899592521 95907552 345885555 130530471 439804798 385869892 786445087 613113541 976228913 416136157 599920384 203215736 450174525 66209076 391432607 321542811 364186687 20642193 441007531 116245269 166926910 145326041 248548473 169620858 606478611 297060482 548388097 309283432 866396335 665334678 745557764 143570361 826246468 587931060 630159185 588225736 920091851 517580669 592939150 309120382 848108724 363762473 724691557 456281505 565391272 559881515 796951906 700783820 774234764 565445772 641255240 469150282 831988539 217604595 784730593 528515718 626943973 512769459 550538236 165712208 648259331 11208154 72163306 71298171 86721518 24547787 992087576 141645878 588985420 374278895 747128395 505668143 820944057 343068400 449089536 434321002 500685396 171887270 976846619 809124035 973996484 802327735 831264768 521359269 957389414 259980462 621758624 346649682 585451232 79504165 463128040 405166214 666684867 40069636 565655463 458067004 664658614 304930019 798392813 578239037 831449771 322169282 568329136 323118650 913909556 495044294 505656048 30134630 378803122 175874860 784095047 666993049 985776992 19677518 974301647 551938360 824139447 630125001 690077782 242901231 367315794 254662778 809356571 540330922 567266179 379381490 494219187 481652680 817214694 114590164 244763665 212102416 734526320 54552289 942568923 695162456 742974445 91418895 654375423 536297214 703555621 270774582 518832198 113878861 732343782 70834619 448971940 358300259 426805812 177773292 843864965 177025472 896393260 365531841 519044805 38889641 224355926 107120342 749881744 147091856 711480731 517868653 918350153 626309080 690796330 230440348 253924537 117878348 550859556 83083504 688469237 440055746 542867268 536953178 582694373 60658552 514671611 299295088 619263764 14988776 789920194 754541195 773282567 728681820 939501850 490254906 684687176 276169801 969045902 925020196 940860968 526774080 925008771 101988316 509057218 81174820 998751551 762207672 895086592 787758923 926438615 303845026 803242000 575005173 597380306 518074823 936093709 853027324 923888291 471070887 704235180 641961928 865692026 682798123 828030234 508811735 540672358 336779382 876959720 755576645 782743877 253142668 507952568 390012849 406431720 40791291 888000034 378449250 654023015 358460922 603138216 21819008 307926792 111028518 455416828 228415222 606349740 401497801 681611631 473639283 497748687 77607712 255154911 133896537 681932400 17086815 305595683 153632238 433314865 115436088 681172936 90202772 597445897 221220306 946076826 268723287 762119096 61108816 298660192 284608158 362491020 111335654 632125409 273342461 865886556 439468361 773538416 558574247 842711210 109449216 742828710 90390342 861584360 572930161 803913572 125348702 241647690 146554931 405957213 368585450 957328502 196761190 523655056 472784726 608884920 7517372 893072101 748480244 772616056 253301293 326575374 152205172 668375404 304032643 487136091 97198985 108475648 31740922 148481763 28281904 132999300 25305040 963870119 150754628 815211773 336590876 501445629 398608929 928551544 454491294 824736031 640536709 798180275 130124773 477603605 207782042 994884993 969749934 989883846 653451614 913933695 891309708 988133466 521173644 668810339 126046403 593533438 402594876 571584600 189448579 869225634 79270549 472657519 151735053 414664830 324790844 545606464 455854711 892331056 487748962 896043837 511969544 516338341 454926206 845112639 510629924 732337219 301930272 580756891 309816821 315739339 39538635 505307627 411011134 851209326 192112571 601105157 356583606 693435831 42355510 226153555 55328192 548034892 299668182 347901080 55334197 560051619 459189371 745058369 661747925 917195198 654622004 818766351 280293962 405034001 77830803 480080895 275479391 912944073 437335023 665216215 198414600 659368890 514941977 636019433 126660801 936389849 832410570 996101966 981099398 997127336 953385375 954886979 954803176 981901098 100140939 489660004 425830743 863784858 471812881 799376898 579924467 763488858 56896821 629849230 576266690 676411433 214938315 580000901 234145050 762198521 556014853 983417078 273198155 405079821 181327256 719386542 6884076 995620592 753799060 942913924 251084058 343782474 14920084 821697192 299847839 669106893 604337052 772030483 223556616 329007139 274986258 449434010 1152359 184044695 29453089 915484940 304374879 692428529 485962005 685320518 264384636 491429364 463734081 665343638 595416926 926887757 386678848 909620972 154443817 695663865 556241174 998426805 667254226 873875799 582731418 871885156 286258371 416354816 407195386 695759145 376708797 866520031 214137929 422537049 422097555 424797470 132155700 732410428 489113479 627265995 15555836 625660203 90404292 468857068 363114122 441456979 211191892 751243066 43419352 88285860 33365147 808143661 546791175 697619106 406403000 713087451 339105464 670498594 614339026 900182198 564755417 695961031 572447844 837561996 301925794 916360100 481948221 970187512 463129913 521980569 88047355 426157403 411811371 895027478 484779303 859579832 27944640 660000627 453903703 877237210 681306299 701833413 495431598 962627316 234287823 996646709 127763388 753650412 454993546 981504482 34448898 529649797 129524953 781466617 287841716 291648910 275089518 982131888 696097417 939142784 724711928 991213096 436049276 914520846 158188878 582235060 109070804 661813241 52136594 565317036 401099720 775778075 47500 102705601 72847546 126322453 113870004 370153445 125558018 944939749 159783734 589634039 369070504 846583526 130397958 618555590 468349813 855060850 42067026 695438500 125515926 925164087 697884928 788729976 195210828 694126809 358403878 529339623 289487485 817138312 218462608 354862253 121307172 811900747 803434058 931211084 483394451 868548265 217784138 984863318 142780388 198213989 78373223 979741519 966820179 992137866 352235369 466091916 319254285 497296261 31541687 697747722 348263127 835050425 696554768 937525648 533660619 691176975 367006214 598733870 231682520 337699779 207993182 959489203 300485131 628118700 254985048 880738251 643287623 818905089 542597879 817634859 713403014 915152695 701147682 951093231 883543986 908274252 679911724 850835432 647114912 827161343 79293730 703807438 590769776 876875851 488665712 557255083 462790237 799469736 169612681 630349241 307562194 820632558 63743965 411157894 203547384 634286368 115638558 837096627 307900432 976670053 46397948 177190081 113288671 260476870 208417446 346844322 286652489 912625888 49743623 837524538 729616076 766770924 624326606 672404782 356691685 898899167 713570203 919206266 230149160 234419275 217324367 350202940 143475851 546787100 339077270 856719797 627981159 930454466 646226403 761299581 456742019 651664439 471106196 485892950 302634499 634781996 268871750 883656678 511381801 679113945 375334683 559484025 383029943 383547536 236875908 667259191 551687545 588709391 343023891 949334281 404754223 695654494 5158315 990874852 529208177 858244478 447514880 584337511 509185125 975141994 624775256 688517222 14521108 309785125 138906729 993013255 908779859 912417587 50893443 805440388 711339341 810838341 619618973 699421778 99439769 823825394 395328941 759271291 372633497 547656281 130534306 686603185 290240352 818623518 767752470 883537277 164900614 327637010 152804957 507726166 347612908 936929694 78358215 159056370 35478882 105019528 6015784 283507828 262579356 325198963 169019415 776799267 30257799 880269689 385290876 805883917 151319649 495099861 121702961 669302575 513452263 793247863 775198423 876070436 465476356 631808304 123469367 312554737 112005734 124820510 66994607 563176276 52996690 247125235 130173922 265837966 5663055 647580092 118334115 802984456 782617696 993195629 851803355 906486045 716108550 827544422 451985662 467817188 26736659 492657816 233364420 875514252 439559249 863353765 822435766 891277451 218294921 448690269 349158989 560393779 175545267 850852147 768675248 913818414 189252796 591890692 207404025 502552050 29791794 112357203 29407235 861156639 123822325 428314968 164574036 868947523 10417569 911396039 57373558 666631798 454663600 739494158 274657035 707787883 112603955 503096899 46952015 947371806 395361224 906737202 29444530 824595678 157536368 974268889 39369382 552316512 214890986 629378315 482459374 763147771 369017665 396868217 34389859 232962228 42982483 820652069 637739154 757669869 347664175 859098886 10388692 368444419 247928888 530151279 424687283 613727157 10023231 450455132 336450368 913718721 366461855 669411018 236993902 515746229 265794188 784667620 390305293 511257032 189943387 453718343 48950279 982836108 355238817 702873118 318558241 379289139 262903119 581817084 138399940 549701137 380807872 972036230 462006956 922309112 813216943 855989312 121698621 637133626 293406394 608216176 73246020 495492884 239701876 781161616 559267084 756741234 440233624 693561939 640410578 772757785 361281458 946507722 269573814 695868390 643146845 707660215 540263485 794324858 355022467 737324758 485799859 638486720 27428654 882235378 220774126 418304389 287400042 538516778 179440548 740907698 369548542 856101578 842656510 865466237 347962110 352049776 333265844 872060126 398161354 560362041 383944133 498988963 100783009 248129934 60875022 788494922 599066651 863717427 398524729 459029093 21843299 343394598 215654769 462778612 64814098 435296755 164379397 422861363 376987882 531061507 38071304 874207806 345917162 373279797 164791892 960074811 840664671 933564380 213534738 920998674 336702965 392325304 63946685 421734665 243828533 382146253 5483450 46509432 705386 531997790 506611611 729719684 377637444 812302985 644378568 719781582 5379034 477556652 224871912 776697012 6594227 805552589 548301009 808455249 767989511 931929076 275073918 560110772 287710870 673847256 69607265 602949204 355010199 740045663 217180986 554499374 143709857 204585099 193469734 827266039 564459543 927330380 924774793 947009239 542189616 758348381 209547325 813847781 321570049 981971765 779708438 975286631 683190409 757392596 274552857 741163012 587294895 929716416 779858851 951297521 567222418 691371768 667412965 790509378 488489933 872597386 228820096 605119030 369988061 819522514 585868326 604877083 212302694 294056447 270294815 550085440 440561045 517139258 40179438 419263087 103004632 761219127 469681304 906399664 552841567 623561512 134593273 159626532 144217909 854785979 648679275 742760646 679149353 928600015 70708583 899794737 879216174 914843764 139912428 792737942 201417662 259932186 25435553 991479704 766847257 918770929 285844890 349905942 245287426 842661975 623903061 937735386 593061329 809617763 249242562 560662132 196533010 962341603 172315133 997877444 362472502 478175655 348483945 792986083 566935203 920031536 98469352 399252001 300467652 307987481 264934797 703507376 678106207 800175320 658451013 933636691 670969989 785964151 516117834 816139810 582165737 977837289 290923932 331301330 265899286 937695062 187832306 503188449 414576005 551630705 541184298 593778434 389850229 767164279 363874053 655229145 490353536 854341700 105897638 750033449 529226372 907447943 123567451 759806960 185566812 932824751 502918937 622753358 53365713 944689806 766086908 800104738 622244543 940795602 456912073 724406580 336420113 501793893 210368690 987751817 792808690 829895383 623699499 945409029 640798324 767116874 43351963 225073136 85066409 964882260 802437491 952454197 350249282 915557878 638130089 974350383 13661253 376731747 36710381 934913578 195079738 386923677 263334775 284924703 253688332 796286282 226431575 359296666 67414876 530807780 404382885 948151025 59507587 925461422 344625967 593648789 240822727 925122243 712232269 964767666 137839550 390044845 291740653 446543758 264959242 866213369 598909269 861387076 59895548 364883594 191591270 838950548 535208439 747215374 63427576 996463096 720018691 874051996 119567268 728131004 408162239 831634854 413048185 485452684 279147882 710652432 7502936 801104595 16593312 238805549 191789442 246240569 52822731 642959022 221433191 789214153 544788663 571150728 327299528 699758797 297543485 300227868 101061944 127978672 1146905 461050015 264930918 496032802 10993428 736413517 3836556 976438189 29427293 910057747 714864699 918174915 219426516 463446895 335774174 961869674 557797979 889346623 492326729 528069045 215640560 578978369 468736985 915452235 837407542 901930499 829032408 852162280 85461751 89955150 84181143 240857856 101152431 754093573 357067722 563045540 384694813 592887430 417821733 884812731 666573728 948188830 853532600 862780581 159946610 163626588 22586829 634848400 510881959 536620638 182793223 894371066 665241796 851685666 796951604 894506779 751176957 806756462 118636656 783961151 177527964 566963009 103121217 840163543 34744553 80112137 3707746 114694687 68689061 794592947 419576447 776614421 438060421 439103061 293151367 425927083 249867817 986294936 28960260 567419230 307984986 511137753 447535430 634583120 385481870 642998390 640954499 835532452 315348415 743502860 719356905 894251093 139328029 677428895 277189228 632881258 91053567 99602427 2785829 539150740 521676882 567904420 194657030 680740430 68285643 167662897 147320352 733743738 672352645 955268661 121079841 301052246 19822390 686439608 505901590 662635049 324205624 710245521 273627571 862828786 319100218 761652504 242878065 570484526 540284284 873972701 70935211 542412183 185598726 859678961 781759617 824566749 490560908 872877966 403401411 851774347 548112315 972811632 52868418 731686193 146837721 705564485 681751758 707347731 562947232 618464169 353441548 835454964 721654595 906593830 817576464 971073526 561272179 765537428 192127771 255781336 100232881 213854538 172139475 320199652 306318027 930807772 774452497 937408914 296059249 939930440 130699909 901953048 49987094 812201057 170327121 556543777 151589354 476061527 310723155 557547621 168621075 512930788 361270883 438505869 84755714 854298860 772163104 954737407 572899791 760225337 59214000 88938380 16608786 328141098 10711533 966373566 177721030 437830441 31243525 316784776 131282381 833761061 576287723 605743875 99670532 751369351 156798717 353816019 189881598 660097074 587679545 661191374 647514093 667854849 236660895 690806202 672913087 920619481 222173758 230186892 69646419 767166313 125972161 809582120 104510409 268107547 218292999 261604972 6136599 659640083 223423253 744585490 159165731 659372015 591737932 691695991 224659039 773139580 348088402 666344943 561470588 564135450 327576185 517621272 516262739 965743422 313386957 405962964 132865171 736333704 193482617 681782369 537052142 555684408 226970629 887333615 221723667 650017344 214994501 521223952 300442107 493271879 304510821 343139342 37764111 298288273 225529773 870554257 84929582 141406068 136219697 820873944 593824655 644920562 521306722 897308977 653817209 815297065 295497308 761846295 124281664 611159976 70023488 538215457 294724945 348164163 338976161 969752347 877611961 946560056 281957426 409046626 386673536 973028646 229673864 471097934 203341757 859555464 327505768 919008242 658661714 928871213 51537469 217095028 144900023 352965127 47208030 879129283 740364673 992861478 489055759 872683563 423732782 986065504 144137885 938327567 533334275 870363665 809484990 904787740 457050115 843388264 352377315 364044903 66214759 620524967 398621148 992017703 329971249 958659762 247701093 836831759 769224648 833054867 22148545 668499988 266778105 347645352 287387556 797909881 318446504 540826668 335340465 702742756 243955476 366002668 73554925 935633741 386785022 878869907 80057924 513062870 23389598 738039540 267399135 362713941 84768206 575604401 174063633 220244618 97563835 854738004 365089527 384615457 294605865 380174142 288388801 950663750 730402375 990729385 331371853 632093512 583174553 836958612 524395736 637641221 39016111 865217500 486455657 500913451 397518498 446712053 391084909 392795332 147854442 962696335 701203840 974560431 253165448 824032970 744793426 746465413 151488146 903398198 594400069 861965005 452012864 524690895 138823189 895395803 403511354 901771220 532457756 842155969 504459137 645914262 206742096 229873444 41612388 324982382 43700257 377346466 48914147 696146986 410316271 735506151 304908842 591738391 183022449 914481855 17734559 682863496 506054111 651969011 369164776 700856548 345959357 555583682 26051295 215673319 25730897 812916341 375947829 946760892 230477770 482888957 350191640 920035634 515238243 749067707 646285580 814471493 466659355 884995837 458099376 948346657 850815646 948650846 504243238 830480530 674961972 783661229 410956038 608937080 158350180 703216888 147315590 376175791 199516244 515482590 436009820 990531674 287447042 824090969 264994612 571078292 239595327 419439402 24469034 593708188 279103112 963314250 659256160 730850025 562819659 811656535 682243762 817949848 433683069 892167444 238427067 329916260 212779261 489841041 292460358 745599609 648213682 844347646 468040238 932581085 669564543 937398211 183166012 593356966 8014806 80622932 1698245 830168951 476613397 900382548 546568548 602765841 48321639 960268134 883596444 932271669 877696006 890265353 222877439 361081770 75099905 875470717 143248443 997580600 692176053 743295131 371449150 578951770 6582670 109852837 19354682 361789080 45239827 742694062 621793807 904735383 837655240 886065114 801344268 845255233 535400270 836235610 655678177 940937447 198986935 352539485 15090154 644059047 116915641 629711109 523974891 533713895 250621913 643644431 489781628 718853326 419109570 578823825 481136333 567171248 276811837 501048489 30049977 862803060 656821103 804098408 518223645 563913318 372604872 739101937 19176832 333896328 122819079 252903197 144195834 395785676 340256081 985544948 567176864 713038948 76463113 384892833 333059680 485494035 286029135 303605934 197235942 950444398 358056999 407413537 273339251 337499398 205741683 948125191 872303921 989249044 40662591 156661227 100371437 678349817 479620030 583944449 40423503 509029835 113128887 436249677 52771200 137767887 72831222 698123089 683036587 910184346 508956084 720921093 672003363 997677850 963975563 966275796 261525668 466576559 334335925 356811718 193284134 786409479 743947108 839642475 251170268 745049663 611055902 892092262 363330693 628763720 210871081 809776828 263987632 988627127 371427586 952270319 245604216 954817196 502618251 622278078 119378551 787926220 724792341 776810017 240272242 445864274 225303072 524861150 325402743 788300066 83909246 899793760 681593169 827991961 696823755 994068428 728611561 860553880 96972675 433657939 229804699 703707449 485689799 829280467 116415844 959117843 292460130 888950626 24839556 668269280 228928478 829580116 106457004 533764218 66656696 808075269 312669471 973345714 812150315 944282365 180141624 569821348 391572402 671504314 388374109 696308175 471707053 515044281 83142355 989036886 436727921 668781986 404202802 594407311 481371744 807129268 665489895 776299123 30656912 969571244 452629710 648900782 520634802 677109787 58895817 830178594 649869045 986004035 591530220 732143418 653502273 991120830 33984332 547385147 395911596 760766263 322445537 712524555 134754545 744176741 205839111 234287134 195898068 839410984 431384304 665575769 484042877 758704471 555499692 628756758 470878577 804852406 361403992 484256258 23447278 102347475 102075233 976186718 305753628 317600333 85584643 768867227 369740659 756843377 520003480 815940093 356441142 559117499 433021003 843883627 703661567 899865756 437111090 520879490 281758431 546715647 357762552 444783995 189311309 192975447 167061319 351065842 86565043 237583668 59351804 393464019 361768325 838837337 186493126 716728979 160641753 246070920 228973814 537445001 530705426 622735991 364917735 837891997 185241961 779805807 6403408 977092277 660937058 804296874 460134791 547761991 100125693 368115340 218453253 507978380 461579118 970096219 844499796 896713145 300782382 435908153 315880294 551103220 550438739 850139509 308362984 633411000 309804101 995688992 595010291 616592677 262470555 822404190 766080583 980799989 575344883 976801563 631500864 763710840 245172467 546401884 521221697 971303145 654242214 748222630 450120781 973103121 26771358 225789132 116277679 776468017 409905287 908543137 665195544 983294219 896449470 940203874 555354465 887665318 561119201 866886658 569607361 633742659 209888427 292065264 143598651 641834657 636057858 644923802 34677677 674840248 656212495 842006315 803524594 955739851 344937104 844939179 13831198 415832533 391678886 422158451 403137080 765165041 366765851 389458562 281559511 954306376 776817114 833441180 373584257 525359565 242880421 407215026 150879955 843608489 121429329 599037021 424482119 837818194 680068252 829385751 773452963 902139893 894937260 991980428 894762213 936174888 299574861 561688807 297143360 961435564 632744015 846991647 322954591 778521610 289645773 524379450 485370681 619212432 370408669 531282624 30964749 425205395 123902095 982049461 514894298 614115885 312496056 807140684 593828334 808206191 428871577 859799348 243835677 535814956 53953945 619595012 118000977 511868340 33344594 495712910 396414126 914672969 816222920 847819314 629001742 976618199 527423344 910150861 211289197 334552998 121712907 499250864 166893486 551450609 92044230 240669023 69435147 780915433 124419477 979057339 917772163 977000993 565910063 783988202 428979414 669508905 127984395 938068883 495933046 569164446 37168919 585834863 534299513 894238230 236688197 798350114 731945964 794086518 768373493 892622086 861345698 889548786 727627010 844147826 99628550 601798790 209508578 674055900 212037659 946716187 699708456 936470759 595328581 927182428 839280066 859110821 339492399 644344067 138298531 859493390 296666815 852885198 3705817 279963064 40808121 914615556 756380820 757743655 473031281 503623347 30846411 166001240 138170403 784622010 746344881 980718994 251383098 367051333 227779945 930669746 464961788 591779958 473566753 894843182 565710411 747037138 346931526 849797974 704551197 769655987 642947434 812434510 261970385 712904380 230222311 811193775 295539477 931008462 432878882 669458932 34158274 853417178 749186803 911863902 160780525 180950444 134924282 384003341 109233497 694763189 629422643 948389319 358111274 804203768 719935085 847086243 496658213 728249146 517430945 982630363 246855171 309123920 131879363 438868308 42830852 211584654 107596292 883555372 658807392 661113494 657639277 686921919 544246686 563278363 442427950 836588128 696325342 930428463 387885842 925818922 438239240 518610011 335005605 898109975 705322062 758717918 229425812 614014200 200510948 258230921 146756378 252662357 143198787 204797352 11562016 574227987 35834033 724027610 44530829 628005778 315659744 871347512 772481980 880704364 378053224 508441526 321786279 439693742 423487214 998308302 29890258 845400878 228040047 835251193 249583390 303097192 139153475 710876039 325439949 834076086 456076851 556116095 161437720 939318883 347427881 703644557 308612873 472454384 190714930 358751414 187128490 798026007 58556133 350843969 42052356 771759797 451655542 631808335 165842169 824509272 739286851 918386045 275555750 936506267 576651278 814315102 206518036 339360432 129704479 774583349 341474257 592549737 201543161 410580285 180989170 708522402 253031438 430019811 200678592 485219547 203714296 635550336 346731728 687197940 587771372 592978448 351892581 379246782 228305757 284828596 6171448 864871111 609582548 677300252 563884067 630794277 276195264 402311208 323292389 777646940 538037412 740591467 448167895 956752769 113437774 791112976 382620815 557944171 362538174 571272166 111629538 298153809 150091796 482321742 448628683 540166233 430489290 554599040 169210284 528605694 258304550 684735057 204278733 753856521 601527335 791780546 191755294 904608414 377865299 649430271 18418634 757918254 546388171 835175840 502094616 803790615 549438089 746654466 563108858 991939497 132952705 585886548 15366123 976745914 704735301 778420707 736246245 851063938 64299832 328892552 101683011 705627366 388347036 490671542 401864647 765126227 268820697 329769489 168631998 905082876 754215327 991732305 24039148 962434444 404668309 944303505 643635167 892455631 484093819 511658969 496803416 785988983 402804104 628931942 282015812 341695579 31933985 785817510 696539463 871609630 473898964 717042204 235609539 544990267 204939739 280670507 17268957 257231517 223431127 384356749 226400625 453930241 171950621 957840277 601821817 809644695 742299632 832498923 2893952 635569641 476902690 495048055 66308328 379004231 37630716 706413191 192732171 437544185 417715537 720945244 245121310 291074765 154163046 485893240 395485308 973678258 815534999 819746827 452481102 645205564 426650361 923727308 865046100 897659942 739877910 948244800 244877303 586988006 417702462 554967620 78668932 303086159 145894520 742198375 334358327 789406777 630181323 666877689 368978388 904074975 352058510 377039782 226675255 309863213 141504591 832991969 753935409 976444873 345876447 345908842 216173080 734048335 194727970 898718879 572147073 613032320 419730601 983962316 933680471 954514729 268850706 512769141 393079450 883202461 212336645 638902720 552952283 774956699 344021665 894396040 97759150 938509627 261775223 790592413 62660057 736158983 218514255 377221111 231379806 671374994 177124287 468790409 203630091 434441975 263949754 988350915 438850955 597191149 260093760 362302948 265867921 374104996 305371077 357434564 13565996 531462514 218032909 860722487 595160815 796338855 130726170 478632033 246174138 670181411 366103757 381570441 89310500 554512766 346326642 941214424 714866026 921930362 176282214 337935038 199272048 290628470 102657856 187481247 18424784 658627798 49546019 585688992 142045202 377594896 213227072 821963977 313438807 361645790 175975233 349554753 116812903 828123093 249008276 794386271 67339980 197283499 16129540 973331198 295111030 767541259 355669807 709322678 83324443 966815446 353134585 720671635 367331085 843406304 558913885 879669890 851288968 900925659 334513606 861582326 582950778 653079310 51709151 386696337 223068904 428610254 410563195 685294152 95577130 206896358 901963753 302341258 673647087 458076007 571375949 355678769 935437312 23818457 40343552 12719998 266838771 263034588 333054129 114265459 977989763 348390769 619331833 459822621 597689302 100816122 331021368 221643117 492837327 208472672 814806530 321309694 863236428 826498667 856646789 773541564 856397040 277159544 561719184 512703513 761857192 577236375 698894495 111403892 733577766 724005444 968617713 630685391 878300742 408548930 615911323 273732543 891972449 222366117 823597053 558404508 896213557 248050010 840586575 335102851 686351593 587896311 898242727 736439134 993603877 434363133 898371981 526389538 562789586 475871323 513343900 5548483 308108637 193785638 987960629 980104899 984012626 742075828 826566172 198316598 496968639 493304628 591696931 396179190 610520882 115057621 926149029 421026225 619077740 601463363 719662569 214631251 798272352 11463783 612528057 188296151 888673846 871064399 976677626 397221122 764730624 329000508 473358735 123603777 502456460 205065033 359957468 76968657 357038257 310733760 591154853 251792268 798612085 300112030 855654810 494475178 779255092 361459829 544248677 187251640 878964590 749917571 879408028 108778672 439567349 382331942 545111806 413552535 670367292 298141402 745626637 9801316 971435954 429445912 572697164 302159019 373276300 81993234 859872459 631077948 842276101 831874457 863110919 644991859 802263415 602075343 671758218 169542767 579011139 116041539 568740852 438130364 569393233 552847060 553856220 400436255 585146670 166118989 259492974 124753606 526197248 185896302 400343922 308994186 913152945 291334762 379309335 142807557 259090503 87735889 478121243 58782397 270037870 105938566 183816164 135593109 541058609 419857230 785293059 645562457 781553536 478136243 895742560 861820703 972875059 498707895 641396748 345129763 603072926 515087171 917092198 612930479 955279911 944252417 970288907 486027522 514291120 277976956 477691663 413344606 504789878 285992096 810663590 20402722 166283550 302505 939012978 540217691 948615303 913356045 960102961 9785089 963659317 328692286 637620637 151630628 298368827 11710722 461907314 3809611 961949081 840495447 991201983 932589851 961125000 682400042 847698143 409901679 618429908 466604875 705313817 120843706 561246216 285670031 834913876 465710818 826646168 143890541 175779868 165849598 520709885 357335652 888607139 365348017 416425074 257119469 791573703 56932269 400875311 220577641 280673283 113850326 892536812 321723596 467753813 106539627 179211625 156401551 602477683 576216024 619429316 410631260 788810273 65530440 191065581 69150512 782358958 677034159 690281609 96569496 829579898 613728385 678953874 481108556 977485805 897824801 899702071 567902257 814158170 373114195 640247068 337706199 495281732 404052180 458105565 341020117 369624832 249745111 803977458 279164219 398982407 64266656 707541612 350076649 991678194 311413458 828241922 494004237 936430180 148357797 807991258 536402545 624667991 205515858 251975019 18034913 371197637 329900878 966857279 74036609 455667054 365588375 905471323 349490176 616756687 135038497 530543192 411101449 466592868 188484801 380608562 109339985 852669838 231393822 853299654 475314732 519607175 213862263 731994120 601497160 912176458 215253874 694307766 375650700 840520475 68194520 477243590 214093668 430905115 189960616 693838727 382782129 903834559 376815669 976567172 403230117 472777130 243506326 540006679 413282739 765226677 3605713 330967459 324186655 485250663 428607723 560360577 73966346 898811361 537410135 736682390 391498150 786429087 59263355 802071197 598406995 985568860 278441096 345674332 318587468 532490041 9552351 686354329 428690508 724043875 597392104 834254481 612805592 638542136 227544979 534226210 376343410 427113083 345110424 884059573 54326140 159080524 101781084 681864387 654982948 870274529 37461571 220258401 188050408 498042787 15278401 230828597 13512132 997211638 406013095 921318078 653134238 756998461 422399035 893588957 673585991 812783720 190602016 732613117 538100434 978498305 392717009 871457562 327326054 771493095 100803116 245051763 35415532 58411756 51797681 260800808 43981283 488748470 383970246 739420698 334812021 645051250 587011062 644184432 543528984 950613078 57843383 259474767 68702936 989390440 147696129 481020128 396560392 611300720 278190335 331000114 268947487 839343685 87931733 942656883 433491011 735786328 295201527 943445632 847873561 859280357 588636875 966269922 871784506 966169129 418718792 453591165 146204330 569375942 5304037 353054010 251429253 586795668 318021449 820123460 478839210 936955790 570409949 684861064 14440865 410981828 365945482 497218820 480711076 532885742 93400911 705136128 199054959 740294380 653131190 824854864 395590730 990892435 130106969 420098595 167680471 511224439 162952307 387220048 20206006 314275075 236844804 929786252 716300913 928653235 442948467 955534747 162950958 913072129 788458042 967895943 670836076 844053743 89979775 868660032 258027662 320668194 169934448 532928128 439771088 910455651 839570460 846485518 656824431 864372248 251881631 825868824 718716858 848658395 425461954 721851604 610644237 805008651 804786622 916716953 669531941 687197359 87002667 714547347 164644772 899224082 329648323 910918329 439635176 885240105 274521630 548004740 222507232 900402981 408448578 545742688 259605069 708533968 586152823 866318299 838032072 884216155 711667407 760013410 306543528 377558736 186121909 899654180 733715911 801014703 277728354 822612504 776818184 822548272 118037136 372597177 174702141 409505713 127445395 620522884 134278335 879843298 553118611 588991734 84870891 853032913 642826424 939705103 45834929 652164803 446589245 856326199 46288982 748786324 232264219 916248586 722104943 939956550 135825669 553190269 250194909 282978738 107236632 778548428 262816674 816848887 208651995 752214935 39072845 71551376 54781428 911680464 528378031 734407451 599921726 896200777 890513432 910613815 481907526 881934586 218011494 953173408 20671695 681787457 485232428 616755240 442438444 620222450 466014320 633077937 219416101 878748337 43579996 968174731 867220197 912531350 103451669 424010638 153231607 291136956 276676451 456817814 260050172 286923915 6909921 558627482 546748025 649365473 393653991 632213776 425974142 551592680 158728389 654908099 294928026 333166194 232286286 740251845 499587706 684885712 294278909 502180802 141228620 624842687 277848944 440165538 125733647 551343725 234190155 708509078 436695290 549505425 66295553 430875984 286106570 951823943 668715689 816904005 59266976 561601824 515686018 897863979 695011279 707860954 272136405 330776315 103205283 341105421 14618874 993613691 66577950 114839442 80296496 658996658 19921480 591151799 578026869 785984360 601500217 739790060 625445041 808665883 492882566 981315864 556094709 655993273 28486312 313793722 263300446 834189972 164962372 687125378 653176865 798761210 238867540 823178359 751502319 900889218 299276003 816222651 101740817 420950489 113473735 158880040 76718024 826775493 213397762 267793089 164109255 459664991 99441639 118116404 117342279 905828732 303513895 621493335 495104546 927555435 396585872 554829695 352151467 765139459 614829782 946603033 750487729 976951874 354017777 582099673 195930614 255024952 1582938 323709784 239349428 441531403 272564040 958044451 48605720 979382289 441033023 631160607 47866798 412181605 344273356 798199245 618070367 861424989 831389125 919967872 847594637 889210730 78565275 972311045 936481440 999249600 189475312 660960324 29569625 133208217 122833994 940444943 620386734 707359244 1528726 133986366 112980428 384433770 201846939 336323615 33791160 805802801 375090941 689911022 685820508 835759551 439202040 521738528 458740125 587319452 542914961 909456265 750790968 953952817 607337677 780257688 402364172 999639730 33813533 850324324 236225500 424467802 76102084 516473929 104174682 497811282 41455509 952833102 226125932 730082266 149039279 751269153 209913998 350291113 344989184 613091694 557241748 679296815 318153810 965153772 857307897 997665734 248358520 643959003 78632011 906488977 726243761 835844075 120741460 762166264 447224065 789526452 262078033 985007495 410466966 925276779 744107096 757241548 652717901 700235135 527649777 901001536 499493001 909488732 469267110 486392852 220812661 432188819 133147300 631894972 606812588 730138408 661441093 868988639 171067036 745498031 25940923 864376589 336153311 369822860 240412980 425707293 228338182 358287231 327628924 886959167 217095563 401870194 91918808 420545484 265518170 622984261 621005066 808296831 307035975 490024459 32634378 753164397 250290286 556247519 45521721 274718487 192848558 550911820 482371261 901349691 682169884 839775742 78131533 796701746 48580349 403849215 96621090 390403337 332096330 746738963 390532885 731669062 241267572 977934759 951419237 997047243 828217393 968438621 893675687 911964416 524229096 690831090 329851032 687979327 27575434 699815880 189322648 969084622 610354354 768879287 473050146 918701257 100632905 909040121 710018075 793664010 398798544 643317504 621204776 923761502 676230728 848135822 448182131 979893574 246247340 946487506 560903972 635321341 152616172 899560751 160479456 968238143 84933780 268502003 212022912 782911558 280078440 873729292 391613872 755749342 650942442 937402425 532243731 621242209 309476921 692720502 384242969 955722365 663267653 914094669 881028646 946739803 244006676 989383752 636138311 883460312 832061979 890841250 24617522 247085245 165966030 955091546 658929485 720873348 551446464 645528037 241707062 339985034 291944096 756103583 134371357 433981066 427821009 892768596 692561792 862974495 328961005 405930866 371985011 621704291 542631936 597153141 101900467 581350201 566466491 841626143 483622015 812945521 793759045 983401942 261161853 659709765 239318942 465370711 190683647 814711999 143947485 155168217 152666552 945321877 617558276 887955609 703021995 736627039 126834607 425105873 144592096 761492994 534468263 590873401 444369413 708573227 404522699 422286791 120425333 874238639 223010328 624090731 185630551 909197008 709395412 904270210 128419888 132831509 65527069 632296294 405911480 891119824 853399565 947793022 68616070 269516301 114415201 295436914 275886970 867123586 369375089 642694113 565308817 709539649 237152088 313921200 228592161 928906273 395357060 479516225 348017221 379400465 305882907 413081737 125602282 742627847 251758455 750240382 466956538 708172382 393793545 721551333 444545072 980272681 526269412 880613240 808764984 910115257 577945244 658845990 6023053 268099178 96444286 428419717 81817210 966446563 396115630 843272540 647576242 738425312 168157051 503809161 468388420 777989914 493891555 899305395 546380695 688250003 40985942 155265193 129974078 255541200 46612609 435866644 422625643 752200589 220199143 560375055 10460624 677051650 512791033 579822572 293019695 294132791 113144948 156132083 48039859 391997022 123876343 930853360 825725116 828219789 353247562 916156695 297263148 576930823 561933576 684544818 522146771 698601033 122418836 309879618 271200147 429168203 176389494 963043946 759746679 853288121 438267220 609716401 195249322 425423883 253246253 430736468 262693001 272664991 149636962 796261695 344551014 395218547 390802403 625446853 555170305 978195148 857129225 957496085 276970480 662833888 181727321 538305073 132335638 650305079 318780676 384061280 154429052 300544107 189112286 242300848 236243495 694029119 73517646 715067050 519299690 989739825 617470047 703873488 276836298 849589204 462400319 997363170 869240181 919710960 353603643 427026336 148706111 975494891 850360016 870214188 343888475 961116501 373518636 895263085 540766888 612213590 611735352 640394086 13469242 197382201 131238248 440007073 57920323 135347116 23066777 219337556 194738772 946052015 66872808 336321138 101321797 439237921 200067565 433866888 90023969 259898730 35617805 170704797 89131904 225221247 131743699 339283125 179113150 258499498 125066734 970524324 140141105 187644839 68849459 936483600 181250276 403630819 304906951 706063261 439539352 468756693 113080508 620931479 315525868 580649144 164336451 497564448 89667381 365347331 348560984 561157382 423784254 654594314 613238498 848682558 166242605 585371967 141025517 260294950 153678327 496273979 241586448 539602799 211334923 690882048 562079874 806104488 61993634 260750176 171703784 710133403 332510514 457122941 93232168 789666371 412391415 573584356 3458944 323171852 47091434 279187382 38055642 465750546 45920267 161757065 14562918 496718619 165772082 892444042 473557373 823039226 472009397 617933692 243881812 361315418 263093694 737186695 24224628 32185445 17897739 146064523 87911072 480150387 165414864 675737561 577294126 913382962 196646854 669522332 440607921 989100023 364447657 983010456 743300656 988108820 713617278 877785376 32213870 136542321 123310422 829369514 59503913 644436476 598079759 784893223 56727614 103501026 47713918 543394163 63310325 288347350 15576524 994623263 556901081 633920177 160699007 720762426 105760910 129864697 265229 394527818 78255488 481754572 312288195 632995172 369818228 866676562 762292407 993901423 295464404 691096537 519764117 755318740 111617748 360316121 268572350 299898200 55577019 247732414 136895947 632033829 510959976 759227911 6073309 504608965 104350175 466538549 113225490 251989279 191709154 572682428 213641740 352042554 93617342 146315873 100703696 482022151 401551310 534241923 322456349 792030355 267405677 519785573 299313950 744736424 176194378 986895633 499722205 522373984 174967981 875229948 282738514 328032470 67665810 493274734 8311927 705522204 660181357 816789259 469976574 868949415 800276689 903159763 762186050 993670126 1101431 91703118 13282080 19484735 2937311 404027875 76952055 939484696 921630040 977160167 43222846 345711475 150144916 544999965 320635989 913321494 854649144 868497275 652227999 965483647 495950656 905417021 456324852 619509865 459049256 776671223 297008738 752345248 114117712 212068503 178812264 703890417 113971638 236006230 90322001 940710924 795346605 963194333 900765620 910655869 820281000 955094857 354235174 711435093 338224684 713388048 443384969 459701496 2631621 250090421 113021081 345123049 183095725 659765694 247778952 495450129 60035767 986632017 633912655 784338191 765466211 966159679 598198070 755710244 697446106 722818532 397929459 549535814 495559837 905013872 873177475 894425749 45138215 342275289 6259905 197606376 130546686 623103473 202313318 632558073 75019739 275561932 249243291 588550923 472189139 960326110 883449398 936706417 743137803 806988195 336136152 934453189 63173710 935318146 394098453 983824106 573273790 579969589 443458234 839323598 536379977 774005950 282905530 750597837 132215076 461438140 315038599 650605367 344215210 606592600 238654004 605354620 585215434 852308710 50418672 333394967 154306590 924422306 267293665 436573155 58445244 573765472 436547799 542528086 319011087 891821414 199555949 283431035 71651973 427290454 58175556 661666415 436337508 983308965 241784219 974754028 204357164 718773935 657094422 694664062 154551691 164528658 9420676 223140144 21591904 262828991 216132432 481195366 334815265 597976539 33224244 615685667 414787558 551046589 446340299 763480938 743724591 913305446 809415392 933102273 569863012 982393565 496523314 717402703 135704249 920255592 687167009 715734473 29447262 905086104 425852448 595631553 98762329 182379262 24100313 408149501 179580261 746739451 15821862 258013723 9133543 763021301 480376645 745205706 149005845 429141180 51801369 898696023 619997503 800449036 796221200 833027997 516799670 770003320 326676429 826278391 814329749 846339879 699263183 915589393 713715497 731757817 628577805 890660573 343441657 683341410 181979025 597804670 300087824 392625114 322487005 445406765 22918517 773205463 460830681 894708740 107471046 597649786 243884328 508005001 368132562 441646362 406719779 558070757 116390338 635662929 91993167 424289083 66700323 749559897 55214751 671530681 274574994 520944385 24350862 970446547 663678820 777931132 70171508 334398119 324868663 685641381 18101481 842265838 692129886 827463175 609243529 750450343 133706557 804185076 494844710 820788716 281823244 909029692 552298624 671344332 38366974 337083257 231388426 961357336 700918164 746217185 600341502 615771149 253488638 418537722 212519779 700070782 426746710 552362975 78454219 155678991 39755511 469514912 241644709 799562535 142102528 816795894 768426563 804734042 4382500 286047240 269923229 872532122 395630803 560136187 370788338 456041735 454630311 867340006 695301091 812020174 1610735 780626753 364194437 830283311 425591393 974080885 103089550 276384041 18646294 413815814 265915936 563296875 493384214 769014122 70219758 508126326 6303868 947538395 756836640 930829111 17934454 288203798 163902429 181453116 160118228 915954758 149423905 635558255 621148466 795097834 29610497 202482850 35393578 293476250 190908982 965704892 152668297 803443350 642289998 820200236 562200372 633410539 203928978 363939376 133885820 168257662 65960639 153818880 126765465 499494223 364199824 840818945 126251185 320369260 186751456 524848298 90411734 245280984 66068535 673921806 52295923 545053856 167396777 720984743 437938349 534781168 278862868 957737201 163476996 388634333 352684315 875381468 179619807 181152731 75543830 953168164 496084054 594948917 423808024 703301010 475883032 849233452 703543539 777043268 235255037 923000767 108249090 567175751 90638834 134135523 79961115 358515015 193547309 298286098 66200311 228257838 14642379 691214762 287601495 972711831 224882397 860855934 48643688 173014201 40435047 247951754 100483204 666251898 353933321 685503078 403943544 658775158 230854914 936362917 203750996 448499680 316064013 581375794 459788705 716739272 557794279 944496000 629701121 938381972 305364373 807420376 19663680 811573247 431767725 579185060 337880242 380378921 98557494 133813266 114492258 450418625 273911466 692753199 444325850 569970365 394463402 800334765 740259485 907286935 265133829 749959462 631307292 913097403 294912009 827582299 320488351 815926350 665144387 682601097 161348548 326886128 286349779 746469107 452161515 558388142 480942993 531244495 17739559 929811634 687595695 809910668 608498141 877067975 539380166 833586840 17419675 434251363 112810707 754359371 650089368 855900612 505491487 596184109 52092323 674604657 379555835 923595313 724935561 958519315 798239900 885727751 465311903 732397237 30854030 726560951 250221661 274419859 1153645 894392544 684734779 898789483 512027100 954573624 236762221 708163508 619247551 791519858 196332749 576703221 432172222 967420629 195681925 264174216 247709312 861176088 22712459 804735783 115874316 703595453 171576262 782327748 671522700 847865486 655839138 990920496 607248672 827855276 492031364 983387759 243120651 255026487 40058264 110088965 44671591 125874193 8760142 353032310 291639535 731028404 143795596 825871033 119857264 656425585 380899542 498147575 282516954 533877745 219138724 351416519 241731484 242808715 122266696 196923763 139710284 272231079 151785213 526770514 275556957 505927015 30650879 909852985 289079126 674794135 334104988 855881889 691099393 776808211 630422763 876241073 664365196 755114505 737146916 900692920 818729618 940918891 443315624 766163778 535290141 835542655 260724764 337409276 3236211 378786822 159799461 485721652 291201480 922506228 553280107 943364723 726815205 733202670 190772446 640463096 568114744 940729847 739828751 962575473 560231316 938710393 610710296 806368834 84339939 633373203 533635856 841735739 116598828 424434669 323249825 366832526 113366096 715681081 498104844 971097169 277124905 686443663 212285808 657027362 45989145 810423947 585298592 639735283 64555857 279669690 167153011 718272648 209607580 555389393 151438450 217131630 97584184 763461292 66611047 722939441 77913950 133233914 55731747 235145309 135321046 336254146 304087861 584473250 534304761 545973126 343513426 881587145 18329592 100706144 42218852 189426944 186322998 931176579 81359350 352707016 59375368 212995439 69024057 524381543 220494239 440175433 165833286 983031350 195984468 801031151 427993935 563622089 110357252 653407013 52448361 294495066 289193595 932490875 838267809 940244667 279988496 937006073 914744050 934181801 924275779 967713348 175108262 218718132 96031912 967863745 704690184 869286067 254413207 638990523 483722243 500044019 56301760 524147435 351634280 920607504 172482592 533238102 375166411 663284283 51118410 493376363 213744197 791900626 31970229 667799242 267734352 320643331 257472398 325542380 274756084 403805484 102189572 676031011 28149001 759786373 573463687 729931365 226078119 886267013 324929580 460118977 370892643 896140118 781945786 796013941 426983501 710228284 160379995 953763351 497748449 971060712 800907289 936924822 161995863 416490370 277592715 637596358 316867352 982386652 335019649 701220935 92314223 664304194 399056450 659106655 136435075 138925755 81411535 576814489 384011849 737593809 62672002 541543584 380358913 853973039 577317363 787077909 105655116 628555428 411932017 420348834 271667270 730202099 568722631 993610121 791880653 918114383 783132025 804057464 188730501 629418022 379575241 481749716 115241306 900923746 659803130 824928718 525448458 528270527 185847839 779694630 131145036 333276960 208551680 281362676 23917037 564049271 273556718 732829753 429927213 482573968 290681620 468691423 111891346 604099873 177592075 456397430 38637622 747187653 456330273 906181392 534202984 720147299 599539076 678649366 194924093 221383899 131484674 182162275 13961443 453225317 166879487 198210463 83562246 750529908 365008776 802413076 464841376 981609267 824746061 942143358 593827907 784049453 408168723 605557552 302430250 805466735 384428084 675492224 96534713 213323951 57514352 447075723 124588419 687303673 482890726 782753933 376059886 785693900 582811207 643752826 67387845 989980522 256161893 361009926 59364294 215306660 21921381 105372653 96086179 856263324 652724511 754656957 310650094 696670760 79891383 215999987 52864172 857320185 522211911 550398668 457967261 603444187 148724356 760744367 57333669 264783801 230392966 341773393 204281792 305034397 183045564 773839790 104691521 447937198 228247345 270280888 133329618 623805708 77966646 831496308 329794519 935970342 903137068 952346349 741420460 812901363 418597556 787077770 156106328 978931182 373006426 709591930 205388791 543864284 458322823 742617788 25862120 270528952 17673235 689032733 634122761 637663918 324412956 810395688 387304345 864979724 576735932 848631640 71994133 955182534 249478691 458960812 166936568 611839016 356428644 741379528 117027620 729861186 516007441 982747663 201608753 718800548 290703369 481313520 236671461 543854496 448435238 851169274 61890936 132177478 2125188 812633638 292033665 352302400 293347880 871780615 217778120 574934448 298246167 380823246 134219609 650223483 328837668 693729231 9243617 951217152 453857803 855140801 827267119 828322741 815378670 833121865 480308830 525754323 355860273 702954931 262728052 729516436 503456644 672638638 632151318 941992817 599936163 625653746 225968339 508421406 192644452 464529010 144391531 375137687 216892799 242147772 41102693 809782768 680224430 942565906 882942260 899139213 90908665 131842906 37101856 546148365 216808752 850552723 556443713 651037685 606280603 758704635 747388661 992168741 17598960 66277552 29101760 167201087 32385778 936590414 432792752 971490631 949685351 973871193 621348574 728478534 646957698 861142551 156469842 431105772 226429820 281696857 182955143 597223227 326989753 362672655 204090375 847713605 776732438 822855216 500176606 846639020 86018568 774389239 768812684 834645301 807705474 870007957 250424902 694438596 645209928 743735107 361223209 392246366 196809778 931932337 332883635 962701649 10686209 467328242 69332839 666865385 572136501 656489669 377347419 889190479 844153718 899791443 131650323 161586380 68647273 842527522 392713984 908925255 597651759 820268475 430994858 464108138 30446134 474857065 184765273 331973228 43515445 297352169 36708221 65778696 18364251 750140813 588300315 598675454 409224569 859305259 75748848 169495372 111381749 246222976 108661316 172239100 117037490 176219687 137833725 548283937 130226887 946534675 410038770 427945859 103650857 855765950 222487245 664881699 252899861 255583082 6277526 809710075 621374092 858954647 550168761 961328472 466175840 606852534 240576740 905885728 381518963 740669279 253100790 518622393 441401759 594616137 217903027 774031832 622696650 785496681 762289081 942819805 396018622 647225437 150278137 420379464 49987010 330489627 79459965 109435489 20627600 276053945 223252416 819056013 135145413 649193403 80904786 442401518 175956609 204166180 3846677 939082826 188001913 288421302 145404275 661704349 572106189 768390702 720199924 924941768 298945129 758122584 314097086 582985251 309905375 612563909 590004653 760571130 717415016 797790201 47345561 308509377 210987670 317630946 165287280 848549796 206934663 614388011 526162583 999499339 811656861 981552929 789645543 915151621 641350159 776501569 29559452 92410949 65973995 924233963 822023135 823233852 735974320 826431965 366742476 746702737 292493298 963140199 890293177 954768275 642180735 996350268 644373851 746378443 172583175 535723635 376969468 540477433 489464032 911074192 536609428 856385681 411519593 475770035 123603827 356551344 309255901 893821992 254752634 669599834 32940513 552043788 446245307 887329843 723492971 922078212 737425346 758684894 444579502 887389707 212259545 586387559 87174891 245045671 204603008 526812351 355588950 451142992 83431639 821579198 792109210 900226311 698652898 973843853 482503312 541433741 204396178 435966300 18604074 135184708 18569817 77902602 43216076 146057113 96024279 859249284 598217411 629762949 386326633 529951816 134079073 806919458 605895204 682942361 505193666 523138119 121312325 814283333 131227283 598718029 162601478 870023671 557990103 993092429 34714205 76320619 9461744 196668083 20159165 820477157 259889029 268879997 261979720 908656719 571270076 771709457 553936299 707105816 294576116 368771977 261773879 939285505 85292175 748058760 481332225 967269736 192421305 980720940 73881409 502038312 444465295 482534411 6007549 694152111 594968616 646011827 333382029 748814154 379378388 650930257 603530064 676436299 105468863 520781971 382489815 654643906 459565131 694677469 672875009 917863787 563153498 618627292 504083837 748709578 141850421 245882961 113972840 649403330 131858060 328759934 143895801 313943759 297767076 569153779 213479158 929115071 877316455 880169295 623850099 834874746 327253016 470215025 164009518 351836848 196107135 276891052 67609897 623489632 51405508 931781202 597670437 672964421 130966696 540445206 218444932 620009805 182996677 531343119 483481550 930973194 720632684 995988931 262461897 971309656 862574356 982490071 338966226 486333685 150523954 667810000 587675094 757871704 339127141 808579202 533737831 609334548 321152092 494234065 121235890 235264088 211050293 746607000 228401547 735060776 329990260 830331767 182638756 201631321 159143433 795087903 680713378 834742276 409585259 555160377 279072804 702160253 681143080 866203888 746760070 925383003 45457788 940451288 179755069 603625608 437672175 895880757 431368732 433022457 93170097 350688137 84415785 475998985 45179219 573575326 260929048 306389700 16217245 408216214 387768140 691343962 383665483 957256188 781076697 915620787 322004216 776422311 347694416 445569763 20044170 610682912 434399153 669153938 149639440 616654385 29188698 381421823 281386514 307368861 207367382 925882954 327651962 947118505 412595820 568206153 470997956 756080803 200857837 336069025 249371768 659806824 215742836 229350170 120898167 550947227 219372203 997999134 472500833 532552967 401426746 744824886 716168666 939462469 206741348 618788195 72063127 373617323 332433543 866172345 34591860 506670920 204904991 620977979 446061562 683560768 419411031 957829500 10344380 53795717 2947642 129698500 8227221 813017426 353919164 539395168 356602455 817661750 647496029 982967394 651541292 862860976 71914845 456459913 428722831 507633564 442533014 615722772 557638885 774942254 68336228 955987676 653630440 882638055 834367867 908695670 171422495 400205204 273864571 538002085 367474339 713080266 88087909 619604226 470069523 480438900 7173924 527697004 17517855 881712607 333964365 642464319 24721421 977394063 314074479 535254456 19934893 965001879 951237702 979251309 857406966 912776647 724705146 843555890 341800193 438331791 248367144 777630463 194955537 626473668 600705322 717649900 294152797 687167588 112523998 172628860 118199512 605852210 566504202 579017034 179323313 378432023 315416914 370088787 39500029 284413059 245124115 360022894 111083420 874391804 554435478 800444623 550257499 936794463 105893821 227777837 176085492 696709486 473303306 579356972 418861251 875039347 30582469 870756343 380600530 819375661 581087079 939957671 489919166 846776173 82694899 993815610 356090256 842551441 344947170 667147986 604500807 906170431 339374011 635946730 470123877 832936518 771624409 845565489 744608926 763384882 54842229 908052749 794889024 986364587 957545776 976177479 908106833 964403952 535235115 743499755 698573331 997743538 895318460 921192350 272608662 746223372 670818715 704806256 462604754 836696589 237785660 968726483 346882996 493464178 41073538 879525270 307354094 985337053 53366791 228545154 208158716 220591595 179755142 927576377 723970707 933272669 74059740 78807423 33433908 735980039 649173632 762015287 694122868 992439051 681074075 833010586 601453650 884656507 621408304 829290973 275698447 957476541 79228605 100203622 65033562 375436067 159828918 757527503 3066047 612248697 445108923 640585530 321169538 698405011 411605804 663987057 468367073 960438555 620527131 891470834 56100171 59290143 19824814 846898748 668947013 955254652 938627459 965488039 623296466 718313333 232893568 863331344 724092578 984072745 530830462 870590437 196177489 985878071 907142051 954124997 489644454 590238640 45157680 586408704 457241466 903676943 729493228 834078759 229921953 885422777 742995967 790216755 418842851 806130741 791625834 863351526 126503263 859053209 648654198 651013963 67061178 235637776 72573946 983008397 806736745 977568278 79719223 951018164 457094840 707386686 386755787 836485733 105287565 438926790 107715165 506079552 103427806 608973586 224750997 666205568 656064448 909250819 907808309 937030911 657283913 900406235 352726767 625296681 483657099 753911418 12550554 15974254 13623639 446560025 169874219 390971193 3486173 310848234 43909901 257470521 220505970 378833144 42944915 169684569 91548624 98856900 28680793 338207829 282928689 406948278 263039143 746643750 736548937 891061983 336744608 591182776 400626208 596657628 378740620 766256747 501799418 607278811 14567261 449158178 423662177 748896365 117728736 392511782 353265998 623893246 62271349 938141261 141594703 837380809 775648652 966976383 80621483 588579510 84049520 855188207 244816868 897448150 662710755 993566191 781440704 950028269 490763532 832216276 372383072 467055323 254895005 310129360 284297665 648849883 371967514 712659428 139028406 887703255 702918155 867810129 762506122 888042980 285688564 636658584 493632320 574485490 362879056 433714875 132459300 953976326 152137322 594905897 167684051 594541913 445783269 771581646 178457630 470508157 454541489 789848005 609610708 826063787 685531298 774250431 652412939 719435883 497665265 756627412 514960403 594417771 455391393 814074276 407091603 839303723 635056498 801438046 597699447 947990876 603962628 930871981 908087480 908226255 744154536 957417869 691168117 729001756 678417979 889226669 739490140 916546340 394621224 815182021 736544961 982803865 523965114 529688908 177618243 926268306 55812702 912898735 480427325 608881433 459602817 742620796 733861928 767706109 477408664 994668826 643495679 819339212 658625554 927925796 799774419 995805460 461202750 717530693 604704580 819509140 467946041 923382637 202173691 262889224 147565831 690758378 55691278 541626975 447051793 718071420 612288519 950098888 407831261 987908983 520492683 582013573 209134450 826284742 816420394 996840303 66337885 235566672 152959067 676659843 101852858 457221285 174455150 182677522 127056432 238197451 191260847 621127645 271418920 943543299 633717811 688889633 688391894 693720541 460972093 650477811 203188135 233877231 137608700 761021301 703442229 887272450 442187618 984341444 79275648 950183126 611702985 830474930 754541883 950693524 390453502 743710208 121476447 962382382 909223924 956948005 451388683 850069330 453809094 653430357 468031302 804704659 697438390 746100861 525443245 711165625 216113862 849264818 600754205 730634559 418235935 690997717 317915481 805731160 191296288 408012156 90990522 305822710 270950267 685730435 173419451 987475888 90701535 404630569 401737769 936448919 876867301 898506659 42204710 91942926 64716055 730307383 76696745 281662640 110223503 138359164 131114166 709580035 144438606 634030043 580705605 935586708 135197880 325161769 188207205 334734568 18522790 529821280 180308419 988202698 332651309 809255110 29305860 350684713 138436046 812345407 99598305 553720141 13536421 913864472 494094683 887115320 120399756 786034632 291552853 852792748 779778238 903019322 878875550 986910942 611297132 928938851 65583829 189510364 156649130 455952116 68007797 858569618 167611706 229606636 185170569 523708037 293238524 537306467 250577557 713985103 165713390 805843809 778366799 823765007 34650326 70765420 49520099 750046396 333519234 663551039 76048324 852317826 667667186 915438414 220468456 399648722 136097465 315976174 178470661 748818518 489590270 782696033 755505708 787438722 245463773 342951463 150969699 453800379 118665 588364190 495734300 627572562 146558787 989975439 754961437 948955219 840033366 996829544 881662531 951802549 943888262 973903734 583882130 606901049 517238750 809802172 201524208 513774587 222227859 705539767 610827370 713048551 210456024 568553875 452562260 908210755 410911642 894192980 616783835 995959443 89717294 281839612 77855459 515528107 292679871 602841832 581110459 663718644 118399916 864898654 102658616 552136445 1884077 591303789 26585139 220514886 28946850 505809093 218500718 678740307 240433756 413592415 153760020 520769667 280418021 302692549 214809399 443503968 102565848 238835758 121060601 768334205 147094412 698360351 216307484 470992090 246414946 828754237 207875256 769570937 108128786 718126179 37473129 562427189 216483854 736401110 290864181 420831390 308659803 309200166 83705729 153585872 150761121 515177507 33546108 751765876 506388505 911271235 602875405 862463881 77262036 209211670 31644941 255983706 137369904 477561686 241543138 445351322 261095126 339118849 306201891 583382246 420198290 550766829 318466865 686853534 136090891 555745328 234264723 437923933 425958965 714644352 533771851 699966408 293734252 436271766 285471990 368236770 95226019 852474419 214417711 701990087 199237941 865965769 676227553 990686946 479665969 607577836 309519843 567196867 236954363 748581118 23753155 388010761 237165171 499183692 316921398 725347944 425310521 885584915 44053044 719361946 242039922 387228018 198518605 926491673 821310187 870217444 605631849 957876637 427216129 475848788 110873578 977243498 868968225 878384480 587165657 773510227 75404449 712595141 677365150 821950313 738729390 812632106 494870866 914841360 207438566 400878709 70034358 725735473 177486012 917410306 149507380 364227883 348837877 387292759 161290893 470003302 59546879 157495677 147781893 849154715 497136977 870181906 670526967 787483144 631959651 688773645 310543957 401388205 311772968 838172500 125014410 564501221 486959210 934878740 589251342 772248547 234350051 809987122 655993407 689568556 561176513 695841659 227634791 918008097 12554121 909652341 144412789 808024253 576444321 592546084 211220301 410082771 316799659 652274803 432014339 462985176 41891988 266551205 86784756 701926303 131559939 609299150 467459854 779122165 145894621 848497469 229711926 881663534 62113281 348710755 55992582 415723366 286779395 748606880 372502644 901668958 150346908 935621829 142554136 632893658 188380112 731890567 42952434 90145235 52763838 881181732 238795600 240949337 168185562 503215407 245105285 473353551 217121380 643779750 503837703 747218119 157804728 886047565 680844796 759520548 371873083 449986539 44463541 680106968 427404791 772764406 176123049 359701414 114262445 151474506 88153500 173327281 21426733 644708796 396999685 633742868 229470624 521151453 270755441 282086058 248103985 494614499 324213654 364151963 145691904 899730532 502795606 682771988 369957019 911957657 315139172 735680353 520783145 631490037 427569290 671936194 71328824 540555305 301323211 703631902 205975162 820281890 735002400 780854915 621720893 855924991 85391935 160404673 115172545 207131061 61991080 744399035 294849054 792680806 255964538 351452913 92788278 354814325 145528372 831683512 115600725 544331661 385150150 523830239 389010888 603782250 267067733 475273566 347648569 516956597 80039287 390531839 199001811 539321683 409326177 792176469 137811815 202597855 77154403 421490300 282098529 946511715 909920642 910046578 341793238 461808308 294088497 722668982 334299598 727066840 70201399 742252545 305151309 719368050 281245309 845987390 588141128 960197449 956941230 973792758 856528567 932412351 521744395 798757425 132291259 634904501 197159852 350899665 37905685 313011715 285813857 443658888 174406988 535323498 436555298 687298835 60735056 445954387 260296467 414434419 211545733 326003773 211735489 491824334 326036680 910651562 653103519 738215833 693526960 859607124 166576274 564101386 528682001 987052957 892022561 959632219 452652177 475601326 219438113 306385246 212803324 364916198 225735465 699470766 577187055 664682154 67080849 161088149 7725003 30831941 9782687 651394479 346209590 974415459 253739047 717420758 603099890 974934206 760089816 986787487 559008485 694696941 621617223 997495339 895270956 976335558 178172423 384626701 199649004 958096690 539905189 959602440 151003374 610875989 77309118 487500798 472834433 966441402 355353629 691998243 16368789 913178841 395466808 456106126 350729561 660188053 76199507 989984487 172824234 887523396 451138017 896298568 691829678 797813244 400158252 505471743 300158539 688528024 104696908 614079825 486980211 788042850 479995919 787037354 660007146 742893679 110150478 845711657 827149563 993769660 644392074 869380829 830298075 931436429 790865773 894692844 90319558 241470226 30754532 943536695 906978059 913675115 227517518 663166652 377766603 923451659 496387245 675718361 314603645 485774738 138979707 450575907 157111229 706551077 196229450 650052352 450050582 539102999 306359922 758263191 608283492 657035173 136011430 484966726 114373956 445266623 181501046 828422868 435146441 624865579 395448562 631676703 464541975 472407534 227470429 441383967 119985354 890743782 628030372 869801331 866855768 887514742 258206729 910264992 755966340 880973292 532750419 829433215 662161489 922276333 33756838 965077109 500825601 718273249 267366244 843013000 613886751 983047690 873568854 902163567 244377641 979869852 888389726 892671121 467471162 628802665 409029913 997957922 136761097 797317443 264228355 887786597 212721239 436867078 174688158 955209463 503880797 596867533 132310336 993163098 944056273 991586047 474833920 756689112 408147114 499613728 232434058 614483502 412088729 743912118 347566401 596257896 526019746 544366865 325300665 983151865 656610825 684646714 548571238 586101026 130136042 908872856 355822125 668763258 615781817 939401323 453035609 487302786 460445175 700851438 254099333 946306966 100502992 112796855 103335524 975692640 215686274 529802668 483755969 734848105 83537547 354240829 186023342 544006791 96769162 873514082 46810226 355553937 224431506 772067462 410232733 599992265 395251308 638569934 49681786 648766163 163320508 535265212 57497986 82805030 24648107 595946138 88173832 853974360 644447596 742175895 150583891 301746295 32822094 675274748 66939653 687376131 619166450 830525079 675126845 695558942 218608189 446230714 65735138 447983889 65761122 525406457 212439285 981192201 925407759 966799955 331526351 814085227 207872222 413708200 98337775 212424871 170667894 722018035 418680492 654120126 86583479 279967528 111451211 619707272 314611603 965934923 419254525 669476241 285369535 479254947 212376395 721492610 705163286 761841862 54608775 458730140 165273330 445532062 289331950 999546124 209956409 979303621 553106573 863210391 831806511 907698418 793463847 877653266 269620446 727208550 183298976 816561061 685320787 890708600 56432063 450016861 80363951 156074238 141769905 892182504 661499356 914006761 534759386 779939330 243686858 281654159 10525357 528811613 441665376 508747945 379029365 676971554 455051148 734655011 607829386 713284620 476106665 857049687 400247939 565315209 398697581 991444093 929743593 999019230 393631733 600340741 529306979 757973263 136995011 264045204 37420379 776983168 48885275 476263643 311946372 733714825 116929475 426699568 380029581 980853170 430260838 450637326 349874548 403067582 104388838 800858883 78909144 976350501 918583912 957116772 878617115 960154823 812892465 967023548 632909070 817245271 30360297 818454517 499936078 804586224 760449542 841257843 243633468 732477480 618190862 635993933 491324129 783658675 398567095 562030674 105717330 582498390 261265902 263680089 121507094 868874499 554824899 932858914 240474908 882736244 771865256 950289072 909690741 957097631 429117953 911345093 161051989 823891369 329131462 350329336 318776131 884723951 758598934 825853346 739219648 836049358 799416397 936433148 451946856 740289025 177140632 799590012 455109200 496885340 310703675 874661343 539707708 717315959 53130861 667210867 432125758 608377331 451245446 606115134 279291723 890875705 326028603 533043852 203113265 408617075 237344944 410303816 184018572 908038302 433641155 515137482 20176291 376115422 64040456 997350823 587855286 929791615 831202046 981360101 933233280 988137457 168026250 192567160 50998188 783842458 492835815 819298372 788891268 891702161 689615944 929889178 874827265 891541146 437366026 969016851 855889653 922090730 602659452 638789783 449176773 742997081 642660481 902978987 33452596 995960003 759254669 804015289 653217656 865516009 26534509 183378614 92756307 323423068 320434355 338530615 256923430 452774371 413627537 725635785 638060886 897733484 347274321 659770740 6969110 50420782 23919126 279475815 134299021 857671232 123253095 422288287 191885120 596632330 265086153 881330628 118152622 777259538 133181533 931142521 638143659 889827198 418905099 640734016 85680443 134778923 13552301 766374327 94887925 963884771 781664176 802354635 468301956 554860225 412474227 479792958 4518893 148377745 40484358 74744430 23796840 172482096 164766723 710909745 461914103 491746725 465666821 470966490 15995967 147281438 55699718 507721746 192966296 475545141 71330604 860821182 661851693 842584206 161844546 688338823 82805430 105120888 67790370 556672603 107354075 586491819 149613106 273814467 26539457 35384148 13919048 241311170 152573826 415366364 158512922 676586992 300773402 773955759 631893288 703086756 415421225 885232529 388427079 862232657 471112545 724731147 237004197 500627762 336517287 355041197 16306120 88643019 50007179 140178766 11462241 397529331 317026223 419403915 15062269 242230942 120646153 344474913 325234605 685148566 133461824 574329710 16873198 100306171 78454749 472884074 282568525 645372894 372435437 874866211 353606855 613293075 502350356 742413653 582652391 599702108 269132461 422469315 399892535 605516305 391431620 565198706 365699385 605650398 120993121 449002637 92185581 905985213 465677344 995788416 671133947 879117076 125014640 797866429 330726718 571309536 46445437 811966568 266879163 624538091 383372783 821778429 40046180 209422584 38100573 764138451 4935516 551362860 106684398 638770776 21027010 974701226 358776696 860051776 492320153 908567352 684259553 915272578 526925081 532337912 134570631 793698046 628349950 955704910 347093428 995913169 100482729 458911049 410711517 774742346 707084539 854325203 450058497 563746840 114430754 429884178 8451935 160476555 4095609 630177439 555344110 669206762 615006912 726580407 236469988 268440973 133611942 661393977 435996079 553472378 356167749 646171394 18558530 155878198 50287764 483658628 233914617 459652490 450642621 524287328 471948247 967697847 480915459 802014335 737352191 918502848 410953348 903357670 852971502 918043640 631028470 672443341 366990939 626359230 134234757 311990870 127511023 432051137 89122368 264682101 73463464 357775716 21833492 394635894 79368844 110326238 88325930 487828831 360687692 783362728 723667451 836183156 606534310 927411963 25828769 643637717 243158133 498181972 361593611 425225464 129120867 237955681 129872970 173633738 125862078 906664432 415767777 442701616 62006253 468687393 246414104 880678541 408445980 437049224 431160110 673100621 560002651 973315126 281128624 377997206 63246422 595660233 429381532 898191592 305244604 680078759 426012670 676161169 450761929 563662111 479797964 584728777 64598049 434383612 236569168 578953318 86272017 467173924 298738313 724499294 471458343 902008707 489352128 855116160 499737483 808223412 400326033 507959263 373949048 580131311 343572480 888684649 585872904 592857034 134117097 691982329 37442428 158389704 82999748 737665302 345168270 702406417 605880483 896702726 66822916 121188719 100245160 205967420 143113405 287408947 40164201 215490015 107399065 927287872 157918444 792569938 468787426 595732665 497630341 932516219 255602988 945915937 462942827 839670638 542008106 995707412 820623715 881897835 161625784 999242409 217732785 464677507 13063390 905498965 135148220 884509797 323390342 481510322 230627391 582496156 451551607 875117709 555245676 851528759 463856144 906893323 10759490 805724812 46967212 804357282 726534895 759885507 230659174 247918682 175398035 528558545 197899696 509311894 186840535 512146989 482593985 739610858 116113370 200996650 141862668 681699815 288104174 410467393 98599236 819897825 159731622 840058046 732692091 823421990 744744155 897721708 467656763 622958109 57259254 454484087 29540846 845440595 27607455 269721639 213516706 513243892 169416377 394579970 72544083 519357947 493322842 579968770 328340083 486570720 368827345 816202659 720235947 962904750 881088750 882392080 448803943 797776598 327218618 334134106 173578183 492740975 58821348 311607206 186638199 721706603 487876028 695799895 37785363 618450943 229076265 705242399 178136540 881156243 502324478 589091049 174756408 788578100 523666408 726138704 280189218 396575061 12933395 239185251 73687757 948710187 925586589 999881799 256038584 703037213 186207923 624995836 280198419 446658560 222776572 310062172 114846879 943756674 425933224 619123479 93203538 282252767 205897291 751008345 319886487 585041774 243122937 942823223 89124672 181425334 62505062 717649884 687603379 817782598 134907170 715715023 226838470 395961066 134064515 344556536 142667120 435062061 380655184 697778780 428037178 586534987 152137532 709079126 324714633 817064026 439494293 986529521 951545171 999227987 464157167 952042414 545141788 856211248 169252875 634466327 504202808 878220498 52331127 531733474 140021963 972993101 350793458 469180733 238895743 689735439 598606335 785869592 670195775 998729052 393058453 649023100 407213355 723893636 472302009 775945575 234397722 623737898 304268017 992192504 427905282 776897452 291639948 694427926 414623195 665866590 612816821 766511262 607803320 819138833 240077751 277445762 12603318 549008909 13491672 286649683 185775873 540362659 315645513 496292804 177167194 262513002 218662155 491432633 408135906 441191916 97080476 623926955 86854265 858527565 39835898 105369587 60840941 960844948 842806748 989061411 827616399 937981784 31426571 650208080 478807084 752185777 325103502 556065351 202594449 851924780 826449510 995910562 612875190 760676921 91857454 302301553 262903263 920689916 108256949 451746089 361945480 578539720 282419218 633739219 286559528 679294476 78153598 728271761 535433303 555424909 361772452 797459985 375267336 828423252 616944907 784426443 575860776 847656684 357312498 969267511 770844093 964523522 448289007 939780657 322667804 509674256 344080720 956803991 650044315 824060338 468417875 559871140 161956852 391593177 118613264 707291867 262046463 659817694 84762885 794747024 244695028 256239881 248062278 539691950 98562504 443675073 295779235 589182867 235079566 549638305 325089988 596000366 16056397 596791559 324996539 427392777 311746072 341413721 150285352 934408810 687232645 805576504 523590552 591075289 377205892 542334702 16774523 922560948 634980760 784652882 25203057 957901929 43010962 44631713 18015040 403635497 43019496 846681906 287552051 314415674 192648302 772015659 614128703 773672584 71545705 808807052 542943014 661476976 74133255 504963007 256596993 357155243 167122610 911634963 317618490 633189505 75455978 466493420 109272916 605649776 68776461 315371491 250200058 522056075 519042886 978306080 853728741 951719810 574850057 451587673 493985654 477248335 773593679 740141140 906905929 103132807 312271497 278694578 965994931 805569861 983609142 566844186 632964887 307103983 574218850 192227195 248092761 144153211 267959564 107244630 710233974 318860688 417035372 224799395 328948437 172824528 874417602 187393305 412829659 234442856 611530306 187444927 372552235 216513830 759372327 309639359 887541446 660340588 940730447 544737339 893639290 272521987 487259318 51983595 947298681 775323512 905146617 189642299 289346809 112722650 675067153 86408203 117976343 23607518 81221870 55555963 242523240 71164341 317947721 59443776 783421327 120352363 219834594 119690280 744966173 545659917 937828410 505206257 707010453 592678769 940116633 439378372 550723366 469477244 530497424 285496867 748731642 552375977 663696755 193516349 702094472 345762263 747082696 106305958 843974509 696265548 920242611 246363346 926134437 771955684 919255807 201249094 462996289 222818534 441286618 58878887 234002130 2681037 174035369 160845174 557173128 482128360 931642766 581465902 644525040 44927490 660258945 248911718 705331330 580873488 896219888 847191313 909579175 818058712 888512356 26077039 818499264 91599445 631398037 32162728 473706719 111179329 657836938 465303965 683283640 607935889 943459334 370244266 915634917 320693068 482470971 203460788 426969414 404821837 786817767 366552262 818903135 474518467 957218342 432423979 443437059 214315611 567576021 498917229 783267880 239268259 872831042 852986055 933795542 796879683 996843952 414206155 487571948 135654776 427105485 235338315 612900126 597757894 690863828 567786325 584378000 277100001 770997304 398741124 887568593 33979131 466882596 106319682 846214538 417613121 948833810 266755552 304233623 193793251 712046389 600111064 694456238 691301348 985141013 149490689 347315807 232503974 980773908 970054400 995661803 512503445 793233019 171073792 621748738 25144833 465037754 97809833 183977157 34792803 251433581 206637618 958824800 506812838 776690493 453096618 463349254 76706183 333063757 31906114 101863800 896888 468308168 233530096 240140909 234404999 664429922 49200795 507799458 375987681 538614496 226766832 527819102 41380016 844980519 470216447 915562504 82551607 408090214 177962652 986574623 866685041 924524315 553568231 926441607 116184319 178813809 15644428 110490189 4245678 611618303 488087087 685813938 521180575 585057177 26315738 70988971 38539487 866250611 69477124 805044258 413713137 432206811 18228746 652837940 260625668 331695807 205937316 936280225 823219939 884198017 336441033 955237801 329462886 600222464 286161598 546193588 101742741 111028840 36676232 158643607 108767848 563973715 193895460 936885250 495636886 686258812 431771680 756030143 123455745 187494321 187465131 548031900 519747636 870810058 848396686 977518682 113115335 182809295 70127065 164040921 129806491 177975837 23277967 799124684 7213835 608324696 55052436 519947287 281725804 305697115 69015878 345477310 199575000 405968732 203479670 413130187 381430315 940771832 879589468 946615590 486135846 771163367 419838409 610647435 556550332 733798131 275758858 710860618 80522720 554164749 451048683 858527126 430962665 560164326 69226997 718880038 554240612 575568542 418162425 634894063 591742110 723323839 240010366 623425319 470021035 566897507 171197703 642281221 540182286 673105721 557481839 631208983 440854195 985670547 933932041 971363520 145744990 353552681 335270670 672551871 6162976 581041754 436845184 450411770 318730254 576652220 143684377 964088662 94941884 793655993 164106126 728295016 461619033 682000315 183576249 908332191 595393512 852040762 791613774 889815130 548478013 689519322 150382376 434116392 381295396 637810575 477791977 647274390 630495577 637008075 430702065 625563446 436142203 489923196 181870657 908651137 542775638 831331734 246926571 759647846 588378704 791409285 496759524 871825103 460097359 861436710 316389010 974912558 286018021 538252130 148548521 912508620 496140980 749853587 676817467 926976976 777536248 863894236 128638401 514362202 312971698 953295180 210768800 551885783 238724535 895608125 621805078 662647047 65116646 916924717 330433548 952158550 480861835 865939465 746212639 910748680 332822315 779611238 461224402 639334726 257803339 672725150 380589737 449799407 388345390 938800844 434310382 829709297 716500536 767175923 283701322 876732804 558550349 630699790 329870884 754314275 461255593 755139708 422004872 622585529 273284143 722886396 199086085 640574716 365896103 632576201 261990508 662903044 48980407 204602400 18188008 19748140 14464455 559098010 379948860 947517795 115738422 235055744 146154217 951137627 85652232 94118098 19452297 984996436 983196127 999189079 142199468 838277706 640860913 994519550 266885254 780834554 239697567 510675601 43728848 364338018 94423773 201419219 128712778 611156701 367640043 839812761 158538570 793617070 669230265 904099244 345915017 989683528 363236567 583002510 21225988 989487039 758304441 841421340 47890689 58367189 30027557 772189610 169969694 474796616 96192264 168309565 105486276 444299468 126706432 329546869 264320812 428240376 212724753 916495099 585637312 864496030 520787494 921401902 646282866 935749965 856683259 964585167 646953306 909400414 843699556 876105985 445150860 832240240 654981123 861591049 577559604 834893090 419231090 722958874 457575480 558807814 88534127 214764757 193490361 662346633 423737475 918383659 110058181 392903940 93634295 576668492 514197158 962240684 200668556 223357378 203732177 343928573 208401265 648027921 645836543 787741411 555446823 904651174 549099382 894530095 158030405 243642898 59602123 970001653 557511889 712841962 42115546 447686166 8312438 245929310 217307630 828522060 17062629 729784158 618366890 819726708 577373245 662976345 64983976 756712377 434122736 794903965 26919219 549669655 225302828 320073850 272106746 564879439 195798294 691634222 324247663 749088518 310485317 457324920 311789740 781512053 76344115 497908028 341751411 494628478 248621897 583493589 291577294 331223760 280848144 494335786 94906725 511767196 100905791 109763845 52506268 497806578 62619360 560585327 515271558 913069799 590304651 732920309 363671560 373238730 205517046 382145167 207580346 867129547 687404492 710154969 173381939 992748484 60612380 538319216 172204018 729676459 121529305 236941871 85357777 772906341 302438967 803894280 175030175 458660945 230508147 817031963 412014995 955898068 945939789 960891281 929210468 977376037 61847498 518096647 501196165 568595061 114936433 740176003 70137614 290488352 17913720 622137920 479752473 944354148 496103106 772018480 615631341 811534954 503229062 689025451 180860616 637011450 25227290 89803929 13914416 601286670 229844589 62490705 662339041 169223424 261055889 110512418 675014325 549929016 667929431 256898428 545020079 428932161 598069073 363218642 857774629 807120926 915611533 794912957 961508182 83134406 639829621 291765091 498251465 202360800 886251889 264295715 555203062 19512487 220009723 125964145 821055566 589610144 686973361 242015275 855694636 545045752 643437200 61989311 330701924 186849513 452236246 51189948 377410642 184494098 640392902 857878041 242636354 810705163 578033954 528203900 928029593 89746905 552662822 269538427 682578697 397173424 461401053 18355335 353737040 181318394 711162455 571511144 889635910 448420611 828423125 618336947 976466964 79471274 649101200 324292004 467824608 333045646 589694465 200853519 518145768 385859347 913379430 507178473 657413509 126753377 751047434 600594257 780581191 521482508 973202080 607898178 827201973 310514475 140331626 945936157 413086035 430568228 98586896 437310117 213980495 544758998 332697982 810707888 441463501 541322394 153279064 159471386 146565151 675786084 214921007 315984422 286006642 896529730 607064985 953163323 674846881 931457181 510864115 845483732 558629974 559387449 851486224
